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

View File

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

View File

@@ -17,6 +17,13 @@ module.exports = class TravisPhpVersion extends LegacyService {
static get route() { static get route() {
return { return {
base: 'travis/php-v', base: 'travis/php-v',
pattern: ':user/:repo',
}
}
static get defaultBadgeData() {
return {
label: 'php',
} }
} }
@@ -24,7 +31,8 @@ module.exports = class TravisPhpVersion extends LegacyService {
return [ return [
{ {
title: 'PHP from Travis config', 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 }) { async fetch({ monitorSpecificKey, numberOfDays }) {
this.constructor.ensureIsMonitorApiKey(monitorApiKey) this.constructor.ensureIsMonitorApiKey(monitorSpecificKey)
let opts, schema let opts, schema
if (numberOfDays) { if (numberOfDays) {
@@ -80,7 +80,7 @@ module.exports = class UptimeRobotBase extends BaseJsonService {
'content-type': 'application/x-www-form-urlencoded', 'content-type': 'application/x-www-form-urlencoded',
}, },
form: { form: {
api_key: monitorApiKey, api_key: monitorSpecificKey,
format: 'json', format: 'json',
...opts, ...opts,
}, },

View File

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

View File

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

View File

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

View File

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