PluginProbe
Code Block Pro – Beautiful Syntax Highlighting / 1.13.0
Code Block Pro – Beautiful Syntax Highlighting v1.13.0
1.27.1 1.27.2 1.27.3 1.27.4 1.27.5 1.27.6 1.27.7 1.28.0 1.3.0 1.4.0 1.5.0 1.5.1 1.5.2 1.6.0 1.7.0 1.8.0 1.9.0 1.9.1 1.9.2 1.9.3 trunk 1.1.0 1.10.0 1.11.0 1.11.1 All 63 releases
code-block-pro / build / shiki / samples / cue.sample

cue.sample in Code Block Pro – Beautiful Syntax Highlighting 1.13.0, at build/shiki/samples/cue.sample

109 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 package kube
2
3 service: [ID=_]: {
4 apiVersion: "v1"
5 kind: "Service"
6 metadata: {
7 name: ID
8 labels: {
9 app: ID // by convention
10 domain: "prod" // always the same in the given files
11 component: #Component // varies per directory
12 }
13 }
14 spec: {
15 // Any port has the following properties.
16 ports: [...{
17 port: int
18 protocol: *"TCP" | "UDP" // from the Kubernetes definition
19 name: string | *"client"
20 }]
21 selector: metadata.labels // we want those to be the same
22 }
23 }
24
25 deployment: [ID=_]: {
26 apiVersion: "apps/v1"
27 kind: "Deployment"
28 metadata: name: ID
29 spec: {
30 // 1 is the default, but we allow any number
31 replicas: *1 | int
32 template: {
33 metadata: labels: {
34 app: ID
35 domain: "prod"
36 component: #Component
37 }
38 // we always have one namesake container
39 spec: containers: [{name: ID}]
40 }
41 }
42 }
43
44 #Component: string
45
46 daemonSet: [ID=_]: _spec & {
47 apiVersion: "apps/v1"
48 kind: "DaemonSet"
49 _name: ID
50 }
51
52 statefulSet: [ID=_]: _spec & {
53 apiVersion: "apps/v1"
54 kind: "StatefulSet"
55 _name: ID
56 }
57
58 deployment: [ID=_]: _spec & {
59 apiVersion: "apps/v1"
60 kind: "Deployment"
61 _name: ID
62 spec: replicas: *1 | int
63 }
64
65 configMap: [ID=_]: {
66 metadata: name: ID
67 metadata: labels: component: #Component
68 }
69
70 _spec: {
71 _name: string
72
73 metadata: name: _name
74 metadata: labels: component: #Component
75 spec: selector: {}
76 spec: template: {
77 metadata: labels: {
78 app: _name
79 component: #Component
80 domain: "prod"
81 }
82 spec: containers: [{name: _name}]
83 }
84 }
85
86 // Define the _export option and set the default to true
87 // for all ports defined in all containers.
88 _spec: spec: template: spec: containers: [...{
89 ports: [...{
90 _export: *true | false // include the port in the service
91 }]
92 }]
93
94 for x in [deployment, daemonSet, statefulSet] for k, v in x {
95 service: "\(k)": {
96 spec: selector: v.spec.template.metadata.labels
97
98 spec: ports: [
99 for c in v.spec.template.spec.containers
100 for p in c.ports
101 if p._export {
102 let Port = p.containerPort // Port is an alias
103 port: *Port | int
104 targetPort: *Port | int
105 },
106 ]
107 }
108 }
109