gitlab添加CI自动测试

news2024/9/25 4:50:54

gitlab 配置

yml 语法
** https://docs.gitlab.com/17.3/ee/ci/yaml/index.html **

添加.gitlab-ci.yml文件并配置 :

## 定义几个阶段 
stages:          # List of stages for jobs, and their order of execution
  - build
  - test
  - deploy
  - 
 ## 示例job ,可以添加多个job 
build-generator-job:       # This job runs in the build stage, which runs first.
  stage: build  ## 运行的阶段 
  tags:
    - build-generator-job
  only:
    - develop
  script:
    - echo "Compiling the code..."
    - /bin/bash xxx.sh generator all  ## 示例内容,实际build需要干的事情,此处可以写命令,也可以写脚本等 
    - echo "Compile complete."

添加runner & 配置服务器

进入项目的CICD配置页面,点击runners进入:
添加runners
点击Show runner installtion 选型
配置命令

在服务器上安装runner-具体命令

### Download and install binary

# Download the binary for your system
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64

# Give it permission to execute
sudo chmod +x /usr/local/bin/gitlab-runner

# Create a GitLab Runner user
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash

# Install and run as a service
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
sudo gitlab-runner start

## Command to register runner

sudo gitlab-runner register --url http://192.168.1.xxx/ --registration-token GR1348941p2u73yR4HziHG8oNMjn7
## 此处的url是gitlab服务器地址 
## token是gitlab那边生成的,直接从runner处拷贝过来即可。

注册runner

$ sudo gitlab-runner register --url http://192.168.1.xx/ --registration-token GR1348941p2u73yR4HziHG8oNMjn7
Runtime platform                                    arch=amd64 os=linux pid=1779809 revision=b92ee590 version=17.4.0
Running in system-mode.                            
                                                   
Enter the GitLab instance URL (for example, https://gitlab.com/):
# 可不填
[http://192.168.1.xx/]: 
Enter the registration token:
# 可不填
[GR1348941p2u73yR4HziHG8oNMjn7]: 
Enter a description for the runner:
# 可不填
[qli-Z390-UD]: 
Enter tags for the runner (comma-separated):
# 该runner可以执行的tag,这个和yml文件定义的job对应,也可不填,后续在gitlab runner界面下配置 
build-generator-job build-runtime-job build-app-job model-test-job
Enter optional maintenance note for the runner:

WARNING: Support for registration tokens and runner parameters in the 'register' command has been deprecated in GitLab Runner 15.6 and will be replaced with support for authentication tokens. For more information, see https://docs.gitlab.com/ee/ci/runners/new_creation_workflow 
Registering runner... succeeded                     runner=GR1348941p2u73yR4
Enter an executor: custom, kubernetes, docker, docker-windows, docker+machine, docker-autoscaler, shell, ssh, parallels, virtualbox, instance:
# 配置执行环境,可以选docker/shell 等,跟进实际需求来定,如果需要依赖服务器环境等,可直接选shell 
docker
Enter the default Docker image (for example, ruby:2.7):
latest
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
 
Configuration (with the authentication token) was saved in "/etc/gitlab-runner/config.toml"

** 打开文件 /home/gitlab-runner/.bash_logout ,屏蔽如下几行: (要不然会导致初始化得时候报错)**

if [ "$SHLVL" = 1 ]; then
    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
fi

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

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

相关文章

Linux 简易shell编写

shell shell是壳,外壳的意思,一般我们使用linux系统有用图形化界面的也有使用命令行界面的,这两个都是一种shell,以命令行为例: 如图这个就是我这里的命令行格式,在$符后面写的就是执行的指令,…

携手SelectDB,观测云实现性能与成本的双重飞跃

在刚刚落下帷幕的2024云栖大会上,观测云又一次迎来了全面革新。携手SelectDB,实现了技术的飞跃,这不仅彰显了观测云在监控观测领域的技术实力,也预示着我们可以为全球用户提供更加高效、稳定的数据监测与分析服务。这一技术升级&a…

同等学力英语用什么app背单词

同等学力申硕的意义和作用 授予同等学力人员硕士学位是国家为同等学力人员开辟的获得学位的渠道,对于在职人员业务素质的提高和干部队伍建设起到积极作用。它为那些没有传统学历背景但具有相应学术水平的人员提供了获取学位的机会,有助于提升他们的职业竞…

llamafactory0.9.0微调qwen2.5

llama_factory微调QWen1.5_llama factory qwen-CSDN博客文章浏览阅读2.9k次,点赞36次,收藏10次。本文介绍了如何使用LLaMA-Factory微调Qwen1.5模型,包括1.8B和0.5B版本的训练细节。在数据、训练、LORA融合及推理等方面进行了探讨,同时也分享了微调后模型在不同任务上的表现…

Linux usb主机控制器HC阅读

intel的UHCI 一种usb主机控制器的接口规范,遵守它的硬件称为UHCI主机控制器,Linux中,把这种硬件叫做HC,host controller,与之对应的软件,叫做HCD,hc driver, depends on usb & pci: 它的内核软件模块代码是uhci-hcd.c uhci_hcd_init初始化开始: usb_disable函数:…

408选择题笔记|自用|随笔记录

文章目录 B树:访问节点建堆!将结点插入空堆广义指令求每个子网可容纳的主机数量虚拟内存的实现方式文件目录项FCB和文件安全性管理级别索引文件三种存取方式及适用器件成组分解访问磁盘次数 C语言标识符 最小帧长物理传输层介质 局域网&广域网考点总…

基于BeagleBone Black的网页LED控制功能(flask+gpiod)

目录 项目介绍硬件介绍项目设计开发环境功能实现控制LED外设构建Webserver 功能展示项目总结 👉 【Funpack3-5】基于BeagleBone Black的网页LED控制功能 👉 Github: EmbeddedCamerata/BBB_led_flask_web_control 项目介绍 基于 BeagleBoard Black 开发板…

ubuntu 安裝 Poetry 示例

ubuntu 安裝 Poetry 示例 一、前言 poetry 是一个命令行工具,安装之后就可以使用 poetry 指令。可以将其安装全局环境或者是虚拟环境,我推荐安装在全局环境,这样在后面使用时不需要单独激活虚拟环境。 (1)安装 Poet…

ubuntu22.04磁盘挂载(多磁盘和单磁盘挂载)

多磁盘挂载到同一个目录 # 如果没有安装逻辑卷管理系统工具sudo apt install lvm2 # 查看磁盘分区sudo fdisk -l # 新建物理卷sudo pvcreate /dev/nvme0n1 /dev/nvme1n1 # 查看现有物理卷信息sudo pvdisplay # 新建物理卷sudo vgcreate dnyjy_vg /dev/nvme0n1 /dev/nvme1n1…

STM32F407之超声波模块使用

#include "sys.h" #include "delay.h" #include "usart.h" #include "includes.h" #include "HC_SR04.h"int main() {OS_ERR err;//错误uart_init(9600);//串口初始化//超声波初始化HC_SR04();//OS初始化 他是第一个运行的函…

【VUE3.0】动手做一套像素风的前端UI组件库---Message

目录 引言自己整一个UI设计稿代码编写1. 设计信息窗口基础样式2. 设置打开和关闭的方法3. 编写实例化组件的js文件4. 看下最终效果5. 组件完整代码6. 组件调用方式 总结 引言 本教程基于前端UI样式库 NES.css 的UI设计,自行研究复现。欢迎大家交流优化实现方法~ 此次…

Flask建立的Web网站的can‘t open file C_Program问题的分析

前言 想自己制作一个Web网站对接私有化的大模型。考虑到私有化的大模型都是Python编写为主的。所以,就打算用Python建立一个Web网站。目前,选定的是Flask框架(Python3.11)。但是,用PyCharm进行调试的时候却出现了问题。…

努比亚z17努比亚NX563j原厂固件卡刷包下载_刷机ROM固件包下载-原厂ROM固件-安卓刷机固件网

努比亚z17努比亚NX563j原厂固件卡刷包下载_刷机ROM固件包下载-原厂ROM固件-安卓刷机固件网 统版本:官方软件作者:热心网友rom大小:911MB发布日期:2018-12-23 努比亚z17努比亚NX563j原厂固件卡刷包下载_刷机ROM固件包下载-原厂RO…

【工作流集成】springboot+vue集成工作流activiti,flowable,智能审批系统,集成方案(源码)

基于Javavue开发的智能审批系统,低代码平台 软件资料清单列表部分文档清单:工作安排任务书,可行性分析报告,立项申请审批表,产品需求规格说明书,需求调研计划,用户需求调查单,用户需…

多智能体笔记本专家系统:集成CrewAI、Ollama和自定义Text-to-SQL工具

在这个项目中,我们的目标是创建一个由多智能体架构和本地大语言模型(LLM)驱动的个人笔记本电脑专家系统。该系统将使用一个SQL数据库,包含有关笔记本电脑的全面信息,包括价格、重量和规格。用户可以根据自己的特定需求…

数据结构3——双向链表

在上篇文章数据结构2——单链表中,我们了解了什么是链表,以及单链表的实现,接着上篇文章,本篇文章介绍一下比单链表更常用的链表——双向循环链表。 目录 1.双向链表的实现 1.1节点 1.2 初始化节点 1.3 动态开辟新节点 1.4 遍…

美团中间件C++一面-面经总结

1、TCP和UDP 的区别? 速记标识符:连靠刘墉宿营 解释: 面向连接vs无连接 可靠传输vs不保证可靠 字节流vs报文传输 拥塞控制流量控制vs无 速度慢vs速度快 应用场景自己描述 2、服务端处于close wait是什么情况,是由什么造成的&…

【算法】模拟:(leetcode)495.提莫攻击(easy)

目录 题目链接 题目介绍 解法 代码 题目链接 495. 提莫攻击 - 力扣(LeetCode) 题目介绍 解法 模拟 分情况讨论。 当寒冰再次中毒时,上次「中毒」是否已经结束。 ​ 当上次中毒已经结束了,那么上次「中毒」维持的时间就是 …

C++【类和对象】(构造函数与析构函数)

文章目录 1. 类的默认成员函数2. 构造函数析构函数的特点3. 析构函数析构函数的特点 结语 1. 类的默认成员函数 默认成员对象就是我们没有显示的写,但是编译器会自动生成的成员函数。一个类,我们不写的情况下编译器会默认生成以下6个成员函数&#xff0…

【JVM】一篇文章彻底理解JVM的组成,各组件的底层实现逻辑

文章目录 JVM 的主要组成部分类加载器(Class Loader)1. 加载(Loading)2. 链接(Linking)3. 初始化(Initialization) Execution Engine(执行引擎)1. 解释器&…