From a75d430751497e252ef992650eda180150c67be6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=C3=ADn=20Hoskovec?= Date: Tue, 18 Mar 2025 15:29:27 +0100 Subject: [PATCH] docs: Update description of gitlab-webhook installation. --- docs/docs/installation/gitlab.md | 37 +++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/docs/docs/installation/gitlab.md b/docs/docs/installation/gitlab.md index af5536f0..998d8583 100644 --- a/docs/docs/installation/gitlab.md +++ b/docs/docs/installation/gitlab.md @@ -43,36 +43,47 @@ Note that if your base branches are not protected, don't set the variables as `p ## Run a GitLab webhook server -1. From the GitLab workspace or group, create an access token with "Reporter" role ("Developer" if using Pro version of the agent) and "api" scope. +1. In GitLab create a new user and give it "Reporter" role ("Developer" if using Pro version of the agent) for the intended group or project. -2. Generate a random secret for your app, and save it for later. For example, you can use: +2. For the user from step 1. generate a `personal_access_token` with `api` access. + +3. Generate a random secret for your app, and save it for later (`shared_secret`). For example, you can use: ``` -WEBHOOK_SECRET=$(python -c "import secrets; print(secrets.token_hex(10))") +SHARED_SECRET=$(python -c "import secrets; print(secrets.token_hex(10))") ``` -3. Clone this repository: +4. Clone this repository: ``` -git clone https://github.com/Codium-ai/pr-agent.git +git clone https://github.com/qodo-ai/pr-agent.git ``` -4. Prepare variables and secrets. Skip this step if you plan on settings these as environment variables when running the agent: +5. Prepare variables and secrets. Skip this step if you plan on setting these as environment variables when running the agent: 1. In the configuration file/variables: - - Set `deployment_type` to "gitlab" + - Set `config.git_provider` to "gitlab" 2. In the secrets file/variables: - Set your AI model key in the respective section - - In the [gitlab] section, set `personal_access_token` (with token from step 1) and `shared_secret` (with secret from step 2) + - In the [gitlab] section, set `personal_access_token` (with token from step 2) and `shared_secret` (with secret from step 3) - -5. Build a Docker image for the app and optionally push it to a Docker repository. We'll use Dockerhub as an example: +6. Build a Docker image for the app and optionally push it to a Docker repository. We'll use Dockerhub as an example: ``` docker build . -t gitlab_pr_agent --target gitlab_webhook -f docker/Dockerfile docker push codiumai/pr-agent:gitlab_webhook # Push to your Docker repository ``` -6. Create a webhook in GitLab. Set the URL to ```http[s]:///webhook```, the secret token to the generated secret from step 2, and enable the triggers `push`, `comments` and `merge request events`. +7. Set the environmental variables, the method depends on your docker runtime. Skip this step if you included your secrets/configuration directly in the Docker image. + +``` +"CONFIG.GIT_PROVIDER": "gitlab" +"GITLAB.PERSONAL_ACCESS_TOKEN": "" +"GITLAB.SHARED_SECRET": "" +"GITLAB.URL": "https://gitlab.com" +"OPENAI.KEY": "" +``` + +8. Create a webhook in your GitLab project. Set the URL to ```http[s]:///webhook```, the secret token to the generated secret from step 3, and enable the triggers `push`, `comments` and `merge request events`. + +9. Test your installation by opening a merge request or commenting on a merge request using one of PR Agent's commands. -7. Test your installation by opening a merge request or commenting on a merge request using one of CodiumAI's commands. -boxes