Skip to content

Conversation

sayboras
Copy link
Member

@sayboras sayboras commented Jan 16, 2025

Description

This is to cater for the case that SDS secret is ingested later when the
curl request is sent, applicable when secret-backend-k8s is enabled.

Fixes: #36998
Relates: #35513
Signed-off-by: Tam Mach tam.mach@cilium.io

Testing

Testing is done via the temp commit as per below

https://github.com/cilium/cilium/actions/runs/12806785932/job/35705984212?pr=37010

Subject: [PATCH] gha: Run client-egress-l7-set-header-port-range repeatedly
---
Index: .github/workflows/conformance-kind-proxy-embedded.yaml
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/.github/workflows/conformance-kind-proxy-embedded.yaml b/.github/workflows/conformance-kind-proxy-embedded.yaml
--- a/.github/workflows/conformance-kind-proxy-embedded.yaml	(revision e93f01819b8de2674ac969072c31b36ff9d369af)
+++ b/.github/workflows/conformance-kind-proxy-embedded.yaml	(revision 0c144d523be66c09081c215339d6f485b27d55cd)
@@ -27,7 +27,7 @@
   installation-and-connectivity:
     name: "Installation and Connectivity Test"
     runs-on: ubuntu-24.04
-    timeout-minutes: 45
+    timeout-minutes: 120
     env:
       job_name: "Installation and Connectivity Test"
     steps:
@@ -113,6 +113,21 @@
             --curl-parallel 3 \
             --junit-file "cilium-junits/${{ env.job_name }}.xml" --junit-property github_job_step="Run connectivity test"
 
+      - name: Run one test repeatedly
+        run: |
+          for i in {1..30}
+          do
+            kubectl -n kube-system rollout restart ds/cilium
+            cilium status --wait
+
+            echo "Running Cilium connectivity test iteration $i"
+            cilium connectivity test --test "client-egress-l7-set-header-port-range" -v --force-deploy
+            if [ $? -ne 0 ]; then
+              echo "Cilium connectivity test failed on iteration $i"
+              exit 1
+            fi
+          done
+
       - name: Features tested
         uses: ./.github/actions/feature-status
         with:

This is to cater for the case that SDS secret is ingested later when the
curl request is sent, applicable when secret-backend-k8s is enabled.

Relates: #36998
Relates: #35513
Signed-off-by: Tam Mach <tam.mach@cilium.io>
@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Jan 16, 2025
@sayboras sayboras added the release-note/ci This PR makes changes to the CI. label Jan 16, 2025
@github-actions github-actions bot added cilium-cli This PR contains changes related with cilium-cli and removed release-note/ci This PR makes changes to the CI. labels Jan 16, 2025
@sayboras sayboras added the release-note/ci This PR makes changes to the CI. label Jan 16, 2025
@maintainer-s-little-helper maintainer-s-little-helper bot removed the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Jan 16, 2025
@sayboras sayboras force-pushed the pr/tammach/retry-secret branch from 0c144d5 to e93f018 Compare January 16, 2025 11:50
@sayboras sayboras marked this pull request as ready for review January 16, 2025 11:50
@sayboras sayboras requested review from a team as code owners January 16, 2025 11:50
@sayboras sayboras requested review from bimmlerd and Artyop January 16, 2025 11:50
@sayboras
Copy link
Member Author

/test

Copy link
Contributor

@Artyop Artyop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Copy link
Member

@bimmlerd bimmlerd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Retrying via curl is sort of a big hammer which could mask some legitimate failures, but I guess it's difficult to wait for the relevant condition in a different way?

@maintainer-s-little-helper maintainer-s-little-helper bot added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Jan 16, 2025
@sayboras
Copy link
Member Author

Retrying via curl is sort of a big hammer which could mask some legitimate failures, but I guess it's difficult to wait for the relevant condition in a different way?

yes, right now we don't have a good way to verify if SDS is having the resource with the right version. It's possible with below steps, but need to give it a try.

  • Enable envoy admin endpoint in cilium (only supported in 1.16+)
  • Call /config_dump and check if required resource is available before the test
  • Run the test as usual

@sayboras sayboras added this pull request to the merge queue Jan 16, 2025
Merged via the queue into main with commit 3d75eba Jan 16, 2025
224 checks passed
@sayboras sayboras deleted the pr/tammach/retry-secret branch January 16, 2025 23:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cilium-cli This PR contains changes related with cilium-cli ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/ci This PR makes changes to the CI.
Projects
None yet
3 participants