Skip to content

Treat warnings as errors in main component project #21

Treat warnings as errors in main component project

Treat warnings as errors in main component project #21

Workflow file for this run

# Simple workflow for deploying static content to GitHub Pages
name: Deploy Component Storybook
env:
PUBLISH_DIR: Mythetech.Components.Storybook/bin/Release/net9.0/publish/wwwroot
on:
# Runs on pushes targeting the default branch and PRs
push:
paths:
- Mythetech.Components.*/**
- '.github/workflows/storybook.yml'
branches:
- main
pull_request:
branches:
- main
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get latest .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0'
- name: Install .Net WASM workload
run: dotnet workload install wasm-tools
- name: Run Tests
run: dotnet test Mythetech.Components.Test --logger trx --results-directory "TestResults-${{ matrix.dotnet-version }}"
- name: Upload dotnet test results
uses: actions/upload-artifact@v4
with:
name: dotnet-results-${{ matrix.dotnet-version }}
path: TestResults-${{ matrix.dotnet-version }}
if: ${{ always() }}
# Deploy job
deploy:
needs: test # Only deploy if tests pass
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' # Only deploy on push to main or manual trigger
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get latest .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0'
- name: Install .Net WASM workload
run: dotnet workload install wasm-tools
- name: Publish app
run: dotnet publish Mythetech.Components.Storybook -c Release
- name: Rewrite base href
uses: SteveSandersonMS/ghaction-rewrite-base-href@v1
with:
html_path: ${{ env.PUBLISH_DIR }}/index.html
base_href: /Mythetech.Components/
- name: Rewrite base href
uses: SteveSandersonMS/ghaction-rewrite-base-href@v1
with:
html_path: ${{ env.PUBLISH_DIR }}/iframe.html
base_href: /Mythetech.Components/
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ${{ env.PUBLISH_DIR }}
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4