Add Wercker support

Resolves badges/shields#265
This commit is contained in:
Mr. Hyde 2014-10-26 04:19:00 +01:00 committed by Thaddee Tyl
parent 4bb64730e7
commit a63c36664e
2 changed files with 39 additions and 0 deletions

View File

@ -308,6 +308,41 @@ cache(function(data, match, sendBadge, request) {
});
}));
// Wercker integration
camp.route(/^\/wercker\/(.+)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {
var projectId = match[1]; // eg, `54330318b4ce963d50020750`
var format = match[2];
var options = {
method: 'GET',
json: true,
uri: 'https://app.wercker.com/getbuilds/' + projectId + '?limit=1'
};
var badgeData = getBadgeData('build', data);
request(options, function(err, res, json) {
if (err != null || json == null
|| (json.length !== undefined && json.length === 0)) {
badgeData.text[1] = 'inaccessible';
sendBadge(format, badgeData);
return;
}
var build = json[0];
if (build.status === 'finished') {
if (build.result === 'passed') {
badgeData.colorscheme = 'brightgreen';
badgeData.text[1] = build.result;
} else {
badgeData.colorscheme = 'red';
badgeData.text[1] = build.result;
}
} else {
badgeData.text[1] = build.status;
}
sendBadge(format, badgeData);
});
}));
// AppVeyor CI integration.
camp.route(/^\/appveyor\/ci\/(.*)\.(svg|png|gif|jpg|json)$/,
cache(function(data, match, sendBadge, request) {

View File

@ -154,6 +154,10 @@ I made the GitHub Badge Service.
<td><img src='/travis/joyent/node/v0.6.svg' alt=''/></td>
<td><code>http://img.shields.io/travis/joyent/node/v0.6.svg</code></td>
</tr>
<tr><th> Wercker: </th>
<td><img src='/wercker/54330318b4ce963d50020750.svg' alt=''/></td>
<td><code>http://img.shields.io/wercker/54330318b4ce963d50020750.svg</code></td>
</tr>
<tr><th> TeamCity CodeBetter: </th>
<td><img src='/teamcity/codebetter/bt428.svg' alt=''/></td>
<td><code>http://img.shields.io/teamcity/codebetter/bt428.svg</code></td>