@@ -133,7 +133,7 @@ function build_image {
133
133
}
134
134
135
135
function healthcheck_enabled {
136
- [[ $( " ${KCTF_BIN} /yq" eval ' .spec.healthcheck.enabled' " ${CHALLENGE_DIR} /challenge.yaml" ) == " true" ]]
136
+ [[ $( " ${KCTF_BIN} /yq" eval ' select(.kind == "Challenge") | .spec.healthcheck.enabled' " ${CHALLENGE_DIR} /challenge.yaml" ) == " true" ]]
137
137
}
138
138
139
139
function build_images {
@@ -184,9 +184,9 @@ function kctf_chal_start {
184
184
push_images || return
185
185
186
186
# update challenge.yaml with the image urls
187
- " ${KCTF_BIN} /yq" eval " . spec.image = \" ${CHALLENGE_IMAGE_REMOTE} \" " --inplace " ${CHALLENGE_DIR} /challenge.yaml"
187
+ " ${KCTF_BIN} /yq" eval " select(.kind == \" Challenge \" ) | . spec.image = \" ${CHALLENGE_IMAGE_REMOTE} \" , select(.kind == \" Challenge \" | not) " --inplace " ${CHALLENGE_DIR} /challenge.yaml"
188
188
if healthcheck_enabled; then
189
- " ${KCTF_BIN} /yq" eval " . spec.healthcheck.image = \" ${HEALTHCHECK_IMAGE_REMOTE} \" " --inplace " ${CHALLENGE_DIR} /challenge.yaml"
189
+ " ${KCTF_BIN} /yq" eval " select(.kind == \" Challenge \" ) | . spec.healthcheck.image = \" ${HEALTHCHECK_IMAGE_REMOTE} \" , select(.kind == \" Challenge \" | not) " --inplace " ${CHALLENGE_DIR} /challenge.yaml"
190
190
fi
191
191
192
192
" ${KCTF_BIN} /kubectl" apply -f " ${CHALLENGE_DIR} /challenge.yaml" || return
@@ -549,7 +549,7 @@ function kctf_chal_list {
549
549
echo ' == challenges in repository =='
550
550
551
551
for challenge_yaml in $( find " ${KCTF_CTF_DIR} " -path " ${KCTF_CTF_DIR} /kctf" -prune -false -o -name " challenge.yaml" ) ; do
552
- challenge_name=$( ${KCTF_BIN} /yq eval " .metadata.name" " ${challenge_yaml} " )
552
+ challenge_name=$( ${KCTF_BIN} /yq eval " select(.kind == \" Challenge \" ) | .metadata.name" " ${challenge_yaml} " )
553
553
challenge_dir=$( realpath --relative-to " ${KCTF_CTF_DIR} " $( dirname " ${challenge_yaml} " ) )
554
554
if [[ " ${challenge_name} " == ${challenge_dir} ]]; then
555
555
echo " ${challenge_name} "
0 commit comments