Skip to content

Commit

Permalink
ci: Migrate lint CI steps
Browse files Browse the repository at this point in the history
Migrate lint steps from CircleCI to GitHub Actions.

Relates to #28572

These changes were extracted from #29256
  • Loading branch information
Gudahtt committed Dec 20, 2024
1 parent 021a265 commit 3fd4ff3
Show file tree
Hide file tree
Showing 6 changed files with 100 additions and 82 deletions.
82 changes: 0 additions & 82 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@ executors:
resource_class: medium+
environment:
NODE_OPTIONS: --max_old_space_size=4096
shellcheck:
docker:
- image: koalaman/shellcheck-alpine@sha256:dfaf08fab58c158549d3be64fb101c626abc5f16f341b569092577ae207db199
resource_class: small
playwright:
docker:
- image: mcr.microsoft.com/playwright:v1.44.1-focal
Expand Down Expand Up @@ -193,16 +189,6 @@ workflows:
- prep-build-ts-migration-dashboard:
requires:
- prep-deps
- test-lint:
requires:
- prep-deps
- test-lint-shellcheck
- test-lint-lockfile:
requires:
- prep-deps
- test-lint-changelog:
requires:
- prep-deps
- test-e2e-chrome-webpack:
<<: *main_master_rc_only
requires:
Expand Down Expand Up @@ -295,10 +281,6 @@ workflows:
- validate-lavamoat-allow-scripts
- validate-lavamoat-policy-build
- validate-lavamoat-policy-webapp
- test-lint
- test-lint-shellcheck
- test-lint-lockfile
- test-lint-changelog
- validate-source-maps
- validate-source-maps-beta
- validate-source-maps-flask
Expand Down Expand Up @@ -975,20 +957,6 @@ jobs:
name: Detect yarn lock deduplications
command: yarn dedupe --check

test-lint:
executor: node-browsers-medium
steps:
- run: *shallow-git-clone-and-enable-vnc
- run: sudo corepack enable
- attach_workspace:
at: .
- run:
name: Lint
command: yarn lint
- run:
name: Verify locales
command: yarn verify-locales --quiet

test-storybook:
executor: node-browsers-medium-plus
steps:
Expand All @@ -1003,56 +971,6 @@ jobs:
name: Test Storybook
command: yarn test-storybook:ci

test-lint-shellcheck:
executor: shellcheck
steps:
- checkout
- run: apk add --no-cache bash jq yarn
- run:
name: ShellCheck Lint
command: ./development/shellcheck.sh

test-lint-lockfile:
executor: node-browsers-medium-plus
steps:
- run: *shallow-git-clone-and-enable-vnc
- run: sudo corepack enable
- attach_workspace:
at: .
- run:
name: lockfile-lint
command: yarn lint:lockfile
- run:
name: check yarn resolutions
command: yarn --check-resolutions

test-lint-changelog:
executor: node-browsers-small
steps:
- run: *shallow-git-clone-and-enable-vnc
- run: sudo corepack enable
- attach_workspace:
at: .
- when:
condition:
not:
matches:
pattern: /^Version-v(\d+)[.](\d+)[.](\d+)$/
value: << pipeline.git.branch >>
steps:
- run:
name: Validate changelog
command: yarn lint:changelog
- when:
condition:
matches:
pattern: /^Version-v(\d+)[.](\d+)[.](\d+)$/
value: << pipeline.git.branch >>
steps:
- run:
name: Validate release candidate changelog
command: .circleci/scripts/validate-changelog-in-rc.sh

test-deps-audit:
executor: node-browsers-small
steps:
Expand Down
20 changes: 20 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,22 @@ jobs:
run: ${{ steps.download-actionlint.outputs.executable }} -color
shell: bash

test-lint-shellcheck:
name: Test lint shellcheck
uses: ./.github/workflows/test-lint-shellcheck.yml

test-lint:
name: Test lint
uses: ./.github/workflows/test-lint.yml

test-lint-changelog:
name: Test lint changelog
uses: ./.github/workflows/test-lint-changelog.yml

test-lint-lockfile:
name: Test lint lockfile
uses: ./.github/workflows/test-lint-lockfile.yml

run-tests:
name: Run tests
uses: ./.github/workflows/run-tests.yml
Expand All @@ -41,6 +57,10 @@ jobs:
runs-on: ubuntu-latest
needs:
- check-workflows
- test-lint-shellcheck
- test-lint
- test-lint-changelog
- test-lint-lockfile
- run-tests
- wait-for-circleci-workflow-status
outputs:
Expand Down
23 changes: 23 additions & 0 deletions .github/workflows/test-lint-changelog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Test lint changelog

on:
workflow_call:

jobs:
test-lint-changelog:
name: Test lint changelog
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup environment
uses: metamask/github-tools/.github/actions/setup-environment@main

- name: Validate changelog
if: ${{ !startsWith(github.head_ref || github.ref_name, 'Version-v') }}
run: yarn lint:changelog

- name: Validate release candidate changelog
if: ${{ startsWith(github.head_ref || github.ref_name, 'Version-v') }}
run: .circleci/scripts/validate-changelog-in-rc.sh
21 changes: 21 additions & 0 deletions .github/workflows/test-lint-lockfile.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Test lint lockfile

on:
workflow_call:

jobs:
test-lint-lockfile:
name: Test lint lockfile
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup environment
uses: metamask/github-tools/.github/actions/setup-environment@main

- name: Lint lockfile
run: yarn lint:lockfile

- name: Check yarn resolutions
run: yarn --check-resolutions
15 changes: 15 additions & 0 deletions .github/workflows/test-lint-shellcheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Test lint shellcheck

on:
workflow_call:

jobs:
test-lint-shellcheck:
name: Test lint shellcheck
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: ShellCheck Lint
run: ./development/shellcheck.sh
21 changes: 21 additions & 0 deletions .github/workflows/test-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Test lint

on:
workflow_call:

jobs:
test-lint:
name: Test lint
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup environment
uses: metamask/github-tools/.github/actions/setup-environment@main

- name: Lint
run: yarn lint

- name: Verify locales
run: yarn verify-locales --quiet

0 comments on commit 3fd4ff3

Please sign in to comment.