Skip to content

Commit 459462b

Browse files
authored
[Feature] Scheduler Types (#1730)
1 parent 367e59f commit 459462b

File tree

143 files changed

+22640
-1474
lines changed

Some content is hidden

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

143 files changed

+22640
-1474
lines changed

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
- (Feature) (Networking) Endpoints Destination
3535
- (Improvement) Improve Metrics Handling
3636
- (Feature) (Scheduler) Create Integration Profile
37+
- (Feature) (Scheduler) Additional types
3738

3839
## [1.2.42](https://github.com/arangodb/kube-arangodb/tree/1.2.42) (2024-07-23)
3940
- (Maintenance) Go 1.22.4 & Kubernetes 1.29.6 libraries

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -911,7 +911,7 @@ CRDS:=apps-job \
911911
database-clustersynchronization database-deployment database-member database-task \
912912
replication-deploymentreplication \
913913
ml-storage ml-extension ml-job-batch ml-job-cron \
914-
scheduler-profile \
914+
scheduler-profile scheduler-pod scheduler-deployment scheduler-batchjob scheduler-cronjob \
915915
analytics-graphanalyticsengine \
916916
networking-route
917917

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ Flags:
182182
--kubernetes.max-batch-size int Size of batch during objects read (default 256)
183183
--kubernetes.qps float32 Number of queries per second for k8s API (default 15)
184184
--log.format string Set log format. Allowed values: 'pretty', 'JSON'. If empty, default format is used (default "pretty")
185-
--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, http, inspector, integration-config-v1, integration-envoy-auth-v3, integrations, k8s-client, kubernetes-informer, monitor, networking-route-operator, operator, operator-arangojob-handler, operator-v2, operator-v2-event, operator-v2-worker, panics, pod_compare, root, root-event-recorder, scheduler-profile-operator, server, server-authentication (default [info])
185+
--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, http, inspector, integration-config-v1, integration-envoy-auth-v3, integrations, k8s-client, kubernetes-informer, monitor, networking-route-operator, operator, operator-arangojob-handler, operator-v2, operator-v2-event, operator-v2-worker, panics, pod_compare, root, root-event-recorder, scheduler-batchjob-operator, scheduler-cronjob-operator, scheduler-deployment-operator, scheduler-pod-operator, scheduler-profile-operator, server, server-authentication (default [info])
186186
--log.sampling If true, operator will try to minimize duplication of logging events (default true)
187187
--memory-limit uint Define memory limit for hard shutdown and the dump of goroutines. Used for testing
188188
--metrics.excluded-prefixes stringArray List of the excluded metrics prefixes
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerbatchjobs.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerBatchJob
9+
listKind: ArangoSchedulerBatchJobList
10+
plural: arangoschedulerbatchjobs
11+
singular: arangoschedulerbatchjob
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulercronjobs.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerCronJob
9+
listKind: ArangoSchedulerCronJobList
10+
plural: arangoschedulercronjobs
11+
singular: arangoschedulercronjob
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerdeployments.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerDeployment
9+
listKind: ArangoSchedulerDeploymentList
10+
plural: arangoschedulerdeployments
11+
singular: arangoschedulerdeployment
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerpods.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerPod
9+
listKind: ArangoSchedulerPodList
10+
plural: arangoschedulerpods
11+
singular: arangoschedulerpod
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}

chart/kube-arangodb-arm64/templates/crd/cluster-role.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,10 @@ rules:
6868
verbs: ["get", "list", "watch", "update", "delete"]
6969
resourceNames:
7070
- "arangoprofiles.scheduler.arangodb.com"
71+
- "arangoschedulerpods.scheduler.arangodb.com"
72+
- "arangoschedulerdeploymets.scheduler.arangodb.com"
73+
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
74+
- "arangoschedulercronjobs.scheduler.arangodb.com"
7175

7276
{{- end }}
7377
{{- end }}

chart/kube-arangodb-arm64/templates/scheduler-operator/role.yaml

+31
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,37 @@ rules:
1818
resources:
1919
- "arangoprofiles"
2020
- "arangoprofiles/status"
21+
- "arangoschedulerpods"
22+
- "arangoschedulerpods/status"
23+
- "arangoschedulerdeployments"
24+
- "arangoschedulerdeployments/status"
25+
- "arangoschedulerbatchjobs"
26+
- "arangoschedulerbatchjobs/status"
27+
- "arangoschedulercronjobs"
28+
- "arangoschedulercronjobs/status"
29+
verbs:
30+
- "*"
31+
- apiGroups:
32+
- ""
33+
resources:
34+
- "pods"
35+
- "pods/status"
36+
verbs:
37+
- "*"
38+
- apiGroups:
39+
- "apps"
40+
resources:
41+
- "deployments"
42+
- "deployments/status"
43+
verbs:
44+
- "*"
45+
- apiGroups:
46+
- "batch"
47+
resources:
48+
- "jobs"
49+
- "jobs/status"
50+
- "cronjobs"
51+
- "cronjobs/status"
2152
verbs:
2253
- "*"
2354
- apiGroups:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerbatchjobs.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerBatchJob
9+
listKind: ArangoSchedulerBatchJobList
10+
plural: arangoschedulerbatchjobs
11+
singular: arangoschedulerbatchjob
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulercronjobs.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerCronJob
9+
listKind: ArangoSchedulerCronJobList
10+
plural: arangoschedulercronjobs
11+
singular: arangoschedulercronjob
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerdeployments.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerDeployment
9+
listKind: ArangoSchedulerDeploymentList
10+
plural: arangoschedulerdeployments
11+
singular: arangoschedulerdeployment
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerpods.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerPod
9+
listKind: ArangoSchedulerPodList
10+
plural: arangoschedulerpods
11+
singular: arangoschedulerpod
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}

chart/kube-arangodb-enterprise-arm64/templates/crd/cluster-role.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,10 @@ rules:
6868
verbs: ["get", "list", "watch", "update", "delete"]
6969
resourceNames:
7070
- "arangoprofiles.scheduler.arangodb.com"
71+
- "arangoschedulerpods.scheduler.arangodb.com"
72+
- "arangoschedulerdeploymets.scheduler.arangodb.com"
73+
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
74+
- "arangoschedulercronjobs.scheduler.arangodb.com"
7175

7276
{{- end }}
7377
{{- end }}

chart/kube-arangodb-enterprise-arm64/templates/scheduler-operator/role.yaml

+31
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,37 @@ rules:
1818
resources:
1919
- "arangoprofiles"
2020
- "arangoprofiles/status"
21+
- "arangoschedulerpods"
22+
- "arangoschedulerpods/status"
23+
- "arangoschedulerdeployments"
24+
- "arangoschedulerdeployments/status"
25+
- "arangoschedulerbatchjobs"
26+
- "arangoschedulerbatchjobs/status"
27+
- "arangoschedulercronjobs"
28+
- "arangoschedulercronjobs/status"
29+
verbs:
30+
- "*"
31+
- apiGroups:
32+
- ""
33+
resources:
34+
- "pods"
35+
- "pods/status"
36+
verbs:
37+
- "*"
38+
- apiGroups:
39+
- "apps"
40+
resources:
41+
- "deployments"
42+
- "deployments/status"
43+
verbs:
44+
- "*"
45+
- apiGroups:
46+
- "batch"
47+
resources:
48+
- "jobs"
49+
- "jobs/status"
50+
- "cronjobs"
51+
- "cronjobs/status"
2152
verbs:
2253
- "*"
2354
- apiGroups:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerbatchjobs.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerBatchJob
9+
listKind: ArangoSchedulerBatchJobList
10+
plural: arangoschedulerbatchjobs
11+
singular: arangoschedulerbatchjob
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulercronjobs.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerCronJob
9+
listKind: ArangoSchedulerCronJobList
10+
plural: arangoschedulercronjobs
11+
singular: arangoschedulercronjob
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerdeployments.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerDeployment
9+
listKind: ArangoSchedulerDeploymentList
10+
plural: arangoschedulerdeployments
11+
singular: arangoschedulerdeployment
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apiextensions.k8s.io/v1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
name: arangoschedulerpods.scheduler.arangodb.com
5+
spec:
6+
group: scheduler.arangodb.com
7+
names:
8+
kind: ArangoSchedulerPod
9+
listKind: ArangoSchedulerPodList
10+
plural: arangoschedulerpods
11+
singular: arangoschedulerpod
12+
scope: Namespaced
13+
versions:
14+
- name: v1beta1
15+
schema:
16+
openAPIV3Schema:
17+
type: object
18+
x-kubernetes-preserve-unknown-fields: true
19+
served: true
20+
storage: true
21+
subresources:
22+
status: {}

0 commit comments

Comments
 (0)