redhat-cop / rhel-edge-automation-arch

RHEL for Edge Automation Deployment Architecture
Apache License 2.0
44 stars 33 forks source link

Added sync-wave annotations to apps #190

Closed jordigilh closed 2 years ago

jordigilh commented 2 years ago

Adds sync-wave annotations to the apps based on the following group order:

Sync wave 0
-------------------
Namespaces
Ansible-runner
CatalogSource
RBAC
User Workload Monitoring
User Management

Sync wave 1
------------------- 
Operators (ResourceLock, Openshift Pipelines, CNV, Quay, OCS)
CNV Hyperconverged
ODF/Noobaa chart
RFE-pipelines (Depends on RBAC, namespaces and Operator (openshift-pipelines))

Sync wave 2
--------------------
 Nexus (Depends on OCS for PVC and ansible runner for ansible-rfe image stream)
 Quay (Depends on OCS for PVC and ansible runner for ansible-rfe image stream)

Sync wave 3
-------------------
 Image Builder VM (Depends on RBAC, CNV, Nexus and ansible-rfe image stream)
Sync wave 4
-------------------
 HTTPD (Depends on namespaces, image-builder-vm and ansible-rfe image stream)

@sabre1041 @nasx take a look. I am looking at adding an additional status validation for the VM resource, I think it return sync'd even before the VMI pod is running. I had an accident with my cluster and I have to rebuild it, but once it's up I'll go ahead and test with this in the argocd.yaml:

    kubevirt.io/VirtualMachine:
      health.lua: |
        hs = {}
        if obj.status ~= nil then
          if obj.status.ready ~= nil then
            if obj.status.ready == "true" then
              hs.status = "Healthy"
              hs.message = obj.status.ready
              return hs
            end
          end
        end
        hs.status = "Progressing"
        hs.message = "Waiting for VM"
        return hs
jordigilh commented 2 years ago

closed as the changes here are included in #191