Handbook
Fleet Apps publishing
Use this checklist before publishing a FAEP package to fleet.forgesdlc.com.
Updated
Prerequisites
- Package built with
scripts/build-fleet-app.shin the app repo. fleet-app.page.mdfrontmatter matchesfleet-app-manifest.schema.json.ui/app.ui.jsonvalidates againstfleet-app-ui-v1.schema.json.- Ship
RELEASE-NOTES.mdat the zip root (markdown for the published version only). The publish script copies it intocatalog.jsonasrelease_notesand Fleet stores it on install for the admin About fly-out.
Publish (forge-fleet-website)
From forge-fleet-website:
./scripts/publish-fleet-app.sh \
--package /path/to/app/dist/forge-cdp-manager-0.2.0.fleet-app.zip
App repos may ship a thin wrapper, e.g. forge-cdp-manager/scripts/publish-fleet-app.sh --deploy, which builds then calls this script.
Manifest version is stamped from pyproject.toml at build time; validate-fleet-app-package.py checks wheel semver matches manifest.
With deploy:
./scripts/publish-fleet-app.sh \
--package /path/to/app/dist/forge-cdp-manager-0.2.0.fleet-app.zip \
--deploy
The script:
- Validates the zip layout and schemas.
- Copies the zip to
website/packages/. - Updates
forge-fleet/docs/apps/{id}/page.mdandcatalog/catalog.jsonin the submodule (one row per app id — older versions are removed from the catalog index). - Runs
python3 generator/build-site.py. - Optionally deploys Firebase hosting.
Git workflow
- Commit catalog + handbook changes in
forge-fleet. - Bump
forge-fleetsubmodule pointer inforge-fleet-website. - Commit built
website/output inforge-fleet-website.
Verify
https://fleet.forgesdlc.com/catalog/catalog.jsonlists the app with correctsha256.- Handbook page renders at the
handbook_pageslug. - Zip downloads from
download_url. - Running Fleet can
POST /v1/fleet-apps/installsuccessfully.