Add authentication provider implementation for OpenShift to the app plugin

Signed-off-by: Yannik Daellenbach <git@daellenbach.org>
This commit is contained in:
Yannik Daellenbach
2025-07-15 11:55:37 +02:00
parent 894d51497f
commit 3c1d47131e
2 changed files with 37 additions and 0 deletions
+15
View File
@@ -539,6 +539,21 @@ const appPlugin: OverridableFrontendPlugin<
params: ApiFactory<TApi, TImpl, TDeps>,
) => ExtensionBlueprintParams<AnyApiFactory>;
}>;
'api:app/openshift-auth': ExtensionDefinition<{
kind: 'api';
name: 'openshift-auth';
config: {};
configInput: {};
output: ExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>;
inputs: {};
params: <
TApi,
TImpl extends TApi,
TDeps extends { [name in string]: unknown },
>(
params: ApiFactory<TApi, TImpl, TDeps>,
) => ExtensionBlueprintParams<AnyApiFactory>;
}>;
'api:app/permission': ExtensionDefinition<{
kind: 'api';
name: 'permission';
+22
View File
@@ -35,6 +35,7 @@ import {
createFetchApi,
FetchMiddlewares,
VMwareCloudAuth,
OpenShiftAuth,
} from '../../../packages/core-app-api/src/apis/implementations';
import {
@@ -56,6 +57,7 @@ import {
bitbucketServerAuthApiRef,
atlassianAuthApiRef,
vmwareCloudAuthApiRef,
openshiftAuthApiRef,
} from '@backstage/core-plugin-api';
import { ApiBlueprint, dialogApiRef } from '@backstage/frontend-plugin-api';
import {
@@ -353,6 +355,26 @@ export const apis = [
},
}),
}),
ApiBlueprint.make({
name: 'openshift-auth',
params: defineParams =>
defineParams({
api: openshiftAuthApiRef,
deps: {
discoveryApi: discoveryApiRef,
oauthRequestApi: oauthRequestApiRef,
configApi: configApiRef,
},
factory: ({ discoveryApi, oauthRequestApi, configApi }) => {
return OpenShiftAuth.create({
configApi,
discoveryApi,
oauthRequestApi,
environment: configApi.getOptionalString('auth.environment'),
});
},
}),
}),
ApiBlueprint.make({
name: 'permission',
params: defineParams =>