summaryrefslogtreecommitdiffstats
path: root/xci/playbooks
AgeCommit message (Collapse)AuthorFilesLines
2019-08-22Support for py3Manuel Buil3-4/+18
This patch provides support for py3 in the deployment host and the OPNFV VM. Some extra changes will need to happen in the future when distros disclose how they will react to the py2 expiration. * virtualbmc version is upgraded to 1.5 because 1.3 is not compatible with py3 * The dynamic inventory is slightly modified because it was using functionality that changes in py3 * pip3 check is removed as Ansible now works with py3 deploy-scenario:k8-calico-nofeature installer-type:osh Change-Id: I34178ebc357b0a299c0017d6f9e596b815c77b3b Signed-off-by: Manuel Buil <mbuil@suse.com>
2019-08-05Support of opensuse in OSH-XCINikos Mimigiannis1-0/+15
deploy-scenario:k8-calico-nofeature installer-type:osh Change-Id: Ie198ee7e25579f1438561f71fd965518b067fe42 Signed-off-by: Nikos Mimigiannis <nmimi@intracom-telecom.com>
2019-08-01Introduction of Openstack-helm as installernikoskarandreas4-5/+24
This patch creates a new installer tree in xci that uses openstack-helm to deploy openstack on a kubernetes cluster. USAGE: Export INSTALLER_TYPE=osh, DEPLOY_SCENARIO=k8-calico-nofeature and XCI_FLAVOR=noha or mini and run xci-deploy.sh as in documentation. deploy-scenario:k8-calico-nofeature installer-type:osh Change-Id: I212f70eb51c2a38c798c11367d2ebb8bf5f4a1de Signed-off-by: nikoskarandreas <nick@intracom-telecom.com>
2019-03-25Bug fix: don't force rc=0 on first commandManuel Buil1-1/+1
When working with an interface that uses vlan, the vlan is created when executing the ifup command. As we previously execute the command: /sbin/ip addr flush dev {{ item }} it will not return code 0 because the interface does not exist yet. Consequently, the second part of the command (ifup) is never executed and the new network config is never triggered. This patch removes the requirement to get a rc=0 in the first command to run the second one. Note that /sbin/ip addr flush dev {{ item }} must be run before ifup when working with non-vlan interfaces that already have an ip, otherwise ifup fails in Ubuntu Change-Id: Ieac273a49b78104f24d4c1ba81c263b450a40a9f Signed-off-by: Manuel Buil <mbuil@suse.com>
2019-03-25Fix bug in the inventory generatorManuel Buil1-1/+7
The dns keys should only appear in case the idf provides a dns entry for the network. Otherwise, it should not exist at all. If it exists, even if the value is empty, ansible will transform it in a variable and "item.network.dns is defined" will return true: https://github.com/opnfv/releng-xci/blob/master/xci/playbooks/roles/bootstrap-host/templates/osa/debian.interface.j2#L35 A docstring is also added to explain what is the purpose of the class Signed-off-by: Manuel Buil <mbuil@suse.com> Change-Id: Ib8afa06cecb54f384083060073fa463c7f8d313f
2019-02-14Fix typoManuel Buil2-1/+1
The name of the file should have baremetal not barematal Change-Id: I15d70b69943e8ce3032c76d1cd7bc7272a6b8d56 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-11-08xci: bifrost: Respect IDF DNS details during node configurationMarkos Chandras4-5/+7
The IDF files contain DNS information so we should respect that when we configure the various XCI nodes. The DNS information is also a list instead of a string so treat it as such. Change-Id: I1c4d5eb600baaca35b2838dcafa7a75e59bf6783 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-11-07Merge "[baremetal] Provide networking for suse nodes"Manuel Buil2-2/+41
2018-11-06Merge "[Baremetal] Provide networking for Ubuntu nodes"Manuel Buil2-1/+111
2018-11-06Merge "Simplify the serial config"Manuel Buil1-10/+0
2018-11-06[Baremetal] Provide networking for Ubuntu nodesManuel Buil2-1/+111
When deploying baremetal, the traffic should be segmented using the different interfaces instead of through vlans. All the config is done based on idf and pdf information. When doing non-baremetal, opnfv and nodes get the same config. When doing baremetal, opnfv and nodes get a different network config Change-Id: I23aa576bc782c7c69d511a5558827110c37b558a Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-11-06[baremetal] Provide networking for suse nodesManuel Buil2-2/+41
When deploying baremetal, the traffic should be segmented using the different interfaces instead of through vlans. All the config is done based on idf and pdf information. When doing non-baremetal, opnfv and nodes get the same config. When doing baremetal, opnfv and nodes get a different network config Apart from that, if vlan_id is defined in the name, there is no need for VLAN_ID in the interface descriptor. This simplifies things Change-Id: Iddbb90af807b43e247e5ee11fe735df9e823d4bf Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-11-02Simplify the serial configManuel Buil1-10/+0
The current configuration only dumps the booting info into a file and the pty does not work (i.e. virsh console opnfv returns a failure because it cannot find a character device). After some investigations, it is apparently impossible to have both active: https://github.com/Mirantis/virtlet/issues/249 Therefore, we should remove the pty part of the xml. To connect to the VM in case of network problems, we can always use vnc. Apart from that, the console part is not necessary as libvirt will create that one for us Change-Id: I80a59163b4ba4e6bff34cb5378893201e93ddb87 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-11-01xci: Add missing update_cache statementsMarkos Chandras2-0/+3
When we install packages from the distro repos we need to make sure that the database is updated. This also takes SUSE's zypper pkg manager into consideration which can benefit from the same Ansible option. Change-Id: I7a2206bfc5827b9ccb448278759711c560bb4679 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-10-31Bug fix: Fetch vm names from idfManuel Buil4-8/+10
Currently we were taking the names of the nodes to be generated from the NODE_NAMES variable whereas ansible was fetching the names from the dynamic_inventory.py which uses idf. This resulted in problems: when doing ha, ansible was provisioning a compute as a controller and vicebersa. This patch forces create_nodes role to fetch the name from idf and thus align with the naming schema of ansible deploy-scenario:k8-calico-nofeature installer-type:kubespray Change-Id: Id1473727405701fd9ed0cb2f1394ee8676cec337 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-30Remove variable for driverManuel Buil2-2/+2
Right now, we only support ipmi hosts (either virtual or physical) and that is why our json is always describing the ipmi parameters. It does not make sense that we have a variable which would allow to change that Change-Id: I7b88aca5930a73d68342e3d4cf21f9e96286c4d7 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-30Bug fix: Wrong reference to vm_host_groupsManuel Buil1-1/+1
The variable should be host_group which is generated at line 32 and 35 Change-Id: I7add3af73198ec0638dee0c8f189a3a372a78ee8 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-18Merge "[Baremetal] Add baremetal support to create-nodes"Manuel Buil4-9/+91
2018-10-18Merge "Add ODL variables to env file"Manuel Buil3-0/+31
2018-10-18Add ODL variables to env fileManuel Buil3-0/+31
ODL testcases in functest require new variables: https://git.opnfv.org/functest/tree/functest/utils/env.py#n22 Otherwise the test fails because it cannot contact ODL To find those variables, we fetch the ml2_conf.ini file from the neutron container and then we parse the values. This is only run when the scenario has odl deploy-scenario:os-odl-sfc installer-type:osa Change-Id: If175bb7642e66e151b30e1ccd1b9040aa3481d8f Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-17[Baremetal] Add baremetal support to create-nodesManuel Buil4-9/+91
Information about baremetal servers is collected for ironic to do the provisioning. Two main things are done: 1 - baremetalhoststojson.yml fills the json config file fed to ironic so that it knows how to boot the blades. In the baremetal case, the create_vm.yml playbook will only create opnfv vm. The variable vms_to_create holds that information. The variable baremetal_nodes specifies the physical nodes (empty when non baremetal deployments) 2 - For PXE to work, we create a file called baremetalstaticips that has the mapping between mac address from servers and its ip. That file is moved into the dnsmasq config directory Change-Id: I0e788db1deb50769c183b71524a68ac0b925f8aa Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-15[baremetal] Add two interfaces to the opnfv vmManuel Buil7-16/+65
opnfv vm requires connectivity to two physical interfaces of the host. These interfaces are: 1 - admin, where DHCP requests will arrive from blades to do PXE boot 2 - mgmt, which connects to the mgmt of the blades to do the ansible configuration To achive this, it is required: 1 - Two libvirt networks that connect to two different linux bridges. The important physical interfaces are connected to them. The interfaces name is fetched from the idf 2 - Two templates representing the new libvirt networks (net-mgmt.xml.j2 and net-admin.xml.j2) 3 - Two interfaces defined in vm.xml.j2 Change-Id: I9037aa36802cfde44717b9394bab79b22d7dfaab Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-13Merge "Simplify external networking for os"Fatih Degirmenci2-19/+5
2018-10-12Simplify external networking for osManuel Buil2-19/+5
We were right now creating an overlay network with gateway in the opnfv vm. This makes floating ips work but if we need internet connection from vms, things get complicated and messy. As we are only using up to 7 ips from the 192.168.122.0/24, we can consider it the provider network for openstack and use ips starting from 192.168.122.100 as floating ips or ips for routing (doing SNAT as always) Change-Id: I09af663069ae95a9d265d98f1531778eb37134e2 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-12Fix idf for k8sManuel Buil1-0/+10
deploy-scenario:k8-calico-nofeature installer-type:kubespray Change-Id: If1c9f5908f39f9c09efb86e27a3f3883b4cd75b9 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-10-03[Baremetal] - Change roles and playbooks namesManuel Buil12-20/+15
A few playbooks and the create-vm-nodes role should change the name to reflect the new reality once the baremetal patches are merged. The playbooks that must change the name are: - xci-prepare-virtual.yml - xci-create-virtual.yml Change-Id: Iaed1f93561fa9d39c7916e0643a5445cdddf4f97 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-09-28[baremetal] idf for opnfv_vm and update the pdfManuel Buil5-17/+49
Physical hardware PODs provide a pdf and a idf to describe hardware and other information (e.g. what is the purpose for each interface). To reuse the same code for opnfv vm and also become consistent, we should also describe the opnfv vm with an idf and a pdf. This patch simplifies what needs to be done for baremetal, especially for this (future) patch: https://gerrit.opnfv.org/gerrit/#/c/60797/11 As we add an idf, we should update dynamic_inventory and how we create the opnfv vm. Obviously, he opnfv_vm.yml gets removed. Change-Id: I930728474631fc214e4a9adc8581e0c16d230176 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-09-19xci: Add ability to pass command line options to xci-deploy.shMarkos Chandras1-2/+2
We now support multiple PDF files so instead of introducing another env variable, we can simply pass this information as command line arguments to xci-deploy.sh. We can extend the script to allow more options line verbosity, scenario name, functest details etc so we can get rid of multiple env variables. Change-Id: I6c4a8d6e8b70e91746a659de923fee19019ed5e0 Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-09-18Switch to Functest HunterFatih Degirmenci2-2/+2
A new var FUNCTEST_VERSION is introduced to jobs to control the version to use for Functest. Change-Id: Ice7aa9f910db2353ce3d0bef198bef9fa3efe9fd Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-09-14xci: Drop custom XCI certificatesMarkos Chandras2-33/+1
OSM requires a CA even when we create a self-signed certificate. We don't actually need to do that since HAproxy and friends can create the whole chain for us, so we can finally get rid of this playbook. installer-type:osa deploy-scenario:os-nosdn-nofeature Change-Id: I14a3adbe3492cd6c562c5167c42dd45756e8e3dd Signed-off-by: Markos Chandras <mchandras@suse.de>
2018-09-05Fix the default scenario name for K8S Yardstick testingFatih Degirmenci1-1/+1
deploy-scenario:k8-nosdn-nofeature installer-type:kubespray Change-Id: Ieb531b66bd36bbf8c28f755a52a98f0b41ae5efa Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-09-05Merge "Enable yardstick k8s"Fatih Degirmenci1-5/+8
2018-09-04Enable yardstick k8sFatih Degirmenci1-5/+8
installer-type:kubespray deploy-scenario:k8-nosdn-nofeature Change-Id: If81aef632b064565fbf5c308909b44ff7409c33e Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-09-04Fix openrc OS_CACERT for yardstick docker containerFatih Degirmenci1-1/+1
The openrc should contain the path to OS_CACERT within container, not on opnfv vm. Change-Id: Ief4cb4ae647ff0f2cd4f3ebe8a2993bb71b0363f Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-09-04Create script to run yardstickFatih Degirmenci2-0/+50
The created script runs the yardstick in similar way the functest script does. installer-type:osa deploy-scenario:os-nosdn-nofeature Change-Id: Ic03445ec03fcfec8dc0d09f638e7cb1187fef883 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2018-09-04xci: osa: Restore self-signed XCI certificateMarkos Chandras1-0/+32
This reverts commit cc583f30f881ba956fb4f1402aa4dd1608b27da2. We still need to have control over the generated certificates so lets keep creating our own. deploy-scenario:os-nosdn-nofeature installer-type:osa Change-Id: I9e730bce2dba578ca0b561b168eaf1c2eca1282d
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