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

Run a groovy script as a service

Céline M March 4, 2015

Hi,

I have a script that work well in the Script runner interface but it don't run when I put it in Service.

I suppose that the issue is due to user, but I don't know how do to fix it. I use JIRA Groovy pluging with JIRA 4.4.3

Can ou help me?

 

This is the script:

import com.atlassian.jira.component.ComponentAccessor 
import com.atlassian.jira.issue.search.SearchProvider 
import com.atlassian.jira.jql.parser.JqlQueryParser 
import com.atlassian.jira.web.bean.PagerFilter 
import com.atlassian.jira.issue.Issue 
import com.atlassian.jira.ComponentManager 
import com.atlassian.jira.issue.IssueManager 
import com.atlassian.jira.issue.MutableIssue

log.warn("Début service");

def jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser.class) 
def searchProvider = ComponentAccessor.getComponent(SearchProvider.class) 
def issueManager = ComponentAccessor.getIssueManager() 
def user = ComponentAccessor.getJiraAuthenticationContext().getUser()
 
def optionsManager = ComponentManager.getInstance().getComponentInstanceOfType(OptionsManager.class)
def query = jqlQueryParser.parseQuery("type='Fiche escalade'") 
def results = searchProvider.search(query, user, PagerFilter.getUnlimitedFilter())

ComponentManager componentManager = ComponentManager.getInstance() 

//Pour chaque demande 
results.getIssues().each {documentIssue ->  
//transform in a mutable issue: 
 def myIssue = issueManager.getIssueObject(documentIssue.id) 
log.warn(myIssue.getkey());           
}
log.warn("Fin service");

1 answer

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

Post a new question

0 votes
Answer accepted
Céline M March 4, 2015

I found the solution....

 

in cas of need:

import com.atlassian.jira.component.ComponentAccessor 
import com.atlassian.jira.issue.search.SearchProvider 
import com.atlassian.jira.jql.parser.JqlQueryParser 
import com.atlassian.jira.web.bean.PagerFilter 
import com.atlassian.jira.issue.Issue 
import com.atlassian.jira.ComponentManager 
import com.atlassian.jira.issue.IssueManager 
import com.atlassian.jira.issue.MutableIssue 
import com.opensymphony.user.UserManager 
import com.opensymphony.user.User 
log.warn("Début service");

def jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser.class) 
def searchProvider = ComponentAccessor.getComponent(SearchProvider.class) 
def issueManager = ComponentAccessor.getIssueManager() 
def String adminUserName = "admin" 
User adminUser = UserManager.getInstance().getUser(adminUserName)
def query = jqlQueryParser.parseQuery("type='Fiche escalade'") 
def results = searchProvider.search(query, adminUser, PagerFilter.getUnlimitedFilter())

ComponentManager componentManager = ComponentManager.getInstance()
//Pour chaque demande 
results.getIssues().each {
documentIssue ->  
//transform in a mutable issue:  
def myIssue = issueManager.getIssueObject(documentIssue.id) 
log.warn(myIssue.getKey());           
}

log.warn("Fin service");
TAGS
AUG Leaders

Atlassian Community Events