Create a board in Jira with Scriptrunner/Code

Sngy October 22, 2020

Hello,

as the title suggests, I simply want to create a board in my console with code in groovy. 

After searching for a while, I stumbled upon this code. But already the first line "@WithPlugin" fails me. Does anyone have a simple solution (can also be different than the code below) to creating a board in Jira? I really only want a board created, it does not need any other features. Thanks!

 

import com.atlassian.greenhopper.model.validation.ErrorCollection
import com.atlassian.greenhopper.service.rapid.view.RapidViewService
import com.atlassian.greenhopper.web.rapid.view.RapidViewHelper
import com.atlassian.jira.component.ComponentAccessor
import com.onresolve.scriptrunner.runner.customisers.JiraAgileBean
import com.onresolve.scriptrunner.runner.customisers.WithPlugin
import com.atlassian.greenhopper.web.rapid.view.RapidViewResource.CreateResponse
import com.atlassian.greenhopper.web.rapid.view.RapidViewFilterHelper
import com.atlassian.greenhopper.web.rapid.view.RapidViewCreateModel
import com.atlassian.greenhopper.service.rapid.view.


@WithPlugin("com.pyxis.greenhopper.jira")

@JiraAgileBean
RapidViewService rapidViewService

@JiraAgileBean
RapidViewHelper rapidViewHelper

def currentUser = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
def errorCollection = new ErrorCollection()

// create a new board for project JRA
def projectIds = [ComponentAccessor.getProjectManager().getProjectObjByKey("ATP").id as String]
def outcome = rapidViewHelper.createRapidViewForPreset(currentUser, sourceIssue.summary + " Board", projectIds as Set, "scrum")
log.debug outcome

if (! outcome.isValid()) {
log.warn ("Failed to create board: ${outcome.errors}")
return
}

log.info ("Create board successfully.")

 

1 answer

Suggest an answer

Log in or Sign up to answer
0 votes
Ram Kumar Aravindakshan _Adaptavist_
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
January 15, 2021

Hi Sngy,

To create a new board using the ScriptRunner console, you will need to modify your code slightly as shown below:-

import com.atlassian.greenhopper.service.rapid.view.RapidViewService
import com.atlassian.greenhopper.web.rapid.view.RapidViewHelper
import com.atlassian.jira.component.ComponentAccessor
import com.onresolve.scriptrunner.runner.customisers.JiraAgileBean
import com.onresolve.scriptrunner.runner.customisers.WithPlugin

@WithPlugin("com.pyxis.greenhopper.jira")

@JiraAgileBean
RapidViewService rapidViewService

@JiraAgileBean
RapidViewHelper rapidViewHelper

def currentUser = ComponentAccessor.jiraAuthenticationContext.loggedInUser
def projectManager = ComponentAccessor.projectManager

def views = rapidViewService.getRapidViews(currentUser)

def projectIds = [projectManager.getProjectObjByKey("COM").id as String]
def outcome = rapidViewHelper.createRapidViewForPreset(currentUser, "Board for COM 2", projectIds as Set, "scrum")
log.debug outcome

if (! outcome.isValid()) {
log.warn ("Failed to create board: ${outcome.errors}")
return
}

Below is a print screen of the output:-

board.png

Your code appears to be failing because you do not have any variable initialised to invoke

sourceIssue.summary

Hope this helps to solve your question :)

TAGS
AUG Leaders

Atlassian Community Events