Skip to content

Commit 595682d

Browse files
committed
[Feature] [Platform] Packer
1 parent d46095a commit 595682d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+2407
-1484
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
- (Feature) Parallel Executor
77
- (Feature) (Platform) Service Handler
88
- (Feature) (Platform) Service Handler Implementation
9+
- (Feature) (Platform) Packer
910

1011
## [1.2.49](https://github.com/arangodb/kube-arangodb/tree/1.2.49) (2025-06-17)
1112
- (Maintenance) Optimize go.mod

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ Flags:
204204
--kubernetes.qps float32 Number of queries per second for k8s API (default 32)
205205
--leader.label.skip Skips Leader Label for the Pod
206206
--log.format string Set log format. Allowed values: 'pretty', 'JSON'. If empty, default format is used (default "pretty")
207-
--log.level stringArray Set log levels in format <level> or <logger>=<level>. Possible loggers: action, agency, api-server, assertion, backup-operator, chaos-monkey, crd, deployment, deployment-ci, deployment-reconcile, deployment-replication, deployment-resilience, deployment-resources, deployment-storage, deployment-storage-pc, deployment-storage-service, generic-parent-operator, helm, http, inspector, installer, integration-authn-v1, integration-config-v1, integration-envoy-auth-v3, integration-envoy-auth-v3-impl-auth-bearer, integration-envoy-auth-v3-impl-auth-cookie, integration-envoy-auth-v3-impl-custom-openid, integration-envoy-auth-v3-impl-pass-mode, integration-meta-v1, integration-scheduler-v2, integration-storage-v1-s3, integration-storage-v2, integrations, k8s-client, kubernetes, kubernetes-access, kubernetes-client, kubernetes-informer, monitor, networking-route-operator, operator, operator-arangojob-handler, operator-v2, operator-v2-event, operator-v2-worker, panics, platform-chart-operator, platform-pod-shutdown, platform-service-operator, platform-storage-operator, pod_compare, root, root-event-recorder, scheduler-batchjob-operator, scheduler-cronjob-operator, scheduler-deployment-operator, scheduler-pod-operator, scheduler-profile-operator, server, server-authentication, webhook (default [info])
207+
--log.level stringArray Set log levels in format <level> or <logger>=<level>. Possible loggers: action, agency, api-server, assertion, backup-operator, chaos-monkey, crd, deployment, deployment-ci, deployment-reconcile, deployment-replication, deployment-resilience, deployment-resources, deployment-storage, deployment-storage-pc, deployment-storage-service, generic-parent-operator, helm, http, inspector, integration-authn-v1, integration-config-v1, integration-envoy-auth-v3, integration-envoy-auth-v3-impl-auth-bearer, integration-envoy-auth-v3-impl-auth-cookie, integration-envoy-auth-v3-impl-custom-openid, integration-envoy-auth-v3-impl-pass-mode, integration-meta-v1, integration-scheduler-v2, integration-storage-v1-s3, integration-storage-v2, integrations, k8s-client, kubernetes, kubernetes-access, kubernetes-client, kubernetes-informer, monitor, networking-route-operator, operator, operator-arangojob-handler, operator-v2, operator-v2-event, operator-v2-worker, panics, platform-chart-operator, platform-pod-shutdown, platform-service-operator, platform-storage-operator, pod_compare, root, root-event-recorder, scheduler-batchjob-operator, scheduler-cronjob-operator, scheduler-deployment-operator, scheduler-pod-operator, scheduler-profile-operator, server, server-authentication, webhook (default [info])
208208
--log.sampling If true, operator will try to minimize duplication of logging events (default true)
209209
--log.stdout If true, operator will log to the stdout (default true)
210210
--memory-limit uint Define memory limit for hard shutdown and the dump of goroutines. Used for testing

docs/api/ArangoPlatformChart.V1Alpha1.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@ title: ArangoPlatformChart V1Alpha1
1010

1111
### .spec.definition
1212

13-
Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.49/pkg/apis/platform/v1alpha1/chart_spec.go#L31)</sup>
13+
Type: `array` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.49/pkg/apis/platform/v1alpha1/chart_spec.go#L32)</sup>
1414

1515
Definition keeps the Chart base64 encoded definition
1616

1717
***
1818

1919
### .spec.overrides
2020

21-
Type: `Object` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.49/pkg/apis/platform/v1alpha1/chart_spec.go#L35)</sup>
21+
Type: `Object` <sup>[\[ref\]](https://github.com/arangodb/kube-arangodb/blob/1.2.49/pkg/apis/platform/v1alpha1/chart_spec.go#L36)</sup>
2222

2323
Overrides keeps the Chart overrides
2424

docs/cli/arangodb_operator.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ Flags:
8686
--kubernetes.qps float32 Number of queries per second for k8s API (default 32)
8787
--leader.label.skip Skips Leader Label for the Pod
8888
--log.format string Set log format. Allowed values: 'pretty', 'JSON'. If empty, default format is used (default "pretty")
89-
--log.level stringArray Set log levels in format <level> or <logger>=<level>. Possible loggers: action, agency, api-server, assertion, backup-operator, chaos-monkey, crd, deployment, deployment-ci, deployment-reconcile, deployment-replication, deployment-resilience, deployment-resources, deployment-storage, deployment-storage-pc, deployment-storage-service, generic-parent-operator, helm, http, inspector, installer, integration-authn-v1, integration-config-v1, integration-envoy-auth-v3, integration-envoy-auth-v3-impl-auth-bearer, integration-envoy-auth-v3-impl-auth-cookie, integration-envoy-auth-v3-impl-custom-openid, integration-envoy-auth-v3-impl-pass-mode, integration-meta-v1, integration-scheduler-v2, integration-storage-v1-s3, integration-storage-v2, integrations, k8s-client, kubernetes, kubernetes-access, kubernetes-client, kubernetes-informer, monitor, networking-route-operator, operator, operator-arangojob-handler, operator-v2, operator-v2-event, operator-v2-worker, panics, platform-chart-operator, platform-pod-shutdown, platform-service-operator, platform-storage-operator, pod_compare, root, root-event-recorder, scheduler-batchjob-operator, scheduler-cronjob-operator, scheduler-deployment-operator, scheduler-pod-operator, scheduler-profile-operator, server, server-authentication, webhook (default [info])
89+
--log.level stringArray Set log levels in format <level> or <logger>=<level>. Possible loggers: action, agency, api-server, assertion, backup-operator, chaos-monkey, crd, deployment, deployment-ci, deployment-reconcile, deployment-replication, deployment-resilience, deployment-resources, deployment-storage, deployment-storage-pc, deployment-storage-service, generic-parent-operator, helm, http, inspector, integration-authn-v1, integration-config-v1, integration-envoy-auth-v3, integration-envoy-auth-v3-impl-auth-bearer, integration-envoy-auth-v3-impl-auth-cookie, integration-envoy-auth-v3-impl-custom-openid, integration-envoy-auth-v3-impl-pass-mode, integration-meta-v1, integration-scheduler-v2, integration-storage-v1-s3, integration-storage-v2, integrations, k8s-client, kubernetes, kubernetes-access, kubernetes-client, kubernetes-informer, monitor, networking-route-operator, operator, operator-arangojob-handler, operator-v2, operator-v2-event, operator-v2-worker, panics, platform-chart-operator, platform-pod-shutdown, platform-service-operator, platform-storage-operator, pod_compare, root, root-event-recorder, scheduler-batchjob-operator, scheduler-cronjob-operator, scheduler-deployment-operator, scheduler-pod-operator, scheduler-profile-operator, server, server-authentication, webhook (default [info])
9090
--log.sampling If true, operator will try to minimize duplication of logging events (default true)
9191
--log.stdout If true, operator will log to the stdout (default true)
9292
--memory-limit uint Define memory limit for hard shutdown and the dump of goroutines. Used for testing

docs/cli/arangodb_operator_platform.md

Lines changed: 14 additions & 184 deletions
Original file line numberDiff line numberDiff line change
@@ -4,181 +4,6 @@ parent: Binaries
44
title: arangodb_operator_platform
55
---
66

7-
# ArangoDB Operator Platform Command
8-
9-
[START_INJECT]: # (arangodb_operator_platform_cmd)
10-
```
11-
Usage:
12-
arangodb_operator_platform [command]
13-
14-
Available Commands:
15-
completion Generate the autocompletion script for the specified shell
16-
help Help about any command
17-
package Release Package related operations
18-
registry Registry related operations
19-
service Service related operations
20-
21-
Flags:
22-
-h, --help help for arangodb_operator_platform
23-
-n, --namespace string Kubernetes Namespace (default "default")
24-
25-
Use "arangodb_operator_platform [command] --help" for more information about a command.
26-
```
27-
[END_INJECT]: # (arangodb_operator_platform_cmd)
28-
29-
# ArangoDB Operator Platform Registry Command
30-
31-
[START_INJECT]: # (arangodb_operator_platform_registry_cmd)
32-
```
33-
Registry related operations
34-
35-
Usage:
36-
arangodb_operator_platform registry [command]
37-
38-
Available Commands:
39-
install Manages the Chart Installation
40-
status Describes Charts Status
41-
42-
Flags:
43-
-h, --help help for registry
44-
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
45-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
46-
47-
Global Flags:
48-
-n, --namespace string Kubernetes Namespace (default "default")
49-
50-
Use "arangodb_operator_platform registry [command] --help" for more information about a command.
51-
```
52-
[END_INJECT]: # (arangodb_operator_platform_registry_cmd)
53-
54-
# ArangoDB Operator Platform Registry Install Command
55-
56-
[START_INJECT]: # (arangodb_operator_platform_registry_install_cmd)
57-
```
58-
Manages the Chart Installation
59-
60-
Usage:
61-
arangodb_operator_platform registry install [flags] [...charts]
62-
63-
Flags:
64-
-a, --all Runs on all items
65-
-h, --help help for install
66-
-o, --output string Output format. Allowed table, json, yaml (default "table")
67-
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
68-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
69-
-u, --upgrade Enable upgrade procedure
70-
71-
Global Flags:
72-
-n, --namespace string Kubernetes Namespace (default "default")
73-
```
74-
[END_INJECT]: # (arangodb_operator_platform_registry_install_cmd)
75-
76-
# ArangoDB Operator Platform Registry Status Command
77-
78-
[START_INJECT]: # (arangodb_operator_platform_registry_status_cmd)
79-
```
80-
Describes Charts Status
81-
82-
Usage:
83-
arangodb_operator_platform registry status [flags]
84-
85-
Flags:
86-
-h, --help help for status
87-
-o, --output string Output format. Allowed table, json, yaml (default "table")
88-
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
89-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
90-
91-
Global Flags:
92-
-n, --namespace string Kubernetes Namespace (default "default")
93-
```
94-
[END_INJECT]: # (arangodb_operator_platform_registry_status_cmd)
95-
96-
# ArangoDB Operator Platform Service Command
97-
98-
[START_INJECT]: # (arangodb_operator_platform_service_cmd)
99-
```
100-
Service related operations
101-
102-
Usage:
103-
arangodb_operator_platform service [command]
104-
105-
Available Commands:
106-
enable Manages Service Installation/Management
107-
enable-service Manages Service Installation/Management
108-
status Shows Service Status
109-
110-
Flags:
111-
-h, --help help for service
112-
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
113-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
114-
115-
Global Flags:
116-
-n, --namespace string Kubernetes Namespace (default "default")
117-
118-
Use "arangodb_operator_platform service [command] --help" for more information about a command.
119-
```
120-
[END_INJECT]: # (arangodb_operator_platform_service_cmd)
121-
122-
# ArangoDB Operator Platform Service Enable Command
123-
124-
[START_INJECT]: # (arangodb_operator_platform_service_enable_cmd)
125-
```
126-
Manages Service Installation/Management
127-
128-
Usage:
129-
arangodb_operator_platform service enable [flags] deployment name chart
130-
131-
Flags:
132-
-h, --help help for enable
133-
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
134-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
135-
-f, --values strings Chart values
136-
137-
Global Flags:
138-
-n, --namespace string Kubernetes Namespace (default "default")
139-
```
140-
[END_INJECT]: # (arangodb_operator_platform_service_enable_cmd)
141-
142-
# ArangoDB Operator Platform Service EnableService Command
143-
144-
[START_INJECT]: # (arangodb_operator_platform_service_enableservice_cmd)
145-
```
146-
Manages Service Installation/Management
147-
148-
Usage:
149-
arangodb_operator_platform service enable-service [flags] deployment chart
150-
151-
Flags:
152-
-h, --help help for enable-service
153-
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
154-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
155-
-f, --values strings Chart values
156-
157-
Global Flags:
158-
-n, --namespace string Kubernetes Namespace (default "default")
159-
```
160-
[END_INJECT]: # (arangodb_operator_platform_service_enableservice_cmd)
161-
162-
# ArangoDB Operator Platform Service Status Command
163-
164-
[START_INJECT]: # (arangodb_operator_platform_service_status_cmd)
165-
```
166-
Shows Service Status
167-
168-
Usage:
169-
arangodb_operator_platform service status [flags] deployment
170-
171-
Flags:
172-
-h, --help help for status
173-
-o, --output string Output format. Allowed table, json, yaml (default "table")
174-
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
175-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
176-
177-
Global Flags:
178-
-n, --namespace string Kubernetes Namespace (default "default")
179-
```
180-
[END_INJECT]: # (arangodb_operator_platform_service_status_cmd)
181-
1827
# ArangoDB Operator Platform Package Command
1838

1849
[START_INJECT]: # (arangodb_operator_platform_package_cmd)
@@ -190,14 +15,17 @@ Usage:
19015
19116
Available Commands:
19217
dump Dumps the current setup of the platform
18+
export Export the package in the ZIP Format
19+
import Imports the package from the ZIP format
19320
install Installs the specified setup of the platform
21+
merge Merges definitions into single file
19422
19523
Flags:
196-
-h, --help help for package
197-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
24+
-h, --help help for package
19825
19926
Global Flags:
200-
-n, --namespace string Kubernetes Namespace (default "default")
27+
--kubeconfig string Kubernetes Config File
28+
-n, --namespace string Kubernetes Namespace (default "default")
20129
20230
Use "arangodb_operator_platform package [command] --help" for more information about a command.
20331
```
@@ -213,11 +41,12 @@ Usage:
21341
arangodb_operator_platform package dump [flags]
21442
21543
Flags:
216-
-h, --help help for dump
44+
-h, --help help for dump
45+
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
21746
21847
Global Flags:
219-
-n, --namespace string Kubernetes Namespace (default "default")
220-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
48+
--kubeconfig string Kubernetes Config File
49+
-n, --namespace string Kubernetes Namespace (default "default")
22150
```
22251
[END_INJECT]: # (arangodb_operator_platform_package_dump_cmd)
22352

@@ -228,15 +57,16 @@ Global Flags:
22857
Installs the specified setup of the platform
22958
23059
Usage:
231-
arangodb_operator_platform package install [flags] package
60+
arangodb_operator_platform package install [flags] ... packages
23261
23362
Flags:
23463
-h, --help help for install
23564
--platform.endpoint string Platform Repository URL (default "https://arangodb-platform-prd-chart-registry.s3.amazonaws.com")
65+
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
23666
23767
Global Flags:
238-
-n, --namespace string Kubernetes Namespace (default "default")
239-
--platform.name string Kubernetes Platform Name (name of the ArangoDeployment)
68+
--kubeconfig string Kubernetes Config File
69+
-n, --namespace string Kubernetes Namespace (default "default")
24070
```
24171
[END_INJECT]: # (arangodb_operator_platform_package_install_cmd)
24272

go.mod

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ require (
5454
github.com/prometheus/prom2json v1.3.3
5555
github.com/robfig/cron v1.2.0
5656
github.com/rs/zerolog v1.33.0
57-
github.com/spf13/cobra v1.8.1
58-
github.com/spf13/pflag v1.0.5
57+
github.com/spf13/cobra v1.9.1
58+
github.com/spf13/pflag v1.0.6
5959
github.com/stretchr/testify v1.10.0
6060
golang.org/x/sync v0.12.0
6161
golang.org/x/sys v0.31.0
@@ -83,6 +83,7 @@ require (
8383
github.com/golang-jwt/jwt/v5 v5.2.2
8484
github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.1
8585
github.com/jedib0t/go-pretty/v6 v6.6.5
86+
github.com/regclient/regclient v0.8.3
8687
golang.org/x/oauth2 v0.28.0
8788
google.golang.org/genproto/googleapis/api v0.0.0-20250204164813-702378808489
8889
helm.sh/helm/v3 v3.17.3
@@ -124,6 +125,7 @@ require (
124125
github.com/docker/docker-credential-helpers v0.7.0 // indirect
125126
github.com/docker/go-connections v0.5.0 // indirect
126127
github.com/docker/go-metrics v0.0.1 // indirect
128+
github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7 // indirect
127129
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
128130
github.com/envoyproxy/protoc-gen-validate v1.1.0 // indirect
129131
github.com/evanphx/json-patch v5.9.0+incompatible // indirect
@@ -167,7 +169,7 @@ require (
167169
github.com/josharian/intern v1.0.0 // indirect
168170
github.com/json-iterator/go v1.1.12 // indirect
169171
github.com/kkdai/maglev v0.2.0 // indirect
170-
github.com/klauspost/compress v1.16.7 // indirect
172+
github.com/klauspost/compress v1.18.0 // indirect
171173
github.com/klauspost/cpuid/v2 v2.2.4 // indirect
172174
github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect
173175
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect
@@ -208,6 +210,7 @@ require (
208210
github.com/stretchr/objx v0.5.2 // indirect
209211
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
210212
github.com/ugorji/go/codec v1.2.11 // indirect
213+
github.com/ulikunitz/xz v0.5.12 // indirect
211214
github.com/x448/float16 v0.8.4 // indirect
212215
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
213216
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect

0 commit comments

Comments
 (0)