从管道运行Jenkins工作
管道中的管道可以将控制转移到Jenkins作业,然后在Jenkins作业完成后返回执行。
总之,事件的顺序如下:
- 在管道中,管道执行詹金斯一步调用Jenkins作业Jenkins服务器集成
- 类中的函数,它将控制权返回给管线,并可选地更新管线资源2022世界杯阿根廷预选赛赛程Jenkins Artifactory插件
- 在管道中,管道使用任何更新的资源恢复执行2022世界杯阿根廷预选赛赛程
Jenkins服务器集成
要使pipeline能够从Jenkins传递控制并返回给Jenkins,管理员用户必须首先添加一个Jenkins服务器集成Jenkins服务器集成指定Jenkins URL,以及有效Jenkins用户的用户名/令牌凭证。此外,Jenkins Server Integration必须生成一个承载令牌通过Jenkins Artifactory Plugin验证从Jenkins发送到pipeline的消息。
Jenkins Artifactory插件必须配置回调URL,生成的承载令牌必须添加到插件的凭据中。看到Jenkins服务器集成获取详细信息。
管道DSL
如果Jenkins作业将更新管线资源,则必须在管线DSL中声明这些资源。2022世界杯阿根廷预选赛赛程例如,PropertyBag资源可以用来表明Jenkins的工作结果:
2022世界杯阿根廷预选赛赛程resources:—name: app_test_results type: PropertyBag配置:passed: 0 failed: 0
要从管道中启动Jenkins作业的执行,请使用詹金斯本机的一步。您必须指定Jenkins服务器集成集成
块。如果Jenkins作业更新管线资源,则必须在2022世界杯阿根廷预选赛赛程output2022世界杯阿根廷预选赛赛程Resources
块。
—name: test_app type: Jenkins configuration: jenkinsJobName: basic-api inputR2022世界杯阿根廷预选赛赛程esources:—name: app_docker buildParameters: imageName: ${res_app_docker_imageName} imageTag: ${res_app_docker_imageTag} integrations:—name: myJenkins outputResources:—name: app_test_results
当加载到管线中时,管道图显示了Jenkins步骤,其中Docker映像作为输入资源,而由Jenkins作业更新的PropertyBag作为输出资源。
向Jenkins发送构建参数
方法将参数传递给Jenkins作业buildParameters
财产。这些值可以是固定的,也可以使用管道环境变量发送动态值。
在这个例子中,我们指定了一个图片资源的“app_docker”input2022世界杯阿根廷预选赛赛程Resources
我们的詹金斯台阶。我们的buildParameters
属性引用资源的环境变量。
buildParameters: imageName: ${res_app_docker_imageName} imageTag: ${res_app_docker_imageTag}环境:"test"
运行状态环境变量不能提供给buildParameters。
詹金斯建造工作
詹金斯的工作必须做好迎接新到来的准备buildParameters
从管道。当我们的Jenkins作业执行时,我们的示例构建参数会从pipeline接收到,并可供使用。
步骤{echo "environment: ${params。${params. imagename}:${params. imagename}:${params. imagename}" echo "对映像运行测试。imageTag} "}
在Jenkins构建任务结束时,调用插件的函数jfPipelines ()
发出完成信号,并将控制权交还给管线。
jfPipelines ()
您的构建作业可以通过更新管线资源的属性将信息传递回管线。2022世界杯阿根廷预选赛赛程为此,使用调用中的新属性值按名称声明每个资源jfPipelines ()
.
例如,下面的调用引用管道PropertyBag我们所调用的资源app_test_results
并为其两个属性提供新值:
jfPipelines(outputR2022世界杯阿根廷预选赛赛程esources: """ "[{"name": "app_test_results", "content": {"passing": 1234, "failing": 0}}]""" ")
如上所述,这些管线资源必须声明为2022世界杯阿根廷预选赛赛程output2022世界杯阿根廷预选赛赛程Resources
调用Jenkins步骤。
从Jenkins job触发管道(已弃用)
本节中描述的方法在1.6.0版中已弃用。它仅可用于先前版本的管线。
从管道触发Jenkins作业(已弃用)
本节中描述的方法在1.6.0版中已弃用。它仅可用于先前版本的管线。