1

ジョブ テンプレートを使用して 1 つ以上のダウンストリーム ジョブをトリガーしようとしています。私の定義の要約:

- job-template:
    name: something-{app}-build
    project-type: freestyle
    defaults: global
    block-downstream: true
    scm:
      - git:
          url: url
          branches:
            - 'master'
          excluded-users:
            - Jenkins
    builders:
      !include: templates/build-and-publish.yml
    publishers:
      - postbuildscript:
          builders:
            !include: templates/docker-build-and-push-to-ecr.yml
          script-only-if-succeeded: True
          mark-unstable-if-failed: True
      - trigger-parameterized-builds:
        - project: 'deploy-dev-ecs-service'
          condition: SUCCESS
          predefined-parameters: |
                                  service={app}
                                  envparams={envparams}

- project:
    name: release-to-ecr
    type: app
    envparams: ''
    app:
      - app-1
      - app-2:
      - app-3:
          envparams: 'FOO=42'
    jobs:
      - 'something-{app}-build'

これでうまくいきましたが、アプリに基づいてさまざまなダウンストリーム ジョブをトリガーする必要があります。これは、複数のパラメーターを使用して deploy-dev-ecs サービスを複数回トリガーすることを意味します。例えば:

app:
    - app-1:
         - project: deploy-dev-ecs-service
           service: 'app-1'
           envparams: 'foo=bar'
    - app-2:
         - project: deploy-dev-ecs-service
           service: 'app-2.2'
           envparams: 'x=2'
         - project: deploy-dev-ecs-service               
           service: 'app-2.3'
           envparams: 'x=3'


基本的に、プロジェクト パラメーターに基づいてトリガーされるダウンストリーム ジョブを制御する必要があります。これを行う方法はありますか?

4

0 に答える 0