I’m using Octopus from my CI build to deploy to a test environment, where some acceptance tests are run. If these are successful, it would be nice to be able to update the release with this information.
Ideally, I’d like to be able to add various user-defined flags to a release (e.g. “passed automated tests”, “passed QA”, “approved for production”), and to prevent promotion of the release to down-stream environments unless some required flag is present.
Alternatively, I’d be happy to use the release notes field, if there was a way to append to this via the API.
I’m new to Octopus, so maybe I’m overlooking some feature that would allow this? How have other people met similar requirements??
This isn’t currently possible but it’s a very nice idea. I’ll see if we can accommodate it in our v2 release.
Would it also be valuable to you if your deploy powershell scripts could add attachments to the release? E.g.,:
These attachments could then be shown on the release details and deployment pages.
Yes, attachments would be really useful too. It would be great to see
release flags or something similar in version 2.
Yesterday I found something that gets me some of the way there: I added a
new step as the first one in the project, called “check approval”. This
checks in an external system that an approval exists for the
project/version/environment combination that is being deployed; if there’s
no approval, the deployment fails. The approval is inserted into the
external system by the build server when the automated tests pass.
So this prevents releases being deployed further unless the tests pass, but
it isn’t apparent when looking at the release what the approval status is
and it doesn’t stop you attempting to do a release that will fail because
of lack of approval.
Thanks and best regards
Did this “very good idea” ever get on the release road map?
We’re using the VSTS build system with the “Create a release” octopus step. On completion of this build step the integration test suite runs.
I’d like to update the status of the just created release - even putting PASS or FAIL at the start of the release notes would be enough.
A FAIL release would not get promoted into the QA test environment.
(Actually maybe set to “Blocked” with a reason?)
The deployment, from Octopus’ point of view, was a success. But the integration test suite is flagging a quality issue. I’d like to make this as visible as possible in Octopus Server.
Thanks for reaching out! You can block a release from being promoted to the next phase both from the UI or using the API. Given that you want this to happen from the build server, you could use the
Block-OctopusRelease cmdlet that comes with the OSS Project Octoposh.
You can find more info about this cmdlet here: https://github.com/Dalmirog/OctoPosh/wiki/Block-OctopusRelease
Let me know if that helps.