scriptRunner脚本实例(Jira插件脚本实例)

  • Post author:
  • Post category:其他




scriptRunner部分功能实例讲解(Jira插件脚本实例)


scriptRunner插件可在jira工作流跳转阶段执行自定义的脚本,以下脚本用于在工作流跳转阶段,执行脚本实例实现错误提示的功能


以下实例只在jira6版本中测试过,可用,其他高版本未进行测试




用户类实例
//查询指定用户在哪些项目中为管理员角色
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.security.roles.ProjectRoleManager
import com.atlassian.jira.project.ProjectManager
import java.util.List;
import com.atlassian.jira.project.Project
import com.atlassian.jira.security.roles.ProjectRole
import java.util.Collection;
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.jira.user.util.UserManager
 
ProjectManager projectManager = ComponentAccessor.getProjectManager()
ProjectRoleManager projectRoleManager = ComponentAccessor.getComponent(ProjectRoleManager)
UserManager  userManager = ComponentAccessor.getUserManager();
ApplicationUser user = userManager.getUserByName("user_name");
 
List<Project> allProjects = projectManager.getProjectObjects()
def adminProjects = []
 
for(int i=0;i<allProjects.size();i++){
   
    Collection<ProjectRole> projectRoles = projectRoleManager.getProjectRoles(user, allProjects.get(i))
    ProjectRole[] tempRoles = projectRoles.toArray();
    for(ProjectRole role:tempRoles){
   
        if(role.getName() == "Administrators"){
   
            adminProjects.push(allProjects.get(i).getName())
        }
    }
}
return (adminProjects)
//获取项目某个角色的成员列表
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.security.roles.ProjectRoleManager
import com.atlassian.jira.project.ProjectManager
import com.atlassian.jira.project.Project
import com.atlassian.jira.security.roles.ProjectRole
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.jira.user.util.UserManager
import com.atlassian.jira.security.roles.RoleActor
import com.atlassian.crowd.embedded.api.User
 
ProjectRoleManager projectRoleManager = ComponentAccessor.getComponent(ProjectRoleManager);
ProjectManager projectManager = ComponentAccessor.getProjectManager();
Project project = projectManager.getProjectObjByName("project name")



版权声明:本文为WanderingDragon原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。