...
1apiVersion: v1
2kind: Namespace
3metadata:
4 name: sds
5 labels:
6 workload.edge.ncr.com: platform
7 platform.edge.ncr.com/component: nodeagent
8 annotations:
9 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
10 pallet.edge.ncr.com/name: nodeagent
11 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
12 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
13 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
14 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
15---
16apiVersion: v1
17kind: ResourceQuota
18metadata:
19 name: node-agent-critical-pods
20 namespace: sds
21 annotations:
22 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
23 pallet.edge.ncr.com/name: nodeagent
24 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
25 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
26 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
27 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
28 labels: {}
29spec:
30 hard:
31 pods: 100
32 scopeSelector:
33 matchExpressions:
34 - operator: In
35 scopeName: PriorityClass
36 values:
37 - system-node-critical
38 - system-cluster-critical
39---
40apiVersion: apiextensions.k8s.io/v1
41kind: CustomResourceDefinition
42metadata:
43 name: ienodes.dsds.edge.ncr.com
44 labels:
45 platform.edge.ncr.com/component: nodeagent
46 annotations:
47 controller-gen.kubebuilder.io/version: (unknown)
48 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
49 pallet.edge.ncr.com/name: nodeagent
50 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
51 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
52 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
53 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
54spec:
55 group: dsds.edge.ncr.com
56 names:
57 kind: IENode
58 listKind: IENodeList
59 plural: ienodes
60 shortNames:
61 - ien
62 - iens
63 singular: ienode
64 scope: Cluster
65 versions:
66 - name: v1
67 additionalPrinterColumns:
68 - name: Cluster Edge Id
69 type: string
70 priority: 1
71 jsonPath: .spec.clusterEdgeId
72 - name: Role
73 type: string
74 jsonPath: .spec.role
75 - name: Class
76 type: string
77 jsonPath: .spec.class
78 - name: Lane
79 type: string
80 jsonPath: .spec.lane
81 - name: Ready
82 type: string
83 jsonPath: .status.conditions[?(@.type=="Ready")].status
84 - name: Age
85 type: date
86 jsonPath: .metadata.creationTimestamp
87 - name: State
88 type: string
89 jsonPath: .status.conditions[?(@.type=="Ready")].reason
90 - name: Message
91 type: string
92 jsonPath: .status.conditions[?(@.type=="Ready")].message
93 schema:
94 openAPIV3Schema:
95 type: object
96 properties:
97 apiVersion:
98 type: string
99 description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
100 kind:
101 type: string
102 description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
103 metadata:
104 type: object
105 spec:
106 type: object
107 properties:
108 class:
109 type: string
110 enum:
111 - server
112 - touchpoint
113 clusterEdgeID:
114 type: string
115 lane:
116 type: string
117 network:
118 type: array
119 items:
120 type: object
121 properties:
122 addresses:
123 type: array
124 items:
125 type: string
126 dhcp4:
127 type: boolean
128 dhcp6:
129 type: boolean
130 gateway4:
131 type: string
132 gateway6:
133 type: string
134 macaddress:
135 type: string
136 required:
137 - dhcp4
138 - dhcp6
139 networkServices:
140 type: object
141 properties:
142 dnsServers:
143 type: array
144 items:
145 type: string
146 kubeVip:
147 type: string
148 ntpServers:
149 type: array
150 items:
151 type: string
152 role:
153 type: string
154 enum:
155 - worker
156 - controlplane
157 required:
158 - network
159 - role
160 status:
161 type: object
162 properties:
163 conditions:
164 type: array
165 items:
166 type: object
167 description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
168 properties:
169 type:
170 type: string
171 description: type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
172 maxLength: 316
173 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
174 status:
175 type: string
176 description: status of the condition, one of True, False, Unknown.
177 enum:
178 - "True"
179 - "False"
180 - Unknown
181 lastTransitionTime:
182 type: string
183 description: lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
184 format: date-time
185 message:
186 type: string
187 description: message is a human readable message indicating details about the transition. This may be an empty string.
188 maxLength: 32768
189 observedGeneration:
190 type: integer
191 description: observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
192 format: int64
193 minimum: 0
194 reason:
195 type: string
196 description: reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
197 maxLength: 1024
198 minLength: 1
199 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
200 required:
201 - lastTransitionTime
202 - message
203 - reason
204 - status
205 - type
206 inventory:
207 type: object
208 description: ResourceInventory contains a list of Kubernetes resource object references that have been applied.
209 properties:
210 entries:
211 type: array
212 description: Entries of Kubernetes resource object references.
213 items:
214 type: object
215 description: ResourceRef contains the information necessary to locate a resource within a cluster.
216 properties:
217 id:
218 type: string
219 description: ID is the string representation of the Kubernetes resource object's metadata, in the format '<namespace>_<name>_<group>_<kind>'.
220 v:
221 type: string
222 description: Version is the API version of the Kubernetes resource object's kind.
223 required:
224 - id
225 - v
226 served: true
227 storage: true
228 subresources:
229 status: {}
230---
231apiVersion: v1
232kind: ServiceAccount
233metadata:
234 name: nodeagent
235 namespace: sds
236 labels:
237 platform.edge.ncr.com/component: nodeagent
238 annotations:
239 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
240 pallet.edge.ncr.com/name: nodeagent
241 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
242 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
243 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
244 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
245---
246apiVersion: rbac.authorization.k8s.io/v1
247kind: ClusterRole
248metadata:
249 name: nodeagent
250 labels:
251 platform.edge.ncr.com/component: nodeagent
252 annotations:
253 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
254 pallet.edge.ncr.com/name: nodeagent
255 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
256 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
257 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
258 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
259rules:
260- resources:
261 - configmaps
262 - secrets
263 apiGroups:
264 - ""
265 verbs:
266 - get
267 - list
268 - watch
269- resources:
270 - daemonsets
271 apiGroups:
272 - apps
273 verbs:
274 - get
275 - list
276 - watch
277- resources:
278 - ienodes
279 apiGroups:
280 - dsds.edge.ncr.com
281 verbs:
282 - get
283 - list
284 - watch
285 - patch
286 - update
287- resources:
288 - ienodes/status
289 apiGroups:
290 - dsds.edge.ncr.com
291 verbs:
292 - get
293 - patch
294 - update
295- resources:
296 - customresourcedefinitions
297 apiGroups:
298 - apiextensions.k8s.io
299 verbs:
300 - get
301 - list
302 - watch
303- resources:
304 - nodes
305 apiGroups:
306 - ""
307 verbs:
308 - get
309 - list
310 - watch
311 - patch
312 - update
313---
314apiVersion: rbac.authorization.k8s.io/v1
315kind: ClusterRoleBinding
316metadata:
317 name: nodeagent
318 labels:
319 platform.edge.ncr.com/component: nodeagent
320 annotations:
321 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
322 pallet.edge.ncr.com/name: nodeagent
323 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
324 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
325 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
326 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
327roleRef:
328 name: nodeagent
329 kind: ClusterRole
330 apiGroup: rbac.authorization.k8s.io
331subjects:
332- name: nodeagent
333 namespace: sds
334 kind: ServiceAccount
335---
336apiVersion: v1
337kind: ConfigMap
338metadata:
339 name: nodeagent-plugins
340 namespace: sds
341 labels:
342 platform.edge.ncr.com/component: nodeagent
343 annotations:
344 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
345 pallet.edge.ncr.com/name: nodeagent
346 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
347 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
348 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
349 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
350data:
351 cniplugin: "true"
352 dhclient: "true"
353 grubstringupdater: "false"
354 iptables: "true"
355 netplan: "true"
356 nodepatcher: "true"
357 ntp: "true"
358 osuserpasswordupdater: "false"
359 remoteagentconfig: "false"
360 suspendAll: "false"
361 thinclientconfig: "false"
362 thinclientconfigmapwatcher: "false"
363 thinclientsecretwatcher: "false"
364 networking: "false"
365 ntpconfiguration: "false"
366---
367apiVersion: v1
368kind: ConfigMap
369metadata:
370 name: remote-agent-configuration
371 namespace: sds
372 labels:
373 platform.edge.ncr.com/component: nodeagent
374 annotations:
375 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
376 pallet.edge.ncr.com/name: nodeagent
377 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
378 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
379 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
380 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
381data:
382 config.yaml.tpl: |
383 provider: "{{ "{{ .Provider }}" }}"
384
385 subscriptions:
386 - name: "sub.{{ "{{ .StoreID }}" }}.dsds-ea-request"
387 bannerID: "{{ "{{ .BannerID }}" }}"
388 storeID: "{{ "{{ .StoreID }}" }}"
389 terminalID: "{{ "{{ .TerminalID }}" }}"
390 CredentialsPath: "{{ "{{ .CredentialsPath }}" }}"
391 handler:
392 ResponseTopic: "topic.dsds-ea-response"
393 Type: "cli"
394 key.json: |
395 {{ .adcKey | toString }}
396---
397apiVersion: apps/v1
398kind: DaemonSet
399metadata:
400 name: nodeagent
401 namespace: sds
402 labels:
403 platform.edge.ncr.com/component: nodeagent
404 annotations:
405 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
406 pallet.edge.ncr.com/name: nodeagent
407 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
408 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
409 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
410 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
411spec:
412 selector:
413 matchLabels:
414 platform.edge.ncr.com/component: nodeagent
415 template:
416 metadata:
417 labels:
418 platform.edge.ncr.com/component: nodeagent
419 annotations:
420 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
421 pallet.edge.ncr.com/name: nodeagent
422 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
423 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
424 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
425 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
426 spec:
427 serviceAccountName: nodeagent
428 automountServiceAccountToken: true
429 priorityClassName: system-node-critical
430 containers:
431 - name: nodeagent
432 image: us-east1-docker.pkg.dev/ret-edge-pltf-infra/workloads/nodeagent@sha256:5b3f78c3acacc87ec0c372b3a52e239c6167669f94f361c85c31fc3ae3370543
433 args: ["pluginsconfigmap", "sds/nodeagent-plugins"]
434 env:
435 - name: HOSTNAME
436 valueFrom:
437 fieldRef:
438 fieldPath: spec.nodeName
439 resources:
440 limits:
441 cpu: "100m"
442 memory: "100Mi"
443 requests:
444 cpu: "50m"
445 memory: "100Mi"
446 imagePullPolicy: IfNotPresent
447 imagePullSecrets:
448 - name: edge-docker-pull-secret
449---
450apiVersion: external-secrets.io/v1beta1
451kind: ExternalSecret
452metadata:
453 name: ldkey
454 namespace: sds
455 labels:
456 platform.edge.ncr.com/component: nodeagent
457 annotations:
458 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
459 pallet.edge.ncr.com/name: nodeagent
460 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
461 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
462 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
463 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
464spec:
465 data:
466 - remoteRef:
467 key: edge-backend-launch-darkly-sdk-key
468 secretKey: LD_KEY
469 refreshInterval: 1m
470 secretStoreRef:
471 name: gcp-provider
472 kind: ClusterSecretStore
473 target:
474 name: ldkey
475 creationPolicy: Owner
476---
477apiVersion: external-secrets.io/v1beta1
478kind: ExternalSecret
479metadata:
480 name: remote-agent-configuration
481 namespace: sds
482 labels:
483 platform.edge.ncr.com/component: nodeagent
484 annotations:
485 pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
486 pallet.edge.ncr.com/name: nodeagent
487 pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
488 pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
489 pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
490 pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
491spec:
492 data:
493 - remoteRef:
494 key: remotecli-${cluster_uuid}-gcp-api-key
495 secretKey: adcKey
496 refreshInterval: 1h
497 secretStoreRef:
498 name: gcp-provider
499 kind: ClusterSecretStore
500 target:
501 template:
502 engineVersion: v2
503 templateFrom:
504 - configMap:
505 name: remote-agent-configuration
506 items:
507 - key: key.json
508 - key: config.yaml.tpl
509 creationPolicy: Owner
View as plain text