Developer Hub - The Adventure
We’re excited to announce a new workshop that’s currently in development. While still a work in progress, you can already check out the Developer Hub Adventure at: https://rhdh-adventure-organization.github.io/rhdh-adventure/rhdh-adventure/index.html
GitLab Integration in Developer Hub
Important Note
GitLab integration is currently in technical preview status. Please be aware that there is no guarantee of support at this time.
Getting Started with GitLab
To set up GitLab in your Developer Hub environment, follow the detailed instructions available in our GitLab setup guide.
Autodiscovery Configuration
Here’s an example of how to configure GitLab autodiscovery in your catalog: autodisovery example:
catalog:
providers:
gitlab:
gitlab:
host: gitlab.apps.cluster.domain
orgEnabled: true
# group: 'demo' # Required for gitlab.com when `orgEnabled: true`. Optional for self managed. Must not end with slash. Accepts only groups under the provided path (which will be stripped)
# groupPattern: '[\s\S]*' # Optional. Filters found groups based on provided pattern. Defaults to `[\s\S]*`, which means to not filter anything
# rules:
# - allow: [Group, User]
schedule:
frequency:
minutes: 10
timeout:
minutes: 2
initialDelay:
seconds: 60
Known Issues and Workarounds
Merge Request Issue
There is an ongoing issue with merge requests in the Backstage project. You can track the progress of this issue here: Backstage Issue #28587
A temporary workaround has been implemented and can be found in our developer-hub-config repository.
User Entity Resolver
Another issue occurs at using GitLab as the login provider. We’re currently tracking an issue related to user entity resolution: RHIDP-1982
This issue stems from differences in how various plugins handle entity mapping. Specifically:
- GitLab uses user IDs for authentication
- GitHub uses usernames for authentication. OpenShift and keycloak too.
This inconsistency can be confusing for users who need to format their user entities correctly across different platforms.
The best idea to solve this is to use a keycloak instance in between and use GitLab as an auth provider. And map the username. But I don’t really know yet if that works, haven’t tested that. Yet.
Kafka objects across multiple namespaces
For information about monitoring Kafka across multiple namespaces, refer to these resources:
It is an open unsolved issue. One of the authors recommends using KafkaUser objects in the main namespace and replicate secrets with additional tooling. In my opinion a workaround that could work and solve permission problems.