X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fintegration%2Fdistribution%2Fdistribution-jobs.yaml;h=a7164ad0bdf9839ca54d62bd864a319ce7ae32b5;hb=6632a5342479c09112b04e7fdd54f3c58d16c042;hp=78ba3a4b6d012c4f2dc123b42f0c296fa934b8db;hpb=b683716f99ebd05741431466d52447164236f562;p=releng%2Fbuilder.git diff --git a/jjb/integration/distribution/distribution-jobs.yaml b/jjb/integration/distribution/distribution-jobs.yaml index 78ba3a4b6..356241a77 100644 --- a/jjb/integration/distribution/distribution-jobs.yaml +++ b/jjb/integration/distribution/distribution-jobs.yaml @@ -1,337 +1,250 @@ --- -- job-template: - name: 'distribution-verify-{stream}' - - project-type: freestyle - node: centos7-builder-8c-8g - concurrent: true - jdk: '{java-version}' - - properties: - - opendaylight-infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - 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: - gerrit-server-name: '{gerrit-server-name}' - project: '{project}' - branch: '{branch}' - files: '**' - - builders: - - wipe-org-opendaylight-repo - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: 'integration-settings' - - maven-target: - maven-version: mvn35 - pom: pom.xml - goals: | - clean install dependency:tree -DoutputFile=dependency_tree.txt - -Dstream={stream} - -Dsft.heap.max=4g - -Pmanaged -Punmanaged - {opendaylight-infra-mvn-opts} - # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT. - java-opts: - - '-Xmx1024m -XX:MaxPermSize=256m' - settings: integration-settings - settings-type: cfp - global-settings: global-settings - global-settings-type: cfp - - publishers: - - findbugs - - lf-jacoco-report - - lf-infra-publish - - email-notification: - email-recipients: '{email-recipients}' - email-prefix: '[{project-name}]' - -- job-template: - name: 'distribution-merge-{stream}' - - # Need to keep jobs that deploy to Nexus at end of build as Maven - # projects. Maybe reconsider this once upstream moves deploy to a - # separate lifecycle: - # https://issues.apache.org/jira/browse/MNG-5666 - - project-type: maven - node: 'centos7-builder-8c-8g' - jdk: '{java-version}' - - properties: - - opendaylight-infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - opendaylight-infra-parameters: - os-cloud: '{os-cloud}' - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - distribution-karaf-version: - karaf-version: '{karaf-version}' - - scm: - - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - - wrappers: - - opendaylight-infra-wrappers: - build-timeout: '{build-timeout}' - - triggers: - - gerrit-trigger-patch-merged: - gerrit-server-name: '{gerrit-server-name}' - name: '{project}' - branch: '{branch}' - - prebuilders: - - wipe-org-opendaylight-repo - - jacoco-nojava-workaround - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: 'integration-settings' - - integration-set-variables - - distribute-build-url: - path: '$KARAF_ARTIFACT/src/main/assembly' - - maven: - maven-name: 'mvn35' - root-pom: 'pom.xml' - goals: > - clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B - -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r - -Dsft.heap.max=4g - -Djenkins -Dmerge -Dstream={stream} - -Pmanaged -Punmanaged - maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' - settings: integration-settings - settings-type: cfp - global-settings: global-settings - global-settings-type: cfp - - postbuilders: - - integration-compare-distributions - # TODO: the output of the above command is not *friendly* for the reader because the most important info - # is listed last. This is fine/best for command line output, but for keeping in a file it would be better - # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen. - - reporters: - - findbugs - - publishers: - - maven-deploy: - id: '' - unique-version: true - deploy-unstable: false - - lf-jacoco-report - - lf-infra-publish - - email-notification: - email-recipients: '{email-recipients}' - email-prefix: '[{project-name}]' - -- job-template: - name: 'distribution-check-{stream}' - - ###################### - # Default parameters # - ###################### - - mvn-version: mvn35 - - ##################### - # Job Configuration # - ##################### - - # Like a {project}-distribution-check, but few steps less as there is no upstream project involved. - disabled: false - - project-type: freestyle - node: 'centos7-builder-8c-8g' - concurrent: true - jdk: '{java-version}' - - properties: - - opendaylight-infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - opendaylight-infra-parameters: - os-cloud: '{os-cloud}' - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - integration-distribution-stream: - stream: '{stream}' - - distribution-karaf-version: - karaf-version: '{karaf-version}' - - maven-exec: - maven-version: mvn35 - - scm: - - integration-gerrit-scm: - basedir: 'distribution' - refspec: '$GERRIT_REFSPEC' - branch: '{branch}' - - wrappers: - - opendaylight-infra-wrappers: - # Distro-check jobs typically run within 10 - 30 minutes - # with 45 minutes being the occassional edge case. - # enforce a 60 minute limit to ensure stuck jobs get - # cleared up sooner. - # Double that as Karaf 3+4 may take longer. - build-timeout: '120' - - triggers: - - gerrit-trigger-patch-submitted: - gerrit-server-name: '{gerrit-server-name}' - project: '{project}' - branch: '{branch}' - files: '**' - - builders: - - distribution-check-wipe - - distribution-check-build-project: - pom: 'distribution/pom.xml' - mvn-opts: '{opendaylight-infra-mvn-opts}' - mvn-version: '{mvn-version}' - # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT. - - distribution-check-verify-groupid: - gerrit-project: 'integration' - - distribution-check-delete-snapshots - - distribution-check-configure-remotes - - distribution-check-repeat-project-build: - pom: 'distribution/pom.xml' - mvn-opts: '{opendaylight-infra-mvn-opts}' - mvn-version: '{mvn-version}' - # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT. - - integration-set-variables - - distribution-check-warn-9191 - - distribution-check-warn-9192 - - integration-upload-distribution: - dist-pom: distribution/pom.xml - - distribution-check-bootup - - publishers: - - email-notification: - email-recipients: '{email-recipients}' - email-prefix: '[{project-name}]' - - integration-csit-archive-build - - lf-infra-publish - -- job-template: - name: 'distribution-deploy-{stream}' - # Goal: Verify distribution starts with no issues when all features are loaded. - # Operation: This job deploys the controller installing odl-integration-all. - # FIXME: List required variables. - - project-type: freestyle - node: centos7-builder-4c-4g - concurrent: false - - properties: - - opendaylight-infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - opendaylight-infra-parameters: - os-cloud: '{os-cloud}' - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - integration-distribution-stream: - stream: '{stream}' - - integration-distribution-branch: - branch: '{branch}' - - integration-bundle-url: - bundle-url: '{bundle-url}' - - integration-jdk-version: - jdkversion: '{jre}' - - distribution-karaf-version: - karaf-version: '{karaf-version}' - - wrappers: - - opendaylight-infra-wrappers: - build-timeout: '{build-timeout}' - - # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}. - - builders: - - distribution-deploy-verify - - publishers: - - email-notification: - email-recipients: '{email-recipients}' - email-prefix: '[{project-name}]' - - integration-csit-archive-build - - lf-infra-publish - -- job-template: - name: 'distribution-offline-{stream}' - # Goal: Verify distribution can start with no internet connection. - # Operation: This job deploys the controller removing any external repository definition. - # FIXME: List required variables. - - project-type: freestyle - node: centos7-builder-4c-4g - concurrent: false - - properties: - - opendaylight-infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - opendaylight-infra-parameters: - os-cloud: '{os-cloud}' - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - integration-distribution-branch: - branch: '{branch}' - - integration-bundle-url: - bundle-url: '{bundle-url}' - - integration-jdk-version: - jdkversion: '{jre}' - - distribution-karaf-version: - karaf-version: '{karaf-version}' - - wrappers: - - opendaylight-infra-wrappers: - build-timeout: '{build-timeout}' - - # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}. - - builders: - - distribution-deploy-offline - - publishers: - - email-notification: - email-recipients: '{email-recipients}' - email-prefix: '[{project-name}]' - - integration-csit-archive-build - - lf-infra-publish +- project: + name: distribution + jobs: + # gerrit- is generic template, distribution- is project specific. + - 'distribution-sanity-{stream}' + - gerrit-maven-clm + - gerrit-maven-verify-dependencies + - gerrit-tox-verify + - '{project-name}-rtd-jobs': + project-pattern: integration/distribution + rtd-build-url: https://readthedocs.org/api/v2/webhook/opendaylight-distribution/34591/ + rtd-token: 6247e7a21158a20b207470b8bf7719c676ff8944 + + project: integration/distribution + project-name: distribution + mvn-settings: integration-distribution-settings + mvn-goals: 'clean install dependency:tree -DoutputFile=dependency_tree.txt' + mvn-opts: '-Xmx1024m' + nexus-iq-namespace: odl- + nexus-iq-stage: release + email-upstream: '[int/dist]' + stream: + - magnesium: + branch: 'master' + java-version: openjdk11 + karaf-version: odl + - sodium: + branch: 'stable/sodium' + karaf-version: odl + # Self-Managed projects repos and features: + sm-repos: > + mvn:org.opendaylight.transportpce/features-transportpce//xml/features + sm-features: > + odl-transportpce, + odl-transportpce-api, + odl-transportpce-ordmodels + - neon: + branch: 'stable/neon' + karaf-version: odl + # Self-Managed projects repos and features: + sm-repos: > + mvn:org.opendaylight.transportpce/features-transportpce//xml/features + sm-features: > + odl-transportpce, + odl-transportpce-api, + odl-transportpce-ordmodels + - fluorine: + branch: 'stable/fluorine' + karaf-version: odl + # Self-Managed projects repos and features: + sm-repos: > + mvn:org.opendaylight.transportpce/features-transportpce//xml/features + sm-features: > + odl-transportpce, + odl-transportpce-api, + odl-transportpce-ordmodels, + odl-transportpce-stubmodels + +- project: + name: distribution-managed + jobs: + # gerrit- is generic template, distribution- is project specific. + - 'distribution-merge-{type}-{stream}' + - 'distribution-verify-{type}-{stream}' + - 'distribution-check-{type}-{stream}' + - 'distribution-csit-managed-{stream}' + + project: integration/distribution + project-name: distribution + mvn-settings: integration-distribution-settings + mvn-goals: 'clean install dependency:tree -DoutputFile=dependency_tree.txt' + mvn-opts: '-Xmx1024m' + email-upstream: '[int/dist]' + type: managed + profile: '-Pmanaged' + forbidden-files: 'opendaylight/**' + karaf-version: karaf4 + dist-pom: 'distribution/pom.xml' + + stream: + - magnesium: + branch: 'master' + java-version: openjdk11 + dependencies: > + aaa-merge-{stream}, + bgpcep-merge-{stream}, + coe-merge-{stream}, + controller-merge-{stream}, + daexim-merge-{stream}, + genius-merge-{stream}, + infrautils-merge-{stream}, + lispflowmapping-merge-{stream}, + mdsal-merge-{stream}, + netconf-merge-{stream}, + netvirt-merge-{stream} + neutron-merge-{stream}, + openflowplugin-merge-{stream}, + ovsdb-merge-{stream}, + serviceutils-merge-{stream}, + - sodium: + branch: 'stable/sodium' + dependencies: > + aaa-merge-{stream}, + bgpcep-merge-{stream}, + coe-merge-{stream}, + controller-merge-{stream}, + daexim-merge-{stream}, + genius-merge-{stream}, + infrautils-merge-{stream}, + lispflowmapping-merge-{stream}, + mdsal-merge-{stream}, + netconf-merge-{stream}, + netvirt-merge-{stream} + neutron-merge-{stream}, + openflowplugin-merge-{stream}, + ovsdb-merge-{stream}, + serviceutils-merge-{stream}, + sfc-merge-{stream} + - neon: + branch: 'stable/neon' + dependencies: > + aaa-merge-{stream}, + bgpcep-merge-{stream}, + coe-merge-{stream}, + controller-merge-{stream}, + daexim-merge-{stream}, + genius-merge-{stream}, + infrautils-merge-{stream}, + lispflowmapping-merge-{stream}, + mdsal-merge-{stream}, + netconf-merge-{stream}, + netvirt-merge-{stream} + neutron-merge-{stream}, + openflowplugin-merge-{stream}, + ovsdb-merge-{stream}, + serviceutils-merge-{stream}, + sfc-merge-{stream} + - fluorine: + branch: 'stable/fluorine' + dependencies: > + aaa-merge-{stream}, + bgpcep-merge-{stream}, + coe-merge-{stream}, + controller-merge-{stream}, + daexim-merge-{stream}, + genius-merge-{stream}, + infrautils-merge-{stream}, + lispflowmapping-merge-{stream}, + mdsal-merge-{stream}, + netconf-merge-{stream}, + netvirt-merge-{stream} + neutron-merge-{stream}, + openflowplugin-merge-{stream}, + ovsdb-merge-{stream}, + serviceutils-merge-{stream}, + sfc-merge-{stream} + +- project: + name: distribution-full + jobs: + # gerrit- is generic template, distribution- is project specific. + - 'distribution-merge-{type}-{stream}' + - 'distribution-verify-{type}-{stream}' + - 'distribution-check-{type}-{stream}' + + project: integration/distribution + project-name: distribution + mvn-settings: integration-distribution-settings + mvn-goals: 'clean install dependency:tree -DoutputFile=dependency_tree.txt' + mvn-opts: '-Xmx1024m' + email-upstream: '[int/dist]' + type: full + profile: '-Punmanaged' + files: 'opendaylight/**' + karaf-version: odl + dist-pom: 'distribution/opendaylight/pom.xml' + + stream: + - magnesium: + branch: 'master' + java-version: openjdk11 + karaf-version: odl + dependencies: > + distribution-merge-managed-{stream}, + - sodium: + branch: 'stable/sodium' + karaf-version: odl + dependencies: > + distribution-merge-managed-{stream}, + transportpce-merge-{stream} + - neon: + branch: 'stable/neon' + karaf-version: odl + dependencies: > + distribution-merge-managed-{stream}, + transportpce-merge-{stream} + - fluorine: + branch: 'stable/fluorine' + karaf-version: odl + dependencies: > + distribution-merge-managed-{stream}, + transportpce-merge-{stream} + +- project: + name: distribution-release + jobs: + - gerrit-maven-stage: + sign-artifacts: true + - gerrit-release-merge + + project: 'integration/distribution' + project-name: 'distribution' + mvn-goals: 'clean deploy -f opendaylight/pom.xml' + mvn-settings: 'integration-distribution-settings' + mvn-opts: '-Xmx1024m' + email-upstream: '[int/dist]' + + # Used by the release job + staging-profile-id: 2af042ed81d5e2 + + stream: + - magnesium: + branch: 'master' + java-version: openjdk11 + - sodium: + branch: 'stable/sodium' + - neon: + branch: 'stable/neon' + - fluorine: + branch: 'stable/fluorine' + +- project: + name: distribution-sonar + jobs: + - gerrit-maven-sonar + + project: integration/distribution + project-name: distribution + branch: master + mvn-settings: integration-distribution-settings + mvn-goals: clean install dependency:tree -DoutputFile=dependency_tree.txt + mvn-opts: '-Xmx1024m' + +- project: + name: distribution-view + views: + - common-view + view-name: distribution + view-regex: '^(integration-)?distribution-.*'