执行并行Jenkins步骤,并独立于第二步执行状态进入下一阶段
我试图从遗留的上下游作业执行Jenkins管道构建执行并行Jenkins步骤,并独立于第二步执行状态进入下一阶段,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,我试图从遗留的上下游作业执行Jenkins管道构建 node () { stage('Checkout') { <Code for checkout> } stage ('Support') { <Restore dependencies> <Restore build environment> } stages{ parallel{ stage ('Build
node () {
stage('Checkout') {
<Code for checkout>
}
stage ('Support') {
<Restore dependencies>
<Restore build environment>
}
stages{
parallel{
stage ('Build and Archive'){
stages{
stage ('BuildSolution') {
<Build Solution>
}
stage ('Signing') {
<Sign deliverables>
}
stage ('InstallerCreation') {
<Create deployment package>
}
stage ('CreateNgPkg') {
<Create SDK package>
}
}
}
stage ('SecurityScan'){
<Execute scan on the complete source code>
}
}
}
}
}
节点(){
阶段(“签出”){
<签出代码>
}
阶段(“支持”){
}
舞台{
平行的{
阶段(“构建和归档”){
舞台{
阶段('构建解决方案'){
}
阶段(‘签字’){
}
阶段('InstallerCreation'){
}
阶段('CreateNgPkg'){
}
}
}
阶段('SecurityScan'){
}
}
}
}
}
我想并行运行stage('Build')和stage('Scan'),执行stage('Build')后,应该启动stage('CreateNgPkg'),而不检查或等待stage('Scan')
更新:
我尝试使用上面的嵌套阶段来实现我所需要的,但执行时出现错误“在步骤中找不到这样的DSL方法‘阶段’”-没有语法错误,只是在运行时出现此错误。您要做的是执行一组stage Build,然后与stage Scan并行创建ngpkg 它转换为以下Jenkins DSL:
node () {
stage ('Checkout')
{
echo 'Checkout'
}
stage ('Support')
{
echo 'Support'
}
parallel Build: {
stage ('Build')
{
echo 'build'
}
stage ('CreateNgPkg')
{
echo 'CreateNgPkg'
}
}, secondStage: {
stage ('Scan')
{
echo 'scan'
}
}
}
我个人更喜欢声明性dsl,它的文档化程度更好,可以省略
您要做的是执行一组stage Build,然后与stage Scan并行创建ngpkg 它转换为以下Jenkins DSL:
node () {
stage ('Checkout')
{
echo 'Checkout'
}
stage ('Support')
{
echo 'Support'
}
parallel Build: {
stage ('Build')
{
echo 'build'
}
stage ('CreateNgPkg')
{
echo 'CreateNgPkg'
}
}, secondStage: {
stage ('Scan')
{
echo 'scan'
}
}
}
我个人更喜欢声明性dsl,它的文档化程度更好,可以省略
为什么不将其添加为另一个并行作业?或者你的意思是阶段(“构建”)必须完成,而不仅仅是执行?为什么不将其添加为另一个并行作业?或者你的意思是阶段(“构建”)必须完成,而不仅仅是执行?我尝试了前面提到的嵌套步骤,但没有成功。谢谢你的回复。我尝试使用你的语法,效果如预期。我尝试了前面提到的嵌套步骤,但没有成功。谢谢你的回复。我试着使用你的语法,结果一切正常。