Deploy an old release

hey fly friends,

We’re experiencing an issue where we’d benefit from being able to deploy an old release. Is there a way to do this? I couldn’t find it in the CLI help.

Currently our build doesn’t seem to be working, and the latest version on fly.io also seems to have an issue. So we want to deploy an older version from a few days ago.

Will also follow up with some context on how we got here, as I think it may be helpful for you to know.

Do you just need an old build, or old config settings too?

If you run fly releases and see one that’s interesting, you can get the image URL then fly deploy -i <url>. Getting the image URL is a little involved, right now you can only do it through our API: GraphQL Playground

This query should show you image URLs:

query{
  app(name:"<appname>"){
  	releases{
      edges{
        node{
          image{
            ref
          }
        }
      }
    } 
  }
}

Always really appreciate your responsiveness Kurt. We will look in to this.

I’m not sure which we need (old build or also old config settings too). In this case I think we wanted to deploy in such a way that we reduce the odds that whatever broke our current build wouldn’t affect the old build. In this case, it may be related to that issue you pinned earlier today + the LAX changes, though we’re not sure yet and will circle back.

hey kurt, I see the releases here but I don’t know how to map them to what grapql gives me. Forgive me if I’m missing something.

Example releases row:
v397 true scale succeeded Update autoscaling config 2022-03-21T04:44:44Z

Example grapnel edge:

{
“node”: {
“image”: {
“ref”: “registry.fly.io/@sha256:<sha 256>”
}
}
}

Oh, add version to your query like this:

query{
  app(name:"fizz"){
  	releases{
      edges{
        node{
          version
          image{
            ref
          }
        }
      }
    } 
  }
}

of course, thank you!

1 Like