Skip to content

chore(Security): bump @babel/cli from 7.24.1 to 7.24.5 #2433

chore(Security): bump @babel/cli from 7.24.1 to 7.24.5

chore(Security): bump @babel/cli from 7.24.1 to 7.24.5 #2433

Workflow file for this run

name: Build & Test
on:
pull_request:
push:
branches:
- master
workflow_dispatch:
jobs:
Build_icon_library:
runs-on: ubuntu-latest
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
- name: Build icon-library
run: |
yarn --cwd packages/icon-library build
- name: Build design-tokens
run: yarn --cwd packages/design-tokens build
- name: Create tar
run: |
cp -R packages/icon-library/dist distil
cp -R packages/design-tokens/dist distdt
tar -czvf dist.tar.gz distil distdt
- name: Persist artifacts
uses: actions/upload-artifact@v3
with:
name: dist
path: ./dist.tar.gz
Security_audit:
runs-on: ubuntu-latest
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Run audit
run: yarn run audit
Check_commits:
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' }}
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
- name: Check commits
uses: actions/github-script@v6
with:
script: |
const { runCommitLint } = await import('${{ github.workspace }}/scripts/github-actions/runCommitlint.mjs')
await runCommitLint({ github, context, core })
const { checkForFixups } = await import('${{ github.workspace }}/scripts/github-actions/checkForFixups.mjs')
await checkForFixups({ github, context, core })
Lint_react-component-library:
runs-on: ubuntu-latest
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
- name: Get dependencies & run lint
run: |
yarn --cwd packages/react-component-library lint
Build_react-component-library:
runs-on: ubuntu-latest
needs: [Build_icon_library, Lint_react-component-library]
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
with:
unpack-prebuilt-libraries: true
- name: Build
run: |
yarn --cwd packages/react-component-library build
Test_react-component-library:
runs-on: ubuntu-latest
needs: [Build_icon_library, Lint_react-component-library]
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
with:
unpack-prebuilt-libraries: true
- name: Jest
env:
JEST_JUNIT_OUTPUT_DIR: test-results/jest
JEST_JUNIT_OUTPUT_NAME: react-component-results.xml
run: |
yarn --cwd packages/react-component-library test --ci --coverage --silent --no-cache --reporters=default --reporters=jest-junit --runInBand --testResultsProcessor=jest-sonar-reporter
- name: SonarCloud Scan
uses: Royal-Navy/design-system-sonarcloud-action@master
if: (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && github.actor != 'dependabot[bot]'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
Build_storybook_e2e:
runs-on: ubuntu-latest
needs: [Build_icon_library, Lint_react-component-library]
steps:
- name: Git clone repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up environment
uses: ./.github/actions/prepare-environment
with:
unpack-prebuilt-libraries: true
- name: Build Storybook
run: |
yarn --cwd packages/react-component-library storybook:static:test
tar -czvf /tmp/storybook-static-e2e.tar.gz packages/react-component-library/.static_storybook
- name: Upload Storybook artefact
uses: actions/upload-artifact@v3
with:
name: storybook-static-e2e
path: /tmp/storybook-static-e2e.tar.gz
retention-days: 1
Test-e2e_react-component-library:
name: Test-e2e_react-component-library (${{ matrix.shard }}/${{ matrix.total_shards }})
runs-on: ubuntu-latest
needs: [Build_storybook_e2e]
strategy:
matrix:
shard: [1, 2, 3]
total_shards: [3]
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
with:
unpack-prebuilt-libraries: true
- name: Cache Playwright browsers
uses: actions/cache@v3
with:
path: ~/.cache/ms-playwright
key: playwright-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
playwright-${{ runner.os }}-
- name: Install Playwright
run: yarn --cwd packages/react-component-library test:e2e:install
- name: Download pre-built storybook
uses: actions/download-artifact@v3
with:
name: storybook-static-e2e
path: /tmp
- name: Unpack pre-built storybook
run: tar -xzf /tmp/storybook-static-e2e.tar.gz
- name: Run e2e tests
env:
NODE_OPTIONS: --dns-result-order=ipv4first
run: yarn --cwd packages/react-component-library test:e2e --shard ${{ matrix.shard }}/${{ matrix.total_shards }}
- uses: actions/upload-artifact@v3
if: always()
with:
name: playwright-test-results-${{ matrix.shard }}
path: packages/react-component-library/e2e-output/
Test_design-tokens:
runs-on: ubuntu-latest
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
- name: Lint
run: yarn --cwd packages/design-tokens lint
- name: Build
run: yarn --cwd packages/design-tokens build
- name: Run tests
run: yarn --cwd packages/design-tokens test
Build_storybook:
runs-on: ubuntu-latest
needs: [Build_icon_library, Lint_react-component-library]
steps:
- name: Git clone repository
uses: actions/checkout@v3
with:
fetch-depth: 0
ref: ${{ github.event.pull_request.head.ref }}
- name: Set up environment
uses: ./.github/actions/prepare-environment
with:
unpack-prebuilt-libraries: true
- name: Build Storybook
env:
CHROMATIC_SHA: ${{ github.event.pull_request.head.sha || github.sha }}
CHROMATIC_BRANCH: ${{ github.head_ref || github.ref_name }}
CHROMATIC_SLUG: ${{ github.event.pull_request.head.repo.full_name || github.repository }}
run: |
yarn --cwd packages/react-component-library storybook:static
echo "$CHROMATIC_SHA" > packages/react-component-library/.static_storybook/sha
echo "$CHROMATIC_BRANCH" > packages/react-component-library/.static_storybook/branch
echo "$CHROMATIC_SLUG" > packages/react-component-library/.static_storybook/slug
- name: Upload Storybook artefact
uses: actions/upload-artifact@v3
with:
name: storybook-static
path: packages/react-component-library/.static_storybook
Test_a11y:
runs-on: ubuntu-latest
needs: [Build_storybook]
steps:
- name: Git clone repository
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/prepare-environment
- name: Cache Playwright browsers
uses: actions/cache@v3
with:
path: '~/.cache/ms-playwright'
key: playwright-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
playwright-${{ runner.os }}-
- name: Attach workspace
uses: actions/download-artifact@v3
with:
name: storybook-static
path: packages/react-component-library/.static_storybook
- name: Set up Playwright
run: |
npm exec --no -- playwright install --with-deps chromium
- name: Run accessibility tests
env:
NODE_OPTIONS: --dns-result-order=ipv4first
run: |
npm exec --no -- concurrently -k -s first -n "SB,TEST" -c "magenta,blue" \
"npm exec --no -- http-server packages/react-component-library/.static_storybook --port 6006 --silent" \
"npm exec --no -- wait-on tcp:6006 && yarn --cwd packages/react-component-library test:a11y"