diff --git a/.github/workflows/heavy.yml b/.github/workflows/heavy.yml index 136132f96..af74efedb 100644 --- a/.github/workflows/heavy.yml +++ b/.github/workflows/heavy.yml @@ -6,21 +6,26 @@ on: # rebuild any PRs and main branch changes branches: - master +permissions: + contents: read + concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: build-and-test: + permissions: + contents: read timeout-minutes: 20 runs-on: ubuntu-latest-16-cores steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 with: submodules: recursive - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x" diff --git a/.github/workflows/per-pr.yml b/.github/workflows/per-pr.yml index ae9ab7455..c8ad3e836 100644 --- a/.github/workflows/per-pr.yml +++ b/.github/workflows/per-pr.yml @@ -20,18 +20,18 @@ jobs: timeout-minutes: ${{ github.ref == 'refs/heads/master' && 15 || 10 }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 with: submodules: recursive - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x" repo-token: ${{ secrets.GITHUB_TOKEN }} - run: rustup component add rustfmt clippy - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 with: save-if: ${{ github.ref == 'refs/heads/master' }} - run: cargo fmt --all --check @@ -63,10 +63,10 @@ jobs: timeoutMinutes: 20 runs-on: ${{ matrix.runsOn || matrix.os }} steps: - - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@stable + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x" @@ -76,11 +76,11 @@ jobs: # Visual Studio bug tracker https://developercommunity.visualstudio.com/t/Regression-from-1943:-linkexe-crashes/10912960 - name: Setup RUSTFLAGS (Windows) if: runner.os == 'Windows' - uses: actions/github-script@v7 + uses: actions/github-script@450193c5abd4cdb17ba9f3ffcfe8f635c4bb6c2a # v9 with: script: | core.exportVariable('RUSTFLAGS', '-Csymbol-mangling-version=v0'); - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 with: save-if: ${{ github.ref == 'refs/heads/master' }} - run: cargo test -- --include-ignored --nocapture @@ -91,16 +91,16 @@ jobs: test_executable=$(cargo build --tests --message-format json | jq -r 'select(.profile?.test == true and .target?.name == "temporalio_sdk_core" and .executable) | .executable') cp $test_executable ./core-tests - name: Upload cgroup test executable - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7 if: runner.os == 'Linux' && runner.arch == 'X64' with: name: cgroup-tests-linux-x86_64 path: ./core-tests - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7 with: name: coverage-report path: tarpaulin-report.html - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7 with: name: state-machine-coverage path: machine_coverage/ @@ -110,18 +110,18 @@ jobs: timeout-minutes: ${{ github.ref == 'refs/heads/master' && 15 || 10 }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 with: submodules: recursive - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x" repo-token: ${{ secrets.GITHUB_TOKEN }} - run: rustup component add rustfmt clippy - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 with: save-if: ${{ github.ref == 'refs/heads/master' }} key: msrv @@ -140,7 +140,7 @@ jobs: CGROUP_TESTS_ENABLED: true steps: - name: Download cgroup test executable - uses: actions/download-artifact@v5 + uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8 with: name: cgroup-tests-linux-x86_64 - name: Run tests @@ -166,10 +166,10 @@ jobs: runsOn: macos-15-intel runs-on: ${{ matrix.runsOn || matrix.os }} steps: - - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@stable + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x" @@ -179,11 +179,11 @@ jobs: # Visual Studio bug tracker https://developercommunity.visualstudio.com/t/Regression-from-1943:-linkexe-crashes/10912960 - name: Setup RUSTFLAGS (Windows) if: runner.os == 'Windows' - uses: actions/github-script@v7 + uses: actions/github-script@450193c5abd4cdb17ba9f3ffcfe8f635c4bb6c2a # v9 with: script: | core.exportVariable('RUSTFLAGS', '-Csymbol-mangling-version=v0'); - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 with: save-if: ${{ github.ref == 'refs/heads/master' }} - run: cargo integ-test @@ -199,16 +199,16 @@ jobs: timeout-minutes: ${{ github.ref == 'refs/heads/master' && 25 || 20 }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@stable + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x" repo-token: ${{ secrets.GITHUB_TOKEN }} - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 with: save-if: ${{ github.ref == 'refs/heads/master' }} - run: cargo test --features=test-utilities --test cloud_tests @@ -224,19 +224,19 @@ jobs: timeout-minutes: ${{ github.ref == 'refs/heads/master' && 25 || 20 }} runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@stable + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x" repo-token: ${{ secrets.GITHUB_TOKEN }} - name: Start container for otel-collector and prometheus - uses: hoverkraft-tech/compose-action@v2.0.1 + uses: hoverkraft-tech/compose-action@4894d2492015c1774ee5a13a95b1072093087ec3 # v2.5.0 with: compose-file: ./etc/docker/docker-compose-ci.yaml - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 with: save-if: ${{ github.ref == 'refs/heads/master' }} - run: cargo integ-test docker_ @@ -246,20 +246,20 @@ jobs: timeout-minutes: 15 runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@stable + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: version: "23.x" repo-token: ${{ secrets.GITHUB_TOKEN }} - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 with: save-if: ${{ github.ref == 'refs/heads/master' }} - name: Build examples run: cargo build --examples -p temporalio-sdk --features examples - name: Install Temporal CLI - uses: temporalio/setup-temporal@v0 + uses: temporalio/setup-temporal@1059a504f87e7fa2f385e3fa40d1aa7e62f1c6ca # v0 - name: Start Temporal dev server run: | temporal server start-dev --headless & @@ -281,10 +281,10 @@ jobs: name: "C bridge static link test" runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@stable + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable - name: Install protoc - uses: arduino/setup-protoc@v3 + uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3 with: # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed version: "23.x"