I have several projects hosted on Fly in different organizations. I received an email alert for some of the projects where both the staging and production machines were migrated successfully to v2. I have one app where the production machine shows on V2 but the staging shows it is on the detached platform (with status suspended).
With remix blues stack, the preferred deployment method involves github actions with commits originating in the dev branch of my repo. Upon successfully building and deploying to staging, with the ability to ensure that the deploy had the intended outcome, dev can be folded back into the main branch.
Presently my dev branch builds without any issue locally, and the github actions succeed, with the exception of the last step (deploy). Here’s a snippet of the deploy job failure message:
==> Verifying app config
8 → Verified app config
9Validating /github/workspace/fly.toml
10Platform: machines
11✓ Configuration is valid
12==> Building image
13Searching for image ‘registry.fly.io/pipeline-blues-stack-a5eb:dev-8ca1c154e342680a33b8efe3b709371f3cf73f86’ remotely…
14image found: img_nr0lpjdeo1qp5q98
16Watch your app at Sign In · Fly
18Running pipeline-blues-stack-a5eb-staging release_command: bash ./scripts/migrate.sh
19 Created release_command machine e286565da94398
20 Waiting for e286565da94398 to have state: started
21 Waiting for e286565da94398 to get exit event
22 release_command e286565da94398 completed successfully
23 [1/1] Updating e784e046f4d138 [app]
24Updating existing machines in ‘pipeline-blues-stack-a5eb-staging’ with rolling strategy
25 [1/1] Waiting for e784e046f4d138 [app] to have state: started
26 Machine e784e046f4d138 [app] has state: started
27 [1/1] Checking that e784e046f4d138 [app] is up and running
28 [1/1] Waiting for e784e046f4d138 [app] to become healthy: 0/2
30WARNING The app is not listening on the expected address and will not be reachable by fly-proxy.
31You can fix this by configuring your app to listen on the following addresses:
32 - 0.0.0.0:8080
33Found these processes inside the machine with open listening sockets:
34 PROCESS | ADDRESSES
35-----------------*---------------------------------------
36 /.fly/hallpass | [fdaa:0:59bb:a7b:137:5bb0:c8f4:2]:22
38Error: timeout reached waiting for healthchecks to pass for machine e784e046f4d138 failed to get VM e784e046f4d138: Get “https://api.machines.dev/v1/apps/pipeline-blues-stack-a5eb-staging/machines/e784e046f4d138”: net/http: request canceled
I have checked and compared my fly toml with two other blues-stack projects that migrated fully to v2 (both staging and production machines) and I noticed in the fly dashboard that the staging app has not migrated to v2. I get this result in the console:
fly status --all --app pipeline-blues-stack-a5eb-staging
App
Name = pipeline-blues-stack-a5eb-staging
Owner = agency-pipeline
Version = 54
Status = suspended
Hostname = pipeline-blues-stack-a5eb-staging.fly.dev
Platform = detached
fly migrate-to-v2
Error: the app ‘pipeline-blues-stack-a5eb’ is already on the apps v2 platform
It seems that only the production machine ‘pipeline-blue-stack-a5eb’ has migrated to v2 and I have a theory that my build failures are due to the fact that the fly builder thinks it should be building the staging app for v2 infrastructure but the migration to v2 was incomplete.