既存のYAML設定から[[CUE]]をインポートしてみる。 [cue/doc/tutorial/kubernetes at master · cuelang/cue · GitHub](https://github.com/cuelang/cue/tree/master/doc/tutorial/kubernetes#importing-existing-configuration) に従う。 ```shell-session $ cd deploy/kubernetes/ $ cue mod init $ go mod init example.com ``` ```shell-session $ cd litmus/ $ cue import ./... ``` ドキュメントには、`must specify package name with the -p flag`と書かれているが、そのようなエラーは出力されなかった。 ```shell-session $ cat pod-cpu-hog.cue apiVersion: "litmuschaos.io/v1alpha1" kind: "ChaosEngine" metadata: { name: "carts-db-chaos" namespace: "sock-shop" } spec: { annotationCheck: "false" engineState: "active" monitoring: true appinfo: { appns: "sock-shop" // FYI, To see app label, apply kubectl get pods --show-labels // unique-label of the application under test (AUT) applabel: "name=carts-db" appkind: "deployment" } chaosServiceAccount: "sock-shop-chaos-engine" jobCleanUpPolicy: "delete" experiments: [{ name: "pod-cpu-hog" spec: components: env: [{ name: "TARGET_CONTAINER" value: "carts-db" }, { name: "CPU_CORES" value: "2" }, { name: "TOTAL_CHAOS_DURATION" value: "60" }] }, { // in seconds name: "pod-cpu-hog" spec: components: env: [{ name: "TARGET_CONTAINER" value: "carts-db" }, { name: "CPU_CORES" value: "2" }, { name: "TOTAL_CHAOS_DURATION" value: "60" }] }] } ``` ```yaml $ cue export --out yaml pod-cpu-hog.cue apiVersion: litmuschaos.io/v1alpha1 kind: ChaosEngine metadata: name: carts-db-chaos namespace: sock-shop spec: annotationCheck: "false" engineState: active monitoring: true appinfo: appns: sock-shop applabel: name=carts-db appkind: deployment chaosServiceAccount: sock-shop-chaos-engine jobCleanUpPolicy: delete experiments: - name: pod-cpu-hog spec: components: env: - name: TARGET_CONTAINER value: carts-db - name: CPU_CORES value: "2" - name: TOTAL_CHAOS_DURATION value: "60" - name: pod-cpu-hog spec: components: env: - name: TARGET_CONTAINER value: carts-db - name: CPU_CORES value: "2" - name: TOTAL_CHAOS_DURATION value: "60" ```