
This commit adds the `loadbalancer_annotations` config option for ovn-relay-k8s and designate-bind-k8s charms. Change-Id: If34911b2cf4f5bde1655078a772c7d7baf95ebcc Signed-off-by: Fabian Fulga <ffulga@cloudbasesolutions.com>
100 lines
2.5 KiB
YAML
100 lines
2.5 KiB
YAML
type: charm
|
|
name: ovn-relay-k8s
|
|
summary: Relay for Open Virtual Network for Open vSwitch
|
|
description: |
|
|
The charm that deploys OVSDB Relay service.
|
|
|
|
The OVSDB Relay handles all read-only requests and forwards
|
|
transactions that requires database modifications to ovsdb
|
|
server.
|
|
assumes:
|
|
- k8s-api
|
|
- juju >= 3.1
|
|
links:
|
|
source:
|
|
- https://opendev.org/x/charm-ovn-relay-k8s
|
|
issues:
|
|
- https://bugs.launchpad.net/charm-ovn-relay-k8s
|
|
|
|
base: ubuntu@24.04
|
|
platforms:
|
|
amd64:
|
|
|
|
config:
|
|
options:
|
|
loadbalancer_annotations:
|
|
description: |
|
|
A comma-separated list of annotations to apply to the LoadBalancer service.
|
|
The format should be: `key1=value1,key2=value2,key3=value3`.
|
|
These annotations are passed directly to the Kubernetes LoadBalancer service,
|
|
enabling customization for specific cloud provider settings or integrations.
|
|
|
|
Example:
|
|
"external-dns.alpha.kubernetes.io/hostname=example.com,service.beta.kubernetes.io/aws-load-balancer-type=nlb"
|
|
|
|
Ensure the annotations are correctly formatted and adhere to Kubernetes' syntax and character set : https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/#syntax-and-character-set
|
|
type: string
|
|
|
|
actions:
|
|
get-southbound-db-url:
|
|
description: Southbound DB Connection URL for access to OVN via the relay.
|
|
|
|
containers:
|
|
ovsdb-server:
|
|
resource: ovn-sb-db-server-image
|
|
|
|
resources:
|
|
ovn-sb-db-server-image:
|
|
type: oci-image
|
|
description: OCI image for OVN Southbound Database Server
|
|
upstream-source: ghcr.io/canonical/ovn-consolidated:25.03
|
|
|
|
requires:
|
|
ovsdb-cms:
|
|
interface: ovsdb-cms
|
|
certificates:
|
|
interface: tls-certificates
|
|
logging:
|
|
interface: loki_push_api
|
|
optional: true
|
|
tracing:
|
|
interface: tracing
|
|
optional: true
|
|
limit: 1
|
|
|
|
provides:
|
|
ovsdb-cms-relay:
|
|
interface: ovsdb-cms
|
|
|
|
peers:
|
|
peers:
|
|
interface: ovn-relay-peer
|
|
|
|
parts:
|
|
update-certificates:
|
|
plugin: nil
|
|
override-build: |
|
|
apt update
|
|
apt install -y ca-certificates
|
|
update-ca-certificates
|
|
charm:
|
|
after:
|
|
- update-certificates
|
|
build-packages:
|
|
- git
|
|
- libffi-dev
|
|
- libssl-dev
|
|
- pkg-config
|
|
- rustc-1.80
|
|
- cargo-1.80
|
|
charm-binary-python-packages:
|
|
- cryptography
|
|
- jsonschema
|
|
- jinja2
|
|
- pydantic
|
|
build-snaps: [astral-uv]
|
|
override-build: |
|
|
uv export --frozen --no-hashes --format=requirements-txt -o requirements.txt
|
|
craftctl default
|
|
charm-requirements: [requirements.txt]
|