Shell · deterministic image production

JoomEngine container release engine

The official Shell-based Docker image build system for Joomla Component Builder, generating build matrices, manifests, tags, and published images from upstream release evidence.

Current source-reviewed build system
Role
Creator, lead architect and maintainer
Evidence
2 direct public links
  • Bash
  • Docker
  • AWK
  • jq
  • NDJSON
  • GitHub Actions

Purpose and value

Why this system exists

The system makes container publication auditable. Release discovery, integrity hashes, Joomla/PHP/runtime expansion, stable and prerelease tag leadership, generated build contexts, state tracking, and registry publication are implemented in reviewable Shell rather than hidden inside CI YAML.

Engineering role

Creator, lead architect and maintainer

System structure

Architecture

  1. 01

    Upstream JCB release XML is converted into verified release inputs with required SHA-512 hashes.

  2. 02

    A declarative compatibility matrix expands Joomla versions, PHP versions, and Apache/FPM runtime variants.

  3. 03

    Generated Docker contexts remain output; authoritative behavior lives in the Shell engine and templates.

  4. 04

    An NDJSON manifest records each independently buildable image and its complete tag set.

Boundaries

Principal interfaces

JCB release and update metadata
Declarative version configuration
Docker build contexts and registry tags
NDJSON build manifest and GitHub Actions

Judgement

Engineering decisions

Keep CI thin so the exact production behavior can be executed and reviewed locally.

Refuse releases without integrity hashes and prevent tag collisions between stable and prerelease channels.

Track processed build combinations to avoid unnecessary registry work.

Confidence model

Delivery, validation, and maintenance

  • Locally reproducible build engine
  • Dry-run, quiet, force, and build-only modes
  • Deterministic tagging policy
  • Machine-readable build manifest

Direct sources

Inspect the evidence

Current verified scope

Hash-gated release discovery, generated manifests, tag leadership and automated container publication are documented in current source.

Interpretation boundary

Large change totals include generated image contexts and are not interpreted as hand-authored churn.

Source reviewed to 2026-07-28

Rapid navigation

Go to

navigate Enter open