X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=jjb%2Fintegration%2Fintegration-macros.yaml;h=bd34eae001aec17c92bcc4efc804c46f091ec954;hb=476a8ee1380ba4f1061ce676469a01da22bc50f0;hp=aed030ec35bc2a4bf2c775f224697ee77ea4717e;hpb=52db98a7612367d538316c760d9141f9160d0aea;p=releng%2Fbuilder.git diff --git a/jjb/integration/integration-macros.yaml b/jjb/integration/integration-macros.yaml index aed030ec3..bd34eae00 100644 --- a/jjb/integration/integration-macros.yaml +++ b/jjb/integration/integration-macros.yaml @@ -4,7 +4,7 @@ - string: name: BRANCH default: '{branch}' - description: 'GIT branch' + description: 'Distribution GIT branch' - parameter: name: integration-bundleurl @@ -36,7 +36,7 @@ - string: name: TESTPLAN default: '{test-plan}' - description: 'Test plan we will run' + description: 'Test plan we will run' - parameter: name: integration-test-options @@ -44,112 +44,77 @@ - string: name: TESTOPTIONS default: '{test-options}' - description: 'Robot command options' + description: 'Robot command options' - parameter: - name: integration-patch-git-url + name: integration-distribution-git-url parameters: - string: - name: PATCHGITURL - default: 'ssh://jenkins-$SILO@git.opendaylight.org:29418/$GERRIT_PROJECT' - description: 'Patch GIT URL (do not modify)' + name: DISTROGITURL + default: 'ssh://jenkins-$SILO@git.opendaylight.org:29418/integration/distribution' + description: 'Distribution GIT URL (do not modify)' + +- parameter: + name: integration-patch-refspec + parameters: + - string: + name: PATCHREFSPEC + default: '{branch}' + description: 'Integration Patch Refspec' + +# Macro: integration-gerrit-scm +# Operation: this macro downloads a project gerrit +# Used by: all csit jobs - scm: name: integration-gerrit-scm scm: - git: credentials-id: '{credentials-id}' - url: '$PATCHGITURL' - basedir: '$GERRIT_PROJECT' - refspec: '$GERRIT_REFSPEC' + url: '$GIT_BASE' + basedir: '{basedir}' + refspec: '{refspec}' branches: - 'origin/{branch}' skip-tag: true choosing-strategy: 'gerrit' +# Macro: integration-distribution-scm +# Operation: this macro downloads the integration/distribution repo using distribution as basedir +# Used by: integration-patch-test-{stream} job template + - scm: - name: integration-git-scm + name: integration-distribution-scm scm: - git: credentials-id: '{credentials-id}' - basedir: 'integration' - url: '$GIT_BASE' + basedir: 'distribution' + url: '$DISTROGITURL' refspec: '' branches: - 'origin/{branch}' skip-tag: true -- trigger: - name: integration-distribution-gerrit-trigger-patch-submitted - triggers: - - gerrit: - server-name: 'OpenDaylight' - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: 'recheck' - - comment-added-contains-event: - comment-contains-value: 'reverify' - projects: - - project-compare-type: 'ANT' - project-pattern: '{name}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: 'ANT' - pattern: 'pom.xml' - - compare-type: 'ANT' - pattern: 'distributions/**' - - compare-type: 'ANT' - pattern: 'features/**' - - compare-type: 'ANT' - pattern: 'feature-selector/**' +# Macro: integration-trigger-patch-submitted +# Operation: this macro sets a trigger for patch submitted on a path pattern +# Used by: {project}-verify-csit-* job templates - trigger: - name: integration-distribution-gerrit-trigger-patch-merged - triggers: - - gerrit: - server-name: 'OpenDaylight' - trigger-on: - - change-merged-event - - comment-added-contains-event: - comment-contains-value: 'remerge' - projects: - - project-compare-type: 'ANT' - project-pattern: '{name}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: 'ANT' - pattern: 'pom.xml' - - compare-type: 'ANT' - pattern: 'distributions/**' - - compare-type: 'ANT' - pattern: 'features/**' - - compare-type: 'ANT' - pattern: 'feature-selector/**' - -- trigger: - name: integration-test-gerrit-trigger-patch-submitted + name: integration-trigger-patch-submitted triggers: - gerrit: server-name: 'OpenDaylight' trigger-on: - patchset-created-event: - exclude-drafts: 'false' + exclude-drafts: 'true' exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' + exclude-no-code-change: 'true' - draft-published-event - comment-added-contains-event: comment-contains-value: 'recheck' - comment-added-contains-event: comment-contains-value: 'reverify' + gerrit-build-unstable-verified-value: +1 projects: - project-compare-type: 'ANT' project-pattern: '{name}' @@ -158,35 +123,14 @@ branch-pattern: '**/{branch}' file-paths: - compare-type: 'ANT' - pattern: 'test/csit/suites/{project}/**' + pattern: '{pattern}' -- trigger: - name: integration-csit-gerrit-trigger-patch-submitted - triggers: - - gerrit: - server-name: 'OpenDaylight' - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: 'recheck' - - comment-added-contains-event: - comment-contains-value: 'reverify' - projects: - - project-compare-type: 'ANT' - project-pattern: '{name}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: 'ANT' - pattern: 'test/csit/**' +# Macro: integration-trigger-patch-merged +# Operation: this macro sets a trigger for patch merged on a path pattern +# Used by: not used yet - trigger: - name: integration-csit-gerrit-trigger-patch-merged + name: integration-trigger-patch-merged triggers: - gerrit: server-name: 'OpenDaylight' @@ -202,63 +146,93 @@ branch-pattern: '**/{branch}' file-paths: - compare-type: 'ANT' - pattern: 'test/csit/**' + pattern: '{pattern}' -- wrapper: - name: integration-jclouds-controller-mininet - wrappers: - - jclouds: - instances: - - rk-c-el6-java: - cloud-name: 'Rackspace DFW - Integration Dynamic Lab' - count: '{controller-vms}' - stop-on-terminate: False - - rk-c-el6-mininet: - cloud-name: 'Rackspace DFW - Integration Dynamic Lab' - count: '{mininet-vms}' - stop-on-terminate: False +# Macro: integration-jclouds-controller-mininet +# Operation: this macro will spin the controller and mininet vms +# Used by: {project}-csit-* job templates - wrapper: - name: integration-jclouds-controller-fedora-mininet + name: integration-jclouds-controller-mininet wrappers: - jclouds: instances: - - rk-c-el6-java: + - rk-c7-java: cloud-name: 'Rackspace DFW - Integration Dynamic Lab' count: '{controller-vms}' stop-on-terminate: False - - rk-f21-mininet: - cloud-name: 'Rackspace DFW - Integration Dynamic Lab' + - '{mininet-image}': + cloud-name: '{mininet-cloud-name}' count: '{mininet-vms}' stop-on-terminate: False - ################# # Shell Scripts # ################# +# Macro: integration-get-slave-addresses +# Operation: this macro gets the IP addresses of the dynamic vms +# Used by: {project}-csit-* job templates + - builder: name: integration-get-slave-addresses builders: - shell: !include-raw include-raw-integration-get-slave-addresses.sh + +# Macro: integration-get-bundle-vars +# Operation: this macro gets all bundle related variables +# Used by: {project}-csit-3node-* job templates + - builder: name: integration-get-bundle-vars builders: - shell: !include-raw include-raw-integration-get-bundle-vars.sh +# Macro: integration-deploy-controller-verify +# Operation: this macro deploys the controller with all fetures +# Used by: integration-distrbution-deploy-{stream} job template + +- builder: + name: integration-deploy-controller-verify + builders: + - shell: + !include-raw include-raw-integration-deploy-controller-verify.sh + +# Macro: integration-deploy-controller-offline +# Operation: this macro deploys the controller with no external repo configuration +# Used by: integration-distrbution-offline-{stream} job template + +- builder: + name: integration-deploy-controller-offline + builders: + - shell: + !include-raw include-raw-integration-deploy-controller-offline.sh + +# Macro: integration-deply-controller-run-test +# Operation: this macro deploys single contoller and runs test +# Used by: {project}-csit-1node-* job templates + - builder: name: integration-deploy-controller-run-test builders: - shell: !include-raw include-raw-integration-deploy-controller-run-test.sh + +# Macro: integration-deploy-controller +# Operation: this macro prepares 3-node cluster controller +# Used by: {project}-csit-3node-* job templates + - builder: name: integration-deploy-controller builders: - shell: !include-raw include-raw-integration-deploy-controller.sh +# Macro: integration-configure-clustering +# Operation: this macro configures the clustering +# Used by: {project}-csit-3node-* job templates - builder: name: integration-configure-clustering @@ -266,28 +240,84 @@ - shell: !include-raw include-raw-integration-configure-clustering.sh +# Macro: integration-start-cluster-run-test +# Operation: this macro starts the 3-node cluster and runs test +# Used by: {project}-csit-3node-* job templates + - builder: name: integration-start-cluster-run-test builders: - shell: !include-raw include-raw-integration-start-cluster-run-test.sh +# Macro: integration-get-bundle-url +# Operation: this macro gets the job generated distribution URL from distribution pom.xml +# Used by: integration-patch-test-{stream} job template + - builder: - name: integration-deploy-controller-offline + name: integration-get-bundle-url builders: - shell: - !include-raw include-raw-integration-deploy-controller-offline.sh + !include-raw include-raw-integration-get-bundle-url.sh + +# Macro: integration-get-bundle-url-root +# Operation: this macro gets the job generated distribution URL from root pom.xml +# Used by: integration-distribution-verify-{stream} job template - builder: - name: integration-get-bundle-url + name: integration-get-bundle-url-root builders: - shell: - !include-raw include-raw-integration-get-bundle-url.sh + !include-raw include-raw-integration-get-bundle-url-root.sh + +# Macro: integration-install-robotframework +# Operation: Installs robotframework using pip to a virtualenv +# Used by: {project}-csit-* job templates + +- builder: + name: integration-install-robotframework + builders: + - shell: + !include-raw include-raw-integration-install-robotframework.sh + +# Macro: integration-cleanup-tmp +# Operation: Cleans up temporary files created by build +# Used by: {project}-csit-* job templates + +- builder: + name: integration-cleanup-tmp + builders: + - shell: + !include-raw include-raw-integration-cleanup-tmp.sh + +# Macro: integration-multipatch-builder +# Operation: checks out multiple patches and builds custom distribution +# Used by: integration-multipatch-test-* job templates + +- builder: + name: integration-multipatch-builder + builders: + - shell: + !include-raw include-raw-integration-multipatch-distribution-test.sh + +# Macro: integration-cleanup-worspace +# Operation: Cleans up files possibly left there by the previous build +# Used by: {project}-csit-* job templates + +- builder: + name: integration-cleanup-workspace + builders: + - shell: + !include-raw include-raw-integration-cleanup-workspace.sh ############## # Publishers # ############## +# Macro: integration-robot +# Operation: this macro publishes robot results +# Used by: {project}-csit-* job templates + - publisher: name: integration-robot publishers: