Commit Graph

99 Commits

Author SHA1 Message Date
Samuel Walladge b852fa02bd Document rationale for erasure coded pools
This addresses the questions:

- Why doesn't the charm let me use an erasure coded pool as the default?
- How do I use the secondary erasure coded pool once it is configured?

Change-Id: Ia885ce41043a4cb04a6d92993474c44e9b994c55
2023-10-17 08:33:06 +10:30
Peter Matulis 4210d634e7 Add docs key and point at Discourse
Add the 'docs' key and point it at a Discourse topic
previously populated with the charm's README contents.

When the new charm revision is released to the Charmhub,
this Discourse-based content will be displayed there. In
the absense of the this new key, the Charmhub's default
behaviour is to display the value of the charm's
'description' key.

Change-Id: I4b117272f68a27732809d0dddc31ac9cf69c60d9
2023-08-09 10:48:55 +02:00
Corey Bryant 3c9e6f10ba Add 2023.2 Bobcat support
* sync charm-helpers to classic charms
* change openstack-origin/source default to quincy
* add mantic to metadata series
* align testing with bobcat
* add new bobcat bundles
* add bobcat bundles to tests.yaml
* add bobcat tests to osci.yaml
* update build-on and run-on bases
* drop kinetic
* update charmcraft_channel to 2.x/stable

Change-Id: Ibb97b427f29a061adc2d67e55ae3976387d332c7
2023-08-08 11:59:35 +02:00
Chris MacNaughton f7764412a3 Add support for interim Ubuntu releases
- update bundles to include UCA pocket tests
- update test configuration
- update metadata to include lunar
- update snapcraft to allow run-on for lunar

Change-Id: I351ec2e549ef9ce1b25d4a57643c5f2e5e151d66
2023-03-16 14:28:02 -04:00
Corey Bryant 62482b50db Add kinetic support
Add 22.10 run-on base and add kinetic to metadata.yaml.

Additional changes:
* change CHARMCRAFT_* vars to CRAFT_* and add entrypoint
* pin tox < 4.0.0 for now
* switch to charmcraft pack
* add standard bindep.txt
* switch charm-tools to 2.8.4 to remove py310 ruamel requirement
* use charmcraft_channel 2.0/stable

Change-Id: I549e8382e4c079eb9eefec13f2a72e994e2b86f0
2023-02-03 10:00:04 -05:00
Chris MacNaughton 0e36e8c893 Remove small OpenStack deployment from functional tests
func-test-pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/864
Change-Id: Ic143b99503a396d7ae1484a1a3e68bdd6e7ce525
2022-08-30 13:08:52 -04:00
Chris MacNaughton 5505caa345 Remove force-deploy for Jammy
Additionally, Move jammy-yoga out of dev-bundles

Change-Id: Ibcfee61d595e8966ce0d17cc09983da870cec278
2022-08-09 14:54:14 -04:00
Ethan Myers 8f31a33a0f Enable charm to configure mds cache options.
Closes-Bug: #1891409
Func-Test-PR: https://github.com/openstack-charmers/zaza-openstack-tests/pull/774
Change-Id: If2bdd5c0f2afa1843e686cf69570a50901c85875
2022-06-02 08:06:11 -06:00
Chris MacNaughton 721df6ebf7 Updates for jammy enablement
- charmcraft: build-on 20.04 -> run-on 20.04/22.04 [*archs]
- Refresh tox targets
- Drop impish bundles and OSCI testing
- Add jammy metadata
- Default source is yoga

Change-Id: I2aaa39d6f780c415db54b28eaf445732247d7d47
2022-04-13 16:17:03 +02:00
Alex Kavanagh 62a5f93079 Update to build using charmcraft
Due to a build problem with the reactive plugin, this change falls back
on overriding the steps and doing a manual build, but it also ensures
the CI system builds the charm using charmcraft.  Changes:

- add a build-requirements.txt
- modify charmcraft.yaml
- modify osci.yaml
    -> indicate build with charmcraft
- modify tox.ini
    -> tox -e build does charmcraft build/rename
    -> tox -e build-reactive does the reactive build
- modify bundles to use the <charm>.charm artifact in tests.
  and fix deprecation warning re: prefix
- tox inception to enable tox -e func-test in the CI

Change-Id: I1bbdebb22fcd6cac4ceae74d90d70a8d94f3c769
2022-02-01 19:41:05 +00:00
Alex Kavanagh 69381f0328 Migrate charm to charmhub latest/edge track
Change-Id: I8ee68aa5d714b2052f846862b9db265956b43830
2022-01-27 19:36:55 +00:00
Corey Bryant b455c46541 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
* drop bluestore model alias to simplify osci.yaml

Change-Id: I1df6bb74fd96d934aa97cce18307a3227b165882
2021-11-18 16:07:37 -05:00
Alex Kavanagh bee914c6bf 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: I1a8c12dc00e05d5d01606f68eb151d86acf61815
2021-09-21 13:52:56 +01:00
Eric Chen 2cfacc2646 Remove ntp installation in ceph-fs.
For the case in container, it is not necessary to install ntp.
For the bare metal, we now expect operators to use a subordinate
ntp charm instead. Therefore, we remove ntp installation in
ceph-fs.

Closes-Bug: #1935013
Change-Id: I48f1a6a1ee6153bbc86cc9acf9302d8eb9d7db43
2021-09-13 08:03:56 +00:00
Aurelien Lourot 2f234a8911 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: I1eb0e1b428c1b850326202af03747826f2029336
2021-07-22 14:52:05 +02:00
Aurelien Lourot 4d343edc66 Add impish to metadata.yaml
Change-Id: I6d93ffc924e760a497c5dc74b59a665f888412f0
2021-06-22 09:16:21 +00:00
Alex Kavanagh 0a9eeb59c7 Test bundles for focal-wallaby and hirsute-wallaby
These are the test bundles (and any associated changes) for
focal-wallaby and hirsute-wallaby support.

hisute-wallaby test is disabled (moved to dev) due to [1].

[1] https://github.com/juju-solutions/layer-basic/issues/194

Change-Id: I108ce673e31500d1e3c2b2d9f0530bae6ece486a
2021-05-05 09:56:24 +01:00
Alex Kavanagh 581e730614 Updates to flip all libraries back to master
This patchset updates all the requirements for charms.openstack,
charm-helpers, charms.ceph, zaza and zaza-openstack-tests back
to master branch.

Change-Id: I89267c171f245fbc92ad67545e97d99f48f798e2
2021-05-03 16:02:38 +01:00
Alex Kavanagh 36869e1e1f Update for libraries sync 21.04
* Updated build.lock generated on xenial
* Modified wheelhouse.txt to pick up charms.ceph stable/21.04 branch

Change-Id: Ifdf2620bb3c529fbdfa8bcd3f11b85428f32e3b3
2021-04-09 20:22:11 +01:00
Alex Kavanagh 46797fc986 21.04 libraries freeze for charms on master branch
* charm-helpers sync for classic charms
* build.lock file for reactive charms
* ensure tox.ini is from release-tools
* ensure requirements.txt files are from release-tools
* On reactive charms:
  - ensure stable/21.04 branch for charms.openstack
  - ensure stable/21.04 branch for charm-helpers

* Manual fix to build.lock to work around bug [1]

[1] https://github.com/juju/charm-tools/issues/603

Change-Id: I6be25d404436647a19e18231ccd0985dd49bb858
2021-04-07 18:47:42 +01:00
Alex Kavanagh c8feba48a5 Add hirsute and remove trusty from metadata.yaml
This update adds the new hirsute Ubuntu release (21.04) and
removes trusty support (14.04 which is EOL at 21.04).

Change-Id: Ide508d37e11b37d2c4d19942fbeef9655390fae9
2021-03-02 20:52:31 +00:00
Billy Olsen ddd1acc56f Prune gate tests
Prune gate tests and move tests to dev_bundles.

Change-Id: Ifa837d3fec22a331bd650d20d630ab3700b76e62
2021-02-19 16:58:57 -07:00
Alex Kavanagh 691448ac06 Updates for testing period for 20.01 release
Includes updates to charmhelpers/charms.openstack for cert_utils
and unit-get for the install hook error on Juju 2.9

* charm-helpers sync for classic charms
* rebuild for reactive charms
* ensure tox.ini is from release-tools
* ensure requirements.txt files are from release-tools
* On reactive charms:
  - ensure master branch for charms.openstack
  - ensure master branch for charm-helpers

Change-Id: Ife8c24cefab36793f2e3f0b08e6a828504d4380f
2021-01-15 16:28:05 +00:00
Aurelien Lourot e245bd4345 Remove Disco and Eoan bits
Change-Id: I6cff076fd856020a4a438c9729fa7ac4e7a89a0f
2021-01-12 13:51:13 +01:00
Aurelien Lourot b155a50403 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: Ide8ec614917d57bd89600686b80d1f10ebbb1cd2
2020-12-11 13:53:48 +01:00
Aurelien Lourot d410dced9c Add Groovy to the test gate
Func-Test-Pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/468
Change-Id: Ifaa7b5b3ecd419e3e5c361bfdcfc4a2a0ea0332d
2020-11-25 14:51:17 +01:00
Frode Nordahl f93febc7f1
Add blurb about Ceph BlueStore compression
Change-Id: I9e40bf5a0110655bc6b7ac97b9b5128cbc1c26bd
2020-10-20 13:18:39 +02:00
Peter Matulis a44894a249 Update README for Ceph EC pools
This updates the README for erasure coded
Ceph pools for the case of CephFS.

The new text should be as similar as possible
for all the charms that support configuration
options for EC pools. See the below review for
the first of these charms whose README has been
updated.

https://review.opendev.org/#/c/749824/

Other minor improvements.

Change-Id: Ic6543e3241048591818358c972eadecd6ceab50c
2020-10-08 20:11:45 +00:00
Frode Nordahl 8b2b48f0ea
Add BlueStore Compression support
Ceph Bluestore Compression is a post-deploy configurable option
and allowing to update the broker request is required. Drop code
that gates the sending of pool broker request, the original issue
has been fixed in the interface code and it is now safe to call
multiple times.

Fold Erasure Coding test into regular bundles from Mimic and up
to allow testing both EC and BlueStore Compression at the same
time without test bundle explosion.

Unpin flake8

Change-Id: I9b529e61a8832a62f4db12cab8f352d468c8a3ad
2020-10-06 16:51:52 +02:00
Liam Young 051ba2a55f Align EC usage with best practice
When using erasure coding three pools are needed. One metadata
pool which is replicated, one default data pool which is replicated
and one erasure coded pool.

Add an additional ec-pool-weight option to allow the erasure coded
pool usage to be modelled within the deployment.

The consumer of the share will need to use xattrs to ensure that
the hierarchy of directories and files are stored in EC pool while
leaving the default replicated data pool for file backtraces.

Depends-On: Ib19e545fc676fa9e986f3fddcfb92cf99e778a3f
Depends-On: I48348ab2b6c8952c5e22008a074a60c1f35be952
Change-Id: I1af386d5e1d031f2f0387c7381af683f948172d9
Closes-Bug: #1895154
2020-09-25 10:54:47 +01:00
Aurelien Lourot 0a707cd97f Add focal-victoria to the test gate
Change-Id: I94f2c5035a42ea4dcb0ac1843807525bdaa6d5fc
2020-08-28 14:24:25 +02:00
James Page 513da36a16 Tidy configuration options
Update descriptions and align metadata-pool configuration option
with codebase. Metadata pools are used by CephFS for both replicated
and erasure-coded data pools.

Change-Id: Iee6ee64e7bd672f9932037bf91670d8f59083aa4
2020-08-27 11:22:47 +01:00
Liam Young f347a37d69 Add Support For Erase-Coded Pools
Add support for erasure coded pools.

1) Pool name of replicated and EC pools can now be set via
   pool-name config option.
2) Weight of replicated and EC pools can now be set via
   ceph-pool-weight config option.
3) Charm no longer uses initialize_mds from the ceph-mds
   interface. This moves the charm inline with ceph-client
   charms where the charm explicitly creates the pools they
   need.
4) Metadata pool name format is preserved with an underscore
   rather than a hyphen.

Change-Id: I97641c6daeeb2a1a65b081201772c89f6a7f539c
2020-08-25 08:48:23 +00:00
Liam Young 25317a00cd Update to work with changes to interface.
The ceph-mds interface has been updated to work in the same way
as the ceph-client interface. This requires some minor updates to
the charm so pools are requested when the ceph cluster is first
available and the service is configured once the pools have been
confirmed to exist.

Depends-On: I9f438bb678da1b69d8161390aad2cf58907bc1b5
Change-Id: I83148f73c7f0465ecfadaa9df92e4a53e30813de
2020-08-18 09:54:17 +00:00
Alex Kavanagh 458af8aaf6 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: If1bf8dbceba3aff96aeee6e5bf710185d1ed9612
2020-07-27 20:49:28 +01:00
Zuul 80c809a23c Merge "Improve README" 2020-07-13 06:08:36 +00:00
Peter Matulis 29ea9f428b Improve README
This improvement is part of a wave of polish
in preparation for the launch of the Ceph product.

Add Configuration, Actions, and Bugs sections.

In config.yaml, modernise example values for 'source'
and use consistent words with the ceph-osd, ceph-mon,
and ceph-fs charms.

Change-Id: Iaf45df89db4b471c6379e09881758dae4b723783
2020-07-09 13:06:40 -04:00
Aurelien Lourot 31d8e472c6 Add Victoria test bundles
Change-Id: Ibcb9032c11deb4c1062492a3f690843fad48cc6c
2020-07-09 16:22:39 +02:00
Alex Kavanagh 8cffe1665d Updates for 20.08 cycle start for groovy and libs
- Adds groovy to the series in the metadata
- Classic charms: sync charm-helpers.
- Classic ceph based charms:  also sync charms.ceph
- Reactive charms: trigger a rebuild

Change-Id: I9912fe43e6db71ed81e47175f9f790ed550c9c31
2020-07-09 08:48:49 +00:00
Frode Nordahl 4c02fa9c42 Remove duplicate requirement
Func-Test-Pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/342
Change-Id: I2137edb851fbb7926f372783fa140d89190c813b
Closes-Bug: #1885935
2020-07-02 11:50:04 +00:00
Frode Nordahl ff7ff85779
Fix Ceph upgrade issue by porting charm to common framework
Move helpers as-is from reactive handler module to charm class.

Set default of ``source`` configuration option to 'distro' to be
in line with other reactive charms and the expectations of the
``openstack.utils.get_source_and_pgp_key`` function.

Unpin flake8.

Func-Test-Pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/313
Depends-On: I6fbde855ba8f83ef5e265bd5b5dfb0d01eae830b
Change-Id: I2d8e8b244db935673406d2cce9ef34e7252cb50b
Closes-Bug: #1879072
2020-06-12 08:24:57 +02:00
Alex Kavanagh 3e36c14263 Enable focal and ussuri testing for gate
This adds bundles for:

 * bionic-ussuri
 * focal-ussuri

And adds a force option of the focal-ussuri bundle as it is not yet
officially supported by Juju.

Change-Id: Ic0f82df6f1dc76cdba21f23e8b04ff9e12f32181
2020-05-01 17:25:34 +01:00
Chris MacNaughton 6466544b4e Remove note about ceph-fs being for testing
Change-Id: I26895f8e2163e81f7d987e7dcda79e9628462a34
2020-02-21 16:47:44 +01:00
Alex Kavanagh 097270eb4c Remove disco support from the charm
Also remove old cosmic test as well.

Change-Id: I4659ba823e2bf66e6ea202be3886e0326ed1c529
2020-02-19 13:48:30 +00:00
Zuul 3b57d15c59 Merge "Add a new functional test to CephFS" 2020-02-18 14:14:21 +00:00
Chris MacNaughton 4d818deeb8 Add a new functional test to CephFS
Change-Id: I03dab145e96dbabf91a8d76bbf53464d6b6ec63c
func-test-pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/175
2020-02-14 15:44:51 +01:00
Chris MacNaughton c575998315 Update docs to remove non-production notices
Change-Id: I02f28239076eca7a8db791ac4253181d31197396
2020-01-30 17:23:20 +01:00
Chris MacNaughton 4dfe62d344 Migrate CephFS tests to Zaza
Change-Id: I36d3d58d8f5c15475460997cce20fe442978eeed
Closes-Bug: #1828424
2019-12-05 16:10:05 +01:00
Corey Bryant 39089a27d6 Enable functional tests for bionic-train
This patch also updates the smoke test to run bionic-train.

Change-Id: I113899e62e7eab845c3b0e7022200ccad02a2723
2019-10-31 11:11:21 -04:00
Ryan Beisner ec4bdb67d5
Sync charm/ceph helpers, tox, and requirements
Change-Id: I1be6d121b470729c150f060d4e970f58d28fc13d
2019-09-30 22:41:33 -05:00