| title | ngrokを使ってJenkinsを試す | |
|---|---|---|
| date | 2020-08-26 22:51:22 +0900 | |
| draft | false | |
| thumbnail | https://tokizuoh.dev/images/thumbnail/jenkins.png | |
| tags |
|
ngrokを使って、手軽にwebhookを利用したJenkinsのジョブを試す。
Jenkins
Jenkins is a self-contained, open source automation server which can be used to automate all sorts of tasks related to building, testing, and delivering or deploying software.
(from: Jenkins User Documentation)
ビルドやテストなどを自動化するサーバー。
ngrok
Ngrok exposes local servers behind NATs and firewalls to the public internet over secure tunnels.
ローカルサーバーをPublicなURLに割り当てるサービス。
GitHub運用リポジトリのmasterブランチへpushした際に、Jenkinsで設定した処理を走らせる。
GitHubのwebhookを使うために、ngrokでローカルサーバーにPublicなURLを割り当てた。
> java --version
java 14.0.2 2020-07-14
> jenkins --version
2.254
- インストール, セットアップ: JenkinsでCI環境構築チュートリアル (Linux編・macOS編)
- 新規ジョブ作成
- GitHub project > Project url: GitHubのリポジトリURL
- ソースコード管理 > Git
- ソースコード管理 > リポジトリURL: GitHubのリポジトリURL
- ビルドするブランチ > ブランチ指定子 (空欄はすべてを指定) > /master
- ビルド・トリガ > GitHub hook trigger for GITScm polling
- コンソール出力にタイムスタンプを追加する ※お好み
- ビルド > シェルの実行 > シェルスクリプト > cat README.md ※ master�ブランチへのpush時に走らせたい処理
- インストール, セットアップ: Setup - ngrok
- ngrok http 8080
- セットアップ: リポジトリ作成
- GitHubのリポジトリ > Settings > Webhooks > 「Add webhook」
- Payload URL: {ngrok http 8080 で得たURL}/github-webhook/
- masterブランチでpush
Jenkinsトップのコンソール出力から処理を実行した形跡が確認できる。