Skip to content

[Bugfix] Add missing ArangoDeployment ExternalAccess Managed Type definition #1818

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 11, 2025
Merged
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
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
- (Feature) (Platform) Inventory Cluster details
- (Feature) (Platform) CLI
- (Bugfix) Fix Condition name
- (Bugfix) Add missing ArangoDeployment ExternalAccess Managed Type definition

## [1.2.44](https://github.com/arangodb/kube-arangodb/tree/1.2.44) (2025-02-03)
- (Maintenance) Kubernetes 1.31.1 libraries
Expand Down
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -850,6 +850,7 @@ set-typed-api-version/%:
"$(ROOT)/pkg/apis/networking/" \
"$(ROOT)/pkg/apis/scheduler/" \
"$(ROOT)/pkg/upgrade/" \
"$(ROOT)/integrations/" \
| cut -d ':' -f 1 | sort | uniq \
| xargs -n 1 $(SED) -i "s#github.com/arangodb/kube-arangodb/pkg/generated/clientset/versioned/typed/$*/v[A-Za-z0-9]\+#github.com/arangodb/kube-arangodb/pkg/generated/clientset/versioned/typed/$*/v$(API_VERSION)#g"

Expand All @@ -869,6 +870,7 @@ set-api-version/%:
"$(ROOT)/pkg/apis/scheduler/" \
"$(ROOT)/pkg/apis/platform/" \
"$(ROOT)/pkg/upgrade/" \
"$(ROOT)/integrations/" \
| cut -d ':' -f 1 | sort | uniq \
| xargs -n 1 $(SED) -i "s#github.com/arangodb/kube-arangodb/pkg/apis/$*/v[A-Za-z0-9]\+#github.com/arangodb/kube-arangodb/pkg/apis/$*/v$(API_VERSION)#g"
@grep -rHn "DatabaseV[A-Za-z0-9]\+()" \
Expand All @@ -885,6 +887,7 @@ set-api-version/%:
"$(ROOT)/pkg/apis/scheduler/" \
"$(ROOT)/pkg/apis/platform/" \
"$(ROOT)/pkg/upgrade/" \
"$(ROOT)/integrations/" \
| cut -d ':' -f 1 | sort | uniq \
| xargs -n 1 $(SED) -i "s#DatabaseV[A-Za-z0-9]\+()\.#DatabaseV$(API_VERSION)().#g"
@grep -rHn "ReplicationV[A-Za-z0-9]\+()" \
Expand All @@ -901,6 +904,7 @@ set-api-version/%:
"$(ROOT)/pkg/apis/scheduler/" \
"$(ROOT)/pkg/apis/platform/" \
"$(ROOT)/pkg/upgrade/" \
"$(ROOT)/integrations/" \
| cut -d ':' -f 1 | sort | uniq \
| xargs -n 1 $(SED) -i "s#ReplicationV[A-Za-z0-9]\+()\.#ReplicationV$(API_VERSION)().#g"

Expand Down
26 changes: 14 additions & 12 deletions docs/api/ArangoDeployment.V1.md
Original file line number Diff line number Diff line change
Expand Up @@ -2987,15 +2987,15 @@ Possible Values:

### .spec.externalAccess.advertisedEndpoint

Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L58)</sup>
Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L59)</sup>

AdvertisedEndpoint is passed to the coordinators/single servers for advertising a specific endpoint

***

### .spec.externalAccess.loadBalancerIP

Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L48)</sup>
Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L49)</sup>

LoadBalancerIP define optional IP used to configure a load-balancer on, in case of Auto or LoadBalancer type.
If you do not specify this setting, an IP will be chosen automatically by the load-balancer provisioner.
Expand All @@ -3004,7 +3004,7 @@ If you do not specify this setting, an IP will be chosen automatically by the lo

### .spec.externalAccess.loadBalancerSourceRanges

Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L55)</sup>
Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L56)</sup>

LoadBalancerSourceRanges define LoadBalancerSourceRanges used for LoadBalancer Service type
If specified and supported by the platform, this will restrict traffic through the cloud-provider
Expand All @@ -3018,7 +3018,7 @@ Links:

### .spec.externalAccess.managedServiceNames

Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L62)</sup>
Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L63)</sup>

ManagedServiceNames keeps names of services which are not managed by KubeArangoDB.
It is only relevant when type of service is `managed`.
Expand All @@ -3027,7 +3027,7 @@ It is only relevant when type of service is `managed`.

### .spec.externalAccess.nodePort

Type: `integer` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L44)</sup>
Type: `integer` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L45)</sup>

NodePort define optional port used in case of Auto or NodePort type.
This setting is used when `spec.externalAccess.type` is set to `NodePort` or `Auto`.
Expand All @@ -3037,7 +3037,7 @@ If you do not specify this setting, a random port will be chosen automatically.

### .spec.externalAccess.type

Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L39)</sup>
Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L40)</sup>

Type specifies the type of Service that will be created to provide access to the ArangoDB deployment from outside the Kubernetes cluster.

Expand All @@ -3046,6 +3046,7 @@ Possible Values:
* `"None"` - limit access to application running inside the Kubernetes cluster.
* `"LoadBalancer"` - Create a Service of type LoadBalancer for the ArangoDB deployment.
* `"NodePort"` - Create a Service of type NodePort for the ArangoDB deployment.
* `"Managed"` - Manages only existing services.

***

Expand Down Expand Up @@ -5764,15 +5765,15 @@ Links:

### .spec.sync.externalAccess.advertisedEndpoint

Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L58)</sup>
Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L59)</sup>

AdvertisedEndpoint is passed to the coordinators/single servers for advertising a specific endpoint

***

### .spec.sync.externalAccess.loadBalancerIP

Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L48)</sup>
Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L49)</sup>

LoadBalancerIP define optional IP used to configure a load-balancer on, in case of Auto or LoadBalancer type.
If you do not specify this setting, an IP will be chosen automatically by the load-balancer provisioner.
Expand All @@ -5781,7 +5782,7 @@ If you do not specify this setting, an IP will be chosen automatically by the lo

### .spec.sync.externalAccess.loadBalancerSourceRanges

Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L55)</sup>
Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L56)</sup>

LoadBalancerSourceRanges define LoadBalancerSourceRanges used for LoadBalancer Service type
If specified and supported by the platform, this will restrict traffic through the cloud-provider
Expand All @@ -5795,7 +5796,7 @@ Links:

### .spec.sync.externalAccess.managedServiceNames

Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L62)</sup>
Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L63)</sup>

ManagedServiceNames keeps names of services which are not managed by KubeArangoDB.
It is only relevant when type of service is `managed`.
Expand All @@ -5815,7 +5816,7 @@ If not set, this setting defaults to:

### .spec.sync.externalAccess.nodePort

Type: `integer` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L44)</sup>
Type: `integer` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L45)</sup>

NodePort define optional port used in case of Auto or NodePort type.
This setting is used when `spec.externalAccess.type` is set to `NodePort` or `Auto`.
Expand All @@ -5825,7 +5826,7 @@ If you do not specify this setting, a random port will be chosen automatically.

### .spec.sync.externalAccess.type

Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L39)</sup>
Type: `string` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.44/pkg/apis/deployment/v1/external_access_spec.go#L40)</sup>

Type specifies the type of Service that will be created to provide access to the ArangoDB deployment from outside the Kubernetes cluster.

Expand All @@ -5834,6 +5835,7 @@ Possible Values:
* `"None"` - limit access to application running inside the Kubernetes cluster.
* `"LoadBalancer"` - Create a Service of type LoadBalancer for the ArangoDB deployment.
* `"NodePort"` - Create a Service of type NodePort for the ArangoDB deployment.
* `"Managed"` - Manages only existing services.

***

Expand Down
3 changes: 2 additions & 1 deletion pkg/apis/deployment/v1/external_access_spec.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
//
// DISCLAIMER
//
// Copyright 2016-2024 ArangoDB GmbH, Cologne, Germany
// Copyright 2016-2025 ArangoDB GmbH, Cologne, Germany
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -36,6 +36,7 @@ type ExternalAccessSpec struct {
// +doc/enum: None|limit access to application running inside the Kubernetes cluster.
// +doc/enum: LoadBalancer|Create a Service of type LoadBalancer for the ArangoDB deployment.
// +doc/enum: NodePort|Create a Service of type NodePort for the ArangoDB deployment.
// +doc/enum: Managed|Manages only existing services.
Type *ExternalAccessType `json:"type,omitempty"`

// NodePort define optional port used in case of Auto or NodePort type.
Expand Down
3 changes: 2 additions & 1 deletion pkg/apis/deployment/v2alpha1/external_access_spec.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
//
// DISCLAIMER
//
// Copyright 2016-2024 ArangoDB GmbH, Cologne, Germany
// Copyright 2016-2025 ArangoDB GmbH, Cologne, Germany
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -36,6 +36,7 @@ type ExternalAccessSpec struct {
// +doc/enum: None|limit access to application running inside the Kubernetes cluster.
// +doc/enum: LoadBalancer|Create a Service of type LoadBalancer for the ArangoDB deployment.
// +doc/enum: NodePort|Create a Service of type NodePort for the ArangoDB deployment.
// +doc/enum: Managed|Manages only existing services.
Type *ExternalAccessType `json:"type,omitempty"`

// NodePort define optional port used in case of Auto or NodePort type.
Expand Down
4 changes: 4 additions & 0 deletions pkg/crd/crds/database-deployment.schema.generated.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6748,6 +6748,7 @@ v1:
- None
- LoadBalancer
- NodePort
- Managed
type: string
type: object
features:
Expand Down Expand Up @@ -12465,6 +12466,7 @@ v1:
- None
- LoadBalancer
- NodePort
- Managed
type: string
type: object
image:
Expand Down Expand Up @@ -23752,6 +23754,7 @@ v2alpha1:
- None
- LoadBalancer
- NodePort
- Managed
type: string
type: object
features:
Expand Down Expand Up @@ -29469,6 +29472,7 @@ v2alpha1:
- None
- LoadBalancer
- NodePort
- Managed
type: string
type: object
image:
Expand Down