流水线编排
手册分类
- 1. 禅道DevOps解决方案介绍
- 1.1 关于禅道DevOps解决方案
- 2. 安装与升级
- 2.1 快速安装
- 3. 服务
- 3.1 管理服务
- 4. 代码库
- 5. 流水线
- 6. 制品库
- 6.1 管理制品库
- 7. 部署
- 8. DevOps设置
- 9. 命令行工具
- 9.1 安装及升级
- 9.2 status子命令说明
表达式 分享链接
作者:赵红梅
最后编辑:赵红梅 于 2024-10-29 14:42:34
浏览量:292
本篇目录
在流水线中,为了获取定义的变量或秘钥中的值,需要用到变量取值表达式: ${{ variable.name }}
此外,表达式还可以用来引用秘钥,这使得敏感信息的管理更加安全和灵活。例如,在流水线中使用${{ secrets.get("secret_name") }}
的语法来引用存储在项目中的秘钥。
获取变量
流水线中,通过 ${{ variable.name }}
方式来获取变量。
以下示例,流水线在test步骤完成后,通过喧喧发送一个包含 构建ID的消息。
kind: pipeline
spec:
stages:
- type: ci
spec:
steps:
- name: test
type: run
spec:
container: maven:3-jdk-10
script: |-
mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
- name: 消息通知
type: plugin
spec:
inputs:
debug: true
custom: true
token: ${{ secrets.get("xuan_token") }}
caller: zenci
api: https://gw.easycorp.cn
title: Java演示代码 编译完成
content: "构建ID:{{ build.number }}"
groups:
"0": 31a0008b-6e3e-4b7f-9b7b-396a46b1f8f4
name: gitfox-xuanim-plugin
下面的示例,会列出在指定的提交范围内发生变化的所有文件。这些变化是基于 before 和 after 提交之间的差异:
kind: pipeline
spec:
stages:
- type: ci
spec:
steps:
- name: print files changed
type: run
spec:
container: alpine/git
script: |-
git diff --name-only ${{ build.before }}..${{ build.after }} > files_changed.txt
for FILE in $(cat files_changed.txt); do
echo $FILE was changed
done