Bamboo - Create Deployment Project
This takes the output of a successful build and deploys it to a particular environment. This could be copying the files to a folder, deploying the package to a particular channel or even installing the software on a server.
We tend to use this process for deployments to Live environments.
These instructions assume you have followed Bamboo - Create Build Job and have a job that completes and contains some artifacts you want publishing.
Step 1
In Bamboo go to Create then Deployment Project. Fill in the description and link it to your project.
Click Create Deployment Project.
Step 2
Create an Environment. This should be descriptive of what where you're sending the artifcat such as "Live Server" or "Python Live Index".
NB: It doesn't appear to be possible to share environments between Deployment Projects although you can clone them within existing ones.
To be completed
Notes:
The Deployment Task is in a separate build directly to the Build one (and, by default cleans it each time). To use the housekeeping scripts you need to add a second checkout task.
The script is releasing the version of the wheel that exists on the Dev index but is using published artifact from the build for the version number. This needs checking but I think it would be better to use the published artifact for both as it gives you a clearer audit trail of what has happened. Someone could have uploaded anything to the Dev index in the meantime.
I am (possibly) struggling to get verbose ouput from bash when using a file despite using "set -x". I have added a shebang to specify bash so I don't think that's it. I did wonder if it was due to an underscore in the parameters.
The above can be worked round by using /bin/bash as a command task rather than a shell task. I am still unsure why this is needed but some places on the internet suggest that the script task is ignoring the shebang and not using bash.