3.9 KiB
3.9 KiB
Priority Packaging Milestones
Target date references assume today is 2025-10-02.
1. Apache APISIX
- Dependencies: Requires etcd for configuration storage; default proxy port 9080 and Admin API on 9180 (traditional mode). citeturn1search1turn1search4
- Cloudron add-ons: Package etcd as an internal service (local or addon) or provision external managed etcd.
- Key tasks:
- Implement multi-container Docker build that bundles APISIX gateway and colocated etcd with supervised lifecycle.
- Expose Cloudron TCP proxy support for 9080/9443 proxy & 9180 admin, restrict Admin API via Cloudron ACL.
- Template
conf/config.yaml
to align with Cloudron env vars, including dynamic Admin API keys and optional standalone mode for static config. - Provide smoke test hitting
/apisix/admin/routes
with Cloudron-issued token.
- Milestone window: Design + PoC by 2025-10-16; functional package & review by 2025-11-01.
2. NetBox (netbox-docker)
- Dependencies: PostgreSQL 14+, Redis ≥4.0, persistent media storage; official guidance discourages external Redis and highlights resource needs (8 vCPU, 24 GB RAM for HA). citeturn2search0turn2search1turn2search2
- Cloudron add-ons: Postgres, Redis, object storage (optional), mail outbox.
- Key tasks:
- Adapt upstream docker-compose into Cloudron single-image bundle with supervisord orchestrating web, worker, scheduler.
- Configure manifests for dual Redis (cache + rq) using Cloudron Redis addon namespaces.
- Wire migrations into
start.sh
; ensure plugin directories mounted from/app/data
for persistence. - Expand smoke tests to include
/api/
health probe and Celery worker queue check.
- Milestone window: Packaging draft by 2025-10-23; regression-tested release candidate by 2025-11-08.
3. Jenkins
- Dependencies: Requires Java 17/21 runtime; official Docker images now default to Java 21 with long-term support for Java 17+. citeturn3search0turn3search9turn3search11
- Cloudron add-ons: Local storage (persistent), optional object storage for builds, outbound mail.
- Key tasks:
- Base image customization layering on top of
jenkins/jenkins:lts-jdk21
; harden permissions and align user IDs with Cloudron. - Inject Cloudron env integration (admin user + credentials in secrets); support optional LDAP via Cloudron directory service when available.
- Provide maintenance script for plugin catalog sync and backup to
/app/data/backups
. - Smoke test to assert controller readiness on
/login
and verify Java version output.
- Base image customization layering on top of
- Milestone window: Container adaptation by 2025-10-09; plugin bootstrap + documentation by 2025-10-20.
4. DataHub
- Dependencies: Core services (GMS, frontend, Kafka, MySQL, Elasticsearch, optional Neo4j) shipped via docker-compose; quickstart expects 2 CPUs, 8 GB RAM. citeturn4search0turn4search3
- Cloudron add-ons: MySQL addon (primary metadata store), optional Kafka/Elasticsearch via external services or sidecar containers; large persistent volumes.
- Key tasks:
- Determine feasibility of multi-container package (supervisord) vs. encouraging managed dependencies; document resource footprint.
- Externalize credentials & admin user provisioning through Cloudron secrets.
- Provide scripted ingestion of sample metadata gated behind env flag.
- Implement health probes for GMS (
/health
), frontend (/health
) and background consumer status.
- Milestone window: Architecture decision record by 2025-10-18; initial Cloudron package by 2025-11-12.
Cross-cutting Actions
- Update Cloudron base image references repo-wide automatically when new base images (currently
cloudron/base:5.0.0
from the 8.3 release) ship. citeturn0search1 - Use
make lint
andmake status
gates in CI to enforce placeholder removal before PRs merge. - Capture app-specific ADRs under
docs/apps/<slug>/ADR-0001.md
as work begins.