I would like for bamboo to tag every build before it starts. It looks like you can create a tag for SVN, but not for Git? I found this answer https://answers.atlassian.com/questions/28228/bamboo-vcs-tagging-for-git, which is almost a year old now.
Are there any updates on this feature?
Hi John,
No updates on that feature however it is possible to work around this by adding a Script task that creates a git tag and pushes it remotely using the native git executable.
ThanksJames
So within the build-dir, I try the following (to simulate a script task):
git tag -a test -m 'Build test'
git push --tags
fatal: No configured push destination. Either specify the URL from the command-line or configure a remote repository using git remote add <name> <url> and then push using the remote name git push <name>
So:
git push origin test
fatal: 'origin' does not appear to be a git repository fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
I don't want to muck with what bamboo is doing with git, so am I safe to get this working via command line and it will continue to work on future builds?
i.e.
git remote add origin url
i'm interested in doing same from deployment tasks.
and i'm also disappointed with the absebce of remotes in bamboos git repos.
how to workaround that? we have a dozen of repos and i'm not quite happy adding remotes to each of them
I'm really surprised that this feature is not available in an on-demand plugin. This stuff works out of the box for Jenkins/Hudson.
I'm using Stash, so my approach is to use Stash's REST API to create tags:
https://developer.atlassian.com/static/rest/stash/3.8.0/stash-scm-git-rest.html
I wouldn't recommend messing around with "origin". Why not simply create a new remote ("origin2" ?) especially for your Bamboo builds? E.g.:
TAG_NAME=${BRANCH_NAME}-${bamboo_buildNumber} git tag -f -a ${TAG_NAME} -m 'Tagged by Bamboo' git remote add origin2 ${bamboo_planRepository_1_repositoryUrl} git push origin2 ${TAG_NAME} git ls-remote --exit-code --tags origin2 ${TAG_NAME}
I added in that last command to verify that the tag was actually created.
using stash api is a good idea
Got this error with above solution.
error 20-Aug-2018 01:20:06 Repository not found error 20-Aug-2018 01:20:06 The requested repository does not exist, or you do not have permission to access it. error 20-Aug-2018 01:20:06 fatal: Could not read from remote repository. error 20-Aug-2018 01:20:06 error 20-Aug-2018 01:20:06 Please make sure you have the correct access rights error 20-Aug-2018 01:20:06 and the repository exists.
It looks like you're new here. Sign in or register to get started.