diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index b1f1b01..a9c99fa 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -21,10 +21,10 @@ jobs: python-version: 3.7 - name: Set up chart-testing - uses: helm/chart-testing-action@v2.1.0 + uses: helm/chart-testing-action@v2.3.1 - name: Create kind cluster - uses: helm/kind-action@v1.2.0 + uses: helm/kind-action@v1.4.0 - name: Install aiven-operator CRDs run: helm install charts/aiven-operator-crds --generate-name diff --git a/CHANGELOG.md b/CHANGELOG.md index 7e2b02d..80615ff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,10 @@ # Changelog ## [MAJOR.MINOR.PATCH] - YYYY-MM-DD -+ add `webhooks.containerPort` value + +## aiven-operator-v0.5.0 - 2022-11-28 + +sync with aiven-operator v0.5.0 ## aiven-operator-v0.4.0 - 2022-08-04 * sync with aiven-operator v0.4.0 diff --git a/charts/aiven-operator-crds/Chart.yaml b/charts/aiven-operator-crds/Chart.yaml index cc55b34..d8091b4 100644 --- a/charts/aiven-operator-crds/Chart.yaml +++ b/charts/aiven-operator-crds/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: aiven-operator-crds description: A Helm chart to deploy the aiven operator custom resource definitions type: application -version: v0.4.0 -appVersion: v0.4.0 +version: v0.5.0 +appVersion: v0.5.0 maintainers: - name: mhoffm-aiven url: https://www.aiven.io diff --git a/charts/aiven-operator-crds/templates/aiven.io_clickhouses.yaml b/charts/aiven-operator-crds/templates/aiven.io_clickhouses.yaml index a69158c..a07bb9a 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_clickhouses.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_clickhouses.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: clickhouses.aiven.io spec: @@ -45,9 +44,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object cloudName: description: Cloud the service runs in. @@ -89,6 +85,19 @@ spec: format: ^[a-zA-Z0-9_-]*$ maxLength: 63 type: string + projectVPCRef: + description: ProjectVPCRef reference to ProjectVPC resource to use + its ID as ProjectVPCID automatically + properties: + name: + minLength: 1 + type: string + namespace: + minLength: 1 + type: string + required: + - name + type: object projectVpcId: description: Identifier of the VPC the service should be in, if any. maxLength: 36 @@ -132,7 +141,6 @@ spec: type: string type: object required: - - authSecretRef - project type: object status: @@ -221,9 +229,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_clickhouseusers.yaml b/charts/aiven-operator-crds/templates/aiven.io_clickhouseusers.yaml index 09025c2..5bb5e8c 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_clickhouseusers.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_clickhouseusers.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: clickhouseusers.aiven.io spec: @@ -55,9 +54,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object authentication: description: Authentication details @@ -84,7 +80,6 @@ spec: maxLength: 63 type: string required: - - authSecretRef - project - serviceName type: object @@ -174,9 +169,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_connectionpools.yaml b/charts/aiven-operator-crds/templates/aiven.io_connectionpools.yaml index 5119a97..f731db0 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_connectionpools.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_connectionpools.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: connectionpools.aiven.io spec: @@ -64,9 +63,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object connInfoSecretTarget: description: Information regarding secret creation @@ -106,7 +102,6 @@ spec: maxLength: 64 type: string required: - - authSecretRef - databaseName - project - serviceName @@ -122,13 +117,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -194,9 +188,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_databases.yaml b/charts/aiven-operator-crds/templates/aiven.io_databases.yaml index 9a1385e..fec422a 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_databases.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_databases.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: databases.aiven.io spec: @@ -52,9 +51,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object lcCollate: description: 'Default string sort order (LC_COLLATE) of the database. @@ -82,7 +78,6 @@ spec: data. type: boolean required: - - authSecretRef - project - serviceName type: object @@ -96,13 +91,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -168,9 +162,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_kafkaacls.yaml b/charts/aiven-operator-crds/templates/aiven.io_kafkaacls.yaml index cf11020..a817015 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_kafkaacls.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_kafkaacls.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: kafkaacls.aiven.io spec: @@ -61,9 +60,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object permission: description: Kafka permission to grant (admin, read, readwrite, write) @@ -89,7 +85,6 @@ spec: description: Username pattern for the ACL entry type: string required: - - authSecretRef - permission - project - serviceName @@ -106,13 +101,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -182,9 +176,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_kafkaconnectors.yaml b/charts/aiven-operator-crds/templates/aiven.io_kafkaconnectors.yaml index c086ab0..c41718d 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_kafkaconnectors.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_kafkaconnectors.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: kafkaconnectors.aiven.io spec: @@ -64,9 +63,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object connectorClass: description: The Java class of the connector. @@ -89,7 +85,6 @@ spec: }}`}} is provided when interpreting the keys type: object required: - - authSecretRef - connectorClass - project - serviceName @@ -105,13 +100,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -227,9 +221,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_kafkaconnects.yaml b/charts/aiven-operator-crds/templates/aiven.io_kafkaconnects.yaml index b840bb3..d89d2b4 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_kafkaconnects.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_kafkaconnects.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: kafkaconnects.aiven.io spec: @@ -49,9 +48,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object cloudName: description: Cloud the service runs in. @@ -84,6 +80,19 @@ spec: format: ^[a-zA-Z0-9_-]*$ maxLength: 63 type: string + projectVPCRef: + description: ProjectVPCRef reference to ProjectVPC resource to use + its ID as ProjectVPCID automatically + properties: + name: + minLength: 1 + type: string + namespace: + minLength: 1 + type: string + required: + - name + type: object projectVpcId: description: Identifier of the VPC the service should be in, if any. maxLength: 36 @@ -190,7 +199,6 @@ spec: type: integer type: object required: - - authSecretRef - project type: object status: @@ -203,13 +211,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -279,9 +286,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_kafkas.yaml b/charts/aiven-operator-crds/templates/aiven.io_kafkas.yaml index 80461e1..dfb18d2 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_kafkas.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_kafkas.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: kafkas.aiven.io spec: @@ -58,9 +57,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object cloudName: description: Cloud the service runs in. @@ -112,6 +108,19 @@ spec: format: ^[a-zA-Z0-9_-]*$ maxLength: 63 type: string + projectVPCRef: + description: ProjectVPCRef reference to ProjectVPC resource to use + its ID as ProjectVPCID automatically + properties: + name: + minLength: 1 + type: string + namespace: + minLength: 1 + type: string + required: + - name + type: object projectVpcId: description: Identifier of the VPC the service should be in, if any. maxLength: 36 @@ -659,7 +668,6 @@ spec: type: object type: object required: - - authSecretRef - project type: object status: @@ -672,13 +680,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -748,9 +755,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_kafkaschemas.yaml b/charts/aiven-operator-crds/templates/aiven.io_kafkaschemas.yaml index 1ff8958..464d566 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_kafkaschemas.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_kafkaschemas.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: kafkaschemas.aiven.io spec: @@ -61,9 +60,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object compatibilityLevel: description: Kafka Schemas compatibility level @@ -94,7 +90,6 @@ spec: maxLength: 63 type: string required: - - authSecretRef - project - schema - serviceName @@ -110,13 +105,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -186,9 +180,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_kafkatopics.yaml b/charts/aiven-operator-crds/templates/aiven.io_kafkatopics.yaml index 73ead10..506530b 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_kafkatopics.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_kafkatopics.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: kafkatopics.aiven.io spec: @@ -58,9 +57,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object config: description: Kafka topic configuration @@ -193,7 +189,6 @@ spec: data. type: boolean required: - - authSecretRef - partitions - project - replication @@ -209,13 +204,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -285,9 +279,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_opensearches.yaml b/charts/aiven-operator-crds/templates/aiven.io_opensearches.yaml index 0a5df2e..efa9525 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_opensearches.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_opensearches.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: opensearches.aiven.io spec: @@ -45,9 +44,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object cloudName: description: Cloud the service runs in. @@ -95,6 +91,19 @@ spec: format: ^[a-zA-Z0-9_-]*$ maxLength: 63 type: string + projectVPCRef: + description: ProjectVPCRef reference to ProjectVPC resource to use + its ID as ProjectVPCID automatically + properties: + name: + minLength: 1 + type: string + namespace: + minLength: 1 + type: string + required: + - name + type: object projectVpcId: description: Identifier of the VPC the service should be in, if any. maxLength: 36 @@ -494,7 +503,6 @@ spec: type: boolean type: object required: - - authSecretRef - project type: object status: @@ -507,13 +515,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -583,9 +590,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_postgresqls.yaml b/charts/aiven-operator-crds/templates/aiven.io_postgresqls.yaml index dd9c228..02ecfac 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_postgresqls.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_postgresqls.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: postgresqls.aiven.io spec: @@ -58,9 +57,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object cloudName: description: Cloud the service runs in. @@ -108,6 +104,19 @@ spec: format: ^[a-zA-Z0-9_-]*$ maxLength: 63 type: string + projectVPCRef: + description: ProjectVPCRef reference to ProjectVPC resource to use + its ID as ProjectVPCID automatically + properties: + name: + minLength: 1 + type: string + namespace: + minLength: 1 + type: string + required: + - name + type: object projectVpcId: description: Identifier of the VPC the service should be in, if any. maxLength: 36 @@ -617,7 +626,6 @@ spec: type: integer type: object required: - - authSecretRef - project type: object status: @@ -630,13 +638,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -706,9 +713,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_projects.yaml b/charts/aiven-operator-crds/templates/aiven.io_projects.yaml index ac1c8f1..8e3e754 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_projects.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_projects.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: projects.aiven.io spec: @@ -49,9 +48,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object billingAddress: description: Billing name and address of the project @@ -125,8 +121,6 @@ spec: type: string maxItems: 10 type: array - required: - - authSecretRef type: object status: description: ProjectStatus defines the observed state of Project @@ -226,9 +220,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_projectvpcs.yaml b/charts/aiven-operator-crds/templates/aiven.io_projectvpcs.yaml index a4fe87b..a16cc04 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_projectvpcs.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_projectvpcs.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: projectvpcs.aiven.io spec: @@ -58,9 +57,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object cloudName: description: Cloud the VPC is in @@ -76,7 +72,6 @@ spec: maxLength: 63 type: string required: - - authSecretRef - cloudName - networkCidr - project @@ -91,13 +86,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -171,9 +165,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_redis.yaml b/charts/aiven-operator-crds/templates/aiven.io_redis.yaml index 6a7c957..a10209f 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_redis.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_redis.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: redis.aiven.io spec: @@ -45,9 +44,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object cloudName: description: Cloud the service runs in. @@ -94,6 +90,19 @@ spec: format: ^[a-zA-Z0-9_-]*$ maxLength: 63 type: string + projectVPCRef: + description: ProjectVPCRef reference to ProjectVPC resource to use + its ID as ProjectVPCID automatically + properties: + name: + minLength: 1 + type: string + namespace: + minLength: 1 + type: string + required: + - name + type: object projectVpcId: description: Identifier of the VPC the service should be in, if any. maxLength: 36 @@ -298,7 +307,6 @@ spec: type: boolean type: object required: - - authSecretRef - project type: object status: @@ -311,13 +319,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -387,9 +394,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_serviceintegrations.yaml b/charts/aiven-operator-crds/templates/aiven.io_serviceintegrations.yaml index e6415a2..8f90f8a 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_serviceintegrations.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_serviceintegrations.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: serviceintegrations.aiven.io spec: @@ -65,9 +64,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object datadog: description: Datadog specific user configuration options @@ -205,7 +201,6 @@ spec: description: Source service for the integration (if any) type: string required: - - authSecretRef - integrationType - project type: object @@ -219,13 +214,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -295,9 +289,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator-crds/templates/aiven.io_serviceusers.yaml b/charts/aiven-operator-crds/templates/aiven.io_serviceusers.yaml index ee3668b..7692594 100644 --- a/charts/aiven-operator-crds/templates/aiven.io_serviceusers.yaml +++ b/charts/aiven-operator-crds/templates/aiven.io_serviceusers.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.2 creationTimestamp: null name: serviceusers.aiven.io spec: @@ -55,9 +54,6 @@ spec: name: minLength: 1 type: string - required: - - key - - name type: object authentication: description: Authentication details @@ -84,7 +80,6 @@ spec: maxLength: 63 type: string required: - - authSecretRef - project - serviceName type: object @@ -98,13 +93,12 @@ spec: description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, - type FooStatus struct{ // Represents the observations of a - foo's current state. // Known .status.conditions.type are: - \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type - \ // +patchStrategy=merge // +listType=map // +listMapKey=type - \ Conditions []metav1.Condition `json:\"conditions,omitempty\" - patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` - \n // other fields }" + type FooStatus struct{ // Represents the observations of a foo's + current state. // Known .status.conditions.type are: \"Available\", + \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge + // +listType=map // +listMapKey=type Conditions []metav1.Condition + `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" + protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" properties: lastTransitionTime: description: lastTransitionTime is the last time the condition @@ -173,9 +167,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/charts/aiven-operator/Chart.yaml b/charts/aiven-operator/Chart.yaml index 7ebc9ef..fdd0fc2 100644 --- a/charts/aiven-operator/Chart.yaml +++ b/charts/aiven-operator/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: aiven-operator description: A Helm chart to deploy the aiven operator type: application -version: v0.4.1 -appVersion: v0.4.0 +version: v0.5.0 +appVersion: v0.5.0 maintainers: - name: mhoffm-aiven url: https://www.aiven.io diff --git a/charts/aiven-operator/templates/deployment.yaml b/charts/aiven-operator/templates/deployment.yaml index 82b7920..d6a0e06 100644 --- a/charts/aiven-operator/templates/deployment.yaml +++ b/charts/aiven-operator/templates/deployment.yaml @@ -37,16 +37,24 @@ spec: {{- toYaml .Values.securityContext | nindent 12 }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy }} - command: - - /manager - args: - - --enable-leader-election env: - -{{- if ( not .Values.webhooks.enabled ) }} - - name: ENABLE_WEBHOOKS - value: "false" -{{- end }} + {{- if and (.Values.defaultTokenSecret.name) (.Values.defaultTokenSecret.key)}} + - name: DEFAULT_AIVEN_TOKEN + valueFrom: + secretKeyRef: + key: {{ .Values.defaultTokenSecret.key }} + name: {{ .Values.defaultTokenSecret.name }} + {{- end }} + {{- if ( not .Values.webhooks.enabled ) }} + - name: ENABLE_WEBHOOKS + value: "false" + {{- end }} + command: + - /manager + args: + - --leader-elect={{ .Values.leaderElect }} + - --metrics-bind-address={{ .Values.metricsBindAddress }} + - --health-probe-bind-address={{ .Values.healthProbeBindAddress }} ports: - name: metrics @@ -76,17 +84,17 @@ spec: {{- if .Values.webhooks.enabled }} volumeMounts: - - mountPath: /tmp/k8s-webhook-server/serving-certs - name: webhook-server-cert - readOnly: true + - mountPath: /tmp/k8s-webhook-server/serving-certs + name: webhook-server-cert + readOnly: true {{- end }} {{- if .Values.webhooks.enabled }} volumes: - - name: webhook-server-cert - secret: - defaultMode: 420 - secretName: webhook-server-cert + - name: webhook-server-cert + secret: + defaultMode: 420 + secretName: webhook-server-cert {{- end }} {{- with .Values.nodeSelector }} diff --git a/charts/aiven-operator/values.yaml b/charts/aiven-operator/values.yaml index efeb9bc..97e1e71 100644 --- a/charts/aiven-operator/values.yaml +++ b/charts/aiven-operator/values.yaml @@ -6,6 +6,17 @@ replicaCount: 1 nameOverride: "" fullnameOverride: "" +metricsBindAddress: "" +healthProbeBindAddress: "" +leaderElect: true + +# Default Aiven Token secret +# Please create a secret before Aiven provider installation. +# It is expected to be in the same namespace where the Aiven +# operator will be installed and should contain a valid Aiven API Token. +defaultTokenSecret: + name: "" + key: "token" # webhhook configuration webhooks: