diff --git a/services/travis/travis-build.service.js b/services/travis/travis-build.service.js index eb18f228fb433..b1f324e9c2f44 100644 --- a/services/travis/travis-build.service.js +++ b/services/travis/travis-build.service.js @@ -12,9 +12,8 @@ export class TravisComBuild extends BaseSvgScrapingService { static category = 'build' static route = { - base: 'travis', - format: 'com/(?!php-v)([^/]+/[^/]+?)(?:/(.+?))?', - capture: ['userRepo', 'branch'], + base: 'travis/com', + pattern: ':user/:repo/:branch*', } static openApi = { @@ -62,10 +61,10 @@ export class TravisComBuild extends BaseSvgScrapingService { return renderBuildStatusBadge({ status }) } - async handle({ userRepo, branch }) { + async handle({ user, repo, branch }) { const { message: status } = await this._requestSvg({ schema, - url: `https://api.travis-ci.com/${userRepo}.svg`, + url: `https://api.travis-ci.com/${user}/${repo}.svg`, options: { searchParams: { branch } }, valueMatcher: />([^<>]+)<\/text><\/g>/, }) diff --git a/services/travis/travis-build.tester.js b/services/travis/travis-build.tester.js index faf301095de4c..23fbc8e636b97 100644 --- a/services/travis/travis-build.tester.js +++ b/services/travis/travis-build.tester.js @@ -4,25 +4,25 @@ import { createServiceTester } from '../tester.js' export const t = await createServiceTester() t.create('build status on default branch') - .get('/com/ivandelabeldad/rackian-gateway.json') + .get('/ivandelabeldad/rackian-gateway.json') .expectBadge({ label: 'build', message: Joi.alternatives().try(isBuildStatus, Joi.equal('unknown')), }) t.create('build status on named branch') - .get('/com/ivandelabeldad/rackian-gateway.json') + .get('/ivandelabeldad/rackian-gateway.json') .expectBadge({ label: 'build', message: Joi.alternatives().try(isBuildStatus, Joi.equal('unknown')), }) t.create('unknown repo') - .get('/com/this-repo/does-not-exist.json') + .get('/this-repo/does-not-exist.json') .expectBadge({ label: 'build', message: 'unknown' }) t.create('invalid svg response') - .get('/com/foo/bar.json') + .get('/foo/bar.json') .intercept(nock => nock('https://api.travis-ci.com').get('/foo/bar.svg').reply(200), )