mirror of
https://github.com/gitui-org/gitui
synced 2026-05-24 09:28:21 +00:00
Speedup CI (#1852)
This commit is contained in:
parent
0c591dfea4
commit
ea9314e242
2 changed files with 62 additions and 36 deletions
13
.github/workflows/cd.yml
vendored
13
.github/workflows/cd.yml
vendored
|
|
@ -14,18 +14,23 @@ jobs:
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Get version
|
- name: Get version
|
||||||
id: get_version
|
id: get_version
|
||||||
run: echo ::set-output name=version::${GITHUB_REF/refs\/tags\//}
|
run: echo ::set-output name=version::${GITHUB_REF/refs\/tags\//}
|
||||||
|
|
||||||
|
- name: Restore cargo cache
|
||||||
|
uses: Swatinem/rust-cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: ci
|
||||||
|
with:
|
||||||
|
shared-key: ${{ matrix.os }}-${{ env.cache-name }}-stable
|
||||||
|
|
||||||
- name: Install Rust
|
- name: Install Rust
|
||||||
uses: actions-rs/toolchain@v1
|
uses: dtolnay/rust-toolchain@stable
|
||||||
with:
|
with:
|
||||||
toolchain: stable
|
toolchain: stable
|
||||||
profile: minimal
|
|
||||||
override: true
|
|
||||||
components: clippy
|
components: clippy
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
|
|
|
||||||
85
.github/workflows/ci.yml
vendored
85
.github/workflows/ci.yml
vendored
|
|
@ -22,31 +22,23 @@ jobs:
|
||||||
continue-on-error: ${{ matrix.rust == 'nightly' }}
|
continue-on-error: ${{ matrix.rust == 'nightly' }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Restore cargo cache
|
- name: Restore cargo cache
|
||||||
uses: actions/cache@v2
|
uses: Swatinem/rust-cache@v2
|
||||||
env:
|
env:
|
||||||
cache-name: ci
|
cache-name: ci
|
||||||
with:
|
with:
|
||||||
path: |
|
shared-key: ${{ matrix.os }}-${{ env.cache-name }}-${{ matrix.rust }}
|
||||||
~/.cargo/registry
|
|
||||||
~/.cargo/git
|
|
||||||
~/.cargo/bin
|
|
||||||
target
|
|
||||||
key: ${{ matrix.os }}-${{ env.cache-name }}-${{ matrix.rust }}-${{ hashFiles('Cargo.lock') }}
|
|
||||||
|
|
||||||
- name: MacOS Workaround
|
- name: MacOS Workaround
|
||||||
if: matrix.os == 'macos-latest'
|
if: matrix.os == 'macos-latest'
|
||||||
run: cargo clean -p serde_derive -p thiserror
|
run: cargo clean -p serde_derive -p thiserror
|
||||||
|
|
||||||
- name: Install Rust
|
- name: Install Rust
|
||||||
uses: actions-rs/toolchain@v1
|
uses: dtolnay/rust-toolchain@stable
|
||||||
with:
|
with:
|
||||||
toolchain: ${{ matrix.rust }}
|
toolchain: ${{ matrix.rust }}
|
||||||
default: true
|
|
||||||
override: true
|
|
||||||
profile: minimal
|
|
||||||
components: clippy
|
components: clippy
|
||||||
|
|
||||||
- name: Build Debug
|
- name: Build Debug
|
||||||
|
|
@ -97,15 +89,25 @@ jobs:
|
||||||
rust: [nightly, stable, '1.65']
|
rust: [nightly, stable, '1.65']
|
||||||
continue-on-error: ${{ matrix.rust == 'nightly' }}
|
continue-on-error: ${{ matrix.rust == 'nightly' }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@master
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Restore cargo cache
|
||||||
|
uses: Swatinem/rust-cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: ci
|
||||||
|
with:
|
||||||
|
key: ubuntu-latest-${{ env.cache-name }}-${{ matrix.rust }}
|
||||||
|
|
||||||
- name: Install Rust
|
- name: Install Rust
|
||||||
uses: actions-rs/toolchain@v1
|
uses: dtolnay/rust-toolchain@stable
|
||||||
with:
|
with:
|
||||||
toolchain: ${{ matrix.rust }}
|
toolchain: ${{ matrix.rust }}
|
||||||
profile: minimal
|
targets: x86_64-unknown-linux-musl
|
||||||
default: true
|
|
||||||
override: true
|
# The build would fail without manually installing the target.
|
||||||
target: x86_64-unknown-linux-musl
|
# https://github.com/dtolnay/rust-toolchain/issues/83
|
||||||
|
- name: Manually install target
|
||||||
|
run: rustup target add x86_64-unknown-linux-musl
|
||||||
|
|
||||||
- name: Setup MUSL
|
- name: Setup MUSL
|
||||||
run: |
|
run: |
|
||||||
|
|
@ -133,14 +135,19 @@ jobs:
|
||||||
rust: [nightly, stable, '1.65']
|
rust: [nightly, stable, '1.65']
|
||||||
continue-on-error: ${{ matrix.rust == 'nightly' }}
|
continue-on-error: ${{ matrix.rust == 'nightly' }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@master
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Restore cargo cache
|
||||||
|
uses: Swatinem/rust-cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: ci
|
||||||
|
with:
|
||||||
|
key: ubuntu-latest-${{ env.cache-name }}-${{ matrix.rust }}
|
||||||
|
|
||||||
- name: Install Rust
|
- name: Install Rust
|
||||||
uses: actions-rs/toolchain@v1
|
uses: dtolnay/rust-toolchain@stable
|
||||||
with:
|
with:
|
||||||
toolchain: ${{ matrix.rust }}
|
toolchain: ${{ matrix.rust }}
|
||||||
profile: minimal
|
|
||||||
default: true
|
|
||||||
override: true
|
|
||||||
- name: Setup ARM toolchain
|
- name: Setup ARM toolchain
|
||||||
run: |
|
run: |
|
||||||
rustup target add aarch64-unknown-linux-gnu
|
rustup target add aarch64-unknown-linux-gnu
|
||||||
|
|
@ -168,12 +175,19 @@ jobs:
|
||||||
name: Lints
|
name: Lints
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@master
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Restore cargo cache
|
||||||
|
uses: Swatinem/rust-cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: ci
|
||||||
|
with:
|
||||||
|
key: ubuntu-latest-${{ env.cache-name }}-stable
|
||||||
|
|
||||||
- name: Install Rust
|
- name: Install Rust
|
||||||
uses: actions-rs/toolchain@v1
|
uses: dtolnay/rust-toolchain@stable
|
||||||
with:
|
with:
|
||||||
toolchain: stable
|
toolchain: stable
|
||||||
override: true
|
|
||||||
components: rustfmt
|
components: rustfmt
|
||||||
|
|
||||||
- run: cargo fmt -- --check
|
- run: cargo fmt -- --check
|
||||||
|
|
@ -199,12 +213,19 @@ jobs:
|
||||||
name: udeps
|
name: udeps
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@master
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Restore cargo cache
|
||||||
|
uses: Swatinem/rust-cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: ci
|
||||||
|
with:
|
||||||
|
key: ubuntu-latest-${{ env.cache-name }}-nightly
|
||||||
|
|
||||||
- name: Install Rust
|
- name: Install Rust
|
||||||
uses: actions-rs/toolchain@v1
|
uses: dtolnay/rust-toolchain@stable
|
||||||
with:
|
with:
|
||||||
toolchain: nightly
|
toolchain: nightly
|
||||||
override: true
|
|
||||||
|
|
||||||
- name: cargo-udeps
|
- name: cargo-udeps
|
||||||
run: |
|
run: |
|
||||||
|
|
@ -217,8 +238,8 @@ jobs:
|
||||||
name: Security audit
|
name: Security audit
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: actions-rs/audit-check@v1
|
- uses: rustsec/audit-check@v1.4.1
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.GITHUB_TOKEN }}
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
|
@ -226,7 +247,7 @@ jobs:
|
||||||
name: Changelog Test
|
name: Changelog Test
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@master
|
- uses: actions/checkout@v3
|
||||||
- name: Extract release notes
|
- name: Extract release notes
|
||||||
id: extract_release_notes
|
id: extract_release_notes
|
||||||
uses: ffurrer2/extract-release-notes@v1
|
uses: ffurrer2/extract-release-notes@v1
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue