Age | Commit message (Collapse) | Author | Files | Lines |
|
* changes:
xci: infra: bifrost: Avoid installing Ansible twice
Add initial support for multiple infra deployers
|
|
bifrost is currently the only way to deploy the infrastructure but
in the future other solutions will be added so we need to do some
preparation for XCI integration.
Change-Id: I961dd42157c924d88747074ddba6a318f8b537ac
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Change-Id: I0b8a6d9409d95033839bdc5b3fbe9d1cbbdf4b7c
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
|
|
OPNFV scenarios are forced to support at least two versions of OSA.
If there are API changes between two supported versions of OpenStack,
the testing code must have two versions. However, without knowing what
OpenStack version is deployed, it is impossible to automate the
decision of which testing code to use
Change-Id: I3ca8c6f33c05826a5d69417da774b7218bbd59e2
Signed-off-by: Manuel Buil <mbuil@suse.com>
|
|
|
|
The XCI hosts may need some of the XCI env variables to perform
certain tasks so dump the XCI environment to /root/xci.env file and
make that available to every host on the deployment.
Change-Id: I286a01ca7da8ff206438c261798167f5e4daf7f2
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
There is probably no good reason anymore to be so strict with file
inclusions in the roles directory so drop the .gitignore file.
Change-Id: I84569c8c82c4aeb5da6c6e39e02ff514566e5213
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Those roles were too small and only used as part of the host
bootstrapping process. As such, we merge them into a common
'bootstrap-host' role which can be used to prepare the hosts
after the initial deployment
Change-Id: Ifc84cf40b98ced91b31aae699dc28e9642380550
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Change-Id: I330bc036f901d4ba61bc94ee6e085cadf54b4d8b
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
The package module gets upset if we pass it an empty string as a package
name
Mar 09 15:15:33 TASK [configure-network : Ensure networking packages are present] **************
Mar 09 15:15:49 fatal: [opnfv]: FAILED! => {"changed": false, "failed":
true, "msg": "No package matching '' found available, installed or
updated", "rc": 126, "results": ["iproute-3.10.0-87.el7.x86_64 providing
iproute is already installed", "No package matching '' found available,
installed or updated"]}
As such, lets pass an existing package for non-Debian distros to make
the module happy.
Change-Id: Ib1128057097193278cfe50f79daf35332b54e781
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
We need to make sure that the pip packages that we install are
compatible with the OSA components.
Change-Id: I87e80dc9b8fb862d9f9039d835b0908f752de3ca
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
The docker packages that we install in the OPNFV VM are needed by
functest so add them to the related role.
Change-Id: I6ebe76fd030859f757d41ecf20c30ab76888ee9c
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
the network"
|
|
Ansible some times loses connection with the host after we configure its
network interface. This shouldn't happen since the host is actually up
and running. As a result of which, we need to fire-and-forget the
restart of the network service and then try to reach the SSH port. We
also need to make sure that all required packages are installed.
Finally, we drop the 'ignore_errors' parameter since we really need to
know when the networking configuration has failed.
Change-Id: I366192737b5c4e01964eaf187396eababbdc808e
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
The provision-vm-nodes playbook doesn't do any VM provisioning. It
basically just bootstraps the bifrost repository so rename it to
make it clear what this is about.
Change-Id: I1c10bc6135686c5197d553a885412a94312a41bc
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Change-Id: I8848d5bae22a408482d51a84636d230d25ca22be
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
Ansible throws out the log at the end of task execution which
makes it hard to read. This change renames the role to prepare-functest
and then takes the script execution out which will be executed by
releng/jjb/xci/xci-run-functest.sh.
Change-Id: Icf399ce4f04357814ed7109cd11113a9decddc50
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
CI_LOOP is hardcoded to daily (the common default value) [1].
[1] https://gerrit.opnfv.org/gerrit/#/c/51981/
Change-Id: I15f5d41f7f10a5c8fddcc4a4d303552ef45c5fb2
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
|
|
It conforms with "Unlink Energy from functest utils and constants":
https://gerrit.opnfv.org/gerrit/#/c/51943/
Depends-On: Iecd5d49b4d4c961c9dc51e43e54df1fcd4027266
Change-Id: I7c7125ac2fee9a2e8f24dcf060bdaab1b39ae552
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
|
|
THe prepare-functest role changed the name but .gitignore is still
using the old name
Change-Id: I67e962704a62756663abdc721fb8b9a9ac8648a2
Signed-off-by: Manuel Buil <mbuil@suse.com>
|
|
Hardcoding the interface as a variable is very fragile since it varies
from host to host. We could use the Ansible facts to find out the
interface name and then use that to configure all the VLANs and
networking.
Change-Id: Ie7e2409d638625b9bede23b6c1fe33dc36f81840
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Add a new volume to the docker container which will hold the results
from the functest run.
Change-Id: I70541a8337c9198a97304312adfab74d4dd06b70
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
* Bump up upstream SHAs
* With these upstream SHAs, OSA installs neutron-agent container on
controller node which would require eth12 interface on controller for
establishing vlan provider networks. so adding eth12 interface and
linking it with br-vlan over br-vlan-veth link.
Change-Id: Iaf7cbe6e41dcfd15ec6527c5a50701f2d05eaad8
Signed-off-by: Markos Chandras <mchandras@suse.de>
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
|
|
It follows the change "Rename a common credential file for OS and
K8S" which stops forcing OpenStack creds.
[1] https://gerrit.opnfv.org/gerrit/#/c/51283/
Change-Id: Ic83a2e696c9ea8821e29e6b3f4e69db25c528a0d
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
|
|
|
|
|
|
This commit introduces kubespray into XCI.
k8s install currently assumes k8s install
and OpenStack install cannot coexist.
If XCI_INSTALLER is set to "kubespray" and
DEPLOY_SCENARIO is set to "k8-nosdn-nofeature"
the xci-deploy.sh would install kubernetes instead of OpenStack.
The version of kubernetes is beta release v1.9.0 currently
according to the master of kubespray
it only support the ubuntu now.
Opensuse and centos still need to develop and test.
This patch create the directory xci/installer/kubespray,
the related files of kubespray would be placed to it.
The xci/installer/$installer/playbooks/configure-localhost.yml was moved
to xci/playbooks/configure-localhost.yml as a common yaml file.
You can modify some parameters according your need
in xci/installer/kubespray/files/k8s-cluster.yml to deploy cluster.
When deploying kubernetes,
it would download the kubespray to releng-xci/.cache/repos/kubespray.
If your flavor is Ha, it will download haproxy_server and keepalived
to xci/playbook/roles, which setup haproxy service for kubernetes.
Change-Id: I24d521a735d7ee85fbe5af8c4def65f37586b843
Signed-off-by: wutianwei <wutianwei1@huawei.com>
|
|
Functest requires to read the variable TEST_DB_URL from the env. variables:
https://gerrit.opnfv.org/gerrit/#/c/49757/
Change-Id: Idbfc2df989f5b2a8e6ddd2d9a9a70526dd9bf1f4
Signed-off-by: Manuel Buil <mbuil@suse.com>
|
|
The package requirements are the same across distros so
we simply hardcode them in the task. Fixes the following problem:
fatal: [opnfv]: FAILED! => {"changed": true, "cmd":
"/root/run-functest.sh", "delta": "0:00:09.150226", "end": "2018-01-26
14:01:18.758704", "failed": true, "rc": 125, "start": "2018-01-26 1
4:01:09.608478", "stderr": "/root/run-functest.sh: line 14: wget:
command not found
Change-Id: Ib07acac18f8ece1111ee0706766f32005d0ac1da
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
This change integrates functest in most easiest and messy way to
get it up and running to bring functest into CI. The reason for
this is that there are strange failures during functest healthcheck
and it is important to look into those rather than beautifying how
functest is integrated at this phase.
Change-Id: I42e993be4aa15da022fa1e0069338447780f177e
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
|
|
When the user selects an invalid combination then some facts may not be
set so the deployment may fail in a crypt way like in the following case
fatal: [localhost]: FAILED! => {"failed": true, "msg": "The conditional
check 'deploy_scenario_installer' failed. The error was: error while
evaluating conditional (deploy_scenario_installer):
'deploy_scenario_installer' is undefined\n\nThe error appears to have been in
'/home/opnfv/releng-xci/xci/playbooks/get-opnfv-scenario-requirements.yml':
line 114, column 11, but may\nbe elsewhere in the file depending on the
exact syntax problem.\n\nThe offending line appears to be:\n\n
when: item.installer == XCI_INSTALLER\n - set_fact:\n
^
here\n"}
Change-Id: I931376d99bb178b15c4a9a71d47b48b01b858e4e
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Change-Id: If8c0de44c313fdc22b1c7443b12d42769035c5b0
Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
|
|
'redhat' as a ansible_os_family covers both the RedHat distros and
CentOS.
Change-Id: I2ab56024d2c0f1f40a014a236cfd94ef38daad04
Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
|
|
Using 'installer' to describe the tool that will deploy the foundations
of a particular XCI scenario is more appropriate than NFVI which
normally describes both the physical and virtual resources needed by
an NFV deployment.
Change-Id: Ib8b1aac58673bf705ce2ff053574fd10cb390d71
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
A scenario may only support certain NFVIs or distributions so we
need a mapping with all these things so we know what can be tested
and where.
Change-Id: Ibf1b640b762085f58627e05e1d2ca13edfc4d716
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
The location where we were putting the scenarios was wrong as it was
placing them in xci/playbooks/roles/$scenario/$scenario so in the end
the Ansible couldn't find the role we were looking for. As a result,
the role was never executed. Moreover, we can use the synchronize
module instead of the shell which should be both faster and safer.
Change-Id: I3d996652bb6a62d23e259da5674d94596dad4d8d
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Make sure that any local changes to scenarios are being propagated to
the checkouts. This should only happen when we are testing the 'master'
branch of the scenario since it may be desirable to test a specific SHA
in which case we shouldn't modify the checkout code.
Change-Id: I4197f09a3e4d5a54c86905bc556b06e08948fbc2
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
1. the "+" and "'" will be part of the string in the path parameter of ansible.
So the directories we create are not right. we need remove these char.
2. it miss the "{{" in ansible variable
Change-Id: I30c9804450588c63f5f18c63c1d90cd869fad90e
Signed-off-by: wutianwei <wutianwei1@huawei.com>
|
|
|
|
Move all the playbooks that only make sense for OpenStack-Ansible
deployments to the NFVI/OSA directory where they belong. This further
disassociates XCI from OSA.
Change-Id: Iab8b6dc81d9025a1d85608a98fb1eee0f1c6a69f
Signed-off-by: Markos Chandras <mchandras@suse.de>
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
We need to use proper jinja2 code to set the fact properly.
Change-Id: I903233c0e059edf2af973ea9c08b8bd80795e1a9
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Rest of the OPNFV projects use the variable DEPLOY_SCENARIO so
XCI should be aligned with them as well even though OPNFV_SCENARIO
fits better than DEPLOY_SCENARIO.
Change-Id: Id48c41fa8a1fa9493cfc7a4906f64b6d8ed27d64
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
|
|
|
|
Scenarios may not support all XCI flavors so record that information
per scenario basis. This will resolve failures when we try to deploy
a scenario that doesn't support the selected flavor.
JIRA: RELENG-338
Change-Id: I5f73b139ee6c1831896aa32147c4dc1368673d92
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
The configure-opnfvhost playbook which is used for all flavors except
AIO can also be used for AIO if it's adapted to not configure networking
on the host and also do not fail if there aren't any OSA variables files
available so lets do all that in order to avoid duplicating code across
flavors.
Change-Id: I58379d8b52094294b9349494753ffcdd44982013
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
|
|
The OPENSTACK_OSA_PATH only makes sense on localhost. As such, when we
use it on playbooks that operate on remote hosts, the result is not
predictable. However, we rsync the entire releng-xci repository to the
opfnv host so we can make everything predictable by simply clone
everything in advance in the .cache directory. That directory is then
rsync'd to the opnfv host. As such, we can repurpose the
OPENSTACK_OSA_PATH to point to the path into the OPNFV host. Moreover,
all external repositories are being cloned to .cache/repos so we can
eliminate some variables in order to simplify the code. Finally, we
bring back the ability to use an external OSA repository for
development purposes.
Change-Id: Ieef3e22ae2085f6735185634d555cfc0d4b69b39
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
There is too much noise when XCI is cloning repositories, installing
packages etc so lets make the console output somewhat more readable.
Change-Id: I15667e0349f943ad5488daf0e3cea9336c9166d1
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
|