AkurAI Build
Menu

AkurAI-Build

public

Latest change b4cae531ac70be03dd157ff173358ed25f60890c - Use canonical two-container release path by Ólafur Búi Ólafsson

version: 1
# AkurAI-Build is split into an HTTP service and a worker. The worker owns
# pipeline execution, so a protected job can replace the service without
# restarting or self-severing the worker. Production deploys consume the
# package job's prebuilt binary through deploy/service-deploy.sh. Explicit
# service+worker and host-MCP maintenance uses deploy/compose-release.sh.
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

  - name: deploy-production
    needs: [package]
    executor: native
    branches: [main]
    environment: production
    approval: true
    run: sh deploy/compose-release.sh