Uploaded image for project: 'OpenShift Windows Containers'
  1. OpenShift Windows Containers
  2. WINC-1609

Fix and merge OCP-71173: Test proxy connectivity from Windows nodes behind proxy

XMLWordPrintable

    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • False
    • None
    • None
    • None
    • None

      Background

      Original work from Jan 2024 (OCPQE-19088) to automate Polarion test case OCP-71173. PR #15762 was created in April 2024 but closed due to staleness without being merged.

      Related Issues:

      Test Objective

      Verify that Windows nodes correctly handle proxy configuration including:

      1. NO_PROXY environment variable is properly formatted (comma-separated)
      2. Dynamic proxy configuration changes trigger WMCO reboot
      3. Updated NO_PROXY values propagate to Windows nodes
      4. HTTP/HTTPS traffic works through proxy
      5. Load balancer traffic works (bypasses proxy via NO_PROXY)

      Issues Found in Existing Code

      Critical Issues:

      1. Undefined variable (line ~17): Uses noProxy instead of noProxyEnv
        updatedNoProxy := noProxy + "," + newNoProxy  // noProxy is undefined
        
      2. Duplicate nested loop (lines ~38-50): Same for loop is nested inside itself - copy-paste error
        for _, host := range windowsHosts {
            // ... code ...
            for _, host := range windowsHosts {  // DUPLICATE!
                // ... same code again ...
            }
        }
        
      3. Missing helper function: extractStatusCode referenced in testTraffic but not defined in the PR
      4. Hard-coded node count: Assumes exactly 2 Windows nodes
        waitWindowsNodesReady(oc, 2, 6*time.Minute)
        

      Test Failures:

      • CI failures in debug-winc-gcp-ipi and debug-winc-aws-ipi
      • PR needs rebase on current master

      Work Required

      1. Fix code issues:
        • Fix undefined variable reference
        • Remove duplicate nested loop
        • Implement or import extractStatusCode function
        • Make node count dynamic using len(windowsHosts)
      2. Rebase and update:
        • Rebase branch on current master
        • Update test to follow current framework patterns
        • Add proper error messages and logging
      3. Testing:
        • Test on AWS IPI with proxy
        • Test on GCP IPI with proxy
        • Verify on different OCP versions
      4. Documentation:
        • Update Polarion test case status
        • Link automation to test case

      Acceptance Criteria

      • [ ] Code issues fixed
      • [ ] PR passes CI on AWS and GCP
      • [ ] Test validates all proxy scenarios
      • [ ] Test is merged to master
      • [ ] Polarion OCP-71173 marked as automated

              rrasouli Aharon Rasouli
              rrasouli Aharon Rasouli
              None
              None
              None
              None
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: