summaryrefslogtreecommitdiffstats
path: root/jjb
diff options
context:
space:
mode:
Diffstat (limited to 'jjb')
-rw-r--r--jjb/bottlenecks/bottlenecks.yml112
-rw-r--r--jjb/bottlenecks/docu-build.sh80
-rwxr-xr-xjjb/fuel/fuel-build.sh15
-rwxr-xr-xjjb/fuel/fuel-deploy-virtual.sh41
-rwxr-xr-xjjb/fuel/fuel-deploy.sh9
-rwxr-xr-xjjb/fuel/fuel-download-artifact.sh2
-rwxr-xr-xjjb/fuel/fuel-virtual-deploy.sh3
-rw-r--r--jjb/fuel/fuel.yml13
-rw-r--r--jjb/functest/functest.yml26
-rw-r--r--jjb/opnfv/opnfv-docs.yml10
-rw-r--r--jjb/releng-defaults.yaml1
-rw-r--r--jjb/releng-jobs.yaml6
-rw-r--r--jjb/releng-macros.yaml199
-rw-r--r--jjb/storperf/storperf.yml22
-rw-r--r--jjb/vswitchperf/vswitchperf.yml47
15 files changed, 434 insertions, 152 deletions
diff --git a/jjb/bottlenecks/bottlenecks.yml b/jjb/bottlenecks/bottlenecks.yml
index 0baf7ba31..c55d6cc4c 100644
--- a/jjb/bottlenecks/bottlenecks.yml
+++ b/jjb/bottlenecks/bottlenecks.yml
@@ -6,6 +6,8 @@
jobs:
- 'bottlenecks-test'
- 'bottlenecks-verify'
+ - 'bottlenecks-daily-{stream}'
+ - 'bottlenecks-merge'
# stream: branch with - in place of / (eg. stable-arno)
# branch: branch (eg. stable/arno)
@@ -15,11 +17,9 @@
project: 'bottlenecks'
somevar: 'foo'
-
-########################
-# job templates
-########################
-
+###############################
+# Job templates
+##############################
- job-template:
name: 'bottlenecks-test'
@@ -35,6 +35,52 @@
- shell: |
echo "Hello world from bottlenecks"
+- job-template:
+ name: 'bottlenecks-daily-{stream}'
+
+ node: master
+
+ # Job template for daily builders
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable)
+ # branch: branch (eg. stable)
+
+ project-type: freestyle
+ varsetabove: '{somevar}'
+
+ logrotate:
+ daysToKeep: 30
+ numToKeep: 10
+ artifactDaysToKeep: -1
+ artifactNumToKeep: -1
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - timed: 'H H * * *'
+
+ prebuilders:
+ - test-macro
+
+ builders:
+ - shell: |
+ echo "hello world"
+
+ postbuilders:
+ - test-macro
- job-template:
name: 'bottlenecks-verify'
@@ -54,7 +100,6 @@
project: '{project}'
- gerrit-parameter:
branch: 'master'
-
scm:
- gerrit-trigger-scm:
credentials-id: '{ssh-credentials}'
@@ -85,5 +130,56 @@
branch-pattern: '**/master'
builders:
- - shell:
- !include-raw docu-build.sh
+ - shell: |
+ echo "hello world"
+
+- job-template:
+ name: 'bottlenecks-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: 'bottlenecks'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/master'
+
+ builders:
+ - shell: |
+ echo "hello world"
+
diff --git a/jjb/bottlenecks/docu-build.sh b/jjb/bottlenecks/docu-build.sh
deleted file mode 100644
index c56069271..000000000
--- a/jjb/bottlenecks/docu-build.sh
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/bin/bash
-set -e
-set -o pipefail
-
-project="$(git remote -v | head -n1 | awk '{{print $2}}' | sed -e 's,.*:\(.*/\)\?,,' -e 's/\.git$//')"
-export PATH=$PATH:/usr/local/bin/
-
-git_sha1="$(git rev-parse HEAD)"
-docu_build_date="$(date)"
-
-if [[ $JOB_NAME =~ "verify" ]] ; then
- subdir="/$GERRIT_CHANGE_NUMBER"
-fi
-
-files=()
-while read -r -d ''; do
- files+=("$REPLY")
-done < <(find * -type f -iname '*.rst' -print0)
-
-for file in "${{files[@]}}"; do
-
- file_cut="${{file%.*}}"
- gs_cp_folder="${{file_cut}}"
-
- # sed part
- sed -i "s/_sha1_/$git_sha1/g" $file
- sed -i "s/_date_/$docu_build_date/g" $file
-
- # rst2html part
- echo "rst2html $file"
- rst2html $file | gsutil cp -L gsoutput.txt - \
- gs://artifacts.opnfv.org/"$project""$subdir"/"$gs_cp_folder".html
- gsutil setmeta -h "Content-Type:text/html" \
- -h "Cache-Control:private, max-age=0, no-transform" \
- gs://artifacts.opnfv.org/"$project""$subdir"/"$gs_cp_folder".html
- cat gsoutput.txt
- rm -f gsoutput.txt
-
- echo "rst2pdf $file"
- rst2pdf $file -o - | gsutil cp -L gsoutput.txt - \
- gs://artifacts.opnfv.org/"$project""$subdir"/"$gs_cp_folder".pdf
- gsutil setmeta -h "Content-Type:application/pdf" \
- -h "Cache-Control:private, max-age=0, no-transform" \
- gs://artifacts.opnfv.org/"$project""$subdir"/"$gs_cp_folder".pdf
- cat gsoutput.txt
- rm -f gsoutput.txt
-
- links+="http://artifacts.opnfv.org/"$project""$subdir"/"$gs_cp_folder".html \n"
- links+="http://artifacts.opnfv.org/"$project""$subdir"/"$gs_cp_folder".pdf \n"
-
-done
-
-images=()
-while read -r -d ''; do
- images+=("$REPLY")
-done < <(find * -type f \( -iname \*.jpg -o -iname \*.png \) -print0)
-
-for img in "${{images[@]}}"; do
-
- # uploading found images
- echo "uploading $img"
- cat "$img" | gsutil cp -L gsoutput.txt - \
- gs://artifacts.opnfv.org/"$project""$subdir"/"$img"
- gsutil setmeta -h "Content-Type:image/jpeg" \
- -h "Cache-Control:private, max-age=0, no-transform" \
- gs://artifacts.opnfv.org/"$project""$subdir"/"$img"
- cat gsoutput.txt
- rm -f gsoutput.txt
-
-done
-
-if [[ $GERRIT_EVENT_TYPE = "change-merged" ]] ; then
- subdir="/$GERRIT_CHANGE_NUMBER"
- if [ ! -z "$subdir" ]; then
- gsutil rm gs://artifacts.opnfv.org/"$project""$subdir"/** || true
- fi
-fi
-
-echo -e "$links"
-
diff --git a/jjb/fuel/fuel-build.sh b/jjb/fuel/fuel-build.sh
index 7b1d8510e..00617ce54 100755
--- a/jjb/fuel/fuel-build.sh
+++ b/jjb/fuel/fuel-build.sh
@@ -14,14 +14,21 @@ echo
# set OPNFV_ARTIFACT_VERSION
if [[ "$JOB_NAME" =~ "merge" ]]; then
echo "Building Fuel ISO for a merged change"
- OPNFV_ARTIFACT_VERSION=$(gerrit-$GERRIT_CHANGE_NUMBER)
+ export OPNFV_ARTIFACT_VERSION="gerrit-$GERRIT_CHANGE_NUMBER"
else
- OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d_%H-%M-%S")
+ export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d_%H-%M-%S")
fi
+NOCACHE_PATTERN="verify: no-cache"
+if [[ "$JOB_NAME" =~ "verify" && "$GERRIT_CHANGE_COMMIT_MESSAGE" =~ "$NOCACHE_PATTERN" ]]; then
+ echo "The cache will not be used for this build!"
+ NOCACHE_ARG="-f P"
+fi
+NOCACHE_ARG=${{NOCACHE_ARG:-}}
+
# start the build
-cd $WORKSPACE/$INSTALLER/ci
-./build.sh -v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY
+cd $WORKSPACE/ci
+./build.sh -v $OPNFV_ARTIFACT_VERSION $NOCACHE_ARG -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY
# list the build artifacts
ls -al $BUILD_DIRECTORY
diff --git a/jjb/fuel/fuel-deploy-virtual.sh b/jjb/fuel/fuel-deploy-virtual.sh
new file mode 100755
index 000000000..a65395b07
--- /dev/null
+++ b/jjb/fuel/fuel-deploy-virtual.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+set -o errexit
+set -o nounset
+set -o pipefail
+
+# source the file so we get OPNFV vars
+source latest.properties
+
+# echo the info about artifact that is used during the deployment
+echo "Using $(echo $OPNFV_ARTIFACT_URL | cut -d'/' -f3) for deployment"
+
+# create TMPDIR if it doesn't exist
+export TMPDIR=$HOME/tmpdir
+[[ -d $TMPDIR ]] || mkdir -p $TMPDIR
+
+# change permissions down to TMPDIR
+chmod a+x $HOME
+chmod a+x $TMPDIR
+
+# set CONFDIR, BRIDGE
+CONFDIR=$WORKSPACE/deploy/templates/virtual_environment/conf
+BRIDGE=pxebr
+
+# log info to console
+echo "Starting the deployment for a merged change using $INSTALLER. This could take some time..."
+echo "--------------------------------------------------------"
+echo
+
+# start the deployment
+echo "Issuing command"
+echo "sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh"
+
+sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh
+
+echo
+echo "--------------------------------------------------------"
+echo "Virtual deployment is done! Removing the intermediate files from artifact repo"
+
+PROPERTIES_FILE=$(echo $OPNFV_ARTIFACT_URL | sed 's/iso/properties/')
+gsutil rm gs://$OPNFV_ARTIFACT_URL
+gsutil rm gs://$PROPERTIES_FILE
diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh
index bb0e2b15f..b617bcf01 100755
--- a/jjb/fuel/fuel-deploy.sh
+++ b/jjb/fuel/fuel-deploy.sh
@@ -18,8 +18,8 @@ chmod a+x $HOME
chmod a+x $TMPDIR
# set CONFDIR, BRIDGE
-export CONFDIR=$WORKSPACE/fuel/deploy/templates/hardware_environment/conf/linux_foundation_lab/pod2
-export BRIDGE=pxebr
+CONFDIR=$WORKSPACE/deploy/templates/hardware_environment/conf/linux_foundation_lab/pod2
+BRIDGE=pxebr
# clone genesis repo and checkout the SR1 tag
echo "Cloning genesis repo"
@@ -41,8 +41,9 @@ echo
# start the deployment
echo "Issuing command"
-echo "sudo $WORKSPACE/fuel/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh"
-sudo $WORKSPACE/fuel/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh
+echo "sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh"
+
+sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh
echo
echo "--------------------------------------------------------"
diff --git a/jjb/fuel/fuel-download-artifact.sh b/jjb/fuel/fuel-download-artifact.sh
index 9adb546aa..05dc05e05 100755
--- a/jjb/fuel/fuel-download-artifact.sh
+++ b/jjb/fuel/fuel-download-artifact.sh
@@ -5,7 +5,7 @@ set -o pipefail
if [[ "$JOB_NAME" =~ "merge" ]]; then
# get the properties file for the Fuel ISO built for a merged change
- curl -s -o $WORKSPACE/opnfv-gerrit-$GERRIT_CHANGE_NUMBER.properties http://$GS_URL/latest.properties
+ curl -s -o $WORKSPACE/latest.properties http://$GS_URL/opnfv-gerrit-$GERRIT_CHANGE_NUMBER.properties
else
# get the latest.properties file in order to get info regarding latest artifact
curl -s -o $WORKSPACE/latest.properties http://$GS_URL/latest.properties
diff --git a/jjb/fuel/fuel-virtual-deploy.sh b/jjb/fuel/fuel-virtual-deploy.sh
deleted file mode 100755
index 4e0b2dc47..000000000
--- a/jjb/fuel/fuel-virtual-deploy.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-echo "Placeholder for Fuel virtual deploy"
diff --git a/jjb/fuel/fuel.yml b/jjb/fuel/fuel.yml
index e809592fc..40fd46d4e 100644
--- a/jjb/fuel/fuel.yml
+++ b/jjb/fuel/fuel.yml
@@ -12,7 +12,7 @@
jobs:
- 'fuel-verify-build-{stream}'
- 'fuel-merge-build-{stream}'
- - 'fuel-merge-virtual-deploy-{stream}'
+ - 'fuel-merge-deploy-virtual-{stream}'
- 'fuel-daily-{stream}'
- 'fuel-build-{stream}'
- 'fuel-deploy-{stream}'
@@ -87,6 +87,7 @@
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/{branch}'
+ readable-message: true
builders:
- shell:
@@ -157,11 +158,11 @@
!include-raw ./fuel-workspace-cleanup.sh
- job-template:
- name: 'fuel-merge-virtual-deploy-{stream}'
+ name: 'fuel-merge-deploy-virtual-{stream}'
project-type: freestyle
- node: ericsson-build
+ node: fuel-deploy-virtual
concurrent: true
@@ -213,10 +214,14 @@
- shell:
!include-raw ./fuel-download-artifact.sh
- shell:
- !include-raw ./fuel-virtual-deploy.sh
+ !include-raw ./fuel-deploy-virtual.sh
- shell:
!include-raw ./fuel-workspace-cleanup.sh
+ publishers:
+ - email:
+ recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
+
- job-template:
name: 'fuel-daily-{stream}'
diff --git a/jjb/functest/functest.yml b/jjb/functest/functest.yml
index 4df779d8c..cb72fc74b 100644
--- a/jjb/functest/functest.yml
+++ b/jjb/functest/functest.yml
@@ -643,10 +643,24 @@
builders:
- shell: |
#!/bin/bash
- set +e
- # cleanup: remove any docker containers leftovers
- echo "Removing existing Functest Docker containers..."
- docker rm -f $(docker ps | grep opnfv/functest | awk '{print $1}')
- echo "Removing existing Functest Docker image..."
- docker rmi -f $(docker images | grep opnfv/functest | awk '{print $3}')
+ echo "Cleaning up docker containers/images..."
+
+ # Remove previous running containers if exist
+ if [[ ! -z $(docker ps -a | grep opnfv/functest) ]]; then
+ echo "Removing existing opnfv/functest containers..."
+ docker ps | grep opnfv/functest | awk '{{print $1}}' | xargs docker stop
+ docker ps -a | grep opnfv/functest | awk '{{print $1}}' | xargs docker rm
+ fi
+
+
+ # Remove existing images if exist
+ if [[ ! -z $(docker images | grep opnfv/functest) ]]; then
+ echo "Docker images to remove:"
+ docker images | head -1 && docker images | grep opnfv/functest
+ image_tags=($(docker images | grep opnfv/functest | awk '{{print $2}}'))
+ for tag in "${{image_tags[@]}}"; do
+ echo "Removing docker image opnfv/functest:$tag..."
+ docker rmi opnfv/functest:$tag
+ done
+ fi
diff --git a/jjb/opnfv/opnfv-docs.yml b/jjb/opnfv/opnfv-docs.yml
index efb6b5bf1..0cc9420db 100644
--- a/jjb/opnfv/opnfv-docs.yml
+++ b/jjb/opnfv/opnfv-docs.yml
@@ -65,7 +65,7 @@
projects:
- project-compare-type: 'REG_EXP'
#Left out arno projects oscar|octopus|functest|genesis
- project-pattern: 'vswitchperf|yardstick|apex|availability|bottlenecks|compass4nfv|conductor|copper|doctor|dovetail|dpacc|escalator|fastpathmetrics|fuel|inspector|ipv6|joid|kvmfornfv|lsoapi|moon|movie|multisite|onosfw|ovsnfv|parser|prediction|promise|qtip|releng|rs|sfc|vnf_forwarding_graph|enfv|pinpoint|pharos|opnfvdocs'
+ project-pattern: 'vswitchperf|yardstick|apex|availability|bottlenecks|compass4nfv|conductor|copper|doctor|dovetail|dpacc|escalator|fastpathmetrics|fuel|inspector|ipv6|joid|kvmfornfv|lsoapi|moon|movie|multisite|onosfw|ovsnfv|parser|prediction|promise|qtip|releng|rs|sdnvpn|sfc|vnf_forwarding_graph|enfv|pinpoint|pharos|opnfvdocs'
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/master'
@@ -74,8 +74,7 @@
pattern: 'docs/**'
builders:
- - shell:
- !include-raw ../../utils/docu-build-new.sh
+ - upload-review-docs
- job-template:
name: 'opnfv-docs-merge'
@@ -114,7 +113,7 @@
comment-contains-value: 'remerge'
projects:
- project-compare-type: 'REG_EXP'
- project-pattern: 'vswitchperf|yardstick|apex|availability|bottlenecks|compass4nfv|conductor|copper|doctor|dovetail|dpacc|escalator|fastpathmetrics|fuel|inspector|ipv6|joid|kvmfornfv|lsoapi|moon|movie|multisite|onosfw|ovsnfv|parser|prediction|promise|qtip|releng|rs|sfc|vnf_forwarding_graph|enfv|pinpoint|pharos|opnfvdocs'
+ project-pattern: 'vswitchperf|yardstick|apex|availability|bottlenecks|compass4nfv|conductor|copper|doctor|dovetail|dpacc|escalator|fastpathmetrics|fuel|inspector|ipv6|joid|kvmfornfv|lsoapi|moon|movie|multisite|onosfw|ovsnfv|parser|prediction|promise|qtip|releng|rs|sdnvpn|sfc|vnf_forwarding_graph|enfv|pinpoint|pharos|opnfvdocs'
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/master'
@@ -123,5 +122,4 @@
pattern: 'docs/**'
builders:
- - shell:
- !include-raw ../../utils/docu-build-new.sh
+ - upload-merged-docs
diff --git a/jjb/releng-defaults.yaml b/jjb/releng-defaults.yaml
index a78a37e91..0292f5f31 100644
--- a/jjb/releng-defaults.yaml
+++ b/jjb/releng-defaults.yaml
@@ -9,4 +9,3 @@
build-artifact-num-to-keep: 5
ssh-credentials: 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
-
diff --git a/jjb/releng-jobs.yaml b/jjb/releng-jobs.yaml
index d732b1fab..40f05bf65 100644
--- a/jjb/releng-jobs.yaml
+++ b/jjb/releng-jobs.yaml
@@ -59,9 +59,6 @@
pattern: jjb-templates/**
- compare-type: ANT
pattern: utils/**
- forbidden-file-paths:
- - compare-type: ANT
- pattern: docs/**
builders:
@@ -118,9 +115,6 @@
pattern: jjb/**
- compare-type: ANT
pattern: utils/**
- forbidden-file-paths:
- - compare-type: ANT
- pattern: docs/**
builders:
- shell: |
diff --git a/jjb/releng-macros.yaml b/jjb/releng-macros.yaml
index 2c694c847..3afe8482a 100644
--- a/jjb/releng-macros.yaml
+++ b/jjb/releng-macros.yaml
@@ -143,3 +143,202 @@
name: jacoco-nojava-workaround
builders:
- shell: 'mkdir -p $WORKSPACE/target/classes'
+
+
+# New Releng macros
+
+- builder:
+ name: build-html-and-pdf-docs-output
+ builders:
+ - shell: |
+ #!/bin/bash -e
+ set -o pipefail
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+
+ _get_title_script="
+ import os
+ from docutils import core, nodes
+ with open('index.rst', 'r') as file:
+ data = file.read()
+ doctree = core.publish_doctree(data,
+ settings_overrides={'report_level': 5,
+ 'halt_level': 5})
+ if isinstance(doctree[0], nodes.title):
+ title = doctree[0]
+ else:
+ for c in doctree.children:
+ if isinstance(c, nodes.section):
+ title = c[0]
+ break
+ print title.astext()"
+ _git_sha1="$(git rev-parse HEAD)"
+
+ git clone ssh://gerrit.opnfv.org:29418/releng
+ [[ -d releng ]]
+
+ find docs/ -name 'index.rst' -printf '%h\n' | while read dir
+ do
+ _name="${dir##*/}"
+ _build="$dir/build"
+ _output="docs/output/$_name"
+
+ echo
+ echo "#################${dir//?/#}"
+ echo "Building DOCS in $dir"
+ echo "#################${dir//?/#}"
+ echo
+
+ sed -i "s/_sha1_/$_git_sha1/g" "$dir/index.rst"
+
+ if [[ ! -f "$dir/conf.py" ]] ; then
+ cp releng/docs/etc/conf.py "$dir/conf.py"
+ _title=$(cd $dir; python -c "$_get_title_script")
+ echo "latex_documents = [('index', '$_name.tex', \"$_title\", 'OPNFV', 'manual'),]" >> "$dir/conf.py"
+ fi
+ cp -f releng/docs/etc/opnfv-logo.png "$dir/opnfv-logo.png"
+
+ mkdir -p "$_output"
+
+ sphinx-build -b html -E "$dir" "$_output"
+
+ # Note: PDF creation may fail in project doc builds.
+ # We allow this test to be marked as succeeded with
+ # failure in PDF creation, but leave message to fix it.
+ # Any failure has to be fixed before B release.
+ {
+ sphinx-build -b latex -E "$dir" "$_build"
+ make -C "$_build" LATEXOPTS='--interaction=nonstopmode' all-pdf
+ mv "$_build/$_name.pdf" "$_output"
+ } || {
+ _msg="Error: PDF creation for $dir has failed, please fix source rst file(s)."
+ echo
+ echo "$_msg"
+ echo
+ echo "$_msg" >> gerrit_comment.txt
+ }
+ done
+
+- builder:
+ name: upload-under-review-docs-to-opnfv-artifacts
+ builders:
+ - shell: |
+ #!/bin/bash -e
+ set -o pipefail
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+ [[ -d docs/output ]]
+
+ echo
+ echo "###########################"
+ echo "UPLOADING DOCS UNDER REVIEW"
+ echo "###########################"
+ echo
+
+ gs_base="artifacts.opnfv.org/review"
+ gs_path="$gs_base/$GERRIT_CHANGE_NUMBER"
+ local_path="docs/$GERRIT_CHANGE_NUMBER"
+
+ mv docs/output "$local_path"
+ gsutil -m cp -r "$local_path" "gs://$gs_base"
+
+ if gsutil ls "gs://$gs_path" | grep -e 'html$' > /dev/null 2>&1 ; then
+ gsutil -m setmeta \
+ -h "Content-Type:text/html" \
+ -h "Cache-Control:private, max-age=0, no-transform" \
+ "gs://$gs_path"/**.html
+ fi
+
+ echo "Document link(s):" >> gerrit_comment.txt
+ find "$local_path" | grep -e 'index.html$' -e 'pdf$' | \
+ sed -e "s|^$local_path| http://$gs_path|" >> gerrit_comment.txt
+
+- builder:
+ name: upload-merged-docs-to-opnfv-artifacts
+ builders:
+ - shell: |
+ #!/bin/bash -e
+ set -o pipefail
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ -d docs/output ]]
+
+ echo
+ echo "#####################"
+ echo "UPLOADING MERGED DOCS"
+ echo "#####################"
+ echo
+
+ if [[ "$GERRIT_BRANCH" == "master" ]] ; then
+ gs_base="artifacts.opnfv.org/$GERRIT_PROJECT"
+ else
+ gs_base="artifacts.opnfv.org/$GERRIT_PROJECT/$GERRIT_BRANCH"
+ fi
+ gs_path="$gs_base/docs"
+ local_path="docs/docs"
+
+ mv docs/output "$local_path"
+ gsutil -m cp -r "$local_path" "gs://$gs_base"
+
+ if gsutil ls "gs://$gs_path" | grep -e 'html$' > /dev/null 2>&1 ; then
+ gsutil -m setmeta \
+ -h "Content-Type:text/html" \
+ -h "Cache-Control:private, max-age=0, no-transform" \
+ "gs://$gs_path"/**.html
+ fi
+
+ echo "Document link(s):" >> gerrit_comment.txt
+ find "$local_path" | grep -e 'index.html$' -e 'pdf$' | \
+ sed -e "s|^$local_path| http://$gs_path|" >> gerrit_comment.txt
+
+- builder:
+ name: report-docs-build-result-to-gerrit
+ builders:
+ - shell: |
+ #!/bin/bash -e
+ export PATH=$PATH:/usr/local/bin/
+ if [[ -e gerrit_comment.txt ]] ; then
+ echo
+ echo "posting review comment to gerrit..."
+ echo
+ cat gerrit_comment.txt
+ echo
+ ssh -p 29418 gerrit.opnfv.org \
+ "gerrit review -p $GERRIT_PROJECT \
+ -m '$(cat gerrit_comment.txt)' \
+ $GERRIT_PATCHSET_REVISION"
+ fi
+
+- builder:
+ name: remove-old-docs-from-opnfv-artifacts
+ builders:
+ - shell: |
+ #!/bin/bash -e
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+
+ gs_path="artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER"
+
+ if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
+ echo
+ echo "Deleting Out-of-dated Documents..."
+ gsutil -m rm -r "gs://$gs_path"
+ fi
+
+- builder:
+ name: upload-review-docs
+ builders:
+ - build-html-and-pdf-docs-output
+ - upload-under-review-docs-to-opnfv-artifacts
+ - report-docs-build-result-to-gerrit
+
+- builder:
+ name: upload-merged-docs
+ builders:
+ - build-html-and-pdf-docs-output
+ - upload-merged-docs-to-opnfv-artifacts
+ - report-docs-build-result-to-gerrit
+ - remove-old-docs-from-opnfv-artifacts
diff --git a/jjb/storperf/storperf.yml b/jjb/storperf/storperf.yml
index f1250cbc2..1d50911bc 100644
--- a/jjb/storperf/storperf.yml
+++ b/jjb/storperf/storperf.yml
@@ -1,8 +1,8 @@
- project:
name: storperf
jobs:
- - 'storperf-verify'
- - 'storperf-merge'
+ - 'storperf-verify-{stream}'
+ - 'storperf-merge-{stream}'
- 'storperf-daily-{stream}'
# stream: branch with - in place of / (eg. stable-arno)
@@ -14,9 +14,9 @@
project: 'storperf'
- job-template:
- name: 'storperf-verify'
+ name: 'storperf-verify-{stream}'
- node: ericsson-build
+ node: intel-jp-build-1
project-type: freestyle
@@ -31,6 +31,10 @@
project: '{project}'
- gerrit-parameter:
branch: 'master'
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
scm:
- gerrit-trigger-scm:
@@ -67,13 +71,13 @@
- job-template:
- name: 'storperf-merge'
+ name: 'storperf-merge-{stream}'
# builder-merge job to run JJB update
#
# This job's purpose is to update all the JJB
- node: ericsson-build
+ node: intel-jp-build-1
project-type: freestyle
@@ -88,6 +92,10 @@
project: '{project}'
- gerrit-parameter:
branch: 'master'
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
scm:
- gerrit-trigger-scm:
@@ -129,7 +137,7 @@
# Required Variables:
# stream: branch with - in place of / (eg. stable)
# branch: branch (eg. stable)
- node: ericsson-build
+ node: intel-jp-build-1
disabled: true
diff --git a/jjb/vswitchperf/vswitchperf.yml b/jjb/vswitchperf/vswitchperf.yml
index 07ce11414..6cc00f51e 100644
--- a/jjb/vswitchperf/vswitchperf.yml
+++ b/jjb/vswitchperf/vswitchperf.yml
@@ -1,10 +1,9 @@
- project:
name: vswitchperf
jobs:
- - 'vswitchperf-test'
- 'vswitchperf-daily-{stream}'
- - 'vswitchperf-merge'
- - 'vswitchperf-verify'
+ - 'vswitchperf-merge-{stream}'
+ - 'vswitchperf-verify-{stream}'
# stream: branch with - in place of / (eg. stable-helium)
# branch: branch (eg. stable/helium)
@@ -15,20 +14,6 @@
project: 'vswitchperf'
somevar: 'foo'
-- job-template:
- name: vswitchperf-test
-
- project-type: freestyle
-
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
-
- builders:
- - shell: |
- echo "Hello world from vswitchperf"
- job-template:
name: 'vswitchperf-daily-{stream}'
@@ -41,7 +26,7 @@
project-type: freestyle
varsetabove: '{somevar}'
- node: ericsson-build
+ node: opnfv-build
logrotate:
daysToKeep: '{build-days-to-keep}'
@@ -85,10 +70,19 @@
- test-macro
- job-template:
- name: 'vswitchperf-verify'
+ name: 'vswitchperf-verify-{stream}'
project-type: freestyle
- node: ericsson-build
+
+ node: opnfv-build
+
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 3
+ max-per-node: 2
logrotate:
daysToKeep: 30
@@ -146,14 +140,23 @@
make sanity
- job-template:
- name: 'vswitchperf-merge'
+ 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: ericsson-build
+
+ node: opnfv-build
+
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 3
+ max-per-node: 2
logrotate:
daysToKeep: 30