![](/img/trans.png)
[英]How Jenkins can determine change in a specific folder for a GIT repo?
[英]How to trigger a jenkins job if there is any GIT changes only on specific set of folder structure not entire repo
我只有一個文件夾結構如下:
src (parent)
test/resources
main/resources
test/java
main/java
如果僅在 git 存儲庫中的 main/resources 或 test/resources 文件夾中有任何更改,我只想觸發 Jenkins 作業。
實際上,那些資源只有測試數據表,如 xlsx 和 xml 格式的測試套件。 所以我只想在現有數據表中有任何新添加的數據表或更新時觸發作業。
我不想為此工作代碼。 只需要知道如何或想知道可以完成這項工作的插件。
您可以在每次提交后觸發 jenkins 作業。
當您使用 git 執行各種操作時,會執行稱為 git hooks 的腳本。
在這種情況下,您可以使用提交后掛鈎。 你放在<your-project-location>/.git/hooks/post-commit
任何腳本都會被執行。
假設您可以使用名為“trigger-jenkins.sh”的腳本觸發 jenkins 作業,請將以下腳本放入位於<your-project-location>/.git/hooks/post-commit
#!/bin/bash
if git show | grep -E 'a/main/resources|a/test/resources'; then
./trigger-jenkins.sh
fi
確保您使提交后文件可執行
chmod +x <your-project-location>/.git/hooks/post-commit
現在每次你對 test/resources 和 main/resources 進行更改並提交時,git 將執行 trigger-jenkins.sh
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.