Как настроить Gerrit Webhooks для событий gerrit

Я пытаюсь выполнить некоторые действия с событиями gerrit

  1. При добавлении/создании нового репо.
  2. При создании нового набора исправлений.
  3. Когда изменение объединяется с определенной веткой.

Идея состоит в том, чтобы получить событие на конечной точке API, когда любое из вышеперечисленных событий происходит в любом репозитории.

У меня есть установка gerrit 3.1.3, работающая на экземпляре Amazon Linux ec2, и сервер узлов (с открытыми конечными точками API) на другой аналогичной машине EC2. В конфиге gerrit я добавил следующие строки:

[plugin "webhooks"]
    connectionTimeout = 3000
    socketTimeout = 2500
    maxTries = 300
    retryInterval = 2000
    threadPoolSize = 3
[remote "wh_projectCreated"]
        url = http://17.233.138.23:8080/gereve
        maxTries = 1
        sslVerify = false
        event = patchset-created

Я проверил, что оба плагина webhooks и hooks установлены при установке gerrit. Теперь я не смог найти подходящую запись в блоге, в которой рассказывается, как настроить и получить события gerrit, которые будут получены на веб-перехватчиках.

Что мне нужно сделать еще, большая помощь!


person Salim Shamim    schedule 05.01.2021    source источник
comment
вы получили исправление или пример того, как это сделать ??   -  person user3292394    schedule 30.04.2021
comment
@user3292394 user3292394 Опубликовал ответ, пожалуйста, проверьте.   -  person Salim Shamim    schedule 01.05.2021


Ответы (1)


Нашел решение, запишу точно:

  1. В папке клонируйте репозиторий All-Projects (с URL-адресом администратора). git clone "http://admin@<gerrit-address>-:<gerrit-port>/a/All-Projects".
  2. cd All-Projects/
  3. git fetch origin refs/meta/config:refs/remotes/origin/meta/config
  4. git checkout meta/config
  5. В корне каталога All-Projects создайте файл с именем webhooks.config.
  6. Измените содержимое ниже:
[remote "changemerged"]
  url = http://<webhook-api>:8081/change-merged
  event = change-merged
  
[remote "project_created"]
  url = http://<webhook-api>:8081/create-jenkins-project
  event = project-created

см. события gerrit.

  1. Добавьте и зафиксируйте изменение: git commit -am "Add webhooks config file"

  2. И проверьте git push origin meta/config:meta/config

и это все, что мы сделали!

(Проголосуйте, если вы нашли это полезным)

person Salim Shamim    schedule 01.05.2021