- parameter: name: integration-branch parameters: - string: name: BRANCH default: '{branch}' description: 'Distribution GIT branch' - parameter: name: integration-bundleurl parameters: - string: name: BUNDLEURL default: '{bundleurl}' description: 'URL to karaf distribution zip' - parameter: name: integration-controller-scope parameters: - string: name: CONTROLLERSCOPE default: '{controller-scope}' description: 'Feature Only or Feature All test' - parameter: name: integration-controller-features parameters: - string: name: CONTROLLERFEATURES default: '{controller-features}' description: 'Features to install in the controller separated by comma' - parameter: name: integration-test-plan parameters: - string: name: TESTPLAN default: '{test-plan}' description: 'Test plan we will run' - parameter: name: integration-test-options parameters: - string: name: TESTOPTIONS default: '{test-options}' description: 'Robot command options' - parameter: name: integration-distribution-git-url parameters: - string: 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: '$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-distribution-scm scm: - git: credentials-id: '{credentials-id}' basedir: 'distribution' url: '$DISTROGITURL' refspec: '' branches: - 'origin/{branch}' skip-tag: true # 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-trigger-patch-submitted triggers: - gerrit: server-name: 'OpenDaylight' trigger-on: - patchset-created-event: exclude-drafts: 'true' exclude-trivial-rebase: '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' projects: - project-compare-type: 'ANT' project-pattern: '{name}' branches: - branch-compare-type: 'ANT' branch-pattern: '**/{branch}' file-paths: - compare-type: 'ANT' pattern: '{pattern}' # 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-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: '{pattern}' # 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-mininet wrappers: - jclouds: instances: - rk-c7-java: cloud-name: 'Rackspace DFW - Integration Dynamic Lab' count: '{controller-vms}' stop-on-terminate: False - '{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-deply-controller-run-test # Operation: this macro deployes 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 builders: - 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-deploy-controller-offline # Operation: this macro deployes 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-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-get-bundle-url builders: - shell: !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-root builders: - shell: !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 ############## # Publishers # ############## # Macro: integration-robot # Operation: this macro publishes robot results # Used by: {project}-csit-* job templates - publisher: name: integration-robot publishers: - robot: output-path: '' other-files: '' unstable-threshold: '{unstable-if}' pass-threshold: '{pass-if}' only-critical: false