Podman Desktop is adding a new additionalConfigHandlers API to RegistrySuggestedProvider that allows extensions to contribute named configuration handlers alongside the built-in username/password form. This extension should adopt the new API to offer "Red Hat SSO" as a configuration method for registry.redhat.io.
Upstream tracking issue: podman-desktop/podman-desktop#18133
What needs to change
Update the extensionApi.registry.suggestRegistry() call in src/extension.ts to include an additionalConfigHandlers array:
extensionApi.registry.suggestRegistry({
name: 'Red Hat Container Registry',
icon,
url: 'registry.redhat.io',
additionalConfigHandlers: [
{
label: 'Red Hat SSO',
isDefault: true,
handler: ssoConfigHandler,
},
],
});
Behavior
- The Registries settings page will show a SplitButton for
registry.redhat.io instead of the regular "Configure" button
- The SplitButton offers two options:
- Configure — opens the existing username/password inline form
- Configure with Red Hat SSO — invokes
configureRegistryAndActivateSubscription (the SSO flow)
- Since
isDefault: true is set, "Configure with Red Hat SSO" is pre-selected when the page opens
Dependencies
Acceptance Criteria
Podman Desktop is adding a new
additionalConfigHandlersAPI toRegistrySuggestedProviderthat allows extensions to contribute named configuration handlers alongside the built-in username/password form. This extension should adopt the new API to offer "Red Hat SSO" as a configuration method forregistry.redhat.io.Upstream tracking issue: podman-desktop/podman-desktop#18133
What needs to change
Update the
extensionApi.registry.suggestRegistry()call insrc/extension.tsto include anadditionalConfigHandlersarray:Behavior
registry.redhat.ioinstead of the regular "Configure" buttonconfigureRegistryAndActivateSubscription(the SSO flow)isDefault: trueis set, "Configure with Red Hat SSO" is pre-selected when the page opensDependencies
additionalConfigHandlersAPI (tracked in Suggested Registry API should support additional configuration handlers podman-desktop/podman-desktop#18133)@podman-desktop/apipackage must be updated to a version that includes theRegistrySuggestedProviderConfigHandlerinterfaceAcceptance Criteria
suggestRegistry()call updated withadditionalConfigHandlersisDefault: truessoConfigHandlerfunction@podman-desktop/apiversion bumped to the release containing the new API