Skip to content

Commit

Permalink
Merge pull request #125 from cuviper/ci
Browse files Browse the repository at this point in the history
ci: merge queue and registry caching
  • Loading branch information
cuviper committed Feb 6, 2024
2 parents bdae33a + 239cdb5 commit 3303b7d
Show file tree
Hide file tree
Showing 5 changed files with 51 additions and 16 deletions.
30 changes: 25 additions & 5 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
name: CI
on:
push:
branches:
- staging
- trying
on: merge_group

jobs:

Expand All @@ -21,6 +17,11 @@ jobs:
]
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v4
if: startsWith(matrix.rust, '1')
with:
path: ~/.cargo/registry/index
key: cargo-${{ matrix.rust }}-git-index
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
Expand All @@ -44,6 +45,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v4
with:
path: ~/.cargo/registry/index
key: cargo-1.31.0-git-index
- uses: dtolnay/rust-toolchain@1.31.0
with:
target: thumbv6m-none-eabi
Expand All @@ -58,3 +63,18 @@ jobs:
with:
components: rustfmt
- run: cargo fmt --all --check

# One job that "summarizes" the success state of this pipeline. This can then be added to branch
# protection, rather than having to add each job separately.
success:
name: Success
runs-on: ubuntu-latest
needs: [test, no_std_131, no_std_stable, fmt]
# Github branch protection is exceedingly silly and treats "jobs skipped because a dependency
# failed" as success. So we have to do some contortions to ensure the job fails if any of its
# dependencies fails.
if: always() # make sure this is never "skipped"
steps:
# Manually check the status of all dependencies. `if: failure()` does not work.
- name: check if any dependency failed
run: jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}'
5 changes: 5 additions & 0 deletions .github/workflows/master.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ jobs:
rust: [1.31.0, stable]
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v4
if: startsWith(matrix.rust, '1')
with:
path: ~/.cargo/registry/index
key: cargo-${{ matrix.rust }}-git-index
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
Expand Down
20 changes: 20 additions & 0 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,11 @@ jobs:
rust: [1.31.0, stable]
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v4
if: startsWith(matrix.rust, '1')
with:
path: ~/.cargo/registry/index
key: cargo-${{ matrix.rust }}-git-index
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
Expand All @@ -27,3 +32,18 @@ jobs:
with:
components: rustfmt
- run: cargo fmt --all --check

# One job that "summarizes" the success state of this pipeline. This can then be added to branch
# protection, rather than having to add each job separately.
success:
name: Success
runs-on: ubuntu-latest
needs: [test, fmt]
# Github branch protection is exceedingly silly and treats "jobs skipped because a dependency
# failed" as success. So we have to do some contortions to ensure the job fails if any of its
# dependencies fails.
if: always() # make sure this is never "skipped"
steps:
# Manually check the status of all dependencies. `if: failure()` does not work.
- name: check if any dependency failed
run: jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}'
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ name = "num-rational"
repository = "https://github.com/rust-num/num-rational"
version = "0.4.1"
readme = "README.md"
exclude = ["/bors.toml", "/ci/*", "/.github/*"]
exclude = ["/ci/*", "/.github/*"]
edition = "2018"

[package.metadata.docs.rs]
Expand Down
10 changes: 0 additions & 10 deletions bors.toml

This file was deleted.

0 comments on commit 3303b7d

Please sign in to comment.