feat: Add vm-image-version subgroup to manage technical plan for VMs #242
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds the group vm-image-version along with it's subcommands add and delete.
Add takes a path to a json document that is the array of Image Versions to append to the existing array. This information should be relatively easy for users to acquire with other az and does not require vm-image-version to maintain any logic for the flags that would be needed for differences between sources like galleries and vhds.
Delete takes the vm image version that a user would like to delete and deletes it from the specified technical configuration plan.
Both of these commands may be configuring with more information than is strictly necessary They acquire up to date documents as is necessary to append or shorten the vm image version list and simply send that document back since it contains all of the relevant information. It is possible that updates to other fields have happened and that it would be better to only submit the vm image version list but the same could be true for changes to the vm image version list itself being overwritten between changes so this seems preferable to me. Hopefully in review someone will clarify if there's a preference.
For now I'm also not including the pydantic output from generating against that schema. I'm not sure if there's interest in this fucntionality at all and from what I see that output would need a fair amount of manual editing to match what I see in the CNAB pieces. For now since this is just adding and removing vm image versions it doesn't seem like a correct schema for things like Open Ports is needed right away.
Description
If you haven't already, read the full contribution guide. The guide may have changed since the last time you read it, so please double-check. Once you are done and ready to submit your PR, edit the PR description and run through the relevant checklist below.