-
Notifications
You must be signed in to change notification settings - Fork 70
/
Copy pathenhanced-worker.yaml
83 lines (82 loc) · 2.55 KB
/
enhanced-worker.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# Code generated by KubeVela templates. DO NOT EDIT.
apiVersion: core.oam.dev/v1beta1
kind: ComponentDefinition
metadata:
name: enhanced-worker
annotations:
definition.oam.dev/description: "Describes long-running, scalable, containerized services that running at backend."
spec:
workload:
definition:
apiVersion: apps/v1
kind: Deployment
schematic:
cue:
template: |
output: {
// Deployment
apiVersion: "apps/v1"
kind: "Deployment"
metadata: {
name: context.name
}
spec: {
selector: matchLabels: {
"app": context.name
if parameter.addRevisionLabel {
"app.oam.dev/appRevision": context.appRevision
"app.oam.dev/component": context.name
}
}
template: {
metadata: {
labels: {
"app": context.name
if parameter.addRevisionLabel {
"app.oam.dev/appRevision": context.appRevision
"app.oam.dev/component": context.name
}
}
}
spec: {
serviceAccountName: "default"
terminationGracePeriodSeconds: parameter.podShutdownGracePeriodSeconds
restartPolicy: "Always"
containers: [{
name: context.name
image: parameter.image
if parameter.cmd != _|_ {
command: parameter.cmd
}
if parameter.env != _|_ {
env: [
for k, v in parameter.env {
name: k
value: v
},
]
}
resources: {
requests: {
if parameter.cpu != _|_ {
cpu: parameter.cpu
}
if parameter.memory != _|_ {
memory: parameter.memory
}
}
}
}]
}
}
}
}
parameter: {
image: string
podShutdownGracePeriodSeconds: *30 | int
addRevisionLabel: *false | bool
cmd?: [...string]
env?: [string]: string
cpu?: string
memory?: string
}