Extended usage of build-status.js tomore services (#2763)

* Extended usage of build-status.js

* Removed remaining status arguments
This commit is contained in:
Pierre-Yves B
2019-01-15 20:27:18 +00:00
committed by GitHub
parent 22e8510fc7
commit 55ce947a35
18 changed files with 113 additions and 164 deletions

View File

@@ -1,16 +0,0 @@
'use strict'
const Joi = require('joi')
const isPipelineStatus = Joi.equal(
'pending',
'running',
'passed',
'failed',
'skipped',
'canceled'
).required()
module.exports = {
isPipelineStatus,
}

View File

@@ -4,11 +4,14 @@ const Joi = require('joi')
const BaseSvgScrapingService = require('../base-svg-scraping')
const { optionalUrl } = require('../validators')
const { NotFound } = require('../errors')
const { isPipelineStatus } = require('./gitlab-helpers')
const {
isBuildStatus,
renderBuildStatusBadge,
} = require('../../lib/build-status')
const badgeSchema = Joi.object({
message: Joi.alternatives()
.try([isPipelineStatus, Joi.equal('unknown')])
.try(isBuildStatus, Joi.equal('unknown'))
.required(),
}).required()
@@ -58,19 +61,7 @@ module.exports = class GitlabPipelineStatus extends BaseSvgScrapingService {
}
static render({ status }) {
const color = {
pending: 'yellow',
running: 'yellow',
passed: 'brightgreen',
failed: 'red',
skipped: 'lightgray',
canceled: 'lightgray',
}[status]
return {
message: status,
color,
}
return renderBuildStatusBadge({ status })
}
async handle({ user, repo, branch = 'master' }, queryParams) {

View File

@@ -1,7 +1,7 @@
'use strict'
const Joi = require('joi')
const { isPipelineStatus } = require('./gitlab-helpers')
const { isBuildStatus } = require('../../lib/build-status')
const t = (module.exports = require('../create-service-tester')())
@@ -10,7 +10,7 @@ t.create('Pipeline status')
.expectJSONTypes(
Joi.object().keys({
name: 'build',
value: isPipelineStatus,
value: isBuildStatus,
})
)
@@ -19,7 +19,7 @@ t.create('Pipeline status (branch)')
.expectJSONTypes(
Joi.object().keys({
name: 'build',
value: isPipelineStatus,
value: isBuildStatus,
})
)
@@ -42,6 +42,6 @@ t.create('Pipeline status (custom gitlab URL)')
.expectJSONTypes(
Joi.object().keys({
name: 'build',
value: isPipelineStatus,
value: isBuildStatus,
})
)