Skip to content

Commit 6c0cc93

Browse files
zhhrayhuizhang
andauthored
crd and docs update (#103)
* upgrade hlem to v3.6.1 * upgrade go version to 1.16 * update helmrequest crd * update docs Co-authored-by: huizhang <[email protected]>
1 parent 63cf1ab commit 6c0cc93

File tree

14 files changed

+825
-231
lines changed

14 files changed

+825
-231
lines changed

artifacts/all/deploy.yaml

Lines changed: 179 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,112 +1,213 @@
11
---
2-
apiVersion: apiextensions.k8s.io/v1beta1
2+
apiVersion: apiextensions.k8s.io/v1
33
kind: CustomResourceDefinition
44
metadata:
55
name: helmrequests.app.alauda.io
66
spec:
77
group: app.alauda.io
8-
version: v1alpha1
8+
conversion:
9+
strategy: None
910
names:
1011
kind: HelmRequest
1112
listKind: HelmRequestList
1213
plural: helmrequests
1314
singular: helmrequest
1415
shortNames:
1516
- hr
16-
additionalPrinterColumns:
17+
- hrs
18+
scope: Namespaced
19+
versions:
20+
- name: v1alpha1
21+
additionalPrinterColumns:
1722
- name: Chart
1823
type: string
1924
description: The chart of this HelmRequest
20-
JSONPath: .spec.chart
25+
jsonPath: .spec.chart
2126
- name: Version
2227
type: string
2328
description: Version of this chart
24-
JSONPath: .spec.version
29+
jsonPath: .spec.version
2530
- name: Namespace
2631
type: string
2732
description: The namespace which the chart deployed to
28-
JSONPath: .spec.namespace
33+
jsonPath: .spec.namespace
2934
- name: AllCluster
3035
type: boolean
3136
description: Is this chart will be installed to all cluster
32-
JSONPath: .spec.installToAllClusters
37+
jsonPath: .spec.installToAllClusters
3338
- name: Phase
3439
type: string
3540
description: The phase of this HelmRequest
36-
JSONPath: .status.phase
41+
jsonPath: .status.phase
3742
- name: Age
3843
type: date
39-
JSONPath: .metadata.creationTimestamp
40-
scope: Namespaced
41-
subresources:
42-
status: {}
43-
validation:
44-
# openAPIV3Schema is the schema for validating custom objects.
45-
openAPIV3Schema:
46-
properties:
47-
spec:
48-
description: HelmRequestSpec defines the deploy info of a helm chart
49-
type: object
50-
required:
51-
- chart
52-
properties:
53-
chart:
54-
type: string
55-
description: Chart is a helm chart name ,in the format of <repo>/<chart>
56-
namespace:
57-
type: string
58-
description: Namespace is the namespace this chart will be installed to. If not set, consider it's metadata.namespace
59-
releaseName:
60-
type: string
61-
description: ReleaseName is the Release name. If not set, consider it's metadata.name
62-
clusterName:
63-
type: string
64-
description: ClusterName is the target cluster name, where this chart will be installed to. If not set, this chart will be installed to the current cluster.
65-
dependencies:
66-
type: array
67-
description: Dependencies defines the HelmRequest list this HelmRequest will depends to, it will wait for them to be Synced
68-
items:
44+
jsonPath: .metadata.creationTimestamp
45+
schema:
46+
openAPIV3Schema:
47+
properties:
48+
apiVersion:
49+
description: 'APIVersion defines the versioned schema of this representation
50+
of an object. Servers should convert recognized schemas to the latest
51+
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
52+
type: string
53+
kind:
54+
description: 'Kind is a string value representing the REST resource this
55+
object represents. Servers may infer this from the endpoint the client
56+
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
57+
type: string
58+
metadata:
59+
type: object
60+
spec:
61+
properties:
62+
chart:
63+
type: string
64+
clusterName:
65+
description: ClusterName is the cluster where the chart will be installed.
66+
If InstallToAllClusters=true, this field will be ignored
6967
type: string
70-
installToAllClusters:
71-
description: InstallToAllClusters decide if we want to install this chart to all cluster.
72-
type: boolean
73-
values:
74-
type: object
75-
nullable: true
76-
description: Values defines custom values for this chart
77-
version:
78-
type: string
79-
description: Version defines the chart version
80-
valuesFrom:
81-
type: array
82-
description: ValuesFrom defines the config file we want to ref to. In kubernetes, this will be ConfigMap/Secret
83-
items:
68+
dependencies:
69+
description: Dependencies is the dependencies of this HelmRequest,
70+
it's a list of there names THe dependencies must lives in the same
71+
namespace, and each of them must be in Synced status before we sync
72+
this HelmRequest
73+
items:
74+
type: string
75+
type: array
76+
installToAllClusters:
77+
description: InstallToAllClusters will install this chart to all available
78+
clusters, even the cluster was created after this chart. If this
79+
field is true, ClusterName will be ignored(useless)
80+
type: boolean
81+
namespace:
82+
description: Namespace is the namespace where the Release object will
83+
be lived in. Notes this should be used with the values defined in
84+
the chart, otherwise the install will failed
85+
type: string
86+
releaseName:
87+
description: ReleaseName is the Release name to be generated, default
88+
to HelmRequest.Name. If we want to manually install this chart to
89+
multi clusters, we may have different HelmRequest name(with cluster
90+
prefix or suffix) and same release name
91+
type: string
92+
values:
93+
description: Values represents a collection of chart values.
8494
type: object
85-
properties:
86-
configMapKeyRef:
87-
type: object
88-
required:
89-
- name
90-
description: ConfigMapKeyRef defines a ref to a ConfigMap(in the same namespace)
91-
properties:
92-
name:
93-
type: string
94-
key:
95-
type: string
96-
optional:
97-
type: boolean
98-
secretKeyRef:
99-
type: object
100-
required:
101-
- name
102-
description: SecretKeyRef defines a ref to a Secret(in the same namespace)
103-
properties:
104-
name:
105-
type: string
106-
key:
107-
type: string
108-
optional:
109-
type: boolean
95+
nullable: true
96+
x-kubernetes-preserve-unknown-fields: true
97+
valuesFrom:
98+
description: ValuesFrom represents values from ConfigMap/Secret...
99+
items:
100+
description: ValuesFromSource represents a source of values, only
101+
one of it's fields may be set
102+
properties:
103+
configMapKeyRef:
104+
description: ConfigMapKeyRef selects a key of a ConfigMap
105+
properties:
106+
key:
107+
description: The key to select.
108+
type: string
109+
name:
110+
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
111+
TODO: Add other useful fields. apiVersion, kind, uid?'
112+
type: string
113+
optional:
114+
description: Specify whether the ConfigMap or its key must
115+
be defined
116+
type: boolean
117+
required:
118+
- key
119+
type: object
120+
secretKeyRef:
121+
description: SecretKeyRef selects a key of a Secret
122+
properties:
123+
key:
124+
description: The key of the secret to select from. Must
125+
be a valid secret key.
126+
type: string
127+
name:
128+
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
129+
TODO: Add other useful fields. apiVersion, kind, uid?'
130+
type: string
131+
optional:
132+
description: Specify whether the Secret or its key must
133+
be defined
134+
type: boolean
135+
required:
136+
- key
137+
type: object
138+
type: object
139+
type: array
140+
version:
141+
type: string
142+
type: object
143+
status:
144+
properties:
145+
conditions:
146+
items:
147+
properties:
148+
lastProbeTime:
149+
description: Last time we probed the condition.
150+
format: date-time
151+
type: string
152+
nullable: true
153+
lastTransitionTime:
154+
description: Last time the condition transitioned from one status
155+
to another.
156+
format: date-time
157+
type: string
158+
nullable: true
159+
message:
160+
description: Human-readable message indicating details about
161+
last transition.
162+
type: string
163+
reason:
164+
description: Unique, one-word, CamelCase reason for the condition's
165+
last transition.
166+
type: string
167+
status:
168+
description: 'Status is the status of the condition. Can be
169+
True, False, Unknown. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions'
170+
type: string
171+
type:
172+
description: 'Type is the type of the condition. More info:
173+
https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions'
174+
type: string
175+
type: object
176+
type: array
177+
lastSpecHash:
178+
description: LastSpecHash store the has value of the synced spec,
179+
if this value not equal to the current one, means we need to do
180+
a update for the chart
181+
type: string
182+
notes:
183+
description: Notes is the contents from helm (after helm install successfully
184+
it will be printed to the console
185+
type: string
186+
phase:
187+
description: HelmRequestPhase is a label for the condition of a HelmRequest
188+
at the current time.
189+
type: string
190+
reason:
191+
description: Reason will store the reason why the HelmRequest deploy
192+
failed
193+
type: string
194+
syncedClusters:
195+
description: SyncedClusters will store the synced clusters if InstallToAllClusters
196+
is true
197+
items:
198+
type: string
199+
type: array
200+
version:
201+
description: Verions is the real version that installed
202+
type: string
203+
type: object
204+
required:
205+
- spec
206+
type: object
207+
served: true
208+
storage: true
209+
subresources:
210+
status: {}
110211
---
111212
apiVersion: apiextensions.k8s.io/v1beta1
112213
kind: CustomResourceDefinition
@@ -234,7 +335,7 @@ spec:
234335
fieldRef:
235336
apiVersion: v1
236337
fieldPath: metadata.namespace
237-
image: alaudapublic/captain:v1.3.1
338+
image: alaudapublic/captain:v1.4.0
238339
imagePullPolicy: IfNotPresent
239340
name: manager
240341
resources:

0 commit comments

Comments
 (0)