diff --git a/services/requires/requires.service.js b/services/requires/requires.service.js index abdee946d1..b8528900ec 100644 --- a/services/requires/requires.service.js +++ b/services/requires/requires.service.js @@ -8,42 +8,34 @@ const statusSchema = Joi.object({ }).required() module.exports = class RequiresIo extends BaseJsonService { - static get category() { - return 'dependencies' + static category = 'dependencies' + + static route = { + base: 'requires', + pattern: ':service/:user/:repo/:branch*', } - static get route() { - return { - base: 'requires', - pattern: ':service/:user/:repo/:branch*', - } - } - - static get examples() { - return [ - { - title: 'Requires.io', - pattern: ':service/:user/:repo', - namedParams: { service: 'github', user: 'celery', repo: 'celery' }, - staticPreview: this.render({ status: 'up-to-date' }), + static examples = [ + { + title: 'Requires.io', + pattern: ':service/:user/:repo', + namedParams: { service: 'github', user: 'celery', repo: 'celery' }, + staticPreview: this.render({ status: 'up-to-date' }), + }, + { + title: 'Requires.io (branch)', + pattern: ':service/:user/:repo/:branch', + namedParams: { + service: 'github', + user: 'celery', + repo: 'celery', + branch: 'master', }, - { - title: 'Requires.io (branch)', - pattern: ':service/:user/:repo/:branch', - namedParams: { - service: 'github', - user: 'celery', - repo: 'celery', - branch: 'master', - }, - staticPreview: this.render({ status: 'up-to-date' }), - }, - ] - } + staticPreview: this.render({ status: 'up-to-date' }), + }, + ] - static get defaultBadgeData() { - return { label: 'requirements' } - } + static defaultBadgeData = { label: 'requirements' } static render({ status }) { let message = status diff --git a/services/scrutinizer/scrutinizer-build.service.js b/services/scrutinizer/scrutinizer-build.service.js index 50e04e2832..71c67312eb 100644 --- a/services/scrutinizer/scrutinizer-build.service.js +++ b/services/scrutinizer/scrutinizer-build.service.js @@ -19,14 +19,10 @@ const schema = Joi.object({ }).required() class ScrutinizerBuildBase extends ScrutinizerBase { - static get category() { - return 'build' - } + static category = 'build' - static get defaultBadgeData() { - return { - label: 'build', - } + static defaultBadgeData = { + label: 'build', } async makeBadge({ vcs, slug, branch }) { @@ -39,28 +35,24 @@ class ScrutinizerBuildBase extends ScrutinizerBase { } class ScrutinizerBuild extends ScrutinizerBuildBase { - static get route() { - return { - base: 'scrutinizer/build', - pattern: ':vcs(g|b)/:user/:repo/:branch*', - } + static route = { + base: 'scrutinizer/build', + pattern: ':vcs(g|b)/:user/:repo/:branch*', } - static get examples() { - return [ - { - title: 'Scrutinizer build (GitHub/Bitbucket)', - pattern: ':vcs(g|b)/:user/:repo/:branch?', - namedParams: { - vcs: 'g', - user: 'filp', - repo: 'whoops', - branch: 'master', - }, - staticPreview: renderBuildStatusBadge({ status: 'passing' }), + static examples = [ + { + title: 'Scrutinizer build (GitHub/Bitbucket)', + pattern: ':vcs(g|b)/:user/:repo/:branch?', + namedParams: { + vcs: 'g', + user: 'filp', + repo: 'whoops', + branch: 'master', }, - ] - } + staticPreview: renderBuildStatusBadge({ status: 'passing' }), + }, + ] async handle({ vcs, user, repo, branch }) { return this.makeBadge({ @@ -72,32 +64,28 @@ class ScrutinizerBuild extends ScrutinizerBuildBase { } class ScrutinizerGitLabBuild extends ScrutinizerBuildBase { - static get route() { - return { - base: 'scrutinizer/build/gl', - pattern: ':instance/:user/:repo/:branch*', - } + static route = { + base: 'scrutinizer/build/gl', + pattern: ':instance/:user/:repo/:branch*', } - static get examples() { - // There are no known anonymous accessible Scrutinizer reports available for GitLab repos. - // The example used is valid, but the project will not be accessible if Shields users try to use it. - // https://gitlab.propertywindow.nl/propertywindow/client - // https://scrutinizer-ci.com/gl/propertywindow/propertywindow/client/badges/quality-score.png?b=master&s=dfae6992a48184cc2333b4c349cec0447f0d67c2 - return [ - { - title: 'Scrutinizer build (GitLab)', - pattern: ':instance/:user/:repo/:branch?', - namedParams: { - instance: 'propertywindow', - user: 'propertywindow', - repo: 'client', - branch: 'master', - }, - staticPreview: renderBuildStatusBadge({ status: 'passing' }), + // There are no known anonymous accessible Scrutinizer reports available for GitLab repos. + // The example used is valid, but the project will not be accessible if Shields users try to use it. + // https://gitlab.propertywindow.nl/propertywindow/client + // https://scrutinizer-ci.com/gl/propertywindow/propertywindow/client/badges/quality-score.png?b=master&s=dfae6992a48184cc2333b4c349cec0447f0d67c2 + static examples = [ + { + title: 'Scrutinizer build (GitLab)', + pattern: ':instance/:user/:repo/:branch?', + namedParams: { + instance: 'propertywindow', + user: 'propertywindow', + repo: 'client', + branch: 'master', }, - ] - } + staticPreview: renderBuildStatusBadge({ status: 'passing' }), + }, + ] async handle({ instance, user, repo, branch }) { return this.makeBadge({ @@ -109,11 +97,9 @@ class ScrutinizerGitLabBuild extends ScrutinizerBuildBase { } class ScrutinizerPlainGitBuild extends ScrutinizerBuildBase { - static get route() { - return { - base: 'scrutinizer/build/gp', - pattern: ':slug/:branch*', - } + static route = { + base: 'scrutinizer/build/gp', + pattern: ':slug/:branch*', } async handle({ slug, branch }) { diff --git a/services/scrutinizer/scrutinizer-coverage.service.js b/services/scrutinizer/scrutinizer-coverage.service.js index ccc3cf4314..c2b57ba98e 100644 --- a/services/scrutinizer/scrutinizer-coverage.service.js +++ b/services/scrutinizer/scrutinizer-coverage.service.js @@ -32,14 +32,10 @@ const schema = Joi.object({ const scale = colorScale([40, 61], ['red', 'yellow', 'brightgreen']) class ScrutinizerCoverageBase extends ScrutinizerBase { - static get category() { - return 'coverage' - } + static category = 'coverage' - static get defaultBadgeData() { - return { - label: 'coverage', - } + static defaultBadgeData = { + label: 'coverage', } static render({ coverage }) { @@ -71,28 +67,24 @@ class ScrutinizerCoverageBase extends ScrutinizerBase { } class ScrutinizerCoverage extends ScrutinizerCoverageBase { - static get route() { - return { - base: 'scrutinizer/coverage', - pattern: ':vcs(g|b)/:user/:repo/:branch*', - } + static route = { + base: 'scrutinizer/coverage', + pattern: ':vcs(g|b)/:user/:repo/:branch*', } - static get examples() { - return [ - { - title: 'Scrutinizer coverage (GitHub/BitBucket)', - pattern: ':vcs(g|b)/:user/:repo/:branch?', - namedParams: { - vcs: 'g', - user: 'filp', - repo: 'whoops', - branch: 'master', - }, - staticPreview: this.render({ coverage: 86 }), + static examples = [ + { + title: 'Scrutinizer coverage (GitHub/BitBucket)', + pattern: ':vcs(g|b)/:user/:repo/:branch?', + namedParams: { + vcs: 'g', + user: 'filp', + repo: 'whoops', + branch: 'master', }, - ] - } + staticPreview: this.render({ coverage: 86 }), + }, + ] async handle({ vcs, user, repo, branch }) { return this.makeBadge({ @@ -104,32 +96,28 @@ class ScrutinizerCoverage extends ScrutinizerCoverageBase { } class ScrutinizerCoverageGitLab extends ScrutinizerCoverageBase { - static get route() { - return { - base: 'scrutinizer/coverage/gl', - pattern: ':instance/:user/:repo/:branch*', - } + static route = { + base: 'scrutinizer/coverage/gl', + pattern: ':instance/:user/:repo/:branch*', } - static get examples() { - // There are no known anonymous accessible Scrutinizer reports available for GitLab repos. - // The example used is valid, but the project will not be accessible if Shields users try to use it. - // https://gitlab.propertywindow.nl/propertywindow/client - // https://scrutinizer-ci.com/gl/propertywindow/propertywindow/client/badges/quality-score.png?b=master&s=dfae6992a48184cc2333b4c349cec0447f0d67c2 - return [ - { - title: 'Scrutinizer coverage (GitLab)', - pattern: ':instance/:user/:repo/:branch?', - namedParams: { - instance: 'propertywindow', - user: 'propertywindow', - repo: 'client', - branch: 'master', - }, - staticPreview: this.render({ coverage: 94 }), + // There are no known anonymous accessible Scrutinizer reports available for GitLab repos. + // The example used is valid, but the project will not be accessible if Shields users try to use it. + // https://gitlab.propertywindow.nl/propertywindow/client + // https://scrutinizer-ci.com/gl/propertywindow/propertywindow/client/badges/quality-score.png?b=master&s=dfae6992a48184cc2333b4c349cec0447f0d67c2 + static examples = [ + { + title: 'Scrutinizer coverage (GitLab)', + pattern: ':instance/:user/:repo/:branch?', + namedParams: { + instance: 'propertywindow', + user: 'propertywindow', + repo: 'client', + branch: 'master', }, - ] - } + staticPreview: this.render({ coverage: 94 }), + }, + ] async handle({ instance, user, repo, branch }) { return this.makeBadge({ @@ -141,11 +129,9 @@ class ScrutinizerCoverageGitLab extends ScrutinizerCoverageBase { } class ScrutinizerCoveragePlainGit extends ScrutinizerCoverageBase { - static get route() { - return { - base: 'scrutinizer/coverage/gp', - pattern: ':slug/:branch*', - } + static route = { + base: 'scrutinizer/coverage/gp', + pattern: ':slug/:branch*', } async handle({ slug, branch }) { diff --git a/services/scrutinizer/scrutinizer-quality.service.js b/services/scrutinizer/scrutinizer-quality.service.js index 5dba4b9334..a5c7406fdd 100644 --- a/services/scrutinizer/scrutinizer-quality.service.js +++ b/services/scrutinizer/scrutinizer-quality.service.js @@ -30,14 +30,10 @@ const scale = colorScale( ) class ScrutinizerQualityBase extends ScrutinizerBase { - static get category() { - return 'analysis' - } + static category = 'analysis' - static get defaultBadgeData() { - return { - label: 'code quality', - } + static defaultBadgeData = { + label: 'code quality', } static render({ score }) { @@ -59,28 +55,24 @@ class ScrutinizerQualityBase extends ScrutinizerBase { } class ScrutinizerQuality extends ScrutinizerQualityBase { - static get route() { - return { - base: 'scrutinizer/quality', - pattern: ':vcs(g|b)/:user/:repo/:branch*', - } + static route = { + base: 'scrutinizer/quality', + pattern: ':vcs(g|b)/:user/:repo/:branch*', } - static get examples() { - return [ - { - title: 'Scrutinizer code quality (GitHub/Bitbucket)', - pattern: ':vcs(g|b)/:user/:repo/:branch?', - namedParams: { - vcs: 'g', - user: 'filp', - repo: 'whoops', - branch: 'master', - }, - staticPreview: this.render({ score: 8.26 }), + static examples = [ + { + title: 'Scrutinizer code quality (GitHub/Bitbucket)', + pattern: ':vcs(g|b)/:user/:repo/:branch?', + namedParams: { + vcs: 'g', + user: 'filp', + repo: 'whoops', + branch: 'master', }, - ] - } + staticPreview: this.render({ score: 8.26 }), + }, + ] async handle({ vcs, user, repo, branch }) { return this.makeBadge({ @@ -92,32 +84,28 @@ class ScrutinizerQuality extends ScrutinizerQualityBase { } class ScrutinizerQualityGitLab extends ScrutinizerQualityBase { - static get route() { - return { - base: 'scrutinizer/quality/gl', - pattern: ':instance/:user/:repo/:branch*', - } + static route = { + base: 'scrutinizer/quality/gl', + pattern: ':instance/:user/:repo/:branch*', } - static get examples() { - // There are no known anonymous accessible Scrutinizer reports available for GitLab repos. - // The example used is valid, but the project will not be accessible if Shields users try to use it. - // https://gitlab.propertywindow.nl/propertywindow/client - // https://scrutinizer-ci.com/gl/propertywindow/propertywindow/client/badges/quality-score.png?b=master&s=dfae6992a48184cc2333b4c349cec0447f0d67c2 - return [ - { - title: 'Scrutinizer coverage (GitLab)', - pattern: ':instance/:user/:repo/:branch?', - namedParams: { - instance: 'propertywindow', - user: 'propertywindow', - repo: 'client', - branch: 'master', - }, - staticPreview: this.render({ score: 10.0 }), + // There are no known anonymous accessible Scrutinizer reports available for GitLab repos. + // The example used is valid, but the project will not be accessible if Shields users try to use it. + // https://gitlab.propertywindow.nl/propertywindow/client + // https://scrutinizer-ci.com/gl/propertywindow/propertywindow/client/badges/quality-score.png?b=master&s=dfae6992a48184cc2333b4c349cec0447f0d67c2 + static examples = [ + { + title: 'Scrutinizer coverage (GitLab)', + pattern: ':instance/:user/:repo/:branch?', + namedParams: { + instance: 'propertywindow', + user: 'propertywindow', + repo: 'client', + branch: 'master', }, - ] - } + staticPreview: this.render({ score: 10.0 }), + }, + ] async handle({ instance, user, repo, branch }) { return this.makeBadge({ @@ -129,11 +117,9 @@ class ScrutinizerQualityGitLab extends ScrutinizerQualityBase { } class ScrutinizerQualityPlainGit extends ScrutinizerQualityBase { - static get route() { - return { - base: 'scrutinizer/quality/gp', - pattern: ':slug/:branch*', - } + static route = { + base: 'scrutinizer/quality/gp', + pattern: ':slug/:branch*', } async handle({ slug, branch }) { diff --git a/services/security-headers/security-headers.service.js b/services/security-headers/security-headers.service.js index 3216a93cbf..4deb2abe1c 100644 --- a/services/security-headers/security-headers.service.js +++ b/services/security-headers/security-headers.service.js @@ -20,36 +20,28 @@ const documentation = ` ` module.exports = class SecurityHeaders extends BaseService { - static get category() { - return 'monitoring' + static category = 'monitoring' + + static route = { + base: '', + pattern: 'security-headers', + queryParamSchema, } - static get route() { - return { - base: '', - pattern: 'security-headers', - queryParamSchema, - } - } + static examples = [ + { + title: 'Security Headers', + namedParams: {}, + queryParams: { url: 'https://shields.io' }, + staticPreview: this.render({ + grade: 'A+', + }), + documentation, + }, + ] - static get examples() { - return [ - { - title: 'Security Headers', - namedParams: {}, - queryParams: { url: 'https://shields.io' }, - staticPreview: this.render({ - grade: 'A+', - }), - documentation, - }, - ] - } - - static get defaultBadgeData() { - return { - label: 'security headers', - } + static defaultBadgeData = { + label: 'security headers', } static render({ grade }) { diff --git a/services/shippable/shippable.service.js b/services/shippable/shippable.service.js index ccf7c089f0..6d81d15e2e 100644 --- a/services/shippable/shippable.service.js +++ b/services/shippable/shippable.service.js @@ -30,33 +30,25 @@ const schema = Joi.array() .required() class Shippable extends BaseJsonService { - static get category() { - return 'build' + static category = 'build' + + static route = { + base: 'shippable', + pattern: ':projectId/:branch+', } - static get route() { - return { - base: 'shippable', - pattern: ':projectId/:branch+', - } - } - - static get examples() { - return [ - { - title: 'Shippable', - namedParams: { - projectId: '5444c5ecb904a4b21567b0ff', - branch: 'master', - }, - staticPreview: this.render({ code: 30 }), + static examples = [ + { + title: 'Shippable', + namedParams: { + projectId: '5444c5ecb904a4b21567b0ff', + branch: 'master', }, - ] - } + staticPreview: this.render({ code: 30 }), + }, + ] - static get defaultBadgeData() { - return { label: 'shippable' } - } + static defaultBadgeData = { label: 'shippable' } static render({ code }) { return renderBuildStatusBadge({ label: 'build', status: statusCodes[code] })