AzurePipelines icon indicating copy to clipboard operation
AzurePipelines copied to clipboard

Re-run keeping previous release notes information, not only after 'GetChangesBetweenBuilds' as parameter

Open JanuszNowak opened this issue 3 years ago • 4 comments

Azure DevOps Extensions

Generate Release Notes (Node Cross Platform)

Is your feature request related to a problem? Please describe.

How to execute release notes generation with parameter to also include release notes not only from previous success run parametrize 'GetChangesBetweenBuilds', as when re-running we lost all information. Would be helpful in customizing/develop release notes.

Describe the solution you'd like

Have addition parameter in extension for this.

Describe alternatives you've considered

Use previous pipeline for compression as parameter to allow in dynamic way control scope of information generated.

Additional context

No response

JanuszNowak avatar Jul 05 '22 14:07 JanuszNowak

Does not this existing feature not match your needs?

Argument: overrideBuildReleaseId Description: For releases or multi-stage YAML this parameter provides a means to set the ID of the 'last good release' to compare against. If the specified release/build is not found then the task will exit with an error. Default is empty/not set disabling this override behaviour Type: string Required: false Default (if defined):

rfennell avatar Jul 26 '22 09:07 rfennell

I have a similar need.

We have a build YAML (without release) to publish a product with the parameter beta. When beta is true, this publish a beta version of the product. When beta is false, this publish a normal version of the product.

We want to generate the release note only to normal version, that include all work items resolved since the last published normal version. But the work items linked to build execution to publish beta version are missing.

We need to include in the release notes, all work items linked to the build and precedent builds until a build where the parameter beta is false.

A solution is to manually search the build that publish a normal version and set overrideBuildReleaseId... but do you know how to automate this?

How set overrideBuildReleaseId automatically with the last build ID where the release notes was generated? In other words, the last build where the task XplatGenerateReleaseNotes was executed (or the parameter beta equal false)?

vernou avatar Jun 20 '23 10:06 vernou

Have you watch the video of the conference session I did on this tools, as I think this might provide an answer?

What I do is put the release notes task in it's own stage that is only run if a certain condition is met e.g. a human approves release to that stage, or a condition is met that allows entry into the stage e.g. a parameter is not set to beta - or both.

Remember to also checkout the WIKI for the settings required to get this working

This model means that the task is only run when it is required, and will look back to the last successful build that ran the current stage so showing the changes since the last release to that stage.

@vernou does that not get you what you require?

rfennell avatar Jun 20 '23 13:06 rfennell

No, I didn't watch the video... that is a mistake. Like you suggested, I encapsulate the release notes task in a dummy stage. It's work, thank.

vernou avatar Jun 21 '23 12:06 vernou