chore(manila): add service_network_host (#602)
diff --git a/charts/manila/Chart.yaml b/charts/manila/Chart.yaml
index ddbd165..fb1a5cb 100644
--- a/charts/manila/Chart.yaml
+++ b/charts/manila/Chart.yaml
@@ -9,4 +9,4 @@
sources:
- https://opendev.org/openstack/manila
- https://opendev.org/openstack/openstack-helm
-version: 0.1.1
+version: 0.1.5
diff --git a/charts/manila/charts/helm-toolkit/Chart.yaml b/charts/manila/charts/helm-toolkit/Chart.yaml
index 7d3703e..1ee9758 100644
--- a/charts/manila/charts/helm-toolkit/Chart.yaml
+++ b/charts/manila/charts/helm-toolkit/Chart.yaml
@@ -9,4 +9,4 @@
sources:
- https://opendev.org/openstack/openstack-helm-infra
- https://opendev.org/openstack/openstack-helm
-version: 0.2.53
+version: 0.2.55
diff --git a/charts/manila/charts/helm-toolkit/templates/manifests/_ingress.tpl b/charts/manila/charts/helm-toolkit/templates/manifests/_ingress.tpl
index 4c476b2..972e429 100644
--- a/charts/manila/charts/helm-toolkit/templates/manifests/_ingress.tpl
+++ b/charts/manila/charts/helm-toolkit/templates/manifests/_ingress.tpl
@@ -67,10 +67,10 @@
metadata:
name: barbican
annotations:
- kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
+ ingressClassName: "nginx"
rules:
- host: barbican
http:
@@ -108,10 +108,10 @@
metadata:
name: barbican-namespace-fqdn
annotations:
- kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
+ ingressClassName: "nginx"
tls:
- secretName: barbican-tls-public
hosts:
@@ -133,10 +133,10 @@
metadata:
name: barbican-cluster-fqdn
annotations:
- kubernetes.io/ingress.class: "nginx-cluster"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
+ ingressClassName: "nginx-cluster"
tls:
- secretName: barbican-tls-public
hosts:
@@ -202,10 +202,10 @@
metadata:
name: barbican
annotations:
- kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
+ ingressClassName: "nginx"
tls:
- secretName: barbican-tls-public
hosts:
@@ -302,12 +302,12 @@
metadata:
name: barbican
annotations:
- kubernetes.io/ingress.class: "nginx"
cert-manager.io/issuer: ca-issuer
certmanager.k8s.io/issuer: ca-issuer
nginx.ingress.kubernetes.io/backend-protocol: https
nginx.ingress.kubernetes.io/secure-backends: "true"
spec:
+ ingressClassName: "nginx"
tls:
- secretName: barbican-tls-public-certmanager
hosts:
@@ -404,12 +404,12 @@
metadata:
name: barbican
annotations:
- kubernetes.io/ingress.class: "nginx"
cert-manager.io/cluster-issuer: ca-issuer
certmanager.k8s.io/cluster-issuer: ca-issuer
nginx.ingress.kubernetes.io/backend-protocol: https
nginx.ingress.kubernetes.io/secure-backends: "true"
spec:
+ ingressClassName: "nginx"
tls:
- secretName: barbican-tls-public-certmanager
hosts:
@@ -488,10 +488,10 @@
metadata:
name: grafana
annotations:
- kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
+ ingressClassName: "nginx"
rules:
- host: grafana
http:
@@ -529,10 +529,10 @@
metadata:
name: grafana-namespace-fqdn
annotations:
- kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
+ ingressClassName: "nginx"
tls:
- secretName: grafana-tls-public
hosts:
@@ -565,10 +565,10 @@
metadata:
name: grafana-cluster-fqdn
annotations:
- kubernetes.io/ingress.class: "nginx-cluster"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
+ ingressClassName: "nginx-cluster"
tls:
- secretName: grafana-tls-public
hosts:
@@ -639,7 +639,6 @@
metadata:
name: {{ $ingressName }}
annotations:
- kubernetes.io/ingress.class: {{ index $envAll.Values.network $backendService "ingress" "classes" "namespace" | quote }}
{{- if $certIssuer }}
cert-manager.io/{{ $certIssuerType }}: {{ $certIssuer }}
certmanager.k8s.io/{{ $certIssuerType }}: {{ $certIssuer }}
@@ -650,6 +649,7 @@
{{- end }}
{{ toYaml (index $envAll.Values.network $backendService "ingress" "annotations") | indent 4 }}
spec:
+ ingressClassName: {{ index $envAll.Values.network $backendService "ingress" "classes" "namespace" | quote }}
{{- $host := index $envAll.Values.endpoints ( $backendServiceType | replace "-" "_" ) "hosts" }}
{{- if $certIssuer }}
{{- $secretName := index $envAll.Values.secrets "tls" ( $backendServiceType | replace "-" "_" ) $backendService $endpoint }}
@@ -695,9 +695,9 @@
metadata:
name: {{ printf "%s-%s-%s" $ingressName $ingressController "fqdn" }}
annotations:
- kubernetes.io/ingress.class: {{ index $envAll.Values.network $backendService "ingress" "classes" $ingressController | quote }}
{{ toYaml (index $envAll.Values.network $backendService "ingress" "annotations") | indent 4 }}
spec:
+ ingressClassName: {{ index $envAll.Values.network $backendService "ingress" "classes" $ingressController | quote }}
{{- $host := index $envAll.Values.endpoints ( $backendServiceType | replace "-" "_" ) "host_fqdn_override" }}
{{- if hasKey $host $endpoint }}
{{- $endpointHost := index $host $endpoint }}
diff --git a/charts/manila/charts/helm-toolkit/templates/utils/_dependency_resolver.tpl b/charts/manila/charts/helm-toolkit/templates/utils/_dependency_resolver.tpl
index b99c00d..4a88dd8 100644
--- a/charts/manila/charts/helm-toolkit/templates/utils/_dependency_resolver.tpl
+++ b/charts/manila/charts/helm-toolkit/templates/utils/_dependency_resolver.tpl
@@ -27,10 +27,12 @@
{{- else if kindIs "slice" $dependencyMixinParam }}
{{- $_ := set $envAll.Values "__deps" ( index $envAll.Values.dependencies.static $dependencyKey ) }}
{{- range $k, $v := $dependencyMixinParam -}}
+{{- if ( index $envAll.Values.dependencies.dynamic.targeted $v ) }}
{{- $_ := include "helm-toolkit.utils.merge" (tuple $envAll.Values.pod_dependency $envAll.Values.__deps ( index $envAll.Values.dependencies.dynamic.targeted $v $dependencyKey ) ) -}}
{{- $_ := set $envAll.Values "__deps" $envAll.Values.pod_dependency -}}
{{- end }}
{{- end }}
+{{- end }}
{{- else -}}
{{- $_ := set $envAll.Values "pod_dependency" ( index $envAll.Values.dependencies.static $dependencyKey ) -}}
{{- end -}}
diff --git a/charts/manila/requirements.lock b/charts/manila/requirements.lock
index 492e112..6ba45d0 100644
--- a/charts/manila/requirements.lock
+++ b/charts/manila/requirements.lock
@@ -1,6 +1,6 @@
dependencies:
- name: helm-toolkit
repository: file://../../openstack-helm-infra/helm-toolkit
- version: 0.2.53
-digest: sha256:f8f4fbba6f638b79447f7e458933b07deb792ae30a14df5900bde542cf0e64a6
-generated: "2023-05-28T07:16:31.979404173Z"
+ version: 0.2.55
+digest: sha256:f25556fa4f0b285a96cbf853e72555c04e65772daf0ffa6b518321e5e249f5ca
+generated: "2023-09-29T22:24:08.167068243Z"
diff --git a/charts/manila/templates/bin/_manila-share-init.sh.tpl b/charts/manila/templates/bin/_manila-share-init.sh.tpl
new file mode 100644
index 0000000..2140ba7
--- /dev/null
+++ b/charts/manila/templates/bin/_manila-share-init.sh.tpl
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+{{/*
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/}}
+
+set -ex
+
+{{- if and ( empty .Values.conf.manila.generic.service_network_host ) ( .Values.pod.use_fqdn.share ) }}
+tee > /tmp/pod-shared/manila-share-fqdn.conf << EOF
+[generic]
+service_network_host = $(hostname --fqdn)
+EOF
+{{- end }}
diff --git a/charts/manila/templates/bin/_manila-share.sh.tpl b/charts/manila/templates/bin/_manila-share.sh.tpl
index 8177983..8dc2665 100644
--- a/charts/manila/templates/bin/_manila-share.sh.tpl
+++ b/charts/manila/templates/bin/_manila-share.sh.tpl
@@ -16,4 +16,7 @@
set -ex
exec manila-share \
- --config-file /etc/manila/manila.conf
+ --config-file /etc/manila/manila.conf \
+{{- if and ( empty .Values.conf.manila.generic.service_network_host ) ( .Values.pod.use_fqdn.share ) }}
+ --config-file /tmp/pod-shared/manila-share-fqdn.conf
+{{- end }}
diff --git a/charts/manila/templates/configmap-bin.yaml b/charts/manila/templates/configmap-bin.yaml
index 5a4222d..8baa2db 100644
--- a/charts/manila/templates/configmap-bin.yaml
+++ b/charts/manila/templates/configmap-bin.yaml
@@ -45,6 +45,8 @@
{{- include "helm-toolkit.scripts.keystone_user" . | indent 4 }}
rabbit-init.sh: |
{{- include "helm-toolkit.scripts.rabbit_init" . | indent 4 }}
+ manila-share-init.sh: |
+{{ tuple "bin/_manila-share-init.sh.tpl" . | include "helm-toolkit.utils.template" | indent 4 }}
manila-api.sh: |
{{ tuple "bin/_manila-api.sh.tpl" . | include "helm-toolkit.utils.template" | indent 4 }}
manila-data.sh: |
diff --git a/charts/manila/templates/configmap-etc.yaml b/charts/manila/templates/configmap-etc.yaml
index e230aa4..15f7fde 100644
--- a/charts/manila/templates/configmap-etc.yaml
+++ b/charts/manila/templates/configmap-etc.yaml
@@ -59,6 +59,10 @@
{{- $_ := set .Values.conf.manila.keystone_authtoken "memcache_secret_key" $memcache_secret_key -}}
{{- end -}}
+{{- if not .Values.conf.paste }}
+{{- $_ := set $envAll.Values.conf.manila.DEFAULT "api_paste_config" "/var/lib/openstack/etc/manila/api-paste.ini" -}}
+{{- end }}
+
{{- if empty .Values.conf.manila.database.connection -}}
{{- $_ := tuple "oslo_db" "internal" "manila" "mysql" . | include "helm-toolkit.endpoints.authenticated_endpoint_uri_lookup"| set .Values.conf.manila.database "connection" -}}
{{- end -}}
@@ -233,7 +237,9 @@
{{ printf "%s.filters" $filePrefix }}: {{ $value.content | b64enc }}
{{- end }}
logging.conf: {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | b64enc }}
+ {{- if .Values.conf.paste }}
api-paste.ini: {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | b64enc }}
+ {{- end }}
policy.yaml: {{ toYaml .Values.conf.policy | b64enc }}
manila_sudoers: {{ $envAll.Values.conf.manila_sudoers | b64enc }}
rootwrap.conf: {{ $envAll.Values.conf.rootwrap | b64enc }}
diff --git a/charts/manila/templates/deployment-api.yaml b/charts/manila/templates/deployment-api.yaml
index 0e4505a..b2169f3 100644
--- a/charts/manila/templates/deployment-api.yaml
+++ b/charts/manila/templates/deployment-api.yaml
@@ -100,10 +100,12 @@
subPath: {{ base .Values.conf.manila.DEFAULT.log_config_append }}
readOnly: true
{{- end }}
+ {{- if .Values.conf.paste }}
- name: manila-etc
mountPath: /etc/manila/api-paste.ini
subPath: api-paste.ini
readOnly: true
+ {{- end }}
- name: manila-etc
mountPath: /etc/manila/policy.yaml
subPath: policy.yaml
diff --git a/charts/manila/templates/deployment-share.yaml b/charts/manila/templates/deployment-share.yaml
index a1c3ac5..87bff3b 100644
--- a/charts/manila/templates/deployment-share.yaml
+++ b/charts/manila/templates/deployment-share.yaml
@@ -43,7 +43,7 @@
{{ tuple $envAll | include "helm-toolkit.snippets.release_uuid" | indent 8 }}
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "helm-toolkit.utils.hash" }}
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "helm-toolkit.utils.hash" }}
-{{ dict "envAll" $envAll "podName" "manila-share" "containerNames" (list "init" "manila-share") | include "helm-toolkit.snippets.kubernetes_mandatory_access_control_annotation" | indent 8 }}
+{{ dict "envAll" $envAll "podName" "manila-share" "containerNames" (list "init" "manila-share" "manila-share-init") | include "helm-toolkit.snippets.kubernetes_mandatory_access_control_annotation" | indent 8 }}
spec:
{{ dict "envAll" $envAll "application" "manila" | include "helm-toolkit.snippets.kubernetes_pod_security_context" | indent 6 }}
serviceAccountName: {{ $serviceAccountName }}
@@ -58,6 +58,22 @@
hostNetwork: true
initContainers:
{{ tuple $envAll "share" $mounts_manila_share_init | include "helm-toolkit.snippets.kubernetes_entrypoint_init_container" | indent 8 }}
+ - name: manila-share-init
+{{ tuple $envAll "manila_share" | include "helm-toolkit.snippets.image" | indent 10 }}
+{{ dict "envAll" $envAll "application" "manila" "container" "manila_share" | include "helm-toolkit.snippets.kubernetes_container_security_context" | indent 10 }}
+ env: []
+ command:
+ - /tmp/manila-share-init.sh
+ volumeMounts:
+ - name: pod-tmp
+ mountPath: /tmp
+ - name: manila-bin
+ mountPath: /tmp/manila-share-init.sh
+ subPath: manila-share-init.sh
+ readOnly: true
+ - name: pod-shared
+ mountPath: /tmp/pod-shared
+{{ if $mounts_manila_share.volumeMounts }}{{ toYaml $mounts_manila_share.volumeMounts | indent 12 }}{{ end }}
containers:
- name: manila-share
{{ tuple $envAll "manila_share" | include "helm-toolkit.snippets.image" | indent 10 }}
@@ -73,6 +89,8 @@
volumeMounts:
- name: pod-tmp
mountPath: /tmp
+ - name: pod-shared
+ mountPath: /tmp/pod-shared
- name: etcmanila
mountPath: /etc/manila
- name: state-tmp
@@ -127,6 +145,8 @@
volumes:
- name: pod-tmp
emptyDir: {}
+ - name: pod-shared
+ emptyDir: {}
- name: state-tmp
emptyDir: {}
- name: etcmanila
diff --git a/charts/manila/templates/service-api.yaml b/charts/manila/templates/service-api.yaml
index f80ef97..c529fd8 100644
--- a/charts/manila/templates/service-api.yaml
+++ b/charts/manila/templates/service-api.yaml
@@ -21,7 +21,7 @@
name: {{ tuple "share" "internal" . | include "helm-toolkit.endpoints.hostname_short_endpoint_lookup" }}
spec:
ports:
- - name: b-api
+ - name: m-api
port: {{ tuple "share" "service" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{ if .Values.network.api.node_port.enabled }}
nodePort: {{ .Values.network.api.node_port.port }}
diff --git a/charts/manila/values.yaml b/charts/manila/values.yaml
index 76e19d3..f62f14b 100644
--- a/charts/manila/values.yaml
+++ b/charts/manila/values.yaml
@@ -90,6 +90,12 @@
manila_test:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
+ use_fqdn:
+ # NOTE: Setting the option here to true will cause use $(hostname --fqdn)
+ # as the host name by default. If the short name is desired
+ # $(hostname --short), set the option to false. Specifying a host in the
+ # manila.conf via the conf section will supersede the value of this option.
+ share: true
affinity:
anti:
type:
@@ -405,55 +411,7 @@
service: oslo_messaging
conf:
- paste:
- composite:osapi_share:
- use: call:manila.api:root_app_factory
- /: apiversions
- /healthcheck: healthcheck
- /v1: openstack_share_api
- /v2: openstack_share_api_v2
- composite:openstack_share_api:
- use: call:manila.api.middleware.auth:pipeline_factory
- noauth: cors faultwrap http_proxy_to_wsgi sizelimit osprofiler noauth api
- keystone: cors faultwrap http_proxy_to_wsgi sizelimit osprofiler authtoken keystonecontext api
- keystone_nolimit: cors faultwrap http_proxy_to_wsgi sizelimit osprofiler authtoken keystonecontext api
- composite:openstack_share_api_v2:
- use: call:manila.api.middleware.auth:pipeline_factory
- noauth: cors faultwrap http_proxy_to_wsgi sizelimit osprofiler noauth apiv2
- noauthv2: cors faultwrap http_proxy_to_wsgi sizelimit osprofiler noauthv2 apiv2
- keystone: cors faultwrap http_proxy_to_wsgi sizelimit osprofiler authtoken keystonecontext apiv2
- keystone_nolimit: cors faultwrap http_proxy_to_wsgi sizelimit osprofiler authtoken keystonecontext apiv2
- filter:faultwrap:
- paste.filter_factory: manila.api.middleware.fault:FaultWrapper.factory
- filter:noauth:
- paste.filter_factory: manila.api.middleware.auth:NoAuthMiddleware.factory
- filter:noauthv2:
- paste.filter_factory: manila.api.middleware.auth:NoAuthMiddlewarev2_60.factory
- filter:sizelimit:
- paste.filter_factory: oslo_middleware.sizelimit:RequestBodySizeLimiter.factory
- filter:osprofiler:
- paste.filter_factory: osprofiler.web:WsgiMiddleware.factory
- filter:http_proxy_to_wsgi:
- paste.filter_factory: oslo_middleware.http_proxy_to_wsgi:HTTPProxyToWSGI.factory
- app:api:
- paste.app_factory: manila.api.v1.router:APIRouter.factory
- app:apiv2:
- paste.app_factory: manila.api.v2.router:APIRouter.factory
- pipeline:apiversions:
- pipeline: cors faultwrap http_proxy_to_wsgi osshareversionapp
- app:osshareversionapp:
- paste.app_factory: manila.api.versions:VersionsRouter.factory
- filter:keystonecontext:
- paste.filter_factory: manila.api.middleware.auth:ManilaKeystoneContext.factory
- filter:authtoken:
- paste.filter_factory: keystonemiddleware.auth_token:filter_factory
- filter:cors:
- paste.filter_factory: oslo_middleware.cors:filter_factory
- oslo_config_project: manila
- app:healthcheck:
- paste.app_factory: oslo_middleware:Healthcheck.app_factory
- backends: disable_by_file
- disable_by_file_path: /etc/manila/healthcheck_disable
+ paste: {}
policy: {}
manila_sudoers: |
# This sudoers file supports rootwrap for both Kolla and LOCI Images.
diff --git a/hack/sync-charts.sh b/hack/sync-charts.sh
index 76d98cb..e0f1748 100755
--- a/hack/sync-charts.sh
+++ b/hack/sync-charts.sh
@@ -186,7 +186,7 @@
curl -sL https://charts.rook.io/release/rook-ceph-cluster-v${ROOK_CEPH_CLUSTER_VERSION}.tgz \
| tar -xz -C ${ATMOSPHERE}/charts
-MANILA_VERSION=0.1.1
+MANILA_VERSION=0.1.5
curl -sL https://tarballs.opendev.org/openstack/openstack-helm/manila-${MANILA_VERSION}.tgz \
| tar -xz -C ${ATMOSPHERE}/charts
curl 'https://review.opendev.org/changes/openstack%2Fopenstack-helm~883168/revisions/11/patch?download' \
@@ -195,6 +195,12 @@
| filterdiff -p2 -x 'Chart.yaml' \
| filterdiff -p1 -i 'manila/*' \
| patch -p2 -d ${ATMOSPHERE}/charts/manila
+curl 'https://review.opendev.org/changes/openstack%2Fopenstack-helm~896819/revisions/2/patch?download' \
+ | base64 --decode \
+ | filterdiff -p1 -x 'releasenotes/*' \
+ | filterdiff -p2 -x 'Chart.yaml' \
+ | filterdiff -p1 -i 'manila/*' \
+ | patch -p2 -d ${ATMOSPHERE}/charts/manila
KEYCLOAK_VERSION=16.0.3
curl -sL https://charts.bitnami.com/bitnami/keycloak-${KEYCLOAK_VERSION}.tgz \
diff --git a/roles/defaults/vars/main.yml b/roles/defaults/vars/main.yml
index a901160..615058c 100644
--- a/roles/defaults/vars/main.yml
+++ b/roles/defaults/vars/main.yml
@@ -105,11 +105,11 @@
magnum_conductor: quay.io/vexxhost/magnum-cluster-api@sha256:6b436aa31b85ec4c142e3c8c56da8713ac0ec94e9ceb2457dcedaf43c6fbe5f9 # image-source: quay.io/vexxhost/magnum-cluster-api:zed
magnum_db_sync: quay.io/vexxhost/magnum-cluster-api@sha256:6b436aa31b85ec4c142e3c8c56da8713ac0ec94e9ceb2457dcedaf43c6fbe5f9 # image-source: quay.io/vexxhost/magnum-cluster-api:zed
magnum_registry: quay.io/vexxhost/magnum-cluster-api-registry@sha256:853596dc7a7598fc94eb30d5516029756a9da2f4c1e1997c9e965434b13c03dc # image-source: quay.io/vexxhost/magnum-cluster-api-registry:latest
- manila_api: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
- manila_data: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
- manila_db_sync: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
- manila_scheduler: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
- manila_share: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
+ manila_api: quay.io/vexxhost/manila@sha256:59c3bc27b6cf0740a4c87cbbd23b883bf7fa536659ac90f5aa765ad931e53e9e # image-source: quay.io/vexxhost/manila:zed
+ manila_data: quay.io/vexxhost/manila@sha256:59c3bc27b6cf0740a4c87cbbd23b883bf7fa536659ac90f5aa765ad931e53e9e # image-source: quay.io/vexxhost/manila:zed
+ manila_db_sync: quay.io/vexxhost/manila@sha256:59c3bc27b6cf0740a4c87cbbd23b883bf7fa536659ac90f5aa765ad931e53e9e # image-source: quay.io/vexxhost/manila:zed
+ manila_scheduler: quay.io/vexxhost/manila@sha256:59c3bc27b6cf0740a4c87cbbd23b883bf7fa536659ac90f5aa765ad931e53e9e # image-source: quay.io/vexxhost/manila:zed
+ manila_share: quay.io/vexxhost/manila@sha256:59c3bc27b6cf0740a4c87cbbd23b883bf7fa536659ac90f5aa765ad931e53e9e # image-source: quay.io/vexxhost/manila:zed
memcached: docker.io/library/memcached:1.6.17
netoffload: ghcr.io/vexxhost/netoffload:v1.0.1
neutron_bagpipe_bgp: quay.io/vexxhost/neutron@sha256:6309ca1db220338e3ea83cf637ee4c333c897a313435ef97968f75f5bbbab87d # image-source: quay.io/vexxhost/neutron:zed