From 55ef51bceadfdc99f53e42992d7bc742395761ab Mon Sep 17 00:00:00 2001 From: Fatih Degirmenci Date: Mon, 7 Dec 2015 08:47:20 +0100 Subject: Add installer and pod parameter files and create example jobs This change proposes - Move installer params to common file - Move pod params to common file - Configure POD slaves in pod file and set slave to run using node label plugin - Create one daily parent job per installer per controller - Create common deploy job, taking controller name from parent job - Change build display name to show installer + controller name Please note that this is an example and things will evolve based on how things work. Change-Id: I4bc1d35e43c44d9401f4000090818e8e7b426e70 Signed-off-by: Fatih Degirmenci --- jjb/apex/opnfv-apex.yml | 84 +++++++++++++++++++ jjb/compass4nfv/opnfv-compass4nfv.yml | 84 +++++++++++++++++++ jjb/fuel/opnfv-fuel.yml | 85 +++++++++++++++++++ jjb/joid/opnfv-joid.yml | 85 +++++++++++++++++++ jjb/opnfv/installer-params.yml | 79 ++++++++++++++++++ jjb/opnfv/pod-params.yml | 152 ++++++++++++++++++++++++++++++++++ 6 files changed, 569 insertions(+) create mode 100644 jjb/apex/opnfv-apex.yml create mode 100644 jjb/compass4nfv/opnfv-compass4nfv.yml create mode 100644 jjb/fuel/opnfv-fuel.yml create mode 100644 jjb/joid/opnfv-joid.yml create mode 100644 jjb/opnfv/installer-params.yml create mode 100644 jjb/opnfv/pod-params.yml diff --git a/jjb/apex/opnfv-apex.yml b/jjb/apex/opnfv-apex.yml new file mode 100644 index 000000000..47de21c5a --- /dev/null +++ b/jjb/apex/opnfv-apex.yml @@ -0,0 +1,84 @@ +######################## +# Job configuration for apex +######################## +- project: + + name: 'opnfv-apex' + + installer: 'apex' + + controller: + - 'opencontrail' + - 'opendaylight' + - 'onos' + + pod: 'intel-pod2' + + stream: + - master: + branch: 'master' + gs-pathname: '' + + jobs: + - 'opnfv-apex-{controller}-daily-{stream}' + - 'opnfv-apex-daily-deploy-{stream}' + +######################## +# job templates +######################## +- job-template: + name: 'opnfv-apex-{controller}-daily-{stream}' + + disabled: true + + concurrent: false + + parameters: + - project-parameter: + project: '{installer}' + - '{pod}-defaults' + - '{installer}-defaults': + controller: '{controller}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - trigger-builds: + - project: 'opnfv-apex-daily-deploy-{stream}' + git-revision: true + block: true + predefined-parameters: + CONTROLLER='{controller}' + +- job-template: + name: 'opnfv-apex-daily-deploy-{stream}' + + disabled: true + + concurrent: false + + wrappers: + - build-name: + name: '$BUILD_NUMBER: {installer} $CONTROLLER' + + parameters: + - project-parameter: + project: '{installer}' + - '{pod}-defaults' + - '{installer}-defaults' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - shell: | + #!/bin/bash + echo "Hello World from OPNFV $INSTALLER_NAME" + echo "Running $INSTALLER_NAME with controller $CONTROLLER" diff --git a/jjb/compass4nfv/opnfv-compass4nfv.yml b/jjb/compass4nfv/opnfv-compass4nfv.yml new file mode 100644 index 000000000..0ae89dad3 --- /dev/null +++ b/jjb/compass4nfv/opnfv-compass4nfv.yml @@ -0,0 +1,84 @@ +######################## +# Job configuration for compass4nfv +######################## +- project: + + name: 'opnfv-compass4nfv' + + installer: 'compass4nfv' + + controller: + - 'opencontrail' + - 'opendaylight' + - 'onos' + + pod: 'huawei-sc-pod1' + + stream: + - master: + branch: 'master' + gs-pathname: '' + + jobs: + - 'opnfv-compass4nfv-{controller}-daily-{stream}' + - 'opnfv-compass4nfv-daily-deploy-{stream}' + +######################## +# job templates +######################## +- job-template: + name: 'opnfv-compass4nfv-{controller}-daily-{stream}' + + disabled: true + + concurrent: false + + parameters: + - project-parameter: + project: '{installer}' + - '{pod}-defaults' + - '{installer}-defaults': + controller: '{controller}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - trigger-builds: + - project: 'opnfv-compass4nfv-daily-deploy-{stream}' + git-revision: true + block: true + predefined-parameters: + CONTROLLER='{controller}' + +- job-template: + name: 'opnfv-compass4nfv-daily-deploy-{stream}' + + disabled: true + + concurrent: false + + wrappers: + - build-name: + name: '$BUILD_NUMBER: {installer} $CONTROLLER' + + parameters: + - project-parameter: + project: '{installer}' + - '{pod}-defaults' + - '{installer}-defaults' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - shell: | + #!/bin/bash + echo "Hello World from OPNFV $INSTALLER_NAME" + echo "Running $INSTALLER_NAME with controller $CONTROLLER" diff --git a/jjb/fuel/opnfv-fuel.yml b/jjb/fuel/opnfv-fuel.yml new file mode 100644 index 000000000..92bd96b87 --- /dev/null +++ b/jjb/fuel/opnfv-fuel.yml @@ -0,0 +1,85 @@ +######################## +# Job configuration for fuel +######################## +- project: + + name: 'opnfv-fuel' + + installer: 'fuel' + + controller: + - 'opencontrail' + - 'opendaylight' + - 'onos' + + pod: 'lf-pod2' + + stream: + - master: + branch: 'master' + gs-pathname: '' + + jobs: + - 'opnfv-fuel-{controller}-daily-{stream}' + - 'opnfv-fuel-daily-deploy-{stream}' + +######################## +# job templates +######################## +- job-template: + name: 'opnfv-fuel-{controller}-daily-{stream}' + + disabled: true + + concurrent: false + + node: ericsson-build + + parameters: + - project-parameter: + project: '{installer}' + - '{installer}-defaults': + controller: '{controller}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - trigger-builds: + - project: 'opnfv-fuel-daily-deploy-{stream}' + git-revision: true + block: true + predefined-parameters: + CONTROLLER='{controller}' + +- job-template: + name: 'opnfv-fuel-daily-deploy-{stream}' + + disabled: true + + concurrent: false + + wrappers: + - build-name: + name: '$BUILD_NUMBER: {installer} $CONTROLLER' + + parameters: + - project-parameter: + project: '{installer}' + - '{pod}-defaults' + - '{installer}-defaults' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - shell: | + #!/bin/bash + echo "Hello World from OPNFV $INSTALLER_NAME" + echo "Running $INSTALLER_NAME with controller $CONTROLLER" diff --git a/jjb/joid/opnfv-joid.yml b/jjb/joid/opnfv-joid.yml new file mode 100644 index 000000000..4d99e3199 --- /dev/null +++ b/jjb/joid/opnfv-joid.yml @@ -0,0 +1,85 @@ +######################## +# Job configuration for joid +######################## +- project: + + name: 'opnfv-joid' + + installer: 'joid' + + controller: + - 'opencontrail' + - 'opendaylight' + - 'onos' + + pod: 'intel-pod5' + + stream: + - master: + branch: 'master' + gs-pathname: '' + + jobs: + - 'opnfv-joid-{controller}-daily-{stream}' + - 'opnfv-joid-daily-deploy-{stream}' + +######################## +# job templates +######################## +- job-template: + name: 'opnfv-joid-{controller}-daily-{stream}' + + disabled: true + + concurrent: false + + parameters: + - project-parameter: + project: '{installer}' + - '{pod}-defaults' + - '{installer}-defaults': + controller: '{controller}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - trigger-builds: + - project: 'opnfv-joid-daily-deploy-{stream}' + git-revision: true + block: true + predefined-parameters: + CONTROLLER='{controller}' + +- job-template: + name: 'opnfv-joid-daily-deploy-{stream}' + + disabled: true + + concurrent: false + + wrappers: + - build-name: + name: '$BUILD_NUMBER: {installer} $CONTROLLER' + + parameters: + - project-parameter: + project: '{installer}' + - '{pod}-defaults' + - '{installer}-defaults' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - shell: | + #!/bin/bash + echo "Hello World from OPNFV $INSTALLER_NAME" + echo "Running $INSTALLER_NAME with controller $CONTROLLER" + diff --git a/jjb/opnfv/installer-params.yml b/jjb/opnfv/installer-params.yml new file mode 100644 index 000000000..dc11fbd53 --- /dev/null +++ b/jjb/opnfv/installer-params.yml @@ -0,0 +1,79 @@ +- parameter: + name: 'apex-defaults' + parameters: + - string: + name: INSTALLER_IP + default: '192.168.X.X' + description: 'IP of the installer' + - string: + name: INSTALLER_NAME + default: apex + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: INSTALLER_TYPE + default: $INSTALLER_NAME + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: CONTROLLER + default: '{controller}' + description: 'Controller name' + +- parameter: + name: 'compass4nfv-defaults' + parameters: + - string: + name: INSTALLER_IP + default: '192.168.200.2' + description: 'IP of the installer' + - string: + name: INSTALLER_NAME + default: compass4nfv + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: INSTALLER_TYPE + default: $INSTALLER_NAME + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: CONTROLLER + default: '{controller}' + description: 'Controller name' + +- parameter: + name: 'fuel-defaults' + parameters: + - string: + name: INSTALLER_IP + default: '10.20.0.2' + description: 'IP of the installer' + - string: + name: INSTALLER_NAME + default: fuel + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: INSTALLER_TYPE + default: $INSTALLER_NAME + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: CONTROLLER + default: '{controller}' + description: 'Controller name' + +- parameter: + name: 'joid-defaults' + parameters: + - string: + name: INSTALLER_IP + default: '192.168.Y.Y' + description: 'IP of the installer' + - string: + name: INSTALLER_NAME + default: joid + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: INSTALLER_TYPE + default: $INSTALLER_NAME + description: 'Installer used for deploying OPNFV on this POD' + - string: + name: CONTROLLER + default: '{controller}' + description: 'Controller name' diff --git a/jjb/opnfv/pod-params.yml b/jjb/opnfv/pod-params.yml new file mode 100644 index 000000000..07d35bf7f --- /dev/null +++ b/jjb/opnfv/pod-params.yml @@ -0,0 +1,152 @@ +- parameter: + name: 'lf-pod1-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - opnfv-jump-1 + default-slaves: + - opnfv-jump-1 + - string: + name: INSTALLER_VERSION + default: latest + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on the jumphost' + +- parameter: + name: 'lf-pod2-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - opnfv-jump-2 + default-slaves: + - opnfv-jump-2 + - string: + name: INSTALLER_VERSION + default: stable + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: ssh://gerrit.opnfv.org:29418/$PROJECT + description: 'Git URL for LF POD2' + description: 'Git URL to use on the jumphost' + +- parameter: + name: 'ericsson-pod2-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - ericsson-ca-fuel-bare-1 + default-slaves: + - ericsson-ca-fuel-bare-1 + - string: + name: INSTALLER_VERSION + default: latest + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on the jumphost' + +- parameter: + name: 'intel-pod2-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - intelpod2-jumphost + default-slaves: + - intelpod2-jumphost + - string: + name: INSTALLER_VERSION + default: stable + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on the jumphost' + +- parameter: + name: 'intel-pod5-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - intelpod5-jumphost + default-slaves: + - intelpod5-jumphost + - string: + name: INSTALLER_VERSION + default: stable + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on the jumphost' + +- parameter: + name: 'intel-pod6-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - intelpod6-jumphost + default-slaves: + - intelpod6-jumphost + - string: + name: INSTALLER_VERSION + default: latest + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on the jumphost' + +- parameter: + name: 'intel-pod8-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - intelpod8-jumphost + default-slaves: + - intelpod8-jumphost + - string: + name: INSTALLER_VERSION + default: latest + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on the jumphost' + +- parameter: + name: 'huawei-sc-pod1-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - huawei-us-deploy-bare-1 + default-slaves: + - huawei-us-deploy-bare-1 + - string: + name: INSTALLER_VERSION + default: stable + description: 'Version of the installer to deploy' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on the jumphost' -- cgit 1.2.3-korg