Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions apis/vshn/v1/common_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -340,6 +340,18 @@ func (a *TimeOfDay) SetTime(t time.Time) {
*a = TimeOfDay(t.Format(time.TimeOnly))
}

// VSHNAdditionalResources references a ConfigMap containing arbitrary Kubernetes resources
// to deploy into the instance namespace.
// The ConfigMap should have one entry per resource, where the key is a descriptive name
// (e.g. "my-configmap.yaml") and the value is the raw YAML definition.
// Note: this feature is not enabled on all clusters.
type VSHNAdditionalResources struct {
// ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
// each define a Kubernetes resource to deploy into the instance namespace.
// +kubebuilder:validation:Optional
ConfigMapRef string `json:"configMapRef,omitempty"`
}

// AddDuration adds duration to current time and returns the new time plus day offset.
func (a TimeOfDay) AddDuration(d time.Duration) (TimeOfDay, int) {
start := a.GetTime()
Expand Down
4 changes: 4 additions & 0 deletions apis/vshn/v1/dbaas_vshn_forgejo.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,10 @@ type VSHNForgejoParameters struct {

// Instances defines the number of instances to run.
Instances int `json:"instances,omitempty"`

// AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
// Note: this feature is not enabled on all clusters.
AdditionalResources VSHNAdditionalResources `json:"additionalResources,omitempty"`
}

// VSHNForgejoServiceSpec contains Forgejo DBaaS specific properties
Expand Down
4 changes: 4 additions & 0 deletions apis/vshn/v1/dbaas_vshn_garage.go
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,10 @@ type VSHNGarageParameters struct {

// Instances defines the number of instances to run.
Instances int `json:"instances,omitempty"`

// AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
// Note: this feature is not enabled on all clusters.
AdditionalResources VSHNAdditionalResources `json:"additionalResources,omitempty"`
}

// VSHNGarageServiceSpec contains Garage DBaaS specific properties
Expand Down
4 changes: 4 additions & 0 deletions apis/vshn/v1/dbaas_vshn_keycloak.go
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,10 @@ type VSHNKeycloakParameters struct {
// Instances configures the number of Keycloak instances for the cluster.
// Each instance contains one Keycloak server.
Instances int `json:"instances,omitempty"`

// AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
// Note: this feature is not enabled on all clusters.
AdditionalResources VSHNAdditionalResources `json:"additionalResources,omitempty"`
}

// VSHNKeycloakServiceSpec contains keycloak DBaaS specific properties
Expand Down
4 changes: 4 additions & 0 deletions apis/vshn/v1/dbaas_vshn_mariadb.go
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,10 @@ type VSHNMariaDBParameters struct {
// An additional ProxySQL statefulset will be deployed to make failovers
// as seamless as possible.
Instances int `json:"instances,omitempty"`

// AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
// Note: this feature is not enabled on all clusters.
AdditionalResources VSHNAdditionalResources `json:"additionalResources,omitempty"`
}

// VSHNMariaDBServiceSpec contains MariaDB DBaaS specific properties
Expand Down
4 changes: 4 additions & 0 deletions apis/vshn/v1/dbaas_vshn_postgresql.go
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,10 @@ type VSHNPostgreSQLParameters struct {

// Security defines the security of a service
Security Security `json:"security,omitempty"`

// AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
// Note: this feature is not enabled on all clusters.
AdditionalResources VSHNAdditionalResources `json:"additionalResources,omitempty"`
}

type VSHNPostgreSQLReplicationStrategy struct {
Expand Down
4 changes: 4 additions & 0 deletions apis/vshn/v1/dbaas_vshn_redis.go
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,10 @@ type VSHNRedisParameters struct {

// Instances configures the number of Redis instances for the cluster.
Instances int `json:"instances,omitempty"`

// AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
// Note: this feature is not enabled on all clusters.
AdditionalResources VSHNAdditionalResources `json:"additionalResources,omitempty"`
}

// VSHNRedisServiceSpec contains Redis DBaaS specific properties
Expand Down
4 changes: 4 additions & 0 deletions apis/vshn/v1/vshn_nextcloud.go
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,10 @@ type VSHNNextcloudParameters struct {
// Instances configures the number of Nextcloud instances for the cluster.
// Each instance contains one Nextcloud server.
Instances int `json:"instances,omitempty"`

// AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
// Note: this feature is not enabled on all clusters.
AdditionalResources VSHNAdditionalResources `json:"additionalResources,omitempty"`
}

// VSHNNextcloudServiceSpec contains nextcloud DBaaS specific properties
Expand Down
22 changes: 22 additions & 0 deletions apis/vshn/v1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions crds/vshn.appcat.vshn.io_vshnforgejoes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNForgejo.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control how the instance should get backed up.
properties:
Expand Down
11 changes: 11 additions & 0 deletions crds/vshn.appcat.vshn.io_vshngarages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNGarage.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
instances:
default: 1
description: Instances defines the number of instances to run.
Expand Down
22 changes: 22 additions & 0 deletions crds/vshn.appcat.vshn.io_vshnkeycloaks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNKeycloak.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control how the instance should get backed up.
properties:
Expand Down Expand Up @@ -4842,6 +4853,17 @@ spec:
PostgreSQLParameters can be used to set any supported setting in the
underlying PostgreSQL instance.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control the backups of an instance.
properties:
Expand Down
11 changes: 11 additions & 0 deletions crds/vshn.appcat.vshn.io_vshnmariadbs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNMariaDB.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control how the instance should get backed up.
properties:
Expand Down
22 changes: 22 additions & 0 deletions crds/vshn.appcat.vshn.io_vshnnextclouds.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNNextcloud.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control how the instance should get backed up.
properties:
Expand Down Expand Up @@ -4737,6 +4748,17 @@ spec:
PostgreSQLParameters can be used to set any supported setting in the
underlying PostgreSQL instance.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control the backups of an instance.
properties:
Expand Down
11 changes: 11 additions & 0 deletions crds/vshn.appcat.vshn.io_vshnpostgresqls.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNPostgreSQL.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control the backups of an instance.
properties:
Expand Down
11 changes: 11 additions & 0 deletions crds/vshn.appcat.vshn.io_vshnredis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNRedis.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control how the instance should get backed up.
properties:
Expand Down
11 changes: 11 additions & 0 deletions crds/vshn.appcat.vshn.io_xvshnforgejoes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNForgejo.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
backup:
description: Backup contains settings to control how the instance
should get backed up.
Expand Down
11 changes: 11 additions & 0 deletions crds/vshn.appcat.vshn.io_xvshngarages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,17 @@ spec:
parameters:
description: Parameters are the configurable fields of a VSHNGarage.
properties:
additionalResources:
description: |-
AdditionalResources contains arbitrary Kubernetes resources to deploy into the instance namespace.
Note: this feature is not enabled on all clusters.
properties:
configMapRef:
description: |-
ConfigMapRef is the name of a ConfigMap in the claim namespace whose entries
each define a Kubernetes resource to deploy into the instance namespace.
type: string
type: object
instances:
default: 1
description: Instances defines the number of instances to run.
Expand Down
Loading
Loading