Modernize some examples teamcity azuredevops travis [uptimerobot vaadin vscode-marketplace] (#2444)

Ref #1961
This commit is contained in:
Paul Melnikow
2018-12-04 16:44:30 -05:00
committed by GitHub
parent 986d215c18
commit a35e877391
8 changed files with 125 additions and 36 deletions

View File

@@ -92,7 +92,11 @@ module.exports = class AzureDevOpsTests extends BaseAzureDevOpsService {
{
title: 'Azure DevOps tests',
pattern: ':organization/:project/:definitionId',
exampleUrl: 'azuredevops-powershell/azuredevops-powershell/1',
namedParams: {
organization: 'azuredevops-powershell',
project: 'azuredevops-powershell',
definitionId: '1',
},
staticExample: this.render({
passed: 20,
failed: 1,
@@ -105,7 +109,12 @@ module.exports = class AzureDevOpsTests extends BaseAzureDevOpsService {
{
title: 'Azure DevOps tests (branch)',
pattern: ':organization/:project/:definitionId/:branch',
exampleUrl: 'azuredevops-powershell/azuredevops-powershell/1/master',
namedParams: {
organization: 'azuredevops-powershell',
project: 'azuredevops-powershell',
definitionId: '1',
branch: 'master',
},
staticExample: this.render({
passed: 20,
failed: 1,
@@ -118,7 +127,11 @@ module.exports = class AzureDevOpsTests extends BaseAzureDevOpsService {
{
title: 'Azure DevOps tests (compact)',
pattern: ':organization/:project/:definitionId',
exampleUrl: 'azuredevops-powershell/azuredevops-powershell/1',
namedParams: {
organization: 'azuredevops-powershell',
project: 'azuredevops-powershell',
definitionId: '1',
},
queryParams: {
compact_message: null,
},
@@ -135,7 +148,11 @@ module.exports = class AzureDevOpsTests extends BaseAzureDevOpsService {
{
title: 'Azure DevOps tests with custom labels',
pattern: ':organization/:project/:definitionId',
exampleUrl: 'azuredevops-powershell/azuredevops-powershell/1',
namedParams: {
organization: 'azuredevops-powershell',
project: 'azuredevops-powershell',
definitionId: '1',
},
keywords: ['vso', 'vsts', 'azure-devops'],
queryParams: {
passed_label: 'good',

View File

@@ -6,7 +6,6 @@ const {
coveragePercentage: coveragePercentageColor,
} = require('../../lib/color-formatters')
// TeamCity CodeBetter code coverage.
module.exports = class TeamcityCoverage extends LegacyService {
static get category() {
return 'build'
@@ -15,6 +14,7 @@ module.exports = class TeamcityCoverage extends LegacyService {
static get route() {
return {
base: 'teamcity/coverage',
pattern: ':buildType',
}
}
@@ -22,11 +22,18 @@ module.exports = class TeamcityCoverage extends LegacyService {
return [
{
title: 'TeamCity CodeBetter Coverage',
previewUrl: 'bt428',
namedParams: { buildType: 'bt428' },
staticPreview: { message: '55%', color: 'yellow' },
},
]
}
static get defaultBadgeData() {
return {
label: 'coverage',
}
}
static registerLegacyRouteHandler({ camp, cache }) {
camp.route(
/^\/teamcity\/coverage\/(.*)\.(svg|png|gif|jpg|json)$/,

View File

@@ -17,6 +17,13 @@ module.exports = class TravisPhpVersion extends LegacyService {
static get route() {
return {
base: 'travis/php-v',
pattern: ':user/:repo',
}
}
static get defaultBadgeData() {
return {
label: 'php',
}
}
@@ -24,7 +31,8 @@ module.exports = class TravisPhpVersion extends LegacyService {
return [
{
title: 'PHP from Travis config',
previewUrl: 'symfony/symfony',
namedParams: { user: 'symfony', repo: 'symfony' },
staticPreview: { message: '^7.1.3', color: 'blue' },
},
]
}

View File

@@ -59,8 +59,8 @@ module.exports = class UptimeRobotBase extends BaseJsonService {
}
}
async fetch({ monitorApiKey, numberOfDays }) {
this.constructor.ensureIsMonitorApiKey(monitorApiKey)
async fetch({ monitorSpecificKey, numberOfDays }) {
this.constructor.ensureIsMonitorApiKey(monitorSpecificKey)
let opts, schema
if (numberOfDays) {
@@ -80,7 +80,7 @@ module.exports = class UptimeRobotBase extends BaseJsonService {
'content-type': 'application/x-www-form-urlencoded',
},
form: {
api_key: monitorApiKey,
api_key: monitorSpecificKey,
format: 'json',
...opts,
},

View File

@@ -15,7 +15,7 @@ module.exports = class UptimeRobotRatio extends UptimeRobotBase {
static get route() {
return {
base: 'uptimerobot/ratio',
pattern: ':numberOfDays(\\d+)?/:monitorApiKey',
pattern: ':numberOfDays(\\d+)?/:monitorSpecificKey',
}
}
@@ -23,14 +23,18 @@ module.exports = class UptimeRobotRatio extends UptimeRobotBase {
return [
{
title: 'Uptime Robot ratio (30 days)',
exampleUrl: 'm778918918-3e92c097147760ee39d02d36',
pattern: ':monitor-specific-key',
pattern: ':monitorSpecificKey',
namedParams: {
monitorSpecificKey: 'm778918918-3e92c097147760ee39d02d36',
},
staticExample: this.render({ ratio: 100 }),
},
{
title: 'Uptime Robot ratio (7 days)',
exampleUrl: '7/m778918918-3e92c097147760ee39d02d36',
pattern: '7/:monitor-specific-key',
pattern: '7/:monitorSpecificKey',
namedParams: {
monitorSpecificKey: 'm778918918-3e92c097147760ee39d02d36',
},
staticExample: this.render({ ratio: 100 }),
},
]
@@ -43,8 +47,8 @@ module.exports = class UptimeRobotRatio extends UptimeRobotBase {
}
}
async handle({ numberOfDays = 30, monitorApiKey }) {
const { monitors } = await this.fetch({ monitorApiKey, numberOfDays })
async handle({ numberOfDays = 30, monitorSpecificKey }) {
const { monitors } = await this.fetch({ monitorSpecificKey, numberOfDays })
const ratio = Number.parseFloat(monitors[0].custom_uptime_ratio)
return this.constructor.render({ ratio })
}

View File

@@ -12,7 +12,7 @@ module.exports = class UptimeRobotStatus extends UptimeRobotBase {
static get route() {
return {
base: 'uptimerobot/status',
pattern: ':monitorApiKey',
pattern: ':monitorSpecificKey',
}
}
@@ -20,8 +20,9 @@ module.exports = class UptimeRobotStatus extends UptimeRobotBase {
return [
{
title: 'Uptime Robot status',
exampleUrl: 'm778918918-3e92c097147760ee39d02d36',
pattern: ':monitor-specific-key',
namedParams: {
monitorSpecificKey: 'm778918918-3e92c097147760ee39d02d36',
},
staticExample: this.render({ status: 2 }),
},
]
@@ -44,8 +45,8 @@ module.exports = class UptimeRobotStatus extends UptimeRobotBase {
}
}
async handle({ monitorApiKey }) {
const { monitors } = await this.fetch({ monitorApiKey })
async handle({ monitorSpecificKey }) {
const { monitors } = await this.fetch({ monitorSpecificKey })
const { status } = monitors[0]
return this.constructor.render({ status })
}

View File

@@ -27,17 +27,35 @@ class VaadinDirectoryRating extends LegacyService {
return [
{
title: 'Vaadin Directory',
previewUrl: 'rating/vaadinvaadin-grid',
pattern: 'rating/:packageName',
namedParams: { packageName: 'vaadinvaadin-grid' },
staticPreview: {
label: 'rating',
message: '5.0/5',
color: 'brightgreen',
},
keywords: ['vaadin-directory', 'vaadin directory', 'rating'],
},
{
title: 'Vaadin Directory',
previewUrl: 'stars/vaadinvaadin-grid',
pattern: 'stars/:packageName',
namedParams: { packageName: 'vaadinvaadin-grid' },
staticPreview: {
label: 'stars',
message: starRating(4.75),
color: 'brightgreen',
},
keywords: ['vaadin-directory', 'vaadin directory', 'star', 'stars'],
},
{
title: 'Vaadin Directory',
previewUrl: 'rating-count/vaadinvaadin-grid',
pattern: 'rating-count/:packageName',
namedParams: { packageName: 'vaadinvaadin-grid' },
staticPreview: {
label: 'rating count',
message: '6 total',
color: 'yellow',
},
keywords: [
'vaadin-directory',
'vaadin directory',
@@ -59,6 +77,7 @@ class VaadinDirectoryVersion extends LegacyService {
static get route() {
return {
base: 'vaadin-directory/v',
pattern: ':packageName',
}
}
@@ -66,7 +85,12 @@ class VaadinDirectoryVersion extends LegacyService {
return [
{
title: 'Vaadin Directory',
previewUrl: 'vaadinvaadin-grid',
namedParams: { packageName: 'vaadinvaadin-grid' },
staticPreview: {
label: 'latest ver',
message: 'v5.3.0-alpha4',
color: '00b4f0',
},
keywords: [
'vaadin-directory',
'vaadin directory',
@@ -88,6 +112,7 @@ class VaadinDirectoryStatus extends LegacyService {
static get route() {
return {
base: 'vaadin-directory/status',
pattern: ':packageName',
}
}
@@ -95,7 +120,12 @@ class VaadinDirectoryStatus extends LegacyService {
return [
{
title: 'Vaadin Directory',
previewUrl: 'vaadinvaadin-grid',
namedParams: { packageName: 'vaadinvaadin-grid' },
staticPreview: {
label: 'vaadin directory',
message: 'published',
color: '00b4f0',
},
keywords: ['vaadin-directory', 'vaadin directory', 'status'],
},
]
@@ -112,6 +142,7 @@ class VaadinDirectoryReleaseDate extends LegacyService {
static get route() {
return {
base: 'vaadin-directory/release-date',
pattern: ':packageName',
}
}
@@ -119,7 +150,12 @@ class VaadinDirectoryReleaseDate extends LegacyService {
return [
{
title: 'Vaadin Directory',
previewUrl: 'vaadinvaadin-grid',
namedParams: { packageName: 'vaadinvaadin-grid' },
staticPreview: {
label: 'latest release date',
message: 'last wednesday',
color: 'brightgreen',
},
keywords: [
'vaadin-directory',
'vaadin directory',

View File

@@ -13,6 +13,8 @@ const {
const { addv: versionText } = require('../../lib/text-formatters')
const { version: versionColor } = require('../../lib/color-formatters')
const keywords = ['vscode-marketplace']
//To generate API request Options for VS Code marketplace
function getVscodeApiReqOptions(packageName) {
return {
@@ -56,6 +58,7 @@ class VscodeMarketplaceDownloads extends LegacyService {
static get route() {
return {
base: 'vscode-marketplace/d',
pattern: ':repo',
}
}
@@ -63,8 +66,9 @@ class VscodeMarketplaceDownloads extends LegacyService {
return [
{
title: 'Visual Studio Marketplace',
previewUrl: 'ritwickdey.LiveServer',
keywords: ['vscode-marketplace'],
namedParams: { repo: 'ritwickdey.LiveServer' },
staticPreview: { message: '1M', color: 'brightgreen' },
keywords,
},
]
}
@@ -87,13 +91,17 @@ class VscodeMarketplaceRating extends LegacyService {
return [
{
title: 'Visual Studio Marketplace',
previewUrl: 'r/ritwickdey.LiveServer',
keywords: ['vscode-marketplace'],
pattern: 'r/:repo',
namedParams: { repo: 'ritwickdey.LiveServer' },
staticPreview: { message: '4.79/5 (145)', color: 'brightgreen' },
keywords,
},
{
title: 'Visual Studio Marketplace',
previewUrl: 'stars/ritwickdey.LiveServer',
keywords: ['vscode-marketplace'],
pattern: 'stars/:repo',
namedParams: { repo: 'ritwickdey.LiveServer' },
staticPreview: { message: starRating(4.75), color: 'brightgreen' },
keywords,
},
]
}
@@ -109,6 +117,13 @@ class VscodeMarketplaceVersion extends LegacyService {
static get route() {
return {
base: 'vscode-marketplace/v',
pattern: ':repo',
}
}
static get defaultBadgeData() {
return {
label: 'visual studio marketplace',
}
}
@@ -116,8 +131,9 @@ class VscodeMarketplaceVersion extends LegacyService {
return [
{
title: 'Visual Studio Marketplace',
previewUrl: 'ritwickdey.LiveServer',
keywords: ['vscode-marketplace'],
namedParams: { repo: 'ritwickdey.LiveServer' },
staticPreview: { message: 'v5.2.0', color: 'blue' },
keywords,
},
]
}