Merge remote-tracking branch 'larsbrinkhoff/magnumci'

This commit is contained in:
Thaddee Tyl 2015-12-29 22:40:01 +01:00
commit 8c88223b6e
2 changed files with 56 additions and 0 deletions

View File

@ -3595,6 +3595,54 @@ cache(function(data, match, sendBadge, request) {
});
}));
// Magnum CI integration
camp.route(/^\/magnumci\/ci\/([^\/]+)(?:\/(.+))?\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {
var projectId = match[1]; // E.g. 96ffb83fa700f069024921b0702e76ff
var branch = match[2]; // E.g. master
var format = match[3];
var options = {
method: 'GET',
uri: 'https://magnum-ci.com/status/' + projectId + '.png'
};
if (branch != null) {
options.uri += '?branch=' + branch;
}
var badgeData = getBadgeData('build', data);
request(options, function(err, res) {
if (err != null) {
badgeData.text[1] = 'inaccessible';
sendBadge(format, badgeData);
return;
}
try {
var statusMatch = res.headers['content-disposition']
.match(/filename="(.+)\.png"/);
if (!statusMatch) {
badgeData.text[1] = 'unknown';
sendBadge(format, badgeData);
return;
}
switch (statusMatch[1]) {
case 'pass':
badgeData.text[1] = 'passing';
badgeData.colorscheme = 'brightgreen';
break;
break;
case 'fail':
badgeData.text[1] = 'failing';
badgeData.colorscheme = 'red';
break;
}
sendBadge(format, badgeData);
} catch(e) {
badgeData.text[1] = 'not found';
sendBadge(format, badgeData);
}
});
}));
// Maven-Central artifact version integration
// API documentation: http://search.maven.org/#api
camp.route(/^\/maven-central\/v\/(.*)\/(.*)\.(svg|png|gif|jpg|json)$/,

View File

@ -104,6 +104,14 @@ Pixel-perfect   Retina-ready   Fast   Consistent   Hackable
<td><img src='/codeship/d6c1ddd0-16a3-0132-5f85-2e35c05e22b1/master.svg' alt=''/></td>
<td><code>https://img.shields.io/codeship/d6c1ddd0-16a3-0132-5f85-2e35c05e22b1/master.svg</code></td>
</tr>
<tr><th> Magnum CI: </th>
<td><img src='/magnumci/ci/96ffb83fa700f069024921b0702e76ff.svg' alt=''/></td>
<td><code>https://img.shields.io/magnumci/ci/96ffb83fa700f069024921b0702e76ff.svg</code></td>
</tr>
<tr><th> Magnum CI: </th>
<td><img src='/magnumci/ci/96ffb83fa700f069024921b0702e76ff/new-meta.svg' alt=''/></td>
<td><code>https://img.shields.io/magnumci/ci/96ffb83fa700f069024921b0702e76ff/new-meta.svg</code></td>
</tr>
<tr><th> CircleCI: </th>
<td><img src='/circleci/project/BrightFlair/PHP.Gt.svg' alt=''/></td>
<td><code>https://img.shields.io/circleci/project/BrightFlair/PHP.Gt.svg</code></td>