diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2f3df91..a440849 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,7 +22,7 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: Dump GitHub script context - uses: actions/github-script@v7 + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7 with: script: console.log(context) @@ -71,14 +71,14 @@ jobs: ENVIRONMENT: ci steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 - name: Set up UV - uses: astral-sh/setup-uv@v5 + uses: astral-sh/setup-uv@4db96194c378173c656ce18a155ffc14a9fc4355 # v5 - name: Set up Python id: setup-python - uses: actions/setup-python@v5 + uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5 with: python-version: ${{ matrix.python }} @@ -111,14 +111,14 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 with: sparse-checkout: | Dockerfile uv.lock - name: Cache buildkit mounts - uses: actions/cache@v4 + uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4 with: path: | var-cache-apt @@ -130,31 +130,31 @@ jobs: buildkit-mounts-${{ runner.os }} - name: Inject var-cache-apt into docker - uses: reproducible-containers/buildkit-cache-dance@v3 + uses: reproducible-containers/buildkit-cache-dance@5b6db76d1da5c8b307d5d2e0706d266521b710de # v3 with: cache-source: var-cache-apt cache-target: /var/cache/apt - name: Inject root-cache-pip into docker - uses: reproducible-containers/buildkit-cache-dance@v3 + uses: reproducible-containers/buildkit-cache-dance@5b6db76d1da5c8b307d5d2e0706d266521b710de # v3 with: cache-source: root-cache-pip cache-target: /root/.cache/pip - name: Inject root-cache-uv into docker - uses: reproducible-containers/buildkit-cache-dance@v3 + uses: reproducible-containers/buildkit-cache-dance@5b6db76d1da5c8b307d5d2e0706d266521b710de # v3 with: cache-source: root-cache-uv cache-target: /root/.cache/uv - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 + uses: docker/setup-buildx-action@f7ce87c1d6bead3e36075b2ce75da1f6cc28aaca # v3 - name: Build CI image id: build-ci env: ENVIRONMENT: ci - uses: docker/build-push-action@v6 + uses: docker/build-push-action@ca877d9245402d1537745e0e356eab47c3520991 # v6 with: target: ${{ env.ENVIRONMENT }} cache-from: | @@ -167,13 +167,13 @@ jobs: - name: Docker metadata id: docker_metadata - uses: docker/metadata-action@v5 + uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5 with: images: ${{ env.GHCR_IMAGE_NAME }} - name: Login to GHCR if: ${{ github.event_name != 'pull_request' }} - uses: docker/login-action@v3 + uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3 with: registry: ghcr.io username: ${{ github.repository_owner }} @@ -183,7 +183,7 @@ jobs: if: ${{ github.event_name != 'pull_request' }} env: ENVIRONMENT: dev - uses: docker/build-push-action@v6 + uses: docker/build-push-action@ca877d9245402d1537745e0e356eab47c3520991 # v6 with: target: ${{ env.ENVIRONMENT }} cache-from: | @@ -197,7 +197,7 @@ jobs: if: ${{ github.event_name != 'pull_request' }} env: ENVIRONMENT: prod - uses: docker/build-push-action@v6 + uses: docker/build-push-action@ca877d9245402d1537745e0e356eab47c3520991 # v6 with: cache-from: | ${{ env.GHCR_IMAGE_NAME }}:dev diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 621edc7..2cf2970 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-latest steps: - name: semantic-pull-request - uses: amannn/action-semantic-pull-request@v5 + uses: amannn/action-semantic-pull-request@0723387faaf9b38adef4775cd42cfd5155ed6017 # v5 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -29,7 +29,7 @@ jobs: runs-on: ubuntu-latest steps: - name: labeler - uses: actions/labeler@v5 + uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5 size-labeler: name: label size @@ -39,7 +39,7 @@ jobs: runs-on: ubuntu-latest steps: - name: size-label - uses: pascalgn/size-label-action@v0.5.5 + uses: pascalgn/size-label-action@f8edde36b3be04b4f65dcfead05dc8691b374348 # v0.5.5 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} IGNORED: | diff --git a/Dockerfile b/Dockerfile index 7a653ca..a019ab7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -41,7 +41,7 @@ ARG PIP_DISABLE_PIP_VERSION_CHECK=1 \ UV_NO_CACHE=1 # set up python -COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/ +COPY --from=ghcr.io/astral-sh/uv:latest@sha256:88d7b48fc9f17462c82b5482e497af250d337f3f14e1ac97c16e68eba49b651e /uv /uvx /bin/ COPY --chown=${USER}:${USER} pyproject.toml uv.lock ./ RUN --mount=type=cache,target=/root/.cache/uv \ uv venv --seed ${VIRTUAL_ENV} && \