簡體   English   中英

基於新的 GitHub 版本觸發 Jenkins 構建或提交到 master 分支

[英]Trigger Jenkins build based on a new GitHub release or commit to the master branch

我意識到這里這里這里之前已經問過這個問題,但是這些解決方案似乎都不適用於我的 Jenkins 設置,我不知道為什么。

我的目標是在對master分支進行新提交或將任何標記(或在 GitHub 中,發布)添加到 repo 時觸發 Jenkins 構建。 這是我目前的設置:

在此處輸入圖片說明

當我對master分支進行新的提交時,會觸發一個新的構建。 但是當我添加一個新的 GitHub 版本時,什么也沒有發生。

查看我的“Git 輪詢日志”顯示以下輸出:

Started on Jun 20, 2017 1:25:00 AM
Polling SCM changes on master
Using strategy: Default
[poll] Last Built Revision: Revision 035c0f46422616b1862376b79c43b2562dc66f93 (origin/master)
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repositories
 > git config remote.origin.url git@github.com:some-org/sample-app-frontend.git # timeout=10
Fetching upstream changes from git@github.com:some-org/sample-app-frontend.git
 > git --version # timeout=10
using GIT_SSH to set credentials GitHub SSH Key
 > git fetch --tags --progress git@github.com:some-org/sample-app-frontend.git +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/remotes/origin/tags/*
Polling for changes in
Seen branch in repository origin/master
Seen branch in repository origin/tags/stage-v0.0.1
Seen branch in repository origin/tags/stage-v0.0.2
Seen branch in repository origin/tags/stage-v0.0.3
Seen branch in repository origin/tags/v0.0.4
Seen branch in repository origin/tags/v0.0.5
Seen branch in repository origin/tags/v0.0.6
Seen branch in repository origin/tags/v0.0.7
Seen 8 remote branches
 > git tag -l # timeout=10
 > git rev-parse refs/tags/stage-v0.0.2^{commit} # timeout=10
 > git rev-parse refs/tags/v0.0.7^{commit} # timeout=10
 > git rev-parse refs/tags/stage-v0.0.1^{commit} # timeout=10
 > git rev-parse refs/tags/v0.0.6^{commit} # timeout=10
 > git rev-parse refs/tags/v0.0.5^{commit} # timeout=10
 > git rev-parse refs/tags/v0.0.4^{commit} # timeout=10
 > git rev-parse refs/tags/stage-v0.0.3^{commit} # timeout=10
Done. Took 0.2 sec
No changes

請注意,我每分鍾使用一次 git 輪詢。 所以看起來 git 正確地檢測到新分支,但不知何故,詹金斯正在做的 git 輪詢並不認為新分支有資格作為“更改”,因為它一直在底部報告“無更改”。

我已經搜索了一段時間,並且能夠找出在從 git hub 釋放標簽時觸發 jenkins 作業的解決方案。 這是屏幕截圖。 從提供 git 存儲庫的位置選擇高級選項並配置如下詳細信息。 因此,當發布被標記時,jenkins 作業被觸發。

Refspec值應該是+refs/tags/*:refs/remotes/tags/*

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM