0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

git Commit時にgit tagとbulid statusをJenkinsジョブから更新する

Posted at

コミット時にJenkinsジョブをトリガーし、
ビルド成功時にgit tagとbulid statusをgit CommitにプッシュするようなJenkinsジョブを作成する。忘れないようにメモ。

設定前
タグなし、ステータスなし
image.png

設定後
n回目のビルドを表したタグ
「Private-repo-git-webhook」ジョブからコミットしたステータス表記
image.png

前提

  • プライベートリポジトリとJenkinsの認証設定は済んでいること

設定

github設定

webhook

プライベートリポジトリの[Settings]タブより、[Webhooks]を選択しPayloadURLを入力する。
http://【Jenkinsサーバ】:8080/github-webhook/
これを設定することで、リポジトリにコミットが来たタイミングで設定したエンドポイントにRESTAPIでリクエストを送るようになる。
そのリクエストをトリガーにしてJenkins側でパイプラインを構成する。
image.png

git publisher用のアクセストークン作成

gitリポジトリへのアクセストークンとgit publisher用のアクセストークンは異なるため別途作成する必要がある。
右上のアイコンSettingsDeveloper SettingsPersonal access tokens (classic)から、「Generate new token」を実行しアクセストークンを発行しておく。
発行されたトークンはJenkins側で登録するため控えておく。

image.png

発行時に
リポジトリ全体にアクセスができるようにチェックマークを入力する。
image.png

Jenkins設定

アクセストークン設定

githubで作成したgit publisher用トークンを登録する。
ダッシュボードJenkinsの管理SystemGithubに移動し、
Credentialsの追加ボタンから先ほど作成したアクセストークンを「Secret text」で登録する。

image.png

ジョブ作成の設定

Jenkinsで設定できる環境変数を確認する。
https://zenn.dev/snowcait/scraps/bc7675be46d01d
今回は、BUILD_NUMBERをタグにプッシュするように設定するため、
ログでNUMBERが確認できるようにシェルコマンドを実行しておく。

echo "JOB NAME IS ${JOB_NAME}"
echo "JOB NUMBER IS #${BUILD_NUMBER}"

GitHub hookにトリガーできるようにチェックマークをつける
image.png

Git Publisher欄にて、
プッシュするタグ名とリモート名を設定する。
また、コミット時に反映する操作として「タグの作成」「タグの更新」にチェックマークを入れる。

image.png

Set GitHub commit status (universal)欄にて、
Status result:One of default messages and statusesに変更する。

image.png

実際にコミットしてみる。

test.txtを更新し、コミットしてプッシュする。
image.png

Jenkinsでジョブがキックされたことを確認。
image.png

Githubでステータスの更新とタグの付与がされていることを確認。
image.png
image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?