diff --git a/.github/actions.lock.yaml b/.github/actions.lock.yaml index ea226bf..4814187 100644 --- a/.github/actions.lock.yaml +++ b/.github/actions.lock.yaml @@ -1,5 +1,5 @@ version: 1 -generated_at: 2026-06-11T15:39:11Z +generated_at: 2026-08-21T11:46:49Z internal: [] trusted: - action: actions/checkout @@ -7,6 +7,20 @@ trusted: - 34e114876b0b11c390a56381ad16ebd13914f8d5 occurrences: 34e114876b0b11c390a56381ad16ebd13914f8d5: + .github/workflows/ci.yaml: + - jobs.static.steps.[1].uses + - jobs.test.steps.[1].uses + - jobs.permit.steps.[1].uses + - jobs.publish.steps.[1].uses + - jobs.check_release.steps.[1].uses + .github/workflows/dev-publish.yaml: + - jobs.dev-publish.steps.[1].uses +external: + - action: step-security/harden-runner + refs: + - 9af89fc71515a100421586dfdb3dc9c984fbf411 + occurrences: + 9af89fc71515a100421586dfdb3dc9c984fbf411: .github/workflows/ci.yaml: - jobs.static.steps.[0].uses - jobs.test.steps.[0].uses @@ -15,42 +29,42 @@ trusted: - jobs.check_release.steps.[0].uses .github/workflows/dev-publish.yaml: - jobs.dev-publish.steps.[0].uses - - action: runs-on/cache + - action: step-security/mise-action refs: - - a5f51d6f3fece787d03b7b4e981c82538a0654ed + - 2796166110dee826668caddd4bffedae5116e7cd occurrences: - a5f51d6f3fece787d03b7b4e981c82538a0654ed: + 2796166110dee826668caddd4bffedae5116e7cd: .github/workflows/ci.yaml: - - jobs.static.steps.[4].uses - - jobs.static.steps.[6].uses - - jobs.test.steps.[4].uses - - jobs.test.steps.[6].uses - - action: runs-on/cache/restore - refs: - - a5f51d6f3fece787d03b7b4e981c82538a0654ed - occurrences: - a5f51d6f3fece787d03b7b4e981c82538a0654ed: + - jobs.static.steps.[2].uses + - jobs.test.steps.[2].uses + - jobs.publish.steps.[2].uses .github/workflows/dev-publish.yaml: - - jobs.dev-publish.steps.[2].uses - - action: runs-on/cache/save + - jobs.dev-publish.steps.[4].uses + - action: step-security/runs-on-cache refs: - - a5f51d6f3fece787d03b7b4e981c82538a0654ed + - c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73 occurrences: - a5f51d6f3fece787d03b7b4e981c82538a0654ed: + c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73: .github/workflows/ci.yaml: - - jobs.permit.steps.[3].uses -external: - - action: erlef/setup-beam + - jobs.static.steps.[5].uses + - jobs.static.steps.[7].uses + - jobs.test.steps.[5].uses + - jobs.test.steps.[7].uses + - action: step-security/runs-on-cache/restore refs: - - fc68ffb90438ef2936bbb3251622353b3dcb2f93 + - c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73 occurrences: - fc68ffb90438ef2936bbb3251622353b3dcb2f93: - .github/workflows/ci.yaml: - - jobs.static.steps.[1].uses - - jobs.test.steps.[1].uses - - jobs.publish.steps.[1].uses + c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73: .github/workflows/dev-publish.yaml: - jobs.dev-publish.steps.[3].uses + - action: step-security/runs-on-cache/save + refs: + - c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73 + occurrences: + c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73: + .github/workflows/ci.yaml: + - jobs.permit.steps.[4].uses local: [] docker: [] dynamic: [] +nested_floating_deps: [] diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 01e7f3e..83c6df9 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -4,7 +4,7 @@ env: DEPENDENCY_FILE: mix.lock ELIXIR_VERSION: 1.13.0 # Elixir version used during package publishing JOB_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} - OTP_VERSION: 22.3.4.7 # OTP version used during package publishing + OTP_VERSION: 24.3.4.17 # OTP version used during package publishing RELEVANT_FILES: "config lib test mix.exs mix.lock" # Important, this controls the caching, make sure to keep this right REPOSITORY: libcluster RUNNER_OS: ubuntu20 # Must match Elixir/OTP version in described in action erlef/setup-beam@fc68ffb90438ef2936bbb3251622353b3dcb2f93 # v1 @@ -30,7 +30,7 @@ jobs: strategy: fail-fast: false matrix: - otp: [22.3.4.7] + otp: [24.3.4.17] elixir: [1.13.0] runner-os: [ubuntu20] steps: @@ -46,14 +46,14 @@ jobs: ref: ${{ env.SHA }} clean: false persist-credentials: true - - name: Setup Elixir - uses: step-security/setup-beam@05e480cfdc64c72ab6c25b134dd1f57e29776c84 # v1.24.1 - env: - ImageOS: ${{ matrix.runner-os }} + - name: Setup mise + uses: step-security/mise-action@6e96d2ffbc65c037f23c78818f2a339d6cf830f7 # v4.2.4 with: - elixir-version: ${{ matrix.elixir }} - otp-version: ${{ matrix.otp }} - version-type: strict + version: '2026.8.12' + - name: Install Hex + Rebar + run: | + mix local.hex --force + mix local.rebar --force - name: Get SHA sum (HASH) of relevant files id: hash run: | @@ -62,8 +62,6 @@ jobs: HASH="$(git ls-tree ${{ env.SHA }} -- ${{ env.RELEVANT_FILES }} | sha1sum | cut -d' ' -f1)" echo "BUILD HASH FOR THE CODEBASE IS: $HASH" echo "HASH=$HASH" >> $GITHUB_OUTPUT - - name: Hex auth - run: mix hex.organization auth fresha --key ${{ secrets.HEX_ORGANIZATION_WRITE_KEY }} - uses: step-security/runs-on-cache@c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73 # v5.0.7 id: deps-cache with: @@ -105,7 +103,7 @@ jobs: strategy: fail-fast: false matrix: - otp: [22.3.4.7] + otp: [24.3.4.17] elixir: [1.13.0] runner-os: [ubuntu20] steps: @@ -121,14 +119,14 @@ jobs: ref: ${{ env.SHA }} clean: false persist-credentials: true - - name: Setup Elixir - uses: step-security/setup-beam@05e480cfdc64c72ab6c25b134dd1f57e29776c84 # v1.24.1 - env: - ImageOS: ${{ matrix.runner-os }} + - name: Setup mise + uses: step-security/mise-action@6e96d2ffbc65c037f23c78818f2a339d6cf830f7 # v4.2.4 with: - elixir-version: ${{ matrix.elixir }} - otp-version: ${{ matrix.otp }} - version-type: strict + version: '2026.8.12' + - name: Install Hex + Rebar + run: | + mix local.hex --force + mix local.rebar --force - name: Get SHA sum (HASH) of relevant files id: hash run: | @@ -137,8 +135,6 @@ jobs: HASH="$(git ls-tree ${{ env.SHA }} -- ${{ env.RELEVANT_FILES }} | sha1sum | cut -d' ' -f1)" echo "BUILD HASH FOR THE CODEBASE IS: $HASH" echo "HASH=$HASH" >> $GITHUB_OUTPUT - - name: Hex auth - run: mix hex.organization auth fresha --key ${{ secrets.HEX_ORGANIZATION_WRITE_KEY }} - uses: step-security/runs-on-cache@c5b0cba15d05488ebc630ad8d1e95b3d9b35ac73 # v5.0.7 id: deps-cache with: @@ -243,14 +239,14 @@ jobs: ref: ${{ env.SHA }} clean: false persist-credentials: true - - name: Setup Elixir - uses: step-security/setup-beam@05e480cfdc64c72ab6c25b134dd1f57e29776c84 # v1.24.1 - env: - ImageOS: ${{ env.RUNNER_OS }} + - name: Setup mise + uses: step-security/mise-action@6e96d2ffbc65c037f23c78818f2a339d6cf830f7 # v4.2.4 with: - elixir-version: ${{ env.ELIXIR_VERSION }} - otp-version: ${{ env.OTP_VERSION }} - version-type: strict + version: '2026.8.12' + - name: Install Hex + Rebar + run: | + mix local.hex --force + mix local.rebar --force - name: Hex auth run: mix hex.organization auth fresha --key ${{ secrets.HEX_ORGANIZATION_WRITE_KEY }} shell: bash diff --git a/.github/workflows/dev-publish.yaml b/.github/workflows/dev-publish.yaml index e3b153c..5d4cd9c 100644 --- a/.github/workflows/dev-publish.yaml +++ b/.github/workflows/dev-publish.yaml @@ -4,7 +4,7 @@ env: DEPENDENCY_FILE: mix.lock ELIXIR_VERSION: 1.13.0 # Elixir version used during package publishing JOB_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} - OTP_VERSION: 23.3.4.7 # OTP version used during package publishing + OTP_VERSION: 24.3.4.17 # OTP version used during package publishing RELEVANT_FILES: "config lib test mix.exs mix.lock" # Important, this controls the caching, make sure to keep this right REPOSITORY: libcluster RUNNER_OS: ubuntu20 # Must match Elixir/OTP version in described in action erlef/setup-beam@fc68ffb90438ef2936bbb3251622353b3dcb2f93 # v1 @@ -49,14 +49,10 @@ jobs: key: ${{ runner.os }}-${{ env.REPOSITORY }}-approval-${{ steps.hash.outputs.HASH }} path: approval.txt fail-on-cache-miss: true - - name: Setup Elixir - uses: step-security/setup-beam@05e480cfdc64c72ab6c25b134dd1f57e29776c84 # v1.24.1 - env: - ImageOS: ${{ env.RUNNER_OS }} + - name: Setup mise + uses: step-security/mise-action@6e96d2ffbc65c037f23c78818f2a339d6cf830f7 # v4.2.4 with: - elixir-version: ${{ env.ELIXIR_VERSION }} - otp-version: ${{ env.OTP_VERSION }} - version-type: strict + version: '2026.8.12' - name: Hex auth run: mix hex.organization auth fresha --key ${{ secrets.HEX_ORGANIZATION_WRITE_KEY }} shell: bash diff --git a/.gitignore b/.gitignore index cd1cbba..27ff4ac 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,6 @@ libcluster-*.tar !/priv/test/service_account/.gitkeep /libcluster.iml /.idea/ + +# mise-action generated lockfile for pinned GitHub Actions +.github/actions.lock.yaml diff --git a/mise.lock b/mise.lock new file mode 100644 index 0000000..d5d6494 --- /dev/null +++ b/mise.lock @@ -0,0 +1,84 @@ +# @generated - this file is auto-generated by `mise lock` https://mise.jdx.dev/dev-tools/mise-lock.html + +lockfile_version = 1 + +[[tools.elixir]] +version = "1.13.0" +backend = "core:elixir" +specifiers = ["1.13.0"] + +[tools.elixir."platforms.linux-arm64"] +checksum = "sha256:9b07613dec0fc57a9efb8c50e9141def77ba4029e6b1d012a2132c70485894af" +url = "https://builds.hex.pm/builds/elixir/v1.13.0.zip" + +[tools.elixir."platforms.linux-arm64-musl"] +checksum = "sha256:9b07613dec0fc57a9efb8c50e9141def77ba4029e6b1d012a2132c70485894af" +url = "https://builds.hex.pm/builds/elixir/v1.13.0.zip" + +[tools.elixir."platforms.linux-x64"] +checksum = "sha256:9b07613dec0fc57a9efb8c50e9141def77ba4029e6b1d012a2132c70485894af" +url = "https://builds.hex.pm/builds/elixir/v1.13.0.zip" + +[tools.elixir."platforms.linux-x64-musl"] +checksum = "sha256:9b07613dec0fc57a9efb8c50e9141def77ba4029e6b1d012a2132c70485894af" +url = "https://builds.hex.pm/builds/elixir/v1.13.0.zip" + +[tools.elixir."platforms.macos-arm64"] +checksum = "sha256:9b07613dec0fc57a9efb8c50e9141def77ba4029e6b1d012a2132c70485894af" +url = "https://builds.hex.pm/builds/elixir/v1.13.0.zip" + +[tools.elixir."platforms.macos-x64"] +checksum = "sha256:9b07613dec0fc57a9efb8c50e9141def77ba4029e6b1d012a2132c70485894af" +url = "https://builds.hex.pm/builds/elixir/v1.13.0.zip" + +[tools.elixir."platforms.windows-x64"] +checksum = "sha256:9b07613dec0fc57a9efb8c50e9141def77ba4029e6b1d012a2132c70485894af" +url = "https://builds.hex.pm/builds/elixir/v1.13.0.zip" + +[[tools.erlang]] +version = "24.3.4.17" +backend = "core:erlang" +specifiers = ["24.3.4.17"] + +[tools.erlang.options] +precompiled_os = "ubuntu-24.04" + +[tools.erlang."platforms.linux-arm64"] +url = "https://github.com/erlang/otp/releases/download/OTP-24.3.4.17/otp_src_24.3.4.17.tar.gz" +url_api = "https://api.github.com/repos/erlang/otp/releases/assets/167108697" +install = "source" + +[tools.erlang."platforms.linux-x64"] +checksum = "blake3:2d9fc91eebc66b0f649551215cad0a413662262d360ad86ab2a51634343a4c66" +url = "https://github.com/erlang/otp/releases/download/OTP-24.3.4.17/otp_src_24.3.4.17.tar.gz" +url_api = "https://api.github.com/repos/erlang/otp/releases/assets/167108697" +install = "source" + +[[tools.erlang]] +version = "24.3.4.17" +backend = "core:erlang" +specifiers = ["24.3.4.17"] + +[tools.erlang."platforms.linux-arm64-musl"] +url = "https://github.com/erlang/otp/releases/download/OTP-24.3.4.17/otp_src_24.3.4.17.tar.gz" +url_api = "https://api.github.com/repos/erlang/otp/releases/assets/167108697" +install = "source" + +[tools.erlang."platforms.linux-x64-musl"] +url = "https://github.com/erlang/otp/releases/download/OTP-24.3.4.17/otp_src_24.3.4.17.tar.gz" +url_api = "https://api.github.com/repos/erlang/otp/releases/assets/167108697" +install = "source" + +[tools.erlang."platforms.macos-arm64"] +url = "https://github.com/erlang/otp/releases/download/OTP-24.3.4.17/otp_src_24.3.4.17.tar.gz" +url_api = "https://api.github.com/repos/erlang/otp/releases/assets/167108697" +install = "source" + +[tools.erlang."platforms.macos-x64"] +url = "https://github.com/erlang/otp/releases/download/OTP-24.3.4.17/otp_src_24.3.4.17.tar.gz" +url_api = "https://api.github.com/repos/erlang/otp/releases/assets/167108697" +install = "source" + +[tools.erlang."platforms.windows-x64"] +url = "https://github.com/erlang/otp/releases/download/OTP-24.3.4.17/otp_win64_24.3.4.17.zip" +url_api = "https://api.github.com/repos/erlang/otp/releases/assets/192554761" diff --git a/mise.toml b/mise.toml new file mode 100644 index 0000000..e4ee9e4 --- /dev/null +++ b/mise.toml @@ -0,0 +1,3 @@ +[tools] +elixir = "1.13.0" +erlang = "24.3.4.17"