Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
This playbook should be executed in case we want to use the osa deployment
as platform for testing a scenario. The playbook currently includes a call
to the prepare-functest role which installs and sets-up everything to run
functest based tests
Change-Id: Ibb59825e64c5889f36fd3bfb38a4d23b67b11866
Signed-off-by: Manuel Buil <mbuil@suse.com>
|
|
Package managers get upset if multiple instances run in parallel since
the last one will fail to aquire some sort of DB locking and fail. As
such, lets fix that and only run one package manager process at any
time.
Change-Id: I4ab13f61eee861ef70cb4115403d0e239ec14308
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Sometimes we may want to remove the clean VM in case of failure. This
is mostly true for CI tests because developers do not normally have access
to the deployed VMs to debug problems since they can easily recreate the
same environment using this script. If they ever want direct access to
the slaves then that option can easily be turned off and retrigger the
job. In the meantime, this patch allows slaves to free resources when a
job fails instead of keeping the broken tests around.
Change-Id: I07d56661e45fc64e1ec0db7a359522e4ebd2891a
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
As we move towards making this script useful for developers, we
shouldn't destroy the existing ssh configuration file but rather
create a new one just for XCI. This also move the destruction of
previous instances sooner, even before building the OS image so we
can free resources as soon as possible. Finally, this also uses the
hostname to ssh to the new VM instead of its IP to ensure that
everything is setup up properly on the physical host.
Change-Id: I185befd8943fdb8ebcdb635aefb4d4b03473258b
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
OpenStack-Ansible can make use of all the user_*.yml files so scenarios
can make use of this facility to override the default ones we provide
for every flavor. As such, lets copy all the user_*.yml files to the
deployment host.
Change-Id: I5ddce48677f66a3ff3ec127f0fc0163f9f45b200
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
The latest bifrost code contains a fix when setting up DNS from a glean
configuration drive and also a few virtualenv improvements. This allows
us to get rid of all the workarounds we had in the past to switch
Ansible versions in the middle of the XCI deployment.
Change-Id: If49e290315ec96efdc07d04ff6624439c53aee19
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
If we leave the quotes, functest will search for a neutron network with the
name "ext-net" instead of ext-net and will fail
Change-Id: I4ef62fa6ea69573f5872b864402ddb8644ce432d
Signed-off-by: Manuel Buil <mbuil@suse.com>
|
|
Some of the files may be owned by root so we need to ensure that
everything is reset properly. Moreover, only clean the image files
for the one we are building.
Change-Id: I45b78db6715534187f19d9f513e8288fd076cb6b
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
|
|
* changes:
xci: scripts: start-new-vm.sh: Copy hidden files and directories
xci: scripts: vm: Add ability to use cached images for clean VM
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
|
|
Add a simple function to collect useful information when submitting
bug reports.
Change-Id: If24b76d2742edffa2269d39dcc998675d1388214
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
|
|
|
|
|
|
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>
|
|
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>
|
|
|
|
|
|
Change-Id: I5a8ff4c358ab9f1d548c9cc834faa2465ec63d41
Signed-off-by: Tapio Tallgren <tapio.tallgren@nokia.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
* 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
|
|
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>
|
|
In openSUSE, the chrony service is 'chronyd'.
Change-Id: Ifb946b0ba49783108a84dd5b998d9d45f5c9df51
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
* 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
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
|