Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Update the permission of deployment plan using rest api command in script runner.

Bibin Mohan Kareethra August 12, 2021

Hi All,

I am not able update deployment plan in Bamboo using rest api . I am trying below script in script runner .

facing error 400.

import groovyx.net.http.ContentType
import groovyx.net.http.*
import static groovyx.net.http.Method.*
import groovy.json.JsonOutput
import net.sf.json.groovy.JsonSlurper
import groovy.json.JsonSlurper


def slurper = new groovy.json.JsonSlurper()


//Authorization
def authString = "user:paswd".bytes.encodeBase64().toString()

def bodyJson = JsonOutput.toJson(["editable": false,"permissions":["READ"] ])

def http = new HTTPBuilder( 'https://bamboo-abc.com/rest/api/latest/permissions/deployment/3365901/groups/devop-business' )
http.request(PUT) {
headers."Authorization" = "Basic ${authString}"
body = bodyJson
requestContentType = ContentType.JSON

response.success = { resp ->
log.warn "Success! ${resp.status}"

}

response.failure = { resp ->
log.warn "updating new delpyment project request failed with status ${resp.status}"
log.warn resp.statusLine

}

}

 Thanks & Regards

Bibin Mohan. K

1 comment

Comment

Log in or Sign up to comment
Bibin Mohan Kareethra August 17, 2021

I updated the bodyjson and now it run successful .

import groovyx.net.http.ContentType
import groovyx.net.http.*
import static groovyx.net.http.Method.*
import groovy.json.JsonOutput
import net.sf.json.groovy.JsonSlurper
import groovy.json.JsonSlurper


def slurper = new groovy.json.JsonSlurper()


//Authorization
def authString = "User:passwd".bytes.encodeBase64().toString()

def bodyJson = JsonOutput.toJson(["READ"] )

def http = new HTTPBuilder( 'https://bamboo-abc.com/rest/api/latest/permissions/deployment/3365901/groups/devop-business' )
http.request(PUT) {
headers."Authorization" = "Basic ${authString}"
body = bodyJson
requestContentType = ContentType.JSON

response.success = { resp ->
log.warn "Success! ${resp.status}"

}

response.failure = { resp ->
log.warn "updating new delpyment project request failed with status ${resp.status}"
log.warn resp.statusLine

}

}

 

Thanks & Regards

Bibin Mohan. K

TAGS
AUG Leaders

Atlassian Community Events