|
@@ -6,7 +6,8 @@ const fs = require('fs'),
|
|
|
const sourceDir = process.argv[2],
|
|
|
sourceRepo = process.argv[3],
|
|
|
destUrl = process.argv[4],
|
|
|
- destRepo = process.argv[5];
|
|
|
+ destRepo = process.argv[5],
|
|
|
+ actions = process.argv[6];
|
|
|
|
|
|
process.chdir(sourceDir);
|
|
|
|
|
@@ -41,7 +42,7 @@ function createIssue (issue) {
|
|
|
body: {
|
|
|
title: issue.title,
|
|
|
body: `Originally at ${issue.created_at} by ${username}${issue.closed_at ? ` closed at ${issue.closed_at}` : ""}${issue.type === "pull_request" ? " (pull request)" : ""}\r\n\r\n${issue.body}`,
|
|
|
- closed: !!issue.closed_at,
|
|
|
+ // closed: !!issue.closed_at,
|
|
|
labels: [] //issue.labels.map(each => each.split('/').pop())
|
|
|
}
|
|
|
})
|
|
@@ -54,12 +55,33 @@ function createIssue (issue) {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+function setCloseIssue (issue) {
|
|
|
+ const index = issue.url.split('/').pop();
|
|
|
+
|
|
|
+ if (issue.closed_at) return rp
|
|
|
+ .patch(`${destUrl}/api/v1/repos/${destRepo}/issues/${index}`, {
|
|
|
+ json: true,
|
|
|
+ resolveWithFullResponse: true,
|
|
|
+ body: {
|
|
|
+ state: "closed"
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch(err => {
|
|
|
+ console.error(err);
|
|
|
+ })
|
|
|
+ .then(res => {
|
|
|
+ console.log(issue.title);
|
|
|
+ if (res) console.log(res.statusCode);
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
function processIssue (issues) {
|
|
|
const issue = issues.shift();
|
|
|
if (!issue) return Promise.resolve();
|
|
|
|
|
|
return Promise.resolve()
|
|
|
- .then(() => createIssue(issue))
|
|
|
+ .then(() => /\bcreate\b/.test(actions) && createIssue(issue))
|
|
|
+ .then(() => /\bsetclose\b/.test(actions) && setCloseIssue(issue))
|
|
|
.then(() => processIssue(issues));
|
|
|
}
|
|
|
|