Merge "Make test-integration to rebase before build"
authorLuis Gomez <ecelgp@gmail.com>
Tue, 15 Dec 2015 01:03:54 +0000 (01:03 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Tue, 15 Dec 2015 01:03:54 +0000 (01:03 +0000)
1  2 
jjb/integration/integration-macros.yaml
jjb/integration/integration-test-jobs.yaml

index d3b0ce2552d6606e9b30ad9dfef9c7e38afcc29d,d1c54ce3cb7ab1adc63325d7d5b2f30dc460acd1..8775f275217b71832ef0d13f0a66d39f48b0c6bb
                      comment-contains-value: 'recheck'
                  - comment-added-contains-event:
                      comment-contains-value: 'reverify'
 +            override-votes: true
              gerrit-build-unstable-verified-value: +1
 +            gerrit-build-unstable-codereview-value: 0
              projects:
                - project-compare-type: 'ANT'
                  project-pattern: '{name}'
      name: integration-get-slave-addresses
      builders:
          - shell:
 -            !include-raw include-raw-integration-get-slave-addresses.sh
 +            !include-raw:
 +                - include-raw-integration-get-slave-addresses.sh
  
  # Macro: integration-get-bundle-vars
  # Operation: this macro gets all bundle related variables
      name: integration-get-bundle-vars
      builders:
          - shell:
 -            !include-raw include-raw-integration-get-bundle-vars.sh
 +            !include-raw:
 +                - include-raw-integration-get-bundle-vars.sh
  
  # Macro: integration-deploy-controller-verify
  # Operation: this macro deploys the controller with all fetures
      name: integration-deploy-controller-verify
      builders:
          - shell:
 -            !include-raw include-raw-integration-deploy-controller-verify.sh
 +            !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
      name: integration-deploy-controller-offline
      builders:
          - shell:
 -            !include-raw include-raw-integration-deploy-controller-offline.sh
 +            !include-raw:
 +                - include-raw-integration-deploy-controller-offline.sh
  
  # Macro: integration-deply-controller-run-test
  # Operation: this macro deploys single contoller and runs test
      name: integration-deploy-controller-run-test
      builders:
          - shell:
 -            !include-raw include-raw-integration-deploy-controller-run-test.sh
 +            !include-raw:
 +                - include-raw-integration-deploy-controller-run-test.sh
  
  # Macro: integration-deploy-controller
  # Operation: this macro prepares 3-node cluster controller
      name: integration-deploy-controller
      builders:
          - shell:
 -            !include-raw include-raw-integration-deploy-controller.sh
 +            !include-raw:
 +                - include-raw-integration-deploy-controller.sh
  
  # Macro: integration-configure-clustering
  # Operation: this macro configures the clustering
      name: integration-configure-clustering
      builders:
          - shell:
 -            !include-raw include-raw-integration-configure-clustering.sh
 +            !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
      name: integration-start-cluster-run-test
      builders:
          - shell:
 -            !include-raw include-raw-integration-start-cluster-run-test.sh
 +            !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
      name: integration-get-bundle-url
      builders:
          - shell:
 -            !include-raw include-raw-integration-get-bundle-url.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
      name: integration-get-bundle-url-root
      builders:
          - shell:
 -            !include-raw include-raw-integration-get-bundle-url-root.sh
 +            !include-raw:
 +                - include-raw-integration-get-bundle-url-root.sh
  
  # Macro: integration-install-robotframework
  # Operation: Installs robotframework using pip to a virtualenv
      name: integration-install-robotframework
      builders:
          - shell:
 -            !include-raw include-raw-integration-install-robotframework.sh
 +            !include-raw:
 +                - include-raw-integration-install-robotframework.sh
  
  # Macro: integration-cleanup-tmp
  # Operation: Cleans up temporary files created by build
      name: integration-cleanup-tmp
      builders:
          - shell:
 -            !include-raw include-raw-integration-cleanup-tmp.sh
 +            !include-raw:
 +                - include-raw-integration-cleanup-tmp.sh
  
  # Macro: integration-multipatch-builder
  # Operation: checks out multiple patches and builds custom distribution
      name: integration-multipatch-builder
      builders:
          - shell:
 -            !include-raw include-raw-integration-multipatch-distribution-test.sh
 +            !include-raw:
 +                - include-raw-integration-multipatch-distribution-test.sh
  
  # Macro: integration-cleanup-worspace
  # Operation: Cleans up files possibly left there by the previous build
      name: integration-cleanup-workspace
      builders:
          - shell:
 -            !include-raw include-raw-integration-cleanup-workspace.sh
 +            !include-raw:
 +                - include-raw-integration-cleanup-workspace.sh
  
+ # Macro: integration-rebase-patch
+ # Operation: For cloned project, rebase checked-out Gerrit patch onto $BRANCH.
+ # Used by: integration-patch-distribution-* job template
+ - builder:
+     name: integration-rebase-gerrit-patch
+     builders:
+         - shell:
+             !include-raw include-raw-integration-rebase-gerrit-patch.sh
  ##############
  # Publishers #
  ##############
index ba634e84aaa0ab4d08cff2be4e1e8933c0f6aea1,d325e4f6929d350f5f81d762a6f147659ed5ba7d..4ca9326efc1db5290fce22a5ed4351020f460a06
@@@ -56,7 -56,9 +56,7 @@@
                  usc-csit-1node-channel-only-{stream},
                  usc-csit-1node-channel-all-{stream},
                  vpnservice-csit-1node-vpnservice-only-{stream},
 -                vpnservice-csit-1node-vpnservice-all-{stream},
 -                vtn-csit-1node-manager-only-{stream},
 -                vtn-csit-1node-manager-all-{stream}
 +                vpnservice-csit-1node-vpnservice-all-{stream}
  
          - stable-lithium:
              branch: 'stable/lithium'
              refspec: '$GERRIT_REFSPEC'
          - project-parameter:
              project: '$GERRIT_PROJECT'
+         - integration-branch:
+             branch: '{branch}'
          - integration-distribution-git-url
  
      scm:
                  notbuilt: true
  
      prebuilders:
+         - integration-rebase-gerrit-patch
          - integration-get-bundle-url
          - inject:
              properties-file: 'bundle.txt'
          - maven-target:
              maven-version: '{mvn33}'
              pom: '$GERRIT_PROJECT/pom.xml'
 -            goals: 'clean install -DskipTests -Dcheckstyle.skip=true -Dmaven.javadoc.skip=true -Dmaven.site.skip=true -DgenerateReports=false -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
 +            goals: 'clean install -DskipTests -Dcheckstyle.skip=true -Dmaven.javadoc.skip=true -Dmaven.site.skip=true -DgenerateReports=false -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}'
              java-opts:
                  - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
              settings: '{integration-settings}'
          - integration-multipatch-builder
          - inject:
              properties-file: 'bundle.txt'
 +        - provide-maven-settings:
 +            global-settings-file: '{odl-global-settings}'
 +            settings-file: '{yangtools-settings}'
 +
  
      maven:
          maven-name: '{mvn33}'
          root-pom: 'patch_tester/pom.xml'
 -        goals: 'clean install -f patch_tester/pom.xml -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
 -        maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
 -        settings: '{integration-settings}'
 +        # TODO: Make Maven option configurable. Currently tests are not skipped, everything elase is.
 +        goals: 'clean install -f patch_tester/pom.xml -Dcheckstyle.skip=true -Dmaven.javadoc.skip=true -Dmaven.site.skip=true -DgenerateReports=false -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}'
 +        maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
 +        settings: '{yangtools-settings}'
          global-settings: '{odl-global-settings}'
 -        ignore-upstream-changes: true
          post-step-run-condition: 'SUCCESS'
  
      postbuilders: