diff options
Diffstat (limited to 'jjb/joid')
-rw-r--r-- | jjb/joid/joid-deploy.sh | 24 | ||||
-rw-r--r-- | jjb/joid/joid.yml | 122 |
2 files changed, 113 insertions, 33 deletions
diff --git a/jjb/joid/joid-deploy.sh b/jjb/joid/joid-deploy.sh index d9ce86eb4..b7bc32df2 100644 --- a/jjb/joid/joid-deploy.sh +++ b/jjb/joid/joid-deploy.sh @@ -2,10 +2,12 @@ set +e set -o nounset +JOID_LOCAL_CONFIG_FOLDER=$HOME/joid_config +JOID_ADMIN_OPENRC=$JOID_LOCAL_CONFIG_FOLDER/admin-openrc + ####### Temporary - to be done with jenkins params ##### JOID_MODE=ha JOID_RELEASE=liberty -JOID_LOCAL_CONFIG_FOLDER=~/joid_config JOID_SDN_CONTROLLER=odl ################# @@ -33,7 +35,6 @@ else export OS_ADMIN_PASSWORD=openstack export CEPH_DISKS=/srv export CEPH_REFORMAT=no - export JOID_ADMIN_OPENRC=$WORKSPACE/admin_openrc.sh fi ## @@ -47,8 +48,8 @@ if [ -e "$JOID_LOCAL_CONFIG_FOLDER/environments.yaml" ] && [ "$MAAS_REINSTALL" = else MAASCONFIG=$WORKSPACE/ci/maas/$POD_DC/$POD_NUM/deployment.yaml echo "------ Set MAAS password ------" - sed -i -- 's/user: ubuntu/user: $MAAS_USER/' $MAASCONFIG - sed -i -- 's/password: ubuntu/password: $MAAS_PASSWORD/' $MAASCONFIG + sed -i -- "s/user: ubuntu/user: $MAAS_USER/" $MAASCONFIG + sed -i -- "s/password: ubuntu/password: $MAAS_PASSWORD/" $MAASCONFIG echo "------ Redeploy MAAS ------" ./02-maasdeploy.sh $POD_NAME fi @@ -86,9 +87,16 @@ echo "Execute: ./deploy.sh -t $JOID_MODE -o $JOID_RELEASE -s $JOID_SDN_CONTROLLE ## Set Admin RC ## -echo "------ Create OpenRC file ------" -KEYSTONE=$(cat bundle.yaml |shyaml get-value openstack-phase2.services.keystone.options.vip) +echo "------ Create OpenRC file [$JOID_ADMIN_OPENRC] ------" +KEYSTONE=$(cat bundles.yaml |shyaml get-value openstack-phase2.services.keystone.options.vip) + +# create the folder if needed +JOID_ADMIN_OPENRC_FOLDER=$(echo $JOID_ADMIN_OPENRC | perl -pe "s|^(.*/).*?$|\1|") +if [ ! -d "$JOID_ADMIN_OPENRC_FOLDER" ]; then + mkdir -p $JOID_ADMIN_OPENRC_FOLDER +fi +# export the openrc file cat << EOF > $JOID_ADMIN_OPENRC export OS_USERNAME=admin export OS_PASSWORD=$OS_ADMIN_PASSWORD @@ -97,6 +105,10 @@ export OS_AUTH_URL=http://$KEYSTONE:5000/v2.0 export OS_REGION_NAME=Canonical EOF +## +## Backup local juju env +## + if [ -d "$JOID_LOCAL_CONFIG_FOLDER" ]; then echo "------ Backup Juju environment ------" cp environments.yaml $JOID_LOCAL_CONFIG_FOLDER/ diff --git a/jjb/joid/joid.yml b/jjb/joid/joid.yml index fdeddc680..90b3df682 100644 --- a/jjb/joid/joid.yml +++ b/jjb/joid/joid.yml @@ -5,39 +5,60 @@ name: 'joid' + project: '{name}' + installer: 'joid' - controller: 'odl' + sdn-controller: + - 'nosdn': + disabled: true + - 'odl': + disabled: false + - 'onos': + disabled: true + - 'opencontrail': + disabled: true pod: - 'intel-pod5' - 'orange-pod2' +# only master branch is enabled at the moment to keep no of jobs sane stream: - master: - branch: 'master' + branch: '{stream}' gs-pathname: '' +# - brahmaputra: +# branch: 'stable/{stream}' +# gs-pathname: '{stream}' jobs: - - 'joid-{controller}-{pod}-daily-{stream}' + - 'joid-{sdn-controller}-{pod}-daily-{stream}' - 'joid-deploy-{pod}-daily-{stream}' ######################## # job templates ######################## - job-template: - name: 'joid-{controller}-{pod}-daily-{stream}' + name: 'joid-{sdn-controller}-{pod}-daily-{stream}' - disabled: false + project-type: multijob + + disabled: '{obj:disabled}' concurrent: false parameters: - project-parameter: - project: '{installer}' - - 'intel-us-build-1-defaults' - - '{installer}-defaults': - controller: '{controller}' + project: '{project}' + - '{pod}-defaults' + - '{installer}-defaults' + - string: + name: SDN_CONTROLLER + default: '{sdn-controller}' + - string: + name: OPNFV_FEATURE + default: 'none' scm: - git-scm: @@ -46,12 +67,9 @@ branch: '{branch}' builders: - - trigger-builds: - - project: 'joid-deploy-{pod}-daily-{stream}' - git-revision: true - block: true - predefined-parameters: - CONTROLLER={controller} + - '{installer}-multijob-{pod}-builder': + pod: '{pod}' + stream: '{stream}' - job-template: name: 'joid-deploy-{pod}-daily-{stream}' @@ -62,14 +80,13 @@ wrappers: - build-name: - name: '$BUILD_NUMBER: {installer} $CONTROLLER' + name: '$BUILD_NUMBER: $INSTALLER_TYPE $SDN_CONTROLLER' parameters: - project-parameter: - project: '{installer}' + project: '{project}' - '{pod}-defaults' - - '{installer}-defaults': - controller: '{controller}' + - '{installer}-defaults' scm: - git-scm: @@ -81,6 +98,58 @@ - '{pod}-builder' ######################## +# multijob builder macros +######################## +# intel-pod5 is CI POD so full CI will run on it +# deploy, functest, yardstick +- builder: + name: joid-multijob-intel-pod5-builder + builders: + - multijob: + name: deploy + condition: SUCCESSFUL + projects: + - name: 'joid-deploy-{pod}-daily-{stream}' + current-parameters: true + git-revision: true + kill-phase-on: FAILURE + - multijob: + name: functest + condition: COMPLETED + projects: + - name: 'functest-joid-{pod}-daily-{stream}' + current-parameters: true + kill-phase-on: NEVER +# yardstick placeholder +# - multijob: +# name: yardstick +# condition: COMPLETED +# projects: +# - name: 'yardstick-joid-{pod}-daily-{stream}' +# current-parameters: true +# kill-phase-on: NEVER + +# orange-pod2 is NOT a CI POD so only the selected jobs will run +# deploy and functest currently +- builder: + name: joid-multijob-orange-pod2-builder + builders: + - multijob: + name: deploy + condition: SUCCESSFUL + projects: + - name: 'joid-deploy-{pod}-daily-{stream}' + current-parameters: true + git-revision: true + kill-phase-on: FAILURE + - multijob: + name: functest + condition: COMPLETED + projects: + - name: 'functest-joid-{pod}-daily-{stream}' + current-parameters: true + kill-phase-on: NEVER +######################## # builder macros ######################## - builder: @@ -88,26 +157,25 @@ builders: - shell: | #!/bin/bash - echo "Running $INSTALLER_NAME with controller $CONTROLLER" + echo "Running $INSTALLER_TYPE with controller $SDN_CONTROLLER" echo "Please note that this is a quick try to see how joid deployment works" echo echo "Executing clean.sh" cd $WORKSPACE/ci ./clean.sh - - shell: | - cd $WORKSPACE/ci + echo echo "Executing 02-maasdeploy.sh intelpod5" ./02-maasdeploy.sh intelpod5 - - shell: | - cd $WORKSPACE/ci - echo "Executing deploy.sh -o liberty -s $CONTROLLER -t ha -l intelpod5" - ./deploy.sh -o liberty -s $CONTROLLER -t ha -l intelpod5 + echo + echo "Executing deploy.sh -o liberty -s $SDN_CONTROLLER -t ha -l intelpod5" + ./deploy.sh -o liberty -s $SDN_CONTROLLER -t ha -l intelpod5 + - builder: name: orange-pod2-builder builders: - shell: | #!/bin/bash - echo "Running $INSTALLER_NAME with controller $CONTROLLER" + echo "Running $INSTALLER_TYPE with controller $SDN_CONTROLLER" echo "Please note that this is WIP generic builder" echo echo "Executing clean.sh" |