summaryrefslogtreecommitdiffstats
path: root/xci
AgeCommit message (Collapse)AuthorFilesLines
2018-02-21xci: roles: configure-network: Determine host NIC from Ansible factsMarkos Chandras10-64/+61
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>
2018-02-21Correct the BIFROST_IRONIC_VERSION variableDimitrios Markou1-1/+1
By mistake the BIFROST_IRONIC_VERSION variable was written BIFROST_IRONIC_CLIENT_VERSION Change-Id: Ie35a4938a2fb38c633dd149c1d18f1da20a4e82a Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com>
2018-02-21Merge "xci: xci-deploy.sh: Calculate and print the total deployment time"Markos Chandras2-1/+7
2018-02-21Merge "xci: playbooks: run-functest: Collect functest results"Markos Chandras1-0/+2
2018-02-20xci: playbooks: run-functest: Collect functest resultsMarkos Chandras1-0/+2
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>
2018-02-20xci: Switch VM disk cache to 'unsafe' and use 'iothreads' for I/OMarkos Chandras5-6/+2
According to the docs[1] "writeback: This mode causes the hypervisor to interact with the disk image file or block device with neither O_DSYNC nor O_DIRECT semantics. The host page cache is used and writes are reported to the guest as completed when they are placed in the host page cache. The normal page cache management will handle commitment to the storage device. Additionally, the guest's virtual storage adapter is informed of the writeback cache, so the guest would be expected to send down flush commands as needed to manage data integrity. Analogous to a raid controller with RAM cache." and "writeback: This mode informs the guest of the presence of a write cache, and relies on the guest to send flush commands as needed to maintain data integrity within its disk image. This is a common storage design which is completely accounted for within modern file systems. This mode exposes the guest to data loss in the unlikely case of a host failure, because there is a window of time between the time a write is reported as completed, and that write being committed to the storage device." "unsafe: This mode is similar to writeback caching except for the following: the guest flush commands are ignored, nullifying the data integrity control of these flush commands, and resulting in a higher risk of data loss because of host failure. The name “unsafe” should serve as a warning that there is a much higher potential for data loss because of a host failure than with the other modes. As the guest terminates, the cached data is flushed at that time." It's beneficial to use the host page cache to cache I/O from the guest instead of waiting for data to reach the actual disk device. We do not normally care about data integrity so data loss is not a problem. Moreover, we drop the cache configuration from the flavor files since it's independent of the flavor that's being deployed. [1] https://www.suse.com/documentation/sles-12/singlehtml/book_virt/book_virt.html#cha.cachemodes Change-Id: I118ffdf84b1be672185b3eff60fe5d0b5f1a590d Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-02-19xci: xci-deploy.sh: Calculate and print the total deployment timeMarkos Chandras2-1/+7
It's useful to know how XCI performs in terms of duration time so use the bash $SECONDS variable to calculate the total amount of time it takes for a full XCI deployment. Moreover, use the 'ts' command to print a timestamp for every command executed. This will help developers identify tasks which take a lot of time to complete and possibly optimize them. Change-Id: I75a8cb8c05957bb205e63210d6cafaf54d989f32 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-02-13xci: Bump OpenStack Ansbile SHAsMarkos Chandras5-107/+113
* 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>
2018-02-13bifrost: Add ability to pin Ironic-{,client,inspector,inspector-client} SHAsMarkos Chandras2-4/+27
We should pin the SHAs for Ironic components as part of the regular bifrost bump to ensure maximum long term stability. This also bumps the bifrost SHA to the latest available one. Change-Id: Ia66d8ab6566db58e2ddab5134eb8445bd84d2a8f Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-02-07Merge "xci: scripts: vm: Use LVM backend if available"Markos Chandras1-5/+21
2018-02-07xci: scripts: vm: Use LVM backend if availableMarkos Chandras1-5/+21
The CI nodes come with a big secondary mechanical disk which can be attached directly to the clean VM. As such, we split the disk into one logical volume per distribution and flush the qcow2 image to it before attaching it to the VM. If the XCI volume group is not available, then we revert back to using a file-based storage backend. Finally, we hide stdout/stderr from the package installation process to minimize the script output. Change-Id: I11ea82899c411f8a4168e5f23cbbd8187cc891df Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-02-05bifrost: Bump bifrost sha1s to latest on masterFatih Degirmenci1-2/+2
This change brings in the fix for policy.json removal. https://review.openstack.org/#/c/536349/ Change-Id: Ib18a99502c0ce61278e13f25a01622e073749d14 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-02-02Rename Functest credsCédric Ollivier1-1/+1
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>
2018-02-01Merge "Adapt to change in functest"Fatih Degirmenci1-0/+1
2018-02-01Merge "Enable deltarpm"Markos Chandras1-2/+2
2018-02-01Merge "xci: scripts: vm: Install additional packages to clean VM"Markos Chandras1-3/+5
2018-02-01xci: scripts: vm: Install additional packages to clean VMMarkos Chandras1-3/+5
Install some additional packages to the clean VM which can be useful during debugging. Moreover, we move the common distribution packages into a variable in order to simplify the code a little bit. Change-Id: I0405820900a15fec730a2bbfc95a1d1f3485bf0f Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-01-31Merge "deploy kubernetes in XCI"Fatih Degirmenci20-76/+853
2018-01-31deploy kubernetes in XCIwutianwei20-76/+853
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>
2018-01-30Enable deltarpmVictor Morales1-2/+2
DeltaRPM allows to install only the difference between an old and new version of an RPM, as consequence this reduces the network consumption in CentOS distros. Change-Id: I317fbac44ae5fb6d5293443e755e2b7ddd08c66e Signed-off-by: Victor Morales <victor.morales@intel.com>
2018-01-29Adapt to change in functestManuel Buil1-0/+1
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>
2018-01-29Merge "correct the lookup logic for scenario's xci_overrides"Markos Chandras1-3/+1
2018-01-29Merge "xci: Record deployment scenario when collecting XCI info"Markos Chandras1-1/+2
2018-01-26xci: Record deployment scenario when collecting XCI infoMarkos Chandras1-1/+2
Add the DEPLOY_SCENARIO variable to the list of information we collect when deployment fails. Change-Id: I7081b80feea1d3d2ff83e54bd5e614b4ea98964d Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-01-26xci: run-functest: Add required functest packagesMarkos Chandras1-0/+7
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>
2018-01-26correct the lookup logic for scenario's xci_overridesPeriyasamy Palanisamy1-3/+1
Previously xci-deploy.sh looks up the xci_overrides files under $XCI_SCENARIOS_CACHE/${DEPLOY_SCENARIO} directory, but actually xci_overrides file resides somewhere in the nested directory level in both inband/outband scenarios. Hence the fix is done by using the find command. Change-Id: Icb507471e368f56290ef91d555673830b598e204 Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
2018-01-24xci: Integrate functestFatih Degirmenci5-11/+19
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>
2018-01-23Merge "xci: scripts: vm: Retry when timer expires"Markos Chandras1-12/+4
2018-01-23xci: scripts: vm: Retry when timer expiresMarkos Chandras1-12/+4
We should look again for active package managers when the timer expires to avoid locking issues. Change-Id: I88f0299a87befce17d11ba7581f0330979a25345 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-01-22Merge "xci: xci-deploy.sh: Drop warning for CentOS"Markos Chandras1-7/+0
2018-01-22Merge "xci: get-opnfv-scenario-requirements.yml: Check if facts are set"Markos Chandras1-2/+5
2018-01-19xci: get-opnfv-scenario-requirements.yml: Check if facts are setMarkos Chandras1-2/+5
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>
2018-01-19xci: xci-deploy.sh: Drop warning for CentOSMarkos Chandras1-7/+0
The basic support for CentOS has been merged and it passes the CI so drop the warning. Change-Id: I70e6ba0fcd851d2eb9bfcb24d185276ed68c1005 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-01-15Enable running on CentOS/RedHat familyTapio Tallgren2-5/+4
Changes that make it possible to run XCI on CentOS: - Remove the check on xci-deploy.sh script that exists on RedHat family (including CentOS) and making the error into a warning. - Add centos to a distro in opnfv-scenario-requirements Change-Id: Ief6f1e50d8c7c9d8787641827e57682a6e0549e4 Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
2018-01-15Create CentOS networking configurationTapio Tallgren4-0/+49
Change-Id: If8c0de44c313fdc22b1c7443b12d42769035c5b0 Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
2018-01-15Rename centos.yml to redhat.yml in configure-nfs/varsTapio Tallgren1-0/+0
'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>
2018-01-15Bump OSA-galera_server SHA to fix a CentOS issueTapio Tallgren1-1/+1
Galera installation in CentOS fails because the mysqld.sock file is in a different location, despite what the my.cnf configuration tells. This has been worked around in upstream OSA-galera_server: https://git.openstack.org/cgit/openstack/openstack-ansible-galera_server/ commit/?id=f2bfbd38513ac8d61ba4e02a4d5ef6cbbca259cc Change-Id: Ied11571189eff8cbab0f1990a7599b51cad9ea2b Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
2018-01-08xci: Rename 'nfvi' to 'installer'Markos Chandras41-37/+37
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>
2018-01-08xci: nfvi: OSA: Drop SUSE workaroundMarkos Chandras1-7/+0
The upstream patchset has been merged, so drop the SUSE specific workaround when obtaining the status of the galera cluster. Link: https://review.openstack.org/#/c/508154/ Change-Id: Ic990e6939fb794a532caf8af2759969198fa5d3a Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-01-03xci: Record distribution and NFVI information for scenariosMarkos Chandras2-18/+57
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>
2018-01-03xci: Decouple VM distribution from host OSMarkos Chandras4-9/+9
Introduce a new XCI_DISTRO variable to select the distribution to deploy on the VMs in order to make deployments more flexible and decouple the VM OS selection from the host one. The default value for this new variable is to match the host OS but users can always set it to one of the supported distributions. We can now simply execute the install-ansible.sh script instead of sourcing it in order to keep the environment as clean as possible. Change-Id: Ia74eb0422f983848cde0fb7b220ea1035dfa78bc Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-01-03xci: nfvi: OSA: Remove duplicate xci-deploy.sh scriptMarkos Chandras1-183/+0
It was committed by accident in c74cfd33fc3c ("xci: OSA: Move all the OSA specific playbooks to the NFVI directory") so drop it. Change-Id: I5de91f0aad750a9cb723a46baa63e75beb3180de Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-01-03Merge "[XCI] move osa files into xci/nfvi/osa/files"Markos Chandras30-13/+14
2018-01-03[XCI] move osa files into xci/nfvi/osa/fileswutianwei30-13/+14
we maybe introduce other NFVI in the future in XCI. it is necessary to put the nfvi files to corresponding directory xci/nfvi/$NFVI/files, otherwise the files directory will be confused. Change-Id: Iea98167ff0bc8d338a94fe1c064ac0ab396c53d3 Signed-off-by: wutianwei <wutianwei1@huawei.com>
2017-12-22xci: scenarios: Fix location when copying scenarios to rolesMarkos Chandras1-6/+6
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>
2017-12-22Merge "xci: playbooks: Copy local changes to scenarios"Markos Chandras1-0/+12
2017-12-22Merge "xci: nfvi: OSA: Set 'pipefail' when SSHing on the OPNFV host"Markos Chandras1-6/+6
2017-12-22Merge "bifrost: Bump bifrost SHA"Markos Chandras1-1/+1
2017-12-22xci: playbooks: Copy local changes to scenariosMarkos Chandras1-0/+12
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>
2017-12-22Merge "Bump sha on openstack-ansible-lxc_hosts"Markos Chandras1-1/+1