feat: use Alpine AOT images, static SQLite and Podman host metrics [CI]
This commit is contained in:
1 parent
6e945657c1
commit
103ef27ed3
37 files changed
+719
-309
No files matched your search
+8
-6
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
# Build a framework-dependent Backend OCI image for the requested arch; publishing is optional.
|
||||
# Build a musl NativeAOT Backend OCI image with statically linked SQLite; publishing is optional.
|
||||
set -euo pipefail
|
||||
|
||||
arch="${1:?usage: release-linux.sh <amd64|arm64>}"
|
||||
@@ -28,7 +28,8 @@ if [[ "$image_publish" == true ]]; then
|
||||
}
|
||||
fi
|
||||
case "$arch" in
|
||||
amd64|arm64) ;;
|
||||
amd64) rid=linux-musl-x64 ;;
|
||||
arm64) rid=linux-musl-arm64 ;;
|
||||
*) echo "unsupported architecture: $arch" >&2; exit 2 ;;
|
||||
esac
|
||||
|
||||
@@ -51,12 +52,13 @@ export MONITOR_COMMIT="${MONITOR_COMMIT:-${CI_COMMIT_SHA:0:10}}"
|
||||
export MONITOR_BUILT_AT="${MONITOR_BUILT_AT:-$(date -u +%Y-%m-%dT%H:%M:%SZ)}"
|
||||
|
||||
(cd "$root/backend" && dotnet publish src/Monitor.Backend \
|
||||
-m:3 -c Release --no-self-contained \
|
||||
-m:3 -c Release -r "$rid" --self-contained true \
|
||||
-p:DebugType=none -p:DebugSymbols=false \
|
||||
-p:UseAppHost=false -p:OpenApiGenerateDocuments=false \
|
||||
-p:PublishAot=true -p:UseAotAnywhere=true -p:SqliteStaticLink=true -p:OpenApiGenerateDocuments=false \
|
||||
--artifacts-path "$build_root" -o "$output")
|
||||
find "$output" -type f -name '*.pdb' -delete
|
||||
cp -a "$output/." "$container_context/app/"
|
||||
[[ -x "$output/monitor-backend" ]] || { echo "NativeAOT Backend executable is missing" >&2; exit 1; }
|
||||
[[ "$(wc -c < "$output/monitor-backend")" -gt 2000000 ]] || { echo "Backend output is an apphost, not a NativeAOT executable" >&2; exit 1; }
|
||||
install -m 0755 "$output/monitor-backend" "$container_context/app/monitor-backend"
|
||||
: > "$container_context/data/.keep"
|
||||
|
||||
# Woodpecker's local backend isolates HOME per workflow. Keep Buildah's image
|
||||
|
||||
Reference in new issue
Block a user