Refactor and add pulls
This commit is contained in:
parent
97566abfdf
commit
ee99fb87ab
41
server.js
41
server.js
|
@ -3205,14 +3205,13 @@ cache(function (data, match, sendBadge, request) {
|
||||||
// Docker Hub stars integration.
|
// Docker Hub stars integration.
|
||||||
camp.route(/^\/docker\/stars\/([^\/]+)\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
|
camp.route(/^\/docker\/stars\/([^\/]+)\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
|
||||||
cache(function(data, match, sendBadge, request) {
|
cache(function(data, match, sendBadge, request) {
|
||||||
var user = match[1]; // eg, _ or mashape
|
var user = match[1]; // eg, mashape
|
||||||
var repo = match[2]; // eg, mockbin
|
var repo = match[2]; // eg, kong
|
||||||
var format = match[3];
|
var format = match[3];
|
||||||
// Convert underscore to library for api path
|
|
||||||
var baseURL = 'http://docker.cloudbrain.io/';
|
var baseURL = 'http://docker.cloudbrain.io/';
|
||||||
var path = user+'/'+repo;
|
var path = user + '/' + repo;
|
||||||
var badgeData = getBadgeData('docker', data);
|
var badgeData = getBadgeData('docker', data);
|
||||||
request(baseURL+path, function(err, res, buffer) {
|
request(baseURL + path, function(err, res, buffer) {
|
||||||
if (err != null) {
|
if (err != null) {
|
||||||
badgeData.text[1] = 'inaccessible';
|
badgeData.text[1] = 'inaccessible';
|
||||||
sendBadge(format, badgeData);
|
sendBadge(format, badgeData);
|
||||||
|
@ -3221,7 +3220,7 @@ cache(function(data, match, sendBadge, request) {
|
||||||
try {
|
try {
|
||||||
var data = JSON.parse(buffer);
|
var data = JSON.parse(buffer);
|
||||||
var stars = data.stars;
|
var stars = data.stars;
|
||||||
var starSuffix = data.stars === 1 ? " star" : " stars"
|
var starSuffix = stars === 1 ? " star" : " stars";
|
||||||
badgeData.text[1] = metric(stars) + starSuffix;
|
badgeData.text[1] = metric(stars) + starSuffix;
|
||||||
badgeData.colorscheme = null;
|
badgeData.colorscheme = null;
|
||||||
badgeData.colorB = '#008bb8';
|
badgeData.colorB = '#008bb8';
|
||||||
|
@ -3233,6 +3232,36 @@ cache(function(data, match, sendBadge, request) {
|
||||||
});
|
});
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
// Docker Hub pulls integration.
|
||||||
|
camp.route(/^\/docker\/pulls\/([^\/]+)\/([^\/]+)\.(svg|png|gif|jpg|json)$/,
|
||||||
|
cache(function(data, match, sendBadge, request) {
|
||||||
|
var user = match[1]; // eg, mashape
|
||||||
|
var repo = match[2]; // eg, kong
|
||||||
|
var format = match[3];
|
||||||
|
var baseURL = 'http://docker.cloudbrain.io/';
|
||||||
|
var path = user + '/' + repo;
|
||||||
|
var badgeData = getBadgeData('docker', data);
|
||||||
|
request(baseURL + path, function(err, res, buffer) {
|
||||||
|
if (err != null) {
|
||||||
|
badgeData.text[1] = 'inaccessible';
|
||||||
|
sendBadge(format, badgeData);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
var data = JSON.parse(buffer);
|
||||||
|
var pulls = data.pulls;
|
||||||
|
var pullSuffix = pulls === 1 ? " pull" : " pulls";
|
||||||
|
badgeData.text[1] = metric(pulls) + pullSuffix;
|
||||||
|
badgeData.colorscheme = null;
|
||||||
|
badgeData.colorB = '#008bb8';
|
||||||
|
sendBadge(format, badgeData);
|
||||||
|
} catch(e) {
|
||||||
|
badgeData.text[1] = 'invalid';
|
||||||
|
sendBadge(format, badgeData);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}));
|
||||||
|
|
||||||
// Any badge.
|
// Any badge.
|
||||||
camp.route(/^\/(:|badge\/)(([^-]|--)+)-(([^-]|--)+)-(([^-]|--)+)\.(svg|png|gif|jpg)$/,
|
camp.route(/^\/(:|badge\/)(([^-]|--)+)-(([^-]|--)+)-(([^-]|--)+)\.(svg|png|gif|jpg)$/,
|
||||||
function(data, match, end, ask) {
|
function(data, match, end, ask) {
|
||||||
|
|
4
try.html
4
try.html
|
@ -557,6 +557,10 @@ Pixel-perfect Retina-ready Fast Consistent Hackable
|
||||||
<td><img src='/docker/stars/mashape/kong.svg' alt=''/></td>
|
<td><img src='/docker/stars/mashape/kong.svg' alt=''/></td>
|
||||||
<td><code>https://img.shields.io/docker/stars/mashape/kong.svg</code></td>
|
<td><code>https://img.shields.io/docker/stars/mashape/kong.svg</code></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr><th data-keywords='docker pulls'> Docker Pulls: </th>
|
||||||
|
<td><img src='/docker/pulls/mashape/kong.svg' alt=''/></td>
|
||||||
|
<td><code>https://img.shields.io/docker/pulls/mashape/kong.svg</code></td>
|
||||||
|
</tr>
|
||||||
</tbody></table>
|
</tbody></table>
|
||||||
|
|
||||||
<h2 id="your-badge"> Your Badge </h2>
|
<h2 id="your-badge"> Your Badge </h2>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user