summaryrefslogtreecommitdiffstats
path: root/xci
AgeCommit message (Collapse)AuthorFilesLines
2017-10-04Install docker-py when running xci as part of CIManuel Buil2-6/+12
docker-py package is required by the docker_container module in ansible: http://docs.ansible.com/ansible/latest/docker_container_module.html#docker-container Change-Id: Ib051ae09c84cfa973ef814852e78626499471d0f Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-10-04xci: file: ansible-role-requirements.yml: Bump SHA for lxc_hostsMarkos Chandras1-1/+1
Bump the SHA for lxc_hosts so we can start using lxc-2.X.X on SUSE hosts. Change-Id: Ia4830996a66b5694a9d22f8cd067ca12163939a3 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-04xci: scripts: start-new-vm.sh: Copy hidden files and directoriesMarkos Chandras1-1/+1
Fix the rsync command to also copy the hidden files and directories. Copying the .git directory allows us to quickly inspect any file changes when investigating bug reports and other problems. Change-Id: I4e6feeea77d5c3b23362a216206c5970b4900169 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-04xci: scripts: vm: Add ability to use cached images for clean VMMarkos Chandras2-38/+109
Make it possible to use the hosted dib images from artifacts.opnfv.org instead of building a new one on every CI run. This way, we can reduce the time it takes to start the actual XCI deployment. Change-Id: Idb1f5e3929cc14502c3f7383a61d2fbd0a6eefaf Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-03xci: scripts: start-new-vm.sh: Set JENKINS_HOME on local runsMarkos Chandras1-0/+5
If we are creating a new virtual machine for local testing, then we should set JENKINS_HOME since some playbooks use this variable to determine if the deployment happens on a CI or not. That script aims to simulate a CI deployment so it should have this variable set. Change-Id: I1165c8b2cd467ba92fcf6f6c178a69b07834894e Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-03xci: xci-deploy.sh: Extend regexp when collecting env variablesMarkos Chandras1-1/+1
Not all variables start with XCI, OPNFV or OPENSTACK so extend the regexp to look for more variables. Change-Id: If3693d65eec697f6c81c608da3be5799333c28d7 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-03xci: scripts: start-new-vm.sh: Do not break on idle SSH connectionsMarkos Chandras1-0/+2
Add ServerAliveInterval and ServerAliveCountMax directives in order to try and keep SSH connections alive. This aims to solve ssh timeouts like the following one on busy hypervisors: packet_write_wait: Connection to UNKNOWN port 0: Broken pipe Change-Id: I58029b41226098d6a44181434ad8653f72384e9d Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-03Merge "xci: xci-deploy: Add simple error handler"Markos Chandras1-1/+29
2017-10-03xci: xci-deploy: Add simple error handlerMarkos Chandras1-1/+29
Add a simple function to collect useful information when submitting bug reports. Change-Id: If24b76d2742edffa2269d39dcc998675d1388214 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-02Merge "xci: scripts: start-new-vm.sh: Use Docker to build OS images"Markos Chandras2-104/+85
2017-10-02Merge "Add the name for CentOS NFS server package"Markos Chandras1-0/+11
2017-10-02Merge "xci: xci-deploy.sh: Fix variable names for bifrost and OSA"Markos Chandras1-1/+1
2017-10-02xci: scripts: start-new-vm.sh: Use Docker to build OS imagesMarkos Chandras2-104/+85
Use a docker container to build the OS images so we can build images and start new virtual machines on all supported operating systems. This way all developers can now launch a virtual machine to quickly reproduce Jenkins results which should assist with debugging problems. Since the container runs with elevated privileges it's best to ensure that we have exclusive access to devices. Finally, we remove the build-dib-os.sh script which is now part of the container itself. The build image process now becomes more stable since it runs on clean evnironment all the time so the only external factor is the upstream distribution repositories. Change-Id: I6b443192419ee2546a23430f421b152766d16333 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-02xci: xci-deploy.sh: Fix variable names for bifrost and OSAMarkos Chandras1-1/+1
The correct variable name is OPENSTACK_{BIFROST,OSA}_DEV_PATH instead of OPNFV_{BIFROST,OSA}_DEV_PATH. JIRA: RELENG-312 Change-Id: I6c1349434d2ff8f82e1bccd1a758467c3ee0a61f Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-02Merge "Install python-openstackclient by default"Markos Chandras1-2/+0
2017-10-02Merge "xci: install-ansible.sh: Fix distribution detection"Markos Chandras1-8/+14
2017-10-02Add the name for CentOS NFS server packageTapio Tallgren1-0/+11
Change-Id: I5a8ff4c358ab9f1d548c9cc834faa2465ec63d41 Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
2017-10-02Install python-openstackclient by defaultFatih Degirmenci1-2/+0
It is important to have the client installed for the ease of the users so they can use the client for trying out their new deployment. Change-Id: I091c1e23ff320cb9fcdb2743998483a6bc1fcdad Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-10-02xci: scripts: start-new-vm.sh: Fix default test caseMarkos Chandras1-1/+2
Export XCI_FLAVOR to mini to minic the CI. Moreover, fix the script to not use relative paths. Change-Id: I16947c596b8bbff20371b6d345dffd215f76aecc Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-02xci: install-ansible.sh: Fix distribution detectionMarkos Chandras1-8/+14
Relying on the installed package manager to detect the distribution is not reliable since it's possible to install multiple package managers at the same time. As such, lets simply use the information in the os-release files. Change-Id: Ic170d2aee1398d5c82403c3469365822bf053de7 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-10-01xci: file: ansible-role-requirements: Bump SHA for rabbitmq-serverMarkos Chandras1-1/+1
The rabbitmq-server contains some fixes for SUSE so lets just bump this role instead of switching the entire OSA pin SHA so close to the Euphrates release. Change-Id: Ic034ed4bd9e290cadc5336d781b0e24036d5cd46 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-29Check if /etc/ssl/certs exists before creating itTapio Tallgren2-3/+10
In CentOS and Suse, /etc/ssl/certs is a symbolic link to /etc/ssl/pki/tls/certs. The Ansible module "file" will fail if it is asked to create a directory which is already a symbolic link. This patch will check if /etc/ssl/certs exists before trying to create it. The same check is done both on the host and the opnfv guest VM. Also, /etc/certs is only writable by root, so we need a "become: true" clause to be able to modify it in localhost (but not in opnvf VM). Change-Id: Iab6c3c162548f84ad6082829e4a7c2ab63d2cfa0 Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
2017-09-29Merge changes from topic 'fix-vm-on-jenkins'Markos Chandras5-24/+10
* changes: xci: xci-deploy.sh: Apply workaround for checking db cluster on SUSE xci: playbooks: synchronize-time: Fix service name for openSUSE xci: configure-opnfvhost: Do not run 'remove-folders' xci: scripts: build-dib-os.sh: Pin diskimage-builder xci: configure-opnfvhost: Do not check /etc/ssl/certs on SUSE
2017-09-28xci: xci-deploy.sh: Apply workaround for checking db cluster on SUSEMarkos Chandras1-0/+7
The mysql socket path is wrong on SUSE which leads to problems when trying to verify the status of the db cluster. Apply workaround until it's fixed upstream controller00_galera_container-56c89184 | FAILED | rc=1 >> ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory") Change-Id: I23192f4079526ae7820a1db023a097a651a09140 Link: https://review.openstack.org/508154 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-28xci: playbooks: synchronize-time: Fix service name for openSUSEMarkos Chandras1-1/+1
In openSUSE, the chrony service is 'chronyd'. Change-Id: Ifb946b0ba49783108a84dd5b998d9d45f5c9df51 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-28Ensure the pinned versions of components match to the pinned OSAFatih Degirmenci3-2/+240
The versions for the OpenStack services and global requirements need to be pinned alongside with the OSA SHA1 and the role versions to ensure we pinned everything. This change is required for osa-periodic jobs as well since that job will use sources-branch-updater.sh script and the script updates these files to ensure things are pinned correctly. modified: ansible-role-requirements.yml modified: global-requirement-pins.txt modified: playbooks/defaults/repo_packages/openstack_services.yml modified: releasenotes/notes/glance-init-config-overrides-d1c8c3dcc50c109a.yaml modified: releasenotes/notes/neutron-init-config-overrides-9d1d2b3b908705ed.yaml modified: releasenotes/notes/trove-init-config-overrides-a78ed428a32adef8.yaml By doing this change, we do not need to have any magic to capture updates to those files. Just updating the files we keep in xci/file folder will be sufficient and they get copied over during the playbook execution. Change-Id: Iae0db22574a0368e896132469a8587d1457ce177 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-09-28xci: configure-opnfvhost: Do not run 'remove-folders'Markos Chandras2-22/+0
The OPNFV node is brand new and it doesn't have any traces of XCI directories so there is no point in running the 'remove-folders' role. Change-Id: Ic9b9203cc14abda2dab406de6a5feeef6a1b7e2a Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-28xci: scripts: build-dib-os.sh: Pin diskimage-builderMarkos Chandras1-1/+1
diskimage-builder does very frequent releases and sometimes things break. There is no particular reason to always fetch the latest version so lets do it in a controlled way after proper testing. Change-Id: Ie9685a9a15fa7fefa1c5ecea49090ac9d92e63ff Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-28xci: configure-opnfvhost: Do not check /etc/ssl/certs on SUSEMarkos Chandras1-0/+1
This is similar to Ibc188b76f47c4f7d1c5aa452a21e838420d65e6a /etc/ssl/certs is a symlink so skip this task on SUSE. Change-Id: Iae38640501748dc3dd802ce795acfaeefd836c97 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-28Merge changes from topic 'fix-vm-on-jenkins'Markos Chandras3-17/+38
* changes: xci: scripts: start-new-vm.sh: Fix paths for default XCI test xci: Replace ANSIBLE_VERBOSITY with XCI_ANSIBLE_VERBOSITY xci: scripts: start-new-vm.sh: Print dib output when running on CI xci: scripts: start-new-vm.sh: Use 'unsafe' cache for the clean vm disk xci: xci-deploy.sh: Make sure all local Ansible installations are gone xci: scripts: start-new-vm.sh: Do not allow multiple build-dib-os processes
2017-09-27xci: scripts: start-new-vm.sh: Fix paths for default XCI testMarkos Chandras1-2/+2
The XCI test is located in ~/releng-xci inside the new VM so we need to look there for an existing one or for executing it after the default one has been created and copied to the remote host. Change-Id: Ieb195293da7832bcb5d29c8a28cc3477205f2e5e Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-27xci: Replace ANSIBLE_VERBOSITY with XCI_ANSIBLE_VERBOSITYMarkos Chandras2-12/+12
The ANSIBLE_VERBOSITY env variable is actually used internally by Ansible and exporting it actually makes Ansible super verbose even if the variable is empty. This feature is going away in the future so we introduce our own XCI_ANSIBLE_VERBOSITY variable which is simply passed to the command line to control verbosity in a proper and deterministic way. Change-Id: I8a32eeb1a86b4cb0a9872a51bbe9f9624d096e39 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-27xci: scripts: start-new-vm.sh: Print dib output when running on CIMarkos Chandras2-3/+7
Until we are able to fetch the dib images from external resources, we need to build them as part of the job. diskimage-builder can sometimes fail so we need to be able to see the log for debug purposes. Change-Id: Iab8bfba08daa7095cf76537f629c8e7bf6330b17 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-27xci: scripts: start-new-vm.sh: Use 'unsafe' cache for the clean vm diskMarkos Chandras1-1/+1
This is not a production virtual machine and we don't care if we lose data in case it's killed unexpectedly so we can just ignore the 'flush' commands from the guest. This will also improve the overall I/O in the VMs. Change-Id: Ib486a073f667e22f4a1e65a220ac553874f708cc Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-27xci: xci-deploy.sh: Make sure all local Ansible installations are goneMarkos Chandras1-1/+8
We need to ensure that all Ansible installations are gone before we install it again so we can ensure that a local or system wide installation will not take precedence over the one we try to install. Change-Id: I9daf66d661697baf63340ba4af1cd58fbd81f143 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-27xci: scripts: start-new-vm.sh: Do not allow multiple build-dib-os processesMarkos Chandras2-3/+13
apt-get is really unhappy when another instance is running and fails with the following error: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable) E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it? Change-Id: I2fe343fdab8438cb112cce0a4f81c7e3977c55f9 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-27Remove the quotes from the IPManuel Buil1-1/+1
Functest complains that it cannot connect to the installer because it does not understand the ip or hostname. The cause for this is the quotes in the template Change-Id: I75c30b7f1bbcee3f968692b4347ceb13ab1131d2 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-27Merge "xci: scripts: Fix script to run on Jenkins CI"Fatih Degirmenci2-15/+33
2017-09-27Create a role which prepares xci for functestManuel Buil5-3/+65
Functest requires xci deployment to have: - A public neutron network - A subnet attached to the public neutron network - The gateway from the subnet attached to one interface The network and subnet creation are done via a script instead of using Ansible OpenStack module in order to get things working asap. These three tasks are implemented in a role This patch depends on a pending patch: https://gerrit.opnfv.org/gerrit/#/c/39517/2 Change-Id: I0635227153087fd9e25b76f0859f82bf48bfb930 Signed-off-by: Manuel Buil <mbuil@suse.com> Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-09-26xci: scripts: Fix script to run on Jenkins CIMarkos Chandras2-15/+33
A couple of tweaks are necessary to get it working with Jenkins - Jenkins jobs could contain the 'xci' string so make the regexp more accurate. - Rename VMs to use a more accurate name - Fix ssh public key location - Create a fresh /etc/hosts since distro may not have one. - Set hostname on VM Change-Id: I332a424bc8b2de98d7b326c192996b7b12c79dd7 Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-25xci: file: Update package metadata before installing packagesMarkos Chandras1-0/+3
We may have old or no metadata for packages at all so package installations may fail. As such, lets sync with upstream mirrors before we try to install any packages. Change-Id: I15f73e46d4f0cae2c50d23a92e0f4da83821039e Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-25Merge "xci: scripts: Add script to use clean virtual machines for testing"Markos Chandras4-0/+281
2017-09-25Merge "bugfix: Correct the role in aio configure-opnfvhost.yml"Markos Chandras1-0/+1
2017-09-25xci: scripts: Add script to use clean virtual machines for testingMarkos Chandras4-0/+281
These scripts will prepare a clean OS image based on diskimage-builder and launch a new VM with it. The purpose of that is to use this virtual machine as a 'host' to run XCI on it. This way we can ensure that all tests are being executed on the same clean environment which is ideal for reproducing and debugging purposes. We also commit the ssh keypair so we can build it in the image and use it to control the virtual machine without user interaction. Needless to say that this keypair MUST NOT be used for anything else apart from the dib build process. Change-Id: Idec0fc06c82435adc1a4d569b8e578616998de5f Signed-off-by: Markos Chandras <mchandras@suse.de>
2017-09-25bugfix: Correct the role in aio configure-opnfvhost.ymlFatih Degirmenci1-0/+1
Change-Id: Ie70800f6cbc07c505739a870be304d9153941dec Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
2017-09-23Log Horizon URL, admin username and password on console.Taseer Ahmed1-0/+21
Added so that user need not traverse files for these parameters JIRA: RELENG-221 Change-Id: I1c445ea34ef9494d5bef3a6cba0c8d40bacba29f Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
2017-09-22Merge "Install docker and shade on opnfv host"Fatih Degirmenci4-0/+15
2017-09-22Merge "Reduce no of cpus allocated per node"Markos Chandras3-3/+3
2017-09-22Merge changes from topic 'split-variable-creation-to-task'Markos Chandras2-0/+3
* changes: xci: configure-localhost: Do not check /etc/ssl/certs on SUSE xci: xci-deploy.sh: Ensure env_reset is not present
2017-09-22Merge changes from topic 'split-variable-creation-to-task'Markos Chandras2-29/+2
* changes: xci: Move the destroy-env.sh script to xci-deploy.sh xci: provision-vm-nodes.yml: Merge plays