From 2fb137eefba11b1ca5139e4f6269451229586cf3 Mon Sep 17 00:00:00 2001 From: Marc Riegel Date: Sun, 26 Jun 2016 08:02:09 +0200 Subject: Feature: Support codeship docker environment variables --- lib/getOptions.js | 9 ++++++++- test/getOptions.js | 9 ++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/lib/getOptions.js b/lib/getOptions.js index e579eee..2536067 100644 --- a/lib/getOptions.js +++ b/lib/getOptions.js @@ -9,6 +9,7 @@ var getBaseOptions = function(cb){ var options = {}; var git_commit = process.env.COVERALLS_GIT_COMMIT; var git_branch = process.env.COVERALLS_GIT_BRANCH; + var git_committer_name, git_committer_email, git_message; var match = (process.env.CI_PULL_REQUEST || "").match(/(\d+)$/); @@ -57,6 +58,9 @@ var getBaseOptions = function(cb){ options.service_job_id = process.env.CI_BUILD_NUMBER; git_commit = process.env.CI_COMMIT_ID; git_branch = process.env.CI_BRANCH; + git_committer_name = process.env.CI_COMMITTER_NAME; + git_committer_email = process.env.CI_COMMITTER_EMAIL; + git_message = process.env.CI_COMMIT_MESSAGE; } if (process.env.WERCKER){ @@ -123,7 +127,10 @@ var getBaseOptions = function(cb){ if (git_commit){ fetchGitData({ head: { - id: git_commit + id: git_commit, + committer_name: git_committer_name, + committer_email: git_committer_email, + message: git_message }, branch: git_branch }, function(err, git){ diff --git a/test/getOptions.js b/test/getOptions.js index 3394a85..b82f365 100644 --- a/test/getOptions.js +++ b/test/getOptions.js @@ -338,6 +338,9 @@ var testCodeship = function(sut, done) { process.env.CI_BUILD_NUMBER = '1234'; process.env.CI_COMMIT_ID = "e3e3e3e3e3e3e3e3e"; process.env.CI_BRANCH = "master"; + process.env.CI_COMMITTER_NAME = "John Doe"; + process.env.CI_COMMITTER_EMAIL = "jd@example.com"; + process.env.CI_COMMIT_MESSAGE = "adadadadadadadadadad"; sut(function(err, options){ options.service_name.should.equal("codeship"); options.service_job_id.should.equal("1234"); @@ -345,9 +348,9 @@ var testCodeship = function(sut, done) { { id: 'e3e3e3e3e3e3e3e3e', author_name: 'Unknown Author', author_email: '', - committer_name: 'Unknown Committer', - committer_email: '', - message: 'Unknown Commit Message' }, + committer_name: 'John Doe', + committer_email: 'jd@example.com', + message: 'adadadadadadadadadad' }, branch: 'master', remotes: [] }); done(); -- cgit v1.2.3 From 377b8a7345858e4af88e5a7dcc51552a8b712aef Mon Sep 17 00:00:00 2001 From: Paul Betts Date: Wed, 17 Aug 2016 13:23:27 -0700 Subject: Add a test --- test/getOptions.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/test/getOptions.js b/test/getOptions.js index 3394a85..eefd083 100644 --- a/test/getOptions.js +++ b/test/getOptions.js @@ -418,6 +418,26 @@ var testGitlab = function(sut, done) { }); }; +var testGitlab = function(sut, done) { + process.env.CI_NAME = 'surf'; + process.env.SURF_SHA1 = "e3e3e3e3e3e3e3e3e"; + process.env.SURF_REF = "feature"; + sut(function(err, options){ + options.service_name.should.equal("surf"); + 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'); -- cgit v1.2.3 From 2f636d2c193e5e35ef2b93f3fc1c46e2c3c97b71 Mon Sep 17 00:00:00 2001 From: Paul Betts Date: Wed, 17 Aug 2016 13:25:31 -0700 Subject: Wire up the code --- lib/getOptions.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/getOptions.js b/lib/getOptions.js index e579eee..70420b2 100644 --- a/lib/getOptions.js +++ b/lib/getOptions.js @@ -80,6 +80,11 @@ var getBaseOptions = function(cb){ git_commit = process.env.APPVEYOR_REPO_COMMIT; git_branch = process.env.APPVEYOR_REPO_BRANCH; } + if(process.env.SURF_SHA1){ + options.service_name = 'surf'; + git_commit = process.env.SURF_SHA1; + git_branch = process.env.SURF_REF; + } options.run_at = process.env.COVERALLS_RUN_AT || JSON.stringify(new Date()).slice(1, -1); if (process.env.COVERALLS_SERVICE_NAME){ options.service_name = process.env.COVERALLS_SERVICE_NAME; -- cgit v1.2.3 From d78dda89ff80acb94d2a90cd7a8b60cf4d14914f Mon Sep 17 00:00:00 2001 From: Paul Betts Date: Wed, 17 Aug 2016 13:32:34 -0700 Subject: I am a dum --- test/getOptions.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/test/getOptions.js b/test/getOptions.js index eefd083..3fabebd 100644 --- a/test/getOptions.js +++ b/test/getOptions.js @@ -144,6 +144,9 @@ describe("getOptions", function(){ it ("should set service_name and service_job_id if it's running on Gitlab", function(done){ testGitlab(getOptions, done); }); + it ("should set service_name and service_job_id if it's running via Surf", function(done){ + testSurf(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"; @@ -418,7 +421,7 @@ var testGitlab = function(sut, done) { }); }; -var testGitlab = function(sut, done) { +var testSurf = function(sut, done) { process.env.CI_NAME = 'surf'; process.env.SURF_SHA1 = "e3e3e3e3e3e3e3e3e"; process.env.SURF_REF = "feature"; -- cgit v1.2.3