summaryrefslogtreecommitdiffstats
path: root/xci/playbooks
AgeCommit message (Collapse)AuthorFilesLines
2018-09-03Rename functest-prepare role to prepare-testsFatih Degirmenci7-54/+67
This change renames functest prepare-tole to prepare tests and makes other adjustments to the role to move common test preparation steps to its own script so we can prepare for Functest and Yardstick at one go. Similar things are required to be prepared for running Functest and Yardstick such as - installed packages - external network creation - creation of run-functest.sh and run-yardstick scripts from templates - preparation of environment variables This change will fail verification until the changes below is submitted. https://gerrit.opnfv.org/gerrit/#/c/61645/ Change-Id: Id1020d3e61abd3f087863c06a132c5021339d655 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-09-03Merge "Revert "xci: osa: Disable haproxy ssl configuration""Markos Chandras1-32/+0
2018-09-03Revert "xci: osa: Disable haproxy ssl configuration"Markos Chandras1-32/+0
This reverts commit 42501f0ef7e0f0729b1c780102fb9713ef383fb3. This also removes the entire SSL management code and we let the haproxy_server role generate the certificates for us. We also need to bump the openrc role to include an upstream patch which fixes the openrc template file. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: I9bb590c9f1d5bc63519cfb4794dc15f794cc5b07 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-08-31Merge "Download only necessary images for functest-smoke"Fatih Degirmenci1-2/+9
2018-08-31Merge "xci: roles: create-vm-nodes: Always provision VM nodes"Markos Chandras3-23/+18
2018-08-31Download only necessary images for functest-smokeFatih Degirmenci1-2/+9
Functest download_images.sh script downloads images that are not needed for functest-smoke so we only download the necessary images to cut the time down. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: I0be643c4ccd4b8009e68433f5d635231afd2550a Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-08-30Merge "Install xz utility on deployment host"Fatih Degirmenci1-0/+3
2018-08-30xci: roles: create-vm-nodes: Always provision VM nodesMarkos Chandras3-23/+18
The role used to get the output of 'virsh list --all' to determine how many VMs are present and shut off in the system. This takes *all* VMs on the system into consideration so it may skip creation of some or all of the XCI VMs if we happen to have other VMs present. We can improve the situation by simply dropping this check and always provision the VMs we want. If the VM is already present, then the module will simply do a sanity check of its configuration. This allows XCI to run alongside other VMs. Change-Id: I54255a1959509671c0305f48f23a55b6e900684f Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-08-24Align idfs and separate admin and managementManuel Buil4-5/+5
According to OpenStack admin is the network for pxe boot and mgmt is the network for OpenStack services to communicate. We were using both in XCI indistinctly Change-Id: I3959e767098ac2be7161a5e84735fde9ab129784 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-08-21Install xz utility on deployment hostFatih Degirmenci1-0/+3
Functest Smoke test requires additional images to be available during testing. One of the images is decompressed using xz and we need this to be available on deployment host in order to be able to have the images available for Functest execution. Change-Id: I5647b3bef37fc55e8c5cc9aec5d0b2c3ea628b8a Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-08-21Modify idf to be aligned with the rest of idfsManuel Buil1-5/+5
Change our idf to be more aligned with lf's idf. Adapt dynamic_inventory.py to the change Change-Id: Ib8f6d1684a00a8eb5ae06d5d04d308d4325cd444 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-08-21xci: Bump OSA and bifrost SHAsFatih Degirmenci1-2/+2
This change - bumps OSA SHA to cbfdb7dc295ff702044b807336fab067d84a3f20 (mostly based on Rocky RC1) - bumps bifrost SHA to c1c6fb7487d5b967624400623fd35aabf303b917 - pins Ansible to 2.4.6.0 - switches to ollivier/functest-healtcheck since OS is bumped to Rocky Change-Id: Icc14e3e794b489dafd78b426c54051a3732ccb1a Signed-off-by: Fatih Degirmenci <fdegir@gmail.com> Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-08-10xci: Restrict virtualbmc to version 1.3Markos Chandras1-0/+1
Version 1.4 brings in additional dependencies and it's currently not used in OpenStack anyway. So lets stick to 1.3 for now. Change-Id: I2489168cae12f7fa3271c2de7d4fcf37bdb97810 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-08-10Merge changes from topic 'extend-suse-support-id-skip-verify'Markos Chandras2-0/+9
* changes: xci: xci-destroy-env.sh: Update virtualbmc path xci: create-vm-nodes: Install virtualbmc in the XCI virtualenv xci: osa: Drop openSUSE mirror variables
2018-08-10xci: create-vm-nodes: Install virtualbmc in the XCI virtualenvMarkos Chandras2-0/+9
XCI prepares a virtualenv for us, so we should install virtualbmc in it. Change-Id: I320d1c7cad9c5c821269b55252cb7ab4f5136f40 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-08-08Resize OPNFV VM DiskFatih Degirmenci1-0/+6
OPNFV VM creation is separated from the rest of the nodes, resulting in its disk being left without resizing. It is important to resize its disk to the value defined in its PDF opnfv_vm.yml so the installation of the other tools does not fail due to lack of space. Change-Id: I8300e6e355d11788cc983fcebca56076e89918e1 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-06-28Use PDF to set up the XCI VMsManuel Buil1-1/+1
This patch is doing the first work item of the spec: https://github.com/opnfv/releng-xci/blob/master/docs/specs/infra_manager.rst It creates the required VMs by XCI to afterwards deploy the VIM. It does that by reading the pdf provided by the user. - It is currently assumed that the OS for the VM will be installed in the first disk of the node described by the pdf - It is assumed that the opnfv VM characteristics are not described in the pdf but in a similar document called opnfv_vm.yml - All references to csv from bifrost-create-vm-nodes were removed Change-Id: I46a85284e4ce7df21cbf66f66619b35f74251e68 Signed-off-by: Manuel Buil <mbuil@suse.com> Co-Authored-by: Markos Chandras <mchandras@suse.de>
2018-06-26xci: playbooks: manage-ssh-keys: Create regular user and SSH keysMarkos Chandras1-0/+9
We may need to perform non-root tasks on the nodes, so we should have a regular user present as well. Change-Id: I0b824f1875ce04fe67424fc96e754e06da53be8d Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-06-26xci: roles: create-vm-nodes: Add role for creating XCI VM nodesManuel Buil12-0/+704
Add a new role based on the bifrost one to create nodes for the bifrost virtual deployments. This role will install and configure libvirt on the host, download a prebuilt OPNFV VM image and deploy the OPNFV VM using that image. Moreover, it will create the rest of the nodes for the virtual deployment which will be configured by bifrost later on. Change-Id: I9fbd084261351d3b53ae373060f43df046191c5e Co-Authored-by: Markos Chandras <mchandras@suse.de> Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-06-26Pin functest-healthcheck docker image to known shaFatih Degirmenci1-2/+2
Functest changes have significant impact which blocks everything in XCI so this change pins the image to a known sha to get the original set of healthcheck testcases until the impacts are analysed and concerns are raised to Functest and the wider OPNFV Community and addressed based on community consensus. Pinned version of functest-healthcheck contains the test cases below. - connection_check - api_check - snaps_health_check deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: Ic9222af8c27e58491b7b60a7504df9d792b5e753 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-06-12xci: dynamic_inventory: Add new entry for deployment_hostMarkos Chandras1-0/+5
The deployment host is normally the host which runs the various playbooks so we add a new entry in the inventory for localhost. Change-Id: I43baddf4fabd69579c1a02f55ece230a062c2d9b Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-06-06roles: bootstrap-host: Ensure DNS info from IDF is respectedMarkos Chandras5-5/+21
We are configuring static IPs in the various nodes but we don't do anything for DNS assuming that DNS is being configured by another entity. However, the IDF file already contains DNS information for us so we should use that instead. Moreover, we update the IDF file to use the gateway as DNS instead of the Google one in order to make it more usable on restricted networks. Change-Id: Ieba58ec9558080a1296e204c4f99bae859e9daef Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-06-01Merge "xci: kubespray: Use bootstrap role for k8s deployments"Markos Chandras1-0/+1
2018-05-18xci: kubespray: Use bootstrap role for k8s deploymentsMarkos Chandras1-0/+1
The bootstrap role configures NTP and networking on hosts so we should use it on k8s deployments as well. installer-type:kubespray deploy-scenario:k8-nosdn-nofeature Change-Id: I04bd1e1c2c325baabfb836bd8cca60c5f59344c7 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-18Merge "xci: kubespray: Switch kubespray to dynamic inventory"Markos Chandras1-3/+25
2018-05-17Merge "xci: Wipe repositories at the beginning of the deployment"Markos Chandras1-1/+0
2018-05-17Merge "xci: bootstrap-host: Fetch netmask information from IDF"Markos Chandras8-35/+38
2018-05-17xci: Wipe repositories at the beginning of the deploymentMarkos Chandras1-1/+0
We should not wipe the repositories in the localhost playbooks since it makes it somewhat hard to debug problems. We should do that at the beginning of the deployment to ensure that we start without any stale git data. Change-Id: I70b2ac77284a9ca304d6aa68dbf1654f59260dc4 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-16xci: get-opnfv-scenario-requirements: Fix stale scenario factsMarkos Chandras1-6/+0
We always need to update the local facts for the scenario we are deploying in order to avoid deployments with stale data. Change-Id: I36298d2ebc1b813e95a2f213cd13649a0b4e04bf Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-16xci: bootstrap-host: Fetch netmask information from IDFMarkos Chandras8-35/+38
The IDF file contains the netmask for every network so we should use that information instead of using hardcoded values. Change-Id: Ie798cb49563bdb72fdfb7b6e9e269692bf1f7bc9 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-16xci: kubespray: Switch kubespray to dynamic inventoryMarkos Chandras1-3/+25
The kubespray installer contains one inventory per flavor. We can get rid of these files and use the dynamic inventory similar to OSA. Moreover, we extend the dynamic inventory to read additional group variables per flavor if necessary. This way we can still pass additional information to inventory on per-flavor basis. This also fixes a typo in the 'IDF' file. We also need to bump Ansible for kubespray since the version we were using is having troubles with dynamic inventories. Change-Id: Ic58101555f81aec5fee3c193608440aa89bbe445 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-05-09xci: osa: Add initial dynamic inventory from PDF/IDF filesMarkos Chandras4-12/+165
The PDF and IDF files contain all the information we need for the virtual XCI deployment, so we can use it to create a dynamic inventory and get rid of all the static ones which could easily get outdated as PDF and IDF files evolve over time. This inital version of the dynamic inventory contains a lot of unnecessary generated information but we do that in order to ease the migration from static files to the dynamic inventory. The dynamic inventory will be improved in the future as we consume more and more information from the PDF and IDF files. Change-Id: Id9f07a61c67a5cffcbc18079a341e5d395020a27 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: Remove intermediate scenarios tasks fileMarkos Chandras1-43/+0
Now that the scenario role is recorded as a local fact, we can include the role directly directly so we don't need the the intermediate file anymore. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: Ia3c5658826f115538b2a103d987ee8f33d3048b9 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: Improve scenario bootstrapping processMarkos Chandras1-48/+73
It's best to check whether the scenario/distro/flavor combination is supported before spending time cloning all the scenarios. Moreover, we can record the scenario information as a local fact so we can use it during the deployment later on. Change-Id: I1971444c6c6302a844f44ea651ad3b83c4da435c Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: playbooks: Simplify scenario overrides mechanismMarkos Chandras1-50/+16
Now that releng-xci does not have any internal scenarios anymore, we can simplify the way we plug scenarios to XCI. We keep cloning scenarios in the cache directory but we also allow users to pass a special 'xci_scenarios_overrides' variable similar to the 'opnfv_scenario_requirements.yml' file to allow them to override specific keys of the dictionaries. This can be used by Jenkins to test incoming changes by altering the defaults values. For example, when we want to test a Gerrit change we can create a file called foobar.yml with the following contents xci_scenarios_overrides: - scenario: os-odl-sfc version: 9fa5400012e02408b416eb7bd26307e7d179abce refspec: refs/changes/79/55879/7 and load it using XCI_ANSIBLE_PARAMS="-e @foobar.yml" This will make XCI checkout the refspec that we want instead of the default version. Change-Id: Ida49910b4c79b843582ddd70c00063fe9bc90dd4 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-30xci: roles: bootstrap-host: Simplify configuration filesMarkos Chandras16-330/+202
We split the networking task on distro specific files to make it easier to read. Moreover, the debian network configuration has been improved by simply sharing a common file across all nodes and also use the 'source' facility in the main /etc/network/interfaces file to use one configuration file per interface. Change-Id: Ic822fe6dc197227e70c0ba7cee812629df287d82 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-25Merge "Move configuration network templates"Markos Chandras11-5/+5
2018-04-17Merge "xci: Add k8-nosdn-nofeature role"Markos Chandras1-0/+4
2018-04-16xci: Add k8-nosdn-nofeature rolewutianwei1-0/+4
Move default k8s-cluster.yml from kubespray/files/ to role/k8-nosdn-nofeature/files/k8s-cluster.yml since it's scenario specific. Moreover, we set 'cloud' as kube_network_plugin, which would use kubnet as network plugin. The kubenet network plugin requires routing between to be setup by the administrator so we need to add static routes on every host since they are connected using a bridge instead of a router. installer-type:kubespray deploy-scenario:k8-nosdn-nofeature Change-Id: I6ab7288c966d7f17e9d61279056f7673be37bebe Signed-off-by: wutianwei <wutianwei1@huawei.com> Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-04-14Download only the needed images for OpenStack Functest HealthcheckFatih Degirmenci1-1/+9
Some of the files needed by Functest are pretty big and it takes time to download them all so this change ensures that the files are needed by healthcheck is downloaded and the rest is not. Further changes are needed to make the list even smaller for smoke test but we need Functest guidance to identify which of them are needed for what testing. It could be done by having suite specific download_images.sh like download_images_healthcheck.sh, download_images_smoke.sh and so on. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: Ib2c5867adfad8097d1a084c39ad08cc4df2e4549 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-04-13Integrate the k8-flannel-nofeature scenarioTaseer Ahmed1-0/+4
installer-type:kubespray deploy-scenario:k8-flannel-nofeature Change-Id: Ie47efe4759b2cf52421cd2edf5e7817442b0026f Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
2018-04-13Create the k8-calico-nofeature scenariowutianwei1-0/+4
installer-type:kubespray deploy-scenario:k8-calico-nofeature Change-Id: Ief8557149fd47faab43f8f4bedcf6466dac2275f Signed-off-by: wutianwei <wutianwei1@huawei.com>
2018-04-12Create the k8-canal-nofeature scenariowutianwei1-0/+4
add the k8-nosdn-noeature and k8-canal-nofeature roles under scenarios directory run different roles to configure the k8s-cluster according to the deploy scenario installer-type:kubespray deploy-scenario:k8-canal-nofeature Change-Id: Ia96b01f79fb058e045c5b7d9d9aecb7f15a21e63 Signed-off-by: wutianwei <wutianwei1@huawei.com>
2018-04-12Update prepare-functest role for k8s and fix fetching xci.envFatih Degirmenci3-25/+61
This change updates prepare-functest role for testing k8s scenarios using functest healthcheck. The changes include - update tasks to skip checking/creation of public gateway which is needed for OpenStack based scenarios - update run-functest.sh.j2 template and set the used docker image name based on FUNCTEST_SUITE_NAME that is going to be used - update run-functest.sh.j2 template and add commands needed to run tests using functest-kubernetes-${FUNCTEST_SUITE_NAME} docker image - update env.j2 to exclude setting the var EXTERNAL_NETWORK which is needed for OpenStack based scenarios Apart from updating the the prepare-functest role, a bug has also been fixed by adding the fetching of xci.env for installer kubespray. installer-type:kubespray deploy-scenario:k8-nosdn-nofeature Change-Id: Ia701db9748ea9509a2dc165341285fb189aa7266 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-04-11Set additional variables for functestFatih Degirmenci1-1/+1
CI_LOOP, NODE_NAME, and BUILD_TAG are needed for logging info to console. FUNCTEST_MODE and FUNCTEST_SUITE_NAME are important for stating what level of testing we do for verify and merge jobs. Change-Id: Iaa5499155b4b94a1cfc6b5c70fe6f8f7417502a6 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-04-10Merge "Revert "display the correct deploy scenario for the functest run""Fatih Degirmenci1-1/+1
2018-04-10Merge "xci: osa: Move SSL certification tasks to a new file"Manuel Buil1-0/+32
2018-04-09Revert "display the correct deploy scenario for the functest run"Manuel Buil1-1/+1
This reverts commit 5dc7b76e38019c059cea159769cdb2c37af98ded. OPENSTACK_OSA_VERSION was removed by this patch and that variable is needed. By looking at the patch, it seems theat variable was removed by mistake Change-Id: I73dc7a7ec393231717f847ff303f9b2f99a00cc0
2018-04-08[XCI] Fix ansible synchronize module parameterwutianwei1-1/+1
synchronize module unsupported parameter "recurse", it would be failed, when trying to synchronize the directory. we need change it to "recursive", more information please refer to http://docs.ansible.com/ansible/devel/modules/synchronize_module.html Change-Id: If18ce8a3411ba9425dd573f090c5f4e0c41858e0 Signed-off-by: wutianwei <wutianwei1@huawei.com>
2018-04-06xci: osa: Move SSL certification tasks to a new fileMarkos Chandras1-0/+32
The tasks for creating and managing the XCI SSL certificates can be shared between installers so move them to a common file. Change-Id: I9df82517e737681420429a992aa8d68e78528fd4 Signed-off-by: Markos Chandras <mchandras@suse.de>