scripts: publish unified Agent artifacts and restore CI coverage [CI]
ci/woodpecker/push/web-build Pipeline was successful
ci/woodpecker/push/verify Pipeline was successful
ci/woodpecker/push/dev-image Pipeline failed

Remove Probe build jobs and release paths. Transfer Gitea publishing credentials to both Agent architecture jobs, publish each platform archive once, and run slow tests after development images are published.
This commit is contained in:
justme committed 2026-10-21 11:56:06 +08:00
1 parent c9beeee8e3
commit 4515d7b075
14 files changed
+52 -179

No files matched your search

+6 -6
View File
@@ -7,10 +7,10 @@ set -euo pipefail
exit 2
}
component="${1:?usage: build-dev-image.sh <backend|agent|probe> [amd64|arm64]}"
component="${1:?usage: build-dev-image.sh <backend|agent> [amd64|arm64]}"
arch="${2:-amd64}"
case "$component" in
backend|agent|probe) ;;
backend|agent) ;;
*) echo "unsupported component: $component" >&2; exit 2 ;;
esac
case "$arch" in
@@ -183,21 +183,21 @@ for tag in "$image_version-$arch"; do
echo "pushed development image $repository:$tag"
done
# Reuse the static Probe/enrollment binaries already built above; do not compile again.
# Reuse the static Agent/enrollment binaries already built above; do not compile again.
# Publish before the multi-arch image offer wakes online native nodes.
if [[ "$component" == probe ]]; then
if [[ "$component" == agent ]]; then
buildah rm "moshiro-openwrt-extract-$arch" >/dev/null 2>&1 || true
native_container="$(buildah from --arch "$arch" --name "moshiro-openwrt-extract-$arch" "$local_image")"
native_dir="$work/openwrt"
mkdir -p "$native_dir"
native_mount="$(buildah mount "$native_container")"
cp "$native_mount/usr/local/bin/moshiro-probe" "$native_mount/usr/local/bin/fleet-enroll" "$native_dir/"
cp "$native_mount/usr/local/bin/moshiro-agent" "$native_mount/usr/local/bin/fleet-enroll" "$native_dir/"
buildah unmount "$native_container" >/dev/null
buildah rm "$native_container" >/dev/null
bash "$root/ci/publish-openwrt.sh" dev "$node_rid" "$native_dir"
fi
# Agent and Probe manifests are signed after both architecture-specific images
# Agent manifests are signed after both architecture-specific images
# have been pushed. Backend is still a single-architecture development image.
if [[ "$component" == backend && -n "${RELEASE_SIGNING_KEY:-}" ]]; then
bash "$root/ci/publish-release-offer.sh" "$component" "$repository" "$(cat "$work/$component.digest")" "$MOSHIRO_TAG" dev "$work/$component-release"