See MMF-1391 for the why.
- Modify the Run Analysis task to store the Compute Engine task id as a build property against the DevOps build.
- Modify the Publish Quality Gate task to store the QG status as a build property
- Create a new build/release task that checks the task result/QG status. If the QG is not green then the task will failure, preventing the release.
- Ignore builds that contain multiple separate analyses i.e. assume that there is only analysis per build and that the results apply to all artefacts created by the build.
- For the release check allow the user to specify the alias of the build artefact to check. If the user does not supply an alias then check only the primary alias.
This would allow the user to check all artefacts by adding multiple release checks, one per build artefact.
- For the release check, only check the for the build property giving the QG status. If the property is not available or is false then the step should fail.
- For the release check, use the Compute Engine task id to check the QG status. If the task has been deleted then fall back on the iteration 1 behaviour.
- For the release check, automatically check the QGs associated with all artefacts in the build.
The user should easily be able to see which QG checks are failing.
- TODO: decide how to handle builds that contain more than one analysis