1. 持续集成
  2. 词汇表
持续集成 / 文本编辑器 / 图形化编辑器

图形化编辑器

功能介绍

通过命令行文编编辑 Jenkinfile(构建过程描述文件)是最基础人机交互模式,CODING 在基于文本编辑的核心功能上设计了图形化编辑视图,能够兼容命令行编辑中的大部分自定义操作。创新性实现了构建过程边写边看、能够为用户带来所见即所得的直观构建过程编辑体验。

在「构建计划设置」→「流程配置」中选择图形化编辑器进行使用。

构建流程中的概念

不论图形化或文本类型,编辑器本质上都是用来方便用户查看与编辑构建流程的核心——Jenkinsfile(过程描述文件),因此在讨论编辑器之前需理解「过程描述文件」的几个重要概念。

本篇文档主要聚焦于声明式文件的语法规则。

流水线

流水线是可自定义的工作模型,它定义了交付软件的完整流程,一般包含构建、测试和部署等阶段。

执行环境

执行环境描述了整个流水线执行过程或者某个阶段的执行环境,必须出现在描述文件顶级或者每一个阶段里。

是否必须
参数列表 见下文
允许的位置 必须出现在描述文件顶级或者每一个阶段

阶段

一个阶段定义了一系列紧密相关的步骤。每个阶段在整条流水线中各自承担了独立、明确的责任。比如“构建阶段”、“测试阶段”或“部署阶段”。通常来讲,所有的实际构建过程都放置在阶段里面。

是否必须 至少一个
参数列表 一个强制的字符串类型参数,用以指明阶段名称
允许的位置 阶段(stage)区块内部

阶段列表

阶段列表包含了一系列的阶段,一个阶段列表最少包含一个阶段流水线里必须要有且仅有一个阶段列表

是否必须
参数列表
允许的位置 流水线(pipeline)内只能出现一次

步骤列表

步骤列表描述了一个阶段内具体要做什么事,具体要执行什么命令。比如有一个步骤(step)需要系统打印一条“构建中…”的消息,即执行命令echo '构建中...'

是否必须
参数列表
允许的位置 在每一个 阶段(stage)块内

并行

并行用来声明一些并行执行的阶段,通常适用于阶段阶段之间不存在依赖关系的情况下,用来加快执行速度。注意任何含并行区块下的阶段不能再设置执行环境

示例文件

pipeline {
  agent any
  stages {
    stage('检出') {
      steps {
        sh 'ci-init'
        checkout([$class: 'GitSCM', branches: [[name: env.GIT_BUILD_REF]], 
                                    userRemoteConfigs: [[url: env.GIT_REPO_URL]]])
      }
    }
    stage('构建') {
      steps {
        echo '构建中...'
        sh 'make'
        echo '构建完成.'
      }
    }
    stage('测试') {
      steps {
        echo '单元测试中...'
        sh 'make check'
        junit 'reports/**/*.xml' 
        echo '单元测试完成.'
      }
    }
    stage('部署') {
      steps {
        echo '部署中...'
        sh 'make publish'
        echo '部署完成'
      }
    }
  }
}

编辑器间转换

图形化编辑器本质上是预设好的代码文本,所以能够无缝转变为文本编辑器。反之则不行,因为文本编辑器上增删的代码文本必须经过“规则校验”的判定程序,通过后才能转换为可编辑视图。

就自定义操作范围而言,文本编辑器所支持的范围比图形化编辑器更大。因图形化编辑器预设了大量常用的步骤,因此适用模式、标准化的工作;而文本编辑器没有限制,仅需满足 Jenkins 语法要求即可,适用于执行具体而特定的任务。

上一篇流程配置详情
最近更新
感谢反馈有用
感谢反馈没用

在阅读中是否遇到以下问题?

您希望我们如何改进?