Skip to content

Commit

Permalink
Add new glanceAPI struct
Browse files Browse the repository at this point in the history
This change is the first of a series where the purpose is to move away
from the harcoded internal/external glanceAPI instance in favor of an
arbitrary number of GlanceAPI instances.
The current change doesn't introduce the ability to deploy >1 GlanceAPI
instance, but introduces the logic that will serve this purpose.
The split behavior is still preserved, but it happens behind the scenes
in Glance.

Signed-off-by: Francesco Pantano <[email protected]>
  • Loading branch information
fmount committed Nov 15, 2023
1 parent d7cd738 commit eb03c4a
Show file tree
Hide file tree
Showing 21 changed files with 347 additions and 527 deletions.
221 changes: 61 additions & 160 deletions apis/bases/core.openstack.org_openstackcontrolplanes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1311,6 +1311,9 @@ spec:
- extraVol
type: object
type: array
memcachedInstance:
default: memcached
type: string
nodeSelector:
additionalProperties:
type: string
Expand Down Expand Up @@ -1342,6 +1345,7 @@ spec:
- cinderAPI
- cinderScheduler
- databaseInstance
- memcachedInstance
- rabbitMqClusterName
- secret
type: object
Expand Down Expand Up @@ -4024,7 +4028,7 @@ spec:
- extraVol
type: object
type: array
glanceAPIExternal:
glanceAPI:
properties:
containerImage:
type: string
Expand Down Expand Up @@ -4055,169 +4059,52 @@ spec:
override:
properties:
service:
properties:
endpointURL:
type: string
metadata:
properties:
annotations:
additionalProperties:
additionalProperties:
properties:
endpointURL:
type: string
metadata:
properties:
annotations:
additionalProperties:
type: string
type: object
labels:
additionalProperties:
type: string
type: object
type: object
spec:
properties:
externalName:
type: string
type: object
labels:
additionalProperties:
externalTrafficPolicy:
type: string
type: object
type: object
spec:
properties:
externalName:
type: string
externalTrafficPolicy:
type: string
internalTrafficPolicy:
type: string
ipFamilyPolicy:
type: string
loadBalancerClass:
type: string
loadBalancerSourceRanges:
items:
internalTrafficPolicy:
type: string
type: array
sessionAffinity:
type: string
sessionAffinityConfig:
properties:
clientIP:
properties:
timeoutSeconds:
format: int32
type: integer
type: object
type: object
type:
type: string
type: object
type: object
type: object
pvc:
type: string
replicas:
default: 1
format: int32
maximum: 32
minimum: 0
type: integer
resources:
properties:
claims:
items:
properties:
name:
type: string
required:
- name
type: object
type: array
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
type: object
required:
- containerImage
type: object
glanceAPIInternal:
properties:
containerImage:
type: string
customServiceConfig:
type: string
customServiceConfigSecrets:
items:
type: string
type: array
debug:
properties:
service:
default: false
type: boolean
type: object
defaultConfigOverwrite:
additionalProperties:
type: string
type: object
networkAttachments:
items:
type: string
type: array
nodeSelector:
additionalProperties:
type: string
type: object
override:
properties:
service:
properties:
endpointURL:
type: string
metadata:
properties:
annotations:
additionalProperties:
ipFamilyPolicy:
type: string
type: object
labels:
additionalProperties:
loadBalancerClass:
type: string
type: object
type: object
spec:
properties:
externalName:
type: string
externalTrafficPolicy:
type: string
internalTrafficPolicy:
type: string
ipFamilyPolicy:
type: string
loadBalancerClass:
type: string
loadBalancerSourceRanges:
items:
loadBalancerSourceRanges:
items:
type: string
type: array
sessionAffinity:
type: string
type: array
sessionAffinity:
type: string
sessionAffinityConfig:
properties:
clientIP:
properties:
timeoutSeconds:
format: int32
type: integer
type: object
type: object
type:
type: string
type: object
sessionAffinityConfig:
properties:
clientIP:
properties:
timeoutSeconds:
format: int32
type: integer
type: object
type: object
type:
type: string
type: object
type: object
type: object
type: object
pvc:
Expand Down Expand Up @@ -4259,8 +4146,19 @@ spec:
x-kubernetes-int-or-string: true
type: object
type: object
storageClass:
type: string
storageRequest:
type: string
type:
default: split
enum:
- split
- single
type: string
required:
- containerImage
- storageRequest
type: object
imageCacheSize:
default: ""
Expand Down Expand Up @@ -4316,8 +4214,7 @@ spec:
required:
- containerImage
- databaseInstance
- glanceAPIExternal
- glanceAPIInternal
- glanceAPI
- imageCacheSize
- secret
- storageRequest
Expand Down Expand Up @@ -7274,6 +7171,9 @@ spec:
- containerImage
type: object
type: object
memcachedInstance:
default: memcached
type: string
nodeSelector:
additionalProperties:
type: string
Expand Down Expand Up @@ -7304,6 +7204,7 @@ spec:
required:
- manilaAPI
- manilaScheduler
- memcachedInstance
- rabbitMqClusterName
type: object
type: object
Expand Down
44 changes: 22 additions & 22 deletions apis/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,26 @@ module github.com/openstack-k8s-operators/openstack-operator/apis
go 1.19

require (
github.com/onsi/ginkgo/v2 v2.13.0
github.com/onsi/gomega v1.29.0
github.com/openstack-k8s-operators/cinder-operator/api v0.3.1-0.20231020183900-9e910befd6b1
github.com/openstack-k8s-operators/designate-operator/api v0.0.0-20231104225543-fdc41a9ca857
github.com/openstack-k8s-operators/glance-operator/api v0.3.1-0.20231029084849-1626f1b5fd75
github.com/openstack-k8s-operators/heat-operator/api v0.3.1-0.20231024034110-9dd57dde400d
github.com/openstack-k8s-operators/horizon-operator/api v0.3.1-0.20231030011854-d014e871e1c1
github.com/openstack-k8s-operators/infra-operator/apis v0.3.1-0.20231020142809-b6b6796c004f
github.com/openstack-k8s-operators/ironic-operator/api v0.3.1-0.20231026221435-33533d2716d9
github.com/openstack-k8s-operators/keystone-operator/api v0.3.1-0.20231020144009-3e445cd965f8
github.com/openstack-k8s-operators/lib-common/modules/common v0.3.1-0.20231102083359-58e12a1299b2
github.com/openstack-k8s-operators/manila-operator/api v0.3.1-0.20231025113820-f49225061a75
github.com/openstack-k8s-operators/mariadb-operator/api v0.3.1-0.20231024153304-3bd4917dd1d5
github.com/openstack-k8s-operators/neutron-operator/api v0.3.1-0.20231024012242-a8ddfbf9ad44
github.com/openstack-k8s-operators/nova-operator/api v0.3.1-0.20231027160956-be7c8bc55252
github.com/openstack-k8s-operators/octavia-operator/api v0.3.1-0.20231024120852-0456c0ac7b33
github.com/openstack-k8s-operators/ovn-operator/api v0.3.1-0.20231027163223-d167c0bc319e
github.com/openstack-k8s-operators/placement-operator/api v0.3.1-0.20231027133710-2ab891796f11
github.com/openstack-k8s-operators/swift-operator/api v0.3.1-0.20231027131443-90f3912444f1
github.com/openstack-k8s-operators/telemetry-operator/api v0.3.1-0.20231026160130-4d8f151f7f30
github.com/onsi/ginkgo/v2 v2.13.1
github.com/onsi/gomega v1.30.0
github.com/openstack-k8s-operators/cinder-operator/api v0.3.1-0.20231114160640-3c5c40e6cc3a
github.com/openstack-k8s-operators/designate-operator/api v0.0.0-20231113184257-f5f91f9b0986
github.com/openstack-k8s-operators/glance-operator/api v0.3.1-0.20231115090205-264277ef61bb
github.com/openstack-k8s-operators/heat-operator/api v0.3.1-0.20231115022322-40df8776a641
github.com/openstack-k8s-operators/horizon-operator/api v0.3.1-0.20231103160944-413a8b455a4a
github.com/openstack-k8s-operators/infra-operator/apis v0.3.1-0.20231113161711-d0c2a36fe46d
github.com/openstack-k8s-operators/ironic-operator/api v0.3.1-0.20231103171435-bb14d998275c
github.com/openstack-k8s-operators/keystone-operator/api v0.3.1-0.20231103151903-a1a0e540408d
github.com/openstack-k8s-operators/lib-common/modules/common v0.3.1-0.20231114102008-65eb1b13d3a7
github.com/openstack-k8s-operators/manila-operator/api v0.3.1-0.20231114124626-250f67f21020
github.com/openstack-k8s-operators/mariadb-operator/api v0.3.1-0.20231103165533-ad766a5aa6b0
github.com/openstack-k8s-operators/neutron-operator/api v0.3.1-0.20231115061135-28c36ae19f87
github.com/openstack-k8s-operators/nova-operator/api v0.3.1-0.20231113083956-daa5310a0fef
github.com/openstack-k8s-operators/octavia-operator/api v0.3.1-0.20231109201846-2aaafc447f56
github.com/openstack-k8s-operators/ovn-operator/api v0.3.1-0.20231115081236-a8288bcc7a5d
github.com/openstack-k8s-operators/placement-operator/api v0.3.1-0.20231113150933-c15a24565543
github.com/openstack-k8s-operators/swift-operator/api v0.3.1-0.20231114120226-5eaef7af17b4
github.com/openstack-k8s-operators/telemetry-operator/api v0.3.1-0.20231114081411-5a92493f3843
github.com/rabbitmq/cluster-operator/v2 v2.5.0
k8s.io/apimachinery v0.27.4
sigs.k8s.io/controller-runtime v0.15.1
Expand Down Expand Up @@ -66,8 +66,8 @@ require (
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/openshift/api v3.9.0+incompatible // indirect
github.com/openstack-k8s-operators/lib-common/modules/openstack v0.3.1-0.20231027113646-46f2fdbf77f1 //indirect
github.com/openstack-k8s-operators/lib-common/modules/storage v0.3.1-0.20231102083359-58e12a1299b2
github.com/openstack-k8s-operators/lib-common/modules/openstack v0.3.1-0.20231102083359-58e12a1299b2 //indirect
github.com/openstack-k8s-operators/lib-common/modules/storage v0.3.1-0.20231114102008-65eb1b13d3a7
github.com/pkg/errors v0.9.1 // indirect
github.com/prometheus/client_golang v1.16.0 // indirect
github.com/prometheus/client_model v0.4.0 // indirect
Expand Down
Loading

0 comments on commit eb03c4a

Please sign in to comment.