aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Merwin <[email protected]>2016-02-26 11:13:37 -0800
committerNick Merwin <[email protected]>2016-02-26 11:13:37 -0800
commitc931ed671d058f28be26b9148f821e1330c7e57c (patch)
tree1adfe39adf4aa7ed7b323aee3dec8f873260e8f7
parent8c06415c4dfbd72043f26afdf7e34313d5c4444d (diff)
downloadnode-coveralls-c931ed671d058f28be26b9148f821e1330c7e57c.tar.xz
node-coveralls-c931ed671d058f28be26b9148f821e1330c7e57c.zip
added gitlab-ci support
-rw-r--r--lib/getOptions.js14
-rw-r--r--package.json2
-rw-r--r--test/getOptions.js25
3 files changed, 37 insertions, 4 deletions
diff --git a/lib/getOptions.js b/lib/getOptions.js
index 4c53e36..682920b 100644
--- a/lib/getOptions.js
+++ b/lib/getOptions.js
@@ -28,7 +28,7 @@ var getBaseOptions = function(cb){
options.service_name = 'drone';
options.service_job_id = process.env.DRONE_BUILD_NUMBER;
git_commit = process.env.DRONE_COMMIT;
- git_branch = process.env.DRONE_BRANCH;
+ git_branch = process.env.DRONE_BRANCH;
}
*/
@@ -63,7 +63,15 @@ var getBaseOptions = function(cb){
options.service_name = 'wercker';
options.service_job_id = process.env.WERCKER_BUILD_ID;
git_commit = process.env.WERCKER_GIT_COMMIT;
- git_branch = process.env.WERCKER_GIT_BRANCH;
+ git_branch = process.env.WERCKER_GIT_BRANCH;
+ }
+
+ if (process.env.GITLAB_CI){
+ options.service_name = 'gitlab-ci';
+ options.service_job_number = process.env.CI_BUILD_NAME;
+ options.service_job_id = process.env.CI_BUILD_ID;
+ git_commit = process.env.CI_BUILD_REF;
+ git_branch = process.env.CI_BUILD_REF_NAME;
}
options.run_at = process.env.COVERALLS_RUN_AT || JSON.stringify(new Date()).slice(1, -1);
@@ -131,7 +139,7 @@ var getOptions = function(cb, _userOptions){
getBaseOptions(function(err, options){
// minimist populates options._ with non-option command line arguments
var firstNonOptionArgument = index.options._[0];
-
+
if (firstNonOptionArgument)
options.filepath = firstNonOptionArgument;
diff --git a/package.json b/package.json
index 7e7f4e1..819e213 100644
--- a/package.json
+++ b/package.json
@@ -5,7 +5,7 @@
"coverage",
"coveralls"
],
- "version": "2.11.6",
+ "version": "2.11.7",
"bugs": {
"url": "https://github.com/nickmerwin/node-coveralls/issues"
},
diff --git a/test/getOptions.js b/test/getOptions.js
index 897427c..4bbe7d6 100644
--- a/test/getOptions.js
+++ b/test/getOptions.js
@@ -138,6 +138,9 @@ describe("getOptions", function(){
it ("should set service_name and service_job_id if it's running on wercker", function(done){
testWercker(getOptions, done);
});
+ it ("should set service_name and service_job_id if it's running on Gitlab", function(done){
+ testGitlab(getOptions, done);
+ });
it ("should override set options with user options", function(done){
var userOptions = {service_name: 'OVERRIDDEN_SERVICE_NAME'};
process.env.COVERALLS_SERVICE_NAME = "SERVICE_NAME";
@@ -382,6 +385,28 @@ var testWercker = function(sut, done) {
});
};
+var testGitlab = function(sut, done) {
+ process.env.GITLAB_CI = true;
+ process.env.CI_BUILD_NAME = 'spec:one';
+ process.env.CI_BUILD_ID = "1234";
+ process.env.CI_BUILD_REF = "e3e3e3e3e3e3e3e3e";
+ process.env.CI_BUILD_REF_NAME = "feature";
+ sut(function(err, options){
+ options.service_name.should.equal("gitlab-ci");
+ options.service_job_id.should.equal("1234");
+ options.git.should.eql({ head:
+ { id: 'e3e3e3e3e3e3e3e3e',
+ author_name: 'Unknown Author',
+ author_email: '',
+ committer_name: 'Unknown Committer',
+ committer_email: '',
+ message: 'Unknown Commit Message' },
+ branch: 'feature',
+ remotes: [] });
+ done();
+ });
+};
+
function ensureLocalGitContext(options) {
var path = require('path');
var fs = require('fs');