Age | Commit message (Collapse) | Author | Files | Lines |
|
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 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>
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
|
|
|
|
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>
|
|
Change-Id: Ie70800f6cbc07c505739a870be304d9153941dec
Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
|
|
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>
|
|
|
|
|
|
* changes:
xci: configure-localhost: Do not check /etc/ssl/certs on SUSE
xci: xci-deploy.sh: Ensure env_reset is not present
|
|
* changes:
xci: Move the destroy-env.sh script to xci-deploy.sh
xci: provision-vm-nodes.yml: Merge plays
|
|
|
|
* changes:
xci: playbooks: Include distribution var files dynamically
bifrost: scripts: Look for virtualbmc on bifrost virtualenv
xci: Gain elevated privileges to remove the XCI_DEVEL_ROOT directory
xci: Move VM provisioning to xci-deploy.sh
|
|
Change-Id: I62c167621e2b28a57b1ef7647d105ea73dbb0291
Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
|
|
Docker is needed for running tests against the deployment.
Shade is needed for managing OpenStack via Ansible.
This change adds tasks to install docker and shade on opnfv
host if it is run as part of CI.
Users should be free to install these if they want so it is
not installed for them by default.
Change-Id: Idfd0f02312cc5e1b0180ed2408755a8c730b987b
Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
|
|
The IP in used_ip will not be used later
otherwise internal_vip may be assigned to lxc container,
which will cause issue during deploying
Change-Id: I9834dfa9b218b4dd23e20c8d57e05bb806dafa7b
Signed-off-by: wutianwei <wutianwei1@huawei.com>
|
|
/etc/ssl/certs is a symlink so skip this task on SUSE.
Change-Id: Ibc188b76f47c4f7d1c5aa452a21e838420d65e6a
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
There is no particular need to execute the bash script using Ansible.
Lets move it to the xci-deploy.sh script instead.
Change-Id: I0fa91195d9c3647bb4766d76c28892e2f13e1e98
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
This is a continuation of I0a49e2ed8d811bb40a99612462752f8691133e0f
We need to convert these two plays to include the variable files
dynamically similar to the rest of the playbook.
Change-Id: I43203651ccafb03e015bfe4d1b075a7ee96b5adc
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
We are making use of 'sudo -E' to preserve environment variables
when using 'sudo' so we need to make sure that we don't use env_reset
in the configuration file.
Change-Id: I45a818da6c5c090ece67898e54f2dc4ba48cb452
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
There is no need to have multiple plays executed on a single host group
so merge them all together into a single one.
Change-Id: Ie190cdecfbdcba48f75b21aa5930e1d9b8392aa0
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
This is similar to 0927671781f6875926dac2e5f4bb10816e67070c. We need
elevated privileges to remove the XCI_DEVEL_ROOT directory so move this
role to its own play.
Change-Id: Ice4f030eeb28cd24a6166f11a5a792ab3df8880c
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
The bifrost-provision.sh script will provision machines using Ansible
playbooks. If we run this script in an Ansible playbook, that means that
we will run Ansible with Ansible and this can only lead to further
confusion when debugging issues. As such, since we already have a script
to provision machines, lets use it directly from the xci-deploy.sh
script. This also reverts 3f04e1fd72b14420788af64b14c35a5f74727f82 which
added virtualenv support in bifrost since that causes more problems than
it fixes for the time being.
Change-Id: Id82b7c06a2af28b66f64f1966227888227ec276f
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Since I00d77e1fc62cccda7920af3469af9d44247780f4 the entire XCI_DEVEL_ROOT
is being removed. However, some of the files are owned by root so we
need elevated privileges to remove these files and directories
Change-Id: Ie10018ded198b922077e38fa5776fca098418192
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
|
|
It is important to start with a clean XCI_DEVEL_ROOT in order to
ensure the leftovers from the previous deployment doesn't result
in successful or failed deployments due to not having it in sync
with the latest updates.
Change-Id: I00d77e1fc62cccda7920af3469af9d44247780f4
Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
|
|
The roles should pull all the packages they need so we need to install
the 'chrony' package everywhere and also drop the Xenial reference since
there is nothing Ubuntu specific here.
Change-Id: I51fb24573c0e884f8a96868e304b23140cc23b41
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
We need to explicitly install the nfs server package instead of bundling
it to the dib image since not every node needs it.
Change-Id: I73f59f4ed582359df80ea08712b433537c087aea
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Add ability to restart the NFS server on SUSE hosts.
Change-Id: Id5f0edb399151c62302b2e36bb9451ed35501d3f
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Change-Id: I42c6f5f07ac87b5599758947fabe5fce36d44a2e
Signed-off-by: Markos Chandras <mchandras@suse.de>
|