Uploaded image for project: 'OpenShift GitOps'
  1. OpenShift GitOps
  2. GITOPS-8491

Image Updater: support multi-sources containing both kustomize and helm

XMLWordPrintable

    • support multi-sources containing both kustomize and helm
    • M
    • False
    • Hide

      None

      Show
      None
    • False
    • In Progress
    • GITOPS-8807 - Argo CD image updater - General Availability
    • 0% To Do, 0% In Progress, 100% Done
    • Hide
      In previous versions, for a multi-source application containing both Kustomize and Helm sources and configured with git write-back, ArgoCD Image Updater may not be able to identify the primary source to be used for update operations, depending on the order of these sources. When the wrong source is used, the git write-back target file may be corrupted or emptied. With this enhancement, ArgoCD Image Updater will always be able to correctly identify the correct source in multi-source applications, and write the correct updates to the git write-back target file.
      Show
      In previous versions, for a multi-source application containing both Kustomize and Helm sources and configured with git write-back, ArgoCD Image Updater may not be able to identify the primary source to be used for update operations, depending on the order of these sources. When the wrong source is used, the git write-back target file may be corrupted or emptied. With this enhancement, ArgoCD Image Updater will always be able to correctly identify the correct source in multi-source applications, and write the correct updates to the git write-back target file.

      Epic Goal

      • Multi-source apps in general can work well with image updater. But when a multi-source app contains a kustomize source, a helm source, and a values source, image updater can get confused which source is the primary source used for writing updates. In such case, image updater should be enhanced to check the write-back configuration, in addition to app spec and status, in order to identify the correct primary source.

      Why is this important?

      • Users may configure their apps to contain both helm and kustomize, and configure the write-back to a particular source. This use case should be supported.

      Scenarios

      1. create a multi-source app containing helm source, kustomize source, and values source
      2. configure the write-back target to be the helm values fileĀ 
      3. verify that the helm source should be identified as the primary source, despite the first source being kustomize source
      4. also verify that a non-existing, or empty values file should still work, and image updater should create or populate the content with update params
      5. Note: if git write-back is configured without a target, image updater by default will write to the default target .argocd-source-<app-name>. This case is not affected by this issue.
      6. This issue is for the current master branch only. The legacy impl in master-annotation-based branch already works correctly.

      Other Considerations

      • multi-source applicaitons, kustomize applications, helm applications are supported
      • unit tests to validate the above merged
      • doc update mergedĀ 

      Definition of Ready

      • The epic has been broken down into stories. Stories have been scoped.
      • The epic has been stack ranked.

      Definition of Done

      • Code Complete:
        • All code has been written, reviewed, and approved.
      • Tested:
        • Unit tests have been written and passed.
        • Integration tests have been completed.
        • System tests have been conducted, and all critical bugs have been fixed.
        • Tested on OpenShift either upstream or downstream on a local build
      • Documentation:
        • User documentation or release notes have been written.
      • Build:
        • Code has been successfully built and integrated into the main repository / project
      • Review:
        • Code has been peer-reviewed and meets coding standards.
        • All acceptance criteria defined in the user story have been met.
        • Tested by reviewer on OpenShift
      • Deployment:
        • The feature has been deployed on OpenShift cluster for testing
      • Acceptance:
        • Product Manager or stakeholder has reviewed and accepted the work.

              cfang@redhat.com Cheng Fang
              cfang@redhat.com Cheng Fang
              Tangerine
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: