Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: Improve GitHub Action modularity #18861

Merged
merged 14 commits into from
Oct 17, 2024
11 changes: 5 additions & 6 deletions .github/actions/check_style/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ description: "Checks code formatting use cargo fmt"
runs:
using: "composite"
steps:
- name: Check for Typos with Typos-CLI
uses: crate-ci/[email protected]
with:
config: ./typos.toml

- name: cargo fmt
shell: bash -euxo pipefail {0}
run: cargo fmt --all -- --check

- name: Find modified migrations
shell: bash -euxo pipefail {0}
run: |
export SQUAWK_GITHUB_TOKEN=${{ github.token }}
. ./script/squawk
47 changes: 30 additions & 17 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,10 @@ env:
RUST_BACKTRACE: 1

jobs:
style:
migration_checks:
name: Check Postgres and Protobuf migrations, mergability
if: github.repository_owner == 'zed-industries'
timeout-minutes: 60
name: Check formatting and spelling
runs-on:
- self-hosted
- test
Expand All @@ -37,25 +38,16 @@ jobs:
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4
with:
clean: false
fetch-depth: 0
fetch-depth: 0 # fetch full history

- name: Remove untracked files
run: git clean -df

- name: Check spelling
run: script/check-spelling

- name: Run style checks
uses: ./.github/actions/check_style

- name: Check unused dependencies
uses: bnjbvr/cargo-machete@main

- name: Check licenses are present
run: script/check-licenses

- name: Check license generation
run: script/generate-licenses /tmp/zed_licenses_output
- name: Find modified migrations
shell: bash -euxo pipefail {0}
run: |
export SQUAWK_GITHUB_TOKEN=${{ github.token }}
. ./script/squawk

- name: Ensure fresh merge
shell: bash -euxo pipefail {0}
Expand All @@ -77,6 +69,19 @@ jobs:
input: "crates/proto/proto/"
against: "https://github.com/${GITHUB_REPOSITORY}.git#branch=${BUF_BASE_BRANCH},subdir=crates/proto/proto/"

style:
timeout-minutes: 60
name: Check formatting and spelling
if: github.repository_owner == 'zed-industries'
runs-on:
- buildjet-8vcpu-ubuntu-2204
steps:
- name: Checkout repo
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4

- name: Run style checks
uses: ./.github/actions/check_style

macos_tests:
timeout-minutes: 60
name: (macOS) Run Clippy and tests
Expand All @@ -92,6 +97,14 @@ jobs:
- name: cargo clippy
run: ./script/clippy

- name: Check unused dependencies
uses: bnjbvr/cargo-machete@main

- name: Check licenses
run: |
script/check-licenses
script/generate-licenses /tmp/zed_licenses_output

- name: Run tests
uses: ./.github/actions/run_tests

Expand Down
1 change: 1 addition & 0 deletions .github/workflows/deploy_cloudflare.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ on:
jobs:
deploy-docs:
name: Deploy Docs
if: github.repository_owner == 'zed-industries'
runs-on: ubuntu-latest

steps:
Expand Down
8 changes: 6 additions & 2 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ on:
jobs:
check_formatting:
name: "Check formatting"
if: github.repository_owner == 'zed-industries'
runs-on: ubuntu-latest

steps:
Expand All @@ -29,5 +30,8 @@ jobs:
false
}

- name: Check spelling
run: script/check-spelling docs/
- name: Check for Typos with Typos-CLI
uses: crate-ci/[email protected]
with:
config: ./typos.toml
files: ./docs/
14 changes: 0 additions & 14 deletions script/check-spelling

This file was deleted.

Loading