NAS-131317 / 25.04 / Replaced Lifetime with Power On Hours (#10845) #17304
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: WebUI | |
on: | |
push: | |
branches: | |
- master | |
paths-ignore: | |
- 'src/assets/i18n/**' | |
- 'tests/**' | |
pull_request: | |
branches: | |
- '**' | |
paths-ignore: | |
- 'src/assets/i18n/**' | |
- 'tests/**' | |
jobs: | |
install: | |
name: Checkout and Install | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install | |
uses: ./.github/actions/prepare | |
build: | |
name: Build | |
needs: [install] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install | |
uses: ./.github/actions/prepare | |
- name: Build | |
run: yarn build:prod:aot | |
- name: Check strict null checks | |
run: yarn run check-env && yarn run strict-null-checks | |
lint: | |
name: Validate code style | |
needs: [install] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install | |
uses: ./.github/actions/prepare | |
- name: Generate default environment file | |
run: yarn run check-env | |
- name: Build | |
run: yarn lint | |
test: | |
name: Run tests | |
needs: [install] | |
strategy: | |
fail-fast: false | |
matrix: | |
shard: [1, 2] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install | |
uses: ./.github/actions/prepare | |
- name: Run tests | |
run: yarn test:pr --shard=${{ matrix.shard }}/${{ strategy.job-total }} | |
- name: Save shard coverage | |
run: mv coverage/webui/coverage-final.json coverage/${{matrix.shard}}.json && rm -rf coverage/webui | |
- name: Upload coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-${{ matrix.shard }} | |
path: coverage/${{matrix.shard}}.json | |
report-coverage: | |
name: Collect coverage | |
runs-on: ubuntu-latest | |
needs: [test] | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
steps: | |
- name: Collect coverage from shards | |
uses: actions/download-artifact@v4 | |
with: | |
pattern: 'coverage-*' | |
path: coverage | |
merge-multiple: true | |
- name: Merge Code Coverage | |
run: npx -y nyc merge coverage/ coverage/merged-coverage.json | |
- name: Upload to Codecov | |
uses: codecov/codecov-action@v4 | |
with: | |
name: webui | |
token: ${{ env.CODECOV_TOKEN }} | |
file: coverage/merged-coverage.json | |
fail_ci_if_error: true |