Jenkins - Pipeline(亚马逊EC2容器服务插件)

时间:2017-06-05 12:18:19

标签: docker jenkins jenkins-pipeline amazon-ecs

我刚刚开始使用Jenkins和Pipeline,并且我将它与Jenkins Amazon EC2容器服务插件一起使用。

到目前为止一切正常,我宣布代理我需要将它用于我的构建,它启动docker镜像进行构建并在任务完成后完成它。

但是,我认为我可以同时运行多个任务(对于每个任务,它将运行一个新的docker服务),但看起来只有一个slave才可用。

例如,如果我的奴隶当前正在做某事,下一个任务将等待以下消息:"等待Jenkins-Slave-12cbf90f1ed9上的下一个可用执行程序"

我按照这样设置我的管道:

#!groovy
pipeline {
agent { label 'maven'}
stages {
    stage('Build') {
        steps {
            sh 'mvn clean install'
        }
    }
}

有没有我没有正确设置的东西,或者它是如何工作的?

1 个答案:

答案 0 :(得分:0)

这应该可以工作(编辑cluster / image / taskRoleArn以匹配您的自由式作业):

pipeline {
  agent none
  stages {
    stage('Test') {
      steps {
        ecsNode([cluster: 'DEV',
            image: 'dwi',
            memory: '1.0',
            taskRoleArn: 'arn:aws:iam::123456789:role/JENKINS_ROLE']) {
          sh 'echo hello world'
        }
      }
    }
  }
}