Создайте проект Jira при создании пространства Confluence - malikovalibek/groovyForJira GitHub Wiki

Обзор Confluence и Jira могут быть связаны друг с другом с помощью ссылок на приложения. Со связанными экземплярами вы можете выполнять действия в Jira, запуская скрипты из Confluence и наоборот. Используйте этот скрипт для создания проекта в Jira при создании пространства Confluence.

пример Я технический писатель, использующий Confluence для публикации документации для нескольких программных проектов. Каждый комплект документации хранится в соответствующем пространстве. Используя этот скрипт, я могу создавать новый проект в связанном экземпляре Jira каждый раз, когда я создаю новое пространство в Confluence, что экономит время на создание проектов Jira вручную для каждого нового набора документации.

Хорошо знать Создайте ссылку на приложение, чтобы связать Jira и Confluence. import com.atlassian.applinks.api.ApplicationLinkService import com.atlassian.applinks.api.application.jira.JiraApplicationType import com.atlassian.confluence.event.events.space.SpaceCreateEvent import com.atlassian.sal.api.component.ComponentLocator import com.atlassian.sal.api.net.Response import com.atlassian.sal.api.net.ResponseException import com.atlassian.sal.api.net.ResponseHandler import groovy.json.JsonBuilder import static com.atlassian.sal.api.net.Request.MethodType.POST

// Get required components def appLinkService = ComponentLocator.getComponent(ApplicationLinkService) def appLink = appLinkService.getPrimaryApplicationLink(JiraApplicationType) def applicationLinkRequestFactory = appLink.createAuthenticatedRequestFactory()

def event = event as SpaceCreateEvent def space = event.space

// Define the request body to creta a new project def input = new JsonBuilder([ projectTypeKey : "business", projectTemplateKey: "com.atlassian.jira-core-project-templates:jira-core-task-management", name : space.name, key : space.key, lead : event.space.creator.name, ]).toString()

// Create and execute the request def request = applicationLinkRequestFactory.createRequest(POST, "/rest/api/2/project") .addHeader("Content-Type", "application/json") .setEntity(input) request.execute(new ResponseHandler() { @Override void handle(Response response) throws ResponseException { if (response.statusCode != 200) { log.info("Jira project successfully created") } else { log.error("Creating Jira project failed: ${response.responseBodyAsString}") } } })

⚠️ **GitHub.com Fallback** ⚠️