PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Monday, September 26, 2022

[FIXED] How to Configure Gerrit Webhooks for gerrit events

 September 26, 2022     continuous-deployment, continuous-integration, gerrit, git     No comments   

Issue

I am trying to perform some actions on gerrit events

  1. When a new repo is added/created.
  2. When a new patch-set is created.
  3. When a change is merged into a specific branch.

The idea is to get event on API endpoint when any of the above happens in any repository.

I have gerrit 3.1.3 installation running on Amazon Linux ec2 instance, and a node server (with open API endpoints) on another similar EC2 Machine. In gerrit config I have added the following lines:

[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

I have checked webhooks and hooks plugins are both installed in gerrit installation. Now, I couldn't find a proper blog post which tells how to configure and get gerrit events to be received on webhooks.

What do I need to do more, great help!


Solution

Found the solution, will write down precisely:

  1. In a Folder clone the All-Projects repo (with admin 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. In the root of directory All-Projects, create a file named webhooks.config.
  6. Modify the contents below:
[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

see gerrit-events.

  1. Add and commit the change: git commit -am "Add webhooks config file"

  2. And check in git push origin meta/config:meta/config

and that's it we are done!

(Upvote if you found this helpful)



Answered By - Salim Shamim
Answer Checked By - Gilberto Lyons (PHPFixing Admin)
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing