Use incus_publish job

This commit is contained in:
Benoit 2024-11-14 21:33:17 +09:00
parent f6a0dacf4f
commit ce00f97cbe
Signed by: Benoit
SSH key fingerprint: SHA256:kFsX94Kq6z/6CY0dX+7/FpAeJC0QlMhJVY+B7NYrOmA

View file

@ -17,7 +17,7 @@ ALIAS="$UPSTREAM_NAME-$UPSTREAM_VER-$SERIAL"
cd "$WORKSPACE"
incus launch images:$IMAGE "$CNAME" --quiet
wait_network $CNAME
wait_network "$CNAME"
# Mastodon
incus exec "$CNAME" -- bash -c '
@ -40,32 +40,10 @@ incus exec "$CNAME" \
--force-noninteractive \
-- bash /tmp/setup_mastodon.sh
# Clean
incus exec "$CNAME" -- \
rm -rf \
/etc/machine-id \
/var/cache/apt \
/var/log/journal
# Publish
incus stop "$CNAME"
incus config metadata show "$CNAME" > "$ARCHIVE"/metadata.yaml
# Get the current Unix timestamp
current_timestamp=$(date +%s)
# Calculate expiry date as current timestamp + 1 week (604800 seconds)
expiry_date=$((current_timestamp + 604800))
# Update metadata values
sed -i \
-e "s/creation_date: .*/creation_date: $current_timestamp/" \
-e "s/expiry_date: .*/expiry_date: $expiry_date/" \
-e "s#description: .*#description: $UPSTREAM_NAME v$UPSTREAM_VER on $IMAGE release $SERIAL#" \
-e "s/name: .*/name: $CNAME/" \
-e "s/serial: .*/serial: $SERIAL/" \
"$ARCHIVE"/metadata.yaml
incus config metadata edit "$CNAME" < "$ARCHIVE"/metadata.yaml
incus publish "$CNAME" \
--alias $ALIAS \
--public \
--quiet
incus rm "$CNAME"
laminarc run incus_publish \
CNAME="$CNAME" \
UPSTREAM=$UPSTREAM_NAME \
UPSTREAM_VER=$UPSTREAM_VER \
IMAGE=$IMAGE \
SERIAL=$SERIAL \
ALIAS=$ALIAS