Skip to content

Commit aa08c5d

Browse files
[Feature] Add CRD generator for ArangoDeploymentReplication (#1015)
1 parent 10d2e4d commit aa08c5d

File tree

3 files changed

+86
-0
lines changed

3 files changed

+86
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
- (Bugfix) Fix License RAW value discovery
1919
- (Refactor) Optimize go.mod entries
2020
- (Feature) Add `ArangoLocalStorage` CRD auto-installer
21+
- (Feature) Add `ArangoDeploymentReplication` CRD auto-installer
2122

2223
## [1.2.13](https://github.com/arangodb/kube-arangodb/tree/1.2.13) (2022-06-07)
2324
- (Bugfix) Fix arangosync members state inspection

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ rules:
2121
- "arangoclustersynchronizations.database.arangodb.com"
2222
- "arangomembers.database.arangodb.com"
2323
- "arangotasks.database.arangodb.com"
24+
- "arangodeploymentreplications.replication.database.arangodb.com"
2425
- "arangobackups.backup.arangodb.com"
2526
- "arangobackuppolicies.backup.arangodb.com"
2627
- "arangojobs.apps.arangodb.com"
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
//
2+
// DISCLAIMER
3+
//
4+
// Copyright 2016-2022 ArangoDB GmbH, Cologne, Germany
5+
//
6+
// Licensed under the Apache License, Version 2.0 (the "License");
7+
// you may not use this file except in compliance with the License.
8+
// You may obtain a copy of the License at
9+
//
10+
// http://www.apache.org/licenses/LICENSE-2.0
11+
//
12+
// Unless required by applicable law or agreed to in writing, software
13+
// distributed under the License is distributed on an "AS IS" BASIS,
14+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
// See the License for the specific language governing permissions and
16+
// limitations under the License.
17+
//
18+
// Copyright holder is ArangoDB GmbH, Cologne, Germany
19+
//
20+
21+
package crd
22+
23+
import (
24+
apiextensions "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
25+
26+
"github.com/arangodb/kube-arangodb/pkg/util"
27+
)
28+
29+
func init() {
30+
registerCRDWithPanic("arangodeploymentreplications.replication.database.arangodb.com", crd{
31+
version: "1.0.1",
32+
spec: apiextensions.CustomResourceDefinitionSpec{
33+
Group: "replication.database.arangodb.com",
34+
Names: apiextensions.CustomResourceDefinitionNames{
35+
Plural: "arangodeploymentreplications",
36+
Singular: "arangodeploymentreplication",
37+
ShortNames: []string{
38+
"arangorepl",
39+
},
40+
Kind: "ArangoDeploymentReplication",
41+
ListKind: "ArangoDeploymentReplicationList",
42+
},
43+
Scope: apiextensions.NamespaceScoped,
44+
Versions: []apiextensions.CustomResourceDefinitionVersion{
45+
{
46+
Name: "v1",
47+
Schema: &apiextensions.CustomResourceValidation{
48+
OpenAPIV3Schema: &apiextensions.JSONSchemaProps{
49+
Type: "object",
50+
XPreserveUnknownFields: util.NewBool(true),
51+
},
52+
},
53+
Served: true,
54+
Storage: true,
55+
},
56+
{
57+
Name: "v1alpha",
58+
Schema: &apiextensions.CustomResourceValidation{
59+
OpenAPIV3Schema: &apiextensions.JSONSchemaProps{
60+
Type: "object",
61+
XPreserveUnknownFields: util.NewBool(true),
62+
},
63+
},
64+
Served: true,
65+
Storage: false,
66+
},
67+
{
68+
Name: "v2alpha1",
69+
Schema: &apiextensions.CustomResourceValidation{
70+
OpenAPIV3Schema: &apiextensions.JSONSchemaProps{
71+
Type: "object",
72+
XPreserveUnknownFields: util.NewBool(true),
73+
},
74+
},
75+
Served: true,
76+
Storage: false,
77+
Subresources: &apiextensions.CustomResourceSubresources{
78+
Status: &apiextensions.CustomResourceSubresourceStatus{},
79+
},
80+
},
81+
},
82+
},
83+
})
84+
}

0 commit comments

Comments
 (0)