如何自动触发詹金斯工作/时的变化都推到Github上
问题描述:
我在我的本地机器使用Jenkins
建(詹金斯URL不暴露在互联网,但互联网的是,机上启用。)如何自动触发詹金斯工作/时的变化都推到Github上
我做了以下配置更改:
在Jenkins工具上安装了Git和Github插件。
我已经按照以下步骤在Github上进行更改时触发自动构建。配置Maven构建,我可以通过单击
Build Now
链接手动构建。我已创建使用GIT-bash的SSH密钥和在Github的帐户(
settings
- >SSH and GPG keys
- >New SSh Key
)加入密钥在github存储库中配置了Webhook设置。 (
Repository
- >Settings
- >Webhook
- >add webhook
)
请帮助我,如果有任何其他的解决方案可供选择。
答
您可以使用git hooks
来实现此目的。
首先请确保您已在您的工作中启用Poll SCM
。如果您尚未启用它,但不提供任何时间表。
在你的Git仓库中会有隐藏的.git
文件夹。在里面你可以找到一个名为hooks
的子文件夹。
现在这个文件夹中创建一个名为post-commit
文件,不使用任何扩展名的文件,并添加以下行并保存:
#!/bin/bash curl http://localhost:8080/git/notifyCommit?url=<GIT_REPO_URL>
这将扫描所有作业是使用GIT_REPO
并在存储库中发生更改时触发构建。欲了解更多详情,请阅读document.
不使用WebHook,您可以获得该过程,但检查所需的最短时间为1分钟。 –
@ChandraSekhar:你能给我一些参考链接吗?或者你能否列出步骤? – Harsha
为私有存储库注册webhook失败,但它对使用相同访问令牌的公共存储库成功 –