We have a couple services (production and staging instances of the same app) created via blueprint. When we make changes to the staging service by editing render.yaml and pushing, the new builds are started automatically, but the deploys don’t seem to pick up on the blueprint changes. We can only make changes via the dashboard.
How do we get our services to pick up on blueprint changes? Is that just not going to happen in the presence of dashboard-edited config? Or do we have to push to main in order for staging changes to be picked up on? (Which seems very backward.) Or something else?
Correct, with a single blueprint it will only track changes on the branch the blueprint is tracking.
If you want to make changes to the blueprint on your staging branch, you’d need to have it’s own blueprint with a branch defined. See https://render.com/docs/blueprint-spec#repo--branch for more info on this.
Thanks, Matt! To clarify, which of these is the case?
A) We would need entirely separate render.yaml files for our production and staging branches. In this case, how do we get Render to pick up on the one that’s named something other than render.yaml? (Edit: n/m, I see how to specify that.) (Edit 2: nope, I don’t see how to specify that.)
B) We can have one render.yaml, and have each service under render.yaml specify which branches it runs for. Then each time we push to a branch, all services that specify that branch in the render.yaml on that branch will be created or refreshed, and all other services ignored. (Edit: this doesn’t seem to actually be working for us, since our two services in a shared render.yaml do each specify different branches.)
Okay, I finally found the right search terms – it looks like what I’m trying to accomplish isn’t supported at all? This seems like it’d be a pretty common use case. What workarounds are currently suggested?