diff --git a/.pipelines/cni/cilium/nightly-release-test.yml b/.pipelines/cni/cilium/nightly-release-test.yml index fe4b41a16f..83d8bfc538 100644 --- a/.pipelines/cni/cilium/nightly-release-test.yml +++ b/.pipelines/cni/cilium/nightly-release-test.yml @@ -174,6 +174,10 @@ stages: name: cilium_overlay_nightly clusterName: ciliumnightly steps: + - template: ../../templates/k8s-yaml-test.yaml + parameters: + clusterName: $(clusterName)-$(commitID) + - template: ../../templates/delete-cluster.yaml parameters: name: $(name) diff --git a/.pipelines/templates/delete-cluster.yaml b/.pipelines/templates/delete-cluster.yaml index f06f6d2173..66e0b62d49 100644 --- a/.pipelines/templates/delete-cluster.yaml +++ b/.pipelines/templates/delete-cluster.yaml @@ -18,3 +18,4 @@ steps: echo "Cluster and resources down" name: delete displayName: Delete - ${{ parameters.name }} + condition: always() diff --git a/.pipelines/templates/k8s-yaml-test.yaml b/.pipelines/templates/k8s-yaml-test.yaml new file mode 100644 index 0000000000..5045c141e9 --- /dev/null +++ b/.pipelines/templates/k8s-yaml-test.yaml @@ -0,0 +1,34 @@ +parameters: + clusterName: "" + +steps: + - task: AzureCLI@2 + inputs: + azureSubscription: $(BUILD_VALIDATIONS_SERVICE_CONNECTION) + scriptLocation: "inlineScript" + scriptType: "bash" + addSpnToEnvironment: true + inlineScript: | + make -C ./hack/aks set-kubeconf AZCLI=az CLUSTER=${{ parameters.clusterName }} + deployments="cilium-operator" + daemonsets="cilium|azure-cns|ip-masq" + + exit=0 + for ds in $(kubectl get ds -n kube-system | grep -E $daemonsets | awk '{print $1}'); do + if ! kubectl rollout restart ds -n kube-system $ds --warnings-as-errors=true; then + exit=1 + fi + done + + for deploy in $(kubectl get deploy -n kube-system | grep -E $deployments | awk '{print $1}'); do + if ! kubectl rollout restart deploy -n kube-system $deploy --warnings-as-errors=true; then + exit=1 + fi + done + + if [ ${exit} == 1 ]; then + echo "Warnings within maintained daemonsets/deployment need to be resolved." + exit 1 + fi + name: "k8syaml" + displayName: "Check k8s YAML"