I am confused as to the correct process for:
- app creation|update
- Whether an app must exist on the service before I can deploy it
There appear to be several similar commands for this flow: flyctl app create
, flyctl init
and flyctl launch
I think, once I have an ‘app’ (see below), I can generally flyctl deploy
(that’s clear).
However, my desired (!?) flow is:
- Create a
./fly.toml
flyctl deploy
But, experience suggests that, if there’s no equivalently named app on the service, e.g. flyctl deploy
fails.
Can I start with no (!) deployed apps, write an ./fly.toml
and issue a flyctl
to create a new app?
My workaround flow is:
flyctl launch --image=${IMAGE}
- Update
./fly.toml
with desired spec flyctl deploy
After successfully deploying, if I delete the app (e.g. flyctl destroy
or flyctl apps destroy
) and then redeploy:
Deploying ${APP}
==> Validating app configuration
Error not possible to validate configuration: server returned Could not resolve App
I expect this to succeed.
On other platforms (Kubernetes, GCP, DO, Linode etc.), it’s generally possible to start by spec’ing an app (manifest) and then deploying it to a service.