Merge branch 'jenkins'

This commit is contained in:
Thaddee Tyl
2017-01-30 23:34:25 +01:00
2 changed files with 37 additions and 26 deletions
+31 -20
View File
@@ -3849,16 +3849,19 @@ cache(function(data, match, sendBadge, request) {
}));
// Jenkins build status integration
camp.route(/^\/jenkins(-ci)?\/s\/(http(s)?)\/((?:[^\/]+)(?:\/.+?)?)\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
camp.route(/^\/jenkins(?:-ci)?\/s\/(http(?:s)?)\/([^\/]+)\/(.+)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {
var scheme = match[2]; // http(s)
var host = match[4]; // jenkins.qa.ubuntu.com
var job = match[5]; // precise-desktop-amd64_default
var format = match[6];
var scheme = match[1]; // http(s)
var host = match[2]; // example.org:8080
var job = match[3]; // folder/job
var format = match[4];
var options = {
json: true,
uri: scheme + '://' + host + '/job/' + job + '/api/json?tree=color'
};
if (job.indexOf('/') > -1 ) {
options.uri = scheme + '://' + host + '/' + job + '/api/json?tree=color';
}
if (serverSecrets && serverSecrets.jenkins_user) {
options.auth = {
@@ -3902,17 +3905,21 @@ cache(function(data, match, sendBadge, request) {
}));
// Jenkins tests integration
camp.route(/^\/jenkins(-ci)?\/t\/(http(s)?)\/((?:[^\/]+)(?:\/.+?)?)\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
camp.route(/^\/jenkins(?:-ci)?\/t\/(http(?:s)?)\/([^\/]+)\/(.+)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {
var scheme = match[2]; // http(s)
var host = match[4]; // jenkins.qa.ubuntu.com
var job = match[5]; // precise-desktop-amd64_default
var format = match[6];
var scheme = match[1]; // http(s)
var host = match[2]; // example.org:8080
var job = match[3]; // folder/job
var format = match[4];
var options = {
json: true,
uri: scheme + '://' + host + '/job/' + job
+ '/lastBuild/api/json?tree=actions[failCount,skipCount,totalCount]'
};
if (job.indexOf('/') > -1 ) {
options.uri = scheme + '://' + host + '/' + job
+ '/lastBuild/api/json?tree=actions[failCount,skipCount,totalCount]';
}
if (serverSecrets && serverSecrets.jenkins_user) {
options.auth = {
@@ -3958,17 +3965,21 @@ cache(function(data, match, sendBadge, request) {
}));
// Jenkins coverage integration
camp.route(/^\/jenkins(-ci)?\/c\/(http(s)?)\/((?:[^\/]+)(?:\/.+?)?)\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
camp.route(/^\/jenkins(?:-ci)?\/c\/(http(?:s)?)\/([^\/]+)\/(.+)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {
var scheme = match[2]; // http(s)
var host = match[4]; // jenkins.qa.ubuntu.com
var job = match[5]; // precise-desktop-amd64_default
var format = match[6];
var scheme = match[1]; // http(s)
var host = match[2]; // example.org:8080
var job = match[3]; // folder/job
var format = match[4];
var options = {
json: true,
uri: scheme + '://' + host + '/job/' + job
+ '/lastBuild/cobertura/api/json?tree=results[elements[name,denominator,numerator,ratio]]'
};
if (job.indexOf('/') > -1 ) {
options.uri = scheme + '://' + host + '/' + job
+ '/lastBuild/cobertura/api/json?tree=results[elements[name,denominator,numerator,ratio]]';
}
if (serverSecrets && serverSecrets.jenkins_user) {
options.auth = {
@@ -4632,7 +4643,7 @@ cache(function(data, match, sendBadge, request) {
queryParams['filter'] = 'completed';
// Custom Banch if present
if(branch != null) {
if (branch != null) {
apiUrl += "/tree/" + branch;
}
@@ -6240,7 +6251,7 @@ function phpStableVersion(version) {
// This searches the serverSecrets for a twitter consumer key
// and secret, and exchanges them for a bearer token to use for all requests.
function fetchTwitterToken() {
if(serverSecrets.twitter_consumer_key && serverSecrets.twitter_consumer_secret){
if (serverSecrets.twitter_consumer_key && serverSecrets.twitter_consumer_secret){
// fetch a bearer token good for this app session
// construct this bearer request with a base64 encoding of key:secret
// docs for this are here: https://dev.twitter.com/oauth/application-only
@@ -6257,13 +6268,13 @@ function fetchTwitterToken() {
};
console.log('Fetching twitter bearer token...');
request(options,function(err,res,buffer){
if(err){
if (err) {
console.error('Error fetching twitter bearer token, error: ', err);
return;
}
try{
try {
var data = JSON.parse(buffer);
if(data.token_type === 'bearer'){
if (data.token_type === 'bearer') {
serverSecrets.twitter_bearer_token = data.access_token;
console.log('Fetched twitter bearer token');
return;