I would like to schedule the Deploy stage in my plan to run nightly instead of running automatically after the previous step or running manually. Is this possible?
You can't do it in Bamboo. What you can do is have an external script trigger continuation of that build using the following REST API. Have a look a REST tutorial.
I just wanted to show people exactly what I did to implement this within the Bamboo rest API. I used groovy rest and then created a cron job to kick off the script. I hope this helps someone in the future:
@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7.1')
import groovyx.net.http.RESTClient
import groovy.xml.XmlUtil
import static groovyx.net.http.ContentType.JSON
def client = new RESTClient ('https://myhost:8000/bamboo/')
client.defaultRequestHeaders.'Authorization' = 'Basic <base-64 encoded username:password>'
//I needed to use this because I was having certificate issues
client.ignoreSSLIssues()
def response = client.get (
path : "rest/api/latest/result/<project key>-<plan key>",
query : [
'os_authType' : "basic", 'buildstate': "Successful", 'max-results' : "1"
],
)
def buildNumber = response.getData().results.result[0].@number
def kickoff = client.put (
path : "rest/api/latest/queue/<project-key>-<plan-key>-" + buildNumber,
body : [
'os_authType' : "basic", 'stage' : "<stage-name>"
],
requestContentType : JSON
)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.