As noticed in bobcat testing, the [service_auth] section requires
more configuration than it did in the past. Additionally, as noted
in I686cfdef78de927fa4bc1921c15e8d5853fd2ef9, Octavia will no longer
take the authentication settings for Neutron from the [service_auth]
as a fallback. It will instead require them to be in the [neutron]
section. However, [service_auth] settings will still be used for
other services like Nova and Glance.
This change adds auth config options to the [service_auth] and
[neutron] sections, moves the auth_section config option to the
[keystone_authtoken] section, and sets the auth_section config
option to point to the [service_auth] section.
Closes-Bug: #2043095
Related-Bug: #2043129
Change-Id: I290f543827d63bb685209d615c9f448c2ff9d31e
- Remove lunar testing bundles
- Remove lunar from metadata.yaml
- Remove lunar CI jobs defined in osci.yaml
- Switch to charmcraft 2.x/candidate channel
- Remove ubuntu 23.04 base from charmcraft.yaml
Change-Id: If4d8b3160f0455b1ac5c576e2a82d71bac47edbb
This removes the [service_auth] section and moves the `auth_section` to
[neutron] as per I686cfdef78de927fa4bc1921c15e8d5853fd2ef9 for bobcat
and later.
Change-Id: I460baa19921408bbd9d4ef0e62e335da10d7d2de
There can be a delay between the interface being created,
and an IP address getting assigned,
which previously caused a race condition where
the config could be rendered before the IP address was ready
resulting in the health manager bind_ip to be empty.
This ensures that the IP address will be ready before continuing,
which will ensure that the config rendering will not happen until ready,
and the configure-resources action will only return once it's all done.
Closes-Bug: #1961088
Change-Id: I2cae5f0e307c8cd14f1831f3416d890ad604b705
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: I50e457e3b9affdd0ca83602c1e580b75c6aa5434
This will ensure that mtu is set whenever setup_hm_port()
is called regardless of if the port has just been created
or not. Also checks mtu in update-status hook.
Change-Id: I80b5cea812becd1724fcfe2a8a232253eac76735
Closes-Bug: #2018998
* Voting was turned on for jammy-antelope in the
project-template for charm-functional-jobs in zosci-config
* Voting for jammy-antelope bundles with non-standard names
is turned on in individual charms
* Kinetic-zed bundles/tests are removed
Change-Id: If0d46c9efe32c533fa79b5c52447f00ed3887a51
This patch adds the possibility to configure the number of retries
and the timeout between those retries when connection to the
amphorae.
Closes-bug: #1988094
Change-Id: Idf25c327fe34f751f622a3a467a5ba8f73125681
OVN Octavia provider gained support for health monitoring, this is
achieved by allowing the octavia-driver-agent connect to the southdb,
this change adds the connection strings otherwise the daemon tries to
connect to 127.0.0.1:6442 .
Change-Id: I6f7f1b9252e74ddcc2729a11c74b3c08ee8a7eb2
Closes-Bug: #1980290
Prior to this change, big bang upgrades were not being run
when openstack-origin was updated to a new release.
Closes-Bug: #1979553
Change-Id: I5cda72d55b7aba51d087bababa94435e53c2201b
* 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
* move interface/layer env vars to charmcraft.yaml
* fix gss mirror_list and odr retrofit-uca-pocket
* use local charm overlay for HA config instead of manually managing
symlinks
Depends-On: https://review.opendev.org/c/openstack/charm-octavia/+/858919
Change-Id: I759b60939a4fe2c9599d34e2ff64649426ffbf62
Charms for OpenStack Yoga supports both Ubuntu Focal and Jammy
which means Python 3.8 and Python 3.10. Managing dependencies
across those two versions is non-trivial and we need to build
the charm on the series the charm is supposed to support.
Switch to using a binary build which allows pip's dependency
resolution to work.
This patch also drops the impish bundle and fixes channels
for auxiliary charms.
Update metadata with jammy support.
Replace `octavia.setup.ensure_lts_images` with the default glance
lts image configure job.
Drop python build dependencies in wheelhouse and let the binary
build figure those out automatically.
Closes-Bug: #1915171
Change-Id: I744a8903be7450b5d9b2af3f96c6f61d206f9271
Change Iadd11634d1fe44731ecf0a6104561b4aeebff23f errantly landed the
patch with the src/test-requirements.txt pointing to a non-official zaza
branch for testing purposes.
This reverts the part of the dependencies to point to the correct and
official zaza repositories.
Change-Id: I764efe462fa1933f3c13aed91acfb203248ac9b1
This is to build a multi-arch charm on amd64 on 20.04 but deliver it
on 20.04, 22.04 and across the 4 arches.
Change-Id: I2b9832ee63b0addf316da41c42e6cc4b70108ebe
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
- Unit test fix
Depends-On: https://review.opendev.org/c/openstack/charm-keystone/+/830986
Depends-On: https://review.opendev.org/c/openstack/charm-interface-keystone/+/830988
Change-Id: Iadd11634d1fe44731ecf0a6104561b4aeebff23f
Co-authored-by: Aurelien Lourot <aurelien.lourot@canonical.com>
Make the commands in the README the same as those on the
Octavia page of the CDG.
Duplicated content will be removed and replaced with a
link to the CDG during the next review of the README.
Related-Bug: #1948506
Change-Id: I5c182d3c985bdd6ca304bfa8c055241e6b6f0f68
JUJU_DEPARTING_UNIT will be set in leader unit as well when removing one
unit, so update_controller_ip_port_list can use it to delete hm port and
update neutron ip list. Besides, cluster.{connected,available} will be
set by interface-openstack-ha when relation-{broken,departed} is changed,
so update_controller_ip_port_list will also have a change to run.
In other words, as long as update_controller_ip_port_list is triggered
for various reasons, the cleanup will be completed.
and pin cffi to 1.14.6 and pyparsing<3.0.0 for python < 3.6
Closes-Bug: 1915512
Func-Test-Pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/600
Change-Id: I88c61b8d2d0b573df7df071ed7978e83b6803c5c
Subnets were not assigned if they already existed and were not created,
but the router creation code for the configure-resources depends on the
subnets variable for iteration. Initialize the subnets from the query
for the subnets for the case of existing subnets.
Additionally, the octavia charm uses a service user which can see other
subnets that are tagged 'charm-octavia'. Narrow the scope of the subnet
listing to the network being used by the charm.
Closes-Bug: #1866126
Change-Id: Id88a68a398a50532e11daff33fb774caf65a0c0a
Co-authored-by: Aurelien Lourot <aurelien.lourot@canonical.com>
enable_anti_affinity, anti_affinity_policy options are configured
in controller_worker section instead of nova section in octavia.conf
templates.
This patch fixes by moving both the options to nova section.
Closes-Bug: #1935960
Change-Id: I4818e3282eb25c9d0f0829080d4a5791965dbee0
Octavia supports multiple provider drivers. The reference Amphora
provider driver is distributed as part of the Octavia software,
and is enabled by default.
Add a configuration option which allows to not enable the Amphora
provider driver. This is useful for use cases where a different
driver is desired, and removes the checks for Amphora related
mandatory configuration options.
Change-Id: I4d14056bf901d813ac53fde9ccd4e8bdb56e3c55
These are the test bundles (and any associated changes) for
focal-wallaby and hirsute-wallaby support.
Re-enable testing with Victora Amphora.
Re-enable bionic-ussuri-ha-ovn now that the ovn 20.03.2 SRU
is complete.
Replace overlay symlinks with local-charm-overlay template.
Group jobs in two stages to avoid CI resource depletion.
Func-Test-Pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/592
Change-Id: Id8a71ad90da98f6330328663478a948f4b134c0d
Co-authored-by: Aurelien Lourot <aurelien.lourot@canonical.com>
Just like with legacy Neutron ML2+OVS, the recommended deployment
topology for Octavia is to use a separate application for the
ovn-chassis subordinate co-located with Octavia.
We do this because the ovn-chassis application related to
nova-compute units will most likely have configuration set that
makes no sense for the Octavia units. (For example physical port
configuration, DPDK, SR-IOV, Hardware offloading etc etc)
Not adding this in the original Octavia OVN gate bundles was an
oversight, let's get it in.
Change-Id: I5852b3298d3d3e26ad077261fea07eb1d99d6e1c
Put charm into a blocked state if the unit local port to mgmt.
network does not come up.
Add workaround in functional test that allows to re-enable
bionic-ussuri gate. Drop proposed from bionic-ussuri
bundles.
Closes-Bug: #1893446
Change-Id: I098e449723bce128e8c2efda1e9fafc9156a71e5
When OVN provider driver is enabled, retrieve chassis
certificates from subordinate.
While a principal and subordinate charm executes in the same
environment, the payload usually execute under different service
accounts and as such it is impractical and may be less secure to
attempt to provide direct on-disk file access.
Also reverts commit bc0f83fee6.
Closes-Bug: #1918271
Related-Bug: #1885936
Change-Id: I4bc65ea1fcf3c01b68ed92b31e91a64940afe10e
The driver is unreliable at Ussuri.
Also ensure we restart the ovn-driver-agent when configuration is
written to disk.
Ensure Port Security is enabled as this is a requirement for
reliable operation of the Amphora driver also exercised by the
functional tests.
Enable focal/groovy-victoria gates and re-enable Ussuri OVS gate.
Closes-Bug: #1927960
Closes-Bug: #1927962
Related-Bug: #1927959
Change-Id: I1bafd9eecb83aefb425bc5286f23d47c0885ac8e
This patchset updates all the requirements for charms.openstack,
charm-helpers, charms.ceph, zaza and zaza-openstack-tests back
to master branch.
Also pin cachetools < 4.2.2 as 4.2.2+ breaks installations by requiring
setuptools >= 46.4 which breaks most installation targets.
Change-Id: I513e89ac95fe20e4e925cad2e0b190ed83512e80
* 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
* build.lock file constructed on xenial builder
Change-Id: I8770c1ecdb6c533e8a5658d96f029e4bd3347809
This new option allows an operator decide if anti-affinity is set to
hint Nova of where to schedule the load balancers when the topology is
ACTIVE_STANDBY.
By default anti-affinity-policy is set to 'auto' which will set the
policy to soft-anti-affinity when the topology is set to ACTIVE_STANDBY
otherwise enable_anti_affinity is set to False.
Change-Id: I593a2784f12eb8abee2ec48aede27bdc745e5ede
Closes-Bug: #1813263
Make the charm go into a blocked state if it has aan ovsdb-cms
relation but not certificates relation.
Change-Id: I4a769f3f0a01535b070cfec04a1b199821c500f5
Partial-Bug: #1885936
Introduce and use a simple wrapper to log any exceptions thrown
from API calls to the debug log before setting the action_fail
status for the action.
Change-Id: I4c5e7199d03eb8980e5c3e2025509f00116fcf99
Closes-Bug: 1890315
Due to a 'quirk' being fixed, the octavia-driver-agents don't get
installed if the ovsdb-subordinate relation is the last to be made.
This is due to the update-status hook gating the reactive handler from
running which 'fixed' the issue. Looking deeper, if the handler isn't
the first to run, then the charm's packages won't get initialised
properly.
This patch fixes that by using the dynamic properties 'all_packages' and
'full_service_list' available in charms.openstack core for the Charm
class. This means that it doesn't matter when the flag is set, as long
as it is before the property is accessed. Looking at the handler, this
will be in the right place for the install.
func-test-pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/514
Change-Id: I5fd75c9d371390bca402d6a3a264421a44fd092a
Closes-Bug: #1916764