* sync charm-helpers to classic charms
* change openstack-origin/source default to zed
* align testing with zed
* add new zed bundles
* add zed bundles to tests.yaml
* add zed tests to osci.yaml and .zuul.yaml
* update build-on and run-on bases
* add bindep.txt for py310
* sync tox.ini and requirements.txt for ruamel
* use charmcraft_channel 2.0/stable
* drop reactive plugin overrides
* move interface/layer env vars to charmcraft.yaml
Change-Id: I577fff942606ded9885e9ba6f29040ba3fc7fb27
Update deprecated method calls where possible,
and use new methods instead of lower level read/write calls.
Change-Id: I991435cdf8d36016e75c46823ec47f3290a42fe4
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: Icb73919f247c60a9e18cc2e563f0fda9c620cb14
Co-authored-by: Aurelien Lourot <aurelien.lourot@canonical.com>
The mock third party library was needed for mock support in py2
runtimes. Since we now only support py36 and later, we can use the
standard lib unittest.mock module instead.
Note that https://github.com/openstack/charms.openstack is used during tests
and he need `mock`, unfortunatelly it doesn't declare `mock` in its
requirements so it retrieve mock from other charm project (cross dependency).
So we depend on charms.openstack first and when
Ib1ed5b598a52375e29e247db9ab4786df5b6d142 will be merged then CI
will pass without errors.
Depends-On: Ib1ed5b598a52375e29e247db9ab4786df5b6d142
Change-Id: I1d7de2bd4d704ffc331fdeacea725e903890f296
If vault/leader has certificate relationship with other apps but
root CA is either not configured or cleared by action 'disable-pki',
the status should be set to 'Blocked, Missing CA'
Also add unit test for checking 'missing-CA' status
Closes-Bug: #1940451
Change-Id: I2f0093c0ae6949693f2ad1ea4729b690c932b4b1
This patchset updates all the requirements for charms.openstack,
charm-helpers, charms.ceph, zaza and zaza-openstack-tests back
to master branch.
Change-Id: Ife3649d0fae29680ec3c355daace23905e1deccf
* 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
Change-Id: I531088a70f1281ba7f2f066c383e234fb7a8164f
* 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: I418135c6409d0b8c5a786cac907257d2aecbc860
* 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
Change-Id: I82c35d13e7cbb4586a29c70ebccb4f687a17a496
The charm was sending an individual unit's address even when the VIP
configuration value was set. If VIP is set and we have not yet reached
the ha.available state, wait on publishing the vault url.
Change-Id: I3de05b5e771dc4b7c43996d99ccc4b5d8668737d
Closes-Bug: #1878035
Ensure that EOL releases are removed from metadata
and tests, and that the current dev release is enabled
in metadata. Dev release tests are enabled separately
because of chickens and eggs.
Update test-requirements to reflect upstream name change for
``psycopg2`` package.
Change-Id: Ia59cea09bf9946b8ccf0c7363c9171bbbcf5a5bc
Add ceph-mon and ceph-osd charms to smoke testing bundle
to ensure coverage of vault-kv relation and associated
secrets storage functionality.
Revert default KV backend to v1; v2 has a slightly different
API so revert default KV backend version to v1.
This resolve and issue with vaultlocker access to stored
keys.
Also pin hvac version to < 0.7.0.
Change-Id: I8ed197aba3f9a42399fd4304b21e2a36e3dd6dca
Resolve existing lint.
Also remove tests/charm-helpers if present, in favor
of the pip-installed charm-helpers.
Change-Id: Ibfa428c1a9f2d881faec6c1193fcf33612693f12
To use the tls-certificates interface clients relate to the vault
charm. If the charms CA is not ready yet the charm will not update
the relation data. To prepare the CA an operator needs to run the
get_csr action to retrieve the csr for the intermediate ca the charm
has prepared. The operator should sign the csr with the root CA and
then upload the root CA cert and signed csr to the vault charm via
the upload-signed-csr action. Running this action will trigger the
vault charm to process any outstanding certificate requests and to
update the relation data accordingly.
The update includes:
* New action get_csr to retrieve a csr for the intermediate ca for
the charm pki
* New action upload-signed-csr to upload a signed intermediate csr
* Charm now provides tls-certificates interface
* Update vault access acl to allow charm full access to charm-pki-*.
Currently the only pki mount point the charm uses is
charm-pki-local
* Various generic helpers to lib.charm.vault
* New module lib.charm.vault_pki which handles interactions between
the charm and the vault pki api
* Add handler to reactive.vault_handlers for reacting to certificate
requests
Depends-On: I6222e5eb9c8a0a5f079ecc2e5e5c97abc1c39515
Change-Id: I1681b9f2defcfbf7c06ede83c88c507dcf92a7ce
Perform a number of new checks to assess the status of the
local unit:
- Presence and completeness of relations
- Status of vault (initialized, sealed)
- Configuration of memory locking
This review also switches a number of 'status_set' calls to
be 'log' calls to avoid continually polluting the Juju status
display with non-pertinent information during update-status
executions.
Change-Id: I4e467a76bb0951deda8a88c609f4c79f4b0b33f4
Add support for relating vault to etcd to support HA deployments
of vault.
Depends-On: Iebb2415077b682dfdf590b4b5f35a3c593ed3d69
Depends-On: I05a04bdc237b2a698b2f2d29e18c5a33510a2513
Change-Id: I161db8296031776652425f563a11de3ee8f7f86e
Add .gitreview file to point at openStack gerrit
Bring tox.ini and requirements mostly inline with other
reactive charms. tox.ini has to deviate slightly as
charm currently has no src dir.
Change-Id: I9184847409a884699d3b51641e19cbd9d30634fa
Add a tox.ini for creating virtualenvs and then executing builds,
flake8, unit tests and charm proof in those venvs. Example:
tox -e pep8
tox -e build
tox -e charm-proof
tox -e unit-tests
Partial-Bug: #1745966