mirror of
https://github.com/qodo-ai/pr-agent.git
synced 2025-07-03 12:20:38 +08:00
Merge pull request #1628 from thonic/main
docs: Update description of gitlab-webhook installation.
This commit is contained in:
@ -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
|
## 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:
|
1. In the configuration file/variables:
|
||||||
- Set `deployment_type` to "gitlab"
|
- Set `config.git_provider` to "gitlab"
|
||||||
|
|
||||||
2. In the secrets file/variables:
|
2. In the secrets file/variables:
|
||||||
- Set your AI model key in the respective section
|
- 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)
|
||||||
|
|
||||||
|
6. Build a Docker image for the app and optionally push it to a Docker repository. We'll use Dockerhub as an example:
|
||||||
5. 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 build . -t gitlab_pr_agent --target gitlab_webhook -f docker/Dockerfile
|
||||||
docker push codiumai/pr-agent:gitlab_webhook # Push to your Docker repository
|
docker push codiumai/pr-agent:gitlab_webhook # Push to your Docker repository
|
||||||
```
|
```
|
||||||
|
|
||||||
6. Create a webhook in GitLab. Set the URL to ```http[s]://<PR_AGENT_HOSTNAME>/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": "<personal_access_token>"
|
||||||
|
"GITLAB.SHARED_SECRET": "<shared_secret>"
|
||||||
|
"GITLAB.URL": "https://gitlab.com"
|
||||||
|
"OPENAI.KEY": "<your_openai_api_key>"
|
||||||
|
```
|
||||||
|
|
||||||
|
8. Create a webhook in your GitLab project. Set the URL to ```http[s]://<PR_AGENT_HOSTNAME>/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
|
|
||||||
|
Reference in New Issue
Block a user