How do I write code to create a Project, issues and subtasks in Jira?

 

2 answers

This widget could not be displayed.

There are three basic possibilities here:

You want to write an addon for Server versions of JIRA - addons like this can hook into the core of JIRA and do many powerful things, but can NOT be used on Cloud (unless Atlassian Cloud support adopt them, which is not easy to achieve).  Start at https://developer.atlassian.com/jiradev/

You want to write an addon for Cloud JIRA - you can use Atlassian Connect to do this - see https://developer.atlassian.com/static/connect/docs/latest/guides/introduction.html (development guides are linked off there, but I think it's worth a quick read of the concepts too)

You want to write stuff that will run outside JIRA and tell it to do stuff via REST - see https://developer.atlassian.com/jiradev/api-reference/jira-rest-apis/jira-rest-api-tutorials/jira-rest-api-version-2-tutorial (there's more dry REST docs, but I prefer this one as a starting point)

This widget could not be displayed.

Thanks @Nic Brough for taking the time to answer my question.

Here are snippets of code that helped to create  a project , issue and subtask :

 


Create a project
Project p = ComponentAccessor.getProjectManager().createProject(name, key, description, lead, url, AssigneeTypes.PROJECT_LEAD);
ComponentAccessor.getPermissionSchemeManager().addDefaultSchemeToProject(p);
ComponentAccessor.getIssueTypeScreenSchemeManager().addSchemeAssociation(p,
        ComponentAccessor.getIssueTypeScreenSchemeManager().getDefaultScheme());
 
Create Issue of Task Type
IssueManager issueManager = ComponentAccessor.getIssueManager();
IssueFactory issueFactory = ComponentAccessor.getIssueFactory();
JiraAuthenticationContext authenticationContext = ComponentAccessor.getJiraAuthenticationContext();
MutableIssue issueObject = issueFactory.getIssue();
issueObject.setProjectObject(project);
    IssueType issueType = MyIssueType.getIssueType("Task");
    issueObject.setIssueTypeId(issueType.getId());
issueObject.setSummary(summary);
issueObject.setAssignee(authenticationContext.getUser().getDirectoryUser());
Date today = new Date();
issueObject.setCreated(new java.sql.Timestamp(today.getTime()));
issueObject.setDescription(description);
Issue issue;
    issue = issueManager.createIssueObject(authenticationContext.getUser().getDirectoryUser(), issueObject);

Create Subtasks
IssueManager issueManager = ComponentAccessor.getIssueManager();
        IssueFactory issueFactory = ComponentAccessor.getIssueFactory();
        JiraAuthenticationContext authenticationContext = ComponentAccessor.getJiraAuthenticationContext();
        SubTaskManager subTaskManager = ComponentAccessor.getSubTaskManager();
        MutableIssue issueObject = issueFactory.getIssue();
        issueObject.setProjectObject(project);
        issueObject.setIssueTypeId(subtaskType.getId());
        issueObject.setParentId(parentIssue.getId());
        issueObject.setFixVersions(parentIssue.getFixVersions());
        issueObject.setAffectedVersions(parentIssue.getAffectedVersions());
        issueObject.setPriorityObject(parentIssue.getPriorityObject());
        issueObject.setSummary(summary);
        issueObject.setAssignee(authenticationContext.getUser().getDirectoryUser());
        Date today = new Date();
        issueObject.setCreated(new java.sql.Timestamp(today.getTime()));
        issueObject.setDescription(description);
Issue subTask;
                   subTask = issueManager.createIssueObject(authenticationContext.getUser().getDirectoryUser(), issueObject);
            subTaskManager.createSubTaskIssueLink(parentIssue,subTask,authenticationContext.getUser().getDirectoryUser());

   

Suggest an answer

Log in or Sign up to answer
Atlassian Summit 2018

Meet the community IRL

Atlassian Summit is an excellent opportunity for in-person support, training, and networking.

Learn more
Community showcase
Posted Aug 06, 2018 in Jira Service Desk

A is for Activate: Share your top Jira Service Desk onboarding tips for new users!

Hi, everyone! Molly here from the Jira Service Desk Product Marketing Team :).  In the spirit of this month's  august-challenge, we're sourcing stories of Jira Service Desk activation fro...

601 views 26 15
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you