Commit Graph

42 Commits

Author SHA1 Message Date
utkarshbhatthere 1fe0aa07d3
Adds cinder volume in test bundles to replace loopback devices in test.
Change-Id: I96b52dda0698d8942a836bd5df0baa3a0e3500ad
func-test-pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/989
2023-03-06 16:30:51 +05:30
Luciano Lo Giudice d13e6ba384 Unpin tox version
This unpinning is meant to solve the issues with tox 4.x breaking all
the virtualenv dependencies. Also, re-sync from release-tools.

Change-Id: I673c4b96de74f83d8fd3c0657c7ab0477fc4e9dc
2023-01-11 12:28:59 +09:00
Luciano Lo Giudice dbe3ee52bc Enable users to start/stop Crimson OSD's
This patchset modifies the add-disk action so that it now
can optionally start a Crimson OSD daemon.

Change-Id: I59bf4e41f1f56c6bda2352b5613289ff73113342
Depends-On: If58bde4d5445ed5de420abc007db6bf8b8e43269
2022-10-18 18:11:47 -03:00
Chris MacNaughton 88ecd7f6ec Updates to enable jammy and finalise charmcraft builds
- Add 22.04 to charmcraft.yaml
- Update metadata to include jammy
- Remove impish from metadata
- ensure that the source is yoga

Change-Id: Ibb93704c6d66f522cf112ad115b3a294d7a1eb03
2022-03-30 17:03:00 +02:00
Alex Kavanagh c3e89c09bd Update to classic charms to build using charmcraft in CI
This update is to ensure that the Zuul Canonical CI builds the charm
before functional tests and ensure that that artifact is used for the
functional tests.  This is to try to ensure that the charm that gets
landed to the charmhub is the same charm that was tested with.

Change-Id: I83118e15ff91480370182b404b3d3b7d24b5c67c
2022-02-17 12:30:03 -05:00
Corey Bryant f2d704a14d Add yoga bundles and release-tool syncs
* charm-helpers sync for classic charms
* sync from release-tools
* switch to release-specific zosci functional tests
* run focal-ussuri as smoke tests
* remove trusty, xenial, and groovy metadata/tests
* drop py35 and add py39
* charms.ceph sync

Change-Id: I4d517c40a4450ef1395dd0240513eeebc069384c
2021-11-17 13:46:25 -05:00
Alex Kavanagh fe570c72f2 Add xena bundles
- add non-voting focal-xena bundle
- add non-voting impish-xena bundle
- rebuild to pick up charm-helpers changes
- update tox/pip.sh to ensure setuptools<50.0.0

Change-Id: Iaaef29dfd8e682121dc0256e5cf3d97293cf84b3
2021-09-21 14:34:05 +01:00
Aurelien Lourot e5ac333a97 Sync release-tools
In order to fix ResolutionImpossible on tox invocation.

https://github.com/openstack-charmers/release-tools/issues/151
https://github.com/openstack-charmers/release-tools/pull/152

Change-Id: Ic2f5c854e7d6f2200941e828c1665bce0970f02b
2021-07-22 14:52:25 +02:00
Aurelien Lourot e2b1de70f0 Sync release-tools
Sync release-tools boilerplate containing these changes
in order to pin pip < 20.3:
https://github.com/openstack-charmers/release-tools/pull/125
https://github.com/openstack-charmers/release-tools/pull/126

Change-Id: I750963a14adbe775f723c973db023456f193f752
2020-12-11 13:54:22 +01:00
Alex Kavanagh 1adefd359b Sync libraries & common files prior to freeze
* charm-helpers sync for classic charms
* charms.ceph sync for ceph charms
* rebuild for reactive charms
* sync tox.ini files as needed
* sync requirements.txt files to sync to standard

Required additional fix:

* Also sync section-ceph-bluestore-compression template

Change-Id: I621c3a0e4e3594808b4c6ec298ed79aada44bae0
2020-09-28 18:48:15 +01:00
Frode Nordahl 0ca99c2fc3
Unpin flake8, fix lint
Change-Id: I7f47c1dac0761101980ebba3f9aab8732cb0d1ce
2020-08-26 16:29:47 +02:00
Alex Kavanagh e350ff6144 Release sync for 20.08
- Classic charms: sync charm-helpers.
- Classic ceph based charms:  also sync charms.ceph
- Reactive charms: trigger a rebuild
- sync tox.ini
- sync requirements.txt and test-requirements.txt

Change-Id: If07335447789d1521e1cd745bffff90e4900c7c1
2020-07-27 20:49:54 +01:00
Alex Kavanagh 6b0a11b404 Add a progress watchdog for OSD upgrades
This patch (in charms.ceph [1], copied here) add the concept of a
watchdog to the upgrade_monitor so that the charm can achieve two
objectives of 1. Waiting for much longer, but 2. detecting whether the
previous node has died / gone away.  This is needed for 'large' OSDs
where the time to upgrade a node may exceed the current limit of 10
minutes, but also not to wait for 30 minutes on a dead previous node.
The watchdog implements two timeouts and an addition 'alive' key from
the previous node to indicate that it is still running.  Otherwise,
functionality is identical.

[1] See depends on below
Depends-On: Ia450e936c2096f092af3be5a369b7abaf5023b16
Closes-Bug: #1762852

Change-Id: I6204a5ade684f0564c4be2d30df467c75baa6dba
2020-07-15 15:49:28 +01:00
Aurelien Lourot c64f4eb36a Sync helpers for 20.05
Change-Id: Ibebef746614a9de92c4e3c9ca109f313562784fc
2020-05-18 14:39:04 +02:00
Ryan Beisner 4c21a984c6
Sync charm/ceph helpers, tox, and requirements
Change-Id: I7a2ebaa43184420812b6f348039dd37de47d2488
2019-10-02 11:49:01 -05:00
Zuul 1badeacdc4 Merge "Enable bundle specific tox zaza target" 2019-08-23 12:32:01 +00:00
Corey Bryant d9704a3397 Add Python 3 Train unit tests
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.

See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html

Note that python35-charm-jobs is retained since this charm is supported
on Xenial.

Change-Id: Id0e49e062f3a84841e2f115866aff31ab7fb0a09
Story: #2005924
Task: #34228
2019-07-30 10:16:34 -04:00
Chris MacNaughton f8f11a9e07 Enable bundle specific tox zaza target
Change-Id: I2c4719507aa1809cd711aa6bd98201b943156258
2019-07-08 16:31:52 +02:00
Chris MacNaughton b8f6265158 Migrate to split zaza - zaza.openstack
This change adds in zaza.openstack, as well as changing the
branch target of zaza to a branch with zaza.openstack
removed, allowing us to validate the new library

Change-Id: Ide3a4a0e05d88731bbf5c1c33475ad3d86b95e6f
2019-05-10 09:49:25 +02:00
Chris MacNaughton 59dcfc4d06 Configure stestr directly
Change-Id: If015f76a839733e1876214c002ec2c9c75f2e12a
2019-03-06 16:05:50 +01:00
Paul Goins b735263186 Excluding unit_tests from coverage
Unit tests generally will all be executed, and measuring them will
skew the overall coverage numbers.  Thus, I'm excluding the unit_tests
folder.

Change-Id: Ie3e2e8fc61a941470fb23d5cff4922bf7e3f1591
2019-03-01 15:03:13 +01:00
Paul Goins f5af15c87c Added tox environment for gathering coverage
This technique was borrowed from the tox "cover" environment in
openstack/nova's tox.ini.  This leverages the fact that stestr lets
you override the python executable via the PYTHON environment
variable.  Doing this allows us to easily generate coverage for our
unit tests.

An important caveat is that this does not provide any coverage for
tests via zaza, amulet, etc.  It is purely focused on the unit tests.

Note that this replaces the previous .coveragerc; coverage
configuration is instead pulled from tox.ini.

Change-Id: I8cc9dbd7b77a69155a4b9c4fdb373accb0d92e69
2019-03-01 11:10:02 +01:00
Alex Kavanagh faefe90ce6 Fix nrpe ceph-osd status respecting permissions
The referenced bug (below) was caused because the nrpe check needed to
access the ceph owned directories, and as the nagios user, nrpe can't.
This change splits the check into a 'collect' phase that runs as root
via a cronjob each minute and writes a file to the tmp directory, and a
nrpe check phase that then reads that file and reports back to nagios.

The 'check' part deletes the 'collect' file, so that fresh information
is available for each nrpe check.  The cron task runs every minute (as
is lightweight), so the nrpe checks should not be sheduled more
frequently than 1 minute.

Change-Id: I4f4594a479eed47cc66643d0c6acece491ae854d
Closes-Bug: #1810749
2019-01-16 12:33:06 +00:00
Doug Hellmann 858f9619be fix tox python3 overrides
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.

We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.

We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.

Change-Id: Iedee21254cd5df9ecf3e11aa7a28c2997bd84c07
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-11-02 14:18:52 +00:00
Nicolas Pochet dd47f6493f
Migrate tests to zaza
Depends-On: https://github.com/openstack-charmers/zaza/pull/93
Change-Id: I9a19960fdb239eb5a8d421f135285e89b8405267
2018-10-09 18:15:01 +02:00
wangqi 42332b3eda Enable Python hash seed randomization in tests
Unit tests should run with hash seed randomization
on, to ensure code is not introduced that relies on
ordered access of dicts, sets, etc.

Python 3.3 enables this at runtime by default.

Change-Id: I781fd850039e4817b63edaf275609c1dc47f4949
2018-06-05 13:47:05 +00:00
Frode Nordahl 352d699387
Add pre-flight check for device pristinity
Add `non-pristine` key to `list-disks` action.

No longer attempt to do initializtion of `osd-journal` devices.

Make py27 test noop

Flip pep8 test to py3

Partial-Bug: #1698154
Change-Id: I0ca574fa7f0683b4e8a693b9f62fbf6b39689789
Depends-On: I90a866aa138d18e4242783c42d4c7c587f696d7d
2018-06-04 17:02:11 +02:00
David Ames de283cdad2 Enable Bionic as a gate test
Change bionic test from dev to gate for 18.05.

Change-Id: Ifbe70a78f93ca0aaeb8491130ef9b6567c1a3d78
2018-05-11 16:32:19 -07:00
Ryan Beisner e179d36802 Update tox.ini to stop using unverified package
As of pip 10.0, --allow-unverified is not permitted.

Use of the flag in this repo was previously used to force
installation of python-apt to accommodate certain unit tests.

The unverified package, python-apt, is no longer necessary
for test execution.

Related-Bug: #1760720

Change-Id: I06e5afd0bfb627b2de64e93e51c182cf881e38d7
2018-04-03 16:38:14 +00:00
Ryan Beisner 921b99875c Sync charm-helpers
Change-Id: I6b3a8b4f97e42d820792db6533874405d3625364
2018-02-21 14:07:25 -06:00
Andrew McLeod ed84524e3b Enable xenial-pike amulet test
Make default func27-smoke xenial-pike
Charm-helpers sync

Review and merge https://github.com/juju/charm-helpers/pull/69 first.

Change-Id: I32a04dfc995929840f8c544e1d5ed58066515210
2017-12-06 19:10:14 +00:00
Alex Kavanagh 4e1ecd55b8 Bring ceph-osd to Python 3
* Synced version of charm-helpers
* Synced version of charms.ceph to bring in Py3 compatible library
  methods.

Change-Id: I5ac45740f48a71d9cb0c5943472fc8590a723514
2017-11-17 12:13:54 +00:00
Alex Kavanagh 2305eabe27 Fix alphanumeric comparisons for openstack and ubuntu releases
- sync charmhelpers with fix-alpha helpers
- fix up code where the alpha comparisons are done

Change-Id: I904f5faf2bd8fc28204d5e26c94877708cb98d7e
Related-Bug: #1659575
2017-04-11 17:19:09 +01:00
David Ames 42b71274d6 Enable Ocata Amulet Tests
- Add Zesty as a supported series to metadata.yaml.
- Turn on Xenial-Ocata Amulet test definitions.
- Sync charm helpers to get Juju 2.x amulet compatibility.
- Keeping Zesty-Ocata Amulet test definitions turned off until the
  metadata.yaml changes propagate to the charm store.
- Resync tox.ini to resolve amulet unit test failures.

Change-Id: Ia14904339099d84d09a2fce171740459a76a8367
2017-03-23 09:29:00 +00:00
Ryan Beisner 037a2881e8 Update tox.ini files from release-tools gold copy
All OpenStack Charms now contain identical tox.ini files,
not to be modified or made unique within each charm repo.

This is to ensure consistency across charm repos in tox
target naming, approach and purpose, also giving the
charm dev and test experience additional consistency.

Also create empty dirs with .keep files where necessary.
Some classic charms have actions and/or lib dirs, and some
do not. In all classic charms, flake will now check those
dirs to ensure lint coverage of existing or future content.

Change-Id: I657e3c0c0bdb372cb4e005045d7469b806fd5e3d
2016-09-09 19:42:56 +00:00
Ryan Beisner 41a64db7a9 Update tox.ini files from release-tools gold copy
All OpenStack Charms now contain identical tox.ini files,
not to be modified or made unique within each charm repo.

This is to ensure consistency across charm repos in tox
target naming, approach and purpose, also giving the
charm dev and test experience additional consistency.

Change-Id: I2b5bb5a0b101609ca3c1e26abf3ecbe5b774d57f
2016-09-06 22:07:28 +00:00
Ryan Beisner fd15c0d586 Use bundletester for amulet test execution
Switch to using bundletester for execution of functional tests,
leveraging tox to build out test virtualenvs.

Rename amulet tests inline with gate-*, dev-* and dfs-*
naming standards.

Update README to refer to functional testing section of the charm
guide.

Change-Id: I618219551fc116c151cda4790c01aa9e86fa462a
2016-07-21 18:06:41 +00:00
James Page ba6397cac3 Update to charm-tools >= 2.0.0
The new release of charm-tools no longer ships the charm
command; update minimum version requirement and switch
to using charm-proof instead, unblocking current pep8
failures across all charms.

Also pin the version of requests to 2.6.0 until theblues
(indirect dependency of charm-tools) sort out its
requirements versioning.

Change-Id: I86b9094501dc1101bcad7038acd92f89ac71c95c
2016-03-23 09:30:16 +00:00
Chris Holcombe a8790f2303 Add support for replacing a failed OSD drive
This patch adds an action to replace a hard drive for an particular
osd server.  The user executing the action will give the OSD number
and also the device name of the replacement drive.  The rest is
taken care of by the action. The action will attempt to go through
all the osd removal steps for the failed drive.  It will force
unmount the drive and if that fails it will lazy unmount the drive.
This force and then lazy pattern comes from experience with dead
hard drives not behaving nicely with umount.

Change-Id: I914cd484280ac3f9b9f1fad8b35ee53e92438a0a
2016-03-17 08:41:15 -07:00
James Page f4888692eb Tidy tox targets 2016-02-16 06:59:45 +00:00
James Page ab2c851e5c Make things alot simpler 2015-10-30 12:37:15 +09:00
James Page 3c71ebf9bb Add tox support 2015-10-30 11:22:54 +09:00