The "VCS Tagging" task works great at tagging our Subversion repository with a custom variable — but only when we remember to fill in that custom variable. Is there any way to configure the VCS Tagging task (or a job that contains it) so that it only runs if a tag name has actually been specified?
To be specific, we've set up a plan in Bamboo with a custom variable called ReleaseVersion. Its default value is blank. Then one of the jobs in the plan has a VCS Tagging task with the tag name:
${bamboo.ReleaseVersion}
If we run the plan by chosing Run Customised... and specify a value for ReleaseVersion then it tags everything correctly with the value we set. However if we just run the default plan it fails because nothing has been set in ReleaseVersion — unsurprisingly we get this exception:
Error occurred while running Task 'Tag Subversion(1)'. This build will fail. Caused by:
com.atlassian.bamboo.task.TaskException: Exception when tagging repository
...
Caused by: org.tmatesoft.svn.core.SVNException: svn: Path 'svn://repository.local/SG/tags' already exists
Basically it's trying to apply an empty string as a tag.
Is there any way to configure Bamboo to skip the task — or the job — if the tag or variable is empty?
We don't want to tag every build, so we don't want to specify the variable every time!