What environment variables are passed to Jenkins when using the Gerrit Trigger Plugin? What environment variables are passed to Jenkins when using the Gerrit Trigger Plugin? jenkins jenkins

What environment variables are passed to Jenkins when using the Gerrit Trigger Plugin?


As a start, I had a Jenkins build shell script dump all environment variables with GERRIT in the name:

GERRIT_PATCHSET_UPLOADER=\"Alan Thompson\" <theEmail@gmail.com>GERRIT_PATCHSET_REVISION=eec3b0b65fcdf30872befa2e9ace06e96cd487b4GERRIT_CHANGE_ID=Ieec3b0b65fcdf30872befa2e9ace06e96cd487b4GERRIT_PATCHSET_NUMBER=1GERRIT_EVENT_ACCOUNT_EMAIL=theEmail@gmail.comGERRIT_CHANGE_NUMBER=8GERRIT_CHANGE_OWNER=\"Alan Thompson\" <theEmail@gmail.com>GERRIT_REFSPEC=refs/changes/08/8/1GERRIT_EVENT_TYPE=change-mergedGERRIT_EVENT_ACCOUNT=\"Alan Thompson\" <theEmail@gmail.com>GERRIT_CHANGE_SUBJECT=toast:  this is great with coffeeGERRIT_CHANGE_OWNER_NAME=Alan ThompsonGERRIT_PROJECT=kitchenGERRIT_EVENT_HASH=-1357519550GERRIT_BRANCH=masterGERRIT_CHANGE_OWNER_EMAIL=theEmail@gmail.comGERRIT_PATCHSET_UPLOADER_EMAIL=theEmail@gmail.comGERRIT_CHANGE_URL=http://localhost/8GERRIT_PATCHSET_UPLOADER_NAME=Alan ThompsonGERRIT_EVENT_ACCOUNT_NAME=Alan Thompson


The exact answer can be found in the source here and there is at least some source code comments describing what it means.


Thank your for your share. I find the GerritTriggerParameters.java on GitHub. and I write the shell-script to print the gerrit-trigger variables.

#!/bin/bash# ============================================================#  Author: 凍仁翔 / chusiang.lai (at) gmail.com#  Blog: http://note.drx.tw#  Filename: showGerritTriggerVar.sh#  Description: show all variables of Gerrit Trigger.#  Last modified: 2014-08-28 14:40# =========================================================== echo -e "----# Parameter name for the commit subject (commit message's 1st line).\$GERRIT_CHANGE_SUBJECT = ${GERRIT_CHANGE_SUBJECT}# Parameter name for the full commit message.\$GERRIT_CHANGE_COMMIT_MESSAGE = ${GERRIT_CHANGE_COMMIT_MESSAGE}# Parameter name for the branch.\$GERRIT_BRANCH = ${GERRIT_BRANCH}# Parameter name for the topic.\$GERRIT_TOPIC = ${GERRIT_TOPIC}# Parameter name for the change-id.\$GERRIT_CHANGE_ID = ${GERRIT_CHANGE_ID}# Parameter name for the change number.\$GERRIT_CHANGE_NUMBER = ${GERRIT_CHANGE_NUMBER}# Parameter name for the URL to the change.\$GERRIT_CHANGE_URL = ${GERRIT_CHANGE_URL}# Parameter name for the patch set number.\$GERRIT_PATCHSET_NUMBER = ${GERRIT_PATCHSET_NUMBER}# Parameter name for the patch set revision.\$GERRIT_PATCHSET_REVISION = ${GERRIT_PATCHSET_REVISION}# Parameter name for the Gerrit project name.\$GERRIT_PROJECT = ${GERRIT_PROJECT}# Parameter name for the refspec.\$GERRIT_REFSPEC = ${GERRIT_REFSPEC}# The name and email of the abandoner of the change.\$GERRIT_CHANGE_ABANDONER = ${GERRIT_CHANGE_ABANDONER}# The name of the abandoner of the change.\$GERRIT_CHANGE_ABANDONER_NAME = ${GERRIT_CHANGE_ABANDONER_NAME}# The email of the abandoner of the change.\$GERRIT_CHANGE_ABANDONER_EMAIL = ${GERRIT_CHANGE_ABANDONER_EMAIL}# The name and email of the owner of the change.\$GERRIT_CHANGE_OWNER = ${GERRIT_CHANGE_OWNER}# The name of the owner of the change.\$GERRIT_CHANGE_OWNER_NAME = ${GERRIT_CHANGE_OWNER_NAME}# The email of the owner of the change.\$GERRIT_CHANGE_OWNER_EMAIL = ${GERRIT_CHANGE_OWNER_EMAIL}# The name and email of the restorer of the change.\$GERRIT_CHANGE_RESTORER = ${GERRIT_CHANGE_RESTORER}# The name of the restorer of the change.\$GERRIT_CHANGE_RESTORER_NAME = ${GERRIT_CHANGE_RESTORER_NAME}# The email of the restorer of the change.\$GERRIT_CHANGE_RESTORER_EMAIL = ${GERRIT_CHANGE_RESTORER_EMAIL}# The name and email of the uploader of the patch-set.\$GERRIT_PATCHSET_UPLOADER = ${GERRIT_PATCHSET_UPLOADER}# The name of the uploader of the patch-set.\$GERRIT_PATCHSET_UPLOADER_NAME = ${GERRIT_PATCHSET_UPLOADER_NAME}# The email of the uploader of the patch-set.\$GERRIT_PATCHSET_UPLOADER_EMAIL = ${GERRIT_PATCHSET_UPLOADER_EMAIL}# The name and email of the person who triggered the event.\$GERRIT_EVENT_ACCOUNT = ${GERRIT_EVENT_ACCOUNT}# The name of the person who triggered the event.\$GERRIT_EVENT_ACCOUNT_NAME = ${GERRIT_EVENT_ACCOUNT_NAME}# The email of the person who triggered the event.\$GERRIT_EVENT_ACCOUNT_EMAIL = ${GERRIT_EVENT_ACCOUNT_EMAIL}# The refname in a ref-updated event.\$GERRIT_REFNAME = ${GERRIT_REFNAME}# The old revision in a ref-updated event.\$GERRIT_OLDREV = ${GERRIT_OLDREV}# The new revision in a ref-updated event.\$GERRIT_NEWREV = ${GERRIT_NEWREV}# The submitter in a ref-updated event.\$GERRIT_SUBMITTER = ${GERRIT_SUBMITTER}# The name of the submitter in a ref-updated event.\$GERRIT_SUBMITTER_NAME = ${GERRIT_SUBMITTER_NAME}# The email of the submitter in a ref-updated event.\$GERRIT_SUBMITTER_EMAIL = ${GERRIT_SUBMITTER_EMAIL}# The name of the Gerrit instance.\$GERRIT_NAME = ${GERRIT_NAME}# The host of the Gerrit instance.\$GERRIT_HOST = ${GERRIT_HOST}# The port number of the Gerrit instance.\$GERRIT_PORT = ${GERRIT_PORT}# The protocol scheme of the Gerrit instance.\$GERRIT_SCHEME = ${GERRIT_SCHEME}# The version of the Gerrit instance.\$GERRIT_VERSION = ${GERRIT_VERSION}# A hashcode of the Gerrit event object to make sure every set of parameters# is unique (allowing jenkins to queue duplicate builds).\$GERRIT_EVENT_HASH = ${GERRIT_EVENT_HASH}# The type of the event.\$GERRIT_EVENT_TYPE = ${GERRIT_EVENT_TYPE}"