Gitlab CI/CD --- use a sample CI/CD template

0 Preface/Foreword

Pipeline, job, stage的关系如下描述: 

A pipeline is composed of independent jobs that run scripts, grouped into stages.

Stages run in sequential order, but jobs within stages run in parallel.

关键信息:

  • pipeline由独立的jobs组成,即一个pipeline至少有一个job???
  • 不同的Jobs可以组成一个stage,即一个stage至少包含一个Job???
  • 那么pipeline至少包含一个stage???
  • pipeline包含的stage,有运行顺序
  • 同一个stage中的不同Jobs,并行执行(没有执行顺序)。
  • Job,是一个脚本,即命令的集合

0.1 pipeline 

一个仓库,如果没有搭建CI/CD,那么点击sidebar 中的CI/CD选项,会出现一个导航界面。

Use a sample .gitlab-ci.yml template file to explore how CI/CD works.

Get started with GitLab CI/CD

Get familiar with GitLab CI/CD syntax by starting with a basic 3 stage CI/CD pipeline. 

0.2 Editor 

Optimize your workflow with CI/CD Pipelines

 Create a new .gitlab-ci.yml file at the root of the repository to get started.

0.3 Jobs 

 Use jobs to automate your tasks

Jobs are the building blocks of a GitLab CI/CD pipeline. Each job has a specific task, like testing code. To set up jobs in a CI/CD pipeline, add a CI/CD configuration file to your project.

0.4 Schedules 

 Scheduling Pipelines

The pipelines schedule runs pipelines in the future, repeatedly, for specific branches or tags. Those scheduled pipelines will inherit limited project access based on asscociated user.

1 方法 

1.1 Use sample template 

 

下面CI/CD的pipeline configuration file是选择main分支才会自动生成,其他的branches不会自动生成。 

  

1.1.1 CI/CD templates

点击“Browse templates ”,系统会跳转到tempates页面。

1.1.2 运行结果  

 

 

1.2 配置文件解析 

# This file is a template, and might need editing before it works on your project.
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml

# This is a sample GitLab CI/CD configuration file that should run without any modifications.
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts,
# it uses echo commands to simulate the pipeline execution.
#
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
# Stages run in sequential order, but jobs within stages run in parallel.
#
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages

stages:          # List of stages for jobs, and their order of execution
  - build
  - test
  - deploy

build-job:       # This job runs in the build stage, which runs first.
  stage: build
  script:
    - echo "Compiling the code..."
    - echo "Compile complete."

unit-test-job:   # This job runs in the test stage.
  stage: test    # It only starts when the job in the build stage completes successfully.
  script:
    - echo "Running unit tests... This will take about 60 seconds."
    - sleep 60
    - echo "Code coverage is 90%"

lint-test-job:   # This job also runs in the test stage.
  stage: test    # It can run at the same time as unit-test-job (in parallel).
  script:
    - echo "Linting code... This will take about 10 seconds."
    - sleep 10
    - echo "No lint issues found."

deploy-job:      # This job runs in the deploy stage.
  stage: deploy  # It only runs when *both* jobs in the test stage complete successfully.
  script:
    - echo "Deploying application..."
    - echo "Application successfully deployed."

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

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

相关文章

Ubuntu 磁盘扩容

1.下载工具 sudo apt-get install gparted 2.调整大小

IP风险画像 金融行业的安全盾牌

在当今数字化时代,金融行业面临着前所未有的安全挑战。随着在线交易和数字银行业务的迅猛发展,欺诈和网络攻击的威胁也在不断增加。金融机构需要高效、可靠的安全解决方案来保护客户的资产和个人信息,防止各种形式的欺诈行为。 IP风险画像是…

postman点code选http出现乱码?

最近在调OA接口新建流程,用postman调成功了,但是要换到数据库来的时候就不知道咋弄了,一开始还以为是出现了乱码,都不敢用http的code,但其实是参数被urlencoding了,所以写到Oracle数据库的时候,…

构建企业多层社会传播网络:以AI智能名片S2B2C商城小程序为例

摘要:在数字化转型的浪潮中,企业如何有效构建并优化其社会传播网络,已成为提升市场竞争力、深化用户关系及实现价值转化的关键。本文以AI智能名片S2B2C商城小程序为例,深入探讨如何通过一系列精细化的策略与技术创新,构…

[论文笔记]构建基于RAG聊天机器人的要素

引言 今天带来一篇构建RAG的论文笔记:FACTS About Building Retrieval Augmented Generation-based Chatbots。 基于生成式人工智能构建企业聊天机器人迅速成为行业中最受关注的应用之一,旨在提高员工生产力。 然而,构建成功的企业聊天机器…

深入解析Spring Cloud:构建分布式微服务架构的最佳实践

导语:随着互联网业务的快速发展,传统的单体应用已无法满足高并发、高可用、可扩展的需求。微服务架构以其轻量级、独立性、灵活性的特点,逐渐成为大型分布式系统的首选架构。Spring Cloud作为构建微服务架构的重要框架,为开发者提…

【边缘计算网关教程】6.松下 Mewtocol TCP 协议

前景回顾:【边缘计算网关教程】5.三菱FX3U编程口通讯-CSDN博客 松下 Mewtocol TCP 协议 适配PLC:松下FP0H 松下XHC60ET 1. 硬件连接 Mewtocol TCP协议采用网口通信的方式,因此,只需要保证网关的LAN口和松下PLC的IP在一个网段即…

MYSQL--第九次作业

MYSQL–第九次作业 1、安装redis,启动客户端、验证。 安装网址:Redis Released,找到适合自己电脑的redis版本后,下载并安装。 安装完后,打开cmd命令框: -- 启动客户端 C:\Windows\System32>redis-cl…

【linux】服务器ubuntu安装cuda11.0、cuDNN教程,简单易懂,包教包会

【linux】服务器ubuntu安装cuda11.0、cuDNN教程,简单易懂,包教包会 【创作不易,求点赞关注收藏】 文章目录 【linux】服务器ubuntu安装cuda11.0、cuDNN教程,简单易懂,包教包会一、版本情况介绍二、安装cuda1、到官网…

破解快消行业营销费用管理难题,引领财务费控数字化转型

众所周知,快消品行业消费群体较为广泛,涉及渠道复杂,产品周转期短、可替代性强,特别是面对竞争激烈的市场环境,大力投入营销、渠道费用对快消行业的企业来说十分普遍,而这其中,由于渠道多、业态…

【LoadRunner】博客笔记项目 性能测试报告

文章目录 前言一、博客笔记项目性能测试介绍二、编写性能测试脚本(VUG) 2.1 测试脚本编写步骤 2.2 脚本总代码和结果分析三、创建测试场景(Controller) 3.1 测试场景创建实现步骤四、生成测试报告(Anal…

Sql查询语句

SELECT * from student,class 在上一篇博客里我们已经介绍了Sql语句的增删改,以及创建了用来演示增删改的数据库和表,下面我们介绍SQL语句中最重要的查询语句。 增删改博客链接(Sql语句之增删改查(CRUD)-CSDN博客&…

Nacos最新0day漏洞复现

目录 一、漏洞原理 二、版本信息 三、资产测绘 四、poc信息 五、总结 一、漏洞原理 漏洞的核心在于 Nacos 的某些接口没有严格的权限控制,攻击者可以通过特制的请求向 Nacos 服务器发送恶意数据,从而执行任意代码。下载nacos代码搭建环境https://gi…

数字孪生Digital Twin 结合建筑信息模型 BIM 在AIoT 智慧城市建设中Web 可视化大屏实践...

智慧城市建设通过将城市中的建筑、基础设施等构建 BIM 模型,并与实时采集的数据相结合,创建数字孪生体。可以实现对城市能源消耗、交通流量、环境质量等的实时监测和预测,优化城市规划和资源分配。 01 数字孪生 Digital Twin 数字孪生 Digita…

Jira学习

1.Dev OPS DevOps简介 DEV OPS 流程 DEV OPS流程对应工具 最重要的就是持续集成–Jenkins 2.Jira 新建项目

自主升级,平稳过渡!麒麟信安保障长沙市智慧交通发展中心CentOS迁移无忧

长沙市智慧交通发展中心围绕综合交通运输协调体系的构建,实施交通运行的监测、预测和预警,面向公众提供交通信息服务,开展多种运输方式的调度协调,提供交通行政管理和应急处置的信息保障。 该中心目前数据日交换量超2亿条&#x…

社交电商的新篇章:AI智能名片O2O商城小程序与传统微商的区别与融合

摘要 在数字经济蓬勃发展的今天,互联网技术的革新正以前所未有的速度重塑着商业格局。传统微商模式,尽管在初期借助社交媒体迅速崛起,但因其固有的局限性,如产品质量不一、营销手段单一、信任机制脆弱等,逐渐暴露出诸…

Qt程序图标更改以及程序打包

Qt程序图标更改以及程序打包 1 windows1.1 cmake1.1.1 修改.exe程序图标1.1.2 修改显示页面左上角图标 1.2 qmake1.2.1 修改.exe程序图标1.2.2 修改显示页面左上角图标 2 程序打包2.1 MinGW2.2 Visual Studio 3 参考链接 1 windows 1.1 cmake 1.1.1 修改.exe程序图标 获得一个…

【Git分支管理】分支2种合并模式

目录 0.回顾 1.ff模式 2.no-ff模式 3.ff模式转no-ff模式 先提交再合并再提交 0.回顾 前面介绍了两种情况总结如下: master没有修改提交,在dev中修改提交,master和dev合并顺利master修改提交的同时dev也修改提交了,产生合并…

【数据结构】高效解决连通性问题的并查集详解及Python实现

文章目录 1. 并查集:一种高效的数据结构2. 并查集的基本操作与优化2.1 初始化2.2 查找操作与路径压缩2.3 合并操作与按秩合并 3. 并查集的应用3.1 判断连通性3.2 计算连通分量 4. 并查集的实际案例4.1 图的连通性问题4.2 网络连接问题 5. 并查集的优缺点5.1 优点5.2…