Запуск задачи Jenkins из bash скрипта

Для начала Вам нужно узнать свой API токен (или создайте нового пользователя с правами для запуска задач). Для этого в правом верхнем углу нажмите на своё имя и войдите в настройки. Нажимаем кнопку Show API Token… Запоминаем User ID и API Token.

Ну и вот пример скрипта который будет запускать задание, у меня он будет принимать два параметра, наименование задачи и ревизию.

#!/bin/sh
if [ $# != 2 ] ; then
    echo "Usage: $0 <job> <revision>"
    exit 1
fi
JOB_NAME=$1
REVISION=$2
SERVER=http://jenkins.domain.org:8080

USER_ID=mybuilduser
API_TOKEN= e3777d585f4b777b25c2c7772fcb5bfc

JOB_URL=${SERVER}/job/${JOB_NAME}/build
# JSON - формируем параметры которые будем передавать в сборку
JSON= "{\"parameter\": [{\"name\": \"REVISION\", \"value\": \"${REVISION}\"}], \"\": \"\"}"
# получим crumb чтобы потом подставить его в заголовок запроса
# проверьте стоит ли в настройках чек напротив Prevent Cross Site Request Forgery exploits в разделе CSRF Protection
CRUMB=`wget -q --auth-no-challenge --user ${USER_ID} --password ${API_TOKEN} --output-document - '${SERVER}/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)'`

curl -H "$CRUMB" -X POST $JOB_URL --data-urlencode json="${JSON}" --user ${USER_ID}:${API_TOKEN}