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

Unable to edit board administrator

Vivian Escalante
Contributor
May 15, 2018

So I'm trying to change the admin for a board. For starters I tried to get the boards in a project, but for any project I get no boards. Am I doing something incorrectly? Also tried BoardManagerImpl, but nothing. 


import
com.atlassian.jira.board.Board
import com.atlassian.jira.board.model.BoardData
import com.atlassian.jira.board.BoardDataService
import com.atlassian.jira.board.BoardManager
import com.atlassian.jira.board.BoardId

def userManager = ComponentAccessor.getUserManager()
def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
def boardManager = ComponentAccessor.getComponent(BoardManager.class)

BoardId boardId = new BoardId(102L)
Optional<Board> result = boardManager.getBoard(boardId)
log.warn(result)

 

1 answer

Suggest an answer

Log in or Sign up to answer
2 votes
Thanos Batagiannis [Adaptavist]
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 23, 2018

Hey Vivian, 

Can you try something like this.

import com.atlassian.greenhopper.model.rapid.BoardAdmin
import com.atlassian.greenhopper.service.rapid.view.BoardAdminService
import com.atlassian.greenhopper.service.rapid.view.RapidViewService
import com.atlassian.jira.component.ComponentAccessor
import com.onresolve.scriptrunner.runner.customisers.PluginModuleCompilationCustomiser

def boardName = "SSPA"
def rapidViewService = PluginModuleCompilationCustomiser.getGreenHopperBean(RapidViewService)
def boardAdminService = PluginModuleCompilationCustomiser.getGreenHopperBean(BoardAdminService)
def currentUser = ComponentAccessor.jiraAuthenticationContext.getLoggedInUser()

def allViews = rapidViewService.getRapidViews(currentUser).value
def rapidView = allViews?.find {it.name == boardName}

def newAdmin = ComponentAccessor.userManager.getUserByKey("anuser")
def boardAdmin = BoardAdmin.builder().type(BoardAdmin.Type.USER).key(newAdmin.key).build()

boardAdminService.updateBoardAdmins(rapidView, currentUser, [boardAdmin])

Please let me know if this does the trick.

Regards, Thanos

TAGS
AUG Leaders

Atlassian Community Events