Compare commits
2 Commits
3066c5d8ba
...
02c50f7873
| Author | SHA1 | Date | |
|---|---|---|---|
| 02c50f7873 | |||
| 7da3a8ea71 |
@@ -200,8 +200,19 @@ jobs:
|
|||||||
- name: Update sha256sums
|
- name: Update sha256sums
|
||||||
run: |
|
run: |
|
||||||
cd upload-repo
|
cd upload-repo
|
||||||
sed -i "/debian-${{ matrix.version }}.tar.bz2/d" sha256sums.txt 2>/dev/null || true
|
VERSION=${{ matrix.version }}
|
||||||
sha256sum "$VERSION/debian-$VERSION.tar.bz2" >> sha256sums.txt
|
TAR="../output/$VERSION/debian-$VERSION.tar.bz2"
|
||||||
|
|
||||||
|
# Remove old entry
|
||||||
|
sed -i "/debian-$VERSION.tar.bz2/d" sha256sums.txt 2>/dev/null || true
|
||||||
|
|
||||||
|
if [[ ! -f "$TAR" ]]; then
|
||||||
|
echo "[ERROR] Tarball not found at $TAR"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Add new sha256
|
||||||
|
sha256sum "$TAR" >> sha256sums.txt
|
||||||
|
|
||||||
- name: Commit and push if changed
|
- name: Commit and push if changed
|
||||||
id: commit_archives
|
id: commit_archives
|
||||||
@@ -338,7 +349,7 @@ jobs:
|
|||||||
CONTEXT_DIR="$VERSION"
|
CONTEXT_DIR="$VERSION"
|
||||||
mkdir -p "$CONTEXT_DIR"
|
mkdir -p "$CONTEXT_DIR"
|
||||||
echo "[INFO] Copying rootfs tarball into Docker context..."
|
echo "[INFO] Copying rootfs tarball into Docker context..."
|
||||||
cp "./output/debian-$VERSION.tar.bz2" "$CONTEXT_DIR/"
|
cp "./output/$VERSION/debian-$VERSION.tar.bz2" "$CONTEXT_DIR/"
|
||||||
|
|
||||||
- name: Generate Dockerfile
|
- name: Generate Dockerfile
|
||||||
run: |
|
run: |
|
||||||
@@ -369,10 +380,16 @@ jobs:
|
|||||||
IMAGE_REPO=debian-base
|
IMAGE_REPO=debian-base
|
||||||
FULL_IMAGE="$IMAGE_REGISTRY/$IMAGE_ORG/$IMAGE_REPO:$VERSION"
|
FULL_IMAGE="$IMAGE_REGISTRY/$IMAGE_ORG/$IMAGE_REPO:$VERSION"
|
||||||
|
|
||||||
|
TAR="./output/$VERSION/debian-$VERSION.tar.bz2"
|
||||||
|
if [[ ! -f "$TAR" ]]; then
|
||||||
|
echo "[ERROR] Rootfs tarball not found: $TAR"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# Skip build if image already exists with same digest
|
# Skip build if image already exists with same digest
|
||||||
if docker pull "$FULL_IMAGE" >/dev/null 2>&1; then
|
if docker pull "$FULL_IMAGE" >/dev/null 2>&1; then
|
||||||
EXISTING_DIGEST=$(docker inspect --format='{{index .RepoDigests 0}}' "$FULL_IMAGE")
|
EXISTING_DIGEST=$(docker inspect --format='{{index .RepoDigests 0}}' "$FULL_IMAGE")
|
||||||
NEW_DIGEST=$(sha256sum "./$VERSION/debian-$VERSION.tar.bz2" | awk '{print $1}')
|
NEW_DIGEST=$(sha256sum "$TAR" | awk '{print $1}')
|
||||||
if [[ "$EXISTING_DIGEST" == *"$NEW_DIGEST"* ]]; then
|
if [[ "$EXISTING_DIGEST" == *"$NEW_DIGEST"* ]]; then
|
||||||
echo "[INFO] Docker image for $VERSION is up-to-date, skipping build."
|
echo "[INFO] Docker image for $VERSION is up-to-date, skipping build."
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
Reference in New Issue
Block a user