Keeping track of what versions are currently deployed using record-deployment #417
Replies: 3 comments 5 replies
-
Rather than |
Beta Was this translation helpful? Give feedback.
-
Maybe "deployment target" would be better than "instance". |
Beta Was this translation helpful? Give feedback.
-
I had made a proposal for providing a "record release" (as distinct from "record deployment") for library/mobile client releases. Maybe using that would help make a more easily understood CLI.
|
Beta Was this translation helpful? Give feedback.
-
Working out how to keep track of what is currently deployed has turned out to require more thought than I expected. Recording a deployment is easy, but making the logic resilient to duplicate calls (when a deploy script gets re-run), and also working out what to mark as undeployed (without having to run an explicit
record undeployment
command each time) is a bit harder. I had already implemented a--replace-previous-deployed-version
flag on the CLI, but it turned out to be inadequate for the scenarios I worked through, and I will be replacing it with another mechanism which will be explained below.There are two main use cases, and one less common, but more complicated one.
record undeployment
call can be run for the unsupported version.Solution
All of these situations and the problems associated with keeping track of what is and isn't currently in production can be solved by
Scenarios:
The technical detail of all this would be hidden from the user, and they would get more user friendly CLI parameters. I'm having trouble thinking of good names for them. These are the best I've got so far, but "instance" is an overloaded term. Would love to hear some other suggestions.
I guess I could actually keep the existing
--replace-previous-deployed-version
parameter and just add an instance param. Those scenarios would look like:Beta Was this translation helpful? Give feedback.
All reactions