This change add several configuration options to enable HTTP checks
to the HAProxy configuration, instead of the default TCP connection
checks (which continue to be the default)
Closes-Bug: #1880610
Change-Id: I50a9442ae66da71793a5e9904d23c26d1fbbdf42
* 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: Idf4a6cd1e0888576f890b00aa5b343936900d6dd
- Add 22.04 to charmcraft.yaml
- Update metadata to include jammy
- Remove impish from metadata
- Update osci.yaml to include py3.10 default job
- Modify tox.ini to remove py35,py36,py37 tox target and add py310
target.
- ensure that the openstack-origin is yoga
Change-Id: I82a3ae55422e0871bddf37debf1089c9a9a3e843
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: Ia2f3bcba500de242a93d9f0bf073a9c5c3aad89a
* drop xenial metadata and function tests
* switch to release-specific zosci functional tests
* switch to yoga zosci unit test job
* add py39
Change-Id: I6b5b33d17450361f9f11bbc21e0651c2e2d3c0cf
- add non-voting focal-xena bundle
- add non-voting impish-xena bundle
- charm-helpers sync for new charm-helpers changes
- update tox/pip.sh to ensure setuptools<50.0.0
- Note that this depends on I7f17acb4cc4a83fc15655bf6e15c8ff3b3fe92ff
to be able to land this as glance needs xena support to run in this
charms functional tests.
Change-Id: Ieaed39e06a7454f71b1422c46c4fccd72fbe04af
This will also give us more insights into the leader-set failure
happening in the linked bug.
Also updated project files from latest release-tools templates.
Also blacklisted libjuju 2.8.3 which causes spurious
JujuAPIError's.
Change-Id: I51b890098df6d918c1d84adba272559ef45411bb
Partial-Bug: #1890256
None is returned for a relation data value if a key isn't present -
assuming that it's a string is not correct. This change fixes that by
returning an empty string if protocol-name is not present.
Change-Id: I2bab6a69f9f663edee0738ff35b804d81736cb5c
Closes-Bug: #1882084
- removing sitepackages in tox.ini to avoid test env pollution
- skip_missing_interpreters in tox.ini set to False to avoid false
positives by skipping missing interpreters.
Change-Id: I61f1ab26748ad9c2f008fb0d8f003fc2aa28d841
The bundle disco-stein was in the dev_bundles because
a bug with the Python 3.7 syntax prevented the success of
the deployment of HA clusters. This bug is fixed, we can
reintegrate disco-stein in the gate_bundles.
Other minor adds:
- Changing naming convention for vip: 'Amulet' is deprecated.
- Passing OS env vars
LP Related-Bug: #1823719
Change-Id: I787248ad2983858c6db2e5a838270a128dae717a
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: Ia7f98b1ab89d0983b5ed0334c3796977387cc460
Story: #2005924
Task: #34228
To be in line with the other recent updates, changing the
charmhelpers/* exclusion to */charmhelpers/*, which more reliably
excludes the charmhelpers code from coverage tracking. While this
presently does nothing differently for this charm, it's probably
better for this code to be in line with the other charms rather than
being different for no obvious reason.
Also excluding the unit_tests directory.
Change-Id: Idcc3bb494eb632b5f971ee6c44bca5284a7839a1
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: I20a4f267abb05f2123000518ae9b8ec8d5f0961c
Re-enable charm-proof (was lost @ py3 conversion).
Also remove tests/charm-helpers if present, in favor
of the pip-installed charm-helpers.
Change-Id: I23092d7e0ecb5d2d9eeef784317566e05c81015e
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: Ib289655299f7e1dd3dd88b4fb116e7b36f14b461
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Major changes:
* decoupling the hooks/manager.py file from the charm. It is now a
script that is called from hooks/keystone_utils.py as it has to use
the same Python version/libraries as the installed keystone payload
software. keystone_utils.py and manager.py communicate via a Unix
Domain Socket using json, encoded to base64.
* As Python3 requires absolute imports, the charmhelpers symlink has
been removed from hooks, and the hooks and charmhelpers symlinks have
been removed from the actions directory. Instead, the path is
adjusted so that the modules can be found.
Change-Id: I18996e15d2d08b1dacf0533132eae880cbb9aa32
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: Ieca3f4978e947ce52d645ddab0f4523c90d03c75
- Turn on Zesty-Ocata Amulet test definitions.
- Standardize test-requirements.txt
- Sync charm helpers for various fixes
Change-Id: Ia86ed2cf9557d9eb11f577d641eb3e6920ff9e3e
It is possible for the keystone charm to poll identity-relation
before their remote unit has set values. This patch fixes a
corner cases that cause a hook exception under this
circumstance.
Change-Id: I3339870b87adcd712a341ae5074b4af1e924f64a
Closes-Bug: 1674786
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: Ibaf267dc1ad5f071ab046df07ded711a184b45bd
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: I6e448fdad04f0548a48a7163847bb0b236114404
Switch to using bundletester for execution of functional tests,
leveraging tox to build out test virtualenvs.
Rename amulet tests inline with gate-* and dfs-* naming standards.
Update README to refer to functional testing section of the charm
guide.
Change-Id: I037529196125e507bb15c1b0a3681a7457a6e8d1
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: I565d5c72aa0ea4ed297bcbef00a3bf5e97edcb84
This changes enables the Keystone v3 api. It can be toggled on and off via the
preferred-api-version option.
When services join the identity-service relation they will be presented with a
new parameter api_version which is the maximum api version the keystone charm
supports and matches what was set via preferred-api-version.
If preferred-api-version is set to 3 then the charm will render a new
policy.json which adds support for domains etc when keystone is checking
authorisation. The new policy.json requires an admin domain to be created and
specifies that a user is classed as an admin of the whole cloud if they have
the admin role against that admin domain.
The admin domain, called admin_domain, is created by the charm. The name of
this domain is currently not user configurable. The role that enables a user to
be classed as an admin is specified by the old charm option admin-role. The
charm grants admin-role to the admin-user against the admin_domain.
Switching a deployed cloud from preferred-api-version 2 to
preferred-api-version 3 is supported. Switching from preferred-api-version 3 to
preferred-api-version 2 should work from the charm point of view but may cause
problems if there are duplicate users between domains or may have unintended
consequences like escalating the privilege of some users so is not recommended.
Change-Id: I8eec2a90e0acbf56ee72cb5036a0a21f4a77a2c3