From 9196807fdb5b8facb97cc05d2c8c2b37dc933624 Mon Sep 17 00:00:00 2001 From: James Hodgkinson Date: Mon, 14 Nov 2022 08:57:05 +1000 Subject: [PATCH] Workflow tweaks (#1186) * let's cache some stuff --- .github/workflows/clippy.yml | 27 +++++++++++++++------ .github/workflows/debian_package_kanidm.yml | 3 +++ .github/workflows/dependency_review.yml | 3 +++ .github/workflows/docker_build_kanidm.yml | 3 +++ .github/workflows/docker_build_kanidmd.yml | 3 +++ .github/workflows/docker_build_radiusd.yml | 3 +++ .github/workflows/kanidm_book.yml | 5 +++- .github/workflows/pykanidm_mypy.yml | 6 +++++ .github/workflows/pykanidm_pylint.yml | 6 +++++ .github/workflows/pykanidm_pytest.yml | 7 ++++++ .github/workflows/rust_build.yml | 25 ++++++++++++++----- .github/workflows/rust_test.yml | 25 ++++++++++++++----- .github/workflows/wasm_test.yml | 6 ++--- 13 files changed, 98 insertions(+), 24 deletions(-) diff --git a/.github/workflows/clippy.yml b/.github/workflows/clippy.yml index b020d2dfa..4ae968641 100644 --- a/.github/workflows/clippy.yml +++ b/.github/workflows/clippy.yml @@ -9,15 +9,26 @@ name: Clippy pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: clippy: runs-on: ubuntu-latest steps: + - name: Restore our cache + uses: actions/cache@v3 + with: + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - uses: actions/checkout@v3 - - name: Update package manager run: sudo apt-get update - - name: Install dependencies run: | sudo apt-get install -y \ @@ -27,12 +38,12 @@ jobs: libsqlite3-dev \ pkg-config - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: stable - override: true - default: true + # - name: Install Rust + # uses: actions-rs/toolchain@v1 + # with: + # toolchain: stable + # override: true + # default: true - name: "Run clippy (ignores errors, this is just a check)" uses: actions-rs/cargo@v1 diff --git a/.github/workflows/debian_package_kanidm.yml b/.github/workflows/debian_package_kanidm.yml index 5e1954de6..059300a96 100644 --- a/.github/workflows/debian_package_kanidm.yml +++ b/.github/workflows/debian_package_kanidm.yml @@ -6,6 +6,9 @@ on: push: pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: build-deb-package: runs-on: ubuntu-20.04 diff --git a/.github/workflows/dependency_review.yml b/.github/workflows/dependency_review.yml index 726e35459..2b4db3a48 100644 --- a/.github/workflows/dependency_review.yml +++ b/.github/workflows/dependency_review.yml @@ -8,6 +8,9 @@ name: 'Dependency Review' permissions: contents: read +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: dependency-review: runs-on: ubuntu-latest diff --git a/.github/workflows/docker_build_kanidm.yml b/.github/workflows/docker_build_kanidm.yml index bb396b1b5..4874e9bce 100644 --- a/.github/workflows/docker_build_kanidm.yml +++ b/.github/workflows/docker_build_kanidm.yml @@ -11,6 +11,9 @@ name: Container - Kanidm branches: - master +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: kanidm_build: runs-on: ubuntu-latest diff --git a/.github/workflows/docker_build_kanidmd.yml b/.github/workflows/docker_build_kanidmd.yml index 3e65a6667..5c168ae8f 100644 --- a/.github/workflows/docker_build_kanidmd.yml +++ b/.github/workflows/docker_build_kanidmd.yml @@ -11,6 +11,9 @@ name: Container - Kanidmd branches: - master +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: kanidmd_build: runs-on: ubuntu-latest diff --git a/.github/workflows/docker_build_radiusd.yml b/.github/workflows/docker_build_radiusd.yml index a4bbb718c..88298d19b 100644 --- a/.github/workflows/docker_build_radiusd.yml +++ b/.github/workflows/docker_build_radiusd.yml @@ -11,6 +11,9 @@ name: Container - Radiusd branches: - master +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: radius_build: runs-on: ubuntu-latest diff --git a/.github/workflows/kanidm_book.yml b/.github/workflows/kanidm_book.yml index 388f20256..371935e12 100644 --- a/.github/workflows/kanidm_book.yml +++ b/.github/workflows/kanidm_book.yml @@ -6,7 +6,9 @@ name: GitHub Pages branches: - master - +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: deploy_book: runs-on: ubuntu-latest @@ -49,6 +51,7 @@ jobs: uses: actions/setup-python@v4 with: python-version: '3.10' + cache: 'poetry' - name: pykanidm docs run: | python -m pip install poetry diff --git a/.github/workflows/pykanidm_mypy.yml b/.github/workflows/pykanidm_mypy.yml index f8a094258..6c1c21118 100644 --- a/.github/workflows/pykanidm_mypy.yml +++ b/.github/workflows/pykanidm_mypy.yml @@ -4,6 +4,9 @@ name: pykanidm - mypy "on": push: pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: pykanidm_mypy: runs-on: ubuntu-latest @@ -11,10 +14,13 @@ jobs: - uses: actions/checkout@v3 with: fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod + - name: Install poetry + run: pipx install poetry - name: Set up Python 3.10 uses: actions/setup-python@v4 with: python-version: '3.10' + cache: 'poetry' - name: Running mypy run: | cd pykanidm diff --git a/.github/workflows/pykanidm_pylint.yml b/.github/workflows/pykanidm_pylint.yml index d80b89482..726ccafc8 100644 --- a/.github/workflows/pykanidm_pylint.yml +++ b/.github/workflows/pykanidm_pylint.yml @@ -4,6 +4,9 @@ name: pykanidm - pylint "on": push: pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: pykanidm_pylint: runs-on: ubuntu-latest @@ -11,10 +14,13 @@ jobs: - uses: actions/checkout@v3 with: fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod + - name: Install poetry + run: pipx install poetry - name: Set up Python 3.10 uses: actions/setup-python@v4 with: python-version: '3.10' + cache: 'poetry' - name: Running tests run: | cd pykanidm diff --git a/.github/workflows/pykanidm_pytest.yml b/.github/workflows/pykanidm_pytest.yml index 0553877ff..97409e8b6 100644 --- a/.github/workflows/pykanidm_pytest.yml +++ b/.github/workflows/pykanidm_pytest.yml @@ -4,6 +4,10 @@ name: pykanidm - pytest "on": push: pull_request: + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: pykanidm_pytest: strategy: @@ -16,10 +20,13 @@ jobs: - uses: actions/checkout@v3 with: fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod + - name: Install poetry + run: pipx install poetry - name: Set up Python ${{matrix.python_version}} uses: actions/setup-python@v4 with: python-version: ${{matrix.python_version}} + cache: 'poetry' - name: Running pytest run: | cd pykanidm diff --git a/.github/workflows/rust_build.yml b/.github/workflows/rust_build.yml index 35f504550..20fd89a16 100644 --- a/.github/workflows/rust_build.yml +++ b/.github/workflows/rust_build.yml @@ -7,10 +7,23 @@ name: "Rust Build" - master pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: rust_build: runs-on: ubuntu-20.04 steps: + - name: Restore our cache + uses: actions/cache@v3 + with: + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - uses: actions/checkout@v3 - name: Update package manager @@ -24,12 +37,12 @@ jobs: libssl-dev \ libsqlite3-dev - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: stable - override: true - default: true + # - name: Install Rust + # uses: actions-rs/toolchain@v1 + # with: + # toolchain: stable + # override: true + # default: true - name: Run tests uses: actions-rs/cargo@v1 with: diff --git a/.github/workflows/rust_test.yml b/.github/workflows/rust_test.yml index 72ace9650..aab3724e2 100644 --- a/.github/workflows/rust_test.yml +++ b/.github/workflows/rust_test.yml @@ -6,10 +6,23 @@ name: "Rust Test" push: pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: rust_test: runs-on: ubuntu-20.04 steps: + - name: Restore our cache + uses: actions/cache@v3 + with: + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - uses: actions/checkout@v3 - name: Update package manager @@ -23,12 +36,12 @@ jobs: libssl-dev \ libsqlite3-dev - - name: Install Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: stable - override: true - default: true + # - name: Install Rust + # uses: actions-rs/toolchain@v1 + # with: + # toolchain: stable + # override: true + # default: true - name: Run tests uses: actions-rs/cargo@v1 with: diff --git a/.github/workflows/wasm_test.yml b/.github/workflows/wasm_test.yml index bff15313f..25215a379 100644 --- a/.github/workflows/wasm_test.yml +++ b/.github/workflows/wasm_test.yml @@ -44,9 +44,9 @@ jobs: chrome-version: latest # https://github.com/marketplace/actions/setup-chromedriver - uses: nanasess/setup-chromedriver@v1 - # with: - # Optional: do not specify to match Chrome's version - # chromedriver-version: '88.0.4324.96' + # with: + # Optional: do not specify to match Chrome's version + # chromedriver-version: '88.0.4324.96' # docs here: # https://rustwasm.github.io/docs/wasm-bindgen/wasm-bindgen-test/browsers.html