前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jenkins pipeline 拉取gitlab项目大文件失败

Jenkins pipeline 拉取gitlab项目大文件失败

原创
作者头像
对你无可奈何
修改2021-07-30 17:17:22
1.2K0
修改2021-07-30 17:17:22
举报
文章被收录于专栏:运维专栏运维专栏运维专栏

背景:

pipeline都基本是一个模板,参照:Jenkins Pipeline演进。最近新上了一个项目。springcloud的聚合工程,8个子项目。本来是要求程序直接提交代码到gitlab,我直接自己maven打包,并且docker build构建镜像并发布到线上环境。但是程序喜欢个人提交jar包(每个jar包100m左右)。gitlab比较老只开通了http方式,并没有开通ssh方式。开始还好jenkins还能发布,昨天晚上直接不能发布了....报错如下:

RPC failed; HTTP 504 curl 22 The requested URL returned error: 504 Gateway Time-out

解决问题思路:

嗯git文件过大!。解决方式无非两种:

1.增加ssh方式

clone方式修改为ssh。老的不想动了,并且容器里面clone构建的。整ssh的方式就不采用了。

2.获取最新的版本--depth=1的方式

如下:

 		stage("GetCode"){
		    agent { label  "build01" }
			steps{
				script{
					println("下载代码 --> 分支: ${env.branchName}")
 					checkout([$class: 'GitSCM', branches: [[name: "${env.branchName}"]],
 							 doGenerateSubmoduleConfigurations: false, 
                             extensions: [[$class: 'CloneOption', depth: 1, noTags: false, reference: '', shallow: true]], 
                             submoduleCfg: [], 
 							 userRemoteConfigs: [[credentialsId: 'laya-open-php', 
 							 url: "${env.gitHttpURL}"]]])
				}
			}
         }

extensions参数中增加depth等参数!

image.png
image.png

嗯总算可以拉动代码了

思考:

1. git的正确使用方式。应不应该去放大文件?git应该怎样去使用?

3. 灵魂拷问:打包与制品的管理?

3. 如果推动程序去规划化打包发布流程?

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景:
  • 解决问题思路:
    • 1.增加ssh方式
      • 2.获取最新的版本--depth=1的方式
      • 思考:
        • 1. git的正确使用方式。应不应该去放大文件?git应该怎样去使用?
          • 3. 灵魂拷问:打包与制品的管理?
            • 3. 如果推动程序去规划化打包发布流程?
            相关产品与服务
            容器服务
            腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档