From 6e3f60cd9d3e9e4c4c08892c05e3f45984c72787 Mon Sep 17 00:00:00 2001 From: ReachableCEO Date: Thu, 2 Oct 2025 14:04:13 -0500 Subject: [PATCH] Restructure repository into output workspace --- AGENTS.md | 21 +++---- README.md | 55 ++++++++++--------- STARTHERE.md => collab/STARTHERE.md | 0 collab/questions/apisix-v1.md | 7 +++ docs/LOCAL_TESTING.md | 20 ------- {.gitea => output/.gitea}/workflows/ci.yml | 6 +- .gitignore => output/.gitignore | 0 {GEMINI => output/GEMINI}/AUDIT-SNAPSHOT1.md | 0 {GEMINI => output/GEMINI}/AUDIT-SNAPSHOT2.md | 0 {GEMINI => output/GEMINI}/FIX-1.md | 0 .../apps}/apache-apisix/CloudronManifest.json | 0 .../apps}/apache-apisix/Dockerfile | 0 {apps => output/apps}/apache-apisix/README.md | 4 +- .../apps}/apache-apisix/app/.gitkeep | 0 .../apps}/apache-apisix/metadata.json | 0 {apps => output/apps}/apache-apisix/start.sh | 0 .../apps}/apache-apisix/test/smoke.sh | 0 .../apps}/autobom/CloudronManifest.json | 0 {apps => output/apps}/autobom/Dockerfile | 0 {apps => output/apps}/autobom/README.md | 4 +- {apps => output/apps}/autobom/app/.gitkeep | 0 {apps => output/apps}/autobom/metadata.json | 0 {apps => output/apps}/autobom/start.sh | 0 {apps => output/apps}/autobom/test/smoke.sh | 0 {apps => output/apps}/catalog.json | 0 .../apps}/chirpstack/CloudronManifest.json | 0 {apps => output/apps}/chirpstack/Dockerfile | 0 {apps => output/apps}/chirpstack/README.md | 4 +- {apps => output/apps}/chirpstack/app/.gitkeep | 0 .../apps}/chirpstack/metadata.json | 0 {apps => output/apps}/chirpstack/start.sh | 0 .../apps}/chirpstack/test/smoke.sh | 0 .../consuldemocracy/CloudronManifest.json | 0 .../apps}/consuldemocracy/Dockerfile | 0 .../apps}/consuldemocracy/README.md | 4 +- .../apps}/consuldemocracy/app/.gitkeep | 0 .../apps}/consuldemocracy/metadata.json | 0 .../apps}/consuldemocracy/start.sh | 0 .../apps}/consuldemocracy/test/smoke.sh | 0 .../apps}/craig/CloudronManifest.json | 0 {apps => output/apps}/craig/Dockerfile | 0 {apps => output/apps}/craig/README.md | 4 +- {apps => output/apps}/craig/app/.gitkeep | 0 {apps => output/apps}/craig/metadata.json | 0 {apps => output/apps}/craig/start.sh | 0 {apps => output/apps}/craig/test/smoke.sh | 0 .../database-gateway/CloudronManifest.json | 0 .../apps}/database-gateway/Dockerfile | 0 .../apps}/database-gateway/README.md | 4 +- .../apps}/database-gateway/app/.gitkeep | 0 .../apps}/database-gateway/metadata.json | 0 .../apps}/database-gateway/start.sh | 0 .../apps}/database-gateway/test/smoke.sh | 0 .../apps}/datahub/CloudronManifest.json | 0 {apps => output/apps}/datahub/Dockerfile | 0 {apps => output/apps}/datahub/README.md | 4 +- {apps => output/apps}/datahub/app/.gitkeep | 0 {apps => output/apps}/datahub/metadata.json | 0 {apps => output/apps}/datahub/start.sh | 0 {apps => output/apps}/datahub/test/smoke.sh | 0 .../apps}/docassemble/CloudronManifest.json | 0 {apps => output/apps}/docassemble/Dockerfile | 0 {apps => output/apps}/docassemble/README.md | 4 +- .../apps}/docassemble/app/.gitkeep | 0 .../apps}/docassemble/metadata.json | 0 {apps => output/apps}/docassemble/start.sh | 0 .../apps}/docassemble/test/smoke.sh | 0 .../docker-webhook/CloudronManifest.json | 0 .../apps}/docker-webhook/Dockerfile | 0 .../apps}/docker-webhook/README.md | 4 +- .../apps}/docker-webhook/app/.gitkeep | 0 .../apps}/docker-webhook/metadata.json | 0 {apps => output/apps}/docker-webhook/start.sh | 0 .../apps}/docker-webhook/test/smoke.sh | 0 .../apps}/drawio/CloudronManifest.json | 0 {apps => output/apps}/drawio/Dockerfile | 0 {apps => output/apps}/drawio/README.md | 4 +- {apps => output/apps}/drawio/app/.gitkeep | 0 {apps => output/apps}/drawio/metadata.json | 0 {apps => output/apps}/drawio/start.sh | 0 {apps => output/apps}/drawio/test/smoke.sh | 0 .../apps}/easy-gate/CloudronManifest.json | 0 {apps => output/apps}/easy-gate/Dockerfile | 0 {apps => output/apps}/easy-gate/README.md | 4 +- {apps => output/apps}/easy-gate/app/.gitkeep | 0 {apps => output/apps}/easy-gate/metadata.json | 0 {apps => output/apps}/easy-gate/start.sh | 0 {apps => output/apps}/easy-gate/test/smoke.sh | 0 .../apps}/elabftw/CloudronManifest.json | 0 {apps => output/apps}/elabftw/Dockerfile | 0 {apps => output/apps}/elabftw/README.md | 4 +- {apps => output/apps}/elabftw/app/.gitkeep | 0 {apps => output/apps}/elabftw/metadata.json | 0 {apps => output/apps}/elabftw/start.sh | 0 {apps => output/apps}/elabftw/test/smoke.sh | 0 .../apps}/fleetdm-fleet/CloudronManifest.json | 0 .../apps}/fleetdm-fleet/Dockerfile | 0 {apps => output/apps}/fleetdm-fleet/README.md | 4 +- .../apps}/fleetdm-fleet/app/.gitkeep | 0 .../apps}/fleetdm-fleet/metadata.json | 0 {apps => output/apps}/fleetdm-fleet/start.sh | 0 .../apps}/fleetdm-fleet/test/smoke.sh | 0 .../apps}/fonoster/CloudronManifest.json | 0 {apps => output/apps}/fonoster/Dockerfile | 0 {apps => output/apps}/fonoster/README.md | 4 +- {apps => output/apps}/fonoster/app/.gitkeep | 0 {apps => output/apps}/fonoster/metadata.json | 0 {apps => output/apps}/fonoster/start.sh | 0 {apps => output/apps}/fonoster/test/smoke.sh | 0 .../apps}/grist/CloudronManifest.json | 0 {apps => output/apps}/grist/Dockerfile | 0 {apps => output/apps}/grist/README.md | 4 +- {apps => output/apps}/grist/app/.gitkeep | 0 {apps => output/apps}/grist/metadata.json | 0 {apps => output/apps}/grist/start.sh | 0 {apps => output/apps}/grist/test/smoke.sh | 0 .../apps}/healthchecks/CloudronManifest.json | 0 {apps => output/apps}/healthchecks/Dockerfile | 0 {apps => output/apps}/healthchecks/README.md | 4 +- .../apps}/healthchecks/app/.gitkeep | 0 .../apps}/healthchecks/metadata.json | 0 {apps => output/apps}/healthchecks/start.sh | 0 .../apps}/healthchecks/test/smoke.sh | 0 .../apps}/huginn/CloudronManifest.json | 0 {apps => output/apps}/huginn/Dockerfile | 0 {apps => output/apps}/huginn/README.md | 4 +- {apps => output/apps}/huginn/app/.gitkeep | 0 {apps => output/apps}/huginn/metadata.json | 0 {apps => output/apps}/huginn/start.sh | 0 {apps => output/apps}/huginn/test/smoke.sh | 0 .../apps}/hyperswitch/CloudronManifest.json | 0 {apps => output/apps}/hyperswitch/Dockerfile | 0 {apps => output/apps}/hyperswitch/README.md | 4 +- .../apps}/hyperswitch/app/.gitkeep | 0 .../apps}/hyperswitch/metadata.json | 0 {apps => output/apps}/hyperswitch/start.sh | 0 .../apps}/hyperswitch/test/smoke.sh | 0 .../apps}/inventree/CloudronManifest.json | 0 {apps => output/apps}/inventree/Dockerfile | 0 {apps => output/apps}/inventree/README.md | 4 +- {apps => output/apps}/inventree/app/.gitkeep | 0 {apps => output/apps}/inventree/metadata.json | 0 {apps => output/apps}/inventree/start.sh | 0 {apps => output/apps}/inventree/test/smoke.sh | 0 .../apps}/jamovi/CloudronManifest.json | 0 {apps => output/apps}/jamovi/Dockerfile | 0 {apps => output/apps}/jamovi/README.md | 4 +- {apps => output/apps}/jamovi/app/.gitkeep | 0 {apps => output/apps}/jamovi/metadata.json | 0 {apps => output/apps}/jamovi/start.sh | 0 {apps => output/apps}/jamovi/test/smoke.sh | 0 .../apps}/jenkins/CloudronManifest.json | 0 {apps => output/apps}/jenkins/Dockerfile | 0 {apps => output/apps}/jenkins/README.md | 4 +- {apps => output/apps}/jenkins/app/.gitkeep | 0 {apps => output/apps}/jenkins/metadata.json | 0 {apps => output/apps}/jenkins/start.sh | 0 {apps => output/apps}/jenkins/test/smoke.sh | 0 .../apps}/kibot/CloudronManifest.json | 0 {apps => output/apps}/kibot/Dockerfile | 0 {apps => output/apps}/kibot/README.md | 4 +- {apps => output/apps}/kibot/app/.gitkeep | 0 {apps => output/apps}/kibot/metadata.json | 0 {apps => output/apps}/kibot/start.sh | 0 {apps => output/apps}/kibot/test/smoke.sh | 0 .../apps}/killbill/CloudronManifest.json | 0 {apps => output/apps}/killbill/Dockerfile | 0 {apps => output/apps}/killbill/README.md | 4 +- {apps => output/apps}/killbill/app/.gitkeep | 0 {apps => output/apps}/killbill/metadata.json | 0 {apps => output/apps}/killbill/start.sh | 0 {apps => output/apps}/killbill/test/smoke.sh | 0 .../apps}/langfuse/CloudronManifest.json | 0 {apps => output/apps}/langfuse/Dockerfile | 0 {apps => output/apps}/langfuse/README.md | 4 +- {apps => output/apps}/langfuse/app/.gitkeep | 0 {apps => output/apps}/langfuse/metadata.json | 0 {apps => output/apps}/langfuse/start.sh | 0 {apps => output/apps}/langfuse/test/smoke.sh | 0 .../apps}/manyfold/CloudronManifest.json | 0 {apps => output/apps}/manyfold/Dockerfile | 0 {apps => output/apps}/manyfold/README.md | 4 +- {apps => output/apps}/manyfold/app/.gitkeep | 0 {apps => output/apps}/manyfold/metadata.json | 0 {apps => output/apps}/manyfold/start.sh | 0 {apps => output/apps}/manyfold/test/smoke.sh | 0 .../apps}/mender-server/CloudronManifest.json | 0 .../apps}/mender-server/Dockerfile | 0 {apps => output/apps}/mender-server/README.md | 4 +- .../apps}/mender-server/app/.gitkeep | 0 .../apps}/mender-server/metadata.json | 0 {apps => output/apps}/mender-server/start.sh | 0 .../apps}/mender-server/test/smoke.sh | 0 .../apps}/midday/CloudronManifest.json | 0 {apps => output/apps}/midday/Dockerfile | 0 {apps => output/apps}/midday/README.md | 4 +- {apps => output/apps}/midday/app/.gitkeep | 0 {apps => output/apps}/midday/metadata.json | 0 {apps => output/apps}/midday/start.sh | 0 {apps => output/apps}/midday/test/smoke.sh | 0 .../apps}/mirlo/CloudronManifest.json | 0 {apps => output/apps}/mirlo/Dockerfile | 0 {apps => output/apps}/mirlo/README.md | 4 +- {apps => output/apps}/mirlo/app/.gitkeep | 0 {apps => output/apps}/mirlo/metadata.json | 0 {apps => output/apps}/mirlo/start.sh | 0 {apps => output/apps}/mirlo/test/smoke.sh | 0 .../nautilus-trader/CloudronManifest.json | 0 .../apps}/nautilus-trader/Dockerfile | 0 .../apps}/nautilus-trader/README.md | 4 +- .../apps}/nautilus-trader/app/.gitkeep | 0 .../apps}/nautilus-trader/metadata.json | 0 .../apps}/nautilus-trader/start.sh | 0 .../apps}/nautilus-trader/test/smoke.sh | 0 .../apps}/netbox-docker/CloudronManifest.json | 0 .../apps}/netbox-docker/Dockerfile | 0 {apps => output/apps}/netbox-docker/README.md | 4 +- .../apps}/netbox-docker/app/.gitkeep | 0 .../apps}/netbox-docker/metadata.json | 0 {apps => output/apps}/netbox-docker/start.sh | 0 .../apps}/netbox-docker/test/smoke.sh | 0 .../apps}/openblocks/CloudronManifest.json | 0 {apps => output/apps}/openblocks/Dockerfile | 0 {apps => output/apps}/openblocks/README.md | 4 +- {apps => output/apps}/openblocks/app/.gitkeep | 0 .../apps}/openblocks/metadata.json | 0 {apps => output/apps}/openblocks/start.sh | 0 .../apps}/openblocks/test/smoke.sh | 0 .../openboxes-docker/CloudronManifest.json | 0 .../apps}/openboxes-docker/Dockerfile | 0 .../apps}/openboxes-docker/README.md | 4 +- .../apps}/openboxes-docker/app/.gitkeep | 0 .../apps}/openboxes-docker/metadata.json | 0 .../apps}/openboxes-docker/start.sh | 0 .../apps}/openboxes-docker/test/smoke.sh | 0 .../apps}/openfile/CloudronManifest.json | 0 {apps => output/apps}/openfile/Dockerfile | 0 {apps => output/apps}/openfile/README.md | 4 +- {apps => output/apps}/openfile/app/.gitkeep | 0 {apps => output/apps}/openfile/metadata.json | 0 {apps => output/apps}/openfile/start.sh | 0 {apps => output/apps}/openfile/test/smoke.sh | 0 .../payroll-engine/CloudronManifest.json | 0 .../apps}/payroll-engine/Dockerfile | 0 .../apps}/payroll-engine/README.md | 4 +- .../apps}/payroll-engine/app/.gitkeep | 0 .../apps}/payroll-engine/metadata.json | 0 {apps => output/apps}/payroll-engine/start.sh | 0 .../apps}/payroll-engine/test/smoke.sh | 0 .../apps}/plmore/CloudronManifest.json | 0 {apps => output/apps}/plmore/Dockerfile | 0 {apps => output/apps}/plmore/README.md | 4 +- {apps => output/apps}/plmore/app/.gitkeep | 0 {apps => output/apps}/plmore/metadata.json | 0 {apps => output/apps}/plmore/start.sh | 0 {apps => output/apps}/plmore/test/smoke.sh | 0 .../apps}/puter/CloudronManifest.json | 0 {apps => output/apps}/puter/Dockerfile | 0 {apps => output/apps}/puter/README.md | 4 +- {apps => output/apps}/puter/app/.gitkeep | 0 {apps => output/apps}/puter/metadata.json | 0 {apps => output/apps}/puter/start.sh | 0 {apps => output/apps}/puter/test/smoke.sh | 0 .../apps}/rathole/CloudronManifest.json | 0 {apps => output/apps}/rathole/Dockerfile | 0 {apps => output/apps}/rathole/README.md | 4 +- {apps => output/apps}/rathole/app/.gitkeep | 0 {apps => output/apps}/rathole/metadata.json | 0 {apps => output/apps}/rathole/start.sh | 0 {apps => output/apps}/rathole/test/smoke.sh | 0 .../apps}/resgrid/CloudronManifest.json | 0 {apps => output/apps}/resgrid/Dockerfile | 0 {apps => output/apps}/resgrid/README.md | 4 +- {apps => output/apps}/resgrid/app/.gitkeep | 0 {apps => output/apps}/resgrid/metadata.json | 0 {apps => output/apps}/resgrid/start.sh | 0 {apps => output/apps}/resgrid/test/smoke.sh | 0 .../apps}/reviewboard/CloudronManifest.json | 0 {apps => output/apps}/reviewboard/Dockerfile | 0 {apps => output/apps}/reviewboard/README.md | 4 +- .../apps}/reviewboard/app/.gitkeep | 0 .../apps}/reviewboard/metadata.json | 0 {apps => output/apps}/reviewboard/start.sh | 0 .../apps}/reviewboard/test/smoke.sh | 0 .../apps}/rundeck/CloudronManifest.json | 0 {apps => output/apps}/rundeck/Dockerfile | 0 {apps => output/apps}/rundeck/README.md | 4 +- {apps => output/apps}/rundeck/app/.gitkeep | 0 {apps => output/apps}/rundeck/metadata.json | 0 {apps => output/apps}/rundeck/start.sh | 0 {apps => output/apps}/rundeck/test/smoke.sh | 0 .../apps}/runme/CloudronManifest.json | 0 {apps => output/apps}/runme/Dockerfile | 0 {apps => output/apps}/runme/README.md | 4 +- {apps => output/apps}/runme/app/.gitkeep | 0 {apps => output/apps}/runme/metadata.json | 0 {apps => output/apps}/runme/start.sh | 0 {apps => output/apps}/runme/test/smoke.sh | 0 .../satnogs-kaitai/CloudronManifest.json | 0 .../apps}/satnogs-kaitai/Dockerfile | 0 .../apps}/satnogs-kaitai/README.md | 4 +- .../apps}/satnogs-kaitai/app/.gitkeep | 0 .../apps}/satnogs-kaitai/metadata.json | 0 {apps => output/apps}/satnogs-kaitai/start.sh | 0 .../apps}/satnogs-kaitai/test/smoke.sh | 0 .../satnogs-webgui/CloudronManifest.json | 0 .../apps}/satnogs-webgui/Dockerfile | 0 .../apps}/satnogs-webgui/README.md | 4 +- .../apps}/satnogs-webgui/app/.gitkeep | 0 .../apps}/satnogs-webgui/metadata.json | 0 {apps => output/apps}/satnogs-webgui/start.sh | 0 .../apps}/satnogs-webgui/test/smoke.sh | 0 .../apps}/sdrangel/CloudronManifest.json | 0 {apps => output/apps}/sdrangel/Dockerfile | 0 {apps => output/apps}/sdrangel/README.md | 4 +- {apps => output/apps}/sdrangel/app/.gitkeep | 0 {apps => output/apps}/sdrangel/metadata.json | 0 {apps => output/apps}/sdrangel/start.sh | 0 {apps => output/apps}/sdrangel/test/smoke.sh | 0 .../apps}/seatunnel/CloudronManifest.json | 0 {apps => output/apps}/seatunnel/Dockerfile | 0 {apps => output/apps}/seatunnel/README.md | 4 +- {apps => output/apps}/seatunnel/app/.gitkeep | 0 {apps => output/apps}/seatunnel/metadata.json | 0 {apps => output/apps}/seatunnel/start.sh | 0 {apps => output/apps}/seatunnel/test/smoke.sh | 0 .../apps}/signoz/CloudronManifest.json | 0 {apps => output/apps}/signoz/Dockerfile | 0 {apps => output/apps}/signoz/README.md | 4 +- {apps => output/apps}/signoz/app/.gitkeep | 0 {apps => output/apps}/signoz/metadata.json | 0 {apps => output/apps}/signoz/start.sh | 0 {apps => output/apps}/signoz/test/smoke.sh | 0 .../apps}/slurm/CloudronManifest.json | 0 {apps => output/apps}/slurm/Dockerfile | 0 {apps => output/apps}/slurm/README.md | 4 +- {apps => output/apps}/slurm/app/.gitkeep | 0 {apps => output/apps}/slurm/metadata.json | 0 {apps => output/apps}/slurm/start.sh | 0 {apps => output/apps}/slurm/test/smoke.sh | 0 .../apps}/sniperphish/CloudronManifest.json | 0 {apps => output/apps}/sniperphish/Dockerfile | 0 {apps => output/apps}/sniperphish/README.md | 4 +- .../apps}/sniperphish/app/.gitkeep | 0 .../apps}/sniperphish/metadata.json | 0 {apps => output/apps}/sniperphish/start.sh | 0 .../apps}/sniperphish/test/smoke.sh | 0 .../apps}/swupdate/CloudronManifest.json | 0 {apps => output/apps}/swupdate/Dockerfile | 0 {apps => output/apps}/swupdate/README.md | 4 +- {apps => output/apps}/swupdate/app/.gitkeep | 0 {apps => output/apps}/swupdate/metadata.json | 0 {apps => output/apps}/swupdate/start.sh | 0 {apps => output/apps}/swupdate/test/smoke.sh | 0 .../apps}/tak-server/CloudronManifest.json | 0 {apps => output/apps}/tak-server/Dockerfile | 0 {apps => output/apps}/tak-server/README.md | 4 +- {apps => output/apps}/tak-server/app/.gitkeep | 0 .../apps}/tak-server/metadata.json | 0 {apps => output/apps}/tak-server/start.sh | 0 .../apps}/tak-server/test/smoke.sh | 0 .../target-goalert/CloudronManifest.json | 0 .../apps}/target-goalert/Dockerfile | 0 .../apps}/target-goalert/README.md | 4 +- .../apps}/target-goalert/app/.gitkeep | 0 .../apps}/target-goalert/metadata.json | 0 {apps => output/apps}/target-goalert/start.sh | 0 .../apps}/target-goalert/test/smoke.sh | 0 .../apps}/warp/CloudronManifest.json | 0 {apps => output/apps}/warp/Dockerfile | 0 {apps => output/apps}/warp/README.md | 4 +- {apps => output/apps}/warp/app/.gitkeep | 0 {apps => output/apps}/warp/metadata.json | 0 {apps => output/apps}/warp/start.sh | 0 {apps => output/apps}/warp/test/smoke.sh | 0 .../apps}/windmill/CloudronManifest.json | 0 {apps => output/apps}/windmill/Dockerfile | 0 {apps => output/apps}/windmill/README.md | 4 +- {apps => output/apps}/windmill/app/.gitkeep | 0 {apps => output/apps}/windmill/metadata.json | 0 {apps => output/apps}/windmill/start.sh | 0 {apps => output/apps}/windmill/test/smoke.sh | 0 .../apps}/wireflow/CloudronManifest.json | 0 {apps => output/apps}/wireflow/Dockerfile | 0 {apps => output/apps}/wireflow/README.md | 4 +- {apps => output/apps}/wireflow/app/.gitkeep | 0 {apps => output/apps}/wireflow/metadata.json | 0 {apps => output/apps}/wireflow/start.sh | 0 {apps => output/apps}/wireflow/test/smoke.sh | 0 .../apps}/wireviz-web/CloudronManifest.json | 0 {apps => output/apps}/wireviz-web/Dockerfile | 0 {apps => output/apps}/wireviz-web/README.md | 4 +- .../apps}/wireviz-web/app/.gitkeep | 0 .../apps}/wireviz-web/metadata.json | 0 {apps => output/apps}/wireviz-web/start.sh | 0 .../apps}/wireviz-web/test/smoke.sh | 0 .../docker}/ci-runner/Dockerfile | 0 {docker => output/docker}/devtools/Dockerfile | 0 .../docker}/devtools/requirements.txt | 0 {docker => output/docker}/packager/Dockerfile | 0 {docs => output/docs}/APP_STATUS.md | 0 {docs => output/docs}/CI_CD_GITEA.md | 10 ++-- output/docs/LOCAL_TESTING.md | 20 +++++++ {docs => output/docs}/PACKAGING_GUIDE.md | 36 ++++++------ {docs => output/docs}/PRIORITY_MILESTONES.md | 4 +- output/run/dev.sh | 19 +++++++ output/run/packager.sh | 19 +++++++ .../schema}/cloudron-manifest.schema.json | 0 .../scripts}/generate_status.py | 3 +- {scripts => output/scripts}/lint_repo.py | 13 +++-- {scripts => output/scripts}/new_app.py | 3 +- .../cloudron-app/CloudronManifest.json.j2 | 0 .../templates}/cloudron-app/Dockerfile.j2 | 0 .../templates}/cloudron-app/README.md.j2 | 4 +- .../templates}/cloudron-app/app/.gitkeep | 0 .../templates}/cloudron-app/metadata.json.j2 | 0 .../templates}/cloudron-app/start.sh.j2 | 0 .../templates}/cloudron-app/test/smoke.sh.j2 | 0 run/dev.sh | 8 --- run/packager.sh | 8 --- 420 files changed, 256 insertions(+), 220 deletions(-) rename STARTHERE.md => collab/STARTHERE.md (100%) create mode 100644 collab/questions/apisix-v1.md delete mode 100644 docs/LOCAL_TESTING.md rename {.gitea => output/.gitea}/workflows/ci.yml (60%) rename .gitignore => output/.gitignore (100%) rename {GEMINI => output/GEMINI}/AUDIT-SNAPSHOT1.md (100%) rename {GEMINI => output/GEMINI}/AUDIT-SNAPSHOT2.md (100%) rename {GEMINI => output/GEMINI}/FIX-1.md (100%) rename {apps => output/apps}/apache-apisix/CloudronManifest.json (100%) rename {apps => output/apps}/apache-apisix/Dockerfile (100%) rename {apps => output/apps}/apache-apisix/README.md (81%) rename {apps => output/apps}/apache-apisix/app/.gitkeep (100%) rename {apps => output/apps}/apache-apisix/metadata.json (100%) rename {apps => output/apps}/apache-apisix/start.sh (100%) rename {apps => output/apps}/apache-apisix/test/smoke.sh (100%) rename {apps => output/apps}/autobom/CloudronManifest.json (100%) rename {apps => output/apps}/autobom/Dockerfile (100%) rename {apps => output/apps}/autobom/README.md (81%) rename {apps => output/apps}/autobom/app/.gitkeep (100%) rename {apps => output/apps}/autobom/metadata.json (100%) rename {apps => output/apps}/autobom/start.sh (100%) rename {apps => output/apps}/autobom/test/smoke.sh (100%) rename {apps => output/apps}/catalog.json (100%) rename {apps => output/apps}/chirpstack/CloudronManifest.json (100%) rename {apps => output/apps}/chirpstack/Dockerfile (100%) rename {apps => output/apps}/chirpstack/README.md (81%) rename {apps => output/apps}/chirpstack/app/.gitkeep (100%) rename {apps => output/apps}/chirpstack/metadata.json (100%) rename {apps => output/apps}/chirpstack/start.sh (100%) rename {apps => output/apps}/chirpstack/test/smoke.sh (100%) rename {apps => output/apps}/consuldemocracy/CloudronManifest.json (100%) rename {apps => output/apps}/consuldemocracy/Dockerfile (100%) rename {apps => output/apps}/consuldemocracy/README.md (81%) rename {apps => output/apps}/consuldemocracy/app/.gitkeep (100%) rename {apps => output/apps}/consuldemocracy/metadata.json (100%) rename {apps => output/apps}/consuldemocracy/start.sh (100%) rename {apps => output/apps}/consuldemocracy/test/smoke.sh (100%) rename {apps => output/apps}/craig/CloudronManifest.json (100%) rename {apps => output/apps}/craig/Dockerfile (100%) rename {apps => output/apps}/craig/README.md (82%) rename {apps => output/apps}/craig/app/.gitkeep (100%) rename {apps => output/apps}/craig/metadata.json (100%) rename {apps => output/apps}/craig/start.sh (100%) rename {apps => output/apps}/craig/test/smoke.sh (100%) rename {apps => output/apps}/database-gateway/CloudronManifest.json (100%) rename {apps => output/apps}/database-gateway/Dockerfile (100%) rename {apps => output/apps}/database-gateway/README.md (81%) rename {apps => output/apps}/database-gateway/app/.gitkeep (100%) rename {apps => output/apps}/database-gateway/metadata.json (100%) rename {apps => output/apps}/database-gateway/start.sh (100%) rename {apps => output/apps}/database-gateway/test/smoke.sh (100%) rename {apps => output/apps}/datahub/CloudronManifest.json (100%) rename {apps => output/apps}/datahub/Dockerfile (100%) rename {apps => output/apps}/datahub/README.md (81%) rename {apps => output/apps}/datahub/app/.gitkeep (100%) rename {apps => output/apps}/datahub/metadata.json (100%) rename {apps => output/apps}/datahub/start.sh (100%) rename {apps => output/apps}/datahub/test/smoke.sh (100%) rename {apps => output/apps}/docassemble/CloudronManifest.json (100%) rename {apps => output/apps}/docassemble/Dockerfile (100%) rename {apps => output/apps}/docassemble/README.md (81%) rename {apps => output/apps}/docassemble/app/.gitkeep (100%) rename {apps => output/apps}/docassemble/metadata.json (100%) rename {apps => output/apps}/docassemble/start.sh (100%) rename {apps => output/apps}/docassemble/test/smoke.sh (100%) rename {apps => output/apps}/docker-webhook/CloudronManifest.json (100%) rename {apps => output/apps}/docker-webhook/Dockerfile (100%) rename {apps => output/apps}/docker-webhook/README.md (81%) rename {apps => output/apps}/docker-webhook/app/.gitkeep (100%) rename {apps => output/apps}/docker-webhook/metadata.json (100%) rename {apps => output/apps}/docker-webhook/start.sh (100%) rename {apps => output/apps}/docker-webhook/test/smoke.sh (100%) rename {apps => output/apps}/drawio/CloudronManifest.json (100%) rename {apps => output/apps}/drawio/Dockerfile (100%) rename {apps => output/apps}/drawio/README.md (81%) rename {apps => output/apps}/drawio/app/.gitkeep (100%) rename {apps => output/apps}/drawio/metadata.json (100%) rename {apps => output/apps}/drawio/start.sh (100%) rename {apps => output/apps}/drawio/test/smoke.sh (100%) rename {apps => output/apps}/easy-gate/CloudronManifest.json (100%) rename {apps => output/apps}/easy-gate/Dockerfile (100%) rename {apps => output/apps}/easy-gate/README.md (81%) rename {apps => output/apps}/easy-gate/app/.gitkeep (100%) rename {apps => output/apps}/easy-gate/metadata.json (100%) rename {apps => output/apps}/easy-gate/start.sh (100%) rename {apps => output/apps}/easy-gate/test/smoke.sh (100%) rename {apps => output/apps}/elabftw/CloudronManifest.json (100%) rename {apps => output/apps}/elabftw/Dockerfile (100%) rename {apps => output/apps}/elabftw/README.md (81%) rename {apps => output/apps}/elabftw/app/.gitkeep (100%) rename {apps => output/apps}/elabftw/metadata.json (100%) rename {apps => output/apps}/elabftw/start.sh (100%) rename {apps => output/apps}/elabftw/test/smoke.sh (100%) rename {apps => output/apps}/fleetdm-fleet/CloudronManifest.json (100%) rename {apps => output/apps}/fleetdm-fleet/Dockerfile (100%) rename {apps => output/apps}/fleetdm-fleet/README.md (81%) rename {apps => output/apps}/fleetdm-fleet/app/.gitkeep (100%) rename {apps => output/apps}/fleetdm-fleet/metadata.json (100%) rename {apps => output/apps}/fleetdm-fleet/start.sh (100%) rename {apps => output/apps}/fleetdm-fleet/test/smoke.sh (100%) rename {apps => output/apps}/fonoster/CloudronManifest.json (100%) rename {apps => output/apps}/fonoster/Dockerfile (100%) rename {apps => output/apps}/fonoster/README.md (81%) rename {apps => output/apps}/fonoster/app/.gitkeep (100%) rename {apps => output/apps}/fonoster/metadata.json (100%) rename {apps => output/apps}/fonoster/start.sh (100%) rename {apps => output/apps}/fonoster/test/smoke.sh (100%) rename {apps => output/apps}/grist/CloudronManifest.json (100%) rename {apps => output/apps}/grist/Dockerfile (100%) rename {apps => output/apps}/grist/README.md (81%) rename {apps => output/apps}/grist/app/.gitkeep (100%) rename {apps => output/apps}/grist/metadata.json (100%) rename {apps => output/apps}/grist/start.sh (100%) rename {apps => output/apps}/grist/test/smoke.sh (100%) rename {apps => output/apps}/healthchecks/CloudronManifest.json (100%) rename {apps => output/apps}/healthchecks/Dockerfile (100%) rename {apps => output/apps}/healthchecks/README.md (81%) rename {apps => output/apps}/healthchecks/app/.gitkeep (100%) rename {apps => output/apps}/healthchecks/metadata.json (100%) rename {apps => output/apps}/healthchecks/start.sh (100%) rename {apps => output/apps}/healthchecks/test/smoke.sh (100%) rename {apps => output/apps}/huginn/CloudronManifest.json (100%) rename {apps => output/apps}/huginn/Dockerfile (100%) rename {apps => output/apps}/huginn/README.md (81%) rename {apps => output/apps}/huginn/app/.gitkeep (100%) rename {apps => output/apps}/huginn/metadata.json (100%) rename {apps => output/apps}/huginn/start.sh (100%) rename {apps => output/apps}/huginn/test/smoke.sh (100%) rename {apps => output/apps}/hyperswitch/CloudronManifest.json (100%) rename {apps => output/apps}/hyperswitch/Dockerfile (100%) rename {apps => output/apps}/hyperswitch/README.md (81%) rename {apps => output/apps}/hyperswitch/app/.gitkeep (100%) rename {apps => output/apps}/hyperswitch/metadata.json (100%) rename {apps => output/apps}/hyperswitch/start.sh (100%) rename {apps => output/apps}/hyperswitch/test/smoke.sh (100%) rename {apps => output/apps}/inventree/CloudronManifest.json (100%) rename {apps => output/apps}/inventree/Dockerfile (100%) rename {apps => output/apps}/inventree/README.md (81%) rename {apps => output/apps}/inventree/app/.gitkeep (100%) rename {apps => output/apps}/inventree/metadata.json (100%) rename {apps => output/apps}/inventree/start.sh (100%) rename {apps => output/apps}/inventree/test/smoke.sh (100%) rename {apps => output/apps}/jamovi/CloudronManifest.json (100%) rename {apps => output/apps}/jamovi/Dockerfile (100%) rename {apps => output/apps}/jamovi/README.md (81%) rename {apps => output/apps}/jamovi/app/.gitkeep (100%) rename {apps => output/apps}/jamovi/metadata.json (100%) rename {apps => output/apps}/jamovi/start.sh (100%) rename {apps => output/apps}/jamovi/test/smoke.sh (100%) rename {apps => output/apps}/jenkins/CloudronManifest.json (100%) rename {apps => output/apps}/jenkins/Dockerfile (100%) rename {apps => output/apps}/jenkins/README.md (81%) rename {apps => output/apps}/jenkins/app/.gitkeep (100%) rename {apps => output/apps}/jenkins/metadata.json (100%) rename {apps => output/apps}/jenkins/start.sh (100%) rename {apps => output/apps}/jenkins/test/smoke.sh (100%) rename {apps => output/apps}/kibot/CloudronManifest.json (100%) rename {apps => output/apps}/kibot/Dockerfile (100%) rename {apps => output/apps}/kibot/README.md (81%) rename {apps => output/apps}/kibot/app/.gitkeep (100%) rename {apps => output/apps}/kibot/metadata.json (100%) rename {apps => output/apps}/kibot/start.sh (100%) rename {apps => output/apps}/kibot/test/smoke.sh (100%) rename {apps => output/apps}/killbill/CloudronManifest.json (100%) rename {apps => output/apps}/killbill/Dockerfile (100%) rename {apps => output/apps}/killbill/README.md (81%) rename {apps => output/apps}/killbill/app/.gitkeep (100%) rename {apps => output/apps}/killbill/metadata.json (100%) rename {apps => output/apps}/killbill/start.sh (100%) rename {apps => output/apps}/killbill/test/smoke.sh (100%) rename {apps => output/apps}/langfuse/CloudronManifest.json (100%) rename {apps => output/apps}/langfuse/Dockerfile (100%) rename {apps => output/apps}/langfuse/README.md (82%) rename {apps => output/apps}/langfuse/app/.gitkeep (100%) rename {apps => output/apps}/langfuse/metadata.json (100%) rename {apps => output/apps}/langfuse/start.sh (100%) rename {apps => output/apps}/langfuse/test/smoke.sh (100%) rename {apps => output/apps}/manyfold/CloudronManifest.json (100%) rename {apps => output/apps}/manyfold/Dockerfile (100%) rename {apps => output/apps}/manyfold/README.md (81%) rename {apps => output/apps}/manyfold/app/.gitkeep (100%) rename {apps => output/apps}/manyfold/metadata.json (100%) rename {apps => output/apps}/manyfold/start.sh (100%) rename {apps => output/apps}/manyfold/test/smoke.sh (100%) rename {apps => output/apps}/mender-server/CloudronManifest.json (100%) rename {apps => output/apps}/mender-server/Dockerfile (100%) rename {apps => output/apps}/mender-server/README.md (81%) rename {apps => output/apps}/mender-server/app/.gitkeep (100%) rename {apps => output/apps}/mender-server/metadata.json (100%) rename {apps => output/apps}/mender-server/start.sh (100%) rename {apps => output/apps}/mender-server/test/smoke.sh (100%) rename {apps => output/apps}/midday/CloudronManifest.json (100%) rename {apps => output/apps}/midday/Dockerfile (100%) rename {apps => output/apps}/midday/README.md (81%) rename {apps => output/apps}/midday/app/.gitkeep (100%) rename {apps => output/apps}/midday/metadata.json (100%) rename {apps => output/apps}/midday/start.sh (100%) rename {apps => output/apps}/midday/test/smoke.sh (100%) rename {apps => output/apps}/mirlo/CloudronManifest.json (100%) rename {apps => output/apps}/mirlo/Dockerfile (100%) rename {apps => output/apps}/mirlo/README.md (81%) rename {apps => output/apps}/mirlo/app/.gitkeep (100%) rename {apps => output/apps}/mirlo/metadata.json (100%) rename {apps => output/apps}/mirlo/start.sh (100%) rename {apps => output/apps}/mirlo/test/smoke.sh (100%) rename {apps => output/apps}/nautilus-trader/CloudronManifest.json (100%) rename {apps => output/apps}/nautilus-trader/Dockerfile (100%) rename {apps => output/apps}/nautilus-trader/README.md (81%) rename {apps => output/apps}/nautilus-trader/app/.gitkeep (100%) rename {apps => output/apps}/nautilus-trader/metadata.json (100%) rename {apps => output/apps}/nautilus-trader/start.sh (100%) rename {apps => output/apps}/nautilus-trader/test/smoke.sh (100%) rename {apps => output/apps}/netbox-docker/CloudronManifest.json (100%) rename {apps => output/apps}/netbox-docker/Dockerfile (100%) rename {apps => output/apps}/netbox-docker/README.md (81%) rename {apps => output/apps}/netbox-docker/app/.gitkeep (100%) rename {apps => output/apps}/netbox-docker/metadata.json (100%) rename {apps => output/apps}/netbox-docker/start.sh (100%) rename {apps => output/apps}/netbox-docker/test/smoke.sh (100%) rename {apps => output/apps}/openblocks/CloudronManifest.json (100%) rename {apps => output/apps}/openblocks/Dockerfile (100%) rename {apps => output/apps}/openblocks/README.md (81%) rename {apps => output/apps}/openblocks/app/.gitkeep (100%) rename {apps => output/apps}/openblocks/metadata.json (100%) rename {apps => output/apps}/openblocks/start.sh (100%) rename {apps => output/apps}/openblocks/test/smoke.sh (100%) rename {apps => output/apps}/openboxes-docker/CloudronManifest.json (100%) rename {apps => output/apps}/openboxes-docker/Dockerfile (100%) rename {apps => output/apps}/openboxes-docker/README.md (81%) rename {apps => output/apps}/openboxes-docker/app/.gitkeep (100%) rename {apps => output/apps}/openboxes-docker/metadata.json (100%) rename {apps => output/apps}/openboxes-docker/start.sh (100%) rename {apps => output/apps}/openboxes-docker/test/smoke.sh (100%) rename {apps => output/apps}/openfile/CloudronManifest.json (100%) rename {apps => output/apps}/openfile/Dockerfile (100%) rename {apps => output/apps}/openfile/README.md (81%) rename {apps => output/apps}/openfile/app/.gitkeep (100%) rename {apps => output/apps}/openfile/metadata.json (100%) rename {apps => output/apps}/openfile/start.sh (100%) rename {apps => output/apps}/openfile/test/smoke.sh (100%) rename {apps => output/apps}/payroll-engine/CloudronManifest.json (100%) rename {apps => output/apps}/payroll-engine/Dockerfile (100%) rename {apps => output/apps}/payroll-engine/README.md (81%) rename {apps => output/apps}/payroll-engine/app/.gitkeep (100%) rename {apps => output/apps}/payroll-engine/metadata.json (100%) rename {apps => output/apps}/payroll-engine/start.sh (100%) rename {apps => output/apps}/payroll-engine/test/smoke.sh (100%) rename {apps => output/apps}/plmore/CloudronManifest.json (100%) rename {apps => output/apps}/plmore/Dockerfile (100%) rename {apps => output/apps}/plmore/README.md (81%) rename {apps => output/apps}/plmore/app/.gitkeep (100%) rename {apps => output/apps}/plmore/metadata.json (100%) rename {apps => output/apps}/plmore/start.sh (100%) rename {apps => output/apps}/plmore/test/smoke.sh (100%) rename {apps => output/apps}/puter/CloudronManifest.json (100%) rename {apps => output/apps}/puter/Dockerfile (100%) rename {apps => output/apps}/puter/README.md (81%) rename {apps => output/apps}/puter/app/.gitkeep (100%) rename {apps => output/apps}/puter/metadata.json (100%) rename {apps => output/apps}/puter/start.sh (100%) rename {apps => output/apps}/puter/test/smoke.sh (100%) rename {apps => output/apps}/rathole/CloudronManifest.json (100%) rename {apps => output/apps}/rathole/Dockerfile (100%) rename {apps => output/apps}/rathole/README.md (81%) rename {apps => output/apps}/rathole/app/.gitkeep (100%) rename {apps => output/apps}/rathole/metadata.json (100%) rename {apps => output/apps}/rathole/start.sh (100%) rename {apps => output/apps}/rathole/test/smoke.sh (100%) rename {apps => output/apps}/resgrid/CloudronManifest.json (100%) rename {apps => output/apps}/resgrid/Dockerfile (100%) rename {apps => output/apps}/resgrid/README.md (81%) rename {apps => output/apps}/resgrid/app/.gitkeep (100%) rename {apps => output/apps}/resgrid/metadata.json (100%) rename {apps => output/apps}/resgrid/start.sh (100%) rename {apps => output/apps}/resgrid/test/smoke.sh (100%) rename {apps => output/apps}/reviewboard/CloudronManifest.json (100%) rename {apps => output/apps}/reviewboard/Dockerfile (100%) rename {apps => output/apps}/reviewboard/README.md (81%) rename {apps => output/apps}/reviewboard/app/.gitkeep (100%) rename {apps => output/apps}/reviewboard/metadata.json (100%) rename {apps => output/apps}/reviewboard/start.sh (100%) rename {apps => output/apps}/reviewboard/test/smoke.sh (100%) rename {apps => output/apps}/rundeck/CloudronManifest.json (100%) rename {apps => output/apps}/rundeck/Dockerfile (100%) rename {apps => output/apps}/rundeck/README.md (81%) rename {apps => output/apps}/rundeck/app/.gitkeep (100%) rename {apps => output/apps}/rundeck/metadata.json (100%) rename {apps => output/apps}/rundeck/start.sh (100%) rename {apps => output/apps}/rundeck/test/smoke.sh (100%) rename {apps => output/apps}/runme/CloudronManifest.json (100%) rename {apps => output/apps}/runme/Dockerfile (100%) rename {apps => output/apps}/runme/README.md (81%) rename {apps => output/apps}/runme/app/.gitkeep (100%) rename {apps => output/apps}/runme/metadata.json (100%) rename {apps => output/apps}/runme/start.sh (100%) rename {apps => output/apps}/runme/test/smoke.sh (100%) rename {apps => output/apps}/satnogs-kaitai/CloudronManifest.json (100%) rename {apps => output/apps}/satnogs-kaitai/Dockerfile (100%) rename {apps => output/apps}/satnogs-kaitai/README.md (81%) rename {apps => output/apps}/satnogs-kaitai/app/.gitkeep (100%) rename {apps => output/apps}/satnogs-kaitai/metadata.json (100%) rename {apps => output/apps}/satnogs-kaitai/start.sh (100%) rename {apps => output/apps}/satnogs-kaitai/test/smoke.sh (100%) rename {apps => output/apps}/satnogs-webgui/CloudronManifest.json (100%) rename {apps => output/apps}/satnogs-webgui/Dockerfile (100%) rename {apps => output/apps}/satnogs-webgui/README.md (81%) rename {apps => output/apps}/satnogs-webgui/app/.gitkeep (100%) rename {apps => output/apps}/satnogs-webgui/metadata.json (100%) rename {apps => output/apps}/satnogs-webgui/start.sh (100%) rename {apps => output/apps}/satnogs-webgui/test/smoke.sh (100%) rename {apps => output/apps}/sdrangel/CloudronManifest.json (100%) rename {apps => output/apps}/sdrangel/Dockerfile (100%) rename {apps => output/apps}/sdrangel/README.md (81%) rename {apps => output/apps}/sdrangel/app/.gitkeep (100%) rename {apps => output/apps}/sdrangel/metadata.json (100%) rename {apps => output/apps}/sdrangel/start.sh (100%) rename {apps => output/apps}/sdrangel/test/smoke.sh (100%) rename {apps => output/apps}/seatunnel/CloudronManifest.json (100%) rename {apps => output/apps}/seatunnel/Dockerfile (100%) rename {apps => output/apps}/seatunnel/README.md (81%) rename {apps => output/apps}/seatunnel/app/.gitkeep (100%) rename {apps => output/apps}/seatunnel/metadata.json (100%) rename {apps => output/apps}/seatunnel/start.sh (100%) rename {apps => output/apps}/seatunnel/test/smoke.sh (100%) rename {apps => output/apps}/signoz/CloudronManifest.json (100%) rename {apps => output/apps}/signoz/Dockerfile (100%) rename {apps => output/apps}/signoz/README.md (81%) rename {apps => output/apps}/signoz/app/.gitkeep (100%) rename {apps => output/apps}/signoz/metadata.json (100%) rename {apps => output/apps}/signoz/start.sh (100%) rename {apps => output/apps}/signoz/test/smoke.sh (100%) rename {apps => output/apps}/slurm/CloudronManifest.json (100%) rename {apps => output/apps}/slurm/Dockerfile (100%) rename {apps => output/apps}/slurm/README.md (81%) rename {apps => output/apps}/slurm/app/.gitkeep (100%) rename {apps => output/apps}/slurm/metadata.json (100%) rename {apps => output/apps}/slurm/start.sh (100%) rename {apps => output/apps}/slurm/test/smoke.sh (100%) rename {apps => output/apps}/sniperphish/CloudronManifest.json (100%) rename {apps => output/apps}/sniperphish/Dockerfile (100%) rename {apps => output/apps}/sniperphish/README.md (81%) rename {apps => output/apps}/sniperphish/app/.gitkeep (100%) rename {apps => output/apps}/sniperphish/metadata.json (100%) rename {apps => output/apps}/sniperphish/start.sh (100%) rename {apps => output/apps}/sniperphish/test/smoke.sh (100%) rename {apps => output/apps}/swupdate/CloudronManifest.json (100%) rename {apps => output/apps}/swupdate/Dockerfile (100%) rename {apps => output/apps}/swupdate/README.md (81%) rename {apps => output/apps}/swupdate/app/.gitkeep (100%) rename {apps => output/apps}/swupdate/metadata.json (100%) rename {apps => output/apps}/swupdate/start.sh (100%) rename {apps => output/apps}/swupdate/test/smoke.sh (100%) rename {apps => output/apps}/tak-server/CloudronManifest.json (100%) rename {apps => output/apps}/tak-server/Dockerfile (100%) rename {apps => output/apps}/tak-server/README.md (81%) rename {apps => output/apps}/tak-server/app/.gitkeep (100%) rename {apps => output/apps}/tak-server/metadata.json (100%) rename {apps => output/apps}/tak-server/start.sh (100%) rename {apps => output/apps}/tak-server/test/smoke.sh (100%) rename {apps => output/apps}/target-goalert/CloudronManifest.json (100%) rename {apps => output/apps}/target-goalert/Dockerfile (100%) rename {apps => output/apps}/target-goalert/README.md (81%) rename {apps => output/apps}/target-goalert/app/.gitkeep (100%) rename {apps => output/apps}/target-goalert/metadata.json (100%) rename {apps => output/apps}/target-goalert/start.sh (100%) rename {apps => output/apps}/target-goalert/test/smoke.sh (100%) rename {apps => output/apps}/warp/CloudronManifest.json (100%) rename {apps => output/apps}/warp/Dockerfile (100%) rename {apps => output/apps}/warp/README.md (81%) rename {apps => output/apps}/warp/app/.gitkeep (100%) rename {apps => output/apps}/warp/metadata.json (100%) rename {apps => output/apps}/warp/start.sh (100%) rename {apps => output/apps}/warp/test/smoke.sh (100%) rename {apps => output/apps}/windmill/CloudronManifest.json (100%) rename {apps => output/apps}/windmill/Dockerfile (100%) rename {apps => output/apps}/windmill/README.md (81%) rename {apps => output/apps}/windmill/app/.gitkeep (100%) rename {apps => output/apps}/windmill/metadata.json (100%) rename {apps => output/apps}/windmill/start.sh (100%) rename {apps => output/apps}/windmill/test/smoke.sh (100%) rename {apps => output/apps}/wireflow/CloudronManifest.json (100%) rename {apps => output/apps}/wireflow/Dockerfile (100%) rename {apps => output/apps}/wireflow/README.md (81%) rename {apps => output/apps}/wireflow/app/.gitkeep (100%) rename {apps => output/apps}/wireflow/metadata.json (100%) rename {apps => output/apps}/wireflow/start.sh (100%) rename {apps => output/apps}/wireflow/test/smoke.sh (100%) rename {apps => output/apps}/wireviz-web/CloudronManifest.json (100%) rename {apps => output/apps}/wireviz-web/Dockerfile (100%) rename {apps => output/apps}/wireviz-web/README.md (81%) rename {apps => output/apps}/wireviz-web/app/.gitkeep (100%) rename {apps => output/apps}/wireviz-web/metadata.json (100%) rename {apps => output/apps}/wireviz-web/start.sh (100%) rename {apps => output/apps}/wireviz-web/test/smoke.sh (100%) rename {docker => output/docker}/ci-runner/Dockerfile (100%) rename {docker => output/docker}/devtools/Dockerfile (100%) rename {docker => output/docker}/devtools/requirements.txt (100%) rename {docker => output/docker}/packager/Dockerfile (100%) rename {docs => output/docs}/APP_STATUS.md (100%) rename {docs => output/docs}/CI_CD_GITEA.md (68%) create mode 100644 output/docs/LOCAL_TESTING.md rename {docs => output/docs}/PACKAGING_GUIDE.md (65%) rename {docs => output/docs}/PRIORITY_MILESTONES.md (92%) create mode 100755 output/run/dev.sh create mode 100755 output/run/packager.sh rename {schema => output/schema}/cloudron-manifest.schema.json (100%) rename {scripts => output/scripts}/generate_status.py (96%) rename {scripts => output/scripts}/lint_repo.py (94%) rename {scripts => output/scripts}/new_app.py (96%) rename {templates => output/templates}/cloudron-app/CloudronManifest.json.j2 (100%) rename {templates => output/templates}/cloudron-app/Dockerfile.j2 (100%) rename {templates => output/templates}/cloudron-app/README.md.j2 (80%) rename {templates => output/templates}/cloudron-app/app/.gitkeep (100%) rename {templates => output/templates}/cloudron-app/metadata.json.j2 (100%) rename {templates => output/templates}/cloudron-app/start.sh.j2 (100%) rename {templates => output/templates}/cloudron-app/test/smoke.sh.j2 (100%) delete mode 100755 run/dev.sh delete mode 100755 run/packager.sh diff --git a/AGENTS.md b/AGENTS.md index a8d9237..55c992f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -3,32 +3,33 @@ ## Non-negotiable rules - Host commands are limited to `git`, `docker`, and `curl`. Everything else runs inside the provided wrapper scripts. -- Use `./run/dev.sh` for all development automation (scaffolding, linting, status updates). -- Use `./run/packager.sh` for packaging tasks that require the Cloudron CLI. +- Use `./output/run/dev.sh` for all development automation (scaffolding, linting, status updates). +- Use `./output/run/packager.sh` for packaging tasks that require the Cloudron CLI. - Containers mount the repo at `/workspace`; do not write outside it. +- Keep collaboration artifacts under `collab/` and agent-owned generated outputs under `output/`; treat these as the only top-level workspaces for coordination versus deliverables. ## Images -- `knel/cloudron-devtools` – built automatically by `./run/dev.sh`; contains Python tooling. -- `knel/cloudron-packager` – built automatically by `./run/packager.sh`; contains the Cloudron CLI. +- `knel/cloudron-devtools` – built automatically by `./output/run/dev.sh`; contains Python tooling. +- `knel/cloudron-packager` – built automatically by `./output/run/packager.sh`; contains the Cloudron CLI. ## Common workflows ```bash # Generate/refresh a scaffold -./run/dev.sh python scripts/new_app.py --slug apache-apisix +./output/run/dev.sh python output/scripts/new_app.py --slug apache-apisix # Regenerate the full catalog (overwrites existing scaffolds) -./run/dev.sh python scripts/new_app.py --force +./output/run/dev.sh python output/scripts/new_app.py --force # Lint an app (fails on TODO placeholders) -./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict +./output/run/dev.sh python output/scripts/lint_repo.py --slug apache-apisix --strict -# Refresh docs/APP_STATUS.md without changing the timestamp -./run/dev.sh python scripts/generate_status.py --preserve-timestamp +# Refresh output/docs/APP_STATUS.md without changing the timestamp +./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp # Open the Cloudron packaging shell (add BUILD=1 to rebuild the image first) -./run/packager.sh +./output/run/packager.sh ``` ## Notes diff --git a/README.md b/README.md index 3f3f29f..1150b54 100644 --- a/README.md +++ b/README.md @@ -2,52 +2,53 @@ This repository scaffolds Cloudron packages for Known Element's portfolio. It provides: -- A reusable application template (`templates/cloudron-app`) matching Cloudron packaging conventions. -- Automation helpers in `scripts/` to instantiate per-app scaffolds and run builds inside a dedicated Docker container. -- A curated catalog (`apps/catalog.json`) that maps Known Element issue IDs to upstream projects. -- Documentation under `docs/` to guide packaging, testing, and release workflows. +- A reusable application template (`output/templates/cloudron-app`) matching Cloudron packaging conventions. +- Automation helpers in `output/scripts/` to instantiate per-app scaffolds and run builds inside a dedicated Docker container. +- A curated catalog (`output/apps/catalog.json`) that maps Known Element issue IDs to upstream projects. +- Documentation under `output/docs/` to guide packaging, testing, and release workflows. ## Quick start ```bash # Build or refresh the devtools image (first run builds automatically) -./run/dev.sh python --version +./output/run/dev.sh python --version # Generate or refresh a single app scaffold -./run/dev.sh python scripts/new_app.py --slug apache-apisix +./output/run/dev.sh python output/scripts/new_app.py --slug apache-apisix # Regenerate every scaffold (overwrites existing directories) -./run/dev.sh python scripts/new_app.py --force +./output/run/dev.sh python output/scripts/new_app.py --force # Lint an app and fail on placeholders -./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict +./output/run/dev.sh python output/scripts/lint_repo.py --slug apache-apisix --strict # Update the status dashboard -./run/dev.sh python scripts/generate_status.py --preserve-timestamp +./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp ``` ### Packaging shell ```bash # Build the Cloudron packager image (run when Dockerfile changes) -BUILD=1 ./run/packager.sh +BUILD=1 ./output/run/packager.sh # Launch an interactive Cloudron packaging shell -./run/packager.sh +./output/run/packager.sh ``` -All other development tasks should also use `./run/dev.sh` (pass the desired command after the script). The wrapper will build the devtools image if needed and ensure every command executes inside Docker. +All other development tasks should also use `./output/run/dev.sh` (pass the desired command after the script). The wrapper will build the devtools image if needed and ensure every command executes inside Docker. ## Repository layout -- `apps/` – generated app scaffolds and metadata -- `docs/` – playbooks and architecture notes -- `docs/CI_CD_GITEA.md` – instructions for running CI/CD and publishing images via the Gitea instance -- `docker/devtools/` – Docker image that runs scaffolding, linting, and status tooling -- `docker/packager/` – Docker image for Cloudron packaging workflows -- `scripts/` – helper scripts (scaffolding, tooling entrypoints) -- `templates/` – base Cloudron app template +- `collab/` – shared workspace for operator/agent collaboration (questions, proposals, plans). +- `output/apps/` – generated Cloudron app scaffolds and metadata. +- `output/docs/` – playbooks, architecture notes, and status dashboards. +- `output/docker/devtools/` – Docker image that runs scaffolding, linting, and status tooling. +- `output/docker/packager/` – Docker image for Cloudron packaging workflows. +- `output/run/` – wrapper scripts for devtools and packager containers. +- `output/scripts/` – helper scripts (scaffolding, tooling entrypoints). +- `output/templates/` – base Cloudron app template. ## Application catalog @@ -118,24 +119,24 @@ Run quality checks via the devtools wrapper: ```bash # Fail if placeholders remain in the target manifest/start script -./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict +./output/run/dev.sh python output/scripts/lint_repo.py --slug apache-apisix --strict -# Refresh docs/APP_STATUS.md without changing the existing timestamp -./run/dev.sh python scripts/generate_status.py --preserve-timestamp +# Refresh output/docs/APP_STATUS.md without changing the existing timestamp +./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp ``` -Use `./run/packager.sh` whenever you need the Cloudron CLI to build, install, or push packages—it drops you into the dedicated packaging container. +Use `./output/run/packager.sh` whenever you need the Cloudron CLI to build, install, or push packages—it drops you into the dedicated packaging container. ## CI/CD The workflow `.gitea/workflows/ci.yml` mirrors the same commands by invoking the devtools container inside the runner. To reproduce the pipeline locally, run: ```bash -./run/dev.sh python scripts/lint_repo.py --strict --slug apache-apisix -./run/dev.sh python scripts/generate_status.py --preserve-timestamp -BUILD=1 ./run/packager.sh # optional: rebuild packager image before smoke tests +./output/run/dev.sh python output/scripts/lint_repo.py --strict --slug apache-apisix +./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp +BUILD=1 ./output/run/packager.sh # optional: rebuild packager image before smoke tests ``` Once a Gitea Actions runner is available, enable the workflow and it will build `knel/cloudron-devtools`/`knel/cloudron-ci` automatically. -Refer to `docs/PACKAGING_GUIDE.md` and `AGENTS.md` for detailed operating procedures. +Refer to `output/docs/PACKAGING_GUIDE.md` and `AGENTS.md` for detailed operating procedures. diff --git a/STARTHERE.md b/collab/STARTHERE.md similarity index 100% rename from STARTHERE.md rename to collab/STARTHERE.md diff --git a/collab/questions/apisix-v1.md b/collab/questions/apisix-v1.md new file mode 100644 index 0000000..a3559c6 --- /dev/null +++ b/collab/questions/apisix-v1.md @@ -0,0 +1,7 @@ +# APISIX Packaging – Clarifying Questions + +1. Which upstream release/tag of Apache APISIX should we target for this first Cloudron package? +2. Are there existing Cloudron add-ons (e.g., PostgreSQL, Redis, MySQL, etc.) that you want us to prefer or avoid for APISIX, given its components (dashboard, etcd, control plane)? +3. Do you expect the initial package to ship with the APISIX Dashboard enabled, or should we scope it to the core gateway only? +4. Are there organization-specific runtime constraints (CPU/memory limits, required domains/subpaths, TLS expectations) that we need to bake into the manifest from the start? +5. Should we integrate any Known Element branding or default configuration (e.g., custom log formats, auth plugins) as part of the base package, or keep it stock upstream behavior? diff --git a/docs/LOCAL_TESTING.md b/docs/LOCAL_TESTING.md deleted file mode 100644 index 68aaf84..0000000 --- a/docs/LOCAL_TESTING.md +++ /dev/null @@ -1,20 +0,0 @@ -# Local Test Harness - -All verification runs through the wrapper scripts under `run/`, ensuring every command executes in Docker. - -## Devtools checks - -Use `./run/dev.sh` for linting and documentation updates: - -```bash -./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict -./run/dev.sh python scripts/generate_status.py --preserve-timestamp -``` - -## Packaging shell - -Invoke `./run/packager.sh` (optionally with `BUILD=1`) when you need the Cloudron CLI to build, install, or push packages. - -## CI parity - -The Gitea workflow calls the same commands via the devtools image. To mimic it locally, run the lint/status commands above followed by any smoke tests inside the packager shell. diff --git a/.gitea/workflows/ci.yml b/output/.gitea/workflows/ci.yml similarity index 60% rename from .gitea/workflows/ci.yml rename to output/.gitea/workflows/ci.yml index 4870322..8911d2d 100644 --- a/.gitea/workflows/ci.yml +++ b/output/.gitea/workflows/ci.yml @@ -11,10 +11,10 @@ jobs: uses: https://gitea.com/actions/checkout@v4 - name: Build devtools image if needed - run: ./run/dev.sh python --version + run: ./output/run/dev.sh python --version - name: Lint repository (strict mode) - run: ./run/dev.sh python scripts/lint_repo.py --strict + run: ./output/run/dev.sh python output/scripts/lint_repo.py --strict - name: Regenerate status dashboard - run: ./run/dev.sh python scripts/generate_status.py --preserve-timestamp + run: ./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp diff --git a/.gitignore b/output/.gitignore similarity index 100% rename from .gitignore rename to output/.gitignore diff --git a/GEMINI/AUDIT-SNAPSHOT1.md b/output/GEMINI/AUDIT-SNAPSHOT1.md similarity index 100% rename from GEMINI/AUDIT-SNAPSHOT1.md rename to output/GEMINI/AUDIT-SNAPSHOT1.md diff --git a/GEMINI/AUDIT-SNAPSHOT2.md b/output/GEMINI/AUDIT-SNAPSHOT2.md similarity index 100% rename from GEMINI/AUDIT-SNAPSHOT2.md rename to output/GEMINI/AUDIT-SNAPSHOT2.md diff --git a/GEMINI/FIX-1.md b/output/GEMINI/FIX-1.md similarity index 100% rename from GEMINI/FIX-1.md rename to output/GEMINI/FIX-1.md diff --git a/apps/apache-apisix/CloudronManifest.json b/output/apps/apache-apisix/CloudronManifest.json similarity index 100% rename from apps/apache-apisix/CloudronManifest.json rename to output/apps/apache-apisix/CloudronManifest.json diff --git a/apps/apache-apisix/Dockerfile b/output/apps/apache-apisix/Dockerfile similarity index 100% rename from apps/apache-apisix/Dockerfile rename to output/apps/apache-apisix/Dockerfile diff --git a/apps/apache-apisix/README.md b/output/apps/apache-apisix/README.md similarity index 81% rename from apps/apache-apisix/README.md rename to output/apps/apache-apisix/README.md index f47e797..c006cef 100644 --- a/apps/apache-apisix/README.md +++ b/output/apps/apache-apisix/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/apache-apisix/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/apache-apisix/` as work progresses. diff --git a/apps/apache-apisix/app/.gitkeep b/output/apps/apache-apisix/app/.gitkeep similarity index 100% rename from apps/apache-apisix/app/.gitkeep rename to output/apps/apache-apisix/app/.gitkeep diff --git a/apps/apache-apisix/metadata.json b/output/apps/apache-apisix/metadata.json similarity index 100% rename from apps/apache-apisix/metadata.json rename to output/apps/apache-apisix/metadata.json diff --git a/apps/apache-apisix/start.sh b/output/apps/apache-apisix/start.sh similarity index 100% rename from apps/apache-apisix/start.sh rename to output/apps/apache-apisix/start.sh diff --git a/apps/apache-apisix/test/smoke.sh b/output/apps/apache-apisix/test/smoke.sh similarity index 100% rename from apps/apache-apisix/test/smoke.sh rename to output/apps/apache-apisix/test/smoke.sh diff --git a/apps/autobom/CloudronManifest.json b/output/apps/autobom/CloudronManifest.json similarity index 100% rename from apps/autobom/CloudronManifest.json rename to output/apps/autobom/CloudronManifest.json diff --git a/apps/autobom/Dockerfile b/output/apps/autobom/Dockerfile similarity index 100% rename from apps/autobom/Dockerfile rename to output/apps/autobom/Dockerfile diff --git a/apps/autobom/README.md b/output/apps/autobom/README.md similarity index 81% rename from apps/autobom/README.md rename to output/apps/autobom/README.md index 22053bc..9151e46 100644 --- a/apps/autobom/README.md +++ b/output/apps/autobom/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/autobom/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/autobom/` as work progresses. diff --git a/apps/autobom/app/.gitkeep b/output/apps/autobom/app/.gitkeep similarity index 100% rename from apps/autobom/app/.gitkeep rename to output/apps/autobom/app/.gitkeep diff --git a/apps/autobom/metadata.json b/output/apps/autobom/metadata.json similarity index 100% rename from apps/autobom/metadata.json rename to output/apps/autobom/metadata.json diff --git a/apps/autobom/start.sh b/output/apps/autobom/start.sh similarity index 100% rename from apps/autobom/start.sh rename to output/apps/autobom/start.sh diff --git a/apps/autobom/test/smoke.sh b/output/apps/autobom/test/smoke.sh similarity index 100% rename from apps/autobom/test/smoke.sh rename to output/apps/autobom/test/smoke.sh diff --git a/apps/catalog.json b/output/apps/catalog.json similarity index 100% rename from apps/catalog.json rename to output/apps/catalog.json diff --git a/apps/chirpstack/CloudronManifest.json b/output/apps/chirpstack/CloudronManifest.json similarity index 100% rename from apps/chirpstack/CloudronManifest.json rename to output/apps/chirpstack/CloudronManifest.json diff --git a/apps/chirpstack/Dockerfile b/output/apps/chirpstack/Dockerfile similarity index 100% rename from apps/chirpstack/Dockerfile rename to output/apps/chirpstack/Dockerfile diff --git a/apps/chirpstack/README.md b/output/apps/chirpstack/README.md similarity index 81% rename from apps/chirpstack/README.md rename to output/apps/chirpstack/README.md index f0e8248..ccde4e5 100644 --- a/apps/chirpstack/README.md +++ b/output/apps/chirpstack/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/chirpstack/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/chirpstack/` as work progresses. diff --git a/apps/chirpstack/app/.gitkeep b/output/apps/chirpstack/app/.gitkeep similarity index 100% rename from apps/chirpstack/app/.gitkeep rename to output/apps/chirpstack/app/.gitkeep diff --git a/apps/chirpstack/metadata.json b/output/apps/chirpstack/metadata.json similarity index 100% rename from apps/chirpstack/metadata.json rename to output/apps/chirpstack/metadata.json diff --git a/apps/chirpstack/start.sh b/output/apps/chirpstack/start.sh similarity index 100% rename from apps/chirpstack/start.sh rename to output/apps/chirpstack/start.sh diff --git a/apps/chirpstack/test/smoke.sh b/output/apps/chirpstack/test/smoke.sh similarity index 100% rename from apps/chirpstack/test/smoke.sh rename to output/apps/chirpstack/test/smoke.sh diff --git a/apps/consuldemocracy/CloudronManifest.json b/output/apps/consuldemocracy/CloudronManifest.json similarity index 100% rename from apps/consuldemocracy/CloudronManifest.json rename to output/apps/consuldemocracy/CloudronManifest.json diff --git a/apps/consuldemocracy/Dockerfile b/output/apps/consuldemocracy/Dockerfile similarity index 100% rename from apps/consuldemocracy/Dockerfile rename to output/apps/consuldemocracy/Dockerfile diff --git a/apps/consuldemocracy/README.md b/output/apps/consuldemocracy/README.md similarity index 81% rename from apps/consuldemocracy/README.md rename to output/apps/consuldemocracy/README.md index 98ec019..c72b57a 100644 --- a/apps/consuldemocracy/README.md +++ b/output/apps/consuldemocracy/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/consuldemocracy/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/consuldemocracy/` as work progresses. diff --git a/apps/consuldemocracy/app/.gitkeep b/output/apps/consuldemocracy/app/.gitkeep similarity index 100% rename from apps/consuldemocracy/app/.gitkeep rename to output/apps/consuldemocracy/app/.gitkeep diff --git a/apps/consuldemocracy/metadata.json b/output/apps/consuldemocracy/metadata.json similarity index 100% rename from apps/consuldemocracy/metadata.json rename to output/apps/consuldemocracy/metadata.json diff --git a/apps/consuldemocracy/start.sh b/output/apps/consuldemocracy/start.sh similarity index 100% rename from apps/consuldemocracy/start.sh rename to output/apps/consuldemocracy/start.sh diff --git a/apps/consuldemocracy/test/smoke.sh b/output/apps/consuldemocracy/test/smoke.sh similarity index 100% rename from apps/consuldemocracy/test/smoke.sh rename to output/apps/consuldemocracy/test/smoke.sh diff --git a/apps/craig/CloudronManifest.json b/output/apps/craig/CloudronManifest.json similarity index 100% rename from apps/craig/CloudronManifest.json rename to output/apps/craig/CloudronManifest.json diff --git a/apps/craig/Dockerfile b/output/apps/craig/Dockerfile similarity index 100% rename from apps/craig/Dockerfile rename to output/apps/craig/Dockerfile diff --git a/apps/craig/README.md b/output/apps/craig/README.md similarity index 82% rename from apps/craig/README.md rename to output/apps/craig/README.md index 5cb36c5..40056e7 100644 --- a/apps/craig/README.md +++ b/output/apps/craig/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/craig/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/craig/` as work progresses. diff --git a/apps/craig/app/.gitkeep b/output/apps/craig/app/.gitkeep similarity index 100% rename from apps/craig/app/.gitkeep rename to output/apps/craig/app/.gitkeep diff --git a/apps/craig/metadata.json b/output/apps/craig/metadata.json similarity index 100% rename from apps/craig/metadata.json rename to output/apps/craig/metadata.json diff --git a/apps/craig/start.sh b/output/apps/craig/start.sh similarity index 100% rename from apps/craig/start.sh rename to output/apps/craig/start.sh diff --git a/apps/craig/test/smoke.sh b/output/apps/craig/test/smoke.sh similarity index 100% rename from apps/craig/test/smoke.sh rename to output/apps/craig/test/smoke.sh diff --git a/apps/database-gateway/CloudronManifest.json b/output/apps/database-gateway/CloudronManifest.json similarity index 100% rename from apps/database-gateway/CloudronManifest.json rename to output/apps/database-gateway/CloudronManifest.json diff --git a/apps/database-gateway/Dockerfile b/output/apps/database-gateway/Dockerfile similarity index 100% rename from apps/database-gateway/Dockerfile rename to output/apps/database-gateway/Dockerfile diff --git a/apps/database-gateway/README.md b/output/apps/database-gateway/README.md similarity index 81% rename from apps/database-gateway/README.md rename to output/apps/database-gateway/README.md index 71df717..574c158 100644 --- a/apps/database-gateway/README.md +++ b/output/apps/database-gateway/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/database-gateway/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/database-gateway/` as work progresses. diff --git a/apps/database-gateway/app/.gitkeep b/output/apps/database-gateway/app/.gitkeep similarity index 100% rename from apps/database-gateway/app/.gitkeep rename to output/apps/database-gateway/app/.gitkeep diff --git a/apps/database-gateway/metadata.json b/output/apps/database-gateway/metadata.json similarity index 100% rename from apps/database-gateway/metadata.json rename to output/apps/database-gateway/metadata.json diff --git a/apps/database-gateway/start.sh b/output/apps/database-gateway/start.sh similarity index 100% rename from apps/database-gateway/start.sh rename to output/apps/database-gateway/start.sh diff --git a/apps/database-gateway/test/smoke.sh b/output/apps/database-gateway/test/smoke.sh similarity index 100% rename from apps/database-gateway/test/smoke.sh rename to output/apps/database-gateway/test/smoke.sh diff --git a/apps/datahub/CloudronManifest.json b/output/apps/datahub/CloudronManifest.json similarity index 100% rename from apps/datahub/CloudronManifest.json rename to output/apps/datahub/CloudronManifest.json diff --git a/apps/datahub/Dockerfile b/output/apps/datahub/Dockerfile similarity index 100% rename from apps/datahub/Dockerfile rename to output/apps/datahub/Dockerfile diff --git a/apps/datahub/README.md b/output/apps/datahub/README.md similarity index 81% rename from apps/datahub/README.md rename to output/apps/datahub/README.md index 86dac7e..0d25d13 100644 --- a/apps/datahub/README.md +++ b/output/apps/datahub/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/datahub/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/datahub/` as work progresses. diff --git a/apps/datahub/app/.gitkeep b/output/apps/datahub/app/.gitkeep similarity index 100% rename from apps/datahub/app/.gitkeep rename to output/apps/datahub/app/.gitkeep diff --git a/apps/datahub/metadata.json b/output/apps/datahub/metadata.json similarity index 100% rename from apps/datahub/metadata.json rename to output/apps/datahub/metadata.json diff --git a/apps/datahub/start.sh b/output/apps/datahub/start.sh similarity index 100% rename from apps/datahub/start.sh rename to output/apps/datahub/start.sh diff --git a/apps/datahub/test/smoke.sh b/output/apps/datahub/test/smoke.sh similarity index 100% rename from apps/datahub/test/smoke.sh rename to output/apps/datahub/test/smoke.sh diff --git a/apps/docassemble/CloudronManifest.json b/output/apps/docassemble/CloudronManifest.json similarity index 100% rename from apps/docassemble/CloudronManifest.json rename to output/apps/docassemble/CloudronManifest.json diff --git a/apps/docassemble/Dockerfile b/output/apps/docassemble/Dockerfile similarity index 100% rename from apps/docassemble/Dockerfile rename to output/apps/docassemble/Dockerfile diff --git a/apps/docassemble/README.md b/output/apps/docassemble/README.md similarity index 81% rename from apps/docassemble/README.md rename to output/apps/docassemble/README.md index dedce2d..a2d4ea0 100644 --- a/apps/docassemble/README.md +++ b/output/apps/docassemble/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/docassemble/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/docassemble/` as work progresses. diff --git a/apps/docassemble/app/.gitkeep b/output/apps/docassemble/app/.gitkeep similarity index 100% rename from apps/docassemble/app/.gitkeep rename to output/apps/docassemble/app/.gitkeep diff --git a/apps/docassemble/metadata.json b/output/apps/docassemble/metadata.json similarity index 100% rename from apps/docassemble/metadata.json rename to output/apps/docassemble/metadata.json diff --git a/apps/docassemble/start.sh b/output/apps/docassemble/start.sh similarity index 100% rename from apps/docassemble/start.sh rename to output/apps/docassemble/start.sh diff --git a/apps/docassemble/test/smoke.sh b/output/apps/docassemble/test/smoke.sh similarity index 100% rename from apps/docassemble/test/smoke.sh rename to output/apps/docassemble/test/smoke.sh diff --git a/apps/docker-webhook/CloudronManifest.json b/output/apps/docker-webhook/CloudronManifest.json similarity index 100% rename from apps/docker-webhook/CloudronManifest.json rename to output/apps/docker-webhook/CloudronManifest.json diff --git a/apps/docker-webhook/Dockerfile b/output/apps/docker-webhook/Dockerfile similarity index 100% rename from apps/docker-webhook/Dockerfile rename to output/apps/docker-webhook/Dockerfile diff --git a/apps/docker-webhook/README.md b/output/apps/docker-webhook/README.md similarity index 81% rename from apps/docker-webhook/README.md rename to output/apps/docker-webhook/README.md index 44ca383..9def10d 100644 --- a/apps/docker-webhook/README.md +++ b/output/apps/docker-webhook/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/docker-webhook/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/docker-webhook/` as work progresses. diff --git a/apps/docker-webhook/app/.gitkeep b/output/apps/docker-webhook/app/.gitkeep similarity index 100% rename from apps/docker-webhook/app/.gitkeep rename to output/apps/docker-webhook/app/.gitkeep diff --git a/apps/docker-webhook/metadata.json b/output/apps/docker-webhook/metadata.json similarity index 100% rename from apps/docker-webhook/metadata.json rename to output/apps/docker-webhook/metadata.json diff --git a/apps/docker-webhook/start.sh b/output/apps/docker-webhook/start.sh similarity index 100% rename from apps/docker-webhook/start.sh rename to output/apps/docker-webhook/start.sh diff --git a/apps/docker-webhook/test/smoke.sh b/output/apps/docker-webhook/test/smoke.sh similarity index 100% rename from apps/docker-webhook/test/smoke.sh rename to output/apps/docker-webhook/test/smoke.sh diff --git a/apps/drawio/CloudronManifest.json b/output/apps/drawio/CloudronManifest.json similarity index 100% rename from apps/drawio/CloudronManifest.json rename to output/apps/drawio/CloudronManifest.json diff --git a/apps/drawio/Dockerfile b/output/apps/drawio/Dockerfile similarity index 100% rename from apps/drawio/Dockerfile rename to output/apps/drawio/Dockerfile diff --git a/apps/drawio/README.md b/output/apps/drawio/README.md similarity index 81% rename from apps/drawio/README.md rename to output/apps/drawio/README.md index a4935b0..4621bc0 100644 --- a/apps/drawio/README.md +++ b/output/apps/drawio/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/drawio/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/drawio/` as work progresses. diff --git a/apps/drawio/app/.gitkeep b/output/apps/drawio/app/.gitkeep similarity index 100% rename from apps/drawio/app/.gitkeep rename to output/apps/drawio/app/.gitkeep diff --git a/apps/drawio/metadata.json b/output/apps/drawio/metadata.json similarity index 100% rename from apps/drawio/metadata.json rename to output/apps/drawio/metadata.json diff --git a/apps/drawio/start.sh b/output/apps/drawio/start.sh similarity index 100% rename from apps/drawio/start.sh rename to output/apps/drawio/start.sh diff --git a/apps/drawio/test/smoke.sh b/output/apps/drawio/test/smoke.sh similarity index 100% rename from apps/drawio/test/smoke.sh rename to output/apps/drawio/test/smoke.sh diff --git a/apps/easy-gate/CloudronManifest.json b/output/apps/easy-gate/CloudronManifest.json similarity index 100% rename from apps/easy-gate/CloudronManifest.json rename to output/apps/easy-gate/CloudronManifest.json diff --git a/apps/easy-gate/Dockerfile b/output/apps/easy-gate/Dockerfile similarity index 100% rename from apps/easy-gate/Dockerfile rename to output/apps/easy-gate/Dockerfile diff --git a/apps/easy-gate/README.md b/output/apps/easy-gate/README.md similarity index 81% rename from apps/easy-gate/README.md rename to output/apps/easy-gate/README.md index 7c16246..f1a7952 100644 --- a/apps/easy-gate/README.md +++ b/output/apps/easy-gate/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/easy-gate/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/easy-gate/` as work progresses. diff --git a/apps/easy-gate/app/.gitkeep b/output/apps/easy-gate/app/.gitkeep similarity index 100% rename from apps/easy-gate/app/.gitkeep rename to output/apps/easy-gate/app/.gitkeep diff --git a/apps/easy-gate/metadata.json b/output/apps/easy-gate/metadata.json similarity index 100% rename from apps/easy-gate/metadata.json rename to output/apps/easy-gate/metadata.json diff --git a/apps/easy-gate/start.sh b/output/apps/easy-gate/start.sh similarity index 100% rename from apps/easy-gate/start.sh rename to output/apps/easy-gate/start.sh diff --git a/apps/easy-gate/test/smoke.sh b/output/apps/easy-gate/test/smoke.sh similarity index 100% rename from apps/easy-gate/test/smoke.sh rename to output/apps/easy-gate/test/smoke.sh diff --git a/apps/elabftw/CloudronManifest.json b/output/apps/elabftw/CloudronManifest.json similarity index 100% rename from apps/elabftw/CloudronManifest.json rename to output/apps/elabftw/CloudronManifest.json diff --git a/apps/elabftw/Dockerfile b/output/apps/elabftw/Dockerfile similarity index 100% rename from apps/elabftw/Dockerfile rename to output/apps/elabftw/Dockerfile diff --git a/apps/elabftw/README.md b/output/apps/elabftw/README.md similarity index 81% rename from apps/elabftw/README.md rename to output/apps/elabftw/README.md index e5320b7..0a42869 100644 --- a/apps/elabftw/README.md +++ b/output/apps/elabftw/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/elabftw/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/elabftw/` as work progresses. diff --git a/apps/elabftw/app/.gitkeep b/output/apps/elabftw/app/.gitkeep similarity index 100% rename from apps/elabftw/app/.gitkeep rename to output/apps/elabftw/app/.gitkeep diff --git a/apps/elabftw/metadata.json b/output/apps/elabftw/metadata.json similarity index 100% rename from apps/elabftw/metadata.json rename to output/apps/elabftw/metadata.json diff --git a/apps/elabftw/start.sh b/output/apps/elabftw/start.sh similarity index 100% rename from apps/elabftw/start.sh rename to output/apps/elabftw/start.sh diff --git a/apps/elabftw/test/smoke.sh b/output/apps/elabftw/test/smoke.sh similarity index 100% rename from apps/elabftw/test/smoke.sh rename to output/apps/elabftw/test/smoke.sh diff --git a/apps/fleetdm-fleet/CloudronManifest.json b/output/apps/fleetdm-fleet/CloudronManifest.json similarity index 100% rename from apps/fleetdm-fleet/CloudronManifest.json rename to output/apps/fleetdm-fleet/CloudronManifest.json diff --git a/apps/fleetdm-fleet/Dockerfile b/output/apps/fleetdm-fleet/Dockerfile similarity index 100% rename from apps/fleetdm-fleet/Dockerfile rename to output/apps/fleetdm-fleet/Dockerfile diff --git a/apps/fleetdm-fleet/README.md b/output/apps/fleetdm-fleet/README.md similarity index 81% rename from apps/fleetdm-fleet/README.md rename to output/apps/fleetdm-fleet/README.md index b4793fe..e0a44c1 100644 --- a/apps/fleetdm-fleet/README.md +++ b/output/apps/fleetdm-fleet/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/fleetdm-fleet/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/fleetdm-fleet/` as work progresses. diff --git a/apps/fleetdm-fleet/app/.gitkeep b/output/apps/fleetdm-fleet/app/.gitkeep similarity index 100% rename from apps/fleetdm-fleet/app/.gitkeep rename to output/apps/fleetdm-fleet/app/.gitkeep diff --git a/apps/fleetdm-fleet/metadata.json b/output/apps/fleetdm-fleet/metadata.json similarity index 100% rename from apps/fleetdm-fleet/metadata.json rename to output/apps/fleetdm-fleet/metadata.json diff --git a/apps/fleetdm-fleet/start.sh b/output/apps/fleetdm-fleet/start.sh similarity index 100% rename from apps/fleetdm-fleet/start.sh rename to output/apps/fleetdm-fleet/start.sh diff --git a/apps/fleetdm-fleet/test/smoke.sh b/output/apps/fleetdm-fleet/test/smoke.sh similarity index 100% rename from apps/fleetdm-fleet/test/smoke.sh rename to output/apps/fleetdm-fleet/test/smoke.sh diff --git a/apps/fonoster/CloudronManifest.json b/output/apps/fonoster/CloudronManifest.json similarity index 100% rename from apps/fonoster/CloudronManifest.json rename to output/apps/fonoster/CloudronManifest.json diff --git a/apps/fonoster/Dockerfile b/output/apps/fonoster/Dockerfile similarity index 100% rename from apps/fonoster/Dockerfile rename to output/apps/fonoster/Dockerfile diff --git a/apps/fonoster/README.md b/output/apps/fonoster/README.md similarity index 81% rename from apps/fonoster/README.md rename to output/apps/fonoster/README.md index 29c2200..b51238a 100644 --- a/apps/fonoster/README.md +++ b/output/apps/fonoster/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/fonoster/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/fonoster/` as work progresses. diff --git a/apps/fonoster/app/.gitkeep b/output/apps/fonoster/app/.gitkeep similarity index 100% rename from apps/fonoster/app/.gitkeep rename to output/apps/fonoster/app/.gitkeep diff --git a/apps/fonoster/metadata.json b/output/apps/fonoster/metadata.json similarity index 100% rename from apps/fonoster/metadata.json rename to output/apps/fonoster/metadata.json diff --git a/apps/fonoster/start.sh b/output/apps/fonoster/start.sh similarity index 100% rename from apps/fonoster/start.sh rename to output/apps/fonoster/start.sh diff --git a/apps/fonoster/test/smoke.sh b/output/apps/fonoster/test/smoke.sh similarity index 100% rename from apps/fonoster/test/smoke.sh rename to output/apps/fonoster/test/smoke.sh diff --git a/apps/grist/CloudronManifest.json b/output/apps/grist/CloudronManifest.json similarity index 100% rename from apps/grist/CloudronManifest.json rename to output/apps/grist/CloudronManifest.json diff --git a/apps/grist/Dockerfile b/output/apps/grist/Dockerfile similarity index 100% rename from apps/grist/Dockerfile rename to output/apps/grist/Dockerfile diff --git a/apps/grist/README.md b/output/apps/grist/README.md similarity index 81% rename from apps/grist/README.md rename to output/apps/grist/README.md index 38205d6..9bf1a8d 100644 --- a/apps/grist/README.md +++ b/output/apps/grist/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/grist/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/grist/` as work progresses. diff --git a/apps/grist/app/.gitkeep b/output/apps/grist/app/.gitkeep similarity index 100% rename from apps/grist/app/.gitkeep rename to output/apps/grist/app/.gitkeep diff --git a/apps/grist/metadata.json b/output/apps/grist/metadata.json similarity index 100% rename from apps/grist/metadata.json rename to output/apps/grist/metadata.json diff --git a/apps/grist/start.sh b/output/apps/grist/start.sh similarity index 100% rename from apps/grist/start.sh rename to output/apps/grist/start.sh diff --git a/apps/grist/test/smoke.sh b/output/apps/grist/test/smoke.sh similarity index 100% rename from apps/grist/test/smoke.sh rename to output/apps/grist/test/smoke.sh diff --git a/apps/healthchecks/CloudronManifest.json b/output/apps/healthchecks/CloudronManifest.json similarity index 100% rename from apps/healthchecks/CloudronManifest.json rename to output/apps/healthchecks/CloudronManifest.json diff --git a/apps/healthchecks/Dockerfile b/output/apps/healthchecks/Dockerfile similarity index 100% rename from apps/healthchecks/Dockerfile rename to output/apps/healthchecks/Dockerfile diff --git a/apps/healthchecks/README.md b/output/apps/healthchecks/README.md similarity index 81% rename from apps/healthchecks/README.md rename to output/apps/healthchecks/README.md index f9ae5d4..2e95e28 100644 --- a/apps/healthchecks/README.md +++ b/output/apps/healthchecks/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/healthchecks/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/healthchecks/` as work progresses. diff --git a/apps/healthchecks/app/.gitkeep b/output/apps/healthchecks/app/.gitkeep similarity index 100% rename from apps/healthchecks/app/.gitkeep rename to output/apps/healthchecks/app/.gitkeep diff --git a/apps/healthchecks/metadata.json b/output/apps/healthchecks/metadata.json similarity index 100% rename from apps/healthchecks/metadata.json rename to output/apps/healthchecks/metadata.json diff --git a/apps/healthchecks/start.sh b/output/apps/healthchecks/start.sh similarity index 100% rename from apps/healthchecks/start.sh rename to output/apps/healthchecks/start.sh diff --git a/apps/healthchecks/test/smoke.sh b/output/apps/healthchecks/test/smoke.sh similarity index 100% rename from apps/healthchecks/test/smoke.sh rename to output/apps/healthchecks/test/smoke.sh diff --git a/apps/huginn/CloudronManifest.json b/output/apps/huginn/CloudronManifest.json similarity index 100% rename from apps/huginn/CloudronManifest.json rename to output/apps/huginn/CloudronManifest.json diff --git a/apps/huginn/Dockerfile b/output/apps/huginn/Dockerfile similarity index 100% rename from apps/huginn/Dockerfile rename to output/apps/huginn/Dockerfile diff --git a/apps/huginn/README.md b/output/apps/huginn/README.md similarity index 81% rename from apps/huginn/README.md rename to output/apps/huginn/README.md index 359c77a..1c0a88f 100644 --- a/apps/huginn/README.md +++ b/output/apps/huginn/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/huginn/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/huginn/` as work progresses. diff --git a/apps/huginn/app/.gitkeep b/output/apps/huginn/app/.gitkeep similarity index 100% rename from apps/huginn/app/.gitkeep rename to output/apps/huginn/app/.gitkeep diff --git a/apps/huginn/metadata.json b/output/apps/huginn/metadata.json similarity index 100% rename from apps/huginn/metadata.json rename to output/apps/huginn/metadata.json diff --git a/apps/huginn/start.sh b/output/apps/huginn/start.sh similarity index 100% rename from apps/huginn/start.sh rename to output/apps/huginn/start.sh diff --git a/apps/huginn/test/smoke.sh b/output/apps/huginn/test/smoke.sh similarity index 100% rename from apps/huginn/test/smoke.sh rename to output/apps/huginn/test/smoke.sh diff --git a/apps/hyperswitch/CloudronManifest.json b/output/apps/hyperswitch/CloudronManifest.json similarity index 100% rename from apps/hyperswitch/CloudronManifest.json rename to output/apps/hyperswitch/CloudronManifest.json diff --git a/apps/hyperswitch/Dockerfile b/output/apps/hyperswitch/Dockerfile similarity index 100% rename from apps/hyperswitch/Dockerfile rename to output/apps/hyperswitch/Dockerfile diff --git a/apps/hyperswitch/README.md b/output/apps/hyperswitch/README.md similarity index 81% rename from apps/hyperswitch/README.md rename to output/apps/hyperswitch/README.md index fae88d6..900c960 100644 --- a/apps/hyperswitch/README.md +++ b/output/apps/hyperswitch/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/hyperswitch/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/hyperswitch/` as work progresses. diff --git a/apps/hyperswitch/app/.gitkeep b/output/apps/hyperswitch/app/.gitkeep similarity index 100% rename from apps/hyperswitch/app/.gitkeep rename to output/apps/hyperswitch/app/.gitkeep diff --git a/apps/hyperswitch/metadata.json b/output/apps/hyperswitch/metadata.json similarity index 100% rename from apps/hyperswitch/metadata.json rename to output/apps/hyperswitch/metadata.json diff --git a/apps/hyperswitch/start.sh b/output/apps/hyperswitch/start.sh similarity index 100% rename from apps/hyperswitch/start.sh rename to output/apps/hyperswitch/start.sh diff --git a/apps/hyperswitch/test/smoke.sh b/output/apps/hyperswitch/test/smoke.sh similarity index 100% rename from apps/hyperswitch/test/smoke.sh rename to output/apps/hyperswitch/test/smoke.sh diff --git a/apps/inventree/CloudronManifest.json b/output/apps/inventree/CloudronManifest.json similarity index 100% rename from apps/inventree/CloudronManifest.json rename to output/apps/inventree/CloudronManifest.json diff --git a/apps/inventree/Dockerfile b/output/apps/inventree/Dockerfile similarity index 100% rename from apps/inventree/Dockerfile rename to output/apps/inventree/Dockerfile diff --git a/apps/inventree/README.md b/output/apps/inventree/README.md similarity index 81% rename from apps/inventree/README.md rename to output/apps/inventree/README.md index 334c021..dc09453 100644 --- a/apps/inventree/README.md +++ b/output/apps/inventree/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/inventree/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/inventree/` as work progresses. diff --git a/apps/inventree/app/.gitkeep b/output/apps/inventree/app/.gitkeep similarity index 100% rename from apps/inventree/app/.gitkeep rename to output/apps/inventree/app/.gitkeep diff --git a/apps/inventree/metadata.json b/output/apps/inventree/metadata.json similarity index 100% rename from apps/inventree/metadata.json rename to output/apps/inventree/metadata.json diff --git a/apps/inventree/start.sh b/output/apps/inventree/start.sh similarity index 100% rename from apps/inventree/start.sh rename to output/apps/inventree/start.sh diff --git a/apps/inventree/test/smoke.sh b/output/apps/inventree/test/smoke.sh similarity index 100% rename from apps/inventree/test/smoke.sh rename to output/apps/inventree/test/smoke.sh diff --git a/apps/jamovi/CloudronManifest.json b/output/apps/jamovi/CloudronManifest.json similarity index 100% rename from apps/jamovi/CloudronManifest.json rename to output/apps/jamovi/CloudronManifest.json diff --git a/apps/jamovi/Dockerfile b/output/apps/jamovi/Dockerfile similarity index 100% rename from apps/jamovi/Dockerfile rename to output/apps/jamovi/Dockerfile diff --git a/apps/jamovi/README.md b/output/apps/jamovi/README.md similarity index 81% rename from apps/jamovi/README.md rename to output/apps/jamovi/README.md index 6ef66ea..2004d6c 100644 --- a/apps/jamovi/README.md +++ b/output/apps/jamovi/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/jamovi/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/jamovi/` as work progresses. diff --git a/apps/jamovi/app/.gitkeep b/output/apps/jamovi/app/.gitkeep similarity index 100% rename from apps/jamovi/app/.gitkeep rename to output/apps/jamovi/app/.gitkeep diff --git a/apps/jamovi/metadata.json b/output/apps/jamovi/metadata.json similarity index 100% rename from apps/jamovi/metadata.json rename to output/apps/jamovi/metadata.json diff --git a/apps/jamovi/start.sh b/output/apps/jamovi/start.sh similarity index 100% rename from apps/jamovi/start.sh rename to output/apps/jamovi/start.sh diff --git a/apps/jamovi/test/smoke.sh b/output/apps/jamovi/test/smoke.sh similarity index 100% rename from apps/jamovi/test/smoke.sh rename to output/apps/jamovi/test/smoke.sh diff --git a/apps/jenkins/CloudronManifest.json b/output/apps/jenkins/CloudronManifest.json similarity index 100% rename from apps/jenkins/CloudronManifest.json rename to output/apps/jenkins/CloudronManifest.json diff --git a/apps/jenkins/Dockerfile b/output/apps/jenkins/Dockerfile similarity index 100% rename from apps/jenkins/Dockerfile rename to output/apps/jenkins/Dockerfile diff --git a/apps/jenkins/README.md b/output/apps/jenkins/README.md similarity index 81% rename from apps/jenkins/README.md rename to output/apps/jenkins/README.md index 71f123e..d52968d 100644 --- a/apps/jenkins/README.md +++ b/output/apps/jenkins/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/jenkins/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/jenkins/` as work progresses. diff --git a/apps/jenkins/app/.gitkeep b/output/apps/jenkins/app/.gitkeep similarity index 100% rename from apps/jenkins/app/.gitkeep rename to output/apps/jenkins/app/.gitkeep diff --git a/apps/jenkins/metadata.json b/output/apps/jenkins/metadata.json similarity index 100% rename from apps/jenkins/metadata.json rename to output/apps/jenkins/metadata.json diff --git a/apps/jenkins/start.sh b/output/apps/jenkins/start.sh similarity index 100% rename from apps/jenkins/start.sh rename to output/apps/jenkins/start.sh diff --git a/apps/jenkins/test/smoke.sh b/output/apps/jenkins/test/smoke.sh similarity index 100% rename from apps/jenkins/test/smoke.sh rename to output/apps/jenkins/test/smoke.sh diff --git a/apps/kibot/CloudronManifest.json b/output/apps/kibot/CloudronManifest.json similarity index 100% rename from apps/kibot/CloudronManifest.json rename to output/apps/kibot/CloudronManifest.json diff --git a/apps/kibot/Dockerfile b/output/apps/kibot/Dockerfile similarity index 100% rename from apps/kibot/Dockerfile rename to output/apps/kibot/Dockerfile diff --git a/apps/kibot/README.md b/output/apps/kibot/README.md similarity index 81% rename from apps/kibot/README.md rename to output/apps/kibot/README.md index f110b82..f87150e 100644 --- a/apps/kibot/README.md +++ b/output/apps/kibot/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/kibot/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/kibot/` as work progresses. diff --git a/apps/kibot/app/.gitkeep b/output/apps/kibot/app/.gitkeep similarity index 100% rename from apps/kibot/app/.gitkeep rename to output/apps/kibot/app/.gitkeep diff --git a/apps/kibot/metadata.json b/output/apps/kibot/metadata.json similarity index 100% rename from apps/kibot/metadata.json rename to output/apps/kibot/metadata.json diff --git a/apps/kibot/start.sh b/output/apps/kibot/start.sh similarity index 100% rename from apps/kibot/start.sh rename to output/apps/kibot/start.sh diff --git a/apps/kibot/test/smoke.sh b/output/apps/kibot/test/smoke.sh similarity index 100% rename from apps/kibot/test/smoke.sh rename to output/apps/kibot/test/smoke.sh diff --git a/apps/killbill/CloudronManifest.json b/output/apps/killbill/CloudronManifest.json similarity index 100% rename from apps/killbill/CloudronManifest.json rename to output/apps/killbill/CloudronManifest.json diff --git a/apps/killbill/Dockerfile b/output/apps/killbill/Dockerfile similarity index 100% rename from apps/killbill/Dockerfile rename to output/apps/killbill/Dockerfile diff --git a/apps/killbill/README.md b/output/apps/killbill/README.md similarity index 81% rename from apps/killbill/README.md rename to output/apps/killbill/README.md index b408fc0..e7752da 100644 --- a/apps/killbill/README.md +++ b/output/apps/killbill/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/killbill/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/killbill/` as work progresses. diff --git a/apps/killbill/app/.gitkeep b/output/apps/killbill/app/.gitkeep similarity index 100% rename from apps/killbill/app/.gitkeep rename to output/apps/killbill/app/.gitkeep diff --git a/apps/killbill/metadata.json b/output/apps/killbill/metadata.json similarity index 100% rename from apps/killbill/metadata.json rename to output/apps/killbill/metadata.json diff --git a/apps/killbill/start.sh b/output/apps/killbill/start.sh similarity index 100% rename from apps/killbill/start.sh rename to output/apps/killbill/start.sh diff --git a/apps/killbill/test/smoke.sh b/output/apps/killbill/test/smoke.sh similarity index 100% rename from apps/killbill/test/smoke.sh rename to output/apps/killbill/test/smoke.sh diff --git a/apps/langfuse/CloudronManifest.json b/output/apps/langfuse/CloudronManifest.json similarity index 100% rename from apps/langfuse/CloudronManifest.json rename to output/apps/langfuse/CloudronManifest.json diff --git a/apps/langfuse/Dockerfile b/output/apps/langfuse/Dockerfile similarity index 100% rename from apps/langfuse/Dockerfile rename to output/apps/langfuse/Dockerfile diff --git a/apps/langfuse/README.md b/output/apps/langfuse/README.md similarity index 82% rename from apps/langfuse/README.md rename to output/apps/langfuse/README.md index 3f0db00..50e3f32 100644 --- a/apps/langfuse/README.md +++ b/output/apps/langfuse/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/langfuse/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/langfuse/` as work progresses. diff --git a/apps/langfuse/app/.gitkeep b/output/apps/langfuse/app/.gitkeep similarity index 100% rename from apps/langfuse/app/.gitkeep rename to output/apps/langfuse/app/.gitkeep diff --git a/apps/langfuse/metadata.json b/output/apps/langfuse/metadata.json similarity index 100% rename from apps/langfuse/metadata.json rename to output/apps/langfuse/metadata.json diff --git a/apps/langfuse/start.sh b/output/apps/langfuse/start.sh similarity index 100% rename from apps/langfuse/start.sh rename to output/apps/langfuse/start.sh diff --git a/apps/langfuse/test/smoke.sh b/output/apps/langfuse/test/smoke.sh similarity index 100% rename from apps/langfuse/test/smoke.sh rename to output/apps/langfuse/test/smoke.sh diff --git a/apps/manyfold/CloudronManifest.json b/output/apps/manyfold/CloudronManifest.json similarity index 100% rename from apps/manyfold/CloudronManifest.json rename to output/apps/manyfold/CloudronManifest.json diff --git a/apps/manyfold/Dockerfile b/output/apps/manyfold/Dockerfile similarity index 100% rename from apps/manyfold/Dockerfile rename to output/apps/manyfold/Dockerfile diff --git a/apps/manyfold/README.md b/output/apps/manyfold/README.md similarity index 81% rename from apps/manyfold/README.md rename to output/apps/manyfold/README.md index 9166154..529a025 100644 --- a/apps/manyfold/README.md +++ b/output/apps/manyfold/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/manyfold/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/manyfold/` as work progresses. diff --git a/apps/manyfold/app/.gitkeep b/output/apps/manyfold/app/.gitkeep similarity index 100% rename from apps/manyfold/app/.gitkeep rename to output/apps/manyfold/app/.gitkeep diff --git a/apps/manyfold/metadata.json b/output/apps/manyfold/metadata.json similarity index 100% rename from apps/manyfold/metadata.json rename to output/apps/manyfold/metadata.json diff --git a/apps/manyfold/start.sh b/output/apps/manyfold/start.sh similarity index 100% rename from apps/manyfold/start.sh rename to output/apps/manyfold/start.sh diff --git a/apps/manyfold/test/smoke.sh b/output/apps/manyfold/test/smoke.sh similarity index 100% rename from apps/manyfold/test/smoke.sh rename to output/apps/manyfold/test/smoke.sh diff --git a/apps/mender-server/CloudronManifest.json b/output/apps/mender-server/CloudronManifest.json similarity index 100% rename from apps/mender-server/CloudronManifest.json rename to output/apps/mender-server/CloudronManifest.json diff --git a/apps/mender-server/Dockerfile b/output/apps/mender-server/Dockerfile similarity index 100% rename from apps/mender-server/Dockerfile rename to output/apps/mender-server/Dockerfile diff --git a/apps/mender-server/README.md b/output/apps/mender-server/README.md similarity index 81% rename from apps/mender-server/README.md rename to output/apps/mender-server/README.md index 51fc15d..155b5cd 100644 --- a/apps/mender-server/README.md +++ b/output/apps/mender-server/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/mender-server/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/mender-server/` as work progresses. diff --git a/apps/mender-server/app/.gitkeep b/output/apps/mender-server/app/.gitkeep similarity index 100% rename from apps/mender-server/app/.gitkeep rename to output/apps/mender-server/app/.gitkeep diff --git a/apps/mender-server/metadata.json b/output/apps/mender-server/metadata.json similarity index 100% rename from apps/mender-server/metadata.json rename to output/apps/mender-server/metadata.json diff --git a/apps/mender-server/start.sh b/output/apps/mender-server/start.sh similarity index 100% rename from apps/mender-server/start.sh rename to output/apps/mender-server/start.sh diff --git a/apps/mender-server/test/smoke.sh b/output/apps/mender-server/test/smoke.sh similarity index 100% rename from apps/mender-server/test/smoke.sh rename to output/apps/mender-server/test/smoke.sh diff --git a/apps/midday/CloudronManifest.json b/output/apps/midday/CloudronManifest.json similarity index 100% rename from apps/midday/CloudronManifest.json rename to output/apps/midday/CloudronManifest.json diff --git a/apps/midday/Dockerfile b/output/apps/midday/Dockerfile similarity index 100% rename from apps/midday/Dockerfile rename to output/apps/midday/Dockerfile diff --git a/apps/midday/README.md b/output/apps/midday/README.md similarity index 81% rename from apps/midday/README.md rename to output/apps/midday/README.md index 25e30b8..421ae48 100644 --- a/apps/midday/README.md +++ b/output/apps/midday/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/midday/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/midday/` as work progresses. diff --git a/apps/midday/app/.gitkeep b/output/apps/midday/app/.gitkeep similarity index 100% rename from apps/midday/app/.gitkeep rename to output/apps/midday/app/.gitkeep diff --git a/apps/midday/metadata.json b/output/apps/midday/metadata.json similarity index 100% rename from apps/midday/metadata.json rename to output/apps/midday/metadata.json diff --git a/apps/midday/start.sh b/output/apps/midday/start.sh similarity index 100% rename from apps/midday/start.sh rename to output/apps/midday/start.sh diff --git a/apps/midday/test/smoke.sh b/output/apps/midday/test/smoke.sh similarity index 100% rename from apps/midday/test/smoke.sh rename to output/apps/midday/test/smoke.sh diff --git a/apps/mirlo/CloudronManifest.json b/output/apps/mirlo/CloudronManifest.json similarity index 100% rename from apps/mirlo/CloudronManifest.json rename to output/apps/mirlo/CloudronManifest.json diff --git a/apps/mirlo/Dockerfile b/output/apps/mirlo/Dockerfile similarity index 100% rename from apps/mirlo/Dockerfile rename to output/apps/mirlo/Dockerfile diff --git a/apps/mirlo/README.md b/output/apps/mirlo/README.md similarity index 81% rename from apps/mirlo/README.md rename to output/apps/mirlo/README.md index bc03d03..ac4c1d5 100644 --- a/apps/mirlo/README.md +++ b/output/apps/mirlo/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/mirlo/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/mirlo/` as work progresses. diff --git a/apps/mirlo/app/.gitkeep b/output/apps/mirlo/app/.gitkeep similarity index 100% rename from apps/mirlo/app/.gitkeep rename to output/apps/mirlo/app/.gitkeep diff --git a/apps/mirlo/metadata.json b/output/apps/mirlo/metadata.json similarity index 100% rename from apps/mirlo/metadata.json rename to output/apps/mirlo/metadata.json diff --git a/apps/mirlo/start.sh b/output/apps/mirlo/start.sh similarity index 100% rename from apps/mirlo/start.sh rename to output/apps/mirlo/start.sh diff --git a/apps/mirlo/test/smoke.sh b/output/apps/mirlo/test/smoke.sh similarity index 100% rename from apps/mirlo/test/smoke.sh rename to output/apps/mirlo/test/smoke.sh diff --git a/apps/nautilus-trader/CloudronManifest.json b/output/apps/nautilus-trader/CloudronManifest.json similarity index 100% rename from apps/nautilus-trader/CloudronManifest.json rename to output/apps/nautilus-trader/CloudronManifest.json diff --git a/apps/nautilus-trader/Dockerfile b/output/apps/nautilus-trader/Dockerfile similarity index 100% rename from apps/nautilus-trader/Dockerfile rename to output/apps/nautilus-trader/Dockerfile diff --git a/apps/nautilus-trader/README.md b/output/apps/nautilus-trader/README.md similarity index 81% rename from apps/nautilus-trader/README.md rename to output/apps/nautilus-trader/README.md index 4df28be..3f5e508 100644 --- a/apps/nautilus-trader/README.md +++ b/output/apps/nautilus-trader/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/nautilus-trader/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/nautilus-trader/` as work progresses. diff --git a/apps/nautilus-trader/app/.gitkeep b/output/apps/nautilus-trader/app/.gitkeep similarity index 100% rename from apps/nautilus-trader/app/.gitkeep rename to output/apps/nautilus-trader/app/.gitkeep diff --git a/apps/nautilus-trader/metadata.json b/output/apps/nautilus-trader/metadata.json similarity index 100% rename from apps/nautilus-trader/metadata.json rename to output/apps/nautilus-trader/metadata.json diff --git a/apps/nautilus-trader/start.sh b/output/apps/nautilus-trader/start.sh similarity index 100% rename from apps/nautilus-trader/start.sh rename to output/apps/nautilus-trader/start.sh diff --git a/apps/nautilus-trader/test/smoke.sh b/output/apps/nautilus-trader/test/smoke.sh similarity index 100% rename from apps/nautilus-trader/test/smoke.sh rename to output/apps/nautilus-trader/test/smoke.sh diff --git a/apps/netbox-docker/CloudronManifest.json b/output/apps/netbox-docker/CloudronManifest.json similarity index 100% rename from apps/netbox-docker/CloudronManifest.json rename to output/apps/netbox-docker/CloudronManifest.json diff --git a/apps/netbox-docker/Dockerfile b/output/apps/netbox-docker/Dockerfile similarity index 100% rename from apps/netbox-docker/Dockerfile rename to output/apps/netbox-docker/Dockerfile diff --git a/apps/netbox-docker/README.md b/output/apps/netbox-docker/README.md similarity index 81% rename from apps/netbox-docker/README.md rename to output/apps/netbox-docker/README.md index fd2c8c0..d68d4b4 100644 --- a/apps/netbox-docker/README.md +++ b/output/apps/netbox-docker/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/netbox-docker/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/netbox-docker/` as work progresses. diff --git a/apps/netbox-docker/app/.gitkeep b/output/apps/netbox-docker/app/.gitkeep similarity index 100% rename from apps/netbox-docker/app/.gitkeep rename to output/apps/netbox-docker/app/.gitkeep diff --git a/apps/netbox-docker/metadata.json b/output/apps/netbox-docker/metadata.json similarity index 100% rename from apps/netbox-docker/metadata.json rename to output/apps/netbox-docker/metadata.json diff --git a/apps/netbox-docker/start.sh b/output/apps/netbox-docker/start.sh similarity index 100% rename from apps/netbox-docker/start.sh rename to output/apps/netbox-docker/start.sh diff --git a/apps/netbox-docker/test/smoke.sh b/output/apps/netbox-docker/test/smoke.sh similarity index 100% rename from apps/netbox-docker/test/smoke.sh rename to output/apps/netbox-docker/test/smoke.sh diff --git a/apps/openblocks/CloudronManifest.json b/output/apps/openblocks/CloudronManifest.json similarity index 100% rename from apps/openblocks/CloudronManifest.json rename to output/apps/openblocks/CloudronManifest.json diff --git a/apps/openblocks/Dockerfile b/output/apps/openblocks/Dockerfile similarity index 100% rename from apps/openblocks/Dockerfile rename to output/apps/openblocks/Dockerfile diff --git a/apps/openblocks/README.md b/output/apps/openblocks/README.md similarity index 81% rename from apps/openblocks/README.md rename to output/apps/openblocks/README.md index 3b8a4d2..7ba5c8a 100644 --- a/apps/openblocks/README.md +++ b/output/apps/openblocks/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/openblocks/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/openblocks/` as work progresses. diff --git a/apps/openblocks/app/.gitkeep b/output/apps/openblocks/app/.gitkeep similarity index 100% rename from apps/openblocks/app/.gitkeep rename to output/apps/openblocks/app/.gitkeep diff --git a/apps/openblocks/metadata.json b/output/apps/openblocks/metadata.json similarity index 100% rename from apps/openblocks/metadata.json rename to output/apps/openblocks/metadata.json diff --git a/apps/openblocks/start.sh b/output/apps/openblocks/start.sh similarity index 100% rename from apps/openblocks/start.sh rename to output/apps/openblocks/start.sh diff --git a/apps/openblocks/test/smoke.sh b/output/apps/openblocks/test/smoke.sh similarity index 100% rename from apps/openblocks/test/smoke.sh rename to output/apps/openblocks/test/smoke.sh diff --git a/apps/openboxes-docker/CloudronManifest.json b/output/apps/openboxes-docker/CloudronManifest.json similarity index 100% rename from apps/openboxes-docker/CloudronManifest.json rename to output/apps/openboxes-docker/CloudronManifest.json diff --git a/apps/openboxes-docker/Dockerfile b/output/apps/openboxes-docker/Dockerfile similarity index 100% rename from apps/openboxes-docker/Dockerfile rename to output/apps/openboxes-docker/Dockerfile diff --git a/apps/openboxes-docker/README.md b/output/apps/openboxes-docker/README.md similarity index 81% rename from apps/openboxes-docker/README.md rename to output/apps/openboxes-docker/README.md index 51e373f..f524791 100644 --- a/apps/openboxes-docker/README.md +++ b/output/apps/openboxes-docker/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/openboxes-docker/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/openboxes-docker/` as work progresses. diff --git a/apps/openboxes-docker/app/.gitkeep b/output/apps/openboxes-docker/app/.gitkeep similarity index 100% rename from apps/openboxes-docker/app/.gitkeep rename to output/apps/openboxes-docker/app/.gitkeep diff --git a/apps/openboxes-docker/metadata.json b/output/apps/openboxes-docker/metadata.json similarity index 100% rename from apps/openboxes-docker/metadata.json rename to output/apps/openboxes-docker/metadata.json diff --git a/apps/openboxes-docker/start.sh b/output/apps/openboxes-docker/start.sh similarity index 100% rename from apps/openboxes-docker/start.sh rename to output/apps/openboxes-docker/start.sh diff --git a/apps/openboxes-docker/test/smoke.sh b/output/apps/openboxes-docker/test/smoke.sh similarity index 100% rename from apps/openboxes-docker/test/smoke.sh rename to output/apps/openboxes-docker/test/smoke.sh diff --git a/apps/openfile/CloudronManifest.json b/output/apps/openfile/CloudronManifest.json similarity index 100% rename from apps/openfile/CloudronManifest.json rename to output/apps/openfile/CloudronManifest.json diff --git a/apps/openfile/Dockerfile b/output/apps/openfile/Dockerfile similarity index 100% rename from apps/openfile/Dockerfile rename to output/apps/openfile/Dockerfile diff --git a/apps/openfile/README.md b/output/apps/openfile/README.md similarity index 81% rename from apps/openfile/README.md rename to output/apps/openfile/README.md index 1fddd49..fa061c6 100644 --- a/apps/openfile/README.md +++ b/output/apps/openfile/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/openfile/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/openfile/` as work progresses. diff --git a/apps/openfile/app/.gitkeep b/output/apps/openfile/app/.gitkeep similarity index 100% rename from apps/openfile/app/.gitkeep rename to output/apps/openfile/app/.gitkeep diff --git a/apps/openfile/metadata.json b/output/apps/openfile/metadata.json similarity index 100% rename from apps/openfile/metadata.json rename to output/apps/openfile/metadata.json diff --git a/apps/openfile/start.sh b/output/apps/openfile/start.sh similarity index 100% rename from apps/openfile/start.sh rename to output/apps/openfile/start.sh diff --git a/apps/openfile/test/smoke.sh b/output/apps/openfile/test/smoke.sh similarity index 100% rename from apps/openfile/test/smoke.sh rename to output/apps/openfile/test/smoke.sh diff --git a/apps/payroll-engine/CloudronManifest.json b/output/apps/payroll-engine/CloudronManifest.json similarity index 100% rename from apps/payroll-engine/CloudronManifest.json rename to output/apps/payroll-engine/CloudronManifest.json diff --git a/apps/payroll-engine/Dockerfile b/output/apps/payroll-engine/Dockerfile similarity index 100% rename from apps/payroll-engine/Dockerfile rename to output/apps/payroll-engine/Dockerfile diff --git a/apps/payroll-engine/README.md b/output/apps/payroll-engine/README.md similarity index 81% rename from apps/payroll-engine/README.md rename to output/apps/payroll-engine/README.md index c664c78..2340562 100644 --- a/apps/payroll-engine/README.md +++ b/output/apps/payroll-engine/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/payroll-engine/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/payroll-engine/` as work progresses. diff --git a/apps/payroll-engine/app/.gitkeep b/output/apps/payroll-engine/app/.gitkeep similarity index 100% rename from apps/payroll-engine/app/.gitkeep rename to output/apps/payroll-engine/app/.gitkeep diff --git a/apps/payroll-engine/metadata.json b/output/apps/payroll-engine/metadata.json similarity index 100% rename from apps/payroll-engine/metadata.json rename to output/apps/payroll-engine/metadata.json diff --git a/apps/payroll-engine/start.sh b/output/apps/payroll-engine/start.sh similarity index 100% rename from apps/payroll-engine/start.sh rename to output/apps/payroll-engine/start.sh diff --git a/apps/payroll-engine/test/smoke.sh b/output/apps/payroll-engine/test/smoke.sh similarity index 100% rename from apps/payroll-engine/test/smoke.sh rename to output/apps/payroll-engine/test/smoke.sh diff --git a/apps/plmore/CloudronManifest.json b/output/apps/plmore/CloudronManifest.json similarity index 100% rename from apps/plmore/CloudronManifest.json rename to output/apps/plmore/CloudronManifest.json diff --git a/apps/plmore/Dockerfile b/output/apps/plmore/Dockerfile similarity index 100% rename from apps/plmore/Dockerfile rename to output/apps/plmore/Dockerfile diff --git a/apps/plmore/README.md b/output/apps/plmore/README.md similarity index 81% rename from apps/plmore/README.md rename to output/apps/plmore/README.md index 4d0e731..61187f9 100644 --- a/apps/plmore/README.md +++ b/output/apps/plmore/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/plmore/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/plmore/` as work progresses. diff --git a/apps/plmore/app/.gitkeep b/output/apps/plmore/app/.gitkeep similarity index 100% rename from apps/plmore/app/.gitkeep rename to output/apps/plmore/app/.gitkeep diff --git a/apps/plmore/metadata.json b/output/apps/plmore/metadata.json similarity index 100% rename from apps/plmore/metadata.json rename to output/apps/plmore/metadata.json diff --git a/apps/plmore/start.sh b/output/apps/plmore/start.sh similarity index 100% rename from apps/plmore/start.sh rename to output/apps/plmore/start.sh diff --git a/apps/plmore/test/smoke.sh b/output/apps/plmore/test/smoke.sh similarity index 100% rename from apps/plmore/test/smoke.sh rename to output/apps/plmore/test/smoke.sh diff --git a/apps/puter/CloudronManifest.json b/output/apps/puter/CloudronManifest.json similarity index 100% rename from apps/puter/CloudronManifest.json rename to output/apps/puter/CloudronManifest.json diff --git a/apps/puter/Dockerfile b/output/apps/puter/Dockerfile similarity index 100% rename from apps/puter/Dockerfile rename to output/apps/puter/Dockerfile diff --git a/apps/puter/README.md b/output/apps/puter/README.md similarity index 81% rename from apps/puter/README.md rename to output/apps/puter/README.md index 8bb7e8b..3c0bc94 100644 --- a/apps/puter/README.md +++ b/output/apps/puter/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/puter/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/puter/` as work progresses. diff --git a/apps/puter/app/.gitkeep b/output/apps/puter/app/.gitkeep similarity index 100% rename from apps/puter/app/.gitkeep rename to output/apps/puter/app/.gitkeep diff --git a/apps/puter/metadata.json b/output/apps/puter/metadata.json similarity index 100% rename from apps/puter/metadata.json rename to output/apps/puter/metadata.json diff --git a/apps/puter/start.sh b/output/apps/puter/start.sh similarity index 100% rename from apps/puter/start.sh rename to output/apps/puter/start.sh diff --git a/apps/puter/test/smoke.sh b/output/apps/puter/test/smoke.sh similarity index 100% rename from apps/puter/test/smoke.sh rename to output/apps/puter/test/smoke.sh diff --git a/apps/rathole/CloudronManifest.json b/output/apps/rathole/CloudronManifest.json similarity index 100% rename from apps/rathole/CloudronManifest.json rename to output/apps/rathole/CloudronManifest.json diff --git a/apps/rathole/Dockerfile b/output/apps/rathole/Dockerfile similarity index 100% rename from apps/rathole/Dockerfile rename to output/apps/rathole/Dockerfile diff --git a/apps/rathole/README.md b/output/apps/rathole/README.md similarity index 81% rename from apps/rathole/README.md rename to output/apps/rathole/README.md index 0e638ae..d12c846 100644 --- a/apps/rathole/README.md +++ b/output/apps/rathole/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/rathole/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/rathole/` as work progresses. diff --git a/apps/rathole/app/.gitkeep b/output/apps/rathole/app/.gitkeep similarity index 100% rename from apps/rathole/app/.gitkeep rename to output/apps/rathole/app/.gitkeep diff --git a/apps/rathole/metadata.json b/output/apps/rathole/metadata.json similarity index 100% rename from apps/rathole/metadata.json rename to output/apps/rathole/metadata.json diff --git a/apps/rathole/start.sh b/output/apps/rathole/start.sh similarity index 100% rename from apps/rathole/start.sh rename to output/apps/rathole/start.sh diff --git a/apps/rathole/test/smoke.sh b/output/apps/rathole/test/smoke.sh similarity index 100% rename from apps/rathole/test/smoke.sh rename to output/apps/rathole/test/smoke.sh diff --git a/apps/resgrid/CloudronManifest.json b/output/apps/resgrid/CloudronManifest.json similarity index 100% rename from apps/resgrid/CloudronManifest.json rename to output/apps/resgrid/CloudronManifest.json diff --git a/apps/resgrid/Dockerfile b/output/apps/resgrid/Dockerfile similarity index 100% rename from apps/resgrid/Dockerfile rename to output/apps/resgrid/Dockerfile diff --git a/apps/resgrid/README.md b/output/apps/resgrid/README.md similarity index 81% rename from apps/resgrid/README.md rename to output/apps/resgrid/README.md index 13419cc..209da6b 100644 --- a/apps/resgrid/README.md +++ b/output/apps/resgrid/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/resgrid/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/resgrid/` as work progresses. diff --git a/apps/resgrid/app/.gitkeep b/output/apps/resgrid/app/.gitkeep similarity index 100% rename from apps/resgrid/app/.gitkeep rename to output/apps/resgrid/app/.gitkeep diff --git a/apps/resgrid/metadata.json b/output/apps/resgrid/metadata.json similarity index 100% rename from apps/resgrid/metadata.json rename to output/apps/resgrid/metadata.json diff --git a/apps/resgrid/start.sh b/output/apps/resgrid/start.sh similarity index 100% rename from apps/resgrid/start.sh rename to output/apps/resgrid/start.sh diff --git a/apps/resgrid/test/smoke.sh b/output/apps/resgrid/test/smoke.sh similarity index 100% rename from apps/resgrid/test/smoke.sh rename to output/apps/resgrid/test/smoke.sh diff --git a/apps/reviewboard/CloudronManifest.json b/output/apps/reviewboard/CloudronManifest.json similarity index 100% rename from apps/reviewboard/CloudronManifest.json rename to output/apps/reviewboard/CloudronManifest.json diff --git a/apps/reviewboard/Dockerfile b/output/apps/reviewboard/Dockerfile similarity index 100% rename from apps/reviewboard/Dockerfile rename to output/apps/reviewboard/Dockerfile diff --git a/apps/reviewboard/README.md b/output/apps/reviewboard/README.md similarity index 81% rename from apps/reviewboard/README.md rename to output/apps/reviewboard/README.md index 71a4a50..2fad775 100644 --- a/apps/reviewboard/README.md +++ b/output/apps/reviewboard/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/reviewboard/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/reviewboard/` as work progresses. diff --git a/apps/reviewboard/app/.gitkeep b/output/apps/reviewboard/app/.gitkeep similarity index 100% rename from apps/reviewboard/app/.gitkeep rename to output/apps/reviewboard/app/.gitkeep diff --git a/apps/reviewboard/metadata.json b/output/apps/reviewboard/metadata.json similarity index 100% rename from apps/reviewboard/metadata.json rename to output/apps/reviewboard/metadata.json diff --git a/apps/reviewboard/start.sh b/output/apps/reviewboard/start.sh similarity index 100% rename from apps/reviewboard/start.sh rename to output/apps/reviewboard/start.sh diff --git a/apps/reviewboard/test/smoke.sh b/output/apps/reviewboard/test/smoke.sh similarity index 100% rename from apps/reviewboard/test/smoke.sh rename to output/apps/reviewboard/test/smoke.sh diff --git a/apps/rundeck/CloudronManifest.json b/output/apps/rundeck/CloudronManifest.json similarity index 100% rename from apps/rundeck/CloudronManifest.json rename to output/apps/rundeck/CloudronManifest.json diff --git a/apps/rundeck/Dockerfile b/output/apps/rundeck/Dockerfile similarity index 100% rename from apps/rundeck/Dockerfile rename to output/apps/rundeck/Dockerfile diff --git a/apps/rundeck/README.md b/output/apps/rundeck/README.md similarity index 81% rename from apps/rundeck/README.md rename to output/apps/rundeck/README.md index efc5838..82915ba 100644 --- a/apps/rundeck/README.md +++ b/output/apps/rundeck/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/rundeck/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/rundeck/` as work progresses. diff --git a/apps/rundeck/app/.gitkeep b/output/apps/rundeck/app/.gitkeep similarity index 100% rename from apps/rundeck/app/.gitkeep rename to output/apps/rundeck/app/.gitkeep diff --git a/apps/rundeck/metadata.json b/output/apps/rundeck/metadata.json similarity index 100% rename from apps/rundeck/metadata.json rename to output/apps/rundeck/metadata.json diff --git a/apps/rundeck/start.sh b/output/apps/rundeck/start.sh similarity index 100% rename from apps/rundeck/start.sh rename to output/apps/rundeck/start.sh diff --git a/apps/rundeck/test/smoke.sh b/output/apps/rundeck/test/smoke.sh similarity index 100% rename from apps/rundeck/test/smoke.sh rename to output/apps/rundeck/test/smoke.sh diff --git a/apps/runme/CloudronManifest.json b/output/apps/runme/CloudronManifest.json similarity index 100% rename from apps/runme/CloudronManifest.json rename to output/apps/runme/CloudronManifest.json diff --git a/apps/runme/Dockerfile b/output/apps/runme/Dockerfile similarity index 100% rename from apps/runme/Dockerfile rename to output/apps/runme/Dockerfile diff --git a/apps/runme/README.md b/output/apps/runme/README.md similarity index 81% rename from apps/runme/README.md rename to output/apps/runme/README.md index c25f052..7ee91ac 100644 --- a/apps/runme/README.md +++ b/output/apps/runme/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/runme/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/runme/` as work progresses. diff --git a/apps/runme/app/.gitkeep b/output/apps/runme/app/.gitkeep similarity index 100% rename from apps/runme/app/.gitkeep rename to output/apps/runme/app/.gitkeep diff --git a/apps/runme/metadata.json b/output/apps/runme/metadata.json similarity index 100% rename from apps/runme/metadata.json rename to output/apps/runme/metadata.json diff --git a/apps/runme/start.sh b/output/apps/runme/start.sh similarity index 100% rename from apps/runme/start.sh rename to output/apps/runme/start.sh diff --git a/apps/runme/test/smoke.sh b/output/apps/runme/test/smoke.sh similarity index 100% rename from apps/runme/test/smoke.sh rename to output/apps/runme/test/smoke.sh diff --git a/apps/satnogs-kaitai/CloudronManifest.json b/output/apps/satnogs-kaitai/CloudronManifest.json similarity index 100% rename from apps/satnogs-kaitai/CloudronManifest.json rename to output/apps/satnogs-kaitai/CloudronManifest.json diff --git a/apps/satnogs-kaitai/Dockerfile b/output/apps/satnogs-kaitai/Dockerfile similarity index 100% rename from apps/satnogs-kaitai/Dockerfile rename to output/apps/satnogs-kaitai/Dockerfile diff --git a/apps/satnogs-kaitai/README.md b/output/apps/satnogs-kaitai/README.md similarity index 81% rename from apps/satnogs-kaitai/README.md rename to output/apps/satnogs-kaitai/README.md index a359a48..4efefd0 100644 --- a/apps/satnogs-kaitai/README.md +++ b/output/apps/satnogs-kaitai/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/satnogs-kaitai/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/satnogs-kaitai/` as work progresses. diff --git a/apps/satnogs-kaitai/app/.gitkeep b/output/apps/satnogs-kaitai/app/.gitkeep similarity index 100% rename from apps/satnogs-kaitai/app/.gitkeep rename to output/apps/satnogs-kaitai/app/.gitkeep diff --git a/apps/satnogs-kaitai/metadata.json b/output/apps/satnogs-kaitai/metadata.json similarity index 100% rename from apps/satnogs-kaitai/metadata.json rename to output/apps/satnogs-kaitai/metadata.json diff --git a/apps/satnogs-kaitai/start.sh b/output/apps/satnogs-kaitai/start.sh similarity index 100% rename from apps/satnogs-kaitai/start.sh rename to output/apps/satnogs-kaitai/start.sh diff --git a/apps/satnogs-kaitai/test/smoke.sh b/output/apps/satnogs-kaitai/test/smoke.sh similarity index 100% rename from apps/satnogs-kaitai/test/smoke.sh rename to output/apps/satnogs-kaitai/test/smoke.sh diff --git a/apps/satnogs-webgui/CloudronManifest.json b/output/apps/satnogs-webgui/CloudronManifest.json similarity index 100% rename from apps/satnogs-webgui/CloudronManifest.json rename to output/apps/satnogs-webgui/CloudronManifest.json diff --git a/apps/satnogs-webgui/Dockerfile b/output/apps/satnogs-webgui/Dockerfile similarity index 100% rename from apps/satnogs-webgui/Dockerfile rename to output/apps/satnogs-webgui/Dockerfile diff --git a/apps/satnogs-webgui/README.md b/output/apps/satnogs-webgui/README.md similarity index 81% rename from apps/satnogs-webgui/README.md rename to output/apps/satnogs-webgui/README.md index 3bbc5ea..10ffac7 100644 --- a/apps/satnogs-webgui/README.md +++ b/output/apps/satnogs-webgui/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/satnogs-webgui/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/satnogs-webgui/` as work progresses. diff --git a/apps/satnogs-webgui/app/.gitkeep b/output/apps/satnogs-webgui/app/.gitkeep similarity index 100% rename from apps/satnogs-webgui/app/.gitkeep rename to output/apps/satnogs-webgui/app/.gitkeep diff --git a/apps/satnogs-webgui/metadata.json b/output/apps/satnogs-webgui/metadata.json similarity index 100% rename from apps/satnogs-webgui/metadata.json rename to output/apps/satnogs-webgui/metadata.json diff --git a/apps/satnogs-webgui/start.sh b/output/apps/satnogs-webgui/start.sh similarity index 100% rename from apps/satnogs-webgui/start.sh rename to output/apps/satnogs-webgui/start.sh diff --git a/apps/satnogs-webgui/test/smoke.sh b/output/apps/satnogs-webgui/test/smoke.sh similarity index 100% rename from apps/satnogs-webgui/test/smoke.sh rename to output/apps/satnogs-webgui/test/smoke.sh diff --git a/apps/sdrangel/CloudronManifest.json b/output/apps/sdrangel/CloudronManifest.json similarity index 100% rename from apps/sdrangel/CloudronManifest.json rename to output/apps/sdrangel/CloudronManifest.json diff --git a/apps/sdrangel/Dockerfile b/output/apps/sdrangel/Dockerfile similarity index 100% rename from apps/sdrangel/Dockerfile rename to output/apps/sdrangel/Dockerfile diff --git a/apps/sdrangel/README.md b/output/apps/sdrangel/README.md similarity index 81% rename from apps/sdrangel/README.md rename to output/apps/sdrangel/README.md index 2070e7c..6ce9091 100644 --- a/apps/sdrangel/README.md +++ b/output/apps/sdrangel/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/sdrangel/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/sdrangel/` as work progresses. diff --git a/apps/sdrangel/app/.gitkeep b/output/apps/sdrangel/app/.gitkeep similarity index 100% rename from apps/sdrangel/app/.gitkeep rename to output/apps/sdrangel/app/.gitkeep diff --git a/apps/sdrangel/metadata.json b/output/apps/sdrangel/metadata.json similarity index 100% rename from apps/sdrangel/metadata.json rename to output/apps/sdrangel/metadata.json diff --git a/apps/sdrangel/start.sh b/output/apps/sdrangel/start.sh similarity index 100% rename from apps/sdrangel/start.sh rename to output/apps/sdrangel/start.sh diff --git a/apps/sdrangel/test/smoke.sh b/output/apps/sdrangel/test/smoke.sh similarity index 100% rename from apps/sdrangel/test/smoke.sh rename to output/apps/sdrangel/test/smoke.sh diff --git a/apps/seatunnel/CloudronManifest.json b/output/apps/seatunnel/CloudronManifest.json similarity index 100% rename from apps/seatunnel/CloudronManifest.json rename to output/apps/seatunnel/CloudronManifest.json diff --git a/apps/seatunnel/Dockerfile b/output/apps/seatunnel/Dockerfile similarity index 100% rename from apps/seatunnel/Dockerfile rename to output/apps/seatunnel/Dockerfile diff --git a/apps/seatunnel/README.md b/output/apps/seatunnel/README.md similarity index 81% rename from apps/seatunnel/README.md rename to output/apps/seatunnel/README.md index 006cfd1..b880883 100644 --- a/apps/seatunnel/README.md +++ b/output/apps/seatunnel/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/seatunnel/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/seatunnel/` as work progresses. diff --git a/apps/seatunnel/app/.gitkeep b/output/apps/seatunnel/app/.gitkeep similarity index 100% rename from apps/seatunnel/app/.gitkeep rename to output/apps/seatunnel/app/.gitkeep diff --git a/apps/seatunnel/metadata.json b/output/apps/seatunnel/metadata.json similarity index 100% rename from apps/seatunnel/metadata.json rename to output/apps/seatunnel/metadata.json diff --git a/apps/seatunnel/start.sh b/output/apps/seatunnel/start.sh similarity index 100% rename from apps/seatunnel/start.sh rename to output/apps/seatunnel/start.sh diff --git a/apps/seatunnel/test/smoke.sh b/output/apps/seatunnel/test/smoke.sh similarity index 100% rename from apps/seatunnel/test/smoke.sh rename to output/apps/seatunnel/test/smoke.sh diff --git a/apps/signoz/CloudronManifest.json b/output/apps/signoz/CloudronManifest.json similarity index 100% rename from apps/signoz/CloudronManifest.json rename to output/apps/signoz/CloudronManifest.json diff --git a/apps/signoz/Dockerfile b/output/apps/signoz/Dockerfile similarity index 100% rename from apps/signoz/Dockerfile rename to output/apps/signoz/Dockerfile diff --git a/apps/signoz/README.md b/output/apps/signoz/README.md similarity index 81% rename from apps/signoz/README.md rename to output/apps/signoz/README.md index 0510cbc..f3f3574 100644 --- a/apps/signoz/README.md +++ b/output/apps/signoz/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/signoz/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/signoz/` as work progresses. diff --git a/apps/signoz/app/.gitkeep b/output/apps/signoz/app/.gitkeep similarity index 100% rename from apps/signoz/app/.gitkeep rename to output/apps/signoz/app/.gitkeep diff --git a/apps/signoz/metadata.json b/output/apps/signoz/metadata.json similarity index 100% rename from apps/signoz/metadata.json rename to output/apps/signoz/metadata.json diff --git a/apps/signoz/start.sh b/output/apps/signoz/start.sh similarity index 100% rename from apps/signoz/start.sh rename to output/apps/signoz/start.sh diff --git a/apps/signoz/test/smoke.sh b/output/apps/signoz/test/smoke.sh similarity index 100% rename from apps/signoz/test/smoke.sh rename to output/apps/signoz/test/smoke.sh diff --git a/apps/slurm/CloudronManifest.json b/output/apps/slurm/CloudronManifest.json similarity index 100% rename from apps/slurm/CloudronManifest.json rename to output/apps/slurm/CloudronManifest.json diff --git a/apps/slurm/Dockerfile b/output/apps/slurm/Dockerfile similarity index 100% rename from apps/slurm/Dockerfile rename to output/apps/slurm/Dockerfile diff --git a/apps/slurm/README.md b/output/apps/slurm/README.md similarity index 81% rename from apps/slurm/README.md rename to output/apps/slurm/README.md index 52fa1d0..e030eca 100644 --- a/apps/slurm/README.md +++ b/output/apps/slurm/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/slurm/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/slurm/` as work progresses. diff --git a/apps/slurm/app/.gitkeep b/output/apps/slurm/app/.gitkeep similarity index 100% rename from apps/slurm/app/.gitkeep rename to output/apps/slurm/app/.gitkeep diff --git a/apps/slurm/metadata.json b/output/apps/slurm/metadata.json similarity index 100% rename from apps/slurm/metadata.json rename to output/apps/slurm/metadata.json diff --git a/apps/slurm/start.sh b/output/apps/slurm/start.sh similarity index 100% rename from apps/slurm/start.sh rename to output/apps/slurm/start.sh diff --git a/apps/slurm/test/smoke.sh b/output/apps/slurm/test/smoke.sh similarity index 100% rename from apps/slurm/test/smoke.sh rename to output/apps/slurm/test/smoke.sh diff --git a/apps/sniperphish/CloudronManifest.json b/output/apps/sniperphish/CloudronManifest.json similarity index 100% rename from apps/sniperphish/CloudronManifest.json rename to output/apps/sniperphish/CloudronManifest.json diff --git a/apps/sniperphish/Dockerfile b/output/apps/sniperphish/Dockerfile similarity index 100% rename from apps/sniperphish/Dockerfile rename to output/apps/sniperphish/Dockerfile diff --git a/apps/sniperphish/README.md b/output/apps/sniperphish/README.md similarity index 81% rename from apps/sniperphish/README.md rename to output/apps/sniperphish/README.md index 2f8062d..4c55e2c 100644 --- a/apps/sniperphish/README.md +++ b/output/apps/sniperphish/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/sniperphish/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/sniperphish/` as work progresses. diff --git a/apps/sniperphish/app/.gitkeep b/output/apps/sniperphish/app/.gitkeep similarity index 100% rename from apps/sniperphish/app/.gitkeep rename to output/apps/sniperphish/app/.gitkeep diff --git a/apps/sniperphish/metadata.json b/output/apps/sniperphish/metadata.json similarity index 100% rename from apps/sniperphish/metadata.json rename to output/apps/sniperphish/metadata.json diff --git a/apps/sniperphish/start.sh b/output/apps/sniperphish/start.sh similarity index 100% rename from apps/sniperphish/start.sh rename to output/apps/sniperphish/start.sh diff --git a/apps/sniperphish/test/smoke.sh b/output/apps/sniperphish/test/smoke.sh similarity index 100% rename from apps/sniperphish/test/smoke.sh rename to output/apps/sniperphish/test/smoke.sh diff --git a/apps/swupdate/CloudronManifest.json b/output/apps/swupdate/CloudronManifest.json similarity index 100% rename from apps/swupdate/CloudronManifest.json rename to output/apps/swupdate/CloudronManifest.json diff --git a/apps/swupdate/Dockerfile b/output/apps/swupdate/Dockerfile similarity index 100% rename from apps/swupdate/Dockerfile rename to output/apps/swupdate/Dockerfile diff --git a/apps/swupdate/README.md b/output/apps/swupdate/README.md similarity index 81% rename from apps/swupdate/README.md rename to output/apps/swupdate/README.md index caa5d2e..86d8dbe 100644 --- a/apps/swupdate/README.md +++ b/output/apps/swupdate/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/swupdate/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/swupdate/` as work progresses. diff --git a/apps/swupdate/app/.gitkeep b/output/apps/swupdate/app/.gitkeep similarity index 100% rename from apps/swupdate/app/.gitkeep rename to output/apps/swupdate/app/.gitkeep diff --git a/apps/swupdate/metadata.json b/output/apps/swupdate/metadata.json similarity index 100% rename from apps/swupdate/metadata.json rename to output/apps/swupdate/metadata.json diff --git a/apps/swupdate/start.sh b/output/apps/swupdate/start.sh similarity index 100% rename from apps/swupdate/start.sh rename to output/apps/swupdate/start.sh diff --git a/apps/swupdate/test/smoke.sh b/output/apps/swupdate/test/smoke.sh similarity index 100% rename from apps/swupdate/test/smoke.sh rename to output/apps/swupdate/test/smoke.sh diff --git a/apps/tak-server/CloudronManifest.json b/output/apps/tak-server/CloudronManifest.json similarity index 100% rename from apps/tak-server/CloudronManifest.json rename to output/apps/tak-server/CloudronManifest.json diff --git a/apps/tak-server/Dockerfile b/output/apps/tak-server/Dockerfile similarity index 100% rename from apps/tak-server/Dockerfile rename to output/apps/tak-server/Dockerfile diff --git a/apps/tak-server/README.md b/output/apps/tak-server/README.md similarity index 81% rename from apps/tak-server/README.md rename to output/apps/tak-server/README.md index 766bef3..983bf6f 100644 --- a/apps/tak-server/README.md +++ b/output/apps/tak-server/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/tak-server/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/tak-server/` as work progresses. diff --git a/apps/tak-server/app/.gitkeep b/output/apps/tak-server/app/.gitkeep similarity index 100% rename from apps/tak-server/app/.gitkeep rename to output/apps/tak-server/app/.gitkeep diff --git a/apps/tak-server/metadata.json b/output/apps/tak-server/metadata.json similarity index 100% rename from apps/tak-server/metadata.json rename to output/apps/tak-server/metadata.json diff --git a/apps/tak-server/start.sh b/output/apps/tak-server/start.sh similarity index 100% rename from apps/tak-server/start.sh rename to output/apps/tak-server/start.sh diff --git a/apps/tak-server/test/smoke.sh b/output/apps/tak-server/test/smoke.sh similarity index 100% rename from apps/tak-server/test/smoke.sh rename to output/apps/tak-server/test/smoke.sh diff --git a/apps/target-goalert/CloudronManifest.json b/output/apps/target-goalert/CloudronManifest.json similarity index 100% rename from apps/target-goalert/CloudronManifest.json rename to output/apps/target-goalert/CloudronManifest.json diff --git a/apps/target-goalert/Dockerfile b/output/apps/target-goalert/Dockerfile similarity index 100% rename from apps/target-goalert/Dockerfile rename to output/apps/target-goalert/Dockerfile diff --git a/apps/target-goalert/README.md b/output/apps/target-goalert/README.md similarity index 81% rename from apps/target-goalert/README.md rename to output/apps/target-goalert/README.md index 99b19e0..282c8b2 100644 --- a/apps/target-goalert/README.md +++ b/output/apps/target-goalert/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/target-goalert/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/target-goalert/` as work progresses. diff --git a/apps/target-goalert/app/.gitkeep b/output/apps/target-goalert/app/.gitkeep similarity index 100% rename from apps/target-goalert/app/.gitkeep rename to output/apps/target-goalert/app/.gitkeep diff --git a/apps/target-goalert/metadata.json b/output/apps/target-goalert/metadata.json similarity index 100% rename from apps/target-goalert/metadata.json rename to output/apps/target-goalert/metadata.json diff --git a/apps/target-goalert/start.sh b/output/apps/target-goalert/start.sh similarity index 100% rename from apps/target-goalert/start.sh rename to output/apps/target-goalert/start.sh diff --git a/apps/target-goalert/test/smoke.sh b/output/apps/target-goalert/test/smoke.sh similarity index 100% rename from apps/target-goalert/test/smoke.sh rename to output/apps/target-goalert/test/smoke.sh diff --git a/apps/warp/CloudronManifest.json b/output/apps/warp/CloudronManifest.json similarity index 100% rename from apps/warp/CloudronManifest.json rename to output/apps/warp/CloudronManifest.json diff --git a/apps/warp/Dockerfile b/output/apps/warp/Dockerfile similarity index 100% rename from apps/warp/Dockerfile rename to output/apps/warp/Dockerfile diff --git a/apps/warp/README.md b/output/apps/warp/README.md similarity index 81% rename from apps/warp/README.md rename to output/apps/warp/README.md index 0cbcc7e..0ed3dbf 100644 --- a/apps/warp/README.md +++ b/output/apps/warp/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/warp/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/warp/` as work progresses. diff --git a/apps/warp/app/.gitkeep b/output/apps/warp/app/.gitkeep similarity index 100% rename from apps/warp/app/.gitkeep rename to output/apps/warp/app/.gitkeep diff --git a/apps/warp/metadata.json b/output/apps/warp/metadata.json similarity index 100% rename from apps/warp/metadata.json rename to output/apps/warp/metadata.json diff --git a/apps/warp/start.sh b/output/apps/warp/start.sh similarity index 100% rename from apps/warp/start.sh rename to output/apps/warp/start.sh diff --git a/apps/warp/test/smoke.sh b/output/apps/warp/test/smoke.sh similarity index 100% rename from apps/warp/test/smoke.sh rename to output/apps/warp/test/smoke.sh diff --git a/apps/windmill/CloudronManifest.json b/output/apps/windmill/CloudronManifest.json similarity index 100% rename from apps/windmill/CloudronManifest.json rename to output/apps/windmill/CloudronManifest.json diff --git a/apps/windmill/Dockerfile b/output/apps/windmill/Dockerfile similarity index 100% rename from apps/windmill/Dockerfile rename to output/apps/windmill/Dockerfile diff --git a/apps/windmill/README.md b/output/apps/windmill/README.md similarity index 81% rename from apps/windmill/README.md rename to output/apps/windmill/README.md index e6611c0..afd2c39 100644 --- a/apps/windmill/README.md +++ b/output/apps/windmill/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/windmill/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/windmill/` as work progresses. diff --git a/apps/windmill/app/.gitkeep b/output/apps/windmill/app/.gitkeep similarity index 100% rename from apps/windmill/app/.gitkeep rename to output/apps/windmill/app/.gitkeep diff --git a/apps/windmill/metadata.json b/output/apps/windmill/metadata.json similarity index 100% rename from apps/windmill/metadata.json rename to output/apps/windmill/metadata.json diff --git a/apps/windmill/start.sh b/output/apps/windmill/start.sh similarity index 100% rename from apps/windmill/start.sh rename to output/apps/windmill/start.sh diff --git a/apps/windmill/test/smoke.sh b/output/apps/windmill/test/smoke.sh similarity index 100% rename from apps/windmill/test/smoke.sh rename to output/apps/windmill/test/smoke.sh diff --git a/apps/wireflow/CloudronManifest.json b/output/apps/wireflow/CloudronManifest.json similarity index 100% rename from apps/wireflow/CloudronManifest.json rename to output/apps/wireflow/CloudronManifest.json diff --git a/apps/wireflow/Dockerfile b/output/apps/wireflow/Dockerfile similarity index 100% rename from apps/wireflow/Dockerfile rename to output/apps/wireflow/Dockerfile diff --git a/apps/wireflow/README.md b/output/apps/wireflow/README.md similarity index 81% rename from apps/wireflow/README.md rename to output/apps/wireflow/README.md index f80f82e..d5e8cb0 100644 --- a/apps/wireflow/README.md +++ b/output/apps/wireflow/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/wireflow/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/wireflow/` as work progresses. diff --git a/apps/wireflow/app/.gitkeep b/output/apps/wireflow/app/.gitkeep similarity index 100% rename from apps/wireflow/app/.gitkeep rename to output/apps/wireflow/app/.gitkeep diff --git a/apps/wireflow/metadata.json b/output/apps/wireflow/metadata.json similarity index 100% rename from apps/wireflow/metadata.json rename to output/apps/wireflow/metadata.json diff --git a/apps/wireflow/start.sh b/output/apps/wireflow/start.sh similarity index 100% rename from apps/wireflow/start.sh rename to output/apps/wireflow/start.sh diff --git a/apps/wireflow/test/smoke.sh b/output/apps/wireflow/test/smoke.sh similarity index 100% rename from apps/wireflow/test/smoke.sh rename to output/apps/wireflow/test/smoke.sh diff --git a/apps/wireviz-web/CloudronManifest.json b/output/apps/wireviz-web/CloudronManifest.json similarity index 100% rename from apps/wireviz-web/CloudronManifest.json rename to output/apps/wireviz-web/CloudronManifest.json diff --git a/apps/wireviz-web/Dockerfile b/output/apps/wireviz-web/Dockerfile similarity index 100% rename from apps/wireviz-web/Dockerfile rename to output/apps/wireviz-web/Dockerfile diff --git a/apps/wireviz-web/README.md b/output/apps/wireviz-web/README.md similarity index 81% rename from apps/wireviz-web/README.md rename to output/apps/wireviz-web/README.md index 01a18ca..f4191e6 100644 --- a/apps/wireviz-web/README.md +++ b/output/apps/wireviz-web/README.md @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/wireviz-web/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/wireviz-web/` as work progresses. diff --git a/apps/wireviz-web/app/.gitkeep b/output/apps/wireviz-web/app/.gitkeep similarity index 100% rename from apps/wireviz-web/app/.gitkeep rename to output/apps/wireviz-web/app/.gitkeep diff --git a/apps/wireviz-web/metadata.json b/output/apps/wireviz-web/metadata.json similarity index 100% rename from apps/wireviz-web/metadata.json rename to output/apps/wireviz-web/metadata.json diff --git a/apps/wireviz-web/start.sh b/output/apps/wireviz-web/start.sh similarity index 100% rename from apps/wireviz-web/start.sh rename to output/apps/wireviz-web/start.sh diff --git a/apps/wireviz-web/test/smoke.sh b/output/apps/wireviz-web/test/smoke.sh similarity index 100% rename from apps/wireviz-web/test/smoke.sh rename to output/apps/wireviz-web/test/smoke.sh diff --git a/docker/ci-runner/Dockerfile b/output/docker/ci-runner/Dockerfile similarity index 100% rename from docker/ci-runner/Dockerfile rename to output/docker/ci-runner/Dockerfile diff --git a/docker/devtools/Dockerfile b/output/docker/devtools/Dockerfile similarity index 100% rename from docker/devtools/Dockerfile rename to output/docker/devtools/Dockerfile diff --git a/docker/devtools/requirements.txt b/output/docker/devtools/requirements.txt similarity index 100% rename from docker/devtools/requirements.txt rename to output/docker/devtools/requirements.txt diff --git a/docker/packager/Dockerfile b/output/docker/packager/Dockerfile similarity index 100% rename from docker/packager/Dockerfile rename to output/docker/packager/Dockerfile diff --git a/docs/APP_STATUS.md b/output/docs/APP_STATUS.md similarity index 100% rename from docs/APP_STATUS.md rename to output/docs/APP_STATUS.md diff --git a/docs/CI_CD_GITEA.md b/output/docs/CI_CD_GITEA.md similarity index 68% rename from docs/CI_CD_GITEA.md rename to output/docs/CI_CD_GITEA.md index 767c0cf..8afaec1 100644 --- a/docs/CI_CD_GITEA.md +++ b/output/docs/CI_CD_GITEA.md @@ -1,6 +1,6 @@ # Gitea CI/CD and Registry Integration -This project uses the Gitea Actions runner and the built-in container registry hosted at `https://git.knownelement.com`. The workflow definition lives under `.gitea/workflows/ci.yml` and targets the Gitea Actions runtime (1.21+) alongside the built-in container registry available on current releases. The workflow is currently configured for manual `workflow_dispatch` runs so all routine testing stays on the local harness until a runner is available. citeturn0search0turn1search0 +This project uses the Gitea Actions runner and the built-in container registry hosted at `https://git.knownelement.com`. The workflow definition lives under `output/.gitea/workflows/ci.yml` and targets the Gitea Actions runtime (1.21+) alongside the built-in container registry available on current releases. The workflow is currently configured for manual `workflow_dispatch` runs so all routine testing stays on the local harness until a runner is available. citeturn0search0turn1search0 ## Prerequisites @@ -17,8 +17,8 @@ This project uses the Gitea Actions runner and the built-in container registry h The manual `workflow_dispatch` job builds the CI image and then executes the same commands you run locally via: ```bash -./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict -./run/dev.sh python scripts/generate_status.py --preserve-timestamp +./output/run/dev.sh python output/scripts/lint_repo.py --slug apache-apisix --strict +./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp ``` > Re-enable push/PR triggers once a runner is available and the commands above consistently succeed. @@ -28,10 +28,10 @@ The manual `workflow_dispatch` job builds the CI image and then executes the sam - Tag Cloudron packages against the registry namespace, e.g. `git.knownelement.com/knel/cloudron/apache-apisix:`. - Build and push images directly via Docker: ```bash - docker build -t git.knownelement.com/knel/cloudron-packager docker/packager + docker build -t git.knownelement.com/knel/cloudron-packager output/docker/packager docker push git.knownelement.com/knel/cloudron-packager ``` -- Cloudron’s CLI can push directly to the registry once you log in within the packager shell (`./run/packager.sh`). +- Cloudron’s CLI can push directly to the registry once you log in within the packager shell (`./output/run/packager.sh`). ## Future enhancements diff --git a/output/docs/LOCAL_TESTING.md b/output/docs/LOCAL_TESTING.md new file mode 100644 index 0000000..acd94e2 --- /dev/null +++ b/output/docs/LOCAL_TESTING.md @@ -0,0 +1,20 @@ +# Local Test Harness + +All verification runs through the wrapper scripts under `output/run/`, ensuring every command executes in Docker. + +## Devtools checks + +Use `./output/run/dev.sh` for linting and documentation updates: + +```bash +./output/run/dev.sh python output/scripts/lint_repo.py --slug apache-apisix --strict +./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp +``` + +## Packaging shell + +Invoke `./output/run/packager.sh` (optionally with `BUILD=1`) when you need the Cloudron CLI to build, install, or push packages. + +## CI parity + +The Gitea workflow calls the same commands via the devtools image. To mimic it locally, run the lint/status commands above followed by any smoke tests inside the packager shell. diff --git a/docs/PACKAGING_GUIDE.md b/output/docs/PACKAGING_GUIDE.md similarity index 65% rename from docs/PACKAGING_GUIDE.md rename to output/docs/PACKAGING_GUIDE.md index 3da1dd9..a0b9233 100644 --- a/docs/PACKAGING_GUIDE.md +++ b/output/docs/PACKAGING_GUIDE.md @@ -6,13 +6,13 @@ This repository standardises the workflow for building and maintaining Cloudron 1. Build or refresh the devtools image when dependencies change: ```bash - ./run/dev.sh python --version + ./output/run/dev.sh python --version ``` 2. Enter an interactive devtools shell so every command runs inside Docker: ```bash - ./run/dev.sh bash --login + ./output/run/dev.sh bash --login ``` -3. Implement application-specific build steps in `apps//Dockerfile` and configure runtime behaviour through `start.sh`. +3. Implement application-specific build steps in `output/apps//Dockerfile` and configure runtime behaviour through `start.sh`. 4. Update `CloudronManifest.json` with accurate metadata, addons, ports, and health checks. 5. Build and test using the devtools shell or one-off wrappers. 6. Push new images via the Cloudron packager shell when smoke tests pass. @@ -30,7 +30,7 @@ This repository standardises the workflow for building and maintaining Cloudron Run lint checks entirely through the devtools wrapper: ```bash -./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict +./output/run/dev.sh python output/scripts/lint_repo.py --slug apache-apisix --strict ``` Add `--base-prefix` if you intentionally change the final base image prefix. @@ -40,22 +40,22 @@ Add `--base-prefix` if you intentionally change the final base image prefix. Interactive session (recommended while iterating): ```bash -./run/dev.sh bash --login +./output/run/dev.sh bash --login # inside the container -python scripts/new_app.py --slug apache-apisix -python scripts/new_app.py --force -python scripts/lint_repo.py --slug apache-apisix --strict -python scripts/generate_status.py --preserve-timestamp +python output/scripts/new_app.py --slug apache-apisix +python output/scripts/new_app.py --force +python output/scripts/lint_repo.py --slug apache-apisix --strict +python output/scripts/generate_status.py --preserve-timestamp ``` Non-interactive equivalents: ```bash -./run/dev.sh python scripts/new_app.py --slug apache-apisix -./run/dev.sh python scripts/new_app.py --force -./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict -./run/dev.sh python scripts/generate_status.py --preserve-timestamp +./output/run/dev.sh python output/scripts/new_app.py --slug apache-apisix +./output/run/dev.sh python output/scripts/new_app.py --force +./output/run/dev.sh python output/scripts/lint_repo.py --slug apache-apisix --strict +./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp ``` ## Using the packager container @@ -63,18 +63,18 @@ Non-interactive equivalents: Open the Cloudron packaging environment via: ```bash -./run/packager.sh +./output/run/packager.sh ``` -Pass `BUILD=1` to rebuild the image before launching (`BUILD=1 ./run/packager.sh`). Use this shell for `cloudron build`, `cloudron install`, and `cloudron push` operations. +Pass `BUILD=1` to rebuild the image before launching (`BUILD=1 ./output/run/packager.sh`). Use this shell for `cloudron build`, `cloudron install`, and `cloudron push` operations. ## Adding a new application Generate scaffolds with the devtools wrapper: ```bash -./run/dev.sh python scripts/new_app.py --force # regenerate entire catalog -./run/dev.sh python scripts/new_app.py --slug apache-apisix +./output/run/dev.sh python output/scripts/new_app.py --force # regenerate entire catalog +./output/run/dev.sh python output/scripts/new_app.py --slug apache-apisix ``` Each scaffold contains: @@ -90,6 +90,6 @@ Update these files with app-specific details, add artefacts under `app/`, and co ## Repository etiquette -- Document design decisions and manual steps in `docs/` or the per-app README. +- Document design decisions and manual steps in `output/docs/` or the per-app README. - Keep automation scripts idempotent; rerunning them should not damage uncommitted work. - Use semantic versioning in manifest files (`MAJOR.MINOR.PATCH`). diff --git a/docs/PRIORITY_MILESTONES.md b/output/docs/PRIORITY_MILESTONES.md similarity index 92% rename from docs/PRIORITY_MILESTONES.md rename to output/docs/PRIORITY_MILESTONES.md index 238f673..c5a9a41 100644 --- a/docs/PRIORITY_MILESTONES.md +++ b/output/docs/PRIORITY_MILESTONES.md @@ -44,6 +44,6 @@ _Target date references assume today is 2025-10-02._ ## 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. citeturn0search1 -- Use `make lint` and `make status` gates in CI to enforce placeholder removal before PRs merge. -- Capture app-specific ADRs under `docs/apps//ADR-0001.md` as work begins. +- Use `./output/run/dev.sh python output/scripts/lint_repo.py --strict` and `./output/run/dev.sh python output/scripts/generate_status.py --preserve-timestamp` as CI gates to catch placeholder regressions before PRs merge. +- Capture app-specific ADRs under `output/docs/apps//ADR-0001.md` as work begins. diff --git a/output/run/dev.sh b/output/run/dev.sh new file mode 100755 index 0000000..7e77e29 --- /dev/null +++ b/output/run/dev.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +OUTPUT_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)" +REPO_ROOT="$(cd "${OUTPUT_ROOT}/.." && pwd)" +IMAGE_NAME="knel/cloudron-devtools" + +if ! docker image inspect "${IMAGE_NAME}" >/dev/null 2>&1; then + echo "Devtools image '${IMAGE_NAME}' not found. Building..." + docker build -t "${IMAGE_NAME}" -f "${OUTPUT_ROOT}/docker/devtools/Dockerfile" "${OUTPUT_ROOT}" +fi + +DOCKER_ARGS=("--rm" "-i" "-v" "${REPO_ROOT}:/workspace" "-v" "/var/run/docker.sock:/var/run/docker.sock" "-w" "/workspace") +if [ -t 1 ]; then + DOCKER_ARGS+=("-t") +fi + +docker run "${DOCKER_ARGS[@]}" "${IMAGE_NAME}" "$@" diff --git a/output/run/packager.sh b/output/run/packager.sh new file mode 100755 index 0000000..f5dadf8 --- /dev/null +++ b/output/run/packager.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +OUTPUT_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)" +REPO_ROOT="$(cd "${OUTPUT_ROOT}/.." && pwd)" +IMAGE_NAME="knel/cloudron-packager" + +if [[ "${BUILD:-0}" == "1" ]] || ! docker image inspect "${IMAGE_NAME}" >/dev/null 2>&1; then + echo "Packager image '${IMAGE_NAME}' not found or BUILD=1. Building..." + docker build -t "${IMAGE_NAME}" "${OUTPUT_ROOT}/docker/packager" +fi + +DOCKER_ARGS=("--rm" "-i" "-v" "${REPO_ROOT}:/workspace" "-v" "/var/run/docker.sock:/var/run/docker.sock" "-w" "/workspace" "-e" "HOME=/home/cloudron") +if [ -t 1 ]; then + DOCKER_ARGS+=("-t") +fi + +docker run "${DOCKER_ARGS[@]}" "${IMAGE_NAME}" bash diff --git a/schema/cloudron-manifest.schema.json b/output/schema/cloudron-manifest.schema.json similarity index 100% rename from schema/cloudron-manifest.schema.json rename to output/schema/cloudron-manifest.schema.json diff --git a/scripts/generate_status.py b/output/scripts/generate_status.py similarity index 96% rename from scripts/generate_status.py rename to output/scripts/generate_status.py index 2efa844..f54ef40 100755 --- a/scripts/generate_status.py +++ b/output/scripts/generate_status.py @@ -9,6 +9,7 @@ from datetime import datetime from typing import Dict, List ROOT = pathlib.Path(__file__).resolve().parents[1] +REPO_ROOT = ROOT.parent def load_catalog() -> List[Dict[str, str]]: @@ -53,7 +54,7 @@ def render_table(rows: List[Dict[str, str]]) -> str: def parse_args() -> argparse.Namespace: - parser = argparse.ArgumentParser(description="Generate docs/APP_STATUS.md") + parser = argparse.ArgumentParser(description="Generate output/docs/APP_STATUS.md") parser.add_argument( "--preserve-timestamp", action="store_true", diff --git a/scripts/lint_repo.py b/output/scripts/lint_repo.py similarity index 94% rename from scripts/lint_repo.py rename to output/scripts/lint_repo.py index d8c563f..d55e27f 100755 --- a/scripts/lint_repo.py +++ b/output/scripts/lint_repo.py @@ -15,11 +15,12 @@ try: import jsonschema except ModuleNotFoundError as exc: # pragma: no cover - guidance for local execution raise SystemExit( - "jsonschema is required. Run this script through './run/dev.sh python scripts/lint_repo.py ...' so dependencies come from the devtools container." + "jsonschema is required. Run this script through './output/run/dev.sh python output/scripts/lint_repo.py ...' so dependencies come from the devtools container." ) from exc -ROOT = pathlib.Path(__file__).resolve().parents[1] -SCHEMA_PATH = ROOT / "schema" / "cloudron-manifest.schema.json" +OUTPUT_ROOT = pathlib.Path(__file__).resolve().parents[1] +REPO_ROOT = OUTPUT_ROOT.parent +SCHEMA_PATH = OUTPUT_ROOT / "schema" / "cloudron-manifest.schema.json" DEFAULT_BASE_IMAGE_PREFIX = "cloudron/base" @@ -47,6 +48,8 @@ def resolve_slugs_from_paths(paths: Sequence[str]) -> List[str]: parts = pathlib.PurePosixPath(path).parts if len(parts) >= 2 and parts[0] == "apps": slugs.add(parts[1]) + elif len(parts) >= 3 and parts[0] == "output" and parts[1] == "apps": + slugs.add(parts[2]) return sorted(slugs) @@ -55,7 +58,7 @@ def collect_paths_from_git(diff_target: str) -> List[str]: return [] result = subprocess.run( ["git", "diff", "--name-only", diff_target], - cwd=ROOT, + cwd=REPO_ROOT, check=False, capture_output=True, text=True, @@ -206,7 +209,7 @@ def select_slugs(apps_dir: pathlib.Path, args: argparse.Namespace) -> List[str]: def main() -> None: args = parse_args() - apps_dir = ROOT / "apps" + apps_dir = OUTPUT_ROOT / "apps" schema = load_schema() slugs = select_slugs(apps_dir, args) diff --git a/scripts/new_app.py b/output/scripts/new_app.py similarity index 96% rename from scripts/new_app.py rename to output/scripts/new_app.py index 3cac674..c3fad93 100755 --- a/scripts/new_app.py +++ b/output/scripts/new_app.py @@ -10,10 +10,11 @@ try: import jinja2 except ModuleNotFoundError as exc: # pragma: no cover - guidance for local execution raise SystemExit( - "Jinja2 is required. Run this script via './run/dev.sh python scripts/new_app.py ...' so dependencies are provided by the devtools container." + "Jinja2 is required. Run this script via './output/run/dev.sh python output/scripts/new_app.py ...' so dependencies are provided by the devtools container." ) from exc ROOT = pathlib.Path(__file__).resolve().parents[1] +REPO_ROOT = ROOT.parent DEFAULT_BASE_IMAGE = "cloudron/base:5.0.0" DEFAULT_BUILDER_IMAGE = "cloudron/base:5.0.0" diff --git a/templates/cloudron-app/CloudronManifest.json.j2 b/output/templates/cloudron-app/CloudronManifest.json.j2 similarity index 100% rename from templates/cloudron-app/CloudronManifest.json.j2 rename to output/templates/cloudron-app/CloudronManifest.json.j2 diff --git a/templates/cloudron-app/Dockerfile.j2 b/output/templates/cloudron-app/Dockerfile.j2 similarity index 100% rename from templates/cloudron-app/Dockerfile.j2 rename to output/templates/cloudron-app/Dockerfile.j2 diff --git a/templates/cloudron-app/README.md.j2 b/output/templates/cloudron-app/README.md.j2 similarity index 80% rename from templates/cloudron-app/README.md.j2 rename to output/templates/cloudron-app/README.md.j2 index dd5fdea..0cb04f5 100644 --- a/templates/cloudron-app/README.md.j2 +++ b/output/templates/cloudron-app/README.md.j2 @@ -16,5 +16,5 @@ ## Notes - Populate the `app/` directory with runtime overlays or artifacts generated during the build stage. -- Use the shared packaging container (`docker/packager`) for `cloudron build/install` to keep the host clean. -- Record decisions and operational requirements under `docs/apps/{{ app_slug }}/` as work progresses. +- Use the shared packaging container (`output/docker/packager`) for `cloudron build/install` to keep the host clean. +- Record decisions and operational requirements under `output/docs/apps/{{ app_slug }}/` as work progresses. diff --git a/templates/cloudron-app/app/.gitkeep b/output/templates/cloudron-app/app/.gitkeep similarity index 100% rename from templates/cloudron-app/app/.gitkeep rename to output/templates/cloudron-app/app/.gitkeep diff --git a/templates/cloudron-app/metadata.json.j2 b/output/templates/cloudron-app/metadata.json.j2 similarity index 100% rename from templates/cloudron-app/metadata.json.j2 rename to output/templates/cloudron-app/metadata.json.j2 diff --git a/templates/cloudron-app/start.sh.j2 b/output/templates/cloudron-app/start.sh.j2 similarity index 100% rename from templates/cloudron-app/start.sh.j2 rename to output/templates/cloudron-app/start.sh.j2 diff --git a/templates/cloudron-app/test/smoke.sh.j2 b/output/templates/cloudron-app/test/smoke.sh.j2 similarity index 100% rename from templates/cloudron-app/test/smoke.sh.j2 rename to output/templates/cloudron-app/test/smoke.sh.j2 diff --git a/run/dev.sh b/run/dev.sh deleted file mode 100755 index cb859ff..0000000 --- a/run/dev.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -set -euo pipefail -IMAGE_NAME="knel/cloudron-devtools" -if ! docker image inspect "${IMAGE_NAME}" >/dev/null 2>&1; then - echo "Devtools image '${IMAGE_NAME}' not found. Building..." - docker build -t "${IMAGE_NAME}" -f docker/devtools/Dockerfile . -fi -docker run --rm -it -v "$PWD:/workspace" -v "/var/run/docker.sock:/var/run/docker.sock" -w /workspace "${IMAGE_NAME}" "$@" diff --git a/run/packager.sh b/run/packager.sh deleted file mode 100755 index 83751c7..0000000 --- a/run/packager.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -set -euo pipefail -IMAGE_NAME="knel/cloudron-packager" -if [[ "${BUILD:-0}" == "1" ]] || ! docker image inspect "${IMAGE_NAME}" >/dev/null 2>&1; then - echo "Packager image '${IMAGE_NAME}' not found or BUILD=1. Building..." - docker build -t "${IMAGE_NAME}" docker/packager -fi -docker run --rm -it -v "$PWD:/workspace" -v "/var/run/docker.sock:/var/run/docker.sock" -w /workspace -e "HOME=/home/cloudron" "${IMAGE_NAME}" bash