From 422d594cf63cfc51f7ed80978085df7508302c38 Mon Sep 17 00:00:00 2001 From: Eric Weber Date: Sat, 4 Oct 2025 09:21:16 -0700 Subject: [PATCH 1/4] chore: test rewrite image output timestamps --- devcontainer-cache-build-initialize.py | 1 + 1 file changed, 1 insertion(+) diff --git a/devcontainer-cache-build-initialize.py b/devcontainer-cache-build-initialize.py index 1f8091b..25b3da2 100755 --- a/devcontainer-cache-build-initialize.py +++ b/devcontainer-cache-build-initialize.py @@ -140,6 +140,7 @@ def docker_destinations_to_string(docker_destination_list): { "type": "image", "name": f"{DEVCONTAINER_IMAGE_REF}:{GIT_BRANCH_SANITIZED}", + "rewrite-timestamp": True, "push": DEVCONTAINER_PUSH_IMAGE, } ] From a68b70adfb2e03f9815284c8409243efe6724d1c Mon Sep 17 00:00:00 2001 From: Eric Weber Date: Sun, 5 Oct 2025 09:34:45 -0700 Subject: [PATCH 2/4] chore: rewrite timestamps first --- .github/workflows/devcontainer-cache-build.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/devcontainer-cache-build.yaml b/.github/workflows/devcontainer-cache-build.yaml index 8a3e01b..268dc5a 100644 --- a/.github/workflows/devcontainer-cache-build.yaml +++ b/.github/workflows/devcontainer-cache-build.yaml @@ -54,6 +54,8 @@ jobs: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} + - name: Rewrite timestamps + run: find . | xargs touch --date="@${SOURCE_DATE_EPOCH}" --no-dereference - name: Build devcontainer cache id: build-devcontainer-cache env: From be6d3cd0f79a3b230adeb85627f6b177242e53be Mon Sep 17 00:00:00 2001 From: Eric Weber Date: Sun, 5 Oct 2025 09:37:47 -0700 Subject: [PATCH 3/4] chore: SOURCE_DATE_EPOCH --- .github/workflows/devcontainer-cache-build.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/devcontainer-cache-build.yaml b/.github/workflows/devcontainer-cache-build.yaml index 268dc5a..80c8c0e 100644 --- a/.github/workflows/devcontainer-cache-build.yaml +++ b/.github/workflows/devcontainer-cache-build.yaml @@ -36,6 +36,8 @@ on: devcontainer-cache-image-all_configs: description: "The Bake configs of all layers of the devcontainer image built by the workflow" value: ${{ jobs.devcontainer-cache-build.outputs.devcontainer-cache-image-all_configs }} +env: + SOURCE_DATE_EPOCH: 1731797200 jobs: devcontainer-cache-build: name: Populate devcontainer image cache From 993fa3a73e8668f0c8d44abf1bfe9efca2d9f6bd Mon Sep 17 00:00:00 2001 From: Eric Weber Date: Sun, 5 Oct 2025 09:39:13 -0700 Subject: [PATCH 4/4] chore: job SOURCE_DATE_EPOCH --- .github/workflows/devcontainer-cache-build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/devcontainer-cache-build.yaml b/.github/workflows/devcontainer-cache-build.yaml index 80c8c0e..37133fb 100644 --- a/.github/workflows/devcontainer-cache-build.yaml +++ b/.github/workflows/devcontainer-cache-build.yaml @@ -36,14 +36,14 @@ on: devcontainer-cache-image-all_configs: description: "The Bake configs of all layers of the devcontainer image built by the workflow" value: ${{ jobs.devcontainer-cache-build.outputs.devcontainer-cache-image-all_configs }} -env: - SOURCE_DATE_EPOCH: 1731797200 jobs: devcontainer-cache-build: name: Populate devcontainer image cache runs-on: ubuntu-24.04 permissions: packages: write + env: + SOURCE_DATE_EPOCH: 1731797200 steps: - name: Checkout uses: actions/checkout@v5.0.0