solstice-ci/.mise/tasks/pkg/build
Till Wegmueller 81a93ef1a7
Enable job log persistence, HTTP server, and extend CI/packaging support
This commit introduces:
- Log persistence feature with a new `job_logs` table and related APIs for recording and retrieving job logs.
- An HTTP server for serving log endpoints and job results.
- Updates to the CI pipeline to enable persistence by default and ensure PostgreSQL readiness.
- Docker Compose updates with a Postgres service and MinIO integration for object storage.
- Packaging scripts for Arch Linux, including systemd service units for deployment.
2025-11-02 23:37:11 +01:00

24 lines
779 B
Bash

#!/usr/bin/env bash
set -euo pipefail
# Build Arch packages for Solstice CI components.
# Requires: Arch Linux with base-devel, rust, cargo, makepkg.
# Outputs: pkg files under packaging/arch/*/*.pkg.tar.*
ROOT_DIR=$(cd "$(dirname "$0")/../../../" && pwd)
cd "$ROOT_DIR"
# Create a clean source tarball of the repository
TARBALL="solstice-ci.tar.gz"
TMPDIR=$(mktemp -d)
trap 'rm -rf "$TMPDIR"' EXIT
git ls-files -z | tar --null -czf "$TMPDIR/$TARBALL" -T -
for pkg in solstice-orchestrator solstice-forge-integration; do
PKG_DIR="$ROOT_DIR/packaging/arch/$pkg"
mkdir -p "$PKG_DIR"
cp "$TMPDIR/$TARBALL" "$PKG_DIR/$TARBALL"
( cd "$PKG_DIR" && makepkg -fC --noconfirm )
echo "Built package(s) in $PKG_DIR:" >&2
ls -1 "$PKG_DIR"/*.pkg.tar.* 2>/dev/null || true
done