我有一个Jenkins管道项目,每次推送到托管代码的Gitlab存储库时,我都想触发构建。
在Jenkins上我已经安装了Gitlab插件和Git插件,我已经通过添加Gitlab主机URL(https://gitlab.com)和之前的Gitlab API令牌配置了Gitlab部分(管理Jenkins - >配置系统)在Gitlab上生成:如果我执行测试连接,一切正常,正如预期的那样。
问题出在Gitlab上:我转到设置 - >集成和我尝试通过添加我在项目配置中找到的Jenkins项目URL来配置webhook(下面突出显示):
但是有一个问题:似乎不允许从Gitlab向localhost发出请求。
为了避免这个问题,似乎需要激活一个选项(允许从钩子和服务向本地网络发出请求),但只有当我有自己管理的Gitlab服务器时,此选项才可用。相反,我的项目托管在gitlab.com上,因此无法修改此选项。
在我的案例中,有任何解决方法或替代解决方案来配置webhook吗?
答案 0 :(得分:8)
如果您需要登录到詹金斯家族,可以尝试以下webhook网址:
<FrameLayout
android:id="@+id/fragment_frame_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<fragment
android:layout_width="match_parent"
android:layout_height="match_parent"
android:name=".Fragment_1"
android:id="@+id/fragment"
tools:layout="@layout/fragment_two" />
</FrameLayout>
答案 1 :(得分:2)
如果jenkins正在运行
-很可能是这种情况,那么您需要使用相反的方法:jenkins定期轮询git存储库。然后,您可以选择轮询的频率(以类似cron
的方式)。
这也是jenkins提供的标准方法,即不需要gitlab插件,只需正确的凭据即可。
缺点是,它定期连接可能消耗一些数据的公共gitlab实例;但这可能微不足道。
答案 2 :(得分:0)
将localhost更改为您的计算机IP地址
示例:192.168.33.21(Windows计算机IP地址)
答案 3 :(得分:0)
对于本地实例:
在Gitlab>管理区域>网络>出站请求中:
选中“允许从钩子和服务到本地网络的请求”