• Orca v0.15.2 — v0.16 Milestone: Release Binary Asset Fix
    Release / ci (push) Successful in 7m36s
    Release / container-orca (push) Failing after 2s
    Release / container-traefik (push) Failing after 1s
    Stable

    cloudinit-bot released this 2026-08-12 23:11:09 +00:00 | 1 commits to main since this release

    v0.16: Release Binary Asset Fix — Milestone Release

    Summary

    Fixes the root cause of releases shipping with zero binary assets. All 87 releases in the repo's history had zero binary assets — this has never worked.

    Root Cause (two compounding bugs)

    1. Gitea Actions workflow — the git clone of the private coreci repo had no credentials, causing the "Install CoreCI" step to fail
    2. .coreci.yml format — used invalid pipelines:/steps:/image:/commands: format that CoreCI silently drops (unknown YAML fields) → empty Jobs map → zero jobs executed

    What Changed

    • .gitea/workflows/release.yml: Auth the private coreci clone (embed PAT_TOKEN in URL), add disk cleanup step, move release asset upload to a separate Gitea Actions step (after coreci run), continue-on-error on coreci run
    • .coreci.yml: Rewritten from invalid format to CoreCI native jobs:/invoke:/vars: with DAG (build → test)
    • scripts/ci-run.sh: POSIX-compliant wrapper for CoreCI jobs (avoids ValidateShellCommand metacharacter restrictions, sets Go env vars dropped by shell-isolated executor)
    • scripts/ci-release.sh: Builds tarball + SHA256SUMS and uploads to Gitea release via direct API (handles duplicate release, verifies assets via /releases/{id}/assets endpoint)

    Phases

    • P0: Pre-execution (v0.15.0)
    • P1: Gitea Actions + .coreci.yml rewrite (v0.15.1)
    • P2: Final review + ship (v0.15.2 = milestone release)

    Requirements (2)

    • REQ-183: Fix Gitea Actions clone auth for private coreci repo
    • REQ-184: Rewrite .coreci.yml to CoreCI native jobs: format
    Downloads
  • Orca v0.15.1
    Release / ci (push) Successful in 7m39s
    Release / container-orca (push) Failing after 1s
    Release / container-traefik (push) Failing after 2s
    Stable

    cloudinit-bot released this 2026-08-12 23:01:57 +00:00 | 2 commits to main since this release

    Release v0.15.1 built by CoreCI pipeline

    Downloads
  • dev 61c97c847c

    Orca dev Stable

    cloudinit-bot released this 2026-08-12 22:17:53 +00:00 | 23 commits to main since this release

    Release dev built by CoreCI

    Downloads
  • Orca v0.15.0 — v0.16 Pre-execution
    Release / ci (push) Failing after 5m1s
    Release / container-orca (push) Has been skipped
    Release / container-traefik (push) Has been skipped
    Stable

    cloudinit-bot released this 2026-08-12 21:03:55 +00:00 | 19 commits to main since this release

    Release v0.15.0 — v0.16 Pre-execution

    Phase 0: SPECIFY → CLARIFY → RESEARCH → PLAN

    Changes

    • Established milestone v0.16 to fix the root cause of releases shipping with zero binary assets
    • Identified two compounding bugs: (1) Gitea Actions clone of private coreci repo has no credentials, (2) .coreci.yml uses invalid pipelines:/steps:/ format that CoreCI silently drops
    • Validated root cause against CoreCI source code (pipeline.go, run.go, isolated_shell.go, github.go, pass_through.go)
    • Created REQ-183 (clone auth) and REQ-184 (.coreci.yml rewrite)
    Downloads
  • v0.14.2 — v0.15 Milestone: CI Release Pipeline Fix
    Release / ci (push) Failing after 4m57s
    Release / container-orca (push) Has been skipped
    Release / container-traefik (push) Has been skipped
    Stable

    cloudinit-bot released this 2026-08-10 21:01:56 +00:00 | 24 commits to main since this release

    v0.15: CI Release Pipeline Fix — Milestone Release

    Summary

    Fixes container image publishing. v0.14 shipped Dockerfile.traefik + Dockerfile but no images were published because no Gitea Actions workflow triggered on tag pushes and .coreci.yml used Docker-in-Docker.

    What Changed

    • .gitea/workflows/release.yml: Gitea Actions workflow triggering on tag push (v*). Three jobs: CI (coreci run), container-orca (kaniko build+push), container-traefik (kaniko build+push).
    • .coreci.yml: Removed DinD container-publish steps (moved to Gitea Actions — CoreCI's podman executor can't override kaniko's entrypoint).
    • scripts/trigger_coreci.sh: Added tag ref handling.
    • PAT_TOKEN secret: Created via tea CLI (Gitea reserves GITEA_ prefix).

    Phases

    • P0: Pre-execution (v0.14.0)
    • P1: Gitea Actions + kaniko (v0.14.1)
    • P2: Final review + ship (v0.14.2 = milestone release)

    Requirements (3)

    • REQ-180: Gitea Actions workflow with coreci run
    • REQ-181: Kaniko container publishing (no DinD)
    • REQ-182: PAT_TOKEN secret via tea CLI
    Downloads
  • v0.14.1 — v0.15 P1: Gitea Actions + kaniko container publishing
    Release / ci (push) Failing after 4m55s
    Release / container-orca (push) Has been skipped
    Release / container-traefik (push) Has been skipped
    Stable

    cloudinit-bot released this 2026-08-10 20:59:10 +00:00 | 25 commits to main since this release

    Gitea Actions workflow triggers on tag push. CoreCI runs validate/build/test/release (tarball). Kaniko builds+pushes orca + orca-traefik images (no DinD). PAT_TOKEN secret used for registry auth.

    Downloads
  • cloudinit-bot released this 2026-08-10 20:57:55 +00:00 | 26 commits to main since this release

    Phase 0: SPECIFY+CLARIFY+RESEARCH+PLAN. 3 requirements (REQ-180..182). PAT_TOKEN secret created. Key finding: kaniko can't be a CoreCI step image (entrypoint conflict); container publishing moves to Gitea Actions.

    Downloads
  • cloudinit-bot released this 2026-08-10 20:26:26 +00:00 | 28 commits to main since this release

    v0.14: Ingress Bootstrap Completeness — Milestone Release

    Summary

    Ensures that linux & proxmox types are properly bootstrapped with traefik during cluster init or node join. Replaces the v0.13 binary+systemd traefik install with a podman container running a custom orca-traefik image, and completes the nft SNAT+DNAT ingress stack on every node type.

    New Load-Bearing Rule

    R-024 — Traefik runs exclusively as a podman container, deployed from the `orca-traefik\ image published per release. Every orca-managed ingress surface bootstraps nft DNAT + SNAT/MASQUERADE + podman run --network host.

    Three Topologies

    1. Linux: host → nft → podman traefik (host network)
    2. Proxmox Native: host → nft → LXC (nesting=1,keyctl=1,fuse=1) → podman traefik
    3. Proxmox Floating-IP: LXC (owns floating IP) → nft inside LXC → podman traefik

    Phases (9 total)

    • P0: Pre-execution (v0.13.0)
    • P1: orca-traefik container image + release pipeline (v0.13.1)
    • P2: Podman traefik reconciler — replaces binary+systemd (v0.13.2)
    • P3: nft SNAT+DNAT + orca init ingress bootstrap (v0.13.3)
    • P4: Linux node join remote ingress bootstrap (v0.13.4)
    • P5: Proxmox native ingress mode — LXC + podman (v0.13.5)
    • P6: Proxmox floating-IP LXC ingress (v0.13.6)
    • P7: doctor ingress + docs + integration tests (v0.13.7)
    • P8: Final review + ship + audit (v0.13.8 = milestone release)

    Requirements Covered (9)

    REQ-171..REQ-179: orca-traefik image, podman reconciler, nft SNAT+DNAT, linux remote ingress, proxmox native ingress, floating-IP LXC, doctor ingress, docs, integration tests.

    Key Decisions

    • D-255: Podman container from custom orca-traefik image
    • D-256: --network host (bind 127.0.0.1 directly)
    • D-257: No certResolver (traefik v3.3 only supports acme/tailscale); tls:{} for v0.14, mTLS deferred to v0.15
    • D-262: NftClusterConfig.DNATTarget parameterization (LXC IP for native mode)
    • D-263: LXC --features nesting=1,keyctl=1,fuse=1 for podman-in-LXC

    Binding Conditions (12)

    C-50..C-61: podman install if absent, DNATTarget validation, apt-get idempotency, offline-first tension, native-mode single-apply, MAC collision, v0.13 upgrade path, static config mount, migration 0009, certpaths.CACertPath, --restart=unless-stopped, omit :Z.

    Container Images

    • git.cloudinit.dev/coreci/orca:v0.13.8 (orca binary)
    • git.cloudinit.dev/coreci/orca-traefik:v0.13.8 (custom traefik)
    Downloads
  • cloudinit-bot released this 2026-08-10 20:24:13 +00:00 | 29 commits to main since this release

    Completes v0.14 with doctor ingress command, UAT assertions, docs (ingress.md, ARCHITECTURE.md), and integration tests covering all three ingress topologies.

    Downloads
  • cloudinit-bot released this 2026-08-10 20:19:47 +00:00 | 30 commits to main since this release

    Floating-IP ingress mode (REQ-176, R-024). ProvisionIngressLXC: Ubuntu LXC named 'ingress' owns the floating IP (net0 with hwaddr/ip/gw). Interactive prompting for floating-IP params. Dual node registration: PVE host as proxmox + ingress LXC as linux.

    Downloads