# 输入参数
前面章节我们讲了Pipeline的基本使用方法,使用书写脚本的方式可以满足大多数CI/CD的应用场景。 但是,在某些时候,我们执行的脚本需要依赖一些用户实时的输入来完成流水线的操作,这个时候我们就需要用到pipeline的输入参数parameters功能。 parameters是stage下的一个属性值,它的使用方式如下:
parameters:{
参数名称:{
type:'参数类型',message:'弹出对话框的类型描述'
}
},
示例脚本:接收控制台对话框参数数据值
var pipeline = {
stages:{
complie:{
parameters:{
project:{
type:'string',message:'请输入项目名称'
}
},
node:"uat.example.com",
workspace:"/opt/",
steps: {
printer() {
ret = $.parameter('project');
$.print(ret);
}
}
}
}
}
# 人工确认
通常在阶段之间,特别是在不同环境之间,您可能需要人工确认是否可以继续运行。例如:判断应用程序是否在一个足够好的状态可以进入到生产环境阶段。 这同样可以使用 parameters 进行完成。 下面示例中,"check" 阶段会等待人工确认,并且在没有人工确认的情况下不会继续进行。
var pipeline={
stages:{
deploy:{
parameters:{
confirm:{
type:'bool',message:'是否发布生产环境'
}
},
steps: {
check(){
ret = $.parameter('confirm');
if(!ret){
$.abort("结束发布");
}
},
printer() {
$.print('deploy');
}
}
}
}
}