[[CUE]]で繰り返しは、forとリストを使う。forとリストの使い方は次の通り。 [List Comprehensions | CUE](https://cuelang.org/docs/tutorials/tour/expressions/listcomp/) [cue/spec.md at master · cuelang/cue · GitHub](https://github.com/cuelang/cue/blob/master/doc/ref/spec.md#comprehensions) ```cue a: [1, 2, 3, 4] b: [ for x in a if x > 1 { x+1 } ] // [3, 4, 5] c: { for x in a if x < 4 let y = 1 { "\(x)": x + y } } d: { "1": 2, "2": 3, "3": 4 } ``` 同じようにして、[[LitmusChaos]]のexperimentsを複数回指定する。 ```cue experiments: [ for i in [1, 2, 3, 4, 5] { name: "pod-cpu-hog" spec: components: env: [{ name: "TARGET_CONTAINER" value: "carts-db" }, { name: "CPU_CORES" value: "2" }, { name: "TOTAL_CHAOS_DURATION" value: "60" }] },] ``` cue exportすると以下のようになる。 ```yaml 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" - 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" - name: pod-cpu-hog spec: components: env: - name: TARGET_CONTAINER value: carts-db - name: CPU_CORES value: "2" - name: TOTAL_CHAOS_DURATION value: "60" ``` `[1, 2, 3, 4, 5]` の部分だけ切り出して共通化したいが、トップレベルに `repeats: [1,2,3,4,5]` を書いても、k8sの仕様ではRepeatsなんていうプロパティはないと怒られる。` [Introduce Litmus by yuuki · Pull Request #5 · ai4sre/microservices-demo · GitHub](https://github.com/ai4sre/microservices-demo/pull/5/commits/4bce194f4d8a5c2c99324fb104ae5d9a667cade5)