Webhooks, как заставить BRANCH_NAME загрузить его от Jenkins

У меня есть случай: я хочу загрузить ветку с последним коммитом, я имею в виду следующее. В моем репозитории с битовой блокировкой у меня много веток, и после того, как разработчик добавляет свой push commit в [branch-1], веб-заезды отправляют уведомлению Jenkins и обновляют имя ветки, Итак, как мой плагин Jenkins bitbucket должен получить имя ветки от полученного webhook?

Настройки работы Дженкинс

Настройки Bitbucket webhooks

1 ответ

Вам нужно будет использовать Pipeline, чтобы получить подробную информацию о ветви, которая запускается. Несколько вещей, о которых нужно помнить, вы получите всю полезную нагрузку, из которой вам придется анализировать параметры полезной нагрузки JSON Get в Jenkins.

После выполнения вышеуказанных шагов добавьте это в свой PipeLine

 def object =  new JsonSlurper().parseText("$payload")
    // reading the JSON to see if branch is master or any other
    String refs= new JsonBuilder("$object.ref" ).toPrettyString()
    println "$refs"
    String[] arrBranch =refs.split("/")
    String branch =arrBranch[2]
    println "$branch"
    if (branch=="master")
        echo "deploy to PROD"
    else 
    echo "deploy to staging"
Другие вопросы по тегам