Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
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>
|
|
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Update wording so it matches the upstream one and minimize the
noise on a-r-r updates.
Change-Id: I216c1ee1ac4f24ab2c5a382bfe5e2aacf324024a
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Update the dates in the pinned-versions file whenever we update
the SHAs.
Change-Id: I23ebd90a3fc688a7501fcb2d32217357f8c31657
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Add a second optional argument to update the bifrost SHA instead of
doing this bit manually.
Change-Id: I0fab8745ae08ad4f54a2a1f5b0b7a64fde4b8295
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
This also updates the second (pre_release) argument of
'update_ansible_role_requirements' from 'false' to 'true' so that
non-openstack roles can be updated as well.
Change-Id: Id424499f44c9b51c02d56e5d93580faeea50ad12
Signed-off-by: Markos Chandras <mchandras@suse.de>
|
|
Add new prototypes/xci/scripts/update-osa-version-files.sh which can be
used to update the XCI ansible-role-requirements.yml file as well as the
OSA pinned SHA string. This file is using the upstream
'sources-branch-updater-lib.sh' library from the openstack-ansible
repository.
Change-Id: I51b88c50cb2bffe0cf1b7aa054a5b237103fd92f
Signed-off-by: Markos Chandras <mchandras@suse.de>
|