Visit Config UI: http://localhost:4000.
On the Connections page, you can select GitHub and create a new connection or it.
Give your connection a unique name to help you identify it in the future.
Select if you use GitLab Cloud or GitLab Server (v11+).
This should be a valid REST API endpoint.
https://gitlab.com/api/v4/.https://gitlab.example.com/api/v4/. Please note: the endpoint URL should end with /.Your GitLab personal access token (PAT) is required to add a connection. Learn about how to create a GitLab personal access token.
The following permission is required to collect data from repositories:
read_apiYou also have to double-check your GitLab user permission settings.
If you are behind a corporate firewall or VPN you may need to utilize a proxy server. Enter a valid proxy server address on your network, e.g. http://your-proxy-server.com:1080
DevLake uses a dynamic rate limit at around 12,000 requests/hour to collect GitLab data. You can adjust the rate limit if you want to increase or lower the speed.
The maximum rate limit for GitLab Cloud is ** 120,000 requests/hour**. Tokens under the same IP address share the rate limit, so the actual rate limit for your token will be lower than this number.
For self-managed GitLab rate limiting, please contact your GitLab admin to get or set the maximum rate limit of your GitLab instance. Please do not use a rate that exceeds this number.
Click Test Connection, if the connection is successful, click Save Connection to add the connection.
Select the GitLab repositories you want to collect from the miller column. Please note that repositories with guest permissions or those that are archived have already been excluded. You can also use the search function to find them. Limited by the GitLab API, You need to type more than 2 characters to search. The repositories only with guest permissions are not shown in the list.
Scope config contains two parts:
This is the critical rule for calculating DORA metrics using GitLab CI/CD entities to define deployments.
DevLake recognizes deployments from GitLab deployments by using a regular expression (regex) to pinpoint production environments among all listed GitLab environments.
If your deployments are not performed through GitLab deployments but rather specific pipelines in GitLab, you have the option to convert a GitLab pipeline run into a DevLake deployment. In this case, you need to configure two regular expressions (regex):
.*build-image.* in the input field.(release.*|main) to recognize runs on these branches as deployments..*build-image.*, and only the pipeline runs that have executed ‘build-image-to-prod’ should be considered PRODUCTION deployment, you can enter .*-prod.* or build-image-to-prod.release.* to convert only runs on the release branch as PRODUCTION deployments. The regex should match the naming pattern of your release or production branches.To make the regex case insensitive, you can include (?i) before the regex.
Collecting GitLab data requires creating a project first. You can visit the Project page from the side menu and create a new project by following the instructions on the user interface.
You can add a previously configured GitLab connection to the project and select the boards for which you wish to collect the data for. Please note: if you don't see the repositories you are looking for, please check if you have added them to the connection first.
There are three settings for Sync Policy:
Click on “Collect Data” to start collecting data for the whole project. You can check the status in the Status tab on the same page.
If you run into any problem, please check the Troubleshooting or create an issue