--- - project: name: builder-jobs jobs: - '{project-name}-ci-jobs' - '{project-name}-verify-tox-{stream}' - 'builder-check-poms' - 'builder-verify-packer' - 'builder-merge-packer-{platforms}-{templates}' # OpenStack Related - 'builder-cleanup-old-images' - 'builder-delete-stale-stacks' # Automation for docs and jobs - 'builder-update-csit-tests' - 'builder-update-image-list' platforms: - centos - ubuntu-14.04 - ubuntu-16.04 templates: - devstack - devstack-pre-pip-newton - docker - gbp - java-builder - mininet - mininet-ovs-2.5 - robot exclude: - platforms: centos templates: gbp - platforms: centos templates: mininet - platforms: centos templates: mininet-ovs-2.5 - platforms: ubuntu-14.04 templates: java-builder - platforms: ubuntu-14.04 templates: robot - platforms: ubuntu-14.04 templates: devstack-pre-pip-newton - platforms: ubuntu-14.04 templates: devstack - platforms: ubuntu-14.04 templates: docker - platforms: ubuntu-14.04 templates: mininet-ovs-2.5 - platforms: ubuntu-16.04 templates: java-builder - platforms: ubuntu-16.04 templates: robot - platforms: ubuntu-16.04 templates: devstack-pre-pip-newton - platforms: ubuntu-16.04 templates: devstack - platforms: ubuntu-16.04 templates: docker - platforms: ubuntu-16.04 templates: mininet - platforms: ubuntu-16.04 templates: gbp project-type: freestyle archive-artifacts: '**/*.log' build-timeout: '60' # The following values are only specified here # so that code blocks look similar to other projects. project: 'releng/builder' project-name: builder stream: master branch: master build-node: centos7-java-builder-2c-4g - job-template: name: builder-check-poms node: centos7-java-builder-2c-4g project-type: freestyle properties: - opendaylight-infra-properties: build-days-to-keep: 14 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' triggers: - timed: 'H H * * 1' builders: - shell: !include-raw-escape: include-raw-check-poms.sh publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[releng]' - opendaylight-infra-shiplogs: maven-version: 'mvn33' - job-template: name: 'builder-delete-stale-stacks' project-type: freestyle node: centos7-java-builder-2c-4g properties: - opendaylight-infra-properties: build-days-to-keep: 7 wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' triggers: # Attempt to clear up stacks every 30 mins in case we have orphaned stacks - timed: '0,30 * * * *' builders: - shell: !include-raw-escape: opendaylight-infra-cleanup-stale-stacks.sh publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[releng]' - opendaylight-infra-shiplogs: maven-version: 'mvn33' - job-template: name: 'builder-cleanup-old-images' project-type: freestyle node: centos7-java-builder-2c-4g properties: - opendaylight-infra-properties: build-days-to-keep: 7 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' scm: - git-scm: branch: '{branch}' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' # Listed after to override openstack-infra-wrappers clouds.yaml definition - config-file-provider: files: - file-id: opendaylight-private-clouds-yaml target: '$HOME/.config/openstack/clouds.yaml' triggers: # Cleanup images on a weekly schedule - timed: '@weekly' builders: - shell: !include-raw-escape: opendaylight-infra-cleanup-old-images.sh publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[releng]' - opendaylight-infra-shiplogs: maven-version: 'mvn33' - job-template: name: 'builder-update-image-list' project-type: freestyle node: centos7-java-builder-2c-4g properties: - opendaylight-infra-properties: build-days-to-keep: 7 parameters: - opendaylight-infra-parameters: os-cloud: odlpriv project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' scm: - git-scm: branch: '{branch}' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' # Listed after to override openstack-infra-wrappers clouds.yaml definition - config-file-provider: files: - file-id: opendaylight-private-clouds-yaml target: '$HOME/.config/openstack/clouds.yaml' triggers: # Update image list every Monday to Friday at 11:00 UTC - timed: '0 11 * * 1-5' builders: - shell: !include-raw-escape: opendaylight-infra-update-image-list.sh - opendaylight-infra-push-gerrit-patch: project: '{project}' gerrit-topic: 'releng-update-cloud-image-list' gerrit-commit-message: 'Update cloud image list docs' publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[releng]' - opendaylight-infra-shiplogs: maven-version: 'mvn33' - job-template: name: 'builder-verify-packer' project-type: freestyle node: centos7-java-builder-2c-4g concurrent: true properties: - opendaylight-infra-properties: build-days-to-keep: 14 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' scm: - gerrit-trigger-scm: refspec: '$GERRIT_REFSPEC' choosing-strategy: 'gerrit' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' triggers: - gerrit-trigger-patch-submitted: server: '{server-name}' project: '{project}' branch: '{branch}' files: 'packer/**' builders: - packer-validate: publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[{project}]' - opendaylight-infra-shiplogs: maven-version: 'mvn33' - job-template: name: 'builder-merge-packer-{platforms}-{templates}' project-type: freestyle node: centos7-java-builder-2c-4g properties: - opendaylight-infra-properties: build-days-to-keep: 14 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' scm: - gerrit-trigger-scm: refspec: '$GERRIT_REFSPEC' branches: - '$GERRIT_BRANCH' choosing-strategy: 'default' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' triggers: - timed: '00 10 1 * *' - gerrit: server-name: '{server-name}' trigger-on: - change-merged-event - comment-added-contains-event: comment-contains-value: 'remerge' projects: - project-compare-type: 'ANT' project-pattern: 'releng/builder' branches: - branch-compare-type: 'ANT' branch-pattern: '**/{branch}' file-paths: - compare-type: ANT pattern: 'packer/vars/{platforms}.json' - compare-type: ANT pattern: 'packer/templates/{templates}.json' - compare-type: ANT pattern: 'packer/provision/{templates}.sh' - compare-type: ANT pattern: 'packer/provision/system_reseal.sh' - compare-type: ANT pattern: 'packer/provision/rh-user_data.sh' - compare-type: ANT pattern: 'packer/provision/devstack-pre-pip.sh' - compare-type: ANT pattern: 'packer/provision/baseline.sh' builders: - packer-validate: - packer-build: platform: '{platforms}' template: '{templates}' publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[{project}]' - opendaylight-infra-shiplogs: maven-version: 'mvn33' - job-template: name: 'builder-update-csit-tests' node: centos7-java-builder-2c-8g # builder-update-csit-tests job # # This job's purpose is to update csit # tests to run in integration-distribution-test-{stream} # by updating releng-defaults variables: csit-list-carbon, # csit-list-boron, csit-list-beryllium project-type: freestyle properties: - opendaylight-infra-properties: build-days-to-keep: 14 parameters: - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' scm: - gerrit-trigger-scm: refspec: '' choosing-strategy: 'default' wrappers: - opendaylight-infra-wrappers: build-timeout: '{build-timeout}' triggers: - reverse: jobs: 'builder-jjb-merge' builders: - shell: | git checkout -b auto-update-csit-jobs - integration-list-jobs: blacklist: '{csit-list-blacklist}' search_string: "csit" stream: "nitrogen" jobs-filename: "csit_jobs_nitrogen.lst" - integration-list-jobs: blacklist: '{csit-list-blacklist}' search_string: "csit" stream: "carbon" jobs-filename: "csit_jobs_carbon.lst" - integration-list-jobs: blacklist: '{csit-list-blacklist}' search_string: "csit" stream: "boron" jobs-filename: "csit_jobs_boron.lst" - integration-list-jobs: blacklist: '{csit-list-blacklist}' search_string: "csit" stream: "beryllium" jobs-filename: "csit_jobs_beryllium.lst" - integration-replace-block-text: starting-regex: "'csit-list-nitrogen: >'" ending-regex: "'csit-list-carbon: >'" file-with-changes-to-insert: "'csit_jobs_nitrogen.lst'" file-to-change: "'jjb/releng-defaults.yaml'" - integration-replace-block-text: starting-regex: "'csit-list-carbon: >'" ending-regex: "'csit-list-boron: >'" file-with-changes-to-insert: "'csit_jobs_carbon.lst'" file-to-change: "'jjb/releng-defaults.yaml'" - integration-replace-block-text: starting-regex: "'csit-list-boron: >'" ending-regex: "'csit-list-beryllium: >'" file-with-changes-to-insert: "'csit_jobs_boron.lst'" file-to-change: "'jjb/releng-defaults.yaml'" - integration-replace-block-text: starting-regex: "'csit-list-beryllium: >'" ending-regex: "'# CSIT TESTS END SED MARKER'" file-with-changes-to-insert: "'csit_jobs_beryllium.lst'" file-to-change: "'jjb/releng-defaults.yaml'" - shell: | git status git add jjb/releng-defaults.yaml - opendaylight-infra-push-gerrit-patch: project: "releng/builder" gerrit-topic: "auto-update-csit-jobs" gerrit-commit-message: "Auto Update CSIT Jobs to run" publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[releng]' - opendaylight-infra-shiplogs: maven-version: 'mvn33'