windows安装gitlab-runner提交gitlab自动打包maven包

news2024/11/24 19:02:06

运行环境:

私服gitlab,想使用gitlab的ci/cd自动打包,不需要将打好的包部署到远程服务器而是保存在本地的,可以在本地安装gitlab-runner,打好的包直接在本地生成
本地是window环境

1 本地安装maven

https://maven.apache.org/download.cgi
在这里插入图片描述
maven 的安装需要依赖 jdk 的安装,所以必须先安装完成 jdk 且配置好 jdk 环境变量后在进行 maven 的安装!!
在这里插入图片描述
解压好直接配置环境变量
在这里插入图片描述
在这里插入图片描述

3 gitlab-runner安装注册

window版gitlab-runner下载地址:

Install GitLab Runner on Windows | GitLab

在这里插入图片描述
在这里插入图片描述

管理员身份运行 cmd

gitlab-runner.exe install

注册到指定的 gitlab

gitlab-runner.exe register

在这里插入图片描述
注册需要的地址和token从gitlab控制台获取
在这里插入图片描述
注册成功可以在这里看到
在这里插入图片描述

4 编写打包脚本.gitlab-ci.yml

在maven项目的跟目录下新建.gitlab-ci.yml,因为不需要打包后还放入线上容器运行,所以只需要一个package步骤就好,将包输出到指定目录并添加上时间戳

  • 如果要修改输出目录请修改代码中的 D:/output/
  • 如果要修改打包分支请修改 only
  • 如果要指定mvn本地仓库,请修改 Dmaven.repo.local
stages:
  - package

build:
  stage: package
  only:
    - develop
  script:
    - $timestamp = Get-Date $env:CI_COMMIT_TIMESTAMP -Format 'yyyyMMddHHmm'
    - $newPackageName = "dot$timestamp.tar"
    - mvn package '-Dmaven.test.skip=true' '-Dmaven.repo.local=D:\workspase\repository'
    - cp webapp/target/*.tar D:/output/
    - cd D:/output
    - mv webapp-bin.tar $newPackageName
  artifacts:
    paths:
      - D:/output/*.tar

5 坐等自动打包

提交develop分支时,可以在gitlab查看到打包进度
在这里插入图片描述
在这里插入图片描述
只需要静静等待,打包完成即可在指定目录找到
在这里插入图片描述

6 可能会遇到的坑

  • 6.1 gitlab-runner 安装目录下的config.toml 可以指定运行的方式,如果powershell不支持可能是没写全
 executor = "shell"
 shell = "powershell"
  • 6.2 如果打包失败有先查看失败日志
    打包失败的原因大致有以下几种情况,逐一排查:
    1,网络问题,代码没有拉取到,请确认网页能否正常打开gitlab
    2, gitbal-runner没启动,可以在window的服务中查看gitlab-runner服务是否开启
    3,代码问题,可能多个开发人员功能冲突未解决,联系最后一次提交到develop的开发人员

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/744979.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python批量对word文件重命名

一、背景 在日常工作或学习中,我们可能会遇到需要对大量的 Word 文件进行重命名的情况。手动一个一个修改文件名费时费力,而编写一个 Python 脚本则可以自动化完成这个任务,提高效率。 二 、开发环境 为了实现批量对 Word 文件进行重命名的功…

leaflet在天地图上添加poi兴趣点

前言 书接上节,在上一篇博客加载的天地图的基础上,加载poi兴趣点。 上节传送:使用leaflet在html中加载天地图且去掉左上角的缩放图标以及右下角的logo 一、加载poi的方法 leaflet通过 L.marker 方法用来加载poi,我们只需填入p…

嵌入式Linux领域中的C++:应用层主力与挑战

嵌入式Linux领域中,C是应用层的主要编程语言之一。尽管QT/C在某些领域被Android/Java逐渐替代,但在医疗、工控、车载导航等领域仍占主导地位。对于嵌入式人员学习C的观点存在一定片面性。C的难点在于移动语义、模板偏特化、lambda表达式、模板元编程等知…

Unity实现全景图

1.前言 实现全景查看有两种方式,一种是创建天空盒,另外一种是全景图渲染到一个球形上,从内球内部看。两者都可以用天空盒材质Skybox实现。 2.创建天空盒材质 先创建一个材质球命名为Sky,在 Shader 下拉选单中,单击 Sk…

视觉算法知识荟萃

文章目录 视觉算法知识荟萃视觉算法八股手写卷积Delta KAbs RelRMSESilogVNLSoftMaxCrossEntropySwin-TransformerTransformerAdam,SGD如何修改SGD,使其不陷入局部最小值 NMSSoftNMS 边缘检测算法SobelLaplacianCanny Pooling Layer手写 Pooling LayerPo…

OpenGauss ustore查询过程的流程

查询流程: 以 Select c2 from tb1 where c1 1为例: 1、根据索引找到TID(1,2)的元组指针,即linePointer。 2、计算其事务xid是否可见,在Map中计算其csn和快照csn的大小关系。 3、如果大于快照CSN,那么不可见&#xff0…

智能仪表在铁塔行业应用 安科瑞 许敏

应用场景 可应用于基站的交直流配电箱及对基站内的动力设备进行数据采集和控制。 功能 1. 对多个回路进行全电参量测量,实现基站内各回路用电能耗的集中管理; 2. 丰富的DI/DO输入输出,NTC测温,温湿度测量等非电参量监测&#x…

​ 基于单片机智能温室大棚控制系统

功能介绍 以51单片机作为主控系统; DS18B20温度采集模块检测温度; 光敏电阻和ADC0832组成的光照检测模块; 土壤湿度检测模块检测土壤湿度; CO2检测模块检测CO2浓度; LCD1602显示模块显示测量值、 若温度小于温度最…

uni-data-checkbox多选框max属性无法设置为0解决方案

找到组件源码,搜索 setRange 方法(改掉之后,组件必须添加 max属性和值!!!)

使用python将32位的bmp转成24位的

前言 一个临时需求,要将32位的bmp图像转成24位的 代码 使用opencv读取图片,然后重新存一下就可以。我看有些博主就这个内容还设置了收费,也不害臊。 import cv2if __name__ "__main__":img cv2.imread("IMG-0001-00001.…

MySQL数据库管理(一)

文章目录 一.数据库基本操作1.查看数据库结构1.1 查看数据库信息1.2 查看数据库中的表信息1.3 显示数据表的结构(字段) 2.数据库的存储方式 二.数据库管理1.DDL:数据定义语言1.1 创建新的数据库1.2 创建新的表1.3 删除指定的数据表1.4 删除指…

关于虚拟机kali系统忘记密码修改密码的操作

1、启动kali虚拟机,进入GRUB菜单,选中kali GNU/Linux 按e 进入编辑状态 2、在编码文档里找到linux ...root....quiet 3、在末尾添加 rw single init/bin/bash single --进入单用户模式 rw --根分区的挂载模式默认是只读(ro),…

最全整理,web自动化测试框架总结-实战案例,从0精通封装...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 web自动化测试框架…

第2讲 KMD ISP子系统缩略词及目录结构

QCOM Camera子系统缩略词介绍 CPAS(Camera Peripherals and Support)CDM(Camera Data Mover)TFE(Thin Front End)IFE(Image Front End)OPE(Offline Processing Engine)BPS(Bayer Processing Segment)SFE(Sensor Front End)LRME(Low Resolution Motion Estimation)CSID(Camera …

【《快捷学习Spring》——带你步入Spring世界的快速、有趣、实用之旅!】

本书是一本学习Spring 框架的入门书籍,引导读者逐步上手,书中提供了所有必要的理论 知识,通过实例讨论实际应用程序的主题。本书分为两部分。第I部分是基础(1~6章),学习 使用支持Spring框架的基本组件。分别讨论了真实世界里的Spr…

Js语法学习实战 -数据类型

Js语法学习实战 -数据类型 1. undefined2. null3. Boolean4. Number5. String5.1 常用方法5.2 字符串迭代遍历方法 6. Symbol类型7. Object7.1 基本使用7.2 对象遍历7.3 复制对象方法 8. 数组 - Array8.1 数组的常用方法8.2 数组遍历 9. Function JS语法学习实战系列合集 javas…

6-Spring cloud之Hystrix容错处理(上)

6-Spring cloud之Hystrix容错处理(上) 1. 前言1.1 关于雪崩1.1.1 什么是灾难性雪崩1.1.2 服务雪崩形成的原因1.1.3 如何防止灾难性雪崩效应 1.2 前文介绍 2. Hystrix容错处理2.1 项目搭建(Ribbon整合Hystrix)2.1.1 项目结构2.1.2 …

IOI车机系统刷机和改包笔记

前言 我自己21年买的雪佛兰探界者SUV,没想到到了23年,车机系统上的高德导航还是3.2版本,而官方的已经7.1. 中间出去玩,在高速上被车机上的高德坑了好多次,简直无力吐槽。单纯使用手机Carplay虽然也能完成导航任务&am…

2023年上半年鲁大师电动车综合分数榜解读:九号M95C荣登榜首

2023年上半年电动车综合分数榜单显示了电动车市场的最新发展趋势和品牌表现。 九号M95C获得了第一名,得分798分。九号M95C以其卓越的性能和创新设计脱颖而出。它的高得分主要来自于其强大的续航能力、高速性能和可靠性。九号M95C在电动单车市场中取得了非常好的口碑…

23款奔驰C260L加装原厂香氛负离子系统,清香宜人,久闻不腻

奔驰原厂香氛合理性可通过车内空气调节组件营造芳香四溢的怡人氛围。通过更换手套箱内香氛喷雾发生器所用的香水瓶,可轻松选择其他香氛。香氛的浓度和持续时间可调。淡雅的香氛缓缓喷出,并且在关闭后能够立刻散去。车内气味不会永久改变,香氛…