diff --git a/app-config.yaml b/app-config.yaml index b50de963ed..9d588eb0a0 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -370,3 +370,9 @@ homepage: timezone: 'Asia/Tokyo' pagerduty: eventsBaseUrl: 'https://events.pagerduty.com/v2' +jenkins: + instances: + - name: default + baseUrl: https://jenkins.example.com + username: backstage-bot + apiKey: 123456789abcdef0123456789abcedf012 diff --git a/packages/backend/src/plugins/jenkins.ts b/packages/backend/src/plugins/jenkins.ts index ae6ede0272..4206ebb5e1 100644 --- a/packages/backend/src/plugins/jenkins.ts +++ b/packages/backend/src/plugins/jenkins.ts @@ -16,16 +16,21 @@ import { createRouter, - DummyJenkinsInfoProvider, + DefaultJenkinsInfoProvider, } from '@backstage/plugin-jenkins-backend'; import { Router } from 'express'; import { PluginEnvironment } from '../types'; +import { CatalogClient } from '@backstage/catalog-client'; export default async function createPlugin({ logger, + config, + discovery, }: PluginEnvironment): Promise { + const catalogClient = new CatalogClient({ discoveryApi: discovery }); + return await createRouter({ logger, - jenkinsInfoProvider: new DummyJenkinsInfoProvider(), + jenkinsInfoProvider: new DefaultJenkinsInfoProvider(catalogClient, config), }); } diff --git a/plugins/jenkins-backend/README.md b/plugins/jenkins-backend/README.md index 8226e71772..7a1bd3b6fa 100644 --- a/plugins/jenkins-backend/README.md +++ b/plugins/jenkins-backend/README.md @@ -57,7 +57,7 @@ Config jenkins: baseUrl: https://jenkins.example.com username: backstage-bot - apikey: 123456789abcdef0123456789abcedf012 + apiKey: 123456789abcdef0123456789abcedf012 ``` Catalog @@ -85,11 +85,11 @@ jenkins: - name: default baseUrl: https://jenkins.example.com username: backstage-bot - apikey: 123456789abcdef0123456789abcedf012 + apiKey: 123456789abcdef0123456789abcedf012 - name: departmentFoo baseUrl: https://jenkins-foo.example.com username: backstage-bot - apikey: 123456789abcdef0123456789abcedf012 + apiKey: 123456789abcdef0123456789abcedf012 ``` Catalog @@ -111,12 +111,12 @@ The following config is an equivalent (but less clear) version of the above: jenkins: baseUrl: https://jenkins.example.com username: backstage-bot - apikey: 123456789abcdef0123456789abcedf012 + apiKey: 123456789abcdef0123456789abcedf012 instances: - name: departmentFoo baseUrl: https://jenkins-foo.example.com username: backstage-bot - apikey: 123456789abcdef0123456789abcedf012 + apiKey: 123456789abcdef0123456789abcedf012 ``` ### Custom JenkinsInfoProvider diff --git a/plugins/jenkins-backend/src/index.ts b/plugins/jenkins-backend/src/index.ts index 1d8a13bde6..4ebbb7eea5 100644 --- a/plugins/jenkins-backend/src/index.ts +++ b/plugins/jenkins-backend/src/index.ts @@ -19,4 +19,7 @@ export type { JenkinsInfo, JenkinsInfoProvider, } from './service/jenkinsInfoProvider'; -export { DummyJenkinsInfoProvider } from './service/jenkinsInfoProvider'; +export { + DummyJenkinsInfoProvider, + DefaultJenkinsInfoProvider, +} from './service/jenkinsInfoProvider';