Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
2.5.3
-
None
-
None
Description
Support for dryRun on perform was added in MRELEASE-736 so that the actual goals are skipped, but the release.properties file is deleted. I think it may be time to revisit that.
The main issue is that it is now possible to specify different behavior during release:perform than release:prepare by specifying profiles to be activated during the later goal in the releaseProfiles configuration tag. There is no way to test that behavior, since with dryRun, everything is skipped. Further, when you do the dryRun perform, the release.properties file is deleted, meaning that you cannot try it again.
Yes, it seems odd to rerun the tests done during the prepare goal, but that doesn't avoid the value of testing the perform step. I would like to see, therefore, a way actually to do a real dryRun: actually checking out the files and doing all of the steps, but without pushing the files and updating the site - and without deleting release.properties.
As an alternative, perhaps creating a separate dryRun goal would be cleaner: it would still pick up the profiles and arguments from the configuration, but could skip all of the scm interaction and security validation, and just doing the unique prepare and perform steps. It could also skip the prompts for versions and tagging, as they would not matter for testing the release behavior.