floo releases promote creates the GitHub release for you when a repo is connected.
list
List releases for an app.Flags
JSON output
show
Show details for a specific release (tag, commit, promoted by, deploy ID, image digest).Flags
JSON output
promote
Promote the latest live dev deploy to production. Creates a GitHub release if GitHub is connected. The API accepts the promote and runs it in the background; the command returns the tag and release URL, andfloo deploys list --app my-app shows the prod deploy as it progresses.
What happens during promote
- Image selection. Promote deploys the images from the latest live dev deploy. It rebuilds only when the prod environment has a build-time env var (
VITE_*,NEXT_PUBLIC_*, orREACT_APP_*); then each service is built again from the source deploy’s archived source with the prod values as build arguments. - Migrations. For each service with a
migrate_commandinfloo.app.toml, the command runs as a one-off job with prod env vars. On a promote that reuses the dev images, migrations run before any prod revision changes, and a failure marks the deploy FAILED and leaves production traffic where it was. On a promote that rebuilds because prod has build-time env vars, a migration failure is logged and the rollout continues.floo redeploy --skip-migrationshas no effect on promote. See Run migrations throughmigrate_command. - Routes. The shared app host (
{app}.on.getfloo.com) and per-service hosts ({app}-{svc}.on.getfloo.com) are upserted, so stale routes from before a service rename are corrected. - Access grants. The gateway is granted invoke access on public services, and the app identity on internal services.
Flags
Examples
JSON output
release_url is empty when no GitHub repo is connected.
rollback
Roll back to a previous live deploy by re-pointing gateway routes at its image: no rebuild. This is the release-scoped equivalent offloo deploys rollback.
Flags
Rollback is tier-2 destructive: interactive mode prompts
y/N; non-interactive runs require --yes.