summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--INFO31
-rw-r--r--docs/ci/index.rst1
-rw-r--r--docs/infra/index.rst2
-rw-r--r--docs/infra/jenkins/connect-to-jenkins.rst26
-rw-r--r--docs/release/index.rst1
-rw-r--r--jjb/3rd_party_ci/odl-netvirt.yaml (renamed from jjb/3rd_party_ci/odl-netvirt.yml)0
-rwxr-xr-xjjb/apex/apex-build.sh11
-rwxr-xr-xjjb/apex/apex-deploy.sh9
-rwxr-xr-xjjb/apex/apex-download-artifact.sh5
-rw-r--r--jjb/apex/apex-jjb-renderer.py4
-rw-r--r--jjb/apex/apex-project-jobs.yaml (renamed from jjb/apex/apex-project-jobs.yml)0
-rw-r--r--jjb/apex/apex-snapshot-create.sh4
-rw-r--r--jjb/apex/apex-verify-jobs.yaml (renamed from jjb/apex/apex-verify-jobs.yml)11
-rw-r--r--jjb/apex/apex.yaml (renamed from jjb/apex/apex.yml)89
-rw-r--r--jjb/apex/apex.yaml.j2 (renamed from jjb/apex/apex.yml.j2)61
-rw-r--r--jjb/apex/scenarios.yaml.hidden2
-rw-r--r--jjb/armband/armband-ci-jobs.yaml (renamed from jjb/armband/armband-ci-jobs.yml)2
-rw-r--r--jjb/armband/armband-verify-jobs.yaml (renamed from jjb/armband/armband-verify-jobs.yml)0
-rw-r--r--jjb/auto/auto.yaml126
-rw-r--r--jjb/auto/auto.yml8
-rw-r--r--jjb/availability/availability.yaml (renamed from jjb/availability/availability.yml)0
-rw-r--r--jjb/barometer/barometer.yaml (renamed from jjb/barometer/barometer.yml)0
-rw-r--r--jjb/bottlenecks/bottlenecks-ci-jobs.yaml (renamed from jjb/bottlenecks/bottlenecks-ci-jobs.yml)0
-rw-r--r--jjb/bottlenecks/bottlenecks-project-jobs.yaml (renamed from jjb/bottlenecks/bottlenecks-project-jobs.yml)0
-rw-r--r--jjb/calipso/calipso.yaml (renamed from jjb/calipso/calipso.yml)0
-rw-r--r--jjb/ci_gate_security/opnfv-ci-gate-security.yaml (renamed from jjb/ci_gate_security/opnfv-ci-gate-security.yml)2
-rw-r--r--jjb/clover/clover-project.yaml (renamed from jjb/clover/clover-project.yml)0
-rw-r--r--jjb/compass4nfv/compass-ci-jobs.yaml (renamed from jjb/compass4nfv/compass-ci-jobs.yml)0
-rw-r--r--jjb/compass4nfv/compass-dovetail-jobs.yaml (renamed from jjb/compass4nfv/compass-dovetail-jobs.yml)0
-rw-r--r--jjb/compass4nfv/compass-project-jobs.yaml (renamed from jjb/compass4nfv/compass-project-jobs.yml)0
-rw-r--r--jjb/compass4nfv/compass-verify-jobs.yaml (renamed from jjb/compass4nfv/compass-verify-jobs.yml)0
-rw-r--r--jjb/conductor/conductor.yaml (renamed from jjb/conductor/conductor.yml)0
-rw-r--r--jjb/container4nfv/container4nfv-arm64.yaml (renamed from jjb/container4nfv/container4nfv-arm64.yml)0
-rw-r--r--jjb/container4nfv/container4nfv-project.yaml (renamed from jjb/container4nfv/container4nfv-project.yml)0
-rw-r--r--jjb/container4nfv/yardstick-arm64.yaml (renamed from jjb/container4nfv/yardstick-arm64.yml)0
-rw-r--r--jjb/copper/copper.yaml (renamed from jjb/copper/copper.yml)0
-rw-r--r--jjb/cperf/cperf-ci-jobs.yaml (renamed from jjb/cperf/cperf-ci-jobs.yml)0
-rw-r--r--jjb/daisy4nfv/daisy-daily-jobs.yaml (renamed from jjb/daisy4nfv/daisy-daily-jobs.yml)4
-rw-r--r--jjb/daisy4nfv/daisy-project-jobs.yaml (renamed from jjb/daisy4nfv/daisy-project-jobs.yml)4
-rw-r--r--jjb/daisy4nfv/daisy4nfv-merge-jobs.yaml (renamed from jjb/daisy4nfv/daisy4nfv-merge-jobs.yml)4
-rw-r--r--jjb/daisy4nfv/daisy4nfv-verify-jobs.yaml (renamed from jjb/daisy4nfv/daisy4nfv-verify-jobs.yml)4
-rw-r--r--jjb/doctor/doctor.yaml (renamed from jjb/doctor/doctor.yml)4
-rw-r--r--jjb/domino/domino.yaml (renamed from jjb/domino/domino.yml)0
-rw-r--r--jjb/dovetail/dovetail-artifacts-upload.yaml (renamed from jjb/dovetail/dovetail-artifacts-upload.yml)0
-rw-r--r--jjb/dovetail/dovetail-ci-jobs.yaml (renamed from jjb/dovetail/dovetail-ci-jobs.yml)0
-rw-r--r--jjb/dovetail/dovetail-project-jobs.yaml (renamed from jjb/dovetail/dovetail-project-jobs.yml)0
-rwxr-xr-xjjb/dovetail/dovetail-run.sh5
-rw-r--r--jjb/dovetail/dovetail-weekly-jobs.yaml (renamed from jjb/dovetail/dovetail-weekly-jobs.yml)0
-rw-r--r--jjb/dpacc/dpacc.yaml (renamed from jjb/dpacc/dpacc.yml)0
-rw-r--r--jjb/escalator/escalator.yaml (renamed from jjb/escalator/escalator.yml)0
-rw-r--r--jjb/fuel/fuel-daily-jobs.yaml (renamed from jjb/fuel/fuel-daily-jobs.yml)16
-rwxr-xr-xjjb/fuel/fuel-deploy.sh4
-rw-r--r--jjb/fuel/fuel-project-jobs.yaml (renamed from jjb/fuel/fuel-project-jobs.yml)0
-rw-r--r--jjb/fuel/fuel-verify-jobs.yaml (renamed from jjb/fuel/fuel-verify-jobs.yml)0
-rw-r--r--jjb/fuel/fuel-weekly-jobs.yaml (renamed from jjb/fuel/fuel-weekly-jobs.yml)0
-rw-r--r--jjb/functest/functest-daily-jobs.yaml (renamed from jjb/functest/functest-daily-jobs.yml)29
-rw-r--r--jjb/functest/functest-docker.yaml (renamed from jjb/functest/functest-docker.yml)0
-rw-r--r--jjb/functest/functest-kubernetes-docker.yaml (renamed from jjb/functest/functest-kubernetes-docker.yml)0
-rw-r--r--jjb/functest/functest-kubernetes-project-jobs.yaml (renamed from jjb/functest/functest-kubernetes-project-jobs.yml)0
-rw-r--r--jjb/functest/functest-project-jobs.yaml (renamed from jjb/functest/functest-project-jobs.yml)0
-rw-r--r--jjb/functest/functest-weekly-jobs.yaml (renamed from jjb/functest/functest-weekly-jobs.yml)0
-rw-r--r--jjb/functest/xtesting-docker.yaml (renamed from jjb/functest/xtesting-docker.yml)0
-rw-r--r--jjb/functest/xtesting-project-jobs.yaml (renamed from jjb/functest/xtesting-project-jobs.yml)0
m---------jjb/global-jjb0
-rw-r--r--jjb/global/basic-jobs.yaml (renamed from jjb/global/basic-jobs.yml)0
-rw-r--r--jjb/global/installer-params.yaml (renamed from jjb/global/installer-params.yml)0
-rw-r--r--jjb/global/releng-defaults.yaml (renamed from jjb/global/releng-defaults.yml)0
-rw-r--r--jjb/global/releng-macros.yaml (renamed from jjb/global/releng-macros.yml)55
-rw-r--r--jjb/global/slave-params.yaml (renamed from jjb/global/slave-params.yml)11
-rw-r--r--jjb/ipv6/ipv6.yaml (renamed from jjb/ipv6/ipv6.yml)0
-rw-r--r--jjb/joid/joid-daily-jobs.yaml (renamed from jjb/joid/joid-daily-jobs.yml)0
-rw-r--r--jjb/joid/joid-verify-jobs.yaml (renamed from jjb/joid/joid-verify-jobs.yml)0
-rw-r--r--jjb/kvmfornfv/kvmfornfv.yaml (renamed from jjb/kvmfornfv/kvmfornfv.yml)0
-rw-r--r--jjb/models/models.yaml (renamed from jjb/models/models.yml)0
-rw-r--r--jjb/moon/moon.yaml (renamed from jjb/moon/moon.yml)0
-rw-r--r--jjb/netready/netready.yaml (renamed from jjb/netready/netready.yml)0
-rw-r--r--jjb/nfvbench/nfvbench.yaml (renamed from jjb/nfvbench/nfvbench.yml)0
-rw-r--r--jjb/onosfw/onosfw.yaml (renamed from jjb/onosfw/onosfw.yml)0
-rwxr-xr-xjjb/openci/create-ane.sh26
-rwxr-xr-xjjb/openci/create-cde.sh27
-rwxr-xr-xjjb/openci/create-clme.sh27
-rw-r--r--jjb/openci/openci-odl-daily-jobs.yaml99
-rw-r--r--jjb/openci/openci-onap-daily-jobs.yaml99
-rw-r--r--jjb/openci/openci-opnfv-daily-jobs.yaml149
-rw-r--r--jjb/opera/opera-daily-jobs.yaml (renamed from jjb/opera/opera-daily-jobs.yml)0
-rw-r--r--jjb/opera/opera-project-jobs.yaml (renamed from jjb/opera/opera-project-jobs.yml)0
-rw-r--r--jjb/opera/opera-verify-jobs.yaml (renamed from jjb/opera/opera-verify-jobs.yml)0
-rw-r--r--jjb/opnfvdocs/opnfvdocs.yaml (renamed from jjb/opnfvdocs/opnfvdocs.yml)0
-rw-r--r--jjb/orchestra/orchestra-daily-jobs.yaml (renamed from jjb/orchestra/orchestra-daily-jobs.yml)0
-rw-r--r--jjb/orchestra/orchestra-project-jobs.yaml (renamed from jjb/orchestra/orchestra-project-jobs.yml)0
-rw-r--r--jjb/ovn4nfv/ovn4nfv-daily-jobs.yaml (renamed from jjb/ovn4nfv/ovn4nfv-daily-jobs.yml)0
-rw-r--r--jjb/ovn4nfv/ovn4nfv-project-jobs.yaml (renamed from jjb/ovn4nfv/ovn4nfv-project-jobs.yml)0
-rw-r--r--jjb/ovsnfv/ovsnfv.yaml (renamed from jjb/ovsnfv/ovsnfv.yml)0
-rw-r--r--jjb/parser/parser.yaml (renamed from jjb/parser/parser.yml)0
-rw-r--r--jjb/pharos/check-jinja2.yaml (renamed from jjb/pharos/check-jinja2.yml)0
-rw-r--r--jjb/pharos/pharos.yaml (renamed from jjb/pharos/pharos.yml)0
-rw-r--r--jjb/promise/promise.yaml (renamed from jjb/promise/promise.yml)0
-rw-r--r--jjb/qtip/qtip-experimental-jobs.yaml (renamed from jjb/qtip/qtip-experimental-jobs.yml)0
-rw-r--r--jjb/qtip/qtip-validate-jobs.yaml (renamed from jjb/qtip/qtip-validate-jobs.yml)0
-rw-r--r--jjb/qtip/qtip-verify-jobs.yaml (renamed from jjb/qtip/qtip-verify-jobs.yml)0
-rw-r--r--jjb/releng/artifact-cleanup.yaml (renamed from jjb/releng/artifact-cleanup.yml)0
-rw-r--r--jjb/releng/compass4nfv-docker.yaml (renamed from jjb/releng/compass4nfv-docker.yml)89
-rw-r--r--jjb/releng/opnfv-docker-arm.yaml (renamed from jjb/releng/opnfv-docker-arm.yml)0
-rw-r--r--jjb/releng/opnfv-docker-custom.yaml (renamed from jjb/releng/opnfv-docker-custom.yml)0
-rw-r--r--jjb/releng/opnfv-docker.sh9
-rw-r--r--jjb/releng/opnfv-docker.yaml (renamed from jjb/releng/opnfv-docker.yml)0
-rw-r--r--jjb/releng/opnfv-lint.yaml (renamed from jjb/releng/opnfv-lint.yml)2
-rw-r--r--jjb/releng/opnfv-utils.yaml (renamed from jjb/releng/opnfv-utils.yml)0
-rw-r--r--jjb/releng/releng-ci-jobs.yaml15
-rw-r--r--jjb/releng/releng-ci-jobs.yml124
-rw-r--r--jjb/releng/releng-release-create-venv.sh (renamed from jjb/releng/releng-release-verify.sh)23
-rw-r--r--jjb/releng/releng-release-jobs.yaml (renamed from jjb/releng/releng-release-jobs.yml)32
-rw-r--r--jjb/releng/releng-release-tagging.sh70
-rw-r--r--jjb/releng/testresults-automate.yaml (renamed from jjb/releng/testresults-automate.yml)0
-rw-r--r--jjb/releng/testresults-verify.yaml (renamed from jjb/releng/testresults-verify.yml)0
-rwxr-xr-xjjb/releng/verify-releng.sh21
-rw-r--r--jjb/securedlab/check-jinja2.yaml (renamed from jjb/securedlab/check-jinja2.yml)0
-rw-r--r--jjb/sfc/sfc-project-jobs.yaml (renamed from jjb/sfc/sfc-project-jobs.yml)0
-rw-r--r--jjb/snaps/snaps-verify-jobs.yaml (renamed from jjb/snaps/snaps-verify-jobs.yml)0
-rw-r--r--jjb/stor4nfv/stor4nfv-project.yaml (renamed from jjb/stor4nfv/stor4nfv-project.yml)0
-rw-r--r--jjb/storperf/storperf-daily-jobs.yaml (renamed from jjb/storperf/storperf-daily-jobs.yml)0
-rw-r--r--jjb/storperf/storperf-verify-jobs.yaml (renamed from jjb/storperf/storperf-verify-jobs.yml)0
-rw-r--r--jjb/storperf/storperf.yaml (renamed from jjb/storperf/storperf.yml)0
-rw-r--r--jjb/ves/ves.yaml (renamed from jjb/ves/ves.yml)0
-rw-r--r--jjb/vnf_forwarding_graph/vnf_forwarding_graph.yaml (renamed from jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml)0
-rw-r--r--jjb/vswitchperf/vswitchperf.yaml (renamed from jjb/vswitchperf/vswitchperf.yml)0
-rw-r--r--jjb/xci/bifrost-cleanup-job.yaml (renamed from jjb/xci/bifrost-cleanup-job.yml)0
-rw-r--r--jjb/xci/bifrost-periodic-jobs.yaml (renamed from jjb/xci/bifrost-periodic-jobs.yml)0
-rw-r--r--jjb/xci/bifrost-verify-jobs.yaml (renamed from jjb/xci/bifrost-verify-jobs.yml)14
-rw-r--r--jjb/xci/osa-periodic-jobs.yaml (renamed from jjb/xci/osa-periodic-jobs.yml)0
-rw-r--r--jjb/xci/xci-daily-jobs.yaml (renamed from jjb/xci/xci-daily-jobs.yml)14
-rw-r--r--jjb/xci/xci-merge-jobs.yaml (renamed from jjb/xci/xci-merge-jobs.yml)14
-rwxr-xr-xjjb/xci/xci-run-functest.sh2
-rwxr-xr-xjjb/xci/xci-set-scenario.sh39
-rwxr-xr-xjjb/xci/xci-start-new-vm.sh4
-rw-r--r--jjb/xci/xci-verify-jobs.yaml (renamed from jjb/xci/xci-verify-jobs.yml)16
-rw-r--r--jjb/yardstick/yardstick-daily-jobs.yaml (renamed from jjb/yardstick/yardstick-daily-jobs.yml)0
-rw-r--r--jjb/yardstick/yardstick-project-jobs.yaml (renamed from jjb/yardstick/yardstick-project-jobs.yml)0
-rw-r--r--releases/fraser/apex.yaml12
-rw-r--r--releases/fraser/armband.yaml (renamed from releases/fraser/armband.yml)3
-rw-r--r--releases/fraser/auto.yaml8
-rw-r--r--releases/fraser/availability.yaml4
-rw-r--r--releases/fraser/barometer.yaml4
-rw-r--r--releases/fraser/bottlenecks.yaml3
-rw-r--r--releases/fraser/calipso.yaml5
-rw-r--r--releases/fraser/clover.yaml3
-rw-r--r--releases/fraser/compass4nfv.yaml7
-rw-r--r--releases/fraser/container4nfv.yaml3
-rw-r--r--releases/fraser/doctor.yaml4
-rw-r--r--releases/fraser/fds.yaml5
-rw-r--r--releases/fraser/fuel.yaml3
-rw-r--r--releases/fraser/functest.yaml6
-rw-r--r--releases/fraser/ipv6.yaml5
-rw-r--r--releases/fraser/joid.yaml4
-rw-r--r--releases/fraser/nfvbench.yaml3
-rw-r--r--releases/fraser/opnfvdocs.yaml3
-rw-r--r--releases/fraser/ovn4nfv.yaml3
-rw-r--r--releases/fraser/samplevnf.yaml3
-rw-r--r--releases/fraser/sdnvpn.yaml3
-rw-r--r--releases/fraser/sfc.yaml4
-rw-r--r--releases/fraser/snaps.yaml3
-rw-r--r--releases/fraser/stor4nfv.yaml3
-rw-r--r--releases/fraser/storperf.yaml3
-rw-r--r--releases/fraser/vswitchperf.yaml3
-rw-r--r--releases/fraser/yardstick.yaml3
-rw-r--r--releases/scripts/release-status.sh25
-rw-r--r--releases/scripts/repos.py60
-rw-r--r--utils/build-server-ansible/vars/CentOS.yml3
-rw-r--r--utils/build-server-ansible/vars/Ubuntu.yml3
169 files changed, 1237 insertions, 417 deletions
diff --git a/INFO b/INFO
deleted file mode 100644
index d9051abdc..000000000
--- a/INFO
+++ /dev/null
@@ -1,31 +0,0 @@
-Project: Release Engineering (Releng)
-Project Creation Date: July 14, 2015
-Project Category: Integration & Testing
-Lifecycle State: Incubation
-Primary Contact: Fatih Degirmenci
-Project Lead: Fatih Degirmenci
-Jira Project Name: Release Engineering
-Jira Project Prefix: RELENG
-Mailing list tag: [releng]
-IRC: Server:freenode.net Channel:#opnfv-octopus
-Repository: releng
-Other Repositories: releng-xci, releng-testresults
-
-Committers:
-Fatih Degirmenci (Ericsson, fatih.degirmenci@ericsson.com)
-Aric Gardner (Linux Foundation, agardner@linuxfoundation.org)
-Tim Rozet (Red Hat, trozet@redhat.com)
-Morgan Richomme (Orange, morgan.richomme@orange.com)
-Jose Lausuch (Ericsson, jose.lausuch@ericsson.com)
-Ryota Mibu (NEC, r-mibu@cq.jp.nec.com)
-Mei Mei (Huawei, meimei@huawei.com)
-Trevor Bramwell (Linux Foundation, tbramwell@linuxfoundation.org)
-Serena Feng (ZTE, feng.xiaowei@zte.com.cn)
-Yolanda Robla Mota (Red Hat, yroblamo@redhat.com)
-Markos Chandras (SUSE, mchandras@suse.de)
-Luke Hinds (Red Hat, lhinds@redhat.com)
-
-Link to TSC approval of the project: http://ircbot.wl.linuxfoundation.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-07-14-14.00.html
-Link to TSC voting for removal of Victor Laza as committer: http://meetbot.opnfv.org/meetings/opnfv-meeting/2016/opnfv-meeting.2016-02-16-14.59.html
-Link to nomination and acceptance of Mei Mei as committer: http://lists.opnfv.org/pipermail/opnfv-tsc/2016-March/002228.html
-Links to nomination and accceptance of Trevor Bramwell as committer: http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011659.html and http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011714.html
diff --git a/docs/ci/index.rst b/docs/ci/index.rst
index da6fc7de1..08f23ac2f 100644
--- a/docs/ci/index.rst
+++ b/docs/ci/index.rst
@@ -11,7 +11,6 @@ OPNFV CI
TBD
.. toctree::
- :numbered:
:maxdepth: 2
user-guide
diff --git a/docs/infra/index.rst b/docs/infra/index.rst
index 50c971e75..248e8230c 100644
--- a/docs/infra/index.rst
+++ b/docs/infra/index.rst
@@ -70,7 +70,7 @@ Issue and Bug Tracking
JIRA
.. toctree::
- :maxdepth:
+ :maxdepth: 1
jira/user-guide
diff --git a/docs/infra/jenkins/connect-to-jenkins.rst b/docs/infra/jenkins/connect-to-jenkins.rst
index e83cadada..ddf345fa3 100644
--- a/docs/infra/jenkins/connect-to-jenkins.rst
+++ b/docs/infra/jenkins/connect-to-jenkins.rst
@@ -113,54 +113,80 @@ Please follow below steps to connect a slave to OPNFV Jenkins.
1. Create a user named **jenkins** on the machine you want to connect to OPNFV Jenkins and give the user sudo rights.
2. Install needed software on the machine you want to connect to OPNFV Jenkins as slave.
+
- openjdk 8
- monit
+
3. If the slave will be used for running virtual deployments, Functest, and Yardstick, install below software and make jenkins user the member of the groups.
+
- docker
- libvirt
+
4. Create slave root in Jenkins user home directory.
+
``mkdir -p /home/jenkins/opnfv/slave_root``
+
5. Clone OPNFV Releng Git repository.
+
``mkdir -p /home/jenkins/opnfv/repos``
``cd /home/jenkins/opnfv/repos``
``git clone https://gerrit.opnfv.org/gerrit/p/releng.git``
+
6. Contact LF by sending mail to `OPNFV LF Helpdesk <opnfv-helpdesk@rt.linuxfoundation.org>`_ and request creation of a slave on OPNFV Jenkins. Include below information in your mail.
+
- Slave root (/home/jenkins/opnfv/slave_root)
- Public IP of the slave (You can get the IP by executing ``curl http://icanhazip.com/``)
- PGP Key (attached to the mail or exported to a key server)
+
7. Once you get confirmation from LF stating that your slave is created on OPNFV Jenkins, check if the firewall on LF is open for the server you are trying to connect to Jenkins.
+
``cp /home/jenkins/opnfv/repos/releng/utils/jenkins-jnlp-connect.sh /home/jenkins/``
``cd /home/jenkins/``
``sudo ./jenkins-jnlp-connect.sh -j /home/jenkins -u jenkins -n <slave name on OPNFV Jenkins> -s <the token you received from LF> -f``
- If you receive an error, follow the steps listed on the command output.
+
8. Run the same script with test(-t) on foreground in order to make sure no problem on connection. You should see **INFO: Connected** in the console log.
+
``sudo ./jenkins-jnlp-connect.sh -j /home/jenkins -u jenkins -n <slave name on OPNFV Jenkins> -s <the token you received from LF> -t``
- If you receive an error similar to the one shown `on this link <http://hastebin.com/ozadagirax.avrasm>`_, you need to check your firewall and allow outgoing connections for the port.
+
9. Kill the Java slave.jar process.
10. Run the same script normally without test(-t) in order to get monit script created.
+
``sudo ./jenkins-jnlp-connect.sh -j /home/jenkins -u jenkins -n <slave name on OPNFV Jenkins> -s <the token you received from LF>``
+
11. Edit monit configuration and enable http interface. The file to edit is /etc/monit/monitrc on Ubuntu systems. Uncomment below lines.
+
set httpd port 2812 and
use address localhost # only accept connection from localhost
allow localhost # allow localhost to connect to the server and
+
12. Restart monit service.
+
- Without systemd:
``sudo service monit restart``
+
- With systemd: you have to enable monit service first and then restart it.
``sudo systemctl enable monit``
``sudo systemctl restart monit``
+
13. Check to see if jenkins comes up as managed service in monit.
+
``sudo monit status``
+
14. Connect slave to OPNFV Jenkins using monit.
+
``sudo monit start jenkins``
+
15. Check slave on OPNFV Jenkins to verify the slave is reported as connected.
+
- The slave on OPNFV Jenkins should have some executors in “Idle” state if the connection is successful.
Notes
diff --git a/docs/release/index.rst b/docs/release/index.rst
index 49cd00bdb..e814bec02 100644
--- a/docs/release/index.rst
+++ b/docs/release/index.rst
@@ -9,7 +9,6 @@ Releasing OPNFV
===============
.. toctree::
- :numbered:
:maxdepth: 2
release-process
diff --git a/jjb/3rd_party_ci/odl-netvirt.yml b/jjb/3rd_party_ci/odl-netvirt.yaml
index 863eb94dd..863eb94dd 100644
--- a/jjb/3rd_party_ci/odl-netvirt.yml
+++ b/jjb/3rd_party_ci/odl-netvirt.yaml
diff --git a/jjb/apex/apex-build.sh b/jjb/apex/apex-build.sh
index aabd20e30..09aa716be 100755
--- a/jjb/apex/apex-build.sh
+++ b/jjb/apex/apex-build.sh
@@ -12,21 +12,26 @@ echo
if echo $ARTIFACT_VERSION | grep "dev" 1> /dev/null; then
GERRIT_PATCHSET_NUMBER=$(echo $GERRIT_REFSPEC | grep -Eo '[0-9]+$')
export OPNFV_ARTIFACT_VERSION="dev${GERRIT_CHANGE_NUMBER}_${GERRIT_PATCHSET_NUMBER}"
- export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ if [ "$BRANCH" == 'master' ]; then
+ # build rpm
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms"
+ else
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ fi
elif echo $BUILD_TAG | grep "csit" 1> /dev/null; then
export OPNFV_ARTIFACT_VERSION=csit${BUILD_NUMBER}
export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
elif [ "$ARTIFACT_VERSION" == "daily" ]; then
export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d")
if [ "$BRANCH" == 'master' ]; then
- export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms"
else
export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --iso"
fi
else
export OPNFV_ARTIFACT_VERSION=${ARTIFACT_VERSION}
if [ "$BRANCH" == 'master' ]; then
- export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms"
else
export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --iso"
fi
diff --git a/jjb/apex/apex-deploy.sh b/jjb/apex/apex-deploy.sh
index 35c2b8544..dfaf2a8b5 100755
--- a/jjb/apex/apex-deploy.sh
+++ b/jjb/apex/apex-deploy.sh
@@ -118,11 +118,8 @@ if [[ "$JOB_NAME" =~ "virtual" ]]; then
if [[ "${DEPLOY_SCENARIO}" =~ fdio|ovs ]]; then
DEPLOY_CMD="${DEPLOY_CMD} --virtual-default-ram 12 --virtual-compute-ram 7"
fi
- if [[ "$JOB_NAME" == *csit* ]]; then
- DEPLOY_CMD="${DEPLOY_CMD} -e csit-environment.yaml"
- fi
if [[ "$PROMOTE" == "True" ]]; then
- DEPLOY_CMD="${DEPLOY_CMD} --virtual-computes 1"
+ DEPLOY_CMD="${DEPLOY_CMD} --virtual-computes 2 -e csit-environment.yaml"
fi
else
# settings for bare metal deployment
@@ -144,6 +141,8 @@ fi
if [ "$IPV6_FLAG" == "True" ]; then
NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings_v6.yaml"
+elif [[ "$PROMOTE" == "True" ]]; then
+ NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings_csit.yaml"
else
NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings.yaml"
fi
@@ -157,7 +156,7 @@ fi
# start deployment
sudo ${DEPLOY_CMD} -d ${DEPLOY_FILE} -n ${NETWORK_FILE} --debug
-if [[ "$JOB_NAME" == *csit* ]]; then
+if [[ "$PROMOTE" == 'True' ]]; then
echo "CSIT job: setting host route for floating ip routing"
# csit route to allow docker container to reach floating ips
UNDERCLOUD=$(sudo virsh domifaddr undercloud | grep -Eo "[0-9\.]+{3}[0-9]+")
diff --git a/jjb/apex/apex-download-artifact.sh b/jjb/apex/apex-download-artifact.sh
index 3efe1cbc7..e1e51b3b6 100755
--- a/jjb/apex/apex-download-artifact.sh
+++ b/jjb/apex/apex-download-artifact.sh
@@ -45,10 +45,9 @@ else
RPM_INSTALL_PATH=$(echo "http://"$OPNFV_RPM_URL | sed 's/\/'"$(basename $OPNFV_RPM_URL)"'//')
RPM_LIST=$(basename $OPNFV_RPM_URL)
-
+ # find version of RPM
+ VERSION_EXTENSION=$(echo $(basename $RPM_LIST) | grep -Eo '[0-9]+\.[0-9]+-([0-9]{8}|[a-z]+-[0-9]\.[0-9]+)')
if [ "$BRANCH" != 'master' ]; then
- # find version of RPM
- VERSION_EXTENSION=$(echo $(basename $RPM_LIST) | grep -Eo '[0-9]+\.[0-9]+-([0-9]{8}|[a-z]+-[0-9]\.[0-9]+)')
# build RPM List which already includes base Apex RPM
RPM_LIST+=" opnfv-apex-undercloud-${VERSION_EXTENSION}.noarch.rpm"
RPM_LIST+=" python34-opnfv-apex-${VERSION_EXTENSION}.noarch.rpm"
diff --git a/jjb/apex/apex-jjb-renderer.py b/jjb/apex/apex-jjb-renderer.py
index b67784376..0da47b518 100644
--- a/jjb/apex/apex-jjb-renderer.py
+++ b/jjb/apex/apex-jjb-renderer.py
@@ -25,7 +25,7 @@ def render_jjb():
with open('scenarios.yaml.hidden') as _:
scenarios = yaml.safe_load(_)
- template = env.get_template('apex.yml.j2')
+ template = env.get_template('apex.yaml.j2')
print("Scenarios are: ")
pprint.pprint(scenarios)
@@ -42,7 +42,7 @@ def render_jjb():
output = template.render(scenarios=scenarios, gspathname=gspathname,
branch=branch, build_slave=build_slave)
- with open('./apex.yml', 'w') as fh:
+ with open('./apex.yaml', 'w') as fh:
fh.write(output)
if __name__ == "__main__":
diff --git a/jjb/apex/apex-project-jobs.yml b/jjb/apex/apex-project-jobs.yaml
index 700ff60e8..700ff60e8 100644
--- a/jjb/apex/apex-project-jobs.yml
+++ b/jjb/apex/apex-project-jobs.yaml
diff --git a/jjb/apex/apex-snapshot-create.sh b/jjb/apex/apex-snapshot-create.sh
index 342896c7d..7e38d56b4 100644
--- a/jjb/apex/apex-snapshot-create.sh
+++ b/jjb/apex/apex-snapshot-create.sh
@@ -78,9 +78,7 @@ for node in $nodes; do
done
# copy virsh net definitions
-for net in admin api external storage tenant; do
- sudo virsh net-dumpxml ${net} > ${net}.xml
-done
+sudo virsh net-dumpxml admin > admin.xml
sudo chown jenkins-ci:jenkins-ci *
diff --git a/jjb/apex/apex-verify-jobs.yml b/jjb/apex/apex-verify-jobs.yaml
index 7dbd6709b..fd6be6e81 100644
--- a/jjb/apex/apex-verify-jobs.yml
+++ b/jjb/apex/apex-verify-jobs.yaml
@@ -10,12 +10,12 @@
- master: &master
branch: '{stream}'
gs-pathname: ''
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
disabled: false
- fraser: &fraser
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
disabled: false
- danube: &danube
branch: 'stable/{stream}'
@@ -243,6 +243,8 @@
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ FUNCTEST_SUITE_NAME=tempest_smoke_serial
+ FUNCTEST_MODE=testcase
node-parameters: false
kill-phase-on: FAILURE
abort-all-job: true
@@ -309,6 +311,7 @@
blocking-jobs:
- 'apex-verify.*'
- 'apex-virtual.*'
+ - 'apex-.*-promote.*'
- throttle:
max-per-node: 1
max-total: 10
@@ -348,8 +351,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_MODE=tier
- FUNCTEST_TIER=healthcheck
+ FUNCTEST_SUITE_NAME=tempest_smoke_serial
+ FUNCTEST_MODE=testcase
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yaml
index 587a06377..bb5b53d6d 100644
--- a/jjb/apex/apex.yml
+++ b/jjb/apex/apex.yaml
@@ -8,7 +8,7 @@
- 'apex-virtual-{stream}'
- 'apex-deploy-{platform}-{stream}'
- 'apex-daily-{stream}'
- - 'apex-csit-promote-daily-{stream}'
+ - 'apex-csit-promote-daily-{stream}-{os_version}'
- 'apex-fdio-promote-daily-{stream}'
- 'apex-{scenario}-baremetal-{scenario_stream}'
- 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
@@ -25,7 +25,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'master'
disable_daily: false
disable_promote: false
@@ -35,7 +35,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'fraser'
disable_daily: false
disable_promote: true
@@ -144,9 +144,13 @@
<<: *danube
- 'os-ovn-nofeature-noha':
<<: *danube
- - 'os-odl-master_upstream-noha':
+ - 'os-odl-nofeature-noha':
<<: *master
- - 'os-odl-queens_upstream-noha':
+ - 'os-odl-nofeature-ha':
+ <<: *master
+ - 'os-odl-queens-noha':
+ <<: *master
+ - 'os-odl-queens-ha':
<<: *master
- 'os-nosdn-nofeature-noha':
<<: *euphrates
@@ -190,9 +194,12 @@
- 'virtual'
os_version:
- - 'pike'
- - 'queens'
- - 'master'
+ - 'pike':
+ os_scenario: 'pike'
+ - 'queens':
+ os_scenario: 'queens'
+ - 'master':
+ os_scenario: 'nofeature'
# Fetch Logs Job
@@ -361,6 +368,7 @@
parameters:
- '{project}-defaults'
- '{project}-virtual-{stream}-defaults'
+ - 'functest-suite-parameter'
- project-parameter:
project: '{project}'
branch: '{branch}'
@@ -382,7 +390,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-virtual-.*'
- 'apex-verify-gate-.*'
@@ -408,6 +415,7 @@
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ PROMOTE=$PROMOTE
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
@@ -420,7 +428,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=$FUNCTEST_MODE
+ FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
@@ -570,7 +579,6 @@
blocking-jobs:
- 'apex-verify.*'
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-testsuite-.+-baremetal-.+'
- throttle:
@@ -758,7 +766,7 @@
# CSIT promote
- job-template:
- name: 'apex-csit-promote-daily-{stream}'
+ name: 'apex-csit-promote-daily-{stream}-{os_version}'
# Job template for promoting CSIT Snapshots
#
@@ -778,6 +786,14 @@
branch: '{branch}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
+ - string:
+ name: ARTIFACT_VERSION
+ default: dev
+ description: "Used for overriding the ARTIFACT_VERSION"
+ - string:
+ name: PROMOTE
+ default: 'True'
+ description: "Used for overriding the PROMOTE"
properties:
- build-blocker:
@@ -785,7 +801,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-verify.*'
- - 'apex-deploy.*'
- 'apex-runner.*'
- 'apex-daily.*'
@@ -794,40 +809,24 @@
builders:
- multijob:
- name: deploy-virtual
+ name: apex-virtual-deploy-test
condition: SUCCESSFUL
projects:
- - name: 'apex-deploy-virtual-{stream}'
- current-parameters: false
+ - name: 'apex-virtual-{stream}'
+ current-parameters: true
predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
+ DEPLOY_SCENARIO=os-odl-{os_scenario}-noha
OPNFV_CLEAN=yes
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- PROMOTE=True
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- git-revision: false
- - multijob:
- name: functest-smoke
- condition: SUCCESSFUL
- projects:
- - name: 'functest-apex-virtual-suite-{stream}'
- current-parameters: false
- predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
FUNCTEST_SUITE_NAME=tempest_smoke_serial
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ FUNCTEST_MODE=testcase
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
- git-revision: false
+ git-revision: true
- multijob:
name: create snapshot
condition: SUCCESSFUL
@@ -1494,7 +1493,23 @@
name: Baremetal Deploy and Test Phase
condition: SUCCESSFUL
projects:
- - name: 'apex-os-odl-master_upstream-noha-baremetal-master'
+ - name: 'apex-os-odl-nofeature-noha-baremetal-master'
+ node-parameters: false
+ current-parameters: false
+ predefined-parameters: |
+ OPNFV_CLEAN=yes
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
+ - name: 'apex-os-odl-nofeature-ha-baremetal-master'
+ node-parameters: false
+ current-parameters: false
+ predefined-parameters: |
+ OPNFV_CLEAN=yes
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
+ - name: 'apex-os-odl-queens-noha-baremetal-master'
node-parameters: false
current-parameters: false
predefined-parameters: |
@@ -1502,7 +1517,7 @@
kill-phase-on: NEVER
abort-all-job: true
git-revision: false
- - name: 'apex-os-odl-queens_upstream-noha-baremetal-master'
+ - name: 'apex-os-odl-queens-ha-baremetal-master'
node-parameters: false
current-parameters: false
predefined-parameters: |
diff --git a/jjb/apex/apex.yml.j2 b/jjb/apex/apex.yaml.j2
index 4620bbc7e..3397f1ed2 100644
--- a/jjb/apex/apex.yml.j2
+++ b/jjb/apex/apex.yaml.j2
@@ -8,7 +8,7 @@
- 'apex-virtual-{stream}'
- 'apex-deploy-{platform}-{stream}'
- 'apex-daily-{stream}'
- - 'apex-csit-promote-daily-{stream}'
+ - 'apex-csit-promote-daily-{stream}-{os_version}'
- 'apex-fdio-promote-daily-{stream}'
- 'apex-{scenario}-baremetal-{scenario_stream}'
- 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
@@ -25,7 +25,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'master'
disable_daily: false
disable_promote: false
@@ -35,7 +35,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'fraser'
disable_daily: false
disable_promote: true
@@ -74,9 +74,12 @@
- 'virtual'
os_version:
- - 'pike'
- - 'queens'
- - 'master'
+ - 'pike':
+ os_scenario: 'pike'
+ - 'queens':
+ os_scenario: 'queens'
+ - 'master':
+ os_scenario: 'nofeature'
# Fetch Logs Job
@@ -245,6 +248,7 @@
parameters:
- '{project}-defaults'
- '{project}-virtual-{stream}-defaults'
+ - 'functest-suite-parameter'
- project-parameter:
project: '{project}'
branch: '{branch}'
@@ -266,7 +270,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-virtual-.*'
- 'apex-verify-gate-.*'
@@ -292,6 +295,7 @@
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ PROMOTE=$PROMOTE
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
@@ -304,7 +308,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=$FUNCTEST_MODE
+ FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
@@ -454,7 +459,6 @@
blocking-jobs:
- 'apex-verify.*'
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-testsuite-.+-baremetal-.+'
- throttle:
@@ -642,7 +646,7 @@
# CSIT promote
- job-template:
- name: 'apex-csit-promote-daily-{stream}'
+ name: 'apex-csit-promote-daily-{stream}-{os_version}'
# Job template for promoting CSIT Snapshots
#
@@ -662,6 +666,14 @@
branch: '{branch}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
+ - string:
+ name: ARTIFACT_VERSION
+ default: dev
+ description: "Used for overriding the ARTIFACT_VERSION"
+ - string:
+ name: PROMOTE
+ default: 'True'
+ description: "Used for overriding the PROMOTE"
properties:
- build-blocker:
@@ -669,7 +681,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-verify.*'
- - 'apex-deploy.*'
- 'apex-runner.*'
- 'apex-daily.*'
@@ -678,40 +689,24 @@
builders:
- multijob:
- name: deploy-virtual
+ name: apex-virtual-deploy-test
condition: SUCCESSFUL
projects:
- - name: 'apex-deploy-virtual-{stream}'
- current-parameters: false
+ - name: 'apex-virtual-{stream}'
+ current-parameters: true
predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
+ DEPLOY_SCENARIO=os-odl-{os_scenario}-noha
OPNFV_CLEAN=yes
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- PROMOTE=True
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- git-revision: false
- - multijob:
- name: functest-smoke
- condition: SUCCESSFUL
- projects:
- - name: 'functest-apex-virtual-suite-{stream}'
- current-parameters: false
- predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
FUNCTEST_SUITE_NAME=tempest_smoke_serial
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ FUNCTEST_MODE=testcase
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
- git-revision: false
+ git-revision: true
- multijob:
name: create snapshot
condition: SUCCESSFUL
diff --git a/jjb/apex/scenarios.yaml.hidden b/jjb/apex/scenarios.yaml.hidden
index 2650eafbb..8375f6163 100644
--- a/jjb/apex/scenarios.yaml.hidden
+++ b/jjb/apex/scenarios.yaml.hidden
@@ -1,6 +1,8 @@
master:
- 'os-odl-nofeature-noha'
+ - 'os-odl-nofeature-ha'
- 'os-odl-queens-noha'
+ - 'os-odl-queens-ha'
fraser:
- 'os-nosdn-nofeature-noha'
- 'os-nosdn-nofeature-ha'
diff --git a/jjb/armband/armband-ci-jobs.yml b/jjb/armband/armband-ci-jobs.yaml
index b8ffc16fa..fe2bbcc63 100644
--- a/jjb/armband/armband-ci-jobs.yml
+++ b/jjb/armband/armband-ci-jobs.yaml
@@ -127,7 +127,7 @@
same-node: true
block: true
- trigger-builds:
- - project: 'functest-{installer}-{pod}-arm-daily-{stream}'
+ - project: 'functest-{installer}-{pod}-daily-{stream}'
current-parameters: false
predefined-parameters:
DEPLOY_SCENARIO={scenario}
diff --git a/jjb/armband/armband-verify-jobs.yml b/jjb/armband/armband-verify-jobs.yaml
index 08cf3c084..08cf3c084 100644
--- a/jjb/armband/armband-verify-jobs.yml
+++ b/jjb/armband/armband-verify-jobs.yaml
diff --git a/jjb/auto/auto.yaml b/jjb/auto/auto.yaml
new file mode 100644
index 000000000..518f8ea87
--- /dev/null
+++ b/jjb/auto/auto.yaml
@@ -0,0 +1,126 @@
+---
+# jenkins job templates for Auto
+- project:
+ name: 'auto-ci-jobs'
+ project: 'auto'
+
+ # -------------------------------
+ # BRANCH ANCHORS
+ # -------------------------------
+ master: &master
+ stream: master
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+ fraser: &fraser
+ stream: fraser
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ disabled: false
+ # -------------------------------
+ # DEPLOY TYPE ANCHORS
+ # -------------------------------
+ baremetal: &baremetal
+ installer: 'fuel'
+ slave-label: 'auto-baremetal'
+ # -------------------------------
+ # POD, INSTALLER, AND BRANCH MAPPING
+ # -------------------------------
+ # CI POD's
+ # -------------------------------
+ # fraser
+ # -------------------------------
+ pod:
+ # yamllint disable rule:key-duplicates
+ - auto-baremetal:
+ <<: *baremetal
+ <<: *fraser
+ # -------------------------------
+ # master
+ # -------------------------------
+ - auto-baremetal:
+ <<: *baremetal
+ <<: *master
+ # yamllint enable rule:key-duplicates
+ # -------------------------------
+ # scenarios
+ # -------------------------------
+ scenario:
+ # HA scenarios
+ - 'os-nosdn-onap-ha':
+ auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger'
+
+ jobs:
+ - '{installer}-{scenario}-{pod}-auto-daily-{stream}'
+ - '{installer}-deploy-{pod}-daily-{stream}'
+ - '{project}-verify-basic'
+
+########################
+# job templates
+########################
+- job-template:
+ name: '{installer}-{scenario}-{pod}-auto-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ properties:
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 4
+ max-per-node: 1
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '{installer}-os-.*?-{pod}-auto-daily-.*'
+ block-level: 'NODE'
+
+ wrappers:
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+
+ triggers:
+ - '{auto-trigger-name}'
+
+ parameters:
+ - project-parameter:
+ project: 'armband'
+ branch: '{branch}'
+ - '{installer}-defaults':
+ gs-pathname: '{gs-pathname}'
+ - '{slave-label}-defaults':
+ installer: '{installer}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+
+ builders:
+ - trigger-builds:
+ - project: '{installer}-deploy-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters:
+ DEPLOY_SCENARIO='os-nosdn-nofeature-ha'
+ same-node: true
+ block: true
+
+########################
+# trigger macros
+########################
+# CI PODs
+# ----------------------------------------------------------------
+# Auto CI Baremetal Triggers running against master branch
+# ----------------------------------------------------------------
+- trigger:
+ name: 'fuel-os-nosdn-onap-ha-auto-baremetal-master-trigger'
+ triggers:
+ - timed: '0 1 * * *'
+# ---------------------------------------------------------------------
+# Auto CI Baremetal Triggers running against fraser branch
+# ---------------------------------------------------------------------
+- trigger:
+ name: 'fuel-os-nosdn-onap-ha-auto-baremetal-fraser-trigger'
+ triggers:
+ - timed: ''
diff --git a/jjb/auto/auto.yml b/jjb/auto/auto.yml
deleted file mode 100644
index c28dc5618..000000000
--- a/jjb/auto/auto.yml
+++ /dev/null
@@ -1,8 +0,0 @@
----
-- project:
- name: auto
-
- project: '{name}'
-
- jobs:
- - '{project}-verify-basic'
diff --git a/jjb/availability/availability.yml b/jjb/availability/availability.yaml
index 2d3473499..2d3473499 100644
--- a/jjb/availability/availability.yml
+++ b/jjb/availability/availability.yaml
diff --git a/jjb/barometer/barometer.yml b/jjb/barometer/barometer.yaml
index 92176207f..92176207f 100644
--- a/jjb/barometer/barometer.yml
+++ b/jjb/barometer/barometer.yaml
diff --git a/jjb/bottlenecks/bottlenecks-ci-jobs.yml b/jjb/bottlenecks/bottlenecks-ci-jobs.yaml
index 41b73a290..41b73a290 100644
--- a/jjb/bottlenecks/bottlenecks-ci-jobs.yml
+++ b/jjb/bottlenecks/bottlenecks-ci-jobs.yaml
diff --git a/jjb/bottlenecks/bottlenecks-project-jobs.yml b/jjb/bottlenecks/bottlenecks-project-jobs.yaml
index d4930d745..d4930d745 100644
--- a/jjb/bottlenecks/bottlenecks-project-jobs.yml
+++ b/jjb/bottlenecks/bottlenecks-project-jobs.yaml
diff --git a/jjb/calipso/calipso.yml b/jjb/calipso/calipso.yaml
index 6701e7ca2..6701e7ca2 100644
--- a/jjb/calipso/calipso.yml
+++ b/jjb/calipso/calipso.yaml
diff --git a/jjb/ci_gate_security/opnfv-ci-gate-security.yml b/jjb/ci_gate_security/opnfv-ci-gate-security.yaml
index cd3831310..2e500befb 100644
--- a/jjb/ci_gate_security/opnfv-ci-gate-security.yml
+++ b/jjb/ci_gate_security/opnfv-ci-gate-security.yaml
@@ -151,8 +151,6 @@
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
projects:
- project-compare-type: 'REG_EXP'
project-pattern: 'apex|armband|bamboo|barometer|bottlenecks|calipso|compass4nfv|conductor|copper|cperf|daisy|doctor|dovetail|dpacc|enfv|fds|fuel|functest|pharos|releng|sandbox|yardstick|infra|ipv6|kvmfornfv|models|moon|netready'
diff --git a/jjb/clover/clover-project.yml b/jjb/clover/clover-project.yaml
index 31eed8f14..31eed8f14 100644
--- a/jjb/clover/clover-project.yml
+++ b/jjb/clover/clover-project.yaml
diff --git a/jjb/compass4nfv/compass-ci-jobs.yml b/jjb/compass4nfv/compass-ci-jobs.yaml
index 8eeaabfaa..8eeaabfaa 100644
--- a/jjb/compass4nfv/compass-ci-jobs.yml
+++ b/jjb/compass4nfv/compass-ci-jobs.yaml
diff --git a/jjb/compass4nfv/compass-dovetail-jobs.yml b/jjb/compass4nfv/compass-dovetail-jobs.yaml
index c09086348..c09086348 100644
--- a/jjb/compass4nfv/compass-dovetail-jobs.yml
+++ b/jjb/compass4nfv/compass-dovetail-jobs.yaml
diff --git a/jjb/compass4nfv/compass-project-jobs.yml b/jjb/compass4nfv/compass-project-jobs.yaml
index dc935f024..dc935f024 100644
--- a/jjb/compass4nfv/compass-project-jobs.yml
+++ b/jjb/compass4nfv/compass-project-jobs.yaml
diff --git a/jjb/compass4nfv/compass-verify-jobs.yml b/jjb/compass4nfv/compass-verify-jobs.yaml
index c357ff641..c357ff641 100644
--- a/jjb/compass4nfv/compass-verify-jobs.yml
+++ b/jjb/compass4nfv/compass-verify-jobs.yaml
diff --git a/jjb/conductor/conductor.yml b/jjb/conductor/conductor.yaml
index 8a128da37..8a128da37 100644
--- a/jjb/conductor/conductor.yml
+++ b/jjb/conductor/conductor.yaml
diff --git a/jjb/container4nfv/container4nfv-arm64.yml b/jjb/container4nfv/container4nfv-arm64.yaml
index 5f5bc8627..5f5bc8627 100644
--- a/jjb/container4nfv/container4nfv-arm64.yml
+++ b/jjb/container4nfv/container4nfv-arm64.yaml
diff --git a/jjb/container4nfv/container4nfv-project.yml b/jjb/container4nfv/container4nfv-project.yaml
index 194a1a989..194a1a989 100644
--- a/jjb/container4nfv/container4nfv-project.yml
+++ b/jjb/container4nfv/container4nfv-project.yaml
diff --git a/jjb/container4nfv/yardstick-arm64.yml b/jjb/container4nfv/yardstick-arm64.yaml
index 6ed345ecc..6ed345ecc 100644
--- a/jjb/container4nfv/yardstick-arm64.yml
+++ b/jjb/container4nfv/yardstick-arm64.yaml
diff --git a/jjb/copper/copper.yml b/jjb/copper/copper.yaml
index 620aefd9c..620aefd9c 100644
--- a/jjb/copper/copper.yml
+++ b/jjb/copper/copper.yaml
diff --git a/jjb/cperf/cperf-ci-jobs.yml b/jjb/cperf/cperf-ci-jobs.yaml
index fdd3509d1..fdd3509d1 100644
--- a/jjb/cperf/cperf-ci-jobs.yml
+++ b/jjb/cperf/cperf-ci-jobs.yaml
diff --git a/jjb/daisy4nfv/daisy-daily-jobs.yml b/jjb/daisy4nfv/daisy-daily-jobs.yaml
index 1769bb4da..ba03bc3f2 100644
--- a/jjb/daisy4nfv/daisy-daily-jobs.yml
+++ b/jjb/daisy4nfv/daisy-daily-jobs.yaml
@@ -18,13 +18,13 @@
master: &master
stream: master
branch: '{stream}'
- disabled: false
+ disabled: true
gs-pathname: ''
fraser: &fraser
stream: fraser
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
# -------------------------------
# POD, INSTALLER, AND BRANCH MAPPING
diff --git a/jjb/daisy4nfv/daisy-project-jobs.yml b/jjb/daisy4nfv/daisy-project-jobs.yaml
index cb0dea196..ec5ba71f2 100644
--- a/jjb/daisy4nfv/daisy-project-jobs.yml
+++ b/jjb/daisy4nfv/daisy-project-jobs.yaml
@@ -20,11 +20,11 @@
- master:
branch: '{stream}'
gs-pathname: ''
- disabled: false
+ disabled: true
- fraser:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
phase:
- 'build':
diff --git a/jjb/daisy4nfv/daisy4nfv-merge-jobs.yml b/jjb/daisy4nfv/daisy4nfv-merge-jobs.yaml
index 3a0a59fc4..7e03fabaf 100644
--- a/jjb/daisy4nfv/daisy4nfv-merge-jobs.yml
+++ b/jjb/daisy4nfv/daisy4nfv-merge-jobs.yaml
@@ -18,11 +18,11 @@
- master:
branch: '{stream}'
gs-pathname: ''
- disabled: false
+ disabled: true
- fraser:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
#####################################
# patch merge phases
#####################################
diff --git a/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yaml
index 777b67795..033beeb6d 100644
--- a/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml
+++ b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yaml
@@ -15,11 +15,11 @@
- master:
branch: '{stream}'
gs-pathname: ''
- disabled: false
+ disabled: true
- fraser:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
#####################################
# patch verification phases
diff --git a/jjb/doctor/doctor.yml b/jjb/doctor/doctor.yaml
index 3985356c1..1c12563a8 100644
--- a/jjb/doctor/doctor.yml
+++ b/jjb/doctor/doctor.yaml
@@ -124,7 +124,9 @@
- 'doctor-parameter':
docker-tag: '{docker-tag}'
scenario: '{scenario}'
- - 'doctor-functest-parameter'
+ - 'doctor-functest-parameter':
+ gs-pathname: '{gs-pathname}'
+ inspector: '{inspector}'
scm:
- git-scm-gerrit
builders:
diff --git a/jjb/domino/domino.yml b/jjb/domino/domino.yaml
index e91260463..e91260463 100644
--- a/jjb/domino/domino.yml
+++ b/jjb/domino/domino.yaml
diff --git a/jjb/dovetail/dovetail-artifacts-upload.yml b/jjb/dovetail/dovetail-artifacts-upload.yaml
index 9a11c6e26..9a11c6e26 100644
--- a/jjb/dovetail/dovetail-artifacts-upload.yml
+++ b/jjb/dovetail/dovetail-artifacts-upload.yaml
diff --git a/jjb/dovetail/dovetail-ci-jobs.yml b/jjb/dovetail/dovetail-ci-jobs.yaml
index a95617ae4..a95617ae4 100644
--- a/jjb/dovetail/dovetail-ci-jobs.yml
+++ b/jjb/dovetail/dovetail-ci-jobs.yaml
diff --git a/jjb/dovetail/dovetail-project-jobs.yml b/jjb/dovetail/dovetail-project-jobs.yaml
index 1accffcdb..1accffcdb 100644
--- a/jjb/dovetail/dovetail-project-jobs.yml
+++ b/jjb/dovetail/dovetail-project-jobs.yaml
diff --git a/jjb/dovetail/dovetail-run.sh b/jjb/dovetail/dovetail-run.sh
index 9616fb310..df681dd59 100755
--- a/jjb/dovetail/dovetail-run.sh
+++ b/jjb/dovetail/dovetail-run.sh
@@ -124,7 +124,7 @@ if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_T
awk '{print \$2; exit}'") &> /dev/null
cat << EOF >${DOVETAIL_CONFIG}/pod.yaml
nodes:
-- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /root/.ssh/id_rsa, role: controller, user: ${ssh_user}}
+- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /home/opnfv/userconfig/pre_config/id_rsa, role: controller, user: ${ssh_user}}
EOF
fi
@@ -154,7 +154,8 @@ if [[ ! -f ${DOVETAIL_CONFIG}/pod.yaml ]]; then
fi
cmd="sudo python ${releng_repo}/utils/create_pod_file.py -t ${INSTALLER_TYPE} \
- -i ${INSTALLER_IP} ${options} -f ${DOVETAIL_CONFIG}/pod.yaml"
+ -i ${INSTALLER_IP} ${options} -f ${DOVETAIL_CONFIG}/pod.yaml \
+ -s /home/opnfv/userconfig/pre_config/id_rsa"
echo ${cmd}
${cmd}
diff --git a/jjb/dovetail/dovetail-weekly-jobs.yml b/jjb/dovetail/dovetail-weekly-jobs.yaml
index 5a162bb7f..5a162bb7f 100644
--- a/jjb/dovetail/dovetail-weekly-jobs.yml
+++ b/jjb/dovetail/dovetail-weekly-jobs.yaml
diff --git a/jjb/dpacc/dpacc.yml b/jjb/dpacc/dpacc.yaml
index a9a091413..a9a091413 100644
--- a/jjb/dpacc/dpacc.yml
+++ b/jjb/dpacc/dpacc.yaml
diff --git a/jjb/escalator/escalator.yml b/jjb/escalator/escalator.yaml
index d203dc113..d203dc113 100644
--- a/jjb/escalator/escalator.yml
+++ b/jjb/escalator/escalator.yaml
diff --git a/jjb/fuel/fuel-daily-jobs.yml b/jjb/fuel/fuel-daily-jobs.yaml
index 7110daeaf..e636538ef 100644
--- a/jjb/fuel/fuel-daily-jobs.yml
+++ b/jjb/fuel/fuel-daily-jobs.yaml
@@ -86,6 +86,8 @@
auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
- 'os-ovn-nofeature-noha':
auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+ - 'os-odl-ovs-noha':
+ auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
- 'os-nosdn-kvm-noha':
auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
- 'os-nosdn-ovs-noha':
@@ -107,6 +109,8 @@
stream: danube
- scenario: os-ovn-nofeature-ha
stream: danube
+ - scenario: os-odl-ovs-noha
+ stream: fraser
jobs:
- 'fuel-{scenario}-{pod}-daily-{stream}'
@@ -428,6 +432,10 @@
triggers:
- timed: ''
- trigger:
+ name: 'fuel-os-odl-ovs-noha-baremetal-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-master-trigger'
triggers:
- timed: ''
@@ -581,6 +589,10 @@
triggers:
- timed: '5 23 * * *'
- trigger:
+ name: 'fuel-os-odl-ovs-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '5 2 * * *'
+- trigger:
name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger'
triggers:
- timed: '' # '35 6 * * *'
@@ -733,6 +745,10 @@
triggers:
- timed: ''
- trigger:
+ name: 'fuel-os-odl-ovs-noha-zte-pod1-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-master-trigger'
triggers:
- timed: ''
diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh
index 35bf3dc01..433061a96 100755
--- a/jjb/fuel/fuel-deploy.sh
+++ b/jjb/fuel/fuel-deploy.sh
@@ -55,8 +55,8 @@ if [ "${PROJECT}" = 'fuel' ]; then
fi
else
SUDO=
- # Armband currently supports arm, enea labs
- if [[ ! "${LAB_NAME}" =~ (arm|enea) ]]; then
+ # Armband currently supports arm, enea, unh labs
+ if [[ ! "${LAB_NAME}" =~ (arm|enea|unh) ]]; then
echo "Unsupported/unidentified lab ${LAB_NAME}. Cannot continue!"
exit 1
fi
diff --git a/jjb/fuel/fuel-project-jobs.yml b/jjb/fuel/fuel-project-jobs.yaml
index fc49f6348..fc49f6348 100644
--- a/jjb/fuel/fuel-project-jobs.yml
+++ b/jjb/fuel/fuel-project-jobs.yaml
diff --git a/jjb/fuel/fuel-verify-jobs.yml b/jjb/fuel/fuel-verify-jobs.yaml
index bef6a5094..bef6a5094 100644
--- a/jjb/fuel/fuel-verify-jobs.yml
+++ b/jjb/fuel/fuel-verify-jobs.yaml
diff --git a/jjb/fuel/fuel-weekly-jobs.yml b/jjb/fuel/fuel-weekly-jobs.yaml
index aca625d2b..aca625d2b 100644
--- a/jjb/fuel/fuel-weekly-jobs.yml
+++ b/jjb/fuel/fuel-weekly-jobs.yaml
diff --git a/jjb/functest/functest-daily-jobs.yml b/jjb/functest/functest-daily-jobs.yaml
index ae226b665..4fc67e7f8 100644
--- a/jjb/functest/functest-daily-jobs.yml
+++ b/jjb/functest/functest-daily-jobs.yaml
@@ -201,8 +201,6 @@
- 'suite':
job-timeout: 60
- 'daily':
- job-timeout: 360
- - 'arm-daily':
job-timeout: 480
jobs:
@@ -268,14 +266,6 @@
description: "Daily suite name to run"
- parameter:
- name: functest-arm-daily-parameter
- parameters:
- - string:
- name: FUNCTEST_MODE
- default: 'arm-daily'
- description: "Daily suite name (Aarch64) to run"
-
-- parameter:
name: functest-suite-parameter
parameters:
- choice:
@@ -368,14 +358,6 @@
- 'functest-exit'
- builder:
- name: functest-arm-daily-builder
- builders:
- - 'functest-cleanup'
- - 'functest-arm-daily'
- - 'functest-store-results'
- - 'functest-exit'
-
-- builder:
name: functest-suite-builder
builders:
- 'functest-cleanup'
@@ -409,17 +391,6 @@
# yamllint enable rule:indentation
- builder:
- name: functest-arm-daily
- builders:
- # yamllint disable rule:indentation
- - shell:
- !include-raw:
- - ./functest-env-presetup.sh
- - ../../utils/fetch_os_creds.sh
- - ./functest-alpine.sh
-
-# yamllint enable rule:indentation
-- builder:
name: functest-store-results
builders:
- shell:
diff --git a/jjb/functest/functest-docker.yml b/jjb/functest/functest-docker.yaml
index 50c7c3816..50c7c3816 100644
--- a/jjb/functest/functest-docker.yml
+++ b/jjb/functest/functest-docker.yaml
diff --git a/jjb/functest/functest-kubernetes-docker.yml b/jjb/functest/functest-kubernetes-docker.yaml
index 2085251c6..2085251c6 100644
--- a/jjb/functest/functest-kubernetes-docker.yml
+++ b/jjb/functest/functest-kubernetes-docker.yaml
diff --git a/jjb/functest/functest-kubernetes-project-jobs.yml b/jjb/functest/functest-kubernetes-project-jobs.yaml
index 7f8dd8d53..7f8dd8d53 100644
--- a/jjb/functest/functest-kubernetes-project-jobs.yml
+++ b/jjb/functest/functest-kubernetes-project-jobs.yaml
diff --git a/jjb/functest/functest-project-jobs.yml b/jjb/functest/functest-project-jobs.yaml
index 9a123053f..9a123053f 100644
--- a/jjb/functest/functest-project-jobs.yml
+++ b/jjb/functest/functest-project-jobs.yaml
diff --git a/jjb/functest/functest-weekly-jobs.yml b/jjb/functest/functest-weekly-jobs.yaml
index c88fa0050..c88fa0050 100644
--- a/jjb/functest/functest-weekly-jobs.yml
+++ b/jjb/functest/functest-weekly-jobs.yaml
diff --git a/jjb/functest/xtesting-docker.yml b/jjb/functest/xtesting-docker.yaml
index 251c3954e..251c3954e 100644
--- a/jjb/functest/xtesting-docker.yml
+++ b/jjb/functest/xtesting-docker.yaml
diff --git a/jjb/functest/xtesting-project-jobs.yml b/jjb/functest/xtesting-project-jobs.yaml
index e109387c6..e109387c6 100644
--- a/jjb/functest/xtesting-project-jobs.yml
+++ b/jjb/functest/xtesting-project-jobs.yaml
diff --git a/jjb/global-jjb b/jjb/global-jjb
-Subproject 779110b5cd63f3eabb63598a1be79d9b9ba8546
+Subproject 9b240453b91f3c4b0844ea1c593721a1c421caa
diff --git a/jjb/global/basic-jobs.yml b/jjb/global/basic-jobs.yaml
index a8b9cffbc..a8b9cffbc 100644
--- a/jjb/global/basic-jobs.yml
+++ b/jjb/global/basic-jobs.yaml
diff --git a/jjb/global/installer-params.yml b/jjb/global/installer-params.yaml
index f663c4556..f663c4556 100644
--- a/jjb/global/installer-params.yml
+++ b/jjb/global/installer-params.yaml
diff --git a/jjb/global/releng-defaults.yml b/jjb/global/releng-defaults.yaml
index 2e94767e8..2e94767e8 100644
--- a/jjb/global/releng-defaults.yml
+++ b/jjb/global/releng-defaults.yaml
diff --git a/jjb/global/releng-macros.yml b/jjb/global/releng-macros.yaml
index b7335fafa..b282cff4f 100644
--- a/jjb/global/releng-macros.yml
+++ b/jjb/global/releng-macros.yaml
@@ -107,6 +107,7 @@
- 'origin/$BRANCH'
timeout: 15
per-build-tag: false
+ skip-tag: true
shallow-clone: false
use-author: false
ignore-notify: false
@@ -120,6 +121,17 @@
choosing-strategy: 'gerrit'
refspec: '$GERRIT_REFSPEC'
<<: *git-scm-defaults
+
+- scm:
+ name: git-scm-gerrit-with-submodules
+ scm:
+ - git:
+ choosing-strategy: 'gerrit'
+ refspec: '$GERRIT_REFSPEC'
+ submodule:
+ recursive: true
+ timeout: 20
+ <<: *git-scm-defaults
- scm:
name: git-scm-with-submodules
scm:
@@ -129,6 +141,7 @@
refspec: ''
branches:
- 'refs/heads/{branch}'
+ per-build-tag: false
skip-tag: true
wipe-workspace: true
submodule:
@@ -139,6 +152,8 @@
name: git-scm-openstack
scm:
- git: &git-scm-openstack-defaults
+ per-build-tag: false
+ skip-tag: true
url: '$GIT_BASE'
branches:
- 'origin/$BRANCH'
@@ -971,21 +986,31 @@
name: 'report-provision-result'
publishers:
- postbuildscript:
- script-only-if-succeeded: true
builders:
- - shell: |
- echo "export PROVISION_RESULT=PASS" >> $WORKSPACE/installer_track.sh
- echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
- echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
- - shell:
- !include-raw: installer-report.sh
+ - role: BOTH
+ build-on:
+ - SUCCESS
+ build-steps:
+ - shell: |
+ echo "export PROVISION_RESULT=PASS" >> $WORKSPACE/installer_track.sh
+ echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
+ echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
+ - shell:
+ !include-raw: installer-report.sh
+ mark-unstable-if-failed: true
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: true
builders:
- - shell: |
- echo "export PROVISION_RESULT=FAIL" >> $WORKSPACE/installer_track.sh
- echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
- echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
- - shell:
- !include-raw: installer-report.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - UNSTABLE
+ build-steps:
+ - shell: |
+ echo "export PROVISION_RESULT=FAIL" >> $WORKSPACE/installer_track.sh
+ echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
+ echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
+ - shell:
+ !include-raw: installer-report.sh
+ mark-unstable-if-failed: true
diff --git a/jjb/global/slave-params.yml b/jjb/global/slave-params.yaml
index 9d8bed45f..0219be54b 100644
--- a/jjb/global/slave-params.yml
+++ b/jjb/global/slave-params.yaml
@@ -278,6 +278,17 @@
description: 'Base URI to the configuration directory'
- parameter:
+ name: 'auto-baremetal-defaults'
+ parameters:
+ - label:
+ name: SLAVE_LABEL
+ default: 'auto-baremetal'
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
+
+- parameter:
name: 'joid-baremetal-defaults'
parameters:
- label:
diff --git a/jjb/ipv6/ipv6.yml b/jjb/ipv6/ipv6.yaml
index 2946ec77b..2946ec77b 100644
--- a/jjb/ipv6/ipv6.yml
+++ b/jjb/ipv6/ipv6.yaml
diff --git a/jjb/joid/joid-daily-jobs.yml b/jjb/joid/joid-daily-jobs.yaml
index 2719c7292..2719c7292 100644
--- a/jjb/joid/joid-daily-jobs.yml
+++ b/jjb/joid/joid-daily-jobs.yaml
diff --git a/jjb/joid/joid-verify-jobs.yml b/jjb/joid/joid-verify-jobs.yaml
index 2d1c7c9f3..2d1c7c9f3 100644
--- a/jjb/joid/joid-verify-jobs.yml
+++ b/jjb/joid/joid-verify-jobs.yaml
diff --git a/jjb/kvmfornfv/kvmfornfv.yml b/jjb/kvmfornfv/kvmfornfv.yaml
index ad497e97d..ad497e97d 100644
--- a/jjb/kvmfornfv/kvmfornfv.yml
+++ b/jjb/kvmfornfv/kvmfornfv.yaml
diff --git a/jjb/models/models.yml b/jjb/models/models.yaml
index 40fcf68de..40fcf68de 100644
--- a/jjb/models/models.yml
+++ b/jjb/models/models.yaml
diff --git a/jjb/moon/moon.yml b/jjb/moon/moon.yaml
index 73b0fc731..73b0fc731 100644
--- a/jjb/moon/moon.yml
+++ b/jjb/moon/moon.yaml
diff --git a/jjb/netready/netready.yml b/jjb/netready/netready.yaml
index 798029373..798029373 100644
--- a/jjb/netready/netready.yml
+++ b/jjb/netready/netready.yaml
diff --git a/jjb/nfvbench/nfvbench.yml b/jjb/nfvbench/nfvbench.yaml
index 44e85d2c8..44e85d2c8 100644
--- a/jjb/nfvbench/nfvbench.yml
+++ b/jjb/nfvbench/nfvbench.yaml
diff --git a/jjb/onosfw/onosfw.yml b/jjb/onosfw/onosfw.yaml
index 58a50bd57..58a50bd57 100644
--- a/jjb/onosfw/onosfw.yml
+++ b/jjb/onosfw/onosfw.yaml
diff --git a/jjb/openci/create-ane.sh b/jjb/openci/create-ane.sh
new file mode 100755
index 000000000..8a4da8f52
--- /dev/null
+++ b/jjb/openci/create-ane.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 Ericsson AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+set -o errexit
+set -o nounset
+set -o pipefail
+
+# This script creates ArtifactPublishedEvent
+# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is
+# constructed on a single line. This is something that needs to be fixed properly
+
+cat << EOF > $WORKSPACE/event.properties
+type=$PUBLISH_EVENT_TYPE
+origin=$PUBLISH_EVENT_ORIGIN
+eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'artifactLocation': '$ARTIFACT_LOCATION', 'confidenceLevel': { $CONFIDENCE_LEVEL } }"
+EOF
+echo "Constructed $PUBLISH_EVENT_TYPE"
+echo "--------------------------------------------"
+cat $WORKSPACE/event.properties
+echo "--------------------------------------------"
diff --git a/jjb/openci/create-cde.sh b/jjb/openci/create-cde.sh
new file mode 100755
index 000000000..410db50e6
--- /dev/null
+++ b/jjb/openci/create-cde.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 Ericsson AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+set -o errexit
+set -o nounset
+set -o pipefail
+
+# This script creates CompositionDefinedEvent
+# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is
+# constructed on a single line. This is something that needs to be fixed properly
+
+cat << EOF > $WORKSPACE/event.properties
+type=$PUBLISH_EVENT_TYPE
+origin=$PUBLISH_EVENT_ORIGIN
+scenario=$DEPLOY_SCENARIO
+eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'compositionName': '$DEPLOY_SCENARIO', 'compositionMetadataUrl': '$SCENARIO_METADATA_LOCATION' }"
+EOF
+echo "Constructed $PUBLISH_EVENT_TYPE"
+echo "--------------------------------------------"
+cat $WORKSPACE/event.properties
+echo "--------------------------------------------"
diff --git a/jjb/openci/create-clme.sh b/jjb/openci/create-clme.sh
new file mode 100755
index 000000000..5e8ee10c9
--- /dev/null
+++ b/jjb/openci/create-clme.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 Ericsson AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+set -o errexit
+set -o nounset
+set -o pipefail
+
+# This script creates ConfidenceLevelModifiedEvent
+# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is
+# constructed on a single line. This is something that needs to be fixed properly
+
+cat << EOF > $WORKSPACE/event.properties
+type=$PUBLISH_EVENT_TYPE
+origin=$PUBLISH_EVENT_ORIGIN
+scenario=$DEPLOY_SCENARIO
+eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'compositionName': '$DEPLOY_SCENARIO', 'compositionMetadataUrl': '$SCENARIO_METADATA_LOCATION', 'confidenceLevel': { $CONFIDENCE_LEVEL } }"
+EOF
+echo "Constructed $PUBLISH_EVENT_TYPE"
+echo "--------------------------------------------"
+cat $WORKSPACE/event.properties
+echo "--------------------------------------------"
diff --git a/jjb/openci/openci-odl-daily-jobs.yaml b/jjb/openci/openci-odl-daily-jobs.yaml
new file mode 100644
index 000000000..d80feadf6
--- /dev/null
+++ b/jjb/openci/openci-odl-daily-jobs.yaml
@@ -0,0 +1,99 @@
+---
+- project:
+ name: openci-odl
+
+ project: '{name}'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ jobs:
+ - 'openci-odl-autorelease-daily-{stream}'
+ - 'openci-odl-promote-daily-{stream}'
+
+# This job gets triggered manually for the demo purposes.
+#
+# In prototype, either what this job does needs to be integrated to
+# ODL autorelease job or triggered by the upstream autorelease job.
+- job-template:
+ name: 'openci-odl-autorelease-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: ArtifactPublishedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: ODL
+ description: 'Originating community'
+ - string:
+ name: ARTIFACT_LOCATION
+ default: https://url/to/artifact/on/odl/nexus/$BUILD_NUMBER
+ description: 'The location of the artifact on ODL Nexus'
+ - string:
+ name: CONFIDENCE_LEVEL
+ default: "'autorelease': 'SUCCESS'"
+ description: 'The confidence level the published artifact gained'
+ - 'opnfv-build-defaults'
+
+ builders:
+ - shell:
+ !include-raw-escape: ./create-ane.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ msg-content:
+ $eventBody
+
+# This job gets triggered by a ConfidenceLevelModifiedEvent published
+# by OPNFV jobs so ODL can promote the autorelease artifact even further.
+#
+# This job is created for the demo purposes and might not be there for
+# the prototype.
+- job-template:
+ name: 'openci-odl-promote-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: 'OPNFV'
+ - field: type
+ expected-value: 'ConfidenceLevelModifiedEvent'
+ - field: scenario
+ expected-value: 'os-odl-nofeature'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ echo " Promoted ODL Autorelease artifact as release candidate!"
diff --git a/jjb/openci/openci-onap-daily-jobs.yaml b/jjb/openci/openci-onap-daily-jobs.yaml
new file mode 100644
index 000000000..28c3e6948
--- /dev/null
+++ b/jjb/openci/openci-onap-daily-jobs.yaml
@@ -0,0 +1,99 @@
+---
+- project:
+ name: openci-onap
+
+ project: '{name}'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ jobs:
+ - 'openci-onap-autorelease-daily-{stream}'
+ - 'openci-onap-promote-daily-{stream}'
+
+# This job gets triggered manually for the demo purposes.
+#
+# In prototype, either what this job does needs to be integrated to
+# ONAP autorelease job or triggered by the upstream autorelease job.
+- job-template:
+ name: 'openci-onap-autorelease-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: ArtifactPublishedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: ONAP
+ description: 'Originating community'
+ - string:
+ name: ARTIFACT_LOCATION
+ default: https://url/to/artifact/on/onap/nexus/$BUILD_NUMBER
+ description: 'The location of the artifact on ONAP Nexus'
+ - string:
+ name: CONFIDENCE_LEVEL
+ default: "'autorelease': 'SUCCESS'"
+ description: 'The confidence level the published artifact gained'
+ - 'opnfv-build-defaults'
+
+ builders:
+ - shell:
+ !include-raw-escape: ./create-ane.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ msg-content:
+ $eventBody
+
+# This job gets triggered by a ConfidenceLevelModifiedEvent published
+# by OPNFV jobs so ONAP can promote the autorelease artifact even further.
+#
+# This job is created for the demo purposes and might not be there for
+# the prototype.
+- job-template:
+ name: 'openci-onap-promote-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: 'OPNFV'
+ - field: type
+ expected-value: 'ConfidenceLevelModifiedEvent'
+ - field: scenario
+ expected-value: 'k8-nosdn-onap'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ echo " Promoted ONAP Autorelease artifact as release candidate!"
diff --git a/jjb/openci/openci-opnfv-daily-jobs.yaml b/jjb/openci/openci-opnfv-daily-jobs.yaml
new file mode 100644
index 000000000..cb150148b
--- /dev/null
+++ b/jjb/openci/openci-opnfv-daily-jobs.yaml
@@ -0,0 +1,149 @@
+---
+- project:
+ name: openci-opnfv
+
+ project: '{name}'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ scenario:
+ - 'os-odl-nofeature-ha':
+ origin: ODL
+ - 'k8-nosdn-onap-ha':
+ origin: ONAP
+
+ jobs:
+ - 'openci-opnfv-{scenario}-compose-daily-{stream}'
+ - 'openci-opnfv-{scenario}-test-daily-{stream}'
+
+- job-template:
+ name: 'openci-opnfv-{scenario}-compose-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: CompositionDefinedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: OPNFV
+ description: 'Originating community'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+ description: 'The scenario that is composed'
+ - string:
+ name: SCENARIO_METADATA_LOCATION
+ default: https://url/to/scenario/metadata/on/opnfv/artifact/repo/$BUILD_NUMBER
+ description: 'The location of the scenario metadata'
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: '{origin}'
+ - field: type
+ expected-value: 'ArtifactPublishedEvent'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ - shell:
+ !include-raw-escape: ./create-cde.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ scenario=$scenario
+ msg-content:
+ $eventBody
+
+- job-template:
+ name: 'openci-opnfv-{scenario}-test-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: ConfidenceLevelModifiedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: OPNFV
+ description: 'Originating community'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+ description: 'The scenario that is composed'
+ - string:
+ name: SCENARIO_METADATA_LOCATION
+ default: https://url/to/scenario/metadata/on/opnfv/artifact/repo/$BUILD_NUMBER
+ description: 'The location of the scenario metadata'
+ - string:
+ name: CONFIDENCE_LEVEL
+ default: "'opnfvdaily': 'SUCCESS'"
+ description: 'The confidence level the published artifact gained'
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: 'OPNFV'
+ - field: type
+ expected-value: 'CompositionDefinedEvent'
+ - field: scenario
+ expected-value: '{scenario}'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ - shell:
+ !include-raw-escape: ./create-clme.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ scenario=$scenario
+ msg-content:
+ $eventBody
diff --git a/jjb/opera/opera-daily-jobs.yml b/jjb/opera/opera-daily-jobs.yaml
index f0841a34b..f0841a34b 100644
--- a/jjb/opera/opera-daily-jobs.yml
+++ b/jjb/opera/opera-daily-jobs.yaml
diff --git a/jjb/opera/opera-project-jobs.yml b/jjb/opera/opera-project-jobs.yaml
index f866342a4..f866342a4 100644
--- a/jjb/opera/opera-project-jobs.yml
+++ b/jjb/opera/opera-project-jobs.yaml
diff --git a/jjb/opera/opera-verify-jobs.yml b/jjb/opera/opera-verify-jobs.yaml
index 97c9a43ec..97c9a43ec 100644
--- a/jjb/opera/opera-verify-jobs.yml
+++ b/jjb/opera/opera-verify-jobs.yaml
diff --git a/jjb/opnfvdocs/opnfvdocs.yml b/jjb/opnfvdocs/opnfvdocs.yaml
index 5f08f69a4..5f08f69a4 100644
--- a/jjb/opnfvdocs/opnfvdocs.yml
+++ b/jjb/opnfvdocs/opnfvdocs.yaml
diff --git a/jjb/orchestra/orchestra-daily-jobs.yml b/jjb/orchestra/orchestra-daily-jobs.yaml
index 7c2deaec4..7c2deaec4 100644
--- a/jjb/orchestra/orchestra-daily-jobs.yml
+++ b/jjb/orchestra/orchestra-daily-jobs.yaml
diff --git a/jjb/orchestra/orchestra-project-jobs.yml b/jjb/orchestra/orchestra-project-jobs.yaml
index 60732ce03..60732ce03 100644
--- a/jjb/orchestra/orchestra-project-jobs.yml
+++ b/jjb/orchestra/orchestra-project-jobs.yaml
diff --git a/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yaml
index ca4cfeede..ca4cfeede 100644
--- a/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml
+++ b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yaml
diff --git a/jjb/ovn4nfv/ovn4nfv-project-jobs.yml b/jjb/ovn4nfv/ovn4nfv-project-jobs.yaml
index 2ce4b6df9..2ce4b6df9 100644
--- a/jjb/ovn4nfv/ovn4nfv-project-jobs.yml
+++ b/jjb/ovn4nfv/ovn4nfv-project-jobs.yaml
diff --git a/jjb/ovsnfv/ovsnfv.yml b/jjb/ovsnfv/ovsnfv.yaml
index 87c6ca14f..87c6ca14f 100644
--- a/jjb/ovsnfv/ovsnfv.yml
+++ b/jjb/ovsnfv/ovsnfv.yaml
diff --git a/jjb/parser/parser.yml b/jjb/parser/parser.yaml
index 574138f6d..574138f6d 100644
--- a/jjb/parser/parser.yml
+++ b/jjb/parser/parser.yaml
diff --git a/jjb/pharos/check-jinja2.yml b/jjb/pharos/check-jinja2.yaml
index e3f0df78a..e3f0df78a 100644
--- a/jjb/pharos/check-jinja2.yml
+++ b/jjb/pharos/check-jinja2.yaml
diff --git a/jjb/pharos/pharos.yml b/jjb/pharos/pharos.yaml
index c1bb1ba0e..c1bb1ba0e 100644
--- a/jjb/pharos/pharos.yml
+++ b/jjb/pharos/pharos.yaml
diff --git a/jjb/promise/promise.yml b/jjb/promise/promise.yaml
index 6e6fb54a8..6e6fb54a8 100644
--- a/jjb/promise/promise.yml
+++ b/jjb/promise/promise.yaml
diff --git a/jjb/qtip/qtip-experimental-jobs.yml b/jjb/qtip/qtip-experimental-jobs.yaml
index 4e79c0553..4e79c0553 100644
--- a/jjb/qtip/qtip-experimental-jobs.yml
+++ b/jjb/qtip/qtip-experimental-jobs.yaml
diff --git a/jjb/qtip/qtip-validate-jobs.yml b/jjb/qtip/qtip-validate-jobs.yaml
index 0fc623c74..0fc623c74 100644
--- a/jjb/qtip/qtip-validate-jobs.yml
+++ b/jjb/qtip/qtip-validate-jobs.yaml
diff --git a/jjb/qtip/qtip-verify-jobs.yml b/jjb/qtip/qtip-verify-jobs.yaml
index 12cfa95b7..12cfa95b7 100644
--- a/jjb/qtip/qtip-verify-jobs.yml
+++ b/jjb/qtip/qtip-verify-jobs.yaml
diff --git a/jjb/releng/artifact-cleanup.yml b/jjb/releng/artifact-cleanup.yaml
index 2a250618c..2a250618c 100644
--- a/jjb/releng/artifact-cleanup.yml
+++ b/jjb/releng/artifact-cleanup.yaml
diff --git a/jjb/releng/compass4nfv-docker.yml b/jjb/releng/compass4nfv-docker.yaml
index 5fbb37ca2..7bfda552d 100644
--- a/jjb/releng/compass4nfv-docker.yml
+++ b/jjb/releng/compass4nfv-docker.yaml
@@ -19,6 +19,10 @@
arch_tag:
- 'amd64':
slave_label: 'opnfv-build-ubuntu'
+ docker_file: 'Dockerfile'
+ - 'arm64':
+ slave_label: 'opnfv-build-ubuntu-arm'
+ docker_file: 'Dockerfile-arm64'
# yamllint disable rule:key-duplicates
image:
@@ -43,10 +47,20 @@
kill-phase-on: FAILURE
abort-all-jobs: false
+ manifest-job-settings: &manifest-job-settings
+ current-parameters: false
+ git-revision: true
+ node-parameters: false
+ predefined-parameters:
+ GERRIT_REFNAME=$GERRIT_REFNAME
+ kill-phase-on: FAILURE
+ abort-all-jobs: false
+
# yamllint enable rule:key-duplicates
jobs:
- "compass-docker-{stream}"
- "compass-{image}-build-{arch_tag}-{stream}"
+ - "compass-{image}-manifest-{stream}"
########################
# job templates
@@ -63,6 +77,7 @@
project: '{project}'
branch: '{branch}'
slave_label: 'opnfv-build-ubuntu'
+ docker_file: 'Dockerfile'
arch_tag: 'amd64'
properties:
@@ -84,6 +99,14 @@
projects:
- name: 'compass-tasks-base-build-amd64-{stream}'
<<: *build-job-settings
+ - name: 'compass-tasks-base-build-arm64-{stream}'
+ <<: *build-job-settings
+ - multijob:
+ name: 'publish compass-tasks-base manifests'
+ execution-type: PARALLEL
+ projects:
+ - name: 'compass-tasks-base-manifest-{stream}'
+ <<: *manifest-job-settings
- multijob:
name: 'build all compass images'
condition: SUCCESSFUL
@@ -101,9 +124,38 @@
<<: *build-job-settings
- name: 'compass-tasks-osa-build-amd64-{stream}'
<<: *build-job-settings
+ - name: 'compass-cobbler-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-db-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-deck-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-tasks-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-tasks-k8s-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-tasks-osa-build-arm64-{stream}'
+ <<: *build-job-settings
+ - multijob:
+ name: 'publish all manifests'
+ execution-type: PARALLEL
+ projects:
+ - name: 'compass-cobbler-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-db-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-deck-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-tasks-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-tasks-k8s-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-tasks-osa-manifest-{stream}'
+ <<: *manifest-job-settings
publishers:
- 'compass-amd64-recipients'
+ - 'compass-arm64-recipients'
- job-template:
name: 'compass-{image}-build-{arch_tag}-{stream}'
@@ -113,6 +165,7 @@
project: '{project}'
branch: '{branch}'
slave_label: '{slave_label}'
+ docker_file: '{docker_file}'
arch_tag: '{arch_tag}'
- string:
name: DOCKER_REPO_NAME
@@ -128,6 +181,31 @@
- shell:
!include-raw-escape: ./opnfv-docker.sh
+- job-template:
+ name: 'compass-{image}-manifest-{stream}'
+ disabled: '{obj:disabled}'
+ parameters:
+ - compass-job-parameters:
+ project: '{project}'
+ branch: '{branch}'
+ slave_label: 'opnfv-build-ubuntu'
+ docker_file: 'Dockerfile'
+ arch_tag: 'amd64'
+ builders:
+ - shell: |
+ #!/bin/bash -ex
+ case "{stream}" in
+ "master")
+ tag="latest" ;;
+ *)
+ tag="{stream}" ;;
+ esac
+ sudo manifest-tool push from-args \
+ --platforms linux/amd64,linux/arm64 \
+ --template opnfv/compass-{image}:ARCH-$tag \
+ --target opnfv/compass-{image}:$tag
+ exit $?
+
# parameter macro
- parameter:
name: compass-job-parameters
@@ -157,11 +235,11 @@
description: "Docker tag to be built, e.g. refs/tags/5.0.0, refs/tags/opnfv-5.0.0, refs/tags/5.0.RC1"
- string:
name: DOCKERFILE
- default: "Dockerfile"
+ default: '{docker_file}'
description: "Dockerfile to use for creating the image."
- string:
name: ARCH_TAG
- default: ""
+ default: "{arch_tag}"
description: "If set, this value will be added to the docker image tag as a prefix"
- string:
name: PROJECT
@@ -178,3 +256,10 @@
huangxiangyui5@huawei.com
xueyifei@huawei.com
wutianwei1@huawei.com
+
+- publisher:
+ name: 'compass-arm64-recipients'
+ publishers:
+ - email:
+ recipients: >
+ yibo.cai@arm.com
diff --git a/jjb/releng/opnfv-docker-arm.yml b/jjb/releng/opnfv-docker-arm.yaml
index 9066b419e..9066b419e 100644
--- a/jjb/releng/opnfv-docker-arm.yml
+++ b/jjb/releng/opnfv-docker-arm.yaml
diff --git a/jjb/releng/opnfv-docker-custom.yml b/jjb/releng/opnfv-docker-custom.yaml
index e564ab5ef..e564ab5ef 100644
--- a/jjb/releng/opnfv-docker-custom.yml
+++ b/jjb/releng/opnfv-docker-custom.yaml
diff --git a/jjb/releng/opnfv-docker.sh b/jjb/releng/opnfv-docker.sh
index 5c8cafbe3..70baf16d9 100644
--- a/jjb/releng/opnfv-docker.sh
+++ b/jjb/releng/opnfv-docker.sh
@@ -78,7 +78,14 @@ echo "Current branch: $BRANCH"
BUILD_BRANCH=$BRANCH
GERRIT_REFNAME=${GERRIT_REFNAME:-''}
-RELEASE_VERSION=${GERRIT_REFNAME/refs\/tags//}
+RELEASE_VERSION=${GERRIT_REFNAME/refs\/tags\/}
+
+# If we're being triggered by a comment-added job, then extract the tag
+# from the comment and use that as the release version.
+# Expected comment format: retag opnfv-x.y.z
+if [[ "${GERRIT_EVENT_TYPE:-}" == "comment-added" ]]; then
+ RELEASE_VERSION=$(echo "$GERRIT_EVENT_COMMENT_TEXT" | grep 'retag' | awk '{print $2}')
+fi
if [[ "$BRANCH" == "master" ]]; then
DOCKER_TAG="latest"
diff --git a/jjb/releng/opnfv-docker.yml b/jjb/releng/opnfv-docker.yaml
index b7d1ce66f..b7d1ce66f 100644
--- a/jjb/releng/opnfv-docker.yml
+++ b/jjb/releng/opnfv-docker.yaml
diff --git a/jjb/releng/opnfv-lint.yml b/jjb/releng/opnfv-lint.yaml
index aac8c3160..6483e3262 100644
--- a/jjb/releng/opnfv-lint.yml
+++ b/jjb/releng/opnfv-lint.yaml
@@ -64,8 +64,6 @@
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
projects:
- project-compare-type: 'REG_EXP'
project-pattern: 'releng|doctor|pharos'
diff --git a/jjb/releng/opnfv-utils.yml b/jjb/releng/opnfv-utils.yaml
index 19fb4b5af..19fb4b5af 100644
--- a/jjb/releng/opnfv-utils.yml
+++ b/jjb/releng/opnfv-utils.yaml
diff --git a/jjb/releng/releng-ci-jobs.yaml b/jjb/releng/releng-ci-jobs.yaml
new file mode 100644
index 000000000..f9a2bc232
--- /dev/null
+++ b/jjb/releng/releng-ci-jobs.yaml
@@ -0,0 +1,15 @@
+---
+- project:
+ name: releng-builder-jobs
+ project: 'releng'
+ project-name: 'releng'
+
+ build-timeout: 60
+ build-node: 'lf-build1'
+ gerrit-server-name: 'gerrit.opnfv.org'
+ jenkins-ssh-credential: 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
+ jjb-version: '2.0.3'
+ lftools-version: '<1.0.0'
+
+ jobs:
+ - '{project-name}-ci-jobs'
diff --git a/jjb/releng/releng-ci-jobs.yml b/jjb/releng/releng-ci-jobs.yml
deleted file mode 100644
index 6fb6804bc..000000000
--- a/jjb/releng/releng-ci-jobs.yml
+++ /dev/null
@@ -1,124 +0,0 @@
----
-- project:
- name: releng-builder-jobs
- jobs:
- - 'releng-verify-jjb'
- - 'releng-merge-jjb'
- - 'releng-comment-jjb'
-
- project: 'releng'
-
-- job-template:
- name: releng-verify-jjb
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: 'master'
-
- scm:
- - git-scm-gerrit
-
- triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- 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/**
- - compare-type: ANT
- pattern: utils/**
-
-
- builders:
- - shell:
- !include-raw: verify-releng.sh
-
- publishers:
- - archive-artifacts:
- artifacts: 'job_output/*'
- - email-jenkins-admins-on-failure
-
-- job-template:
- name: releng-comment-jjb
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: 'master'
-
- scm:
- - git-scm-gerrit
-
- triggers:
- - experimental:
- project: '{project}'
- branch: 'master'
- files: 'jjb/**'
-
- builders:
- - shell:
- !include-raw-escape: generate-job-list.sh
- - report-build-result-to-gerrit
-
-- job-template:
- name: 'releng-merge-jjb'
-
- # builder-merge job to run JJB update
- #
- # This job's purpose is to update all the JJB
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: 'master'
-
- properties:
- - throttle:
- max-per-node: 1
- max-total: 1
- option: 'project'
-
- scm:
- - git-scm
-
- triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- 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/**
- - compare-type: ANT
- pattern: utils/**
-
- builders:
- - shell: |
- source /opt/virtualenv/jenkins-job-builder/bin/activate
- jenkins-jobs update -r --delete-old jjb/
diff --git a/jjb/releng/releng-release-verify.sh b/jjb/releng/releng-release-create-venv.sh
index c1262e2c9..0d5635b59 100644
--- a/jjb/releng/releng-release-verify.sh
+++ b/jjb/releng/releng-release-create-venv.sh
@@ -7,21 +7,12 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
-set -xe
+set -e -o pipefail
+echo "---> Create virtualenv"
-# Activate virtualenv, supressing shellcheck warning
-# shellcheck source=/dev/null
-. $WORKSPACE/venv/bin/activate
+sudo pip install virtualenv
+virtualenv $WORKSPACE/venv
+# shellcheck source=$WORKSPACE/venv/bin/activate disable=SC1091
+source $WORKSPACE/venv/bin/activate
+pip install --upgrade pip
pip install -r releases/scripts/requirements.txt
-
-STREAM=${STREAM:-'nostream'}
-RELEASE_FILES=$(git diff HEAD^1 --name-only -- "releases/$STREAM")
-
-# TODO: The create_branch.py should be refactored so it can be used here
-# to verify the commit exists that is being added, along with
-# jjb/<project>
-for release_file in $RELEASE_FILES; do
- python releases/scripts/verify_schema.py \
- -s releases/schema.yaml \
- -y $release_file
-done
diff --git a/jjb/releng/releng-release-jobs.yml b/jjb/releng/releng-release-jobs.yaml
index e31320b81..0c059ee9b 100644
--- a/jjb/releng/releng-release-jobs.yml
+++ b/jjb/releng/releng-release-jobs.yaml
@@ -10,6 +10,8 @@
- project:
name: releng-release-jobs
+ build-node: 'opnfv-build'
+
stream:
- fraser
@@ -23,6 +25,7 @@
name: 'releng-release-{stream}-verify'
parameters:
+ - '{build-node}-defaults'
- stream-parameter:
stream: '{stream}'
- project-parameter:
@@ -59,9 +62,9 @@
pattern: 'releases/scripts/verify_schema.py'
builders:
- - create-virtualenv
- - shell:
- !include-raw-escape: releng-release-verify.sh
+ - shell: !include-raw-escape:
+ - releng-release-create-venv.sh
+ - releng-release-tagging.sh
publishers:
- email-jenkins-admins-on-failure
@@ -82,6 +85,12 @@
- project-parameter:
project: '{project}'
branch: 'master'
+ # Override GIT_BASE so we can send patches back to Gerrit and
+ # modify repos
+ - string:
+ name: GIT_BASE
+ default: ssh://$USER@gerrit.opnfv.org:29418/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
scm:
- git-scm-gerrit
@@ -93,9 +102,10 @@
files: 'releases/{stream}/*'
builders:
- - create-virtualenv
- - shell:
- !include-raw-escape: releng-release-create-branch.sh
+ - shell: !include-raw-escape:
+ - releng-release-create-venv.sh
+ - releng-release-tagging.sh
+ # - releng-release-create-branch.sh
publishers:
- email-jenkins-admins-on-failure
@@ -107,13 +117,3 @@
name: STREAM
default: '{stream}'
description: "OPNFV Stable Stream"
-
-- builder:
- name: create-virtualenv
- builders:
- - shell: |
- #!/bin/bash
- sudo pip install virtualenv
- virtualenv $WORKSPACE/venv
- . $WORKSPACE/venv/bin/activate
- pip install --upgrade pip
diff --git a/jjb/releng/releng-release-tagging.sh b/jjb/releng/releng-release-tagging.sh
new file mode 100644
index 000000000..10c0cc8c9
--- /dev/null
+++ b/jjb/releng/releng-release-tagging.sh
@@ -0,0 +1,70 @@
+#!/bin/bash
+# SPDX-License-Identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 The Linux Foundation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+set -e -o pipefail
+
+GIT_URL=${GIT_URL:-https://gerrit.opnfv.org/gerrit}
+STREAM=${STREAM:-'nostream'}
+RELEASE_FILES=$(git diff HEAD^1 --name-only -- "releases/$STREAM")
+
+echo "--> Verifying $RELEASE_FILES."
+for release_file in $RELEASE_FILES; do
+ # Verify the release file schema
+ python releases/scripts/verify_schema.py \
+ -s releases/schema.yaml \
+ -y $release_file
+
+ # Verify tag for each repo exist and are attached to commits on stable-branch
+ while read -r repo tag ref
+ do
+ echo "--> Cloning $repo"
+ if [ ! -d $repo ]; then
+ git clone $GIT_URL/$repo.git $repo
+ fi
+ pushd $repo &> /dev/null
+
+ echo "--> Checking for tag: $tag"
+ if ! (git tag -l | grep $tag &> /dev/null); then
+ echo "$tag does not exist"
+ TAG_EXISTS=false
+ else
+ git cat-file tag $tag
+ TAG_EXISTS=true
+ fi
+
+ echo "--> Checking if $ref is on stable/$STREAM"
+ if ! (git branch -a --contains $ref | grep "stable/$STREAM"); then
+ echo "--> ERROR: $ref for $repo is not on stable/$STREAM!"
+ # If the tag exists but is on the wrong ref, there's nothing
+ # we can do. But if the tag neither exists nor is on the
+ # correct branch we need to fail the verification.
+ if [ $TAG_EXISTS = false ]; then
+ exit 1
+ fi
+ else
+ if [[ $TAG_EXISTS = false && "$JOB_NAME" =~ "merge" ]]; then
+ # If the tag doesn't exist and we're in a merge job,
+ # everything has been verified up to this point and we
+ # are ready to create the tag.
+ git config --global user.name "jenkins-ci"
+ git config --global user.email "jenkins-opnfv-ci@opnfv.org"
+ echo "--> Creating $tag tag for $repo at $ref"
+ git tag -am "$tag" $tag $ref
+ echo "--> Pushing tag"
+ echo "[noop] git push origin $tag"
+ else
+ # For non-merge jobs just output the ref info.
+ git show -s --format="%h %s %d" $ref
+ fi
+ fi
+
+ popd &> /dev/null
+ echo "--> Done verifing $repo"
+ done < <(python releases/scripts/repos.py -f $release_file)
+done
diff --git a/jjb/releng/testresults-automate.yml b/jjb/releng/testresults-automate.yaml
index 01fbe0c6d..01fbe0c6d 100644
--- a/jjb/releng/testresults-automate.yml
+++ b/jjb/releng/testresults-automate.yaml
diff --git a/jjb/releng/testresults-verify.yml b/jjb/releng/testresults-verify.yaml
index 958833c0f..958833c0f 100644
--- a/jjb/releng/testresults-verify.yml
+++ b/jjb/releng/testresults-verify.yaml
diff --git a/jjb/releng/verify-releng.sh b/jjb/releng/verify-releng.sh
deleted file mode 100755
index a6eaa0f50..000000000
--- a/jjb/releng/verify-releng.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-# SPDX-license-identifier: Apache-2.0
-##############################################################################
-# Copyright (c) 2016 Linux Foundation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-#test for non-ascii characters, these can pass the test and end up breaking things in production
-for x in $(find . -name *\.yml -or -name *\.yaml -or -name *\.sh); do
-
- if LC_ALL=C grep -q '[^[:print:][:space:]]' "$x"; then
- echo "file "$x" contains non-ascii characters"
- exit 1
- fi
-
-done
-
-source /opt/virtualenv/jenkins-job-builder/bin/activate
-jenkins-jobs test -o job_output -r jjb/
diff --git a/jjb/securedlab/check-jinja2.yml b/jjb/securedlab/check-jinja2.yaml
index f7a7941dc..f7a7941dc 100644
--- a/jjb/securedlab/check-jinja2.yml
+++ b/jjb/securedlab/check-jinja2.yaml
diff --git a/jjb/sfc/sfc-project-jobs.yml b/jjb/sfc/sfc-project-jobs.yaml
index fea792467..fea792467 100644
--- a/jjb/sfc/sfc-project-jobs.yml
+++ b/jjb/sfc/sfc-project-jobs.yaml
diff --git a/jjb/snaps/snaps-verify-jobs.yml b/jjb/snaps/snaps-verify-jobs.yaml
index 10514c3b6..10514c3b6 100644
--- a/jjb/snaps/snaps-verify-jobs.yml
+++ b/jjb/snaps/snaps-verify-jobs.yaml
diff --git a/jjb/stor4nfv/stor4nfv-project.yml b/jjb/stor4nfv/stor4nfv-project.yaml
index 6e796cfd4..6e796cfd4 100644
--- a/jjb/stor4nfv/stor4nfv-project.yml
+++ b/jjb/stor4nfv/stor4nfv-project.yaml
diff --git a/jjb/storperf/storperf-daily-jobs.yml b/jjb/storperf/storperf-daily-jobs.yaml
index fe6aebb11..fe6aebb11 100644
--- a/jjb/storperf/storperf-daily-jobs.yml
+++ b/jjb/storperf/storperf-daily-jobs.yaml
diff --git a/jjb/storperf/storperf-verify-jobs.yml b/jjb/storperf/storperf-verify-jobs.yaml
index 4d6b1740a..4d6b1740a 100644
--- a/jjb/storperf/storperf-verify-jobs.yml
+++ b/jjb/storperf/storperf-verify-jobs.yaml
diff --git a/jjb/storperf/storperf.yml b/jjb/storperf/storperf.yaml
index fe5784777..fe5784777 100644
--- a/jjb/storperf/storperf.yml
+++ b/jjb/storperf/storperf.yaml
diff --git a/jjb/ves/ves.yml b/jjb/ves/ves.yaml
index f8c5da2b4..f8c5da2b4 100644
--- a/jjb/ves/ves.yml
+++ b/jjb/ves/ves.yaml
diff --git a/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml b/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yaml
index b11c20f62..b11c20f62 100644
--- a/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml
+++ b/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yaml
diff --git a/jjb/vswitchperf/vswitchperf.yml b/jjb/vswitchperf/vswitchperf.yaml
index ba0742f3b..ba0742f3b 100644
--- a/jjb/vswitchperf/vswitchperf.yml
+++ b/jjb/vswitchperf/vswitchperf.yaml
diff --git a/jjb/xci/bifrost-cleanup-job.yml b/jjb/xci/bifrost-cleanup-job.yaml
index d51776173..d51776173 100644
--- a/jjb/xci/bifrost-cleanup-job.yml
+++ b/jjb/xci/bifrost-cleanup-job.yaml
diff --git a/jjb/xci/bifrost-periodic-jobs.yml b/jjb/xci/bifrost-periodic-jobs.yaml
index fbe2e205a..fbe2e205a 100644
--- a/jjb/xci/bifrost-periodic-jobs.yml
+++ b/jjb/xci/bifrost-periodic-jobs.yaml
diff --git a/jjb/xci/bifrost-verify-jobs.yml b/jjb/xci/bifrost-verify-jobs.yaml
index 920ecdc7d..4ca783524 100644
--- a/jjb/xci/bifrost-verify-jobs.yml
+++ b/jjb/xci/bifrost-verify-jobs.yaml
@@ -163,11 +163,17 @@
# yamllint enable rule:line-length
- email-jenkins-admins-on-failure
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
# -------------------------------
# trigger macros
diff --git a/jjb/xci/osa-periodic-jobs.yml b/jjb/xci/osa-periodic-jobs.yaml
index 6c2d165a4..6c2d165a4 100644
--- a/jjb/xci/osa-periodic-jobs.yml
+++ b/jjb/xci/osa-periodic-jobs.yaml
diff --git a/jjb/xci/xci-daily-jobs.yml b/jjb/xci/xci-daily-jobs.yaml
index 11db4e168..c1132ab85 100644
--- a/jjb/xci/xci-daily-jobs.yml
+++ b/jjb/xci/xci-daily-jobs.yaml
@@ -155,11 +155,17 @@
# yamllint enable rule:line-length
- email-jenkins-admins-on-failure
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
- job-template:
name: 'xci-{phase}-{pod}-{distro}-daily-{stream}'
diff --git a/jjb/xci/xci-merge-jobs.yml b/jjb/xci/xci-merge-jobs.yaml
index 2d112c7e5..cb438ad5d 100644
--- a/jjb/xci/xci-merge-jobs.yml
+++ b/jjb/xci/xci-merge-jobs.yaml
@@ -316,11 +316,17 @@
publishers:
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
- job-template:
name: 'xci-merge-{distro}-{phase}-virtual-{stream}'
diff --git a/jjb/xci/xci-run-functest.sh b/jjb/xci/xci-run-functest.sh
index 6d43c9789..f46abe043 100755
--- a/jjb/xci/xci-run-functest.sh
+++ b/jjb/xci/xci-run-functest.sh
@@ -47,7 +47,7 @@ fi
export XCI_PATH=/home/devuser/releng-xci
export XCI_VENV=${XCI_PATH}/venv
-ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm "source $XCI_VENV/bin/activate; while read var; do declare -x \"\${var}\" 2>/dev/null; done < ${XCI_PATH}/.cache/xci.env && cd releng-xci/xci && ansible-playbook -i installer/osa/files/$XCI_FLAVOR/inventory playbooks/prepare-functest.yml"
+ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm "source $XCI_VENV/bin/activate; while read var; do declare -x \"\${var}\" 2>/dev/null; done < ${XCI_PATH}/.cache/xci.env && cd releng-xci/xci && ansible-playbook -i playbooks/dynamic_inventory.py playbooks/prepare-functest.yml"
echo "Running functest"
ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm_opnfv "/root/run-functest.sh"
# Record exit code
diff --git a/jjb/xci/xci-set-scenario.sh b/jjb/xci/xci-set-scenario.sh
index c28093d27..7bc45f1c2 100755
--- a/jjb/xci/xci-set-scenario.sh
+++ b/jjb/xci/xci-set-scenario.sh
@@ -38,7 +38,7 @@ set -o pipefail
# skip-verify
# skip-deployment
# force-verify
-function override_generic_scenario() {
+function override_scenario() {
echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
# ensure the metadata we record is consistent for all types of patches including skipped ones
@@ -81,26 +81,21 @@ function override_generic_scenario() {
fi
}
-# This function determines the impacted generic scenario by processing the
-# change and using diff to see what changed. If changed files belong to a scenario
-# its name gets recorded for deploying and testing the right scenario.
+# This function determines the default scenario for changes coming to releng-xci
+# by processing the Gerrit change and using diff to see what changed.
+#
+# The stuff in releng-xci is for the installer and other common things so the
+# determination is based on those.
#
-# Pattern to be searched in Changeset
-# releng-xci/scenarios/<scenario>/<impacted files>: <scenario>
-# releng-xci/xci/installer/osa/<impacted files>: os-nosdn-nofeature
-# releng-xci/xci/installer/kubespray/<impacted files>: k8-nosdn-nofeature
-# the rest: os-nosdn-nofeature
-function determine_generic_scenario() {
+# Pattern
+# releng-xci/installer/<installer_type>/<impacted files>: <scenario>
+function determine_default_scenario() {
echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
# get the changeset
cd $WORKSPACE
- SCENARIOS=$(git diff HEAD^..HEAD --name-only -- 'xci/scenarios' | cut -d "/" -f 3 | uniq)
# We need to set default scenario for changes that mess with installers
INSTALLERS=$(git diff HEAD^..HEAD --name-only -- 'xci/installer' | cut -d "/" -f 3 | uniq)
- for CHANGED_SCENARIO in $SCENARIOS; do
- DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]=$CHANGED_SCENARIO
- done
for CHANGED_INSTALLER in $INSTALLERS; do
case $CHANGED_INSTALLER in
kubespray)
@@ -113,24 +108,25 @@ function determine_generic_scenario() {
esac
done
# For all other changes, we only need to set a default scenario if it's not set already
- if git diff HEAD^..HEAD --name-only | grep -q -v 'xci/installer\|xci/scenario'; then
+ if git diff HEAD^..HEAD --name-only | grep -q -v 'xci/installer'; then
[[ ${#DEPLOY_SCENARIO[@]} -eq 0 ]] && DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='os-nosdn-nofeature'
fi
# extract releng-xci sha
XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
- # extract scenario sha which is same as releng-xci sha for generic scenarios
+ # TODO: we need to fix this so we actually extract the scenario sha by cloning releng-xci-scenarios
+ # for the determined scenario. it is crucial for promotion...
SCENARIO_SHA=$XCI_SHA
}
-# This function determines the impacted external scenario by processing the Gerrit
+# This function determines the impacted scenario by processing the Gerrit
# change and using diff to see what changed. If changed files belong to a scenario
# its name gets recorded for deploying and testing the right scenario.
#
# Pattern
# <project-repo>/scenarios/<scenario>/<impacted files>: <scenario>
-function determine_external_scenario() {
+function determine_scenario() {
echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
# remove the clone that is done via jenkins and place releng-xci there so the
@@ -169,11 +165,10 @@ WORK_DIRECTORY=/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO
/bin/rm -rf $WORK_DIRECTORY && mkdir -p $WORK_DIRECTORY
if [[ $GERRIT_PROJECT == "releng-xci" ]]; then
- override_generic_scenario
- determine_generic_scenario
-else
- determine_external_scenario
+ determine_default_scenario
fi
+override_scenario
+determine_scenario
# ensure single scenario is impacted
if [[ $(IFS=$'\n' echo ${DEPLOY_SCENARIO[@]} | wc -w) != 1 ]]; then
diff --git a/jjb/xci/xci-start-new-vm.sh b/jjb/xci/xci-start-new-vm.sh
index 174932813..79b6a785a 100755
--- a/jjb/xci/xci-start-new-vm.sh
+++ b/jjb/xci/xci-start-new-vm.sh
@@ -67,7 +67,7 @@ export CI_LOOP=$CI_LOOP
export BUILD_TAG=$BUILD_TAG
export NODE_NAME=$NODE_NAME
-if [[ ! -z ${WORKSPACE+x} && $GERRIT_PROJECT != "releng-xci" ]]; then
+if [[ $GERRIT_PROJECT != "releng-xci" ]]; then
export XCI_ANSIBLE_PARAMS="-e @/home/devuser/releng-xci/scenario_overrides.yml"
fi
@@ -75,7 +75,7 @@ cd xci
./xci-deploy.sh | ts
EOF
-if [[ ! -z ${WORKSPACE+x} && $GERRIT_PROJECT != "releng-xci" ]]; then
+if [[ $GERRIT_PROJECT != "releng-xci" ]]; then
cat > scenario_overrides.yml <<-EOF
---
xci_scenarios_overrides:
diff --git a/jjb/xci/xci-verify-jobs.yml b/jjb/xci/xci-verify-jobs.yaml
index 3b7df62f4..2230cd56d 100644
--- a/jjb/xci/xci-verify-jobs.yml
+++ b/jjb/xci/xci-verify-jobs.yaml
@@ -113,8 +113,6 @@
- compare-type: ANT
pattern: 'docs/**'
- compare-type: ANT
- pattern: 'prototypes/**'
- - compare-type: ANT
pattern: 'upstream/**'
- project-compare-type: 'REG_EXP'
project-pattern: 'sfc|sdnvpn|releng-xci-scenarios'
@@ -207,11 +205,17 @@
publishers:
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
- job-template:
diff --git a/jjb/yardstick/yardstick-daily-jobs.yml b/jjb/yardstick/yardstick-daily-jobs.yaml
index 4df3f520d..4df3f520d 100644
--- a/jjb/yardstick/yardstick-daily-jobs.yml
+++ b/jjb/yardstick/yardstick-daily-jobs.yaml
diff --git a/jjb/yardstick/yardstick-project-jobs.yml b/jjb/yardstick/yardstick-project-jobs.yaml
index 56e825e19..56e825e19 100644
--- a/jjb/yardstick/yardstick-project-jobs.yml
+++ b/jjb/yardstick/yardstick-project-jobs.yaml
diff --git a/releases/fraser/apex.yaml b/releases/fraser/apex.yaml
index c097d064a..5d0f569bf 100644
--- a/releases/fraser/apex.yaml
+++ b/releases/fraser/apex.yaml
@@ -25,6 +25,18 @@ releases:
- version: opnfv-6.0.0
location:
apex-os-net-config: e09d110d7b58d26424c28a128cdfd8c766636461
+ - version: opnfv-6.1.0
+ location:
+ apex: a1f2e922d18430e064c9c8311f01ac2a0df19414
+ - version: opnfv-6.1.0
+ location:
+ apex-tripleo-heat-templates: 7f1cc97bcd6f267b11a251de3204edf0e8ec79c0
+ - version: opnfv-6.1.0
+ location:
+ apex-puppet-tripleo: bebd15efe40498c272577c563bc113ec3849dcc6
+ - version: opnfv-6.1.0
+ location:
+ apex-os-net-config: e09d110d7b58d26424c28a128cdfd8c766636461
branches:
- name: stable/fraser
diff --git a/releases/fraser/armband.yml b/releases/fraser/armband.yaml
index 66afd10da..3a2b2606a 100644
--- a/releases/fraser/armband.yml
+++ b/releases/fraser/armband.yaml
@@ -15,6 +15,9 @@ releases:
- version: opnfv-6.0.0
location:
armband: 2b0ac4026a3acf3b10ab2f4c416636d80ab559f0
+ - version: opnfv-6.1.0
+ location:
+ armband: 0de669e26d14794ab117e915abaa6bf6b1dd878d
branches:
- name: stable/fraser
diff --git a/releases/fraser/auto.yaml b/releases/fraser/auto.yaml
index a86fabbb3..60250bd9f 100644
--- a/releases/fraser/auto.yaml
+++ b/releases/fraser/auto.yaml
@@ -8,6 +8,14 @@ releases:
location:
auto: 3a957a75f99686767d13f45d74b5ca8463559b7b
+ - version: opnfv-6.1.0
+ location:
+ auto: b718a43380376d2b19222c4203c97a95ca849ae8
+
+ - version: opnfv-6.1.1
+ location:
+ auto: 0f43563624832c5908e6fc00eb0a4bbc6cc82c33
+
branches:
- name: stable/fraser
location:
diff --git a/releases/fraser/availability.yaml b/releases/fraser/availability.yaml
index 91163b5a2..beda6253b 100644
--- a/releases/fraser/availability.yaml
+++ b/releases/fraser/availability.yaml
@@ -8,6 +8,10 @@ releases:
location:
availability: c1ee3631b59009ff61450808e2bd33fe1d4b17f2
+ - version: opnfv-6.1.0
+ location:
+ availability: c1ee3631b59009ff61450808e2bd33fe1d4b17f2
+
branches:
- name: stable/fraser
location:
diff --git a/releases/fraser/barometer.yaml b/releases/fraser/barometer.yaml
index 4ad1e9d63..e8d88f1bb 100644
--- a/releases/fraser/barometer.yaml
+++ b/releases/fraser/barometer.yaml
@@ -8,6 +8,10 @@ releases:
location:
barometer: 70a568ed8eed6f1a336f1fbe9bbc6900422e0c11
+ - version: opnfv-6.1.0
+ location:
+ barometer: 70a568ed8eed6f1a336f1fbe9bbc6900422e0c11
+
branches:
- name: stable/fraser
location:
diff --git a/releases/fraser/bottlenecks.yaml b/releases/fraser/bottlenecks.yaml
index e72d0f652..b2df4cba2 100644
--- a/releases/fraser/bottlenecks.yaml
+++ b/releases/fraser/bottlenecks.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
bottlenecks: d76736440f852baed2e10a9b92c0557aabc041a6
+ - version: opnfv-6.1.0
+ location:
+ bottlenecks: d76736440f852baed2e10a9b92c0557aabc041a6
branches:
- name: stable/fraser
diff --git a/releases/fraser/calipso.yaml b/releases/fraser/calipso.yaml
index e334910a9..8e3db3c7a 100644
--- a/releases/fraser/calipso.yaml
+++ b/releases/fraser/calipso.yaml
@@ -3,6 +3,11 @@ project: calipso
project-type: tools
release-model: stable
+releases:
+ - version: opnfv-6.1.0
+ location:
+ calipso: 5c821a4d1462f3b0131f37995f40fc77a53468e6
+
branches:
- name: stable/fraser
location:
diff --git a/releases/fraser/clover.yaml b/releases/fraser/clover.yaml
index c731d2a30..ba3e7d688 100644
--- a/releases/fraser/clover.yaml
+++ b/releases/fraser/clover.yaml
@@ -10,6 +10,9 @@ releases:
- version: opnfv-6.0.1
location:
clover: be5f20bbe91f1ae3138a1e338eea5b45e89bda82
+ - version: opnfv-6.1.0
+ location:
+ clover: 596a3573b2622a5d314349592088b6b737f5e126
branches:
- name: stable/fraser
diff --git a/releases/fraser/compass4nfv.yaml b/releases/fraser/compass4nfv.yaml
index 5c443361c..c01ca9fc2 100644
--- a/releases/fraser/compass4nfv.yaml
+++ b/releases/fraser/compass4nfv.yaml
@@ -4,6 +4,13 @@ project-type: installer
release-model: stable
releases:
+ - version: opnfv-6.1.0
+ location:
+ compass4nfv: 499d95cdea092ea9eb76a939b6ea832601d41b7f
+ - version: opnfv-6.1.0
+ location:
+ compass-containers: 15a7cbc925bed896c3c09a5635454c33dbffbadc
+
- version: opnfv-6.0.0
location:
compass4nfv: ab73374e424a679cc42b9812e6bd39a49fcea07d
diff --git a/releases/fraser/container4nfv.yaml b/releases/fraser/container4nfv.yaml
index ed42ff0f7..c95007f3c 100644
--- a/releases/fraser/container4nfv.yaml
+++ b/releases/fraser/container4nfv.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
container4nfv: 38d0ffe507a137167ffdbac860de5c1a738e81a8
+ - version: opnfv-6.1.0
+ location:
+ container4nfv: 38d0ffe507a137167ffdbac860de5c1a738e81a8
branches:
- name: stable/fraser
diff --git a/releases/fraser/doctor.yaml b/releases/fraser/doctor.yaml
index 28cfe7b19..336a28086 100644
--- a/releases/fraser/doctor.yaml
+++ b/releases/fraser/doctor.yaml
@@ -16,6 +16,10 @@ releases:
location:
doctor: cd500723c3b2de3655b2dc56ea9647f358183264
+ - version: opnfv-6.1.0
+ location:
+ doctor: c91aa72e7df34ec3416be3c9f73f7484a91312fb
+
branches:
- name: stable/fraser
location:
diff --git a/releases/fraser/fds.yaml b/releases/fraser/fds.yaml
index 9d08cbf46..1d7730f18 100644
--- a/releases/fraser/fds.yaml
+++ b/releases/fraser/fds.yaml
@@ -3,6 +3,11 @@ project: fds
project-type: feature
release-model: stable
+releases:
+ - version: opnfv-6.1.0
+ location:
+ fds: 6eb4ed8ce9be7135ec65318b7b833f3c487498be
+
branches:
- name: stable/fraser
location:
diff --git a/releases/fraser/fuel.yaml b/releases/fraser/fuel.yaml
index 226ba5834..dd45d3091 100644
--- a/releases/fraser/fuel.yaml
+++ b/releases/fraser/fuel.yaml
@@ -15,6 +15,9 @@ releases:
- version: opnfv-6.0.0
location:
fuel: d45841926790df8313912697d31753c120e2c4aa
+ - version: opnfv-6.1.0
+ location:
+ fuel: e29220a401a5ad0607453d6a82de9b61d1c02aca
branches:
- name: stable/fraser
diff --git a/releases/fraser/functest.yaml b/releases/fraser/functest.yaml
index d1837b8b8..e12758835 100644
--- a/releases/fraser/functest.yaml
+++ b/releases/fraser/functest.yaml
@@ -10,6 +10,12 @@ releases:
- version: opnfv-6.0.0
location:
functest-kubernetes: 770bd295031af2e12da3472b9ed2763bfdc4deaf
+ - version: opnfv-6.1.0
+ location:
+ functest: 7be15936ba4fd0f624200ae6b587081ab292077c
+ - version: opnfv-6.1.0
+ location:
+ functest-kubernetes: c3e48ccef64acc6ba31823e1c8d6138eebbffb8c
branches:
- name: stable/fraser
diff --git a/releases/fraser/ipv6.yaml b/releases/fraser/ipv6.yaml
index 2e92199c4..a21129636 100644
--- a/releases/fraser/ipv6.yaml
+++ b/releases/fraser/ipv6.yaml
@@ -15,8 +15,13 @@ releases:
- version: opnfv-6.0.0
location:
ipv6: 5b914695088b39aee3886bd60be4707b7a11a1e8
+ - version: opnfv-6.1.0
+ location:
+ ipv6: 5c8ce8ff16e9dee430357cb60d1eba5a8d1961b7
branches:
- name: stable/fraser
location:
ipv6: 809dba7f52ff1571a760a01376530de23c5d97c9
+
+release-notes: http://docs.opnfv.org/en/stable-fraser/submodules/ipv6/docs/release/release-notes/release-notes.html
diff --git a/releases/fraser/joid.yaml b/releases/fraser/joid.yaml
index 6c230c3ae..fcb6d3771 100644
--- a/releases/fraser/joid.yaml
+++ b/releases/fraser/joid.yaml
@@ -16,6 +16,10 @@ releases:
location:
joid: 266a4fd08bef19fca930cbbb1d45f5639b87d3c0
+ - version: opnfv-6.1.0
+ location:
+ joid: ff656d6b0fa60241c76709a41c023b76ba4def8f
+
branches:
- name: stable/fraser
location:
diff --git a/releases/fraser/nfvbench.yaml b/releases/fraser/nfvbench.yaml
index 9df164283..ba423d351 100644
--- a/releases/fraser/nfvbench.yaml
+++ b/releases/fraser/nfvbench.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
nfvbench: c8402089ad8686a16ad08ce6c6e16a14c3144d64
+ - version: opnfv-6.1.0
+ location:
+ nfvbench: c8402089ad8686a16ad08ce6c6e16a14c3144d64
branches:
- name: stable/fraser
diff --git a/releases/fraser/opnfvdocs.yaml b/releases/fraser/opnfvdocs.yaml
index 6e2232897..a206f114b 100644
--- a/releases/fraser/opnfvdocs.yaml
+++ b/releases/fraser/opnfvdocs.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
opnfvdocs: 49538d56771c45d8d437ab00abaa1b52f97ac931
+ - version: opnfv-6.1.0
+ location:
+ opnfvdocs: 98570eb59bb4abda67cea7a22feec45eebc4bec2
branches:
- name: stable/fraser
diff --git a/releases/fraser/ovn4nfv.yaml b/releases/fraser/ovn4nfv.yaml
index 40eac0c2c..3b88d7910 100644
--- a/releases/fraser/ovn4nfv.yaml
+++ b/releases/fraser/ovn4nfv.yaml
@@ -8,6 +8,9 @@ releases:
- version: opnfv-6.0.0
location:
ovn4nfv: 651acb603c2f4523905e4fe5134fd8a7940e1f3d
+ - version: opnfv-6.1.0
+ location:
+ ovn4nfv: 651acb603c2f4523905e4fe5134fd8a7940e1f3d
branches:
- name: stable/fraser
diff --git a/releases/fraser/samplevnf.yaml b/releases/fraser/samplevnf.yaml
index 3c30f7223..984ca8c16 100644
--- a/releases/fraser/samplevnf.yaml
+++ b/releases/fraser/samplevnf.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
samplevnf: 4685c59ec97927af559b4bf10001d0e07de34702
+ - version: opnfv-6.1.0
+ location:
+ samplevnf: 95e9ab89f6d8f9911a9fdb625e8721f3d2e20b1a
branches:
- name: stable/fraser
diff --git a/releases/fraser/sdnvpn.yaml b/releases/fraser/sdnvpn.yaml
index 6fa8fa546..559398cd1 100644
--- a/releases/fraser/sdnvpn.yaml
+++ b/releases/fraser/sdnvpn.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
sdnvpn: be6cce375c0363f93fa6b1a099eb34fee75a6161
+ - version: opnfv-6.1.0
+ location:
+ sdnvpn: be6cce375c0363f93fa6b1a099eb34fee75a6161
branches:
- name: stable/fraser
diff --git a/releases/fraser/sfc.yaml b/releases/fraser/sfc.yaml
index 83850d76f..8da8287de 100644
--- a/releases/fraser/sfc.yaml
+++ b/releases/fraser/sfc.yaml
@@ -7,6 +7,10 @@ releases:
- version: opnfv-6.0.0
location:
sfc: 084446656bf2794a11de56b782f589af1f703487
+ - version: opnfv-6.1.0
+ location:
+ sfc: 7f8a775dec72e03d6cae2400b7a49d7a097c8957
+
branches:
- name: stable/fraser
diff --git a/releases/fraser/snaps.yaml b/releases/fraser/snaps.yaml
index c6c316c2a..fc299970d 100644
--- a/releases/fraser/snaps.yaml
+++ b/releases/fraser/snaps.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
snaps: 4edc3d87392cf78c3f046217543fb76380413306
+ - version: opnfv-6.1.0
+ location:
+ snaps: 4edc3d87392cf78c3f046217543fb76380413306
branches:
- name: stable/fraser
diff --git a/releases/fraser/stor4nfv.yaml b/releases/fraser/stor4nfv.yaml
index b4fd8454a..3259b30d9 100644
--- a/releases/fraser/stor4nfv.yaml
+++ b/releases/fraser/stor4nfv.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
stor4nfv: fcedde93eb366867ed428d362e2cb8a6b7f28b3c
+ - version: opnfv-6.1.0
+ location:
+ stor4nfv: 3f654aa9b1e19eb9d84b0632a5bc1e7bde96c281
branches:
- name: stable/fraser
diff --git a/releases/fraser/storperf.yaml b/releases/fraser/storperf.yaml
index 1389c7aa2..7040cbc2f 100644
--- a/releases/fraser/storperf.yaml
+++ b/releases/fraser/storperf.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
storperf: 2f8c1546ee5d79f9b4c46e960a74930cfe0fe50e
+ - version: opnfv-6.1.0
+ location:
+ storperf: 8962423227e13f45ef9f7dfbf48ed4847d3f3865
branches:
- name: stable/fraser
diff --git a/releases/fraser/vswitchperf.yaml b/releases/fraser/vswitchperf.yaml
index 95d8db6af..c2e4e0dc5 100644
--- a/releases/fraser/vswitchperf.yaml
+++ b/releases/fraser/vswitchperf.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
vswitchperf: 998842df061caf3f90adf756c78667262525a6e0
+ - version: opnfv-6.1.0
+ location:
+ vswitchperf: 998842df061caf3f90adf756c78667262525a6e0
branches:
- name: stable/fraser
diff --git a/releases/fraser/yardstick.yaml b/releases/fraser/yardstick.yaml
index 59f6c10aa..25ab64ced 100644
--- a/releases/fraser/yardstick.yaml
+++ b/releases/fraser/yardstick.yaml
@@ -7,6 +7,9 @@ releases:
- version: opnfv-6.0.0
location:
yardstick: a4c8f2a99f56dd4c9fbac4021706aa9186d23ed8
+ - version: opnfv-6.1.0
+ location:
+ yardstick: 7dc30d54a77249d95d2a89770393cee98ff63c8c
branches:
- name: stable/fraser
diff --git a/releases/scripts/release-status.sh b/releases/scripts/release-status.sh
new file mode 100644
index 000000000..da66bc936
--- /dev/null
+++ b/releases/scripts/release-status.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+# SPDX-License-Identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 The Linux Foundation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+set -o pipefail
+
+TAG="${TAG:-opnfv-6.0.0}"
+RELEASE="${RELEASE:-fraser}"
+
+for project in releases/$RELEASE/*; do
+ python releases/scripts/repos.py -n -f $project >> repos.txt
+done
+
+while read -r repo
+do
+ tag="$(git ls-remote "https://gerrit.opnfv.org/gerrit/$repo.git" "refs/tags/$TAG")"
+ echo "$repo $tag"
+done < repos.txt
+
+# rm repos.txt
diff --git a/releases/scripts/repos.py b/releases/scripts/repos.py
new file mode 100644
index 000000000..0ded0207b
--- /dev/null
+++ b/releases/scripts/repos.py
@@ -0,0 +1,60 @@
+#!/usr/bin/env python2
+# SPDX-License-Identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 The Linux Foundation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+"""
+List Release Repos
+"""
+
+import argparse
+import yaml
+
+
+def main():
+ """Given a release yamlfile list the repos it contains"""
+
+ parser = argparse.ArgumentParser()
+ parser.add_argument('--file', '-f',
+ type=argparse.FileType('r'),
+ required=True)
+ parser.add_argument('--names', '-n',
+ action='store_true',
+ default=False,
+ help="Only print the names of repos, "
+ "not their SHAs")
+ parser.add_argument('--release', '-r',
+ type=str,
+ help="Only print"
+ "SHAs for the specified release")
+ args = parser.parse_args()
+
+ project = yaml.safe_load(args.file)
+
+ list_repos(project, args)
+
+
+def list_repos(project, args):
+ """List repositories in the project file"""
+
+ lookup = project.get('releases', [])
+ if 'releases' not in project:
+ exit(0)
+
+ for item in lookup:
+ repo, ref = next(iter(item['location'].items()))
+ if args.names:
+ print(repo)
+ elif args.release and item['version'] == args.release:
+ print("%s %s" % (repo, ref))
+ elif not args.release:
+ # Print all releases
+ print("%s %s %s" % (repo, item['version'], ref))
+
+
+if __name__ == "__main__":
+ main()
diff --git a/utils/build-server-ansible/vars/CentOS.yml b/utils/build-server-ansible/vars/CentOS.yml
index 0d5a01111..528388f27 100644
--- a/utils/build-server-ansible/vars/CentOS.yml
+++ b/utils/build-server-ansible/vars/CentOS.yml
@@ -43,6 +43,9 @@
- python-six
- net-tools
- bc
+ - sysstat
+ - xmlstarlet
+ - facter
- name: install the 'Development tools' package group
yum:
diff --git a/utils/build-server-ansible/vars/Ubuntu.yml b/utils/build-server-ansible/vars/Ubuntu.yml
index 609c8d548..e91c48569 100644
--- a/utils/build-server-ansible/vars/Ubuntu.yml
+++ b/utils/build-server-ansible/vars/Ubuntu.yml
@@ -56,6 +56,9 @@
- libnuma-dev
- shellcheck
- python-pip
+ - sysstat
+ - xmlstarlet
+ - facter
- name: Add Docker apt key.
apt_key: