pingidentity / helm-charts

Apache License 2.0
22 stars 31 forks source link

testFramework - Support multiple waitFor products in testSteps #203

Closed tsigle closed 3 years ago

tsigle commented 3 years ago

Currently, the testFramework.testSteps[*].waitFor config only allows for a single waitFor setting. Example:

  testSteps:
    - name: 01-wait-for-pingfederate-admin
      waitFor:
        pingfederate-admin:
          service: https
   - name: 02-wait-for-pingfederate-engine
     waitFor:
       pingfederate-engine:
         service: https

When there are 2 waitFor's together, we should be able to run them within same initContainer, with a definition like:

  testSteps:
    - name: 01-wait-for
      waitFor:
        pingfederate-admin:
          service: https
        pingfederate-engine:
          service: https

And in this case, it should create a couple of initContainers of:

  initContainers:
    - name: 01-wait-for-pingfederate-admin
      ...
    - name: 01-wait-for-pingfederate-engine
      ...

Although this is supported today with the values.yaml, the testFramework currently creates two init containers with the same names, which is not allowed (two initContainers with same name), example below:

  initContainers:
    - name: 01-wait-for
      ...
    - name: 01-wait-for
      ...