日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Webhook与Jenkins自动构建(上)

發布時間:2025/7/25 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Webhook与Jenkins自动构建(上) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

webhook是個在特定情況下通過web觸發的一種api,Web 鉤子用于在項目發生相關事件時通知外部服務器,gitlab的web hooks跟git hook類似。也是當項目發生提交代碼、提交tag等動作會自動去調用url,這個url可以是更新代碼。或者其他操作。

githook

本地Hook

本地 Hook 只影響它們所在的倉庫。以下是最常用的 6 個本地 Hook:

  • pre-commit
  • prepare-commit-msg
  • commit-msg
  • post-commit
  • post-checkout
  • pre-rebase 前四個 Hook 介入到版本提交的生命周期,后兩個允許執行一些額外的操作,分別為 git checkout 和 git rebase 的安全檢查。所有與帶 pre- 的 Hook 代表即將發生的某個階段,帶 post- 只用于通知。

pre-commit

pre-commit 腳本在每次你運行 git commit 命令時,Git 向你詢問提交信息或者生產提交對象時被執行。你可以用這個 Hook 來價差即將被提交的代碼快照。比如說,你可以運行一些自動化測試,保證這個提交不會破壞現有的功能。

prepare-commit-msg

prepare-commit-msg這個 Hook 在 pre-commit Hook 在文本編輯器中生效提交信息之后被調用。prepare-commit-msg 的參數可以是下列三個:

包含提交信息的文件名。你可以在原地更改提交信息。 提交類型。可以是信息(-m 或 -F 選項),模板(-t選項),merge(如果是個合并提交)或squash(如果這個提交插入了其他提交)。 相關提交的SHA1哈希字串。只有當-c,-C,或--amend選項出現時才需要。

post-commit

post-commit Hook 在 commit-msg Hook 之后立即被運行。它無法改變 git commit 的結果,主要用于通知。這里我們詳細來講述一下這個 Hook ,因為我們之后要用到它。

這個腳本沒有任何參數,而且退出狀態不會影響提交。對于大多數的 post-commit 腳本來說,你只是想訪問你剛剛創建的提交。你可以用 git rev-parse HEAD來獲得最近一次提交的 SHA1 哈希字符串,或者你可以用 git log -l HEAD 來獲得完整的信息。

post-checkout

post-checkout Hook 和 post-commit Hook 很像,但它在你用 git checkout查看引用的時候被調用。

gitlab runner

docker 運行

docker run -d --name gitlab-runner \-v /srv/gitlab-runner/config:/home/gitlab-runner \-v /var/run/docker.sock:/var/run/docker.sock \gitlab/gitlab-runner

gitlab-runner注冊

輸入:

gitlab-ci-multi-runner register

這里主要是需要兩個信息進行注冊,一個是gitlab的url,和runner token。 可以在gitlab CI/CD 的Runners settings中Specific Runners找到,如下所示:

Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com ) https://172.17.0.2 (因為我這里gitlab是放在dockder下面因此需要改成docker內網地址) Please enter the gitlab-ci token for this runner kpSL7ViitQLYbSs3zS1x Please enter the gitlab-ci description for this runner my-runner INFO[0034] fcf5c619 Registering runner... succeeded Please enter the executor: shell, docker, docker-ssh, ssh? shell

gitlab-runner運行

檢查runner的狀態: gitlab-ci-multi-runner verify

重啟所有runner: gitlab-ci-multi-runner run

重啟單個runner: gitlab-ci-multi-runner run-single --url https://172.17.0.2 --token runnerToken --executor shell

需要在gitlab-runner環境下按照運行所需要

轉載于:https://my.oschina.net/Kanonpy/blog/2052073

總結

以上是生活随笔為你收集整理的Webhook与Jenkins自动构建(上)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。