Skip to content

Commit 9a4c205

Browse files
committed
Honor SDE in Dockerfile for the repro group
1 parent eb80a94 commit 9a4c205

2 files changed

Lines changed: 10 additions & 2 deletions

File tree

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ $(OUTPUTDIR)/%.tar.zst:
1414

1515
.PRECIOUS: $(OUTPUTDIR)/Dockerfile.%
1616
$(OUTPUTDIR)/Dockerfile.%: $(OUTPUTDIR)/%.tar.zst
17-
scripts/make-dockerfile.sh "$(*).tar.zst" $(*) $(OUTPUTDIR) "true" "Dev"
17+
scripts/make-dockerfile.sh "$(*).tar.zst" $(*) $(OUTPUTDIR) "true" "Dev" $(SOURCE_DATE_EPOCH)
1818

1919
# The following is for local builds only, it is not used by the CI/CD pipeline
2020

scripts/make-dockerfile.sh

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,24 @@ declare -r GROUP="$2"
77
declare -r OUTPUTDIR="$3"
88
declare -r DOWNLOAD="$4"
99
declare -r TITLE="$5"
10+
declare -rx SOURCE_DATE_EPOCH="$6"
1011

1112
# Do not use these directly in the sed below - it will mask git failures
1213
BUILD_VERSION="${BUILD_VERSION:-dev}"
1314
CI_COMMIT_SHA="${CI_COMMIT_SHA:-$(git rev-parse HEAD)}"
1415

16+
# Honor SOURCE_DATE_EPOCH for the repro GROUP
17+
if [ "$GROUP" = "repro" ]; then
18+
CREATED_TIMESTAMP=$(date -u -d "@$SOURCE_DATE_EPOCH" +%Y-%m-%dT%H:%M:%SZ)
19+
else
20+
CREATED_TIMESTAMP=$(date -Is)
21+
fi
22+
1523
sed -e "s|TEMPLATE_ROOTFS_FILE|$ROOTFS_FILE|" \
1624
-e "s|TEMPLATE_ROOTFS_DOWNLOAD|$DOWNLOAD|" \
1725
-e "s|TEMPLATE_ROOTFS_HASH|$(cat $OUTPUTDIR/$ROOTFS_FILE.SHA256)|" \
1826
-e "s|TEMPLATE_TITLE|Arch Linux $TITLE Image|" \
1927
-e "s|TEMPLATE_VERSION_ID|$BUILD_VERSION|" \
2028
-e "s|TEMPLATE_REVISION|$CI_COMMIT_SHA|" \
21-
-e "s|TEMPLATE_CREATED|$(date -Is)|" \
29+
-e "s|TEMPLATE_CREATED|$CREATED_TIMESTAMP|" \
2230
Dockerfile.template > "$OUTPUTDIR/Dockerfile.$GROUP"

0 commit comments

Comments
 (0)