Merge pull request #13691 from jakecrews74/add-defaults-conig-option-gitlab-ci-stats
[CICD Statistics Module Gitlab] Add the ability to pass custom defaults to createGitlabApi constructor
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-cicd-statistics-module-gitlab': patch
|
||||
---
|
||||
|
||||
add the ability to add CICD default options to createGitlabApi constructor
|
||||
@@ -7,6 +7,7 @@ This is an extension module to the `cicd-statistics` plugin, providing a `CicdSt
|
||||
1. Install the `cicd-statistics` and `cicd-statistics-module-gitlab` plugins in the `app` package.
|
||||
|
||||
2. Configure your ApiFactory:
|
||||
- You can optionally pass in a second argument to `CicdStatisticsApiGitlab` of type [CicdDefaults](https://github.com/backstage/backstage/blob/2881c53cb383bf127c150f837f37fe535d8cf97b/plugins/cicd-statistics/src/apis/types.ts#L179) to alter the default CICD UI configuration
|
||||
|
||||
```tsx
|
||||
// packages/app/src/apis.ts
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
```ts
|
||||
import { CicdConfiguration } from '@backstage/plugin-cicd-statistics';
|
||||
import { CicdDefaults } from '@backstage/plugin-cicd-statistics';
|
||||
import { CicdState } from '@backstage/plugin-cicd-statistics';
|
||||
import { CicdStatisticsApi } from '@backstage/plugin-cicd-statistics';
|
||||
import { Entity } from '@backstage/catalog-model';
|
||||
@@ -13,7 +14,7 @@ import { OAuthApi } from '@backstage/core-plugin-api';
|
||||
|
||||
// @public
|
||||
export class CicdStatisticsApiGitlab implements CicdStatisticsApi {
|
||||
constructor(gitLabAuthApi: OAuthApi);
|
||||
constructor(gitLabAuthApi: OAuthApi, cicdDefaults?: Partial<CicdDefaults>);
|
||||
// (undocumented)
|
||||
createGitlabApi(entity: Entity, scopes: string[]): Promise<GitlabClient>;
|
||||
// (undocumented)
|
||||
|
||||
@@ -18,6 +18,7 @@ import {
|
||||
CicdStatisticsApi,
|
||||
CicdState,
|
||||
CicdConfiguration,
|
||||
CicdDefaults,
|
||||
Build,
|
||||
FetchBuildsOptions,
|
||||
Stage,
|
||||
@@ -47,9 +48,14 @@ export type GitlabClient = {
|
||||
*/
|
||||
export class CicdStatisticsApiGitlab implements CicdStatisticsApi {
|
||||
readonly #gitLabAuthApi: OAuthApi;
|
||||
readonly #cicdDefaults: Partial<CicdDefaults>;
|
||||
|
||||
constructor(gitLabAuthApi: OAuthApi) {
|
||||
constructor(
|
||||
gitLabAuthApi: OAuthApi,
|
||||
cicdDefaults: Partial<CicdDefaults> = {},
|
||||
) {
|
||||
this.#gitLabAuthApi = gitLabAuthApi;
|
||||
this.#cicdDefaults = cicdDefaults;
|
||||
}
|
||||
|
||||
public async createGitlabApi(
|
||||
@@ -154,6 +160,7 @@ export class CicdStatisticsApiGitlab implements CicdStatisticsApi {
|
||||
'expired',
|
||||
'unknown',
|
||||
] as const,
|
||||
defaults: this.#cicdDefaults,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user