X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fintegration%2Fdistribution%2Fdistribution-jobs.yaml;h=ce35b2fa0ca3fac0d99debf0db17b0653e8ee4a1;hb=f4b9f7257925bb9a3da2a9fedda0dfe4fbc5b2db;hp=8d91a4c0620f79360928681eca5cd46469822375;hpb=8bbacda763025ffb0110b3e82281f22f7b9c9089;p=releng%2Fbuilder.git diff --git a/jjb/integration/distribution/distribution-jobs.yaml b/jjb/integration/distribution/distribution-jobs.yaml index 8d91a4c06..ce35b2fa0 100644 --- a/jjb/integration/distribution/distribution-jobs.yaml +++ b/jjb/integration/distribution/distribution-jobs.yaml @@ -1,6 +1,51 @@ --- - project: - name: distribution-jobs + name: distribution + jobs: + # gerrit- is generic template, distribution- is project specific. + - 'distribution-merge-{stream}' + - 'distribution-verify-{stream}' + - 'distribution-check-{stream}' + - 'distribution-sanity-{stream}' + - 'distribution-managed-{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 -XX:MaxPermSize=256m' + dependencies: '' + email-upstream: '[int/dist]' + + stream: + - fluorine: + branch: 'master' + karaf-version: odl + # Self-Managed projects repos and features: + sm-repos: mvn:org.opendaylight.sxp/features-sxp//xml/features + sm-features: odl-sxp-routing + - oxygen: + branch: 'stable/oxygen' + karaf-version: karaf4 + +- 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 -XX:MaxPermSize=256m' - job-template: name: 'distribution-verify-{stream}' @@ -8,7 +53,7 @@ project-type: freestyle node: centos7-builder-8c-8g concurrent: true - jdk: '{jre}' + jdk: '{java-version}' properties: - opendaylight-infra-properties: @@ -21,12 +66,10 @@ branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - - integration-patch-refspec: - branch: '$GERRIT_REFSPEC' scm: - gerrit-trigger-scm: - refspec: '$PATCHREFSPEC' + refspec: '$GERRIT_REFSPEC' choosing-strategy: 'gerrit' wrappers: @@ -46,12 +89,13 @@ global-settings-file: 'global-settings' settings-file: 'integration-settings' - maven-target: - maven-version: mvn33 + 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: @@ -67,7 +111,7 @@ - lf-infra-publish - email-notification: email-recipients: '{email-recipients}' - email-prefix: '[int/dist]' + email-prefix: '[{project-name}]' - job-template: name: 'distribution-merge-{stream}' @@ -79,7 +123,7 @@ project-type: maven node: 'centos7-builder-8c-8g' - jdk: '{jre}' + jdk: '{java-version}' properties: - opendaylight-infra-properties: @@ -107,7 +151,7 @@ triggers: - gerrit-trigger-patch-merged: gerrit-server-name: '{gerrit-server-name}' - name: 'integration/distribution' + name: '{project}' branch: '{branch}' prebuilders: @@ -121,52 +165,21 @@ path: '$KARAF_ARTIFACT/src/main/assembly' maven: - maven-name: 'mvn33' + 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: integration-settings settings-type: cfp - global-settings: 'global-settings' + global-settings: global-settings global-settings-type: cfp postbuilders: - - conditional-step: - condition-kind: file-exists - condition-filename: deploy-site.xml - condition-basedir: workspace - - # The strategy here is intentional to run Maven site:deploy twice - # once using regular pom.xml to produce a staged-site which is - # then used by deploy-site.xml to push to Nexus. This is a - # workaround to Maven Site's default linking code which creates - # incorrect URLs for sites due to auto-detection assuming your - # project is configured in a certain way which ODL is not. - steps: - - maven-target: - maven-version: 'mvn33' - pom: pom.xml - goals: 'site:deploy -V -B -Dstream={stream}' - java-opts: - - '-Xmx2g' - settings: 'integration-settings' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - - maven-target: - maven-version: 'mvn33' - pom: deploy-site.xml - goals: 'site:deploy -V -B -Dstream={stream}' - java-opts: - - '-Xmx2g' - settings: 'integration-settings' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - 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 @@ -184,10 +197,21 @@ - lf-infra-publish - email-notification: email-recipients: '{email-recipients}' - email-prefix: '[int/dist]' + 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 @@ -207,10 +231,12 @@ 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: mvn33 + maven-version: mvn35 scm: - integration-gerrit-scm: @@ -236,9 +262,12 @@ builders: - distribution-check-wipe + - inject: + properties-file: 'allowed_projects.txt' - 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' @@ -247,6 +276,7 @@ - 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 @@ -263,10 +293,10 @@ - lf-infra-publish - job-template: - name: 'distribution-deploy-{stream}' + name: 'distribution-sanity-{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. + # Operation: This job deploys odl-integration-all + list of UM features. + # This job works for both managed & self-managed distro. project-type: freestyle node: centos7-builder-4c-4g @@ -283,10 +313,16 @@ 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-repo-url: + repo-url: '{sm-repos}' + - integration-controller-features: + controller-features: '{sm-features}' - integration-jdk-version: jdkversion: '{jre}' - distribution-karaf-version: @@ -296,23 +332,22 @@ - 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 + - integration-detect-variables + - distribution-check-bootup publishers: - email-notification: email-recipients: '{email-recipients}' - email-prefix: '[int/dist]' + 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. + name: 'distribution-managed-{stream}' + # Goal: Verify distribution starts with no issues when all features are loaded. + # Operation: This job deploys odl-integration-all. + # This job works for just managed distro. project-type: freestyle node: centos7-builder-4c-4g @@ -329,6 +364,8 @@ branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - integration-distribution-stream: + stream: '{stream}' - integration-distribution-branch: branch: '{branch}' - integration-bundle-url: @@ -336,20 +373,25 @@ - integration-jdk-version: jdkversion: '{jre}' - distribution-karaf-version: - karaf-version: '{karaf-version}' + karaf-version: 'karaf4' 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 + - integration-detect-variables + - distribution-check-bootup publishers: - email-notification: email-recipients: '{email-recipients}' - email-prefix: '[int/dist]' + email-prefix: '[{project-name}]' - integration-csit-archive-build - lf-infra-publish + +- view: + name: distribution + description: 'List of distribution jobs' + regex: '^(integration-)?distribution-.*' + <<: *releng_view_common