yum clean all
yum install -y python-{tox,virtualenv} xmlstarlet
+# add in mono components for VTN
+yum install -y yum-utils
+#The following is needed for the new code in vtn project.
+#these packages will enable C# compilation.
+rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
+#Added the mono tools repository
+yum-config-manager -q -y --add-repo http://origin-download.mono-project.com/repo/centos6
+#Install the nuget binary
+yum install -q -y http://origin-download.mono-project.com/repo/centos/n/nuget/nuget-2.8.3+md58+dhx1-0.noarch.rpm
+#install the mono toolchain
+yum -q -y install mono-complete
+
# vim: sw=2 ts=2 sts=2 et :
--- /dev/null
+#!/bin/bash
+
+# make sure we don't require tty for sudo operations
+cat <<EOF >/etc/sudoers.d/89-jenkins-user-defaults
+Defaults:jenkins !requiretty
+jenkins ALL = NOPASSWD: ALL
+EOF
+
+# make sure the firewall is stopped
+service iptables stop
+
+# vim: sw=2 ts=2 sts=2 et :
# built, they are now. Make sure they're install
yum install -q -y netopeer-server-sl CPqD-ofsoftswitch13
+# netaddr and ipaddress libraries can be useful on this system as
+# some tests are starting to push pyhon scripts/tools to this VM
+# during CI tests
+yum install -q -y python-{ipaddr,iptools,netaddr}
+
# the vagrant configuration for netopeer doesn't configure SSH correctly
# as it uses and here document via echo and not cat fix that
cat << EOSSH >> /etc/ssh/sshd_config
--- /dev/null
+- job-template:
+ name: 'PROJECT-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
name: 'PROJECT-integration-{stream}'
disabled: DISABLED
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+++ /dev/null
-- project:
- name: aaa-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'aaa'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
- 'aaa-verify-{stream}'
- 'aaa-merge-{stream}'
- 'aaa-daily-{stream}'
+ - 'aaa-distribution-{stream}'
- 'aaa-integration-{stream}'
- 'aaa-sonar'
- 'aaa-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[aaa]'
- maven-deploy:
email-prefix: '[aaa]'
- jacoco-report
+- job-template:
+ name: 'aaa-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'aaa-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
BRANCHES:
- master:
jdks: openjdk7
-DEPENDENCIES: controller,yangtools,odlparent,bpgcep
\ No newline at end of file
+- stable/lithium:
+ jdks: openjdk7
+DEPENDENCIES: controller,yangtools,odlparent,l2switch
- 'alto-verify-{stream}'
- 'alto-merge-{stream}'
- 'alto-daily-{stream}'
+ - 'alto-distribution-{stream}'
- 'alto-integration-{stream}'
- 'alto-sonar'
- 'alto-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'alto'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[alto]'
- maven-deploy:
email-prefix: '[alto]'
- jacoco-report
+- job-template:
+ name: 'alto-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'alto-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
triggers:
- reverse:
- jobs: 'controller-merge-{stream},yangtools-merge-{stream},odlparent-merge-{stream},bpgcep-merge-{stream}'
+ jobs: 'controller-merge-{stream},yangtools-merge-{stream},odlparent-merge-{stream},l2switch-merge-{stream}'
result: 'success'
prebuilders:
publishers:
- email-notification:
- email-prefix: '[alto] [controller] [yangtools] [odlparent] [bpgcep]'
+ email-prefix: '[alto] [controller] [yangtools] [odlparent] [l2switch]'
- jacoco-report
- job-template:
maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
+ automatic-archiving: false
postbuilders:
+ - shell: "./scripts/list-project-dependencies.sh"
- autorelease-maven-sources:
maven-version: '{mvn32}'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
+ - autorelease-maven-sources-post-process
- jacoco-nojava-workaround
publishers:
- archive-artifacts:
- artifacts: 'sources.log,patches/*.patch'
+ artifacts: '*.log,patches/*.patch'
- email-notification:
email-prefix: '[autorelease]'
maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
+ automatic-archiving: false
postbuilders:
- autorelease-cfp:
autorelease-settings: '{autorelease-settings}'
odl-global-settings: '{odl-global-settings}'
- autorelease-maven-deploy
+ - shell: "./scripts/list-project-dependencies.sh"
- autorelease-maven-sources:
maven-version: '{mvn32}'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
+ - autorelease-maven-sources-post-process
- jacoco-nojava-workaround
publishers:
- archive-artifacts:
- artifacts: 'sources.log,patches/*.patch'
+ artifacts: '*.log,patches/*.patch'
- email-notification:
email-prefix: '[autorelease]'
- maven-target:
maven-version: '{maven-version}'
pom: 'pom.xml'
- goals: 'dependency:sources -l sources.log -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ goals: 'dependency:sources -DoutputFile=$WORKSPACE/sources.log -DappendOutput -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
java-opts:
- '-Xmx4096m -XX:MaxPermSize=1024m'
settings: '{settings}'
global-settings: '{global-settings}'
+- builder:
+ name: autorelease-maven-sources-post-process
+ builders:
+ - shell: |
+ awk '/The following files have NOT been resolved:/,/^$/' sources.log > missing-sources.log
maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
+ automatic-archiving: false
postbuilders:
+ - shell: "./scripts/list-project-dependencies.sh"
- autorelease-maven-sources:
maven-version: '{mvn32}'
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
+ - autorelease-maven-sources-post-process
- jacoco-nojava-workaround
publishers:
- archive-artifacts:
- artifacts: 'sources.log,patches/*.patch'
+ artifacts: '*.log,patches/*.patch'
- email-notification:
email-prefix: '[autorelease]'
git commit -am "Release $RELEASE_TAG"
mkdir patches
-git submodule foreach 'git format-patch --stdout origin/$RELEASE_BRANCH > ../patches/$name.patch'
+modules=`xmlstarlet sel -N x=http://maven.apache.org/POM/4.0.0 -t -m '//x:modules' -v '//x:module' pom.xml`
+for module in $modules; do
+ cd $module
+ git format-patch --stdout origin/$RELEASE_BRANCH > ../patches/$module.patch
+ cd ..
+done
./scripts/fix-relativepaths.sh
- project:
- name: bgpcep-csit-userfeatures-master
+ name: bgpcep-csit-userfeatures
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'bgpcep'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
+++ /dev/null
-- project:
- name: bgpcep-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'bgpcep'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
project: 'bgpcep'
jdk: 'openjdk7'
+++ /dev/null
-- project:
- name: bgpcep-verify
- jobs:
- - 'bgpcep-verify-{stream}'
- - 'bgpcep-verify-stable-helium'
-
-
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
- stream:
- - master:
- branch: 'master'
- - stable-lithium:
- branch: 'stable/lithium'
-
- project: 'bgpcep'
-
-- job-template:
- name: 'bgpcep-verify-{stream}'
-
- # Job template for ODL verify jobs
- #
- # The purpose of this job template is to setup a ODL verify job
- #
- # Required Variables:
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
-
- project-type: matrix
- node: matrix_master
- concurrent: true
-
- axes:
- - axis:
- type: slave
- name: nodes
- values:
- - dynamic_verify
- - axis:
- type: jdk
- values:
- - openjdk7
- - openjdk8
-
-
- logrotate:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - build-timeout
- - ssh-agent-credentials:
- users:
- - '{ssh-credentials}'
-
- triggers:
- - gerrit-trigger-patch-submitted:
- name: 'bgpcep'
- branch: '{branch}'
-
- builders:
- - wipe-org-opendaylight-repo
- - maven-target:
- maven-version: '{mvn32}'
- pom: 'pom.xml'
- goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate'
- java-opts:
- - '-Xmx1024m -XX:MaxPermSize=256m'
- settings: '{bgpcep-settings}'
- global-settings: '{odl-global-settings}'
- - jacoco-nojava-workaround
-
- publishers:
- - findbugs
- - email-notification:
- email-prefix: '[bgpcep]'
- - jacoco-report
-
-- job-template:
- name: 'bgpcep-verify-stable-helium'
-
- project-type: matrix
- node: matrix_master
- concurrent: true
-
- axes:
- - axis:
- type: slave
- name: nodes
- values:
- - dynamic_verify
- - axis:
- type: jdk
- values:
- - openjdk7
-
-
- logrotate:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: 'stable/helium'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - build-timeout
- - ssh-agent-credentials:
- users:
- - '{ssh-credentials}'
-
- triggers:
- - gerrit-trigger-patch-submitted:
- name: 'bgpcep'
- branch: 'stable/helium'
-
- builders:
- - wipe-org-opendaylight-repo
- - maven-target:
- maven-version: '{mvn32}'
- pom: 'pom.xml'
- goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate'
- java-opts:
- - '-Xmx1024m -XX:MaxPermSize=256m'
- settings: '{bgpcep-settings}'
- global-settings: '{odl-global-settings}'
- - jacoco-nojava-workaround
-
- publishers:
- - findbugs
- - email-notification:
- email-prefix: '[bgpcep]'
- - jacoco-report
-JOB_TEMPLATES: merge,daily,integration,sonar
BRANCHES:
- master:
jdks: openjdk7,openjdk8
- project:
name: bgpcep
jobs:
+ - 'bgpcep-verify-{stream}'
- 'bgpcep-merge-{stream}'
- 'bgpcep-daily-{stream}'
+ - 'bgpcep-distribution-{stream}'
- 'bgpcep-integration-{stream}'
- 'bgpcep-sonar'
- 'bgpcep-clm'
# MAVEN_GOALS with your maven goals to build
# MAVEN_OPTS with your maven options to build
+- job-template:
+ name: 'bgpcep-verify-{stream}'
+
+ # Job template for ODL verify jobs
+ #
+ # The purpose of this job template is to setup a ODL verify job
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+
+ project-type: matrix
+ node: matrix_master
+ concurrent: true
+
+ axes:
+ - axis:
+ type: slave
+ name: nodes
+ values:
+ - dynamic_verify
+ - axis:
+ type: jdk
+ values: '{obj:jdks}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - gerrit-trigger-patch-submitted:
+ name: 'bgpcep'
+ branch: '{branch}'
+
+ builders:
+ - wipe-org-opendaylight-repo
+ - maven-target:
+ maven-version: '{mvn32}'
+ pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate'
+ java-opts:
+ - '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{bgpcep-settings}'
+ global-settings: '{odl-global-settings}'
+ - jacoco-nojava-workaround
+
+ publishers:
+ - findbugs
+ - email-notification:
+ email-prefix: '[bgpcep]'
+ - jacoco-report
+
- job-template:
name: 'bgpcep-merge-{stream}'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[bgpcep]'
- maven-deploy:
email-prefix: '[bgpcep]'
- jacoco-report
+- job-template:
+ name: 'bgpcep-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'bgpcep-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'capwap-verify-{stream}'
- 'capwap-merge-{stream}'
- 'capwap-daily-{stream}'
+ - 'capwap-distribution-{stream}'
- 'capwap-integration-{stream}'
- 'capwap-sonar'
- 'capwap-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[capwap]'
- maven-deploy:
email-prefix: '[capwap]'
- jacoco-report
+- job-template:
+ name: 'capwap-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'capwap-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
install-features: 'odl-netconf-connector-all,odl-restconf-all'
# Robot custom options
- robot-options: ''
+ robot-options: '-v NETOPEER_USER:root'
# Trigger jobs (upstream dependencies)
trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream}'
install-features: 'odl-netconf-connector-all,odl-restconf-all'
# Robot custom options
- robot-options: ''
+ robot-options: '-v NETOPEER_USER:root'
# Trigger jobs (upstream dependencies)
trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream}'
+++ /dev/null
-- project:
- name: controller-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'controller'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
-JOB_TEMPLATES: merge,daily,integration,sonar
+JOB_TEMPLATES: merge,daily,distribution,integration,sonar
BRANCHES:
- master:
jdks: openjdk7,openjdk8
jobs:
- 'controller-merge-{stream}'
- 'controller-daily-{stream}'
+ - 'controller-distribution-{stream}'
- 'controller-integration-{stream}'
- 'controller-sonar'
- 'controller-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[controller]'
- maven-deploy:
email-prefix: '[controller]'
- jacoco-report
+- job-template:
+ name: 'controller-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'controller-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'coretutorials-verify-{stream}'
- 'coretutorials-merge-{stream}'
- 'coretutorials-daily-{stream}'
+ - 'coretutorials-distribution-{stream}'
- 'coretutorials-integration-{stream}'
- 'coretutorials-sonar'
- 'coretutorials-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[coretutorials]'
- maven-deploy:
email-prefix: '[coretutorials]'
- jacoco-report
+- job-template:
+ name: 'coretutorials-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'coretutorials-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
DEPENDENCIES: odlparent
POM: dfapp/pom.xml
- 'defense4all-verify-{stream}'
- 'defense4all-merge-{stream}'
- 'defense4all-daily-{stream}'
+ - 'defense4all-distribution-{stream}'
- 'defense4all-integration-{stream}'
- 'defense4all-sonar'
- 'defense4all-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'defense4all'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[defense4all]'
- maven-deploy:
email-prefix: '[defense4all]'
- jacoco-report
+- job-template:
+ name: 'defense4all-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'defense4all-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'didm-verify-{stream}'
- 'didm-merge-{stream}'
- 'didm-daily-{stream}'
+ - 'didm-distribution-{stream}'
- 'didm-integration-{stream}'
- 'didm-sonar'
- 'didm-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[didm]'
- maven-deploy:
email-prefix: '[didm]'
- jacoco-report
+- job-template:
+ name: 'didm-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'didm-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'discovery-verify-{stream}'
- 'discovery-merge-{stream}'
- 'discovery-daily-{stream}'
+ - 'discovery-distribution-{stream}'
- 'discovery-integration-{stream}'
- 'discovery-sonar'
- 'discovery-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[discovery]'
- maven-deploy:
email-prefix: '[discovery]'
- jacoco-report
+- job-template:
+ name: 'discovery-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'discovery-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'dlux-verify-{stream}'
- 'dlux-merge-{stream}'
- 'dlux-daily-{stream}'
+ - 'dlux-distribution-{stream}'
- 'dlux-integration-{stream}'
- 'dlux-sonar'
- 'dlux-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[dlux]'
- maven-deploy:
email-prefix: '[dlux]'
- jacoco-report
+- job-template:
+ name: 'dlux-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'dlux-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'docs-verify-{stream}'
- 'docs-merge-{stream}'
- 'docs-daily-{stream}'
+ - 'docs-distribution-{stream}'
- 'docs-integration-{stream}'
- 'docs-sonar'
- 'docs-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[docs]'
- maven-deploy:
email-prefix: '[docs]'
- jacoco-report
+- job-template:
+ name: 'docs-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'docs-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
MVN_GOALS: -U clean install findbugs:findbugs -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
MVN_OPTS: -Xmx1024m -XX:MaxPermSize=256m
DEPENDENCIES: odlparent,yangtools,controller,openflowjava,openflowplugin
- 'groupbasedpolicy-verify-{stream}'
- 'groupbasedpolicy-merge-{stream}'
- 'groupbasedpolicy-daily-{stream}'
+ - 'groupbasedpolicy-distribution-{stream}'
- 'groupbasedpolicy-integration-{stream}'
- 'groupbasedpolicy-sonar'
- 'groupbasedpolicy-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'groupbasedpolicy'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[groupbasedpolicy]'
- maven-deploy:
email-prefix: '[groupbasedpolicy]'
- jacoco-report
+- job-template:
+ name: 'groupbasedpolicy-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'groupbasedpolicy-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
-echo "##################################################"
-echo "## include-raw-integration-configure-clustering ##"
-echo "##################################################"
+echo "#################################################"
+echo "## Configure Cluster and Start ##"
+echo "#################################################"
-# this script configures replication on a single ODL controller.
-# files touched are akka.conf modules-shards.conf
+AKKACONF=/tmp/${BUNDLEFOLDER}/configuration/initial/akka.conf
+MODULESHARDSCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/module-shards.conf
+JOLOKIACONF=/tmp/${BUNDLEFOLDER}/deploy/jolokia.xml
+cat > ${WORKSPACE}/configuration-script.sh <<EOF
+CONTROLLERID="member-\$1"
+CONTROLLERIP=\$2
-echo "##################################"
-echo "## Loop through controller IPs #"
-echo "##################################"
-
-declare CONTROLLERIPS=($(cat slave_addresses.txt | grep CONTROLLER | awk -F = '{print $2}'))
-declare -p CONTROLLERIPS
-
-echo "######################################################"
-echo "## include-raw-integration-configuration_functions ##"
-echo "######################################################"
-
-# writes the functions needed for configuring clustering to
-# configuration-functions in the WORKSPACE
-env
-
-set -x
-
-cat > ${WORKSPACE}/configuration-functions <<EOF
-
-
-function getslaveaddresses
-{
- declare -a CONTROLLERIPS=($CONTROLLER0, $CONTROLLER1, $CONTROLLER2)
- declare -p CONTROLLERIPS
- export CONTROLLERIPS
-}
-
-
-function editakkaconf
-{
-set -x
- echo "##### editakkaconf #####"
- echo "The number of args recieved \${#} \${1} \${2}"
-# Expects 2 argument \$LOOPINCR and IPADDRESS of controller.
-# \$CONTROLLERIPS[] is set by getslaveaddresses().
-# \$BUNDLEFOLDER is set in "include-raw-integration-deploy-controller.sh"
-# A single copy of akka.conf is assumed to be available in \$BUNDLEFOLDER
-
-if [ -z ${BUNDLEFOLDER} ] || [ -f ${BUNDLEFOLDER} ]; then
- echo "WARNING: Location of ODL BUNDLEFOLDER:\$BUNDLEFOLDER is not defined"
-
-fi
-if [ -z \${CONTROLLERIPS} ]; then
- echo "WARNING: Cluster IPs not known due to UNBOUND varible: CONTROLLERIPS[@] does not exist"
- echo "WARNING: Calling getslaveaddresses to populate CONTROLLERIPS[@]"
- getslaveaddresses
-fi
-
-
-
-
-############################
-# BEGIN function variables #
-############################
-
- # make local copies of global varibles because globals may produce interesting bugs.
- echo "# set the IP of the current controller."
-
- local LOOPINCR=\$1
- local CURRENTCONTROLLERIPADDR=\$2
- local AKKACONF=\$(find /tmp/${BUNDLEFOLDER} -name akka.conf)
-
- # used to verify IP address of current VM
- local HOSTIPADDR0=\$(/sbin/ifconfig eth0 | grep "inet " | awk '{print \$2}' | awk '{print \$1}')
- local HOSTIPADDR=\${HOSTIPADDR0#'addr:'}
- local TEMPIP = \$(/sbin/ifconfig eth0 | grep "inet " | awk '{print \$0}' )
- local CLUSTERDATAORIG="\"akka.tcp:\/\/opendaylight-cluster-data@127.0.0.1:2550"\"
- local CLUSTERDATANEW="\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER0:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER1:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER2:2550"\"
-
- local CLUSTERRPCORIG="\"akka.tcp:\/\/odl-cluster-rpc@127.0.0.1:2551"\"
- local CLUSTERRPCNEW="\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER0:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER1:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER2:2551\""
-
- local UIDORIG="member-1"
- local UIDNEW="member-\$1"
-
-##########################
-# END function variables #
-##########################
-
-#####################################
-# sanity test hostname in akka.conf #
-#####################################
-# probably overkill as SCP depends on IPaddress being correct.
-
-#set -x
- if [ -z \${HOSTIPADDR} ]; then
- echo "WARNING: HOSTIPADDR is empty."
- fi
-
-#set +x
-
- if [ "\${CURRENTCONTROLLERIPADDR}" == "\${HOSTIPADDR}" ]
- then
- echo "CURRENTCONTROLLERIPADRR:\${CURRENTCONTROLLERIPADDR} == HOSTIPADDR:\${HOSTIPADDR}"
- else
- echo "WARNING: CURRENTCONTROLLERIPADRR:\${CURRENTCONTROLLERIPADDR} != HOSTIPADDR:\${HOSTIPADDR}"
- fi
-
-####################################
-# configure hostname in akka.conf #
-####################################
-
- cp \${AKKACONF} \${AKKACONF}.bak
- sed -ri "s:hostname = \"([0-9]{1,3}[\.]){3}[0-9]{1,3}\":hostname = \
-\$HOSTIPADDR:" \${AKKACONF}.bak
-
-####################################
-# configure seednode in akka.conf #
-####################################
-
- sed -i "s/\$CLUSTERDATAORIG/\$CLUSTERDATANEW/g" \${AKKACONF}.bak
- sed -i "s/\$CLUSTERRPCORIG/\$CLUSTERRPCNEW/g" \${AKKACONF}.bak
-
-####################################
-# define unique name for each node #
-####################################
-
- sed -i "s/\$UIDORIG/\$UIDNEW/g" \${AKKACONF}.bak
- cp \${AKKACONF}.bak \${AKKACONF}
- cat \${AKKACONF}
-echo "##### END editakkaconf #####"
-set +x
-}
-function configuremoduleshardsconf
-{
- echo"### configuremoduleshardsconf ###"
- set -x
- if [ -z ${BUNDLEFOLDER} ] || [ -f ${BUNDLEFOLDER} ]; then
- echo "MODULESHARDSCONF WARNING: Location of ODL BUNDLEFOLDER:\$BUNDLEFOLDER is not defined"
- fi
-
- local REPLICACONFORIG='"member-1"'
- local REPLICACONFNEW='"member-0",\n\t\t\t"member-1",\n\t\t\t"member-2"'
-
-
- MODULESHARDSCONF=\$(find /tmp/${BUNDLEFOLDER} -name module-shards.conf)
-
- if [ -z \${MODULESHARDSCONF} ]
- then
- printf "source file module-shards.conf was not found\n"
- else
- printf "MODULESHARDSCONF: \${MODULESHARDSCONF}"
- cp \${MODULESHARDSCONF} \${MODULESHARDSCONF}.bak
- printf \$REPLICACONFNEW
- sed -i "s/\$REPLICACONFORIG/\$REPLICACONFNEW/g" \${MODULESHARDSCONF}.bak
-
- cp \${MODULESHARDSCONF}.bak \${MODULESHARDSCONF}
- cat \${MODULESHARDSCONF}
- fi
- set +x
-}
-
-
-
-function runcontrollerscript
-{
- local CONTROLLERIP=\$1
- local SCRIPT=\$2
- echo "run controller \$CONTROLLERIP on \$i"
- ssh -v \$CONTROLLERIP 'bash /tmp/\$SCRIPT'
-}
-
-EOF
-set +x
-
-
-#less configuration-functions
-echo "#########################################################"
-echo "## END include-raw-integration-configuration_functions ##"
-echo "#########################################################"
+echo "Configuring hostname in akka.conf"
+sed -ie "s:{{HOST}}:\${CONTROLLERIP}:" ${AKKACONF}
-echo "##################################"
-echo "## Less configuration functions #"
-echo "##################################"
+echo "Configuring data seed nodes in akka.conf"
+sed -ie "s/{{{DS_SEED_NODES}}}/[\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER0:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER1:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER2:2550\"]/g" ${AKKACONF}
-#less ${WORKSPACE}/configuration-functions
+echo "Configuring rpc seed nodes in akka.conf"
+sed -ie "s/{{{RPC_SEED_NODES}}}/[\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER0:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER1:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER2:2551\"]/g" ${AKKACONF}
-echo "######################################"
-echo "## END Less configuration functions #"
-echo "######################################"
+echo "Define unique name in akka.conf"
+sed -ie "s/{{MEMBER_NAME}}/\$CONTROLLERID/g" ${AKKACONF}
-## Describe the script run on guest vm (node) to configure clustering
+echo "Define replication type in module-shards.conf"
+sed -ie "s/{{{REPLICAS_1}}}/[\"member-0\",\n\t\t\t\"member-1\",\n\t\t\t\"member-2\"]/g" ${MODULESHARDSCONF}
+sed -ie "s/{{{REPLICAS_2}}}/[\"member-0\",\n\t\t\t\"member-1\",\n\t\t\t\"member-2\"]/g" ${MODULESHARDSCONF}
+sed -ie "s/{{{REPLICAS_3}}}/[\"member-0\",\n\t\t\t\"member-1\",\n\t\t\t\"member-2\"]/g" ${MODULESHARDSCONF}
+sed -ie "s/{{{REPLICAS_4}}}/[\"member-0\",\n\t\t\t\"member-1\",\n\t\t\t\"member-2\"]/g" ${MODULESHARDSCONF}
+echo "Dump akka.conf"
+cat ${AKKACONF}
-cat > ${WORKSPACE}/configuration-script.sh <<EOF
- source /tmp/configuration-functions
- source /tmp/bundle_vars.txt
- source /tmp/slave_addresses.txt
+echo "Dump module-shards.conf"
+cat ${MODULESHARDSCONF}
- # Calling the Functions used to edit akka.comf and module-shards
- # $1 is loop increment and $2 is the ipaddress of current
- # controller
-
- editakkaconf \$1 \$2
- configuremoduleshardsconf \$1 \$2
+echo "Starting controller..."
+/tmp/${BUNDLEFOLDER}/bin/start
EOF
-
-
-# Describe CONFIGURATION FUNCTIONS available for the script above
-# CONFIGURATIONFUNCTIONS='configuration-functions'
-
-set -x
-for i in "${!CONTROLLERIPS[@]}"
+CONTROLLERIPS=(${CONTROLLER0} ${CONTROLLER1} ${CONTROLLER2})
+for i in "${!CONTROLLERIPS[@]}"
do
- echo "IP address of node is: ${CONTROLLERIPS[$i]} and index is $i"
- scp ${WORKSPACE}/slave_addresses.txt ${CONTROLLERIPS[$i]}:/tmp
- scp ${WORKSPACE}/bundle_vars.txt ${CONTROLLERIPS[$i]}:/tmp
-
- scp ${WORKSPACE}/configuration-functions ${CONTROLLERIPS[$i]}:/tmp
- scp ${WORKSPACE}/configuration-script.sh ${CONTROLLERIPS[$i]}:/tmp
-
- echo "configure controller ${CONTROLLERIPS[$i]} on $i"
-
-
- ssh -v ${CONTROLLERIPS[$i]} "bash /tmp/configuration-script.sh $i ${CONTROLLERIPS[$i]}"
+ echo "Configuring member-$i with IP address ${CONTROLLERIPS[$i]}"
+ ssh ${CONTROLLERIPS[$i]} "mkdir /tmp/${BUNDLEFOLDER}/configuration/initial"
+ scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/akka.conf.template ${CONTROLLERIPS[$i]}:${AKKACONF}
+ scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/module-shards.conf.template ${CONTROLLERIPS[$i]}:${MODULESHARDSCONF}
+ scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/jolokia.xml.template ${CONTROLLERIPS[$i]}:${JOLOKIACONF}
+ scp ${WORKSPACE}/configuration-script.sh ${CONTROLLERIPS[$i]}:/tmp/
+ ssh ${CONTROLLERIPS[$i]} "bash /tmp/configuration-script.sh $i ${CONTROLLERIPS[$i]}"
done
-set +x
-
-echo "######################################################"
-echo "## END include-raw-integration-configure-clustering ##"
-echo "######################################################"
+# vim: ts=4 sw=4 sts=4 et ft=sh :
-# Create a script to run controller inside a dynamic jenkins slave
-DISTRIBUTION="karaf"
-CONTROLLERFEATURES="odl-integration-compatible-with-all"
-CONTROLLERMEM="3072m"
-
NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
+CONTROLLERMEM="3072m"
+ACTUALFEATURES="odl-integration-compatible-with-all"
if [ ${BUNDLEURL} == 'last' ]; then
- NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-${DISTRIBUTION}"
+ NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf"
# Extract the BUNDLEVERSION from the pom.xml
BUNDLEVERSION=`xpath pom.xml '/project/version/text()' 2> /dev/null`
echo "Bundle version is ${BUNDLEVERSION}"
wget ${NEXUSPATH}/${BUNDLEVERSION}/maven-metadata.xml
TIMESTAMP=`xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null`
echo "Nexus timestamp is ${TIMESTAMP}"
- BUNDLEFOLDER="distribution-${DISTRIBUTION}-${BUNDLEVERSION}"
- BUNDLE="distribution-${DISTRIBUTION}-${TIMESTAMP}.zip"
- BUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
+ BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
+ BUNDLE="distribution-karaf-${TIMESTAMP}.zip"
+ ACTUALBUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
else
+ ACTUALBUNDLEURL="${BUNDLEURL}"
BUNDLE="${BUNDLEURL##*/}"
BUNDLEVERSION="$(basename $(dirname $BUNDLEURL))"
- BUNDLEFOLDER="distribution-${DISTRIBUTION}-${BUNDLEVERSION}"
+ BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
fi
-echo "Distribution bundle URL is ${BUNDLEURL}"
+echo "Distribution bundle URL is ${ACTUALBUNDLEURL}"
echo "Distribution bundle is ${BUNDLE}"
+echo "Distribution bundle version is ${BUNDLEVERSION}"
echo "Distribution folder is ${BUNDLEFOLDER}"
+echo "Nexus prefix is ${NEXUSURL_PREFIX}"
echo "Downloading the distribution..."
-wget --no-verbose ${BUNDLEURL}
+wget --no-verbose ${ACTUALBUNDLEURL}
echo "Extracting the new controller..."
unzip -q ${BUNDLE}
echo "Configuring the startup features..."
-cd ${BUNDLEFOLDER}/etc
-CFG=org.apache.karaf.features.cfg
-cp ${CFG} ${CFG}.bak
-cat ${CFG}.bak | sed "s/^featuresBoot=.*/featuresBoot=config,standard,region,package,kar,ssh,management,${CONTROLLERFEATURES}/" > ${CFG}.1
-cat ${CFG}.1 | sed "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%" > ${CFG}
-cat ${CFG}
+FEATURESCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg
+sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" ${FEATURESCONF}
+cat ${FEATURESCONF}
echo "Configuring the log..."
-LOG=org.ops4j.pax.logging.cfg
-cp ${LOG} ${LOG}.bak
-cat ${LOG}.bak | sed 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/' > ${LOG}
-cat ${LOG}
+LOGCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg
+sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/g' ${LOGCONF}
+cat ${LOGCONF}
echo "Configure the repos..."
-REPO=org.ops4j.pax.url.mvn.cfg
-cp ${REPO} ${REPO}.bak
-cat ${REPO}.bak | sed '/http/d' | sed '$s/...$//'> ${REPO}
-cat ${REPO}
+REPOCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.url.mvn.cfg
+sed -ie '/http/d' ${REPOCONF}
+sed -ie '$s/...$//' ${REPOCONF}
+cat ${REPOCONF}
echo "Configure max memory..."
-MEM=setenv
-cd ../bin
-cp ${MEM} ${MEM}.bak
-cat ${MEM}.bak | sed 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/' > ${MEM}
-cat ${MEM}
+MEMCONF=${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv
+sed -ie 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/g' ${MEMCONF}
+cat ${MEMCONF}
echo "Starting controller..."
-./start &
+${WORKSPACE}/${BUNDLEFOLDER}/bin/start
-echo "sleeping for 20 seconds..."
-sleep 20
+echo "sleeping for 10 seconds..."
+sleep 10
echo "Check OSGi bundles..."
-sshpass -p karaf ./client -u karaf "feature:install ${CONTROLLERFEATURES}" || echo $? > ${WORKSPACE}/error.txt
+sshpass -p karaf ${WORKSPACE}/${BUNDLEFOLDER}/bin/client -u karaf "feature:install ${ACTUALFEATURES}" || echo $? > ${WORKSPACE}/error.txt
echo "Fetching Karaf log"
-cd ${WORKSPACE}
-cp ${BUNDLEFOLDER}/data/log/karaf.log .
+cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
echo "Exit with error"
if [ `cat error.txt` -ne 0 ]; then
-# Create a script to run controller inside a dynamic jenkins slave
+export NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
CONTROLLERMEM="2048m"
-DISTRIBUTION="karaf"
if [ ${CONTROLLERSCOPE} == 'all' ]; then
- CONTROLLERFEATURES="odl-integration-compatible-with-all,${CONTROLLERFEATURES}"
+ ACTUALFEATURES="odl-integration-compatible-with-all,${CONTROLLERFEATURES}"
CONTROLLERMEM="3072m"
+else
+ ACTUALFEATURES="${CONTROLLERFEATURES}"
fi
-NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
-
if [ ${BUNDLEURL} == 'last' ]; then
- NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-${DISTRIBUTION}"
+ NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf"
# Extract the BUNDLEVERSION from the pom.xml
- BUNDLEVERSION=`xpath pom.xml '/project/version/text()' 2> /dev/null`
+ export BUNDLEVERSION=`xpath pom.xml '/project/version/text()' 2> /dev/null`
echo "Bundle version is ${BUNDLEVERSION}"
# Acquire the timestamp information from maven-metadata.xml
wget ${NEXUSPATH}/${BUNDLEVERSION}/maven-metadata.xml
TIMESTAMP=`xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null`
echo "Nexus timestamp is ${TIMESTAMP}"
- BUNDLEFOLDER="distribution-${DISTRIBUTION}-${BUNDLEVERSION}"
- BUNDLE="distribution-${DISTRIBUTION}-${TIMESTAMP}.zip"
- BUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
+ export BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
+ export BUNDLE="distribution-karaf-${TIMESTAMP}.zip"
+ export ACTUALBUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
else
- BUNDLE="${BUNDLEURL##*/}"
- BUNDLEVERSION="$(basename $(dirname $BUNDLEURL))"
- BUNDLEFOLDER="distribution-${DISTRIBUTION}-${BUNDLEVERSION}"
+ export ACTUALBUNDLEURL="${BUNDLEURL}"
+ export BUNDLE="${BUNDLEURL##*/}"
+ export BUNDLEVERSION="$(basename $(dirname $BUNDLEURL))"
+ export BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
fi
-echo "Distribution bundle URL is ${BUNDLEURL}"
+echo "Distribution bundle URL is ${ACTUALBUNDLEURL}"
echo "Distribution bundle is ${BUNDLE}"
+echo "Distribution bundle version is ${BUNDLEVERSION}"
echo "Distribution folder is ${BUNDLEFOLDER}"
+echo "Nexus prefix is ${NEXUSURL_PREFIX}"
+
+if [ -f ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} ]; then
+ echo "scriptplan exists!!!"
+ echo "Changing the scriptplan path..."
+ cat ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} | sed "s:integration:${WORKSPACE}:" > scriptplan.txt
+ cat scriptplan.txt
+ for line in $( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' scriptplan.txt ); do
+ echo "Executing ${line}..."
+ source ${line}
+ done
+fi
cat > ${WORKSPACE}/controller-script.sh <<EOF
-echo "Downloading the distribution..."
+
+echo "Changing to /tmp"
cd /tmp
-wget --no-verbose '${BUNDLEURL}'
+
+echo "Downloading the distribution..."
+wget --no-verbose '${ACTUALBUNDLEURL}'
echo "Extracting the new controller..."
unzip -q ${BUNDLE}
echo "Configuring the startup features..."
-cd ${BUNDLEFOLDER}/etc
-CFG=org.apache.karaf.features.cfg
-cp \${CFG} \${CFG}.bak
-cat \${CFG}.bak | sed "s/^featuresBoot=.*/featuresBoot=config,standard,region,package,kar,ssh,management,${CONTROLLERFEATURES}/" > \${CFG}.1
-cat \${CFG}.1 | sed "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%" > \${CFG}
-cat \${CFG}
+FEATURESCONF=/tmp/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg
+sed -ie "s/featuresBoot=.*/featuresBoot=config,standard,region,package,kar,ssh,management,${ACTUALFEATURES}/g" \${FEATURESCONF}
+sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" \${FEATURESCONF}
+cat \${FEATURESCONF}
echo "Configuring the log..."
-LOG=org.ops4j.pax.logging.cfg
-cp \${LOG} \${LOG}.bak
-cat \${LOG}.bak | sed 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/' > \${LOG}
-cat \${LOG}
+LOGCONF=/tmp/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg
+sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/g' \${LOGCONF}
+cat \${LOGCONF}
echo "Configure max memory..."
-MEM=setenv
-cd ../bin
-cp \${MEM} \${MEM}.bak
-cat \${MEM}.bak | sed 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/' > \${MEM}
-cat \${MEM}
+MEMCONF=/tmp/${BUNDLEFOLDER}/bin/setenv
+sed -ie 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/g' \${MEMCONF}
+cat \${MEMCONF}
echo "Starting controller..."
-./start &
+/tmp/${BUNDLEFOLDER}/bin/start
echo "Waiting for controller to come up..."
COUNT="0"
elif (( "\$COUNT" > "600" )); then
echo Timeout Controller DOWN
echo "Dumping Karaf log..."
- cd ../data/log
- cat karaf.log
+ cat /tmp/${BUNDLEFOLDER}/data/log/karaf.log
exit 1
else
COUNT=\$(( \${COUNT} + 5 ))
sleep 60
echo "Checking OSGi bundles..."
-sshpass -p karaf ./client -u karaf 'bundle:list'
+sshpass -p karaf /tmp/${BUNDLEFOLDER}/bin/client -u karaf 'bundle:list'
EOF
SUITES=$( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' ' )
echo "Starting Robot test suites ${SUITES} ..."
-pybot -N ${TESTPLAN} -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp -v CONTROLLER:${CONTROLLER0} -v MININET:${MININET0} -v MININET_USER:${USER} -v USER_HOME:${HOME} -v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} ${TESTOPTIONS} ${SUITES}
+pybot -N ${TESTPLAN} -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp \
+-v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} -v CONTROLLER:${CONTROLLER0} \
+-v MININET:${MININET0} -v MININET_USER:${USER} -v USER_HOME:${HOME} ${TESTOPTIONS} ${SUITES} || true
echo "Fetching Karaf log"
scp ${CONTROLLER0}:/tmp/${BUNDLEFOLDER}/data/log/karaf.log .
echo "#################################################"
-echo "## include-raw-integration-deploy-controller ##"
+echo "## Install Distribution in Cluster ##"
echo "#################################################"
-set -x
+CONTROLLERMEM="2048m"
+if [ ${CONTROLLERSCOPE} == 'all' ]; then
+ ACTUALFEATURES="odl-integration-compatible-with-all,${CONTROLLERFEATURES}"
+ CONTROLLERMEM="3072m"
+else
+ ACTUALFEATURES="${CONTROLLERFEATURES}"
+fi
cat > ${WORKSPACE}/deploy-controller-script.sh <<EOF
-echo "Downloading the distribution from ${ACTUALBUNDLEURL}"
+
+echo "Changing to /tmp"
cd /tmp
+
+echo "Downloading the distribution from ${ACTUALBUNDLEURL}"
wget --no-verbose ${ACTUALBUNDLEURL}
echo "Extracting the new controller..."
unzip -q ${BUNDLE}
echo "Configuring the startup features..."
-cd ${BUNDLEFOLDER}/etc
-CFG=org.apache.karaf.features.cfg
-cp \${CFG} \${CFG}.bak
-cat \${CFG}.bak | sed "s/^featuresBoot=.*/featuresBoot=config,standard,region,package,kar,ssh,management,${CONTROLLERFEAT}/" > \${CFG}.1
-cat \${CFG}.1 | sed "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%" > \${CFG}
-cat \${CFG}
+FEATURESCONF=/tmp/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg
+sed -ie "s/featuresBoot=.*/featuresBoot=config,standard,region,package,kar,ssh,management,${ACTUALFEATURES}/g" \${FEATURESCONF}
+sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" \${FEATURESCONF}
+cat \${FEATURESCONF}
echo "Configuring the log..."
-LOG=org.ops4j.pax.logging.cfg
-cp \${LOG} \${LOG}.bak
-cat \${LOG}.bak | sed 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/' > \${LOG}
-cat \${LOG}
+LOGCONF=/tmp/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg
+sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/g' \${LOGCONF}
+cat \${LOGCONF}
echo "Configure max memory..."
-MEM=setenv
-cd ../bin
-cp \${MEM} \${MEM}.bak
-cat \${MEM}.bak | sed 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/' > \${MEM}
-cat \${MEM}
-
-echo "Starting deploy controller..."
-./start
-
-EOF
-
-cat > ${WORKSPACE}/deploy-sanitytest-controller-script.sh <<EOF
-set -x
-
-echo "Waiting for controller to come up..."
-cd /tmp
-cd ${BUNDLEFOLDER}/bin
-
-COUNT="0"
-
-
-while true; do
- RESP="\$( curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/restconf/modules -o /dev/null )"
- echo \$RESP
- if [[ \$RESP == *"200"* ]]; then
- echo Controller is UP
- break
- elif (( "\$COUNT" > "600" )); then
- echo Timeout Controller DOWN
-
- cd /tmp/${BUNDLEFOLDER}/data/
- cat karaf.log
- exit 1
- else
- COUNT=\$(( \${COUNT} + 5 ))
- sleep 5
- echo waiting \$COUNT secs...
- fi
-done
-
-
-cd /tmp/${BUNDLEFOLDER}/bin/
-
-echo "Checking OSGi bundles..."
-sshpass -p karaf ./client -u karaf 'bundle:list'
-
-pkill java
-
-set +x
+MEMCONF=/tmp/${BUNDLEFOLDER}/bin/setenv
+sed -ie 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/g' \${MEMCONF}
+cat \${MEMCONF}
EOF
-
-set +x
-
-
-
-
-###############################################################
-## Define a function to run controller-script on controller #
-###############################################################
-
-function runcontrollerscript
-{
- local CONTROLLERIP=$1
- echo "running controller $CONTROLLERIP"
- scp ${WORKSPACE}/deploy-controller-script.sh $CONTROLLERIP:/tmp
- ssh $CONTROLLERIP 'bash /tmp/deploy-controller-script.sh'
-}
-
-function sanitytestcontroller
-{
- local CONTROLLERIP=$1
- echo "sanity testing controller $CONTROLLERIP"
- scp ${WORKSPACE}/deploy-sanitytest-controller-script.sh $CONTROLLERIP:/tmp
- ssh $CONTROLLERIP 'bash /tmp/deploy-sanitytest-controller-script.sh'
-}
-
-echo "##################################"
-echo "## Loop through controller IPs #"
-echo "##################################"
-
-declare CONTROLLERIPS=($(cat slave_addresses.txt | grep CONTROLLER | awk -F = '{print $2}'))
-
-for i in "${CONTROLLERIPS[@]}"
+CONTROLLERIPS=(${CONTROLLER0} ${CONTROLLER1} ${CONTROLLER2})
+for i in "${!CONTROLLERIPS[@]}"
do
- echo "IP address is: $i"
- runcontrollerscript $i
+ echo "Installing distribution in member-$i with IP address ${CONTROLLERIPS[$i]}"
+ scp ${WORKSPACE}/deploy-controller-script.sh ${CONTROLLERIPS[$i]}:/tmp
+ ssh ${CONTROLLERIPS[$i]} 'bash /tmp/deploy-controller-script.sh'
done
-for i in "${CONTROLLERIPS[@]}"
-do
- echo "IP address is: $i"
- sanitytestcontroller $i
-done
-
-echo "###################################################"
-echo "## END include-raw-integration-deploy-controller ##"
-echo "###################################################"
-
# vim: ts=4 sw=4 sts=4 et ft=sh :
echo "#################################################"
-echo "## include-raw-integration-get-bundle_vars.txt ##"
+echo "## Inject Global Variables ##"
echo "#################################################"
-set -x
-# Create a script to run controller inside a dynamic jenkins slave
-CONTROLLERMEM="2048m"
-DISTRIBUTION="karaf"
-
-
-
-if [ ${CONTROLLERSCOPE} == 'all' ]; then
- CONTROLLERFEAT="odl-integration-compatible-with-all,${CONTROLLERFEATURES}"
- CONTROLLERMEM="3072m"
-else
- CONTROLLERFEAT="${CONTROLLERFEATURES}"
-fi
NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
if [ ${BUNDLEURL} == 'last' ]; then
- NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-${DISTRIBUTION}"
+ NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf"
# Extract the BUNDLEVERSION from the pom.xml
BUNDLEVERSION=`xpath pom.xml '/project/version/text()' 2> /dev/null`
echo "Bundle version is ${BUNDLEVERSION}"
less maven-metadata.xml
TIMESTAMP=`xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null`
echo "Nexus timestamp is ${TIMESTAMP}"
- BUNDLEFOLDER="distribution-${DISTRIBUTION}-${BUNDLEVERSION}"
- BUNDLE="distribution-${DISTRIBUTION}-${TIMESTAMP}.zip"
- BUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
+ BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
+ BUNDLE="distribution-karaf-${TIMESTAMP}.zip"
+ ACTUALBUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
else
+ ACTUALBUNDLEURL="${BUNDLEURL}"
BUNDLE="${BUNDLEURL##*/}"
BUNDLEVERSION="$(basename $(dirname $BUNDLEURL))"
- BUNDLEFOLDER="distribution-${DISTRIBUTION}-${BUNDLEVERSION}"
+ BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
fi
-echo "Distribution bundle URL is ${BUNDLEURL}"
+echo "Distribution bundle URL is ${ACTUALBUNDLEURL}"
echo "Distribution bundle is ${BUNDLE}"
+echo "Distribution bundle version is ${BUNDLEVERSION}"
echo "Distribution folder is ${BUNDLEFOLDER}"
-
-
-# write the BUNDLE values into a HERE doc to later
-# export to jenkins
+echo "Nexus prefix is ${NEXUSURL_PREFIX}"
cat > ${WORKSPACE}/bundle_vars.txt <<EOF
-CONTROLLERFEAT=${CONTROLLERFEAT}
-CONTROLLERMEM=${CONTROLLERMEM}
-DISTRIBUTION=${DISTRIBUTION}
-TIMESTAMP=${TIMESTAMP}
-NEXUSURL_PREFIX=${NEXUSURL_PREFIX}
-NEXUSPATH=${NEXUSPATH}
+ACTUALBUNDLEURL=${ACTUALBUNDLEURL}
+BUNDLE=${BUNDLE}
BUNDLEVERSION=${BUNDLEVERSION}
BUNDLEFOLDER=${BUNDLEFOLDER}
-BUNDLE=${BUNDLE}
-ACTUALBUNDLEURL=${BUNDLEURL}
+NEXUSURL_PREFIX=${NEXUSURL_PREFIX}
EOF
-set +x
-ls
-echo "#################################################"
-echo "## include-raw-integration-get-bundle_vars.txt ##"
-echo "#################################################"
+# vim: ts=4 sw=4 sts=4 et ft=sh :
-echo "#########################################################"
-echo "## include-raw-integration-start-cluster-run-test.sh ##"
-echo "#########################################################"
-# Expects $BUNDLEFOLDER to be set earlier in Jenkins job.
-set -x
+echo "#################################################"
+echo "## Verify Cluster is UP ##"
+echo "#################################################"
- if [ -z ${BUNDLEFOLDER} ] || [ -f ${BUNDLEFOLDER} ]; then
- echo "Location of ODL BUNDLEFOLDER:$BUNDLEFOLDER is not defined"
- exit 1
- fi
-
-# populate $(CONTROLLERIPS)
-
- declare CONTROLLERIPS=($(cat slave_addresses.txt | grep CONTROLLER | awk -F = '{print $2}'))
- declare -p CONTROLLERIPS
-
-# Creates a script to run controller inside a dynamic jenkins slave
-
-cat > ${WORKSPACE}/run-startandtest-controller-script.sh <<EOF
-set -x
-cd /tmp
-cd ${BUNDLEFOLDER}
-echo "BUNDLE: $BUNDLEFOLDER"
-echo "Checking status of controller..."
- bash bin/status
- bash bin/start &
-set +x
-EOF
-
-
-
-cat > ${WORKSPACE}/run-verify-controller-isup-script.sh <<EOF
-set -x
-cd /tmp
-cd ${BUNDLEFOLDER}
-echo "BUNDLE: $BUNDLEFOLDER"
-echo "Checking status of controller..."
- bash bin/status
- echo "Waiting for controller to come up..."
- COUNT="0"
+cat > ${WORKSPACE}/verify-cluster-is-up.sh <<EOF
+CONTROLLERID="member-\$1"
+CONTROLLERIP=\$2
+echo "Waiting for controller to come up..."
+COUNT="0"
while true; do
RESP="\$( curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/restconf/modules -o /dev/null )"
echo \$RESP
- if [[ \$RESP == *"200"* ]]; then
+ SHARD="\$( curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/jolokia/read/org.opendaylight.controller:Category=Shards,name=\$CONTROLLERID-shard-inventory-config,type=DistributedConfigDatastore)"
+ echo \$SHARD
+ if ([[ \$RESP == *"200"* ]] && [[ \$SHARD == *'"status":200'* ]]); then
echo Controller is UP
- SHARD="\$( curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/jolokia/read/org.opendaylight.controller:Category=Shards,name=member-0-shard-inventory-config,type=DistributedConfigDatastore)"
- echo \$SHARD
- if [[ \$SHARD == *'"status":200'* ]]
- then
break
- fi
- break
-
elif (( "\$COUNT" > "600" )); then
echo Timeout Controller DOWN
echo "Dumping Karaf log..."
- ls
- pwd
- cd data/log
- cat karaf.log
+ cat /tmp/${BUNDLEFOLDER}/data/log/karaf.log
exit 1
else
COUNT=\$(( \${COUNT} + 5 ))
fi
done
-cd /tmp/${BUNDLEFOLDER}/bin/
-
echo "Checking OSGi bundles..."
-sshpass -p karaf ./client -u karaf 'bundle:list'
+sshpass -p karaf /tmp/${BUNDLEFOLDER}/bin/client -u karaf 'bundle:list'
EOF
-
-for i in "${!CONTROLLERIPS[@]}"
+CONTROLLERIPS=(${CONTROLLER0} ${CONTROLLER1} ${CONTROLLER2})
+for i in "${!CONTROLLERIPS[@]}"
do
- echo "Copying HERE docs to ${CONTROLLERIPS[$i]} which is node $i "
- scp ${WORKSPACE}/run-startandtest-controller-script.sh \
-${CONTROLLERIPS[$i]}:/tmp
-
- scp ${WORKSPACE}/run-verify-controller-isup-script.sh \
-${CONTROLLERIPS[$i]}:/tmp
-done
-
-for i in "${!CONTROLLERIPS[@]}"
-do
- echo "Starting ${CONTROLLERIPS[$i]} on node $i "
- ssh ${CONTROLLERIPS[$i]} "bash /tmp/run-startandtest-controller-script.sh $i"&
-done
-
-for i in "${!CONTROLLERIPS[@]}"
-do
- echo "Running sanity tests on ${CONTROLLERIPS[$i]} on node $i "
- ssh ${CONTROLLERIPS[$i]} "bash /tmp/run-verify-controller-isup-script.sh $i"
+ echo “Verifying member-$i with IP address ${CONTROLLERIPS[$i]} is UP”
+ scp ${WORKSPACE}/verify-cluster-is-up.sh ${CONTROLLERIPS[$i]}:/tmp
+ ssh ${CONTROLLERIPS[$i]} "bash /tmp/verify-cluster-is-up.sh $i ${CONTROLLERIPS[$i]}"
done
echo "Cool down for 1 min :)..."
SUITES=$( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' ' )
echo "Starting Robot test suites ${SUITES} ..."
-
-
pybot -N ${TESTPLAN} -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp \
-v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} -v CONTROLLER:${CONTROLLER0} -v CONTROLLER1:${CONTROLLER1} -v CONTROLLER2:${CONTROLLER2} \
--v MININET:${MININET0} -v MININET_USER:${USER} -v USER_HOME:${HOME} ${TESTOPTIONS} ${SUITES}
-
+-v MININET:${MININET0} -v MININET_USER:${USER} -v USER_HOME:${HOME} ${TESTOPTIONS} ${SUITES} || true
-#
-echo "###### Fetching controller0-karaf.log ############"
-scp $CONTROLLER0:/tmp/$BUNDLEFOLDER/data/log/karaf.log \
-controller0-karaf.log
-# cat karaf.log
-#
-echo "###### Fetching controller1-karaf.log ############"
-scp $CONTROLLER1:/tmp/$BUNDLEFOLDER/data/log/karaf.log \
-controller1-karaf.log
-# cat controller1-karaf.log
+echo "Fetching Karaf log"
+scp $CONTROLLER0:/tmp/$BUNDLEFOLDER/data/log/karaf.log controller0-karaf.log
+scp $CONTROLLER1:/tmp/$BUNDLEFOLDER/data/log/karaf.log controller1-karaf.log
+scp $CONTROLLER2:/tmp/$BUNDLEFOLDER/data/log/karaf.log controller2-karaf.log
-echo "###### Fetching controller2-karaf.log ############"
-scp $CONTROLLER2:/tmp/$BUNDLEFOLDER/data/log/karaf.log \
-controller2-karaf.log
-# cat controller2-karaf.log
+# vim: ts=4 sw=4 sts=4 et ft=sh :
-## vim: ts=4 sw=4 sts=4 et ft=sh :
-echo "############################################################"
-echo "## END include-raw-integration-start-cluster-run-test.sh ##"
-echo "############################################################"
branch: 'stable/helium'
install:
+ - only:
+ scope: 'only'
- all:
scope: 'all'
- project:
- name: integration-csit-basic-master
+ name: integration-csit-basic
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-3node-cds-{functionality}-{install}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable-lithium'
install:
+ - only:
+ scope: 'only'
- all:
scope: 'all'
- project:
- name: integration
+ name: integration-jobs
jobs:
- 'integration-csit-verify-{stream}'
- 'integration-distribution-verify-{stream}'
stream:
- master:
branch: 'master'
- csit-list: 'aaa-csit-1node-cds-authn-only-{stream},aaa-csit-1node-cds-authn-all-{stream},openflowplugin-csit-1node-cds-flow-services-only-{stream},openflowplugin-csit-1node-cds-flow-services-all-{stream},l2switch-csit-1node-cds-switch-only-{stream},l2switch-csit-1node-cds-switch-all-{stream},vtn-csit-1node-cds-manager-only-{stream},vtn-csit-1node-cds-manager-all-{stream},lispflowmapping-csit-1node-cds-all-only-{stream},lispflowmapping-csit-1node-cds-all-all-{stream}'
+ csit-list: 'controller-csit-1node-cds-netconf-only-{stream},controller-csit-1node-cds-netconf-all-{stream},aaa-csit-1node-cds-authn-only-{stream},aaa-csit-1node-cds-authn-all-{stream},openflowplugin-csit-1node-cds-flow-services-only-{stream},openflowplugin-csit-1node-cds-flow-services-all-{stream},openflowplugin-csit-1node-cds-scalability-only-{stream},openflowplugin-csit-1node-cds-scalability-all-{stream},openflowplugin-csit-1node-cds-cbench-performance-only-{stream},openflowplugin-csit-1node-cds-config-performance-only-{stream},l2switch-csit-1node-cds-switch-only-{stream},l2switch-csit-1node-cds-switch-all-{stream},l2switch-csit-1node-cds-scalability-only-{stream},l2switch-csit-1node-cds-scalability-all-{stream},vtn-csit-1node-cds-manager-only-{stream},vtn-csit-1node-cds-manager-all-{stream},lispflowmapping-csit-1node-cds-all-only-{stream},lispflowmapping-csit-1node-cds-all-all-{stream}'
+
+ - stable-lithium:
+ branch: 'stable/lithium'
+ csit-list: 'controller-csit-1node-cds-netconf-only-{stream},controller-csit-1node-cds-netconf-all-{stream},aaa-csit-1node-cds-authn-only-{stream},aaa-csit-1node-cds-authn-all-{stream},openflowplugin-csit-1node-cds-flow-services-only-{stream},openflowplugin-csit-1node-cds-flow-services-all-{stream},openflowplugin-csit-1node-cds-scalability-only-{stream},openflowplugin-csit-1node-cds-scalability-all-{stream},openflowplugin-csit-1node-cds-cbench-performance-only-{stream},openflowplugin-csit-1node-cds-config-performance-only-{stream},l2switch-csit-1node-cds-switch-only-{stream},l2switch-csit-1node-cds-switch-all-{stream},l2switch-csit-1node-cds-scalability-only-{stream},l2switch-csit-1node-cds-scalability-all-{stream},vtn-csit-1node-cds-manager-only-{stream},vtn-csit-1node-cds-manager-all-{stream},lispflowmapping-csit-1node-cds-all-only-{stream},lispflowmapping-csit-1node-cds-all-all-{stream}'
- stable-helium:
branch: 'stable/helium'
- csit-list: 'controller-csit-1node-imds-nsf-only-{stream},controller-csit-1node-imds-nsf-all-{stream},aaa-csit-1node-imds-authn-only-{stream},aaa-csit-1node-imds-authn-all-{stream},openflowplugin-csit-1node-imds-flow-services-only-{stream},openflowplugin-csit-1node-imds-flow-services-all-{stream},l2switch-csit-1node-imds-switch-only-{stream},l2switch-csit-1node-imds-switch-all-{stream},vtn-csit-1node-imds-manager-only-{stream},vtn-csit-1node-imds-manager-all-{stream},lispflowmapping-csit-1node-imds-all-only-{stream},lispflowmapping-csit-1node-imds-all-all-{stream}'
+ csit-list: 'controller-csit-1node-imds-nsf-only-{stream},controller-csit-1node-imds-nsf-all-{stream},controller-csit-1node-imds-netconf-only-{stream},controller-csit-1node-imds-netconf-all-{stream},aaa-csit-1node-imds-authn-only-{stream},aaa-csit-1node-imds-authn-all-{stream},openflowplugin-csit-1node-imds-flow-services-only-{stream},openflowplugin-csit-1node-imds-flow-services-all-{stream},l2switch-csit-1node-imds-switch-only-{stream},l2switch-csit-1node-imds-switch-all-{stream},vtn-csit-1node-imds-manager-only-{stream},vtn-csit-1node-imds-manager-all-{stream},lispflowmapping-csit-1node-imds-all-only-{stream},lispflowmapping-csit-1node-imds-all-all-{stream}'
jdk: 'openjdk7'
- integration-bundleurl:
bundleurl: 'last'
+ triggers:
+ - timed: 'H H * * *'
+
builders:
- trigger-builds:
- project: '{csit-list}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable-lithium'
project: 'integration'
jdk: 'openjdk7'
-- job-template:
- name: '{project}-distribution-{stream}'
-
- project-type: maven
- node: dynamic_merge
- jdk: '{jdk}'
-
- logrotate:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: 'integration'
-
- scm:
- - git-scm:
- credentials-id: '{ssh-credentials}'
- refspec: ''
- branch: '{branch}'
-
- wrappers:
- - build-timeout
- - ssh-agent-credentials:
- users:
- - '{ssh-credentials}'
-
- triggers:
- - reverse:
- jobs: '{project}-merge-{stream}'
- result: 'success'
-
- prebuilders:
- - wipe-org-opendaylight-repo
-
- maven:
- maven-name: '{mvn32}'
- root-pom: 'pom.xml'
- goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
- maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
- settings: '{integration-settings}'
- global-settings: '{odl-global-settings}'
-
- publishers:
- - email-notification:
- email-prefix: '[{project}]'
- - maven-deploy:
- id: ''
- unique-version: true
- deploy-unstable: false
-
- job-template:
name: '{project}-csit-verify-{functionality}-{stream}'
--- /dev/null
+- project:
+ name: iotdm-csit-basic
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'iotdm'
+
+ # The functionality under test
+ functionality: 'basic'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
+
+ install:
+ - only:
+ scope: 'only'
+ - all:
+ scope: 'all'
+
+ # Features to install
+ install-features: 'odl-iotdm-onem2m'
+
+ # Robot custom options
+ robot-options: ''
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'iotdm-distribution-{stream}'
BRANCHES:
- master:
jdks: openjdk7,openjdk8
+- stable/lithium:
+ jdks: openjdk7,openjdk8
DEPENDENCIES: controller,yangtools,odlparent,aaa
- 'iotdm-verify-{stream}'
- 'iotdm-merge-{stream}'
- 'iotdm-daily-{stream}'
+ - 'iotdm-distribution-{stream}'
- 'iotdm-integration-{stream}'
- 'iotdm-sonar'
- 'iotdm-clm'
jdks:
- openjdk7
- openjdk8
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
+ - openjdk8
project: 'iotdm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[iotdm]'
- maven-deploy:
email-prefix: '[iotdm]'
- jacoco-report
+- job-template:
+ name: 'iotdm-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'iotdm-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
--- /dev/null
+- project:
+ name: l2switch-csit-host-scalability-daily
+ jobs:
+ - '{project}-csit-periodic-1node-cds-{functionality}-{install}-{stream}'
+
+ # The project name
+ project: 'l2switch'
+
+ # The functionality under test
+ functionality: 'host-scalability-daily'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
+
+ install:
+ - only:
+ scope: 'only'
+
+ # Features to install
+ install-features: 'odl-l2switch-all,odl-l2switch-switch-rest'
+
+ # Robot custom options
+ robot-options: ''
+
+ # Trigger jobs (daily)
+ schedule: 'H H * * *'
+
+ # Plot Info
+ 01-plot-title: 'Max number of Hosts'
+ 01-plot-yaxis: 'Network Hosts'
+ 01-plot-group: 'Inventory Host Scalability'
+ 01-plot-data-file: 'hosts.csv'
- project:
- name: l2switch-csit-scalability-master
+ name: l2switch-csit-scalability
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
- project:
- name: l2switch-csit-switch-master
+ name: l2switch-csit-switch
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
+++ /dev/null
-- project:
- name: l2switch-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'l2switch'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
- 'l2switch-verify-{stream}'
- 'l2switch-merge-{stream}'
- 'l2switch-daily-{stream}'
+ - 'l2switch-distribution-{stream}'
- 'l2switch-integration-{stream}'
- 'l2switch-sonar'
- 'l2switch-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[l2switch]'
- maven-deploy:
email-prefix: '[l2switch]'
- jacoco-report
+- job-template:
+ name: 'l2switch-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'l2switch-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
--- /dev/null
+- project:
+ name: lacp-csit-lacp-master
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'lacp'
+
+ # The functionality under test
+ functionality: 'lacp'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+
+ install:
+ - only:
+ scope: 'only'
+ - all:
+ scope: 'all'
+
+ # Features to install
+ install-features: 'odl-lacp-ui'
+
+ # Robot custom options
+ robot-options: ' '
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream},lacp-distribution-{stream}'
+
BRANCHES:
- master:
jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
MVN_GOALS: clean install javadoc:aggregate -DrepoBuild -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
MVN_OPTS: -Xmx1024m -XX:MaxPermSize=256m
DEPENDENCIES: yangtools,controller,openflowjava,openflowplugin,odlparent
- 'lacp-verify-{stream}'
- 'lacp-merge-{stream}'
- 'lacp-daily-{stream}'
+ - 'lacp-distribution-{stream}'
- 'lacp-integration-{stream}'
- 'lacp-sonar'
- 'lacp-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'lacp'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[lacp]'
- maven-deploy:
email-prefix: '[lacp]'
- jacoco-report
+- job-template:
+ name: 'lacp-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'lacp-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- project:
- name: lispflowmapping-csit-all-master
+ name: lispflowmapping-csit-all
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
+++ /dev/null
-- project:
- name: lispflowmapping-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'lispflowmapping'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
- 'lispflowmapping-verify-{stream}'
- 'lispflowmapping-merge-{stream}'
- 'lispflowmapping-daily-{stream}'
+ - 'lispflowmapping-distribution-{stream}'
- 'lispflowmapping-integration-{stream}'
- 'lispflowmapping-sonar'
- 'lispflowmapping-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[lispflowmapping]'
- maven-deploy:
email-prefix: '[lispflowmapping]'
- jacoco-report
+- job-template:
+ name: 'lispflowmapping-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'lispflowmapping-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
BRANCHES:
- master:
jdks: openjdk7,openjdk8
+- stable/lithium:
+ jdks: openjdk7,openjdk8
- 'neutron-verify-{stream}'
- 'neutron-merge-{stream}'
- 'neutron-daily-{stream}'
+ - 'neutron-distribution-{stream}'
- 'neutron-integration-{stream}'
- 'neutron-sonar'
- 'neutron-clm'
jdks:
- openjdk7
- openjdk8
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
+ - openjdk8
project: 'neutron'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[neutron]'
- maven-deploy:
email-prefix: '[neutron]'
- jacoco-report
+- job-template:
+ name: 'neutron-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'neutron-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
BRANCHES:
- master:
jdks: openjdk7
-DEPENDENCIES: odlparent
+- stable/lithium:
+ jdks: openjdk7
+DEPENDENCIES: controller,odlparent,vtn,yangtools,groupbasedpolicy
- 'nic-verify-{stream}'
- 'nic-merge-{stream}'
- 'nic-daily-{stream}'
+ - 'nic-distribution-{stream}'
- 'nic-integration-{stream}'
- 'nic-sonar'
- 'nic-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'nic'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[nic]'
- maven-deploy:
email-prefix: '[nic]'
- jacoco-report
+- job-template:
+ name: 'nic-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'nic-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
triggers:
- reverse:
- jobs: 'odlparent-merge-{stream}'
+ jobs: 'controller-merge-{stream},odlparent-merge-{stream},vtn-merge-{stream},yangtools-merge-{stream},groupbasedpolicy-merge-{stream}'
result: 'success'
prebuilders:
publishers:
- email-notification:
- email-prefix: '[nic] [odlparent]'
+ email-prefix: '[nic] [controller] [odlparent] [vtn] [yangtools] [groupbasedpolicy]'
- jacoco-report
- job-template:
- 'odlparent-verify-{stream}'
- 'odlparent-merge-{stream}'
- 'odlparent-daily-{stream}'
+ - 'odlparent-distribution-{stream}'
- 'odlparent-integration-{stream}'
- 'odlparent-sonar'
- 'odlparent-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[odlparent]'
- maven-deploy:
email-prefix: '[odlparent]'
- jacoco-report
+- job-template:
+ name: 'odlparent-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'odlparent-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+++ /dev/null
-- project:
- name: openflowjava-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'openflowjava'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
- 'openflowjava-verify-{stream}'
- 'openflowjava-merge-{stream}'
- 'openflowjava-daily-{stream}'
+ - 'openflowjava-distribution-{stream}'
- 'openflowjava-integration-{stream}'
- 'openflowjava-sonar'
- 'openflowjava-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[openflowjava]'
- maven-deploy:
email-prefix: '[openflowjava]'
- jacoco-report
+- job-template:
+ name: 'openflowjava-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'openflowjava-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- project:
- name: openflowplugin-csit-cbench-daily-master
+ name: openflowplugin-csit-cbench-daily
jobs:
- '{project}-csit-periodic-1node-cds-{functionality}-{install}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
- project:
- name: openflowplugin-csit-cbench-performance-master
+ name: openflowplugin-csit-cbench-performance
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
- project:
- name: openflowplugin-csit-config-performance-master
+ name: openflowplugin-csit-config-performance
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
--- /dev/null
+- project:
+ name: openflowplugin-csit-flow-services-more-lithium-redesign
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+
+ # The project name
+ project: 'openflowplugin'
+
+ # The functionality under test
+ functionality: 'flow-services-more-lithium-redesign'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+
+ install:
+ - only:
+ scope: 'only'
+
+ # Features to install
+ install-features: 'odl-openflowplugin-flow-services-ui-li'
+
+ # Robot custom options
+ robot-options: '-e adsal'
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream}'
--- /dev/null
+- project:
+ name: openflowplugin-csit-flow-services-more
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'openflowplugin'
+
+ # The functionality under test
+ functionality: 'flow-services-more'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
+
+ install:
+ - only:
+ scope: 'only'
+
+ # Features to install
+ install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-adsal-compatibility,odl-nsf-all'
+
+ # Robot custom options
+ robot-options: ''
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream}'
+
- project:
- name: openflowplugin-csit-flow-services-master
+ name: openflowplugin-csit-flow-services
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
- project:
- name: openflowplugin-csit-scalability-daily-master
+ name: openflowplugin-csit-scalability-daily
jobs:
- '{project}-csit-periodic-1node-cds-{functionality}-{install}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
- project:
- name: openflowplugin-csit-scalability-master
+ name: openflowplugin-csit-scalability
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
--- /dev/null
+- project:
+ name: openflowplugin-csit-statistics-basic-lithium-redesign
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+
+ # The project name
+ project: 'openflowplugin'
+
+ # The functionality under test
+ functionality: 'statistics-basic-lithium-redesign'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+
+ install:
+ - only:
+ scope: 'only'
+
+ # Features to install
+ install-features: 'odl-openflowplugin-flow-services-ui-li'
+
+ # Robot custom options
+ robot-options: ''
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: ''
+
+++ /dev/null
-- project:
- name: openflowplugin-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'openflowplugin'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
jdks: openjdk7,openjdk8
- stable/helium:
jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7,openjdk8
MVN_GOALS: -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate
#MVN_OPTS: -Xmx1024m -XX:MaxPermSize=256m
DEPENDENCIES: yangtools,controller,openflowjava
- 'openflowplugin-verify-{stream}'
- 'openflowplugin-merge-{stream}'
- 'openflowplugin-daily-{stream}'
+ - 'openflowplugin-distribution-{stream}'
- 'openflowplugin-integration-{stream}'
- 'openflowplugin-sonar'
- 'openflowplugin-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
+ - openjdk8
project: 'openflowplugin'
email-prefix: '[openflowplugin]'
- jacoco-report
+- job-template:
+ name: 'openflowplugin-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'openflowplugin-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+++ /dev/null
-- project:
- name: ovsdb-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'ovsdb'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
DEPENDENCIES: odlparent,controller,yangtools,openflowplugin,neutron
-JOB_TEMPLATES: verify,merge,daily,integration
\ No newline at end of file
+JOB_TEMPLATES: verify,merge,daily,distribution,integration
- 'ovsdb-verify-{stream}'
- 'ovsdb-merge-{stream}'
- 'ovsdb-daily-{stream}'
+ - 'ovsdb-distribution-{stream}'
- 'ovsdb-integration-{stream}'
- 'ovsdb-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'ovsdb'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[ovsdb]'
- maven-deploy:
email-prefix: '[ovsdb]'
- jacoco-report
+- job-template:
+ name: 'ovsdb-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'ovsdb-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
-DEPENDENCIES: controller,yangtools
\ No newline at end of file
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
+DEPENDENCIES: controller,yangtools
- 'packetcable-verify-{stream}'
- 'packetcable-merge-{stream}'
- 'packetcable-daily-{stream}'
+ - 'packetcable-distribution-{stream}'
- 'packetcable-integration-{stream}'
- 'packetcable-sonar'
- 'packetcable-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'packetcable'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[packetcable]'
- maven-deploy:
email-prefix: '[packetcable]'
- jacoco-report
+- job-template:
+ name: 'packetcable-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'packetcable-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'persistence-verify-{stream}'
- 'persistence-merge-{stream}'
- 'persistence-daily-{stream}'
+ - 'persistence-distribution-{stream}'
- 'persistence-integration-{stream}'
- 'persistence-sonar'
- 'persistence-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[persistence]'
- maven-deploy:
email-prefix: '[persistence]'
- jacoco-report
+- job-template:
+ name: 'persistence-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'persistence-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
BRANCHES:
- master:
jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
DEPENDENCIES: odlparent,controller,yangtools,groupbasedpolicy
- 'reservation-verify-{stream}'
- 'reservation-merge-{stream}'
- 'reservation-daily-{stream}'
+ - 'reservation-distribution-{stream}'
- 'reservation-integration-{stream}'
- 'reservation-sonar'
- 'reservation-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'reservation'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[reservation]'
- maven-deploy:
email-prefix: '[reservation]'
- jacoco-report
+- job-template:
+ name: 'reservation-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'reservation-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'sdninterfaceapp-verify-{stream}'
- 'sdninterfaceapp-merge-{stream}'
- 'sdninterfaceapp-daily-{stream}'
+ - 'sdninterfaceapp-distribution-{stream}'
- 'sdninterfaceapp-integration-{stream}'
- 'sdninterfaceapp-sonar'
- 'sdninterfaceapp-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[sdninterfaceapp]'
- maven-deploy:
email-prefix: '[sdninterfaceapp]'
- jacoco-report
+- job-template:
+ name: 'sdninterfaceapp-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'sdninterfaceapp-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
MVN_OPTS: -Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true
DEPENDENCIES: odlparent,yangtools,controller,openflowplugin,ovsdb,lispflowmapping
- 'sfc-verify-{stream}'
- 'sfc-merge-{stream}'
- 'sfc-daily-{stream}'
+ - 'sfc-distribution-{stream}'
- 'sfc-integration-{stream}'
- 'sfc-sonar'
- 'sfc-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'sfc'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[sfc]'
- maven-deploy:
email-prefix: '[sfc]'
- jacoco-report
+- job-template:
+ name: 'sfc-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'sfc-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'snbi-verify-{stream}'
- 'snbi-merge-{stream}'
- 'snbi-daily-{stream}'
+ - 'snbi-distribution-{stream}'
- 'snbi-integration-{stream}'
- 'snbi-sonar'
- 'snbi-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[snbi]'
- maven-deploy:
email-prefix: '[snbi]'
- jacoco-report
+- job-template:
+ name: 'snbi-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'snbi-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- project:
- name: snmp-csit-basic-master
+ name: snmp-csit-basic
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
+++ /dev/null
-- project:
- name: snmp-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'snmp'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
-
- jdk: 'openjdk7'
-
- 'snmp-verify-{stream}'
- 'snmp-merge-{stream}'
- 'snmp-daily-{stream}'
+ - 'snmp-distribution-{stream}'
- 'snmp-integration-{stream}'
- 'snmp-sonar'
- 'snmp-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[snmp]'
- maven-deploy:
email-prefix: '[snmp]'
- jacoco-report
+- job-template:
+ name: 'snmp-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'snmp-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
DEPENDENCIES: odlparent,controller,yangtools
- 'snmp4sdn-verify-{stream}'
- 'snmp4sdn-merge-{stream}'
- 'snmp4sdn-daily-{stream}'
+ - 'snmp4sdn-distribution-{stream}'
- 'snmp4sdn-integration-{stream}'
- 'snmp4sdn-sonar'
- 'snmp4sdn-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'snmp4sdn'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[snmp4sdn]'
- maven-deploy:
email-prefix: '[snmp4sdn]'
- jacoco-report
+- job-template:
+ name: 'snmp4sdn-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'snmp4sdn-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'sxp-verify-{stream}'
- 'sxp-merge-{stream}'
- 'sxp-daily-{stream}'
+ - 'sxp-distribution-{stream}'
- 'sxp-integration-{stream}'
- 'sxp-sonar'
- 'sxp-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[sxp]'
- maven-deploy:
email-prefix: '[sxp]'
- jacoco-report
+- job-template:
+ name: 'sxp-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'sxp-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+++ /dev/null
-- project:
- name: tcpmd5-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'tcpmd5'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
- 'tcpmd5-verify-{stream}'
- 'tcpmd5-merge-{stream}'
- 'tcpmd5-daily-{stream}'
+ - 'tcpmd5-distribution-{stream}'
- 'tcpmd5-integration-{stream}'
- 'tcpmd5-sonar'
- 'tcpmd5-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[tcpmd5]'
- maven-deploy:
email-prefix: '[tcpmd5]'
- jacoco-report
+- job-template:
+ name: 'tcpmd5-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'tcpmd5-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'toolkit-verify-{stream}'
- 'toolkit-merge-{stream}'
- 'toolkit-daily-{stream}'
+ - 'toolkit-distribution-{stream}'
- 'toolkit-integration-{stream}'
- 'toolkit-sonar'
- 'toolkit-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[toolkit]'
- maven-deploy:
email-prefix: '[toolkit]'
- jacoco-report
+- job-template:
+ name: 'toolkit-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'toolkit-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- 'topoprocessing-verify-{stream}'
- 'topoprocessing-merge-{stream}'
- 'topoprocessing-daily-{stream}'
+ - 'topoprocessing-distribution-{stream}'
- 'topoprocessing-integration-{stream}'
- 'topoprocessing-sonar'
- 'topoprocessing-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[topoprocessing]'
- maven-deploy:
email-prefix: '[topoprocessing]'
- jacoco-report
+- job-template:
+ name: 'topoprocessing-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'topoprocessing-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
--- /dev/null
+- project:
+ name: tsdr-csit-tsdr-h2
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'tsdr'
+
+ # The functionality under test to verify
+ functionality: 'h2-datastore'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+
+ install:
+ - only:
+ scope: 'only'
+ - all:
+ scope: 'all'
+
+ # Features to install
+ install-features: 'odl-restconf,odl-tsdr-all'
+
+ # Robot custom options
+ robot-options: ' '
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream},tsdr-distribution-{stream}'
+
--- /dev/null
+- project:
+ name: tsdr-csit-tsdr
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'tsdr'
+
+ # The functionality under test to verify
+ functionality: 'hbase-datastore'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
+
+ install:
+ - only:
+ scope: 'only'
+ - all:
+ scope: 'all'
+
+ # Features to install
+ install-features: 'odl-restconf,odl-tsdr-hbase'
+
+ # Robot custom options
+ robot-options: ' '
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream},tsdr-distribution-{stream}'
+
BRANCHES:
- master:
jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
MVN_GOALS: clean install javadoc:aggregate -DrepoBuild -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
MVN_OPTS: -Xmx1024m -XX:MaxPermSize=256m
- 'tsdr-verify-{stream}'
- 'tsdr-merge-{stream}'
- 'tsdr-daily-{stream}'
+ - 'tsdr-distribution-{stream}'
- 'tsdr-integration-{stream}'
- 'tsdr-sonar'
- 'tsdr-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'tsdr'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[tsdr]'
- maven-deploy:
email-prefix: '[tsdr]'
- jacoco-report
+- job-template:
+ name: 'tsdr-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'tsdr-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
--- /dev/null
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
- 'ttp-verify-{stream}'
- 'ttp-merge-{stream}'
- 'ttp-daily-{stream}'
+ - 'ttp-distribution-{stream}'
- 'ttp-integration-{stream}'
- 'ttp-sonar'
- 'ttp-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'ttp'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[ttp]'
- maven-deploy:
email-prefix: '[ttp]'
- jacoco-report
+- job-template:
+ name: 'ttp-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'ttp-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- project:
- name: usc-csit-channel-master
+ name: usc-csit-channel
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
+++ /dev/null
-- project:
- name: usc-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'usc'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
-
- jdk: 'openjdk7'
-
BRANCHES:
- master:
jdks: openjdk7
-DEPENDENCIES: controller,yangtools,odlparent
\ No newline at end of file
+- stable/lithium:
+ jdks: openjdk7
+DEPENDENCIES: controller,yangtools,odlparent
- 'usc-verify-{stream}'
- 'usc-merge-{stream}'
- 'usc-daily-{stream}'
+ - 'usc-distribution-{stream}'
- 'usc-integration-{stream}'
- 'usc-sonar'
- 'usc-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'usc'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[usc]'
- maven-deploy:
email-prefix: '[usc]'
- jacoco-report
+- job-template:
+ name: 'usc-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'usc-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
--- /dev/null
+- project:
+ name: vpnservice-csit-vpnservice
+ jobs:
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'vpnservice'
+
+ # The functionality under test
+ functionality: 'vpnservice'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
+
+ install:
+ - only:
+ scope: 'only'
+ - all:
+ scope: 'all'
+
+ # Features to install
+ install-features: 'odl-vpnservice-core'
+
+ # Robot custom options
+ robot-options: ' '
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream},vpnservice-distribution-{stream}'
+
BRANCHES:
- master:
jdks: openjdk7
-DEPENDENCIES: controller,yangtools,odlparent,openflowplugin
\ No newline at end of file
+- stable/lithium:
+ jdks: openjdk7
+DEPENDENCIES: controller,yangtools,odlparent,openflowplugin
- 'vpnservice-verify-{stream}'
- 'vpnservice-merge-{stream}'
- 'vpnservice-daily-{stream}'
+ - 'vpnservice-distribution-{stream}'
- 'vpnservice-integration-{stream}'
- 'vpnservice-sonar'
- 'vpnservice-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'vpnservice'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[vpnservice]'
- maven-deploy:
email-prefix: '[vpnservice]'
- jacoco-report
+- job-template:
+ name: 'vpnservice-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'vpnservice-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
- project:
- name: vtn-csit-manager-master
+ name: vtn-csit-manager
jobs:
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
- '{project}-csit-verify-{functionality}-{stream}'
stream:
- master:
branch: 'master'
+ - stable-lithium:
+ branch: 'stable/lithium'
install:
- only:
scope: 'all'
# Features to install
- install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-adsal-compatibility,odl-vtn-manager-all'
+ install-features: 'odl-vtn-manager-rest,odl-vtn-manager-neutron'
# Robot custom options
robot-options: ''
+++ /dev/null
-- project:
- name: vtn-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'vtn'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
+BRANCHES:
+- master:
+ jdks: openjdk7
+- stable/helium:
+ jdks: openjdk7
+- stable/lithium:
+ jdks: openjdk7
DEPENDENCIES: odlparent,controller,yangtools,openflowplugin,ovsdb,neutron
MVN_GOALS: clean install -V -Pintegrationtests,strictcheck,docs -Dvtn.build.jobs=2 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
ARCHIVE_ARTIFACTS: manager/dist/*/target/*.zip, coordinator/dist/target/*.bz2, manager/northbound/target/site/wsdocs/**, manager/api/target/*-javadoc.jar, manager/api/target/apidocs/**
- 'vtn-verify-{stream}'
- 'vtn-merge-{stream}'
- 'vtn-daily-{stream}'
+ - 'vtn-distribution-{stream}'
- 'vtn-integration-{stream}'
- 'vtn-sonar'
- 'vtn-clm'
jdk: openjdk7
jdks:
- openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'vtn'
email-prefix: '[vtn]'
- jacoco-report
+- job-template:
+ name: 'vtn-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'vtn-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
+++ /dev/null
-- project:
- name: yangtools-distribution
- jobs:
- - '{project}-distribution-{stream}'
-
- # The project name
- project: 'yangtools'
-
- # The project branches
- stream:
- - master:
- branch: 'master'
- - stable-helium:
- branch: 'stable/helium'
-
- jdk: 'openjdk7'
-
- stable/lithium:
jdks: openjdk7,openjdk8
DEPENDENCIES: odlparent
-JOB_TEMPLATES: merge,daily,integration,sonar
+JOB_TEMPLATES: merge,daily,distribution,integration,sonar
jobs:
- 'yangtools-merge-{stream}'
- 'yangtools-daily-{stream}'
+ - 'yangtools-distribution-{stream}'
- 'yangtools-integration-{stream}'
- 'yangtools-sonar'
- 'yangtools-clm'
- findbugs
publishers:
-
- email-notification:
email-prefix: '[yangtools]'
- maven-deploy:
email-prefix: '[yangtools]'
- jacoco-report
+- job-template:
+ name: 'yangtools-distribution-{stream}'
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'yangtools-integration-{stream}'
disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
# stream: branch with - in place of / (eg. stable-helium)
if cfg.get('JOB_TEMPLATES'):
templates = cfg.get('JOB_TEMPLATES')
else:
- templates = "verify,merge,daily,integration,sonar"
+ templates = "verify,merge,daily,distribution,integration,sonar"
templates += ",clm" # ensure we always create a clm job for all projects
###################
line = re.sub("EMAIL_PREFIX", email_prefix, line)
line = re.sub("SONAR_BRANCH", sonar_branch, line)
line = re.sub("ARCHIVE_ARTIFACTS", archive_artifacts, line)
+ # The previous command may have created superfluous lines.
+ # If a line has no non-whitespace, it has to be '\n' only.
+ line = re.sub(r'^\s+\n', "", line)
outfile.write(line)
outfile.write("\n")
# vim: sw=4 ts=4 sts=4 et tw=72 :
yum clean all
-# Add the ODL yum repo (not needed for java nodes, but useful for
-# potential later layers)
-yum install -q -y https://nexus.opendaylight.org/content/repositories/opendaylight-yum-epel-6-x86_64/rpm/opendaylight-release/0.1.0-1.el6.noarch/opendaylight-release-0.1.0-1.el6.noarch.rpm
# Make sure the system is fully up to date
yum update -q -y
-# Add in git (needed for most everything) and XML-XPath as it is useful
-# for doing CLI based CML parsing of POM files
-yum install -q -y git perl-XML-XPath
-
-# install all available openjdk-devel sets
-yum install -q -y 'java-*-openjdk-devel'
-
-# we currently use Java7 (aka java-1.7.0-openjdk) as our standard make
-# sure that this is the java that alternatives is pointing to, dynamic
-# spin-up scripts can switch to any of the current JREs installed if
-# needed
-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
-alternatives --set java_sdk_openjdk /usr/lib/jvm/java-1.7.0-openjdk.x86_64
-
-# To handle the prompt style that is expected all over the environment
-# with how use use robotframework we need to make sure that it is
-# consistent for any of the users that are created during dynamic spin
-# ups
-echo 'PS1="[\u@\h \W]> "' >> /etc/skel/.bashrc
-
# The following packages are not needed by all projects, but they are
# needed by enough to make them useful everywhere
yum install -q -y @development perl-{Digest-SHA,ExtUtils-MakeMaker} \
ant {boost,gtest,json-c,libcurl,libxml2,libvirt,openssl}-devel \
- {readline,unixODBC}-devel
+ {readline,unixODBC}-devel yum-utils
# tcpmd5 is wanting to do 32bit ARM cross-compilation and is specifically
# requesting the following be installed (note the kernel headers are
# an EL6 system some of these packages are not availalble (or at the
# wrong version) in publically available repositories as such this
# should only really be done on an EL7 (or F18+) system
-yum install -q -y {jansson,libevent,libevent2,libnl,libuuid}-devel \
- python-{devel,virtualenv,setuptools}
+yum install -q -y {jansson,libevent,libnl,libuuid}-devel \
+ python-{devel,virtualenv,setuptools,pip}
+
+#The following is needed for the new code in vtn project.
+#these packages will enable C# compilation.
+rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
+#Added the mono tools repository
+yum-config-manager -q -y --add-repo http://origin-download.mono-project.com/repo/centos6/
+#Install the nuget binary
+yum install -q -y http://origin-download.mono-project.com/repo/centos/n/nuget/nuget-2.8.3+md58+dhx1-0.noarch.rpm
+#install the mono toolchain
+yum -q -y install mono-complete
# vim: sw=4 ts=4 sts=4 et tw=72 :
yum clean all
-# Add the ODL yum repo (not needed for java nodes, but useful for
-# potential later layers)
-yum install -q -y https://nexus.opendaylight.org/content/repositories/opendaylight-yum-epel-6-x86_64/rpm/opendaylight-release/0.1.0-1.el6.noarch/opendaylight-release-0.1.0-1.el6.noarch.rpm
# Make sure the system is fully up to date
yum update -q -y
-# Add in git (needed for most everything) and XML-XPath as it is useful
-# for doing CLI based CML parsing of POM files
-yum install -q -y git perl-XML-XPath
-# install all available openjdk-devel sets
-yum install -q -y 'java-*-openjdk-devel'
-
-# we currently use Java7 (aka java-1.7.0-openjdk) as our standard make
-# sure that this is the java that alternatives is pointing to, dynamic
-# spin-up scripts can switch to any of the current JREs installed if
-# needed
-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
-alternatives --set java_sdk_openjdk /usr/lib/jvm/java-1.7.0-openjdk.x86_64
-
-# To handle the prompt style that is expected all over the environment
-# with how use use robotframework we need to make sure that it is
-# consistent for any of the users that are created during dynamic spin
-# ups
-echo 'PS1="[\u@\h \W]> "' >> /etc/skel/.bashrc
--- /dev/null
+basic-mininet-fedora-node can be used to take an already converted
+Rackspace native base image to a basic system with mininet and other
+test tools for use in the OpenDaylight build and testing environment
+
+Please see the rackspace-convert-base vagrant setup for creation of the
+needed base image.
+
+This vagrant expects (by default) a personal Rackspace image named
+
+'Fedora 21 - Vagrant ready'
+
+To spin up and utilize.
+
+$ RSIMAGE='${baseimagename}' vagrant up --provider=rackspace
+
+Will execute this vagrant against a differently named base image
+
+$ RSRESEAL=true vagrant up --provider=rackspace
+
+NOTE: resealing will cause the vagrant to run the resealing operation.
+This operation will intentionally destroy current SSH pubkeys installed
+on the system as well as reset log files and network configurations. You
+have been warned.
--- /dev/null
+# -*- mode: ruby -*-
+# vi: set ft=ruby sw=2 ts=2 sts=2 et :
+
+# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
+VAGRANTFILE_API_VERSION = "2"
+
+Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
+ # root off of the rackspace provider dummy box
+ config.vm.box = "dummy"
+
+ # rackspace systems, even with cloud-init
+ # don't seem to have the cloud int user ${osname} (or similar)
+ # getting the ssh key for some reason, root does for sure
+ # so use that
+ config.ssh.username = 'root'
+
+ # Fedora and EL systems default to requiring tty for sudo
+ # This should have been disabled with the Vagrant ready
+ # base box conversion (see rackspace-convert-base vagrant)
+ # but just to be safe
+ config.ssh.pty = true
+
+ # make sure to set the following in your
+ # ~/.vagrant.d/boxes/dummy/0/rackspace/Vagrantfile
+ # rs.username
+ # rs.api_key
+ # rs.rackspace_region
+ #
+ # If you are not using an SSH token / smartcard also set this
+ # rs.key_name
+ # config.ssh.private_key_path -- set this outside the rackspace block
+ # in your base box
+ config.vm.provider :rackspace do |rs|
+ # create these base builds always on the smallest system possible
+ rs.flavor = 'general1-1'
+
+ # allow for switching to ORD cloud but default to DFW
+ if (ENV['RSREGION'] == 'ord')
+ rs.rackspace_region = :ord
+ else
+ rs.rackspace_region = :dfw
+ end
+
+ # Default the Fedora 21 - Vagrant ready image unless overriden by a RSIMAGE
+ # environment variable
+ if ENV['RSIMAGE']
+ rs.image = ENV['RSIMAGE']
+ else
+ rs.image = 'Fedora 21 - Vagrant ready'
+ end
+ end
+
+ # run our bootstrapping for the ovsdb-devstack system
+ config.vm.provision 'shell', path: 'bootstrap.sh'
+
+ # set RSRESEAL to... anything if you want to snap an image of this box
+ # not setting the environment variable will cause the system to come
+ # up fully and not be in a resealable state
+ if ENV['RSRESEAL']
+ config.vm.provision 'shell', path: 'system_reseal.sh'
+ end
+end
--- /dev/null
+#!/bin/bash
+
+# vim: sw=4 ts=4 sts=4 et tw=72 :
+
+# update os
+yum clean all
+yum update -q -y
+
+# install openvswitch
+yum install -q -y openvswitch
+# make sure it's enabled on system start, no need to start it
+# during setup
+systemctl enable openvswitch
+
+# install mininet
+git clone git://github.com/mininet/mininet
+cd mininet
+git checkout -b 2.2.1 2.2.1
+cd ..
+mininet/util/install.sh -nf
+
--- /dev/null
+#!/bin/bash
+
+# clean-up from any prior cloud-init networking
+rm -rf /etc/sysconfig/network-scripts/{ifcfg,route}-eth*
+
+rm -rf /etc/Pegasus/*.cnf /etc/Pegasus/*.crt /etc/Pegasus/*.csr /etc/Pegasus/*.pem /etc/Pegasus/*.srl /root/anaconda-ks.cfg /root/anaconda-post.log /root/initial-setup-ks.cfg /root/install.log /root/install.log.syslog /var/cache/fontconfig/* /var/cache/gdm/* /var/cache/man/* /var/lib/AccountService/users/* /var/lib/fprint/* /var/lib/logrotate.status /var/log/*.log* /var/log/BackupPC/LOG /var/log/ConsoleKit/* /var/log/anaconda.syslog /var/log/anaconda/* /var/log/apache2/*_log /var/log/apache2/*_log-* /var/log/apt/* /var/log/aptitude* /var/log/audit/* /var/log/btmp* /var/log/ceph/*.log /var/log/chrony/*.log /var/log/cron* /var/log/cups/*_log /var/log/debug* /var/log/dmesg* /var/log/exim4/* /var/log/faillog* /var/log/gdm/* /var/log/glusterfs/*glusterd.vol.log /var/log/glusterfs/glusterfs.log /var/log/httpd/*log /var/log/installer/* /var/log/jetty/jetty-console.log /var/log/journal/* /var/log/lastlog* /var/log/libvirt/libvirtd.log /var/log/libvirt/lxc/*.log /var/log/libvirt/qemu/*.log /var/log/libvirt/uml/*.log /var/log/lightdm/* /var/log/mail/* /var/log/maillog* /var/log/messages* /var/log/ntp /var/log/ntpstats/* /var/log/ppp/connect-errors /var/log/rhsm/* /var/log/sa/* /var/log/secure* /var/log/setroubleshoot/*.log /var/log/spooler* /var/log/squid/*.log /var/log/syslog* /var/log/tallylog* /var/log/tuned/tuned.log /var/log/wtmp* /var/named/data/named.run
+
+rm -rf ~/.viminfo /etc/ssh/ssh*key*
+
+echo "********************************************"
+echo "* PLEASE SNAPSHOT IMAGE AT THIS TIME *"
+echo "********************************************"
# install some needed internal networking configurations
yum install -y dnsmasq puppet
-puppet module install lex-dnsmasq
+# install specific versions of puppet modules
+puppet module install puppetlabs-stdlib -v 4.5.1
+puppet module install puppetlabs-concat -v 1.2.0
+puppet module install lex-dnsmasq -v 2.6.1
# script requires information about subdomain
if [ -z "$1" ]; then
# don't let cloud-init do funny things to our routing
chattr +i /etc/sysconfig/network-scripts/route-eth0
-# create a docker bridge that doesn't trample our networks
-# but only if docker is installed
-DOCKER=`rpm -q docker-io`
-if [ "$?" == "0" ]; then
- echo "---> Docker installed, configuring docker bridge"
- # fully overwrite the default, otherwise we end up with the options
- # split over two lines which will fail
- # Default: OPTIONS=--selinux-enabled
- echo 'OPTIONS=--selinux-enabled --bip=10.250.0.254/24' > /etc/sysconfig/docker
-# cat <<EOL > /etc/sysconfig/network-scripts/ifcfg-docker0
-#DEVICE="docker0"
-#TYPE="Bridge"
-#ONBOOT="yes"
-#NM_CONTROLLED="no"
-#IPADDR=10.250.0.254
-#NETMASK=255.255.255.0
-#EOL
-
-# # don't let cloud-init do funny things to our docker bridge
-# chattr +i /etc/sysconfig/network-scripts/ifcfg-docker0
- cat /etc/sysconfig/docker
-fi
-
-
# setup the needed routing
cat <<EOL >> /etc/rc.d/post-cloud-init
#!/bin/bash
#!/bin/bash
-# vim: ts=4 sw=4 sts=4 et :
+# vim: ts=4 sw=4 sts=4 et tw=72 :
# Handle the occurance where SELINUX is actually disabled
if [ `grep SELINUX=permissive /etc/selinux/config` ]; then
yum clean all -q
yum update -y -q
+
+# add in components we need or want on systems
+yum install -y -q @base unzip xz puppet git perl-XML-XPath
+
+# All of our systems require Java (because of Jenkins)
+# Install all versions of the OpenJDK devel but force 1.7.0 to be the
+# default
+
+yum install -y -q 'java-*-openjdk-devel'
+alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
+alternatives --set java_sdk_openjdk /usr/lib/jvm/java-1.7.0-openjdk.x86_64
+
+# To handle the prompt style that is expected all over the environment
+# with how use use robotframework we need to make sure that it is
+# consistent for any of the users that are created during dynamic spin
+# ups
+echo 'PS1="[\u@\h \W]> "' >> /etc/skel/.bashrc
+
+# Do any Distro specific installations here
+echo "Checking distribution"
+if [ `/usr/bin/facter operatingsystem` = "Fedora" ]; then
+ echo "---> Fedora found"
+ echo "No extra steps for Fedora"
+else
+ if [ `/usr/bin/facter operatingsystemrelease | /bin/cut -d '.' -f1` = "7" ]; then
+ echo "---> CentOS 7"
+ echo "No extra steps currently for CentOS 7"
+ else
+ echo "---> CentOS 6"
+ echo "Installing ODL YUM repo"
+ yum install -q -y https://nexus.opendaylight.org/content/repositories/opendaylight-yum-epel-6-x86_64/rpm/opendaylight-release/0.1.0-1.el6.noarch/opendaylight-release-0.1.0-1.el6.noarch.rpm
+ fi
+fi