WIP: Bug 1001395 Create manifest names in correct format #122
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.
Work in progress bugfix for https://dev.azure.com/msazuredev/AzureForOperators/_workitems/edit/1001395
-Raised by: Graeme Robertson (HE/HIM): How are artifact manifests used? Specifically I'm c...
posted in AFO Technical Team / AOSM Help on 30 October 2023 17:32
Context
Mountain-lake couldn't use nsd publish as normal because the CLI had created a manifest name that is over the 50 character limit.
(AOSM has a wide range of requirements for validation that are not documented in the API. One thing that was supposed to be happening at documentation time was that these were documented. I don't believe they were. See rambly discussion here:
Jacob Darby: Allow list for ARM resources deployed by an NF
posted in A40 LCM Team / UK - General on 27 September 2023 09:59)
The particular problem here are the validation requirements on artifact manifest names:
https://dev.azure.com/msazuredev/AzureForOperators/_git/pez?path=/src/MultiaccessEdgeCompute/ArtifactManifest/Errors/ArtifactManifestValidationErrorMessages.cs&_a=contents&version=GBmain for error messages and https://dev.azure.com/msazuredev/AzureForOperators/_git/pez?path=/src/MultiaccessEdgeCompute/ArtifactManifest/Validators/ArtifactManifestCreationValidator.cs&_a=contents&version=GBmain for strings.
Jacob argues that the CLI should not repeat the Validation that AOSM does, as it is the job of the RP. However the CLI creates a whole load of stuff at once and it's annoying to get half way through and then fail. In this case, it doesn't fail until deploy time.
In the particular case of manifest names, the CLI creates those out of combinations of values from the input.json file, versions and constants, e.g.
ubuntu-vm-nfdg-nf-acr-manifest-1-0-0
With a 50 character limit, you don't need a long nf name to exceed the requirement
Sunny started work on this but had these worries:
delete
functionality, not anything to do with publish - if you tried to delete a NSD/NFD created by an old version of the CLI and it had different names