Skip to content

Powered by Grav

Developing BOA

Developing BOA

The maintainer guide for hacking on BOA itself: the Barracuda and Octopus bash, the omega8cc Ægir forks, the fork model, release pipeline and install internals.

This guide is for people who hack on BOA itself — the Barracuda/Octopus bash and the omega8cc Ægir forks (Hostmaster, Provision, Hosting). It's code-first and terse; it assumes you read BOA bash and Drupal PHP fluently and that you understand the fork model. omega8cc is upstream — there are no pre-fork upstreams to defer to.

Just running BOA, not changing its code? The Operating BOA guide is the operator reference; this guide is for maintainers only.

Maintainer overview & fork model

The entry point for changing BOA: the stack as a code reader sees it — entry scripts, sourced library sets, the deployable payload — and the omega8cc fork model.

Contributing & code style

How a change gets into the omega8cc repos and the style contract it is reviewed against: the PR and serial-bump mechanics, bash and PHP conventions, and the 5.6 floor.

Release model & SKYNET pipeline

How a commit you merge becomes code running on every production box: the branch and edition model that decides what ships, and the serial and fetch pipeline that lands it.

Install & staged-setup internals

How a BOA box builds and upgrades its Ægir layer: the four AegirSetup phases that assemble the Master and Satellite instances, plus the Hostmaster upgrade orchestrator.

Ægir backend APIs (Provision/Hosting)

The PHP half of BOA: the four omega8cc Ægir forks (Hostmaster, Hosting, Provision, Drush) and how a task travels from frontend node to backend command and back.

Web & search stack internals

The web-serving half of BOA: how Provision turns an Ægir site node into an Nginx vhost and settings.php, where the edge-map wall is declared, and how Barracuda installs Solr.

Build & test

There is no CI: getting a fork change onto a running box and proving it holds is manual and box-shaped, from staging the delivery to running the behaviour by hand.

Monitor & abuse-guard internals (code)

The runtime tier of BOA at code level: the cron-driven watchdogs, the abuse-guard ban pipeline, the nightly maintenance sweep, and the trust boundary they all sit on.

Prebuilt package builder

How BOA produces the prebuilt stack packages the fleet installs: the stackbuild tool on dedicated per-release builder-mirror VMs that snapshot a real barracuda upgrade, the builder invariants, the daily packaging cycle, integrity and naming, and the add-a-builder runbook.

© 2026 BOA Documentation. All rights reserved.