summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/jenkins-job-builder/opnfv-jjb-usage.rst179
-rw-r--r--jjb/apex/apex.yml16
-rw-r--r--jjb/apex/opnfv-apex.yml4
-rw-r--r--jjb/compass4nfv/compass4nfv.yml36
-rw-r--r--jjb/compass4nfv/opnfv-compass4nfv.yml4
-rw-r--r--jjb/fuel/opnfv-fuel.yml74
-rw-r--r--jjb/functest/functest.yml28
-rw-r--r--jjb/functest/res-build.sh6
-rw-r--r--jjb/joid/joid.yml4
-rw-r--r--jjb/opnfv/installer-params.yml40
-rw-r--r--jjb/opnfv/pod-params.yml57
-rw-r--r--jjb/vswitchperf/vswitchperf.yml67
-rwxr-xr-xutils/docs-build.sh57
13 files changed, 282 insertions, 290 deletions
diff --git a/docs/jenkins-job-builder/opnfv-jjb-usage.rst b/docs/jenkins-job-builder/opnfv-jjb-usage.rst
index 7daacaffb..6e2b6e2b5 100644
--- a/docs/jenkins-job-builder/opnfv-jjb-usage.rst
+++ b/docs/jenkins-job-builder/opnfv-jjb-usage.rst
@@ -2,40 +2,50 @@
Creating/Configuring/Verifying Jenkins Jobs
===========================================
-Clone the repo::
+Clone and setup the repo::
- git clone ssh://YOU@gerrit.opnfv.org:29418/releng
+ git clone ssh://YOU@gerrit.opnfv.org:29418/releng
+ cd releng
+ git review -s
-make changes::
+Make changes::
- git commit -sv
- git review
- remote: Resolving deltas: 100% (3/3)
- remote: Processing changes: new: 1, refs: 1, done
- remote:
- remote: New Changes:
- remote: https://gerrit.opnfv.org/gerrit/51
- remote:
- To ssh://agardner@gerrit.opnfv.org:29418/releng.git
- * [new branch] HEAD -> refs/publish/master
+ git commit -sv
+ git review
+ remote: Resolving deltas: 100% (3/3)
+ remote: Processing changes: new: 1, refs: 1, done
+ remote:
+ remote: New Changes:
+ remote: https://gerrit.opnfv.org/gerrit/51
+ remote:
+ To ssh://agardner@gerrit.opnfv.org:29418/releng.git
+ * [new branch] HEAD -> refs/publish/master
-Follow the link to gerrit https://gerrit.opnfv.org/gerrit/51 in a few moments the verify job will have completed and you will see Verified +1 jenkins-ci in the gerrit ui.
+Follow the link to gerrit https://gerrit.opnfv.org/gerrit/51 in a few moments
+the verify job will have completed and you will see Verified +1 jenkins-ci in
+the gerrit ui.
-If the changes pass the verify job https://build.opnfv.org/ci/view/builder/job/builder-verify-jjb/ The patch can be submitited by a committer.
+If the changes pass the verify job
+https://build.opnfv.org/ci/view/builder/job/builder-verify-jjb/ ,
+the patch can be submitited by a committer.
Job Types
* Verify Job
- * Trigger: **recheck** or **reverify**
+ * Trigger: **recheck** or **reverify**
* Merge Job
- * Trigger: **remerge**
+ * Trigger: **remerge**
-The verify and merge jobs are retriggerable in Gerrit by simply leaving a comment with one of the keywords listed above. This is useful in case you need to re-run one of those jobs in case if build issues or something changed with the environment.
+The verify and merge jobs are retriggerable in Gerrit by simply leaving
+a comment with one of the keywords listed above.
+This is useful in case you need to re-run one of those jobs in case
+if build issues or something changed with the environment.
-You can add below persons as reviewers to your patch in order to get it reviewed and submitted.
+You can add below persons as reviewers to your patch in order to get it
+reviewed and submitted.
* fatih.degirmenci@ericsson.com
* agardner@linuxfoundation.org
@@ -50,129 +60,8 @@ You can add below persons as reviewers to your patch in order to get it reviewed
Or just email a request for submission to opnfv-helpdesk@rt.linuxfoundation.org
-The Current merge and verify jobs for jenkins job builder as pulled from the repo::
-
-**releng-jobs.yaml**:
-
-.. code-block:: bash
-
- - project:
- name: builder-jobs
- jobs:
- - 'builder-verify-jjb'
- - 'builder-merge'
-
- project: 'releng'
-
- - job-template:
- name: builder-verify-jjb
-
- node: master
-
- project-type: freestyle
-
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: 'master'
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - ssh-agent-credentials:
- user: '{ssh-credentials}'
-
- triggers:
- - gerrit:
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'false'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
- - draft-published-event
- - comment-added-contains-event:
- comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: 'releng'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/master'
- file-paths:
- - compare-type: ANT
- pattern: jjb/**
- - compare-type: ANT
- pattern: jjb-templates/**
-
-
- builders:
- - shell:
- !include-raw verify-releng
-
- - job-template:
- name: 'builder-merge'
-
- node: master
-
- # builder-merge job to run JJB update
- #
- # This job's purpose is to update all the JJB
-
- project-type: freestyle
-
- logrotate:
- daysToKeep: 30
- numToKeep: 40
- artifactDaysToKeep: -1
- artifactNumToKeep: 5
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: 'master'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - ssh-agent-credentials:
- user: '{ssh-credentials}'
-
- triggers:
- - gerrit:
- trigger-on:
- - change-merged-event
- - comment-added-contains-event:
- comment-contains-value: 'remerge'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: 'releng'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/master'
- file-paths:
- - compare-type: ANT
- pattern: jjb/**
-
- builders:
- - shell: |
- source /opt/virtualenv/jenkins-job-builder/bin/activate
- cd /opt/jenkins-ci/releng
- git pull
- jenkins-jobs update --delete-old jjb/
+The Current merge and verify jobs for jenkins job builder can be found
+in `releng-jobs.yaml`_.
+
+.. _releng-jobs.yaml:
+ https://gerrit.opnfv.org/gerrit/gitweb?p=releng.git;a=blob;f=jjb/releng-jobs.yaml;
diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml
index 90418dbb3..14c472b1e 100644
--- a/jjb/apex/apex.yml
+++ b/jjb/apex/apex.yml
@@ -14,8 +14,6 @@
- master:
branch: 'master'
gs-pathname: ''
- flags: '-fM'
- disabled: false
project: 'apex'
@@ -27,7 +25,6 @@
parameters:
- apex-parameter:
gs-pathname: '{gs-pathname}'
- flags: '{flags}'
- project-parameter:
project: '{project}'
- gerrit-parameter:
@@ -90,7 +87,6 @@
parameters:
- apex-parameter:
gs-pathname: '{gs-pathname}'
- flags: '{flags}'
- project-parameter:
project: '{project}'
- gerrit-parameter:
@@ -144,7 +140,6 @@
project: '{project}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
- flags: '{flags}'
- gerrit-parameter:
branch: '{branch}'
- string:
@@ -187,7 +182,6 @@
project: '{project}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
- flags: '{flags}'
builders:
- 'apex-deploy-virtual'
@@ -216,7 +210,6 @@
project: '{project}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
- flags: '{flags}'
builders:
- 'apex-workspace-cleanup'
@@ -244,7 +237,6 @@
project: '{project}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
- flags: '{flags}'
properties:
- build-blocker:
@@ -300,10 +292,6 @@
name: GS_URL
default: artifacts.opnfv.org/$PROJECT/{gs-pathname}
description: "URL to Google Storage."
- - string:
- name: FLAGS
- default: '{flags}'
- description: "Build Flags"
########################
# builder macros
@@ -319,8 +307,6 @@
# log info to console
echo "Starting the build of Apex using OpenStack Master packages. This will take some time..."
echo "---------------------------------------------------------------------------------------"
- echo "Build flags for this build are ${FLAGS}"
- echo "---------------------------------------------------------------------------------------"
echo
# create the cache directory if it doesn't exist
[[ -d $CACHE_DIRECTORY ]] || mkdir -p $CACHE_DIRECTORY
@@ -328,7 +314,7 @@
export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d_%H-%M-%S")
# start the build
cd $WORKSPACE/ci
- ./build.sh $FLAGS -v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY
+ ./build.sh -v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY
RPM_VERSION=$(grep Version $BUILD_DIRECTORY/../build/opnfv-apex.spec | awk '{ print $2 }')-$(echo $OPNFV_ARTIFACT_VERSION | tr -d '_-')
# list the contents of BUILD_OUTPUT directory
ls -al $BUILD_DIRECTORY
diff --git a/jjb/apex/opnfv-apex.yml b/jjb/apex/opnfv-apex.yml
index de2947cec..5240bbabb 100644
--- a/jjb/apex/opnfv-apex.yml
+++ b/jjb/apex/opnfv-apex.yml
@@ -80,5 +80,5 @@
builders:
- shell: |
#!/bin/bash
- echo "Hello World from OPNFV $INSTALLER_NAME"
- echo "Running $INSTALLER_NAME with controller $CONTROLLER"
+ echo "Hello World from OPNFV $INSTALLER_TYPE"
+ echo "Running $INSTALLER_TYPE with controller $CONTROLLER"
diff --git a/jjb/compass4nfv/compass4nfv.yml b/jjb/compass4nfv/compass4nfv.yml
index 40402011c..3645bbba3 100644
--- a/jjb/compass4nfv/compass4nfv.yml
+++ b/jjb/compass4nfv/compass4nfv.yml
@@ -7,8 +7,8 @@
jobs:
- 'compass-verify-{stream}'
- 'compass-daily-{stream}'
- - 'compass-build-iso'
- - 'compass-build-ppa'
+ - 'compass-build-iso-{stream}'
+ - 'compass-build-ppa-{stream}'
- 'compass-deploy-virtual-{flavor}'
- 'compass-deploy-bare-huawei-us'
@@ -56,7 +56,7 @@
- project-parameter:
project: '{project}'
- gerrit-parameter:
- branch: 'master'
+ branch: '{branch}'
- compass-parameter:
installer: '{installer}'
- string:
@@ -86,7 +86,7 @@
project-pattern: '{project}'
branches:
- branch-compare-type: 'ANT'
- branch-pattern: '**/master'
+ branch-pattern: '**/{branch}'
forbidden-file-paths:
- compare-type: ANT
pattern: 'docs/**|.gitignore'
@@ -130,7 +130,7 @@
builders:
- trigger-builds:
- - project: 'compass-build-iso'
+ - project: 'compass-build-iso-{stream}'
git-revision: true
block: true
- trigger-builds:
@@ -147,7 +147,7 @@
block: true
- job-template:
- name: 'compass-build-iso'
+ name: 'compass-build-iso-{stream}'
node: ericsson-build
@@ -169,7 +169,7 @@
- git-scm:
credentials-id: '{ssh-credentials}'
refspec: ''
- branch: 'master'
+ branch: '{branch}'
builders:
- 'builder-compass-build-iso'
@@ -177,7 +177,7 @@
- 'builder-compass-workspace-cleanup'
- job-template:
- name: 'compass-build-ppa'
+ name: 'compass-build-ppa-{stream}'
description: "build ppa(using docker) in huawei lab"
@@ -201,7 +201,7 @@
- git-scm:
credentials-id: '{ssh-credentials}'
refspec: ''
- branch: 'master'
+ branch: '{branch}'
triggers:
- timed: 'H 16 * * *'
@@ -315,6 +315,16 @@
- string:
name: PPA_CACHE
default: "$WORKSPACE/work/repo/"
+ - choice:
+ name: COMPASS_OPENSTACK_VERSION
+ choices:
+ - 'liberty'
+ - 'juno'
+ - choice:
+ name: COMPASS_OS_VERSION
+ choices:
+ - 'ubuntu-trusty'
+ - 'rhel7'
########################
# builder macros
@@ -405,6 +415,8 @@
export EXTERNAL_NIC=vnic_ci
cd $WORKSPACE
+ export OS_VERSION=${COMPASS_OS_VERSION}
+ export OPENSTACK_VERSION=${COMPASS_OPENSTACK_VERSION}
./deploy.sh $FLAVOR_CONF
if [ $? -ne 0 ]; then
echo "depolyment failed!"
@@ -416,7 +428,7 @@
echo "Done!"
ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
- sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:/var/ansible/run/openstack_juno-opnfv2/ansible.log ./ &> /dev/null
+ sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:/var/ansible/run/openstack_${COMPASS_OPENSTACK_VERSION}-opnfv2/ansible.log ./ &> /dev/null
exit $deploy_ret
@@ -439,6 +451,8 @@
cd $WORKSPACE
+ export OS_VERSION=${COMPASS_OS_VERSION}
+ export OPENSTACK_VERSION=${COMPASS_OPENSTACK_VERSION}
./deploy.sh --dha $CONFDIR/dha.yml --network $CONFDIR/network.yml
if [ $? -ne 0 ]; then
echo "depolyment failed!"
@@ -450,7 +464,7 @@
echo "Done!"
ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
- sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:/var/ansible/run/openstack_juno-opnfv2/ansible.log ./ &> /dev/null
+ sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:/var/ansible/run/openstack_${COMPASS_OPENSTACK_VERSION}-opnfv2/ansible.log ./ &> /dev/null
exit $deploy_ret
diff --git a/jjb/compass4nfv/opnfv-compass4nfv.yml b/jjb/compass4nfv/opnfv-compass4nfv.yml
index c647abcf8..288c7abe6 100644
--- a/jjb/compass4nfv/opnfv-compass4nfv.yml
+++ b/jjb/compass4nfv/opnfv-compass4nfv.yml
@@ -80,5 +80,5 @@
builders:
- shell: |
#!/bin/bash
- echo "Hello World from OPNFV $INSTALLER_NAME"
- echo "Running $INSTALLER_NAME with controller $CONTROLLER"
+ echo "Hello World from OPNFV $INSTALLER_TYPE"
+ echo "Running $INSTALLER_TYPE with controller $CONTROLLER"
diff --git a/jjb/fuel/opnfv-fuel.yml b/jjb/fuel/opnfv-fuel.yml
index aec85bc9c..393f919d0 100644
--- a/jjb/fuel/opnfv-fuel.yml
+++ b/jjb/fuel/opnfv-fuel.yml
@@ -19,31 +19,41 @@
loop:
- 'daily'
+ # ignore these as these will not exist in real job
+ dummy-phase:
+ - build
+ - deploy
+ - functest
+ - yardstick
+
stream:
- master:
branch: 'master'
gs-pathname: ''
jobs:
- - 'opnfv-fuel-{controller}-{pod}-{loop}-{stream}'
- - 'opnfv-fuel-deploy-{pod}-{loop}-{stream}'
+ - 'tmp_fuel-{controller}-{pod}-{loop}-{stream}'
+ - 'tmp_fuel-{dummy-phase}-{pod}-{loop}-{stream}'
########################
# job templates
########################
- job-template:
- name: 'opnfv-fuel-{controller}-{pod}-{loop}-{stream}'
-
- disabled: true
+ name: 'tmp_fuel-{controller}-{pod}-{loop}-{stream}'
- concurrent: false
+ project-type: multijob
parameters:
- project-parameter:
project: '{installer}'
- 'ericsson-ca-build-1-defaults'
- - '{installer}-defaults':
- controller: '{controller}'
+ - '{installer}-defaults'
+ - string:
+ name: CONTROLLER
+ default: '{controller}'
+ - string:
+ name: FEATURE
+ default: 'none'
scm:
- git-scm:
@@ -52,17 +62,36 @@
branch: '{branch}'
builders:
- - trigger-builds:
- - project: 'opnfv-fuel-daily-deploy-{stream}'
- git-revision: true
- block: true
- predefined-parameters:
- CONTROLLER={controller}
+ - multijob:
+ name: build
+ condition: SUCCESSFUL
+ projects:
+ - name: 'tmp_fuel-build-{loop}-{stream}'
+ kill-phase-on: FAILURE
+ current-parameters: true
+ - multijob:
+ name: deploy
+ condition: SUCCESSFUL
+ projects:
+ - name: 'tmp_fuel-deploy-{pod}-{loop}-{stream}'
+ kill-phase-on: FAILURE
+ current-parameters: true
+ - multijob:
+ name: functest
+ projects:
+ - name: 'tmp_fuel-test-{pod}-{loop}-{stream}'
+ current-parameters: true
+ - multijob:
+ name: yardstick
+ projects:
+ - name: 'tmp_fuel-test-{pod}-{loop}-{stream}'
+ current-parameters: true
+
- job-template:
- name: 'opnfv-fuel-deploy-{pod}-{loop}-{stream}'
+ name: 'tmp_fuel-{dummy-phase}-{pod}-{loop}-{stream}'
- disabled: true
+ disabled: false
concurrent: false
@@ -73,9 +102,14 @@
parameters:
- project-parameter:
project: '{installer}'
- - '{pod}-defaults':
- loop: '{loop}'
+ - '{pod}-defaults'
- '{installer}-defaults'
+ - string:
+ name: CONTROLLER
+ default: 'none'
+ - string:
+ name: FEATURE
+ default: 'none'
scm:
- git-scm:
@@ -86,5 +120,5 @@
builders:
- shell: |
#!/bin/bash
- echo "Hello World from OPNFV $INSTALLER_NAME"
- echo "Running $INSTALLER_NAME with controller $CONTROLLER"
+ echo "Hello World from OPNFV $INSTALLER_TYPE"
+ echo "Running $INSTALLER_TYPE with controller $CONTROLLER"
diff --git a/jjb/functest/functest.yml b/jjb/functest/functest.yml
index 33f060644..346b678ac 100644
--- a/jjb/functest/functest.yml
+++ b/jjb/functest/functest.yml
@@ -152,7 +152,7 @@
- 'functest-cleanup'
- 'set-functest-env'
- 'functest-all'
-# - 'functest-store-results'
+ - 'functest-store-results'
- builder:
name: functest-suite-builder
@@ -190,22 +190,34 @@
- shell: |
#!/bin/bash
set +e
+ # labconfig is used only for joid
+ labconfig=""
if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
INSTALLER_IP=$(grep instack /var/lib/libvirt/dnsmasq/default.leases \
|awk '{print $3}' | head -n 1)
sshkey="-v /root/.ssh/id_rsa:/root/.ssh/id_rsa"
+ sudo iptables -D FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
+ sudo iptables -D FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
+ elif [[ ${INSTALLER_TYPE} == 'joid' ]]; then
+ # If production lab then creds may be retrieved dynamically
+ # creds are on the jumphost, always in the same folder
+ labconfig="-v /home/ubuntu/joid/ci/cloud/admin-openrc:/home/opnfv/functest/conf/openstack.creds"
+ # If dev lab, credentials may not be the default ones, just provide a path to put them into docker
+ # replace the default one by the customized one provided by jenkins config
+ if [ -n "${LAB_CONFIG}" ]; then
+ labconfig="-v ${LAB_CONFIG}:/home/opnfv/functest/conf/openstack.creds"
+ fi
fi
echo "Functest: Start Docker and prepare environment"
envs="INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} -e NODE_NAME=${NODE_NAME}"
- labconfig=""
- # If production lab then creds may be retrieved dynamically
- # If dev lab, credentials may not be the default ones, just provide a path to put them into docker
- if [ -n "${LAB_CONFIG}" ]; then
- labconfig="-v ${LAB_CONFIG}:/home/opnfv/functest/conf/openstack.creds"
- fi
+
+ dir_result="${HOME}/opnfv/functest/reports"
+ mkdir -f ${dir_result}
+ rm -rf ${dir_result}/*
+ $res_volume="-v ${dir_result}:/home/opnfv/functest/results"
docker pull opnfv/functest:latest_stable
- cmd="docker run -id -e $envs ${labconfig} ${sshkey} opnfv/functest:latest_stable /bin/bash"
+ cmd="docker run -id -e $envs ${labconfig} ${sshkey} ${res_volume} opnfv/functest:latest_stable /bin/bash"
echo "Functest: Running docker run command: ${cmd}"
${cmd}
docker ps -a
diff --git a/jjb/functest/res-build.sh b/jjb/functest/res-build.sh
index a9c5dbe1b..9d425773d 100644
--- a/jjb/functest/res-build.sh
+++ b/jjb/functest/res-build.sh
@@ -7,9 +7,9 @@ export PATH=$PATH:/usr/local/bin/
git_sha1="$(git rev-parse HEAD)"
res_build_date=$(date -u +"%Y-%m-%d_%H-%M-%S")
-# Result directory in the docker file
+# Result directory in the jumphost
# to be used only with CI
-dir_result="/home/opnfv/functest/results"
+dir_result="${HOME}/opnfv/functest/reports"
# Clean the results directory
# remove json file for rally, export only html
@@ -20,7 +20,7 @@ rm -f $dir_result/rally/*.json
# date is generated by functest so on the artifact, the results shall be under functest/<testbed id>/date/
testbed=$NODE_NAME
-project_artifact=functest/$testbed/$res_build_date
+project_artifact=logs/functest/$testbed/$res_build_date
# copy folder to artifact
if [ -d "$dir_result" ]; then
diff --git a/jjb/joid/joid.yml b/jjb/joid/joid.yml
index fdeddc680..28b019fcd 100644
--- a/jjb/joid/joid.yml
+++ b/jjb/joid/joid.yml
@@ -88,7 +88,7 @@
builders:
- shell: |
#!/bin/bash
- echo "Running $INSTALLER_NAME with controller $CONTROLLER"
+ echo "Running $INSTALLER_TYPE with controller $CONTROLLER"
echo "Please note that this is a quick try to see how joid deployment works"
echo
echo "Executing clean.sh"
@@ -107,7 +107,7 @@
builders:
- shell: |
#!/bin/bash
- echo "Running $INSTALLER_NAME with controller $CONTROLLER"
+ echo "Running $INSTALLER_TYPE with controller $CONTROLLER"
echo "Please note that this is WIP generic builder"
echo
echo "Executing clean.sh"
diff --git a/jjb/opnfv/installer-params.yml b/jjb/opnfv/installer-params.yml
index 956e67da8..64945c656 100644
--- a/jjb/opnfv/installer-params.yml
+++ b/jjb/opnfv/installer-params.yml
@@ -6,17 +6,9 @@
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
+ default: apex
description: 'Installer used for deploying OPNFV on this POD'
- - string:
- name: CONTROLLER
- default: none
- description: 'Controller name'
- parameter:
name: 'compass-defaults'
@@ -26,17 +18,9 @@
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
+ default: compass
description: 'Installer used for deploying OPNFV on this POD'
- - string:
- name: CONTROLLER
- default: none
- description: 'Controller name'
- parameter:
name: 'fuel-defaults'
@@ -46,17 +30,9 @@
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
+ default: fuel
description: 'Installer used for deploying OPNFV on this POD'
- - string:
- name: CONTROLLER
- default: none
- description: 'Controller name'
- parameter:
name: 'joid-defaults'
@@ -66,14 +42,6 @@
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
+ default: joid
description: 'Installer used for deploying OPNFV on this POD'
- - string:
- name: CONTROLLER
- default: none
- description: 'Controller name'
diff --git a/jjb/opnfv/pod-params.yml b/jjb/opnfv/pod-params.yml
index 317f5cdc1..e36a0b684 100644
--- a/jjb/opnfv/pod-params.yml
+++ b/jjb/opnfv/pod-params.yml
@@ -102,6 +102,21 @@
description: 'SSH key to use for Apex'
- parameter:
+ name: 'intel-pod3-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - intel-pod3
+ default-slaves:
+ - intel-pod3
+ - 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:
@@ -296,3 +311,45 @@
name: GIT_BASE
default: https://gerrit.opnfv.org/gerrit/$PROJECT
description: 'Git URL to use on the jumphost'
+
+- parameter:
+ name: 'intel-us-deploy-virtual-1-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - intel-us-deploy-virtual-1
+ default-slaves:
+ - intel-us-deploy-virtual-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-us-deploy-virtual-2-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - intel-us-deploy-virtual-2
+ default-slaves:
+ - intel-us-deploy-virtual-2
+ - 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'
+ - string:
+ name: SSH_KEY
+ default: /root/.ssh/id_rsa
+ description: 'SSH key to use for Apex'
diff --git a/jjb/vswitchperf/vswitchperf.yml b/jjb/vswitchperf/vswitchperf.yml
index b4bc70f84..a06507a14 100644
--- a/jjb/vswitchperf/vswitchperf.yml
+++ b/jjb/vswitchperf/vswitchperf.yml
@@ -1,37 +1,31 @@
- project:
+
name: vswitchperf
+
+ project: '{name}'
+
jobs:
- - 'vswitchperf-daily-{stream}'
- - 'vswitchperf-merge-{stream}'
- 'vswitchperf-verify-{stream}'
+ - 'vswitchperf-merge-{stream}'
+ - 'vswitchperf-daily-{stream}'
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
+# only master branch is enabled at the moment to keep no of jobs sane
stream:
- master:
branch: 'master'
-
- project: 'vswitchperf'
- somevar: 'foo'
+ gs-pathname: ''
+# - brahmaputra:
+# branch: 'stable/brahmaputra'
+# gs-pathname: '/brahmaputra'
- job-template:
- name: 'vswitchperf-daily-{stream}'
- # Job template for daily builders
- #
- # Required Variables:
- # stream: branch with - in place of / (eg. stable)
- # branch: branch (eg. stable)
-
- varsetabove: '{somevar}'
- node: opnfv-build
+ name: 'vswitchperf-daily-{stream}'
parameters:
- project-parameter:
project: '{project}'
- - string:
- name: GIT_BASE
- default: https://gerrit.opnfv.org/gerrit/vswitchperf
+ - 'intel-pod3-defaults'
scm:
- git-scm:
@@ -42,9 +36,6 @@
triggers:
- timed: 'H H * * *'
- prebuilders:
- - test-macro
-
builders:
- shell: |
pwd
@@ -54,16 +45,11 @@
# run basic sanity test
make sanity
- postbuilders:
- - test-macro
-
- job-template:
name: 'vswitchperf-verify-{stream}'
project-type: freestyle
- node: opnfv-build
-
concurrent: true
properties:
@@ -76,10 +62,9 @@
- project-parameter:
project: '{project}'
- gerrit-parameter:
- branch: 'master'
- - string:
- name: GIT_BASE
- default: https://gerrit.opnfv.org/gerrit/vswitchperf
+ branch: '{branch}'
+ - 'opnfv-build-defaults'
+
scm:
- gerrit-trigger-scm:
credentials-id: '{ssh-credentials}'
@@ -100,10 +85,10 @@
comment-contains-value: 'reverify'
projects:
- project-compare-type: 'ANT'
- project-pattern: 'vswitchperf'
+ project-pattern: '{project}'
branches:
- branch-compare-type: 'ANT'
- branch-pattern: '**/master'
+ branch-pattern: '**/{branch}'
forbidden-file-paths:
- compare-type: ANT
pattern: 'docs/**'
@@ -120,14 +105,8 @@
- job-template:
name: 'vswitchperf-merge-{stream}'
- # builder-merge job to run JJB update
- #
- # This job's purpose is to update all the JJB
-
project-type: freestyle
- node: opnfv-build
-
concurrent: true
properties:
@@ -140,10 +119,8 @@
- project-parameter:
project: '{project}'
- gerrit-parameter:
- branch: 'master'
- - string:
- name: GIT_BASE
- default: https://gerrit.opnfv.org/gerrit/vswitchperf
+ branch: '{branch}'
+ - 'opnfv-build-defaults'
scm:
- gerrit-trigger-scm:
@@ -159,10 +136,10 @@
comment-contains-value: 'remerge'
projects:
- project-compare-type: 'ANT'
- project-pattern: 'vswitchperf'
+ project-pattern: '{project}'
branches:
- branch-compare-type: 'ANT'
- branch-pattern: '**/master'
+ branch-pattern: '**/{branch}'
forbidden-file-paths:
- compare-type: ANT
pattern: 'docs/**'
diff --git a/utils/docs-build.sh b/utils/docs-build.sh
index bf9ab5b1e..fc607fa15 100755
--- a/utils/docs-build.sh
+++ b/utils/docs-build.sh
@@ -38,6 +38,26 @@ html_notes="\n Revision: $rev_full\n\n Build date: |today|"
default_conf='releng/docs/etc/conf.py'
opnfv_logo='releng/docs/etc/opnfv-logo.png'
+function check_rst_doc() {
+ _src="$1"
+
+ if ! which doc8 > /dev/null ; then
+ echo "Error: 'doc8' not found. Exec 'sudo pip install doc8' first."
+ exit 1
+ fi
+ # Note: This check may fail in many jobs for building project docs, since
+ # the old sample has lines more than 120. We ignore failures on this
+ # check right now, but these have to be fixed before OPNFV B release.
+ _out=$(doc8 --max-line-length 120 "$_src") || {
+ _msg='Error: rst validatino (doc8) has failed, please fix the following error(s).'
+ _errs=$(echo "$_out" | sed -n -e "/^$_src/s/^/ /p")
+ echo
+ echo -e "$_msg\n$_errs"
+ echo
+ [[ -n "$GERRIT_COMMENT" ]] && echo -e "$_msg\n$_errs" >> "$GERRIT_COMMENT"
+ }
+}
+
function add_html_notes() {
_src="$1"
_dir="$2"
@@ -64,6 +84,36 @@ function add_config() {
fi
}
+function is_top_dir() {
+ [[ "$1" == "$SRC_DIR" ]]
+}
+
+function generate_name_for_top_dir() {
+ for suffix in '' '.top' '.all' '.master' '_' '__' '___'
+ do
+ _name="$(basename $SRC_DIR)$suffix"
+ [[ -e "$SRC_DIR/$_name" ]] && continue
+ echo "$_name"
+ return
+ done
+
+ echo "Error: cannot find name for top directory [$SRC_DIR]"
+ exit 1
+}
+
+function generate_name() {
+ _dir=$1
+
+ if is_top_dir "$_dir" ; then
+ _name=$(generate_name_for_top_dir $SRC_DIR)
+ else
+ _name="${_dir#$SRC_DIR/}"
+ fi
+ # Replace '/' by '_'
+ echo "${_name////_}"
+}
+
+check_rst_doc $SRC_DIR
if [[ ! -d "$RELENG_DIR" ]] ; then
echo "Error: $RELENG_DIR dir not found. See https://wiki.opnfv.org/documentation/tools ."
@@ -72,7 +122,7 @@ fi
find $SRC_DIR -name $INDEX_RST -printf '%h\n' | while read dir
do
- name="${dir##*/}"
+ name=$(generate_name $dir)
src="$BUILD_DIR/src/$name"
build="$BUILD_DIR/$name"
output="$OUTPUT_DIR/$name"
@@ -121,4 +171,9 @@ do
[[ -n "$GERRIT_COMMENT" ]] && echo "$msg" >> "$GERRIT_COMMENT"
}
+ if is_top_dir "$dir" ; then
+ mv "$output"/* "$OUTPUT_DIR"/
+ rm -rf "$output"
+ fi
+
done