рдПрдЯрд▓рд╕ рдЬрд╛рдЗрд░рд╛ рдФрд░ рдХрдВрдлреНрд▓реБрдПрдВрд╕ рдореЗрдВ рдХрд╛рдо рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд╕рдЖрдИрдПрд▓ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╣реИред рдЖрдк рдпрд╣рд╛рдВ рдПрд╕рдЖрдИрдПрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ редрдореИрдВ рдЕрдХреНрд╕рд░ рдПрд╕рдЖрдИрдПрд▓ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдПрд╕рдЖрдИрдПрд▓ рдХреЛрдб "рдХреНрд▓реАрди" рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░ рдЖрдкрдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВредрдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЙрди рдирд┐рдпрдореЛрдВ рдХреЛ рддреИрдпрд╛рд░ рдХрд░реВрдВрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рд╕рд┐рд▓ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╕рдордп рдорд╛рд░реНрдЧрджрд░реНрд╢рди рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдХреЛрдб рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЗрди рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд░рд┐рдлреИрдХреНрдЯрд┐рдВрдЧ рдХрд░рддреЗ рд╣реИрдВредрдирд┐рдпрдо
- рдирд╛рдо рд╕рдВрд░рдЪрдирд╛рдПрдВ рдПрдХ рдмрдбрд╝реЗ рдЕрдХреНрд╖рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИрдВред
- AddElement рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд░рдгреА рддрддреНрд╡ рдЬреЛрдбрд╝реЗрдВ ред
- рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рддрд╛рд░реНрдХрд┐рдХ рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рддреЛрдбрд╝рдиреЗ рдФрд░ рдХреЛрдб рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рджрд┐рдирдЪрд░реНрдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ ред
- рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ ( рд╕рдорд╛рд╡реЗрд╢рди ) рдХреЗ рд▓рд┐рдП рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдХреЛрдб рд▓рд╛рдУ ред
- рдмрд╛рдХреА рдЪрд░ рдШреЛрд╖рдгрд╛ рд╕реЗ рдкрд╣рд▓реЗ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░реЗрдВред
- рд╕рдВрд░рдЪрдирд╛рдУрдВ рдФрд░ рдЪрд░ рдХреЗ рд▓рд┐рдП рд╕рд╛рд░реНрдердХ рдирд╛рдо рджреЗрдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЖрдкрдХреЛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдФрд░ рдЪрд░ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
- Google Java рд╕реНрдЯрд╛рдЗрд▓ рдЧрд╛рдЗрдб рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдирд╛рдо рдЪрд░ рдФрд░ рдлрд╝рдВрдХреНрд╢рди ред
рдЕрдм рд╣рдо рд╕рд┐рд▓ рдХреЛрдб рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦрддреЗ рд╣реИрдВредstring USER = currentUser();
struct returnData {
string status;
}
struct space {
string key;
}
struct storage {
string value;
string representation;
}
struct body {
storage storage;
}
struct reqData {
string type;
string title;
space space;
body body;
}
reqData data;
data.type = "page";
data.title = "Page for issue " + key + " " + summary + ".";
data.space.key = project;
data.body.storage.value = "<p> Author:"+userFullName(USER) + " description: " + description + "</p>";
data.body.storage.representation = "storage";
HttpRequest request;
HttpHeader header = httpCreateHeader("Content-Type", "application/json");
HttpHeader authHeader = httpBasicAuthHeader("admin", "admin");
request.headers += header;
request.headers += authHeader;
logPrint("WARN", request);
string JSONData = toJson(data);
logPrint("WARN", JSONData);
returnData result = httpPost("http://192.168.54.203:8090/rest/api/content/", request, JSONData);
string errMsg = httpGetErrorMessage();
logPrint("ERROR", "Last error message: " + errMsg);
logPrint("WARN", result);
string COMMENT = "Page created in Confluence " + updated + " by " + userFullName(USER) + " Status : " +result.status + ".";
addComment(key, USER, COMMENT);
return result.status;
рдХреЛрдб рдХреЛ рджреЗрдЦрдирд╛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХрд┐ рдХреЛрдб рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рдХреЛрдб рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдмрд╣реБрдд рдорджрдж рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред рдЪрд▓реЛ рдКрдкрд░ рджрд┐рдП рдЧрдП рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХреЛрдб рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВредрд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рджреЗрдЦреЗрдВред рдпрд╣рд╛рдБ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:struct body {
storage storage;
}
рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ "рднрдВрдбрд╛рд░рдг рднрдВрдбрд╛рд░рдг" рд╕рдордЭ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдЧрд╛ рдХрд┐ рдХреЛрдб рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдерд╛:struct body {
Storage storage;
}
рдЕрдм рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдЯрд╛рдЗрдк рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рдирд╛рдо рдХреЗ рддрд╣рдд рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдПрдХ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╣рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдкрд╣рд▓реЗ рдЕрдХреНрд╖рд░ рдХреЛ рдмрдбрд╝рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
struct ReturnData {
string status;
}
struct Space {
string key;
}
struct Storage {
string value;
string representation;
}
struct Body {
Storage storage;
}
struct ReqData {
string type;
string title;
Space space;
Body body;
}
рдЕрдм рд╣рдо рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдирд╛рдо рдмрджрд▓рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдирд╛рдо рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рдП рдХрд┐ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛:struct Space {
string key;
}
struct Storage {
string value;
string representation;
}
struct Body {
Storage storage;
}
struct CreateConfluencePageRequest {
string type;
string title;
Space space;
Body body;
}
struct CreateConfluencePageResponse {
string status;
}
рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдРрд╕реЗ рдирд╛рдореЛрдВ рдХреЛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╣рдо рдХреЛрдб рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреА рднреА рдШреЛрд╖рдгрд╛ рдХрд░реЗрдВрдЧреЗредрд╣рдордиреЗ рдирд┐рдпрдо 1, 5, 6 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИредрдЕрдм рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рдмрд╛рдж рдХреЛрдб рдХреЛ рджреЗрдЦреЗрдВ:string USER = currentUser();
CreateConfluencePageRequest data;
data.type = "page";
data.title = "Page for issue " + key + " " + summary + ".";
data.space.key = project;
data.body.storage.value = "<p> Author:"+userFullName(USER) + " description: " + description + "</p>";
data.body.storage.representation = "storage";
HttpRequest request;
HttpHeader header = httpCreateHeader("Content-Type", "application/json");
HttpHeader authHeader = httpBasicAuthHeader("admin", "admin");
request.headers += header;
request.headers += authHeader;
logPrint("WARN", request);
string JSONData = toJson(data);
logPrint("WARN", JSONData);
CreateConfluencePageResponse result = httpPost("http://192.168.54.203:8090/rest/api/content/", request, JSONData);
string errMsg = httpGetErrorMessage();
logPrint("ERROR", "Last error message: " + errMsg);
logPrint("WARN", result);
string COMMENT = "Page created in Confluence " + updated + " by " + userFullName(USER) + " Status : " +result.status + ".";
addComment(key, USER, COMMENT);
return result.status;
рдХреЛрдб рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╣рдо рдЬрд▓реНрджреА рд╕реЗ рд╕рдордЭ рдирд╣реАрдВ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреЛрдб рдореЗрдВ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдЖрдЗрдП рдкрд╣рд▓реЗ рдХреЛрдб рдХреЛ рддрд╛рд░реНрдХрд┐рдХ рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рддреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:getNewConfluencePageContent();
createHttpRequest();
createConfluencePage();
addCommentToJiraIssue();
рдпрд╣реА рд╣реИ, рдкрд╣рд▓реЗ рд╣рдореЗрдВ Confluence рдореЗрдВ рдирдП рдкреГрд╖реНрда рдХреА рд╕рд╛рдордЧреНрд░реА рдорд┐рд▓рддреА рд╣реИ, рдлрд┐рд░ рдПрдХ HTTP рдЕрдиреБрд░реЛрдз рдмрдирд╛рдПрдБ, Confluence рдореЗрдВ рдПрдХ рдкреГрд╖реНрда рдмрдирд╛рдПрдВ рдФрд░ Jira рдЕрдиреБрд░реЛрдз рдореЗрдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рдЦреЗрдВ рдХрд┐ Confluence рдореЗрдВ рдкреГрд╖реНрда рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрдм рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ:function getNewConfluencePageContent() {
CreateConfluencePageRequest data;
data.type = "page";
data.title = "Page for issue " + key + " " + summary + ".";
data.space.key = project;
data.body.storage.value = "<p> Author:"+userFullName(currentUser()) + " description: " + description + "</p>";
data.body.storage.representation = "storage";
return toJson(data);
}
function createHttpRequest() {
HttpRequest request;
HttpHeader header = httpCreateHeader("Content-Type", "application/json");
HttpHeader authHeader = httpBasicAuthHeader("admin", "admin");
request.headers = addElement(request.headers, header);
request.headers += addElement(request.headers, authHeader);
logPrint("WARN", request);
return request;
}
function createConfluencePage(string pageJson) {
HttpRequest request = createHttpRequest();
CreateConfluencePageResponse result = httpPost("http://192.168.54.203:8090/rest/api/content/", request, pageJson);
logPrint("ERROR", "Last error message: " + httpGetErrorMessage());
logPrint("WARN", result);
return result;
}
function addCommentToJiraIssue(string resultStatus) {
string COMMENT = "Page created in Confluence " + updated + " by " + userFullName(currentUser()) + " Status : " +resultStatus + ".";
addComment(key, currentUser(), COMMENT);
}
string pageJson = getNewConfluencePageContent();
CreateConfluencePageResponse result = createConfluencePage(pageJson);
addCommentToJiraIssue(result.status);
return result.status;
рд╣рдордиреЗ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рддрд╛рд░реНрдХрд┐рдХ рдмреНрд▓реЙрдХреЛрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ (рдирд┐рдпрдо 2)ред рдЕрдм рд╣рдо рдмрд╕ рдЗрд╕ рддрд░рд╣ рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:string pageJson = getNewConfluencePageContent();
CreateConfluencePageResponse result = createConfluencePage(pageJson);
addCommentToJiraIssue(result.status);
return result.status;
рд╣рдорд╛рд░реЗ рдХреЛрдб рдореЗрдВ рдЪрд╛рд░ рд▓реЙрдЬрд┐рдХрд▓ рдмреНрд▓реЙрдХ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╣рдореЗрдВ рдирдП рдкреЗрдЬ рдХрд╛ json рдорд┐рд▓рддрд╛ рд╣реИ, рдлрд┐рд░ Confluence рдореЗрдВ рдкреЗрдЬ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЕрдиреБрд░реЛрдз рдореЗрдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ Confluence рдХреЛ рдкреЗрдЬ рдирд┐рд░реНрдорд╛рдг рдХреА рд╕реНрдерд┐рддрд┐ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред рдпреЗ рдЪрд╛рд░ рдкрдВрдХреНрддрд┐рдпрд╛рдВ рд╣рдореЗрдВ рдПрдХ рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп рджреГрд╢реНрдп рджреЗрддреА рд╣реИрдВ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрдпрд╛ рдХрд░рддреА рд╣реИред рдпрджрд┐ рд╣рдо Confluence рдореЗрдВ рдкреГрд╖реНрда рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рд╣рдореЗрд╢рд╛ getNewConfluencePageContent рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рд╛рдордЧреНрд░реА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкреГрд╖реНрда рдХреА рд╕рд╛рдордЧреНрд░реА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдЕрдзрд┐рдХ рдХреБрдЫ рдирд╣реАрдВ, рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдлрд╝рдВрдХреНрд╢рди рдХреЛрдб рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рддреЗ рд╕рдордп, рд╣рдо рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╕реЗ рд╡рд┐рдЪрд▓рд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗредрд╣рдо рдпрд╣ рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рд╣реА рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ Confluence рдореЗрдВ рдкреГрд╖реНрда рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЗрд╕рд▓рд┐рдП, рдХрдиреНрдлрд╝реНрдпреВрдЬрд╝рди_рд╣реЗрд▓реНрдкрд░.рдХреНрд▓рд╛рдЗрди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ рдФрд░ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ Confluence рдореЗрдВ рдПрдХ рдкреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдп рдХрд░реЗрдВ:struct Space {
string key;
}
struct Storage {
string value;
string representation;
}
struct Body {
Storage storage;
}
struct CreateConfluencePageRequest {
string type;
string title;
Space space;
Body body;
}
struct CreateConfluencePageResponse {
string status;
}
function createHttpRequest() {
HttpRequest request;
HttpHeader header = httpCreateHeader("Content-Type", "application/json");
HttpHeader authHeader = httpBasicAuthHeader("admin", "admin");
request.headers = addElement(request.headers, header);
request.headers += addElement(request.headers, authHeader);
logPrint("INFO", request);
return request;
}
function createConfluencePage(string confluenceUrl, string pageJson) {
HttpRequest request = createHttpRequest();
CreateConfluencePageResponse result = httpPost(confluenceUrl, request, pageJson);
logPrint("ERROR", "Last error message: " + httpGetErrorMessage());
logPrint("INFO", result);
return result;
}
рдореИрдВрдиреЗ CreateConfluencePage рдлрдВрдХреНрд╢рди рдХреЛ рдПрдХ рдФрд░ рдХрдиреНрдлреНрд▓реБрдПрдВрд╕реБрдПрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдХрд░ рдЗрд╕реЗ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдмрдирд╛ рджрд┐рдпрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдордиреЗ рдирд┐рдпрдо 4 рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛редрдЕрдм рд╣рдорд╛рд░реА рдореБрдЦреНрдп рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:include "confluence_helper.incl";
function getNewConfluencePageContent() {
CreateConfluencePageRequest data;
data.type = "page";
data.title = "Page for issue " + key + " " + summary + ".";
data.space.key = project;
data.body.storage.value = "<p> Author:"+userFullName(currentUser()) + " description: " + description + "</p>";
data.body.storage.representation = "storage";
return toJson(data);
}
function addCommentToJiraIssue(string resultStatus) {
string comment = "Page created in Confluence " + updated + " by " + userFullName(currentUser()) + " Status : " +resultStatus + ".";
addComment(key, currentUser(), comment);
}
const string CONFLUENCE_URL = "http://192.168.54.203:8090/rest/api/content/";
string pageJson = getNewConfluencePageContent();
CreateConfluencePageResponse result = createConfluencePage(CONFLUENCE_URL, pageJson);
addCommentToJiraIssue(result.status);
return result.status;
рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ, рдореИрдВрдиреЗ рдХрдиреНрдлреНрдпреВрдЬрди рдореЗрдВ рдкреЗрдЬ рдХреНрд░рд┐рдПрд╢рди рдлрдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП confluence_helper.incl рдлрд╛рдЗрд▓ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛редрдореИрдВрдиреЗ рдПрдХ рдирд┐рд░рдВрддрд░ рдЪрд░ рдореЗрдВ Confluence рдкрддреЗ рдХреЛ рд╕рд╣реЗрдЬрд╛ рдФрд░ Google Java рд╕рдВрдХреЗрддрди рд╢реИрд▓реА (рдирд┐рдпрдо 7) рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЪрд░ рдирд╛рдореЛрдВ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛редрдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рд░реАрдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд░реЛрдХрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдХреЙрдирдлреНрд▓реБрдПрдВрд╕ рдореЗрдВ рдПрдХ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдкреГрд╖реНрда рдирд┐рд░реНрдорд╛рдг рдХрд╛рд░реНрдп рдорд┐рд▓рд╛, рдФрд░ рд╣рдорд╛рд░рд╛ рдХреЛрдб рдЕрдзрд┐рдХ рдкрдардиреАрдп рдФрд░ рд╕рдорд░реНрдерд┐рдд рд╣реЛ рдЧрдпрд╛ред