AkurAI Build
Menu

AkurAI-Build

public

Latest change d10651e29dcdbf5c0a8357360088b6249da55f43 - Run execution moves exclusively to the worker daemon; ship two-container deployment by Ólafur Búi Ólafsson

version: 1
# AkurAI-Build is the CI/CD controller itself and runs as two containers
# (akurai-build-service + akurai-build-worker, /opt/akurai-build compose). A
# worker job must never rebuild/restart its own container (self-severing), so
# this self-hosted pipeline verifies and packages only. Deployment is
# out-of-band on Titan:
#   docker build --target service -t akurai-build-service:<ver> -f deploy/Dockerfile .
#   docker build --target worker  -t akurai-build-worker:<ver>  -f deploy/Dockerfile .
#   sudo cp deploy/docker-compose.yml /opt/akurai-build/ && (cd /opt/akurai-build && sudo docker compose up -d)
# plus `cargo build --release` installed to ~/.local/lib/akurai-build/akurai
# for the host-side MCP subprocess.
jobs:
  - name: verify
    executor: native
    branches: [main]
    run:
      - RUSTUP_HOME=/home/olafurbui/.rustup CARGO_HOME=/home/olafurbui/.cargo PATH=/home/olafurbui/.cargo/bin:/usr/bin:/bin cargo fmt --all -- --check
      - RUSTUP_HOME=/home/olafurbui/.rustup CARGO_HOME=/home/olafurbui/.cargo PATH=/home/olafurbui/.cargo/bin:/usr/bin:/bin cargo clippy --all-targets --all-features -- -D warnings
      - RUSTUP_HOME=/home/olafurbui/.rustup CARGO_HOME=/home/olafurbui/.cargo PATH=/home/olafurbui/.cargo/bin:/usr/bin:/bin cargo test

  - name: package
    needs: [verify]
    executor: native
    branches: [main]
    run: RUSTUP_HOME=/home/olafurbui/.rustup CARGO_HOME=/home/olafurbui/.cargo PATH=/home/olafurbui/.cargo/bin:/usr/bin:/bin cargo build --release
    artifacts:
      - target/release/akurai