projects
/
mantis2gitlab
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
78d8a0a
)
fixes
author
markus schnalke
<meillo@marmaro.de>
Wed, 13 Feb 2019 12:25:00 +0000
(13:25 +0100)
committer
markus schnalke
<meillo@marmaro.de>
Sun, 2 Jan 2022 09:37:40 +0000
(10:37 +0100)
m2gl.js
patch
|
blob
|
history
diff --git
a/m2gl.js
b/m2gl.js
index
5211b8f
..
53d9b5b
100644
(file)
--- a/
m2gl.js
+++ b/
m2gl.js
@@
-26,8
+26,8
@@
var argv = require('optimist')
.describe('f', 'The first issue # to import (Example: 123)')
.argv;
.describe('f', 'The first issue # to import (Example: 123)')
.argv;
-var inputFile = __dirname + '/' + argv.input;
-var configFile = __dirname + '/' + argv.config;
+var inputFile = argv.input;
+var configFile = argv.config;
var fromIssueId = Number(argv.from||0);
var gitlabAPIURLBase = argv.gitlaburl + '/api/v4';
var gitlabProjectName = argv.project;
var fromIssueId = Number(argv.from||0);
var gitlabAPIURLBase = argv.gitlaburl + '/api/v4';
var gitlabProjectName = argv.project;
@@
-58,9
+58,10
@@
promise.then(function() {
*/
function getConfig() {
log_progress("Reading configuration...");
*/
function getConfig() {
log_progress("Reading configuration...");
- return FS.read(configFile, {encoding: 'utf8'})
+ return FS.read(configFile)
.then(function(data) {
var config = JSON.parse(data);
.then(function(data) {
var config = JSON.parse(data);
+
config.users = _.extend({
"": {
name: "Unknown",
config.users = _.extend({
"": {
name: "Unknown",
@@
-117,8
+118,11
@@
function getGitLabProject() {
var url = gitlabAPIURLBase + '/projects';
var data = { per_page: 100, private_token: gitlabAdminPrivateToken, sudo: gitlabSudo };
var url = gitlabAPIURLBase + '/projects';
var data = { per_page: 100, private_token: gitlabAdminPrivateToken, sudo: gitlabSudo };
- return rest.get(url, {data: data}).then(function(result) {
-
+ return rest.get(url, {data: data})
+ .fail(function(err) {
+ console.log(err);
+ })
+ .then(function(result) {
gitLab.project = _.find(result, { path_with_namespace : gitlabProjectName }) || null;
if (!gitLab.project) {
gitLab.project = _.find(result, { path_with_namespace : gitlabProjectName }) || null;
if (!gitLab.project) {
@@
-153,7
+157,7
@@
function mapGitLabUserIds() {
var users = config.users,
gitlabUsers = gitLab.gitlabUsers;
_.forEach(users, function(user) {
var users = config.users,
gitlabUsers = gitLab.gitlabUsers;
_.forEach(users, function(user) {
- user.gl_id = (_.find(gitlabUsers, { id: user.gl_username }) || {}).id;
+ user.gl_id = (_.find(gitlabUsers, { username: user.gl_username }) || {}).id;
});
}
});
}
@@
-228,13
+232,15
@@
function importIssue(mantisIssue) {
return getIssue(gitLab.project.id, issueId)
.then(function(gitLabIssue) {
if (gitLabIssue) {
return getIssue(gitLab.project.id, issueId)
.then(function(gitLabIssue) {
if (gitLabIssue) {
- return updateIssue(gitLab.project.id, issueId, _.extend({
+ return updateIssue(gitLab.project.id, gitLabIssue.iid, _.extend({
state_event: isClosed(mantisIssue) ? 'close' : 'reopen'
}, data))
.then(function() {
state_event: isClosed(mantisIssue) ? 'close' : 'reopen'
}, data))
.then(function() {
- console.log(("#" + issueId + ": Updated successfully.").green);
+ console.log(("#" + gitLabIssue.iid + ": Updated successfully.").green);
});
} else {
});
} else {
+ console.log(data.title);
+ //return true; // FIXME
return insertSkippedIssues(issueId-1)
.then(function() {
return insertAndCloseIssue(issueId, data, isClosed(mantisIssue));
return insertSkippedIssues(issueId-1)
.then(function() {
return insertAndCloseIssue(issueId, data, isClosed(mantisIssue));
@@
-248,7
+254,8
@@
function insertSkippedIssues(issueId) {
return Q();
}
return Q();
}
- console.warn(("Skipping Missing Mantis Issue (<= #" + issueId + ") ...").yellow);
+ //FIXME console.warn(("Skipping Missing Mantis Issue (<= #" + issueId + ") ...").yellow);
+ console.log(("Adding" + issueId + ") ...").blue);
var data = {
title: "--Platzhalter--",
var data = {
title: "--Platzhalter--",
@@
-318,13
+325,18
@@
function getRemainingGitLabProjectIssues(page, per_page) {
log_progress("Fetching Project Issues from GitLab [" + (from + 1) + "-" + (from + per_page) + "]...");
var url = gitlabAPIURLBase + '/projects/' + gitLab.project.id + "/issues";
var data = {
log_progress("Fetching Project Issues from GitLab [" + (from + 1) + "-" + (from + per_page) + "]...");
var url = gitlabAPIURLBase + '/projects/' + gitLab.project.id + "/issues";
var data = {
+ page: page,
+ per_page: per_page,
// FIXME: schnalke
// FIXME: schnalke
- //page: page,
- //per_page: per_page,
//order_by: 'id',
private_token: gitlabAdminPrivateToken, sudo: gitlabSudo };
//order_by: 'id',
private_token: gitlabAdminPrivateToken, sudo: gitlabSudo };
- return rest.get(url, {data: data}).then(function(issues) {
+ return rest.get(url, {data: data})
+ return rest.get(url, {data: data})
+ .fail(function(err) {
+ console.log(err);
+ })
+ .then(function(issues) {
if(issues.length < per_page) {
return issues;
}
if(issues.length < per_page) {
return issues;
}
@@
-444,8
+456,8
@@
function insertIssue(projectId, data) {
});
}
});
}
-function updateIssue(projectId, issueId, data) {
- var url = gitlabAPIURLBase + '/projects/' + projectId + '/issues/' + issueId;
+function updateIssue(projectId, issueIId, data) {
+ var url = gitlabAPIURLBase + '/projects/' + projectId + '/issues/' + issueIId;
return rest.put(url, {data: data})
.then(null, function(error) {
return rest.put(url, {data: data})
.then(null, function(error) {
@@
-454,7
+466,7
@@
function updateIssue(projectId, issueId, data) {
}
function closeIssue(issue, custom) {
}
function closeIssue(issue, custom) {
- var url = gitlabAPIURLBase + '/projects/' + issue.project_id + '/issues/' + issue.id;
+ var url = gitlabAPIURLBase + '/projects/' + issue.project_id + '/issues/' + issue.iid;
var data = _.extend({
state_event: 'close',
private_token: gitlabAdminPrivateToken,
var data = _.extend({
state_event: 'close',
private_token: gitlabAdminPrivateToken,