]> git.apps.os.sepia.ceph.com Git - teuthology.git/log
teuthology.git
5 years agoopenstack: fail immediately if VM creation fails
Nathan Cutler [Tue, 23 Oct 2018 11:08:34 +0000 (13:08 +0200)]
openstack: fail immediately if VM creation fails

Fixes: https://github.com/SUSE/teuthology/issues/159
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Conflicts:
teuthology/openstack/__init__.py

5 years agoopenstack: retry if volume create+attach operation fails
Kyr Shatskyy [Thu, 18 Oct 2018 00:41:41 +0000 (02:41 +0200)]
openstack: retry if volume create+attach operation fails

Once in awhile, a created volume fails to become available within
a reasonable period of time. When this happens, the entire test job
fails with the following error:

2018-10-02T06:52:44.106 ERROR:teuthology.provision.openstack:'volume
target192168000058-2' reached maximum tries (100) after waiting for 200
seconds

With this commit, we catch that exception and retry with a new volume.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
Signed-off-by: Kyrylo Shatskyy <kyrylo.shatskyy@suse.com>
Conflicts:
teuthology/provision/openstack.py

5 years agoprovision/openstack: put "add volume" in a retry loop
Nathan Cutler [Thu, 23 Mar 2017 13:47:29 +0000 (14:47 +0100)]
provision/openstack: put "add volume" in a retry loop

Attempted workaround for this issue:

2017-03-23T12:33:20.684 DEBUG:teuthology.misc::sh: openstack --quiet volume show  -f json target217182140122-1
2017-03-23T12:34:22.140 DEBUG:teuthology.misc:{
2017-03-23T12:34:22.146 DEBUG:teuthology.misc:"size": 10,
2017-03-23T12:34:22.146 DEBUG:teuthology.misc:"status": "available",
2017-03-23T12:34:22.146 DEBUG:teuthology.misc:"properties": "ownedby='217.182.143.170'",
2017-03-23T12:34:22.146 DEBUG:teuthology.misc:"user_id": "122b249e82994f5aa8ec6a31b7891df5",
2017-03-23T12:34:22.146 DEBUG:teuthology.misc:"description": null,
2017-03-23T12:34:22.146 DEBUG:teuthology.misc:"availability_zone": "nova",
2017-03-23T12:34:22.146 DEBUG:teuthology.misc:"bootable": "false",
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"encrypted": false,
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"created_at": "2017-03-23T12:33:17.000000",
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"multiattach": false,
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"os-volume-replication:driver_data": null,
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"name": "target217182140122-1",
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"snapshot_id": null,
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"consistencygroup_id": null,
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"replication_status": "disabled",
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"os-vol-tenant-attr:tenant_id": "43583fef7b734bb1b6fb5f86d48abe5e",
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"source_volid": null,
2017-03-23T12:34:22.147 DEBUG:teuthology.misc:"os-volume-replication:extended_status": null,
2017-03-23T12:34:22.148 DEBUG:teuthology.misc:"type": "classic",
2017-03-23T12:34:22.148 DEBUG:teuthology.misc:"id": "e6949180-87fe-4f4c-b0a0-e3ea35bdb2e2",
2017-03-23T12:34:22.148 DEBUG:teuthology.misc:"attachments": []
2017-03-23T12:34:25.036 DEBUG:teuthology.misc:}
2017-03-23T12:34:25.042 DEBUG:teuthology.misc::sh: openstack server add volume target217182140122 target217182140122-1
2017-03-23T12:35:30.536 DEBUG:teuthology.misc:No volume with a name or ID of 'target217182140122-1' exists.
2017-03-23T12:35:34.512 ERROR:teuthology.provision.openstack:Command 'openstack server add volume target217182140122 target217182140122-1' returned non-zero exit status 1

Fixes: http://tracker.ceph.com/issues/17659
Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agotests: skip openstack tests if OS_AUTH_URL not set
Nathan Cutler [Tue, 7 Feb 2017 15:09:14 +0000 (16:09 +0100)]
tests: skip openstack tests if OS_AUTH_URL not set

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: hide OS_ variables dumping in logs
Kyr Shatskyy [Thu, 31 Jan 2019 15:34:10 +0000 (16:34 +0100)]
openstack: hide OS_ variables dumping in logs

Hide OS_ variables in the log, so it can't be easily
read by human and steal secrets.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoopenstack: Support GitHub PR merge branches
Kyrylo Shatskyy [Thu, 6 Dec 2018 19:42:54 +0000 (20:42 +0100)]
openstack: Support GitHub PR merge branches

Add support for github pr merge branches, like 'origin/pr/*/merge',
so it can be used to setup teuthology server using teuthology-openstack
command line tool with --teuthology-branch argument.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoopenstack: add get_instance method
Kyr Shatskyy [Fri, 2 Nov 2018 13:47:18 +0000 (14:47 +0100)]
openstack: add get_instance method

Refactor teuthology-openstack so it get openstack instance once.
Allow to run suite without prior setup() invocation.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.de>
5 years agoopenstack: fix pulpito and paddles status in init script
Kyr Shatskyy [Mon, 22 Oct 2018 19:58:16 +0000 (21:58 +0200)]
openstack: fix pulpito and paddles status in init script

After deployment teuthology cluster on openstack, teuthology
service status-paddles and status-pulpito commands report
'dead', however paddles and pulpito are running.
This fix addresses this issue.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.de>
5 years agoteuthology-openstack: add banner after cluster creation
Kyr Shatskyy [Sat, 20 Oct 2018 03:18:34 +0000 (05:18 +0200)]
teuthology-openstack: add banner after cluster creation

When creating a teuthology openstack cluster and not
requesting any suite suite run the teuthology-openstack
quits silently not giving information where the cluster
is created and how its services can be reached.
This fix addresses the issue above.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.de>
5 years agoteuthology-openstack: add nameserver option
Kyr Shatskyy [Tue, 16 Oct 2018 10:39:19 +0000 (12:39 +0200)]
teuthology-openstack: add nameserver option

Add --nameserver option to teuthology-openstack cli tool so
teuthology cluster can be deployed and configured to use
customly provided dns

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.de>
5 years agobuildpackages: use makecheck image to instantiate build VM
Nathan Cutler [Wed, 25 Apr 2018 19:39:34 +0000 (21:39 +0200)]
buildpackages: use makecheck image to instantiate build VM

The teuthology images no longer have the right repos for building Ceph.
Use the makecheck images instead.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoFix ovh paddles populate
Kyr Shatskyy [Fri, 5 Oct 2018 12:22:17 +0000 (14:22 +0200)]
Fix ovh paddles populate

Unfortunate typo instroduced in sha1 e491969d4b5b9dca710d1ce89f0cde918bbee1b4
which fixed ECP nodes creation and broke OVH nodes creation.

5 years agoFix cannot populate paddles
Kyr Shatskyy [Thu, 13 Sep 2018 12:03:21 +0000 (14:03 +0200)]
Fix cannot populate paddles

When trying to deploy teuthology on openstack with several networks
and non unique subnet addresses setup-openstack script fails to add
nodes to paddles databases.

This patch removes duplicates while getting default_subnets.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoconnection: key_filename is a string, not an array
Loic Dachary [Tue, 7 Feb 2017 14:23:55 +0000 (15:23 +0100)]
connection: key_filename is a string, not an array

Signed-off-by: Loic Dachary <ldachary@redhat.com>
5 years agoAdd ECP support
Kyr Shatskyy [Wed, 21 Mar 2018 23:16:27 +0000 (00:16 +0100)]
Add ECP support

Isolated __flavor and __flavor_range from openstack invocation.
Flavor and Network parameters can be taken from teuthology config
under 'openstack' records.
Added filters for new OVH flavors.

 Conflicts:
teuthology/openstack/__init__.py

5 years agoopenstack: Support Leap 42.3
Nathan Cutler [Wed, 31 May 2017 12:49:16 +0000 (14:49 +0200)]
openstack: Support Leap 42.3

Without Salt for now, due to https://bugzilla.opensuse.org/show_bug.cgi?id=1042379

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: cloudlab support (part 2)
Loic Dachary [Sun, 3 Apr 2016 16:40:24 +0000 (18:40 +0200)]
openstack: cloudlab support (part 2)

The ctl hostname was replaced by a fqdn that always ends with cloudlab.us

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: do not use cached tokens for neutron
Loic Dachary [Mon, 22 Aug 2016 16:20:05 +0000 (18:20 +0200)]
openstack: do not use cached tokens for neutron

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: teuthology must use aarch64, not arm64
Loic Dachary [Tue, 5 Apr 2016 08:45:37 +0000 (10:45 +0200)]
openstack: teuthology must use aarch64, not arm64

teuthology / gitbuilder / ansible_architecture arch is

   dpkg-architecture --query DEB_HOST_GNU_CPU (x86_64 and aarch64)

deb package Architectures: (conf/distributions) is

   dpkg-architecture --query DEB_HOST_GNU_ARCH (amd64 and arm64)

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: move net() to OpenStack
Loic Dachary [Mon, 28 Mar 2016 17:49:02 +0000 (19:49 +0200)]
openstack: move net() to OpenStack

It is not only needed when provisionning the teuthology instance.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: rework floating IP handling
Loic Dachary [Mon, 28 Mar 2016 17:35:34 +0000 (19:35 +0200)]
openstack: rework floating IP handling

Signed-off-by: Loic Dachary <loic@dachary.org>
Conflicts:
teuthology/openstack/__init__.py

5 years agoopenstack: there may be more than one IPv4 subnet
Loic Dachary [Sun, 27 Mar 2016 11:50:01 +0000 (13:50 +0200)]
openstack: there may be more than one IPv4 subnet

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: increase teuthology flavors
Loic Dachary [Mon, 10 Apr 2017 07:29:28 +0000 (09:29 +0200)]
openstack: increase teuthology flavors

Ansible has higher memory requirements these days. Keep the default
flavor to the minimum because it is used during tests.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoAdd multi-user support for openstack
Kyr Shatskyy [Thu, 11 Jan 2018 12:26:52 +0000 (14:26 +0200)]
Add multi-user support for openstack

Conflicts:
requirements.txt
teuthology/misc.py
teuthology/openstack/__init__.py
teuthology/provision/openstack.py

5 years agobuildpackages: use createrepo_c package on newer SUSEs
Nathan Cutler [Tue, 6 Mar 2018 06:25:35 +0000 (07:25 +0100)]
buildpackages: use createrepo_c package on newer SUSEs

The old createrepo package brings in Python 2. As of Code 15, that's no longer
going to work.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: run zypper refresh in try/wait loop
Nathan Cutler [Mon, 5 Mar 2018 00:22:03 +0000 (01:22 +0100)]
buildpackages: run zypper refresh in try/wait loop

Avoid silly things like:

+ sudo zypper --non-interactive --no-gpg-checks refresh
System management is locked by the application with pid 2560 (zypper).

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: fix dates in spec file changelog
Nathan Cutler [Sat, 3 Mar 2018 07:05:56 +0000 (08:05 +0100)]
buildpackages: fix dates in spec file changelog

Eliminates the following warnings:

2018-03-03T06:56:01.948 DEBUG:teuthology.misc:warning: bogus date in %changelog: Tue Mar 10 2013 Gary Lowell <glowell@inktank.com> - 1-0
2018-03-03T06:56:01.948 DEBUG:teuthology.misc:warning: bogus date in %changelog: Tue Aug 27 2012 Gary Lowell <glowell@inktank.com> - 1-0

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: drop suse-specific code in ceph-release.spec
Nathan Cutler [Sat, 3 Mar 2018 07:05:19 +0000 (08:05 +0100)]
buildpackages: drop suse-specific code in ceph-release.spec

The ceph-release RPM is not used on SUSE.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: ensure ceph.spec has correct Version and Release
Nathan Cutler [Fri, 2 Mar 2018 23:19:19 +0000 (00:19 +0100)]
buildpackages: ensure ceph.spec has correct Version and Release

In the buildpackages task we don't care what the spec file thinks the Version
and Release should be. We force it to be what we need.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: ensure spec file has correct tarball name
Nathan Cutler [Fri, 2 Mar 2018 21:01:17 +0000 (22:01 +0100)]
buildpackages: ensure spec file has correct tarball name

We are using this script to build various versions of ceph.spec.in, which do
various things for different build environments. Ignore whatever the spec file
is trying to do with the tarball name and force it to the name of the tarball
at hand.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: make-rpm.sh: tweak rpmbuild options
Nathan Cutler [Thu, 1 Mar 2018 21:08:03 +0000 (22:08 +0100)]
buildpackages: make-rpm.sh: tweak rpmbuild options

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: make-rpm.sh: update ceph.spec sed
Nathan Cutler [Thu, 1 Mar 2018 17:32:01 +0000 (18:32 +0100)]
buildpackages: make-rpm.sh: update ceph.spec sed

Drop OBS-specific release suffix

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: install createrepo package carefully
Nathan Cutler [Thu, 29 Jun 2017 20:55:39 +0000 (22:55 +0200)]
buildpackages: install createrepo package carefully

Address error message "Source '...' does not contain the desired medium" when
repos get stale.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: zypper refresh before first zypper install
Nathan Cutler [Thu, 25 May 2017 17:31:19 +0000 (19:31 +0200)]
buildpackages: zypper refresh before first zypper install

Refresh is needed to avoid errors like "Media source 'https://...' does not
contain the desired medium" when we use live repositories.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: prefer vps-ssd-* flavors in OVH
Nathan Cutler [Fri, 12 May 2017 11:48:05 +0000 (13:48 +0200)]
openstack: prefer vps-ssd-* flavors in OVH

OVH has effectively two price tiers for VM flavors, which could be given the
unofficial descriptive names "El Cheapo" and "Regular".

Under the flavor scheme we are currently using the "El Cheapo" flavors are
those that match the regular expression '^vps-ssd-' (just three flavors); all
others are "Regular".

Prefer the "El Cheapo" flavors over "Regular" flavors when the selection
criteria yields matches in both OVH price tiers.

For OpenStack providers other than OVH, the behavior should not change.

In addition to the above, this patch removes duplication of the regular
expression used for selecting OpenStack flavors. While it's convenient not to
have to change the regular expression in three or more places, this comes with
a disadvantage: the patch removes "flavor-select-regexp" from .teuthology.yaml,
so it is no longer possible to adjust the flavor-selection heuristics by
editing the configuration file. Such adjustment _must_ be done by modifying
__flavor_wrapper(). This is not really a loss, though, because - as the OVH
case demonstrates - a single regular expression match may not be enough to
select the least expensive flavor matching the selection criteria.

Fixes: https://github.com/SUSE/teuthology/issues/75
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Conflicts:
teuthology/openstack/__init__.py

5 years agoopenstack: install, enable and start fail2ban on teuthology VM
Jan Fajerski [Mon, 13 Mar 2017 11:10:31 +0000 (12:10 +0100)]
openstack: install, enable and start fail2ban on teuthology VM

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
5 years agosetup-openstack.sh: install salt-master on the teuthology VM
Nathan Cutler [Mon, 13 Feb 2017 12:45:29 +0000 (13:45 +0100)]
setup-openstack.sh: install salt-master on the teuthology VM

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agosetup-openstack.sh: edit /etc/init.d/dnsmasq after installing dnsmasq
Nathan Cutler [Thu, 9 Feb 2017 13:31:59 +0000 (14:31 +0100)]
setup-openstack.sh: edit /etc/init.d/dnsmasq after installing dnsmasq

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agodnsmasq must respond to all requests
Loic Dachary [Thu, 9 Feb 2017 10:21:07 +0000 (11:21 +0100)]
dnsmasq must respond to all requests

It is a security issue that should be addressed when running long lived
clusters. But teuthology-openstack is meant to not last more than a few
days.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
5 years agoopenstack: nginx root moved to /var/www/html
Loic Dachary [Wed, 8 Feb 2017 23:02:26 +0000 (00:02 +0100)]
openstack: nginx root moved to /var/www/html

In ubuntu 16.04

Signed-off-by: Loic Dachary <ldachary@redhat.com>
5 years agoopenstack: buildpackages is gitbuilder compatible
Loic Dachary [Wed, 8 Feb 2017 14:02:15 +0000 (15:02 +0100)]
openstack: buildpackages is gitbuilder compatible

Do not use shaman (it is the new default).

Signed-off-by: Loic Dachary <ldachary@redhat.com>
5 years agoopenstack: the device may be eth0 or ens3
Loic Dachary [Tue, 7 Feb 2017 15:34:34 +0000 (16:34 +0100)]
openstack: the device may be eth0 or ens3

Signed-off-by: Loic Dachary <ldachary@redhat.com>
5 years agosetup_openstack.sh: fix test for non-empty $default_subnets
Jan Fajerski [Fri, 3 Feb 2017 10:59:42 +0000 (11:59 +0100)]
setup_openstack.sh: fix test for non-empty $default_subnets

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
5 years agoopenstack: cloudlab support (part 5)
Loic Dachary [Thu, 7 Apr 2016 15:45:17 +0000 (17:45 +0200)]
openstack: cloudlab support (part 5)

There is no need for host-record=ctl etc. the profile has been modified
and OS_AUTH_URL is a fqdn.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: cloudlab support (part 4)
Loic Dachary [Wed, 6 Apr 2016 17:56:30 +0000 (19:56 +0200)]
openstack: cloudlab support (part 4)

Hardcode network and subnet. There is no way to chose the relevant one.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: cloudlab support (part 3)
Loic Dachary [Mon, 4 Apr 2016 18:27:49 +0000 (20:27 +0200)]
openstack: cloudlab support (part 3)

The ctl hostname was replaced by a fqdn that always ends with cloudlab.us

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: apt-get install --force-yes
Loic Dachary [Mon, 28 Mar 2016 16:38:19 +0000 (18:38 +0200)]
openstack: apt-get install --force-yes

So that the setup is not disturbed by temporary signature breakage which
sometime happens on the Ubuntu repo.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: clear nginx root
Loic Dachary [Sat, 12 Mar 2016 09:39:12 +0000 (16:39 +0700)]
openstack: clear nginx root

So it can be explored by a human being instead of being hidden by an
empty index.html.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoteuthology-openstack: do not deploy cluster by default
Kyr Shatskyy [Tue, 16 Oct 2018 11:09:38 +0000 (13:09 +0200)]
teuthology-openstack: do not deploy cluster by default

We do not want to deploy cluster by mistake, so it is
reasonable to have dedicated option for cluster deployment,
like --setup.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.de>
Conflicts:
teuthology/openstack/__init__.py

5 years agoopenstack: allow setting of teuthology VM params from command line
Nathan Cutler [Tue, 11 Apr 2017 08:59:11 +0000 (10:59 +0200)]
openstack: allow setting of teuthology VM params from command line

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: add new OVH flavors to filter list
Nathan Cutler [Tue, 11 Apr 2017 09:14:32 +0000 (11:14 +0200)]
openstack: add new OVH flavors to filter list

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: user-data: add filesystems:ceph:mimic OBS repo
Nathan Cutler [Sun, 4 Mar 2018 23:46:25 +0000 (00:46 +0100)]
openstack: user-data: add filesystems:ceph:mimic OBS repo

Temporary measure to make it possible for DeepSea to deploy Ceph
in openSUSE Leap 15.0

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: user-data: remove system librados2 librbd1
Nathan Cutler [Sun, 4 Mar 2018 10:58:58 +0000 (11:58 +0100)]
openstack: user-data: remove system librados2 librbd1

The pre-installed system librados2 and librbd1 packages may block us
from installing packages-under-test.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: user-data: tweak packages on openSUSE Leap 15.0
Nathan Cutler [Sat, 3 Mar 2018 22:22:29 +0000 (23:22 +0100)]
openstack: user-data: tweak packages on openSUSE Leap 15.0

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: use install-deps.sh from local clone if available
Nathan Cutler [Mon, 13 Mar 2017 16:21:52 +0000 (17:21 +0100)]
buildpackages: use install-deps.sh from local clone if available

Fixes: https://github.com/SUSE/teuthology/issues/53
Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack/buildpackages: tweaked opensuse 42.2 user-data
Nathan Cutler [Mon, 13 Mar 2017 15:16:50 +0000 (16:16 +0100)]
openstack/buildpackages: tweaked opensuse 42.2 user-data

Fixes: https://github.com/SUSE/teuthology/issues/54
Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: add opensuse-42.2 userdata
Nathan Cutler [Wed, 8 Feb 2017 23:08:06 +0000 (00:08 +0100)]
openstack: add opensuse-42.2 userdata

Symlink to 42.1

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: conditionally fetch tags from ceph/ceph.git
Nathan Cutler [Sun, 19 Feb 2017 22:13:44 +0000 (23:13 +0100)]
buildpackages: conditionally fetch tags from ceph/ceph.git

A new parameter, canonical_tags, is added to .teuthology.yaml defaulting to
true.

A new command-line option "--no-canonical-tags" is added to teuthology-openstack
(when given, canonical_tags is set to false in .teuthology.yaml; otherwise it
defaults to true).

The buildpackages task is modified to take the appropriate action based on the
value of canonical_tags taken from .teuthology.yaml. Also, an info message is
displayed reminding the user that the command-line parameter only takes place
when the teuthology VM is created. Like --simultaneous-jobs, the parameter has
no effect in subsequent runs against an existing teuthology environment.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
Conflicts:
scripts/openstack.py

5 years agobuildpackages: use sle instead of sles for SUSE Linux Enterprise
Nathan Cutler [Sun, 12 Feb 2017 12:04:58 +0000 (13:04 +0100)]
buildpackages: use sle instead of sles for SUSE Linux Enterprise

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agotasks: import buildpackages.py from ceph/ceph master
Nathan Cutler [Wed, 8 Feb 2017 20:22:09 +0000 (21:22 +0100)]
tasks: import buildpackages.py from ceph/ceph master

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: add centos-7.3-user-data.txt
Nathan Cutler [Sat, 18 Feb 2017 11:12:20 +0000 (12:12 +0100)]
buildpackages: add centos-7.3-user-data.txt

Tests are failing with:

2017-02-18T11:07:34.742 DEBUG:teuthology.misc:timeout 30m openstack server create --image 'teuthology-centos-7.3-x86_64'  --flavor hg-60-ssd --key-name teuthology --security-group teuthology --property ownedby=149.202.169.26 --user-data centos-7.3-user-data.txt --wait ceph-rpm-centos7-x86_64-basic-f65754e312f11823c5bb7e9fe24655f3fd68bcd2
2017-02-18T11:07:37.227 DEBUG:teuthology.misc:Can't open 'centos-7.3-user-data.txt': [Errno 2] No such file or directory: 'centos-7.3-user-data.txt'

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: fix make-rpm.sh for kraken + SUSE
Nathan Cutler [Sun, 12 Feb 2017 21:14:32 +0000 (22:14 +0100)]
buildpackages: fix make-rpm.sh for kraken + SUSE

tl;dr:

SUSE builds in the OBS do not use the make-dist script to generate the
tarball.  This commit overrides a SUSE downstream patch that was breaking
make-dist.

Full analysis:

make-rpm.sh breaks for kraken when run on SLE-12-SP2:

+ rpmbuild -ba --define '_unpackaged_files_terminate_build 0' --define '_topdir /tmp/release/sles/WORKDIR' ceph.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.F2hJfx
+ umask 022
+ cd /tmp/release/sles/WORKDIR/BUILD
+ cd /tmp/release/sles/WORKDIR/BUILD
+ rm -rf ceph-11.1.0
+ /usr/bin/bzip2 -dc /tmp/release/sles/WORKDIR/SOURCES/ceph-11.1.0-7423-g8f37fcc.tar.bz2
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd ceph-11.1.0
/var/tmp/rpm-tmp.F2hJfx: line 35: cd: ceph-11.1.0: No such file or directory
error: Bad exit status from /var/tmp/rpm-tmp.F2hJfx (%prep)

The buildpackages task uses "make-dist" to generate the tarball. In order for
the tarball so generated to be buildable by rpmbuild, the spec file must
contain the following lines:

Version:        @VERSION@
Release:        @RPM_RELEASE@%{?dist}
...
%prep
%autosetup -p1 -n @TARBALL_BASENAME@

SUSE builds in OBS/IBS use a modified spec file and uses a different mechanism
to generate the tarball. (This worked well up until jewel but for kraken and
beyond we may need to reconsider.) In the SUSE downstream version of the spec
file, the lines look like this:

Version:        @VERSION@
Release:        @RPM_RELEASE@%{?dist}
...
%prep
%if 0%{?rhel}
%autosetup -p1 -n @TARBALL_BASENAME@
%endif
%if ! 0%{?rhel}
%autosetup -p1
%endif

The absence of "-n @TARBALL_BASENAME@" causes the tarball basename to be
"ceph-$VERSION" (e.g. ceph-12.0.0) instead of the full
"ceph-$VERSION-$RPM_RELEASE" (e.g. ceph-12.0.0-3534.g000000), yet rpmbuild
expects the latter because the "Release:" field of the spec file is populated.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: populate version file with RPM version
Nathan Cutler [Fri, 10 Feb 2017 22:09:02 +0000 (23:09 +0100)]
buildpackages: populate version file with RPM version

Until now, the "version" file contained a string like 10.2.5-6244-g9027e75

The RPM version obtained by doing "rpm -q $PKG --qf %{VERSION}-%{RELEASE}"
looks like this: 10.2.5-6244.g9027e75

When teuthology compares these two strings, they don't match even though
the version numbers are effectively the same.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: add user-data for newer SUSE versions
Nathan Cutler [Wed, 8 Feb 2017 20:18:57 +0000 (21:18 +0100)]
buildpackages: add user-data for newer SUSE versions

Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agobuildpackages: apply suse modifications
Loic Dachary [Tue, 7 Feb 2017 21:26:27 +0000 (22:26 +0100)]
buildpackages: apply suse modifications

From https://github.com/SUSE/ceph-qa-suite/tree/wip-opensuse-jewel
because it is known to work. Omit the branch specification.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agobuildpackages: import from ceph/master
Loic Dachary [Tue, 7 Feb 2017 17:26:03 +0000 (18:26 +0100)]
buildpackages: import from ceph/master

It is exactly the same in all branches. It really belongs in teuthology
and was placed in ceph-qa-suite because it required a more flexible
development cycle.

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agosetup-openstack.sh: populate all subnets
Nathan Cutler [Thu, 2 Feb 2017 21:21:39 +0000 (22:21 +0100)]
setup-openstack.sh: populate all subnets

It used to be that OVH only returned a single subnet. Now it is returning two
or three and we need to populate them all.

Fixes: https://bugzilla.suse.com/show_bug.cgi?id=1023263
Signed-off-by: Loic Dachary <loic@dachary.org>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
5 years agoopenstack: cloudlab support
Loic Dachary [Mon, 28 Mar 2016 16:40:25 +0000 (18:40 +0200)]
openstack: cloudlab support

The only image available and working there at the moment is 14.04.1
which require a few tweaks to be setup properly.

https://groups.google.com/forum/#!topic/cloudlab-users/EN6YASWXwZU

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: setup ceph-workbench credentials
Loic Dachary [Mon, 7 Mar 2016 09:30:26 +0000 (16:30 +0700)]
openstack: setup ceph-workbench credentials

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: install docker in the teuthology instance
Loic Dachary [Sat, 5 Mar 2016 01:57:46 +0000 (08:57 +0700)]
openstack: install docker in the teuthology instance

Signed-off-by: Loic Dachary <loic@dachary.org>
5 years agoopenstack: install ceph-workbench
Loic Dachary [Sat, 19 Dec 2015 16:42:27 +0000 (17:42 +0100)]
openstack: install ceph-workbench

Signed-off-by: Loic Dachary <loic@dachary.org>
Conflicts:
teuthology/openstack/__init__.py

5 years agoMerge pull request #1327 from kshtsk/misc-drop-stringio-import
Nathan Cutler [Fri, 11 Oct 2019 11:51:21 +0000 (13:51 +0200)]
Merge pull request #1327 from kshtsk/misc-drop-stringio-import

misc: drop StringIO import to fix flake8

Reviewed-by: Nathan Cutler <ncutler@suse.com>
5 years agomisc: drop StringIO import to fix flake8 1327/head
Kyr Shatskyy [Fri, 11 Oct 2019 03:23:54 +0000 (05:23 +0200)]
misc: drop StringIO import to fix flake8

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
5 years agoMerge pull request #1318 from kshtsk/wip-misc-use-remote-sh
kshtsk [Thu, 10 Oct 2019 17:01:50 +0000 (19:01 +0200)]
Merge pull request #1318 from kshtsk/wip-misc-use-remote-sh

misc: use remote.sh instead of remote.run

5 years agoMerge PR #1322 into master
Patrick Donnelly [Thu, 10 Oct 2019 16:57:48 +0000 (09:57 -0700)]
Merge PR #1322 into master

* refs/pull/1322/head:
add note that ceph.conf.template should no longer be modified

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #1323 from kshtsk/wip-misc-drop-legacy-code-in-skeleton_config
kshtsk [Thu, 10 Oct 2019 14:29:41 +0000 (16:29 +0200)]
Merge pull request #1323 from kshtsk/wip-misc-drop-legacy-code-in-skeleton_config

misc: drop testdir replacement in skeleton_config

5 years agoMerge pull request #1325 from rjfd/wip-fix-import-loop
kshtsk [Thu, 10 Oct 2019 14:28:59 +0000 (16:28 +0200)]
Merge pull request #1325 from rjfd/wip-fix-import-loop

lock/ops: remove import to break import loop

5 years agolock/ops: remove import to break import loop 1325/head
Ricardo Dias [Thu, 10 Oct 2019 09:55:41 +0000 (10:55 +0100)]
lock/ops: remove import to break import loop

Fixes: https://tracker.ceph.com/issues/42256
Signed-off-by: Ricardo Dias <rdias@suse.com>
5 years agoMerge pull request #1324 from badone/wip-remove-package-overrides
Kefu Chai [Thu, 10 Oct 2019 01:28:21 +0000 (09:28 +0800)]
Merge pull request #1324 from badone/wip-remove-package-overrides

install/rpm: Remove _package_overrides

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoinstall/rpm: Remove _package_overrides 1324/head
Brad Hubbard [Thu, 10 Oct 2019 00:20:47 +0000 (10:20 +1000)]
install/rpm: Remove _package_overrides

The _package_overrides function is currently not required.

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
5 years agomisc: drop testdir replacement in skeleton_config 1323/head
Kyr Shatskyy [Wed, 9 Oct 2019 23:06:11 +0000 (01:06 +0200)]
misc: drop testdir replacement in skeleton_config

The str.format is not used anymore for ceph.conf.template

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoMerge pull request #1321 from kshtsk/wip-ceph-cm-ansible-url
kshtsk [Wed, 9 Oct 2019 21:44:07 +0000 (23:44 +0200)]
Merge pull request #1321 from kshtsk/wip-ceph-cm-ansible-url

config: add option for ceph cm ansible git url

5 years agoMerge pull request #1312 from ryg-/wip-42081-set-os
David Galloway [Wed, 9 Oct 2019 19:09:46 +0000 (15:09 -0400)]
Merge pull request #1312 from ryg-/wip-42081-set-os

lock: update target os-type and os-version after provisioning

5 years agoadd note that ceph.conf.template should no longer be modified 1322/head
Patrick Donnelly [Wed, 9 Oct 2019 18:11:33 +0000 (11:11 -0700)]
add note that ceph.conf.template should no longer be modified

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoconfig: add option for ceph cm ansible git url 1321/head
Roi Dayan [Mon, 4 Apr 2016 11:25:10 +0000 (14:25 +0300)]
config: add option for ceph cm ansible git url

This is to be able to supply a custom location without changing
the ceph git base url.

Signed-off-by: Roi Dayan <roid@mellanox.com>
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
Conflicts:
teuthology/config.py
teuthology/suite.py
teuthology/test/test_suite.py

5 years agoMerge pull request #1320 from kshtsk/wip-fog-python3
David Galloway [Wed, 9 Oct 2019 13:44:10 +0000 (09:44 -0400)]
Merge pull request #1320 from kshtsk/wip-fog-python3

fog: get rid of StringIO usage for python3 portability

5 years agofog: get rid of StringIO usage for python3 portability 1320/head
Kyr Shatskyy [Wed, 9 Oct 2019 11:18:23 +0000 (13:18 +0200)]
fog: get rid of StringIO usage for python3 portability

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoMerge pull request #1317 from kshtsk/wip-python3-use-isinstance
kshtsk [Wed, 9 Oct 2019 08:57:28 +0000 (10:57 +0200)]
Merge pull request #1317 from kshtsk/wip-python3-use-isinstance

suite/matrix: use isinstance for python3 compatibility

5 years agomisc: use remote.sh instead of remote.run 1318/head
Kyr Shatskyy [Tue, 8 Oct 2019 22:04:20 +0000 (00:04 +0200)]
misc: use remote.sh instead of remote.run

To ease porting and compatibility in order to avoid
usage of cStringIO.StringIO it is better to use
remote.sh method which supposed to return captured
value as a string.

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agorun_tasks: use isinstance() instead of type() 1317/head
Kyr Shatskyy [Tue, 8 Oct 2019 17:40:51 +0000 (19:40 +0200)]
run_tasks: use isinstance() instead of type()

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoteuthology/exit: use isinstance for python3 compatibility
Kyr Shatskyy [Tue, 8 Oct 2019 17:35:42 +0000 (19:35 +0200)]
teuthology/exit: use isinstance for python3 compatibility

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agosuite/matrix: use isinstance for python3 compatibility
Kyr Shatskyy [Tue, 8 Oct 2019 17:20:21 +0000 (19:20 +0200)]
suite/matrix: use isinstance for python3 compatibility

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agolock: remove os_version and os_type for node before reprovisiong 1312/head 1316/head
Roman Grigoryev [Tue, 8 Oct 2019 09:38:14 +0000 (11:38 +0200)]
lock: remove os_version and os_type for node before reprovisiong

os_version and os_type don't reflect actual os version
when node is under provisioning and/or provisiong failed.
The fix cleanup fileds before provisioning.

Signed-off-by: Roman Grigoryev <roman.grigorev@suse.de>
5 years agolock: update target os-type and os-version after provisioning
Roman Grigoryev [Mon, 30 Sep 2019 11:55:42 +0000 (13:55 +0200)]
lock: update target os-type and os-version after provisioning

After provisioning node via "teuthology-lock" (via both
"--lock" and "--lock-many") users cannot see actual
versioni and type  of provisioned OS in pulpito.
It is pretty helpful to see that version if we need to
do some manual work.

Signed-off-by: Roman Grigoryev <roman.grigorev@suse.de>
5 years agoMerge pull request #1315 from kshtsk/wip-future-print
kshtsk [Tue, 8 Oct 2019 09:39:22 +0000 (11:39 +0200)]
Merge pull request #1315 from kshtsk/wip-future-print

use python3 compatible print

5 years agoMerge pull request #1307 from kshtsk/beanstalkc3
kshtsk [Mon, 7 Oct 2019 12:30:57 +0000 (14:30 +0200)]
Merge pull request #1307 from kshtsk/beanstalkc3

beanstalk: switch to py3 compatible package

5 years agotest_build_matrix: use python3 compatible print 1315/head
Kyr Shatskyy [Mon, 7 Oct 2019 11:06:01 +0000 (13:06 +0200)]
test_build_matrix: use python3 compatible print

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoprovision/cloud: use python3 compatible syntax
Kyr Shatskyy [Mon, 7 Oct 2019 11:02:17 +0000 (13:02 +0200)]
provision/cloud: use python3 compatible syntax

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agoparallel: use python3 compatible syntax for print
Kyr Shatskyy [Mon, 7 Oct 2019 10:59:36 +0000 (12:59 +0200)]
parallel: use python3 compatible syntax for print

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
5 years agotask/install: use future print for python3 compatibility
Kyr Shatskyy [Mon, 7 Oct 2019 10:58:33 +0000 (12:58 +0200)]
task/install: use future print for python3 compatibility

Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>