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

Investigate issues related to semver processing in image-updater

XMLWordPrintable

    • 5
    • False
    • None
    • False
    • GitOps Tangerine - Sprint 3264

      Description of Problem

      There are some issues related to semver processing in image-updater, reported by community members:
      1. indeterminstic sorting order between equivalent versions, such as 1.11.0 and 1.11 alias. Sometimes 1.11 is considered the latest version, and other times 1.11.0 is considered the latest version. This has caused image-updater (0.12.1 or before) to constantly update from 1.11 to 1.11.0, and then from 1.11.0 to 1.11. See the following community issues:
      https://github.com/argoproj-labs/argocd-image-updater/issues/736
      https://github.com/argoproj-labs/argocd-image-updater/issues/375
      https://github.com/argoproj-labs/argocd-image-updater/issues/508

      This issue was fixed in image-updater 0.13.0 or later with a workaround, but the ultimate fix is in the semver dependency:
      https://github.com/Masterminds/semver/pull/206

      Once the above PR is merged and included in a new release of semver, image-update should pick up that new release, and test it, and remove the workaround code.

      2. need to verify the processing of pre-release tags with semver constraint, with the following issue and PR
      https://github.com/argoproj-labs/argocd-image-updater/issues/556
      https://github.com/argoproj-labs/argocd-image-updater/pull/552

      update: added comments to https://github.com/argoproj-labs/argocd-image-updater/pull/552. The current behavior matches the docs and common expectation. Waiting for user feedback. As it stands now, no changes is needed.

      Additional Info

      Problem Reproduction

      • <How do we reproduce the problem?>

      Reproducibility

      • <Always/Intermittent/Only Once>

      Prerequisites/Environment

      • <OpenShift, managed service (e.g., ROSA, ARO), operators, layered product, and other software versions, build details>

      Steps to Reproduce

      • ...

      Expected Results

      the above 2 issues are investigated and resolved.

      Actual Results

      • ...

      Problem Analysis

      • <Completed by engineering team as part of the triage/refinement process>

      Root Cause

      • <What is the root cause of the problem? Or, why is it not a bug?>

      Workaround (If Possible)

      • <Are there any workarounds we can provide to the customers?>

      Fix Approaches

      • <If we decide to fix this bug, how will we do it?>

      Acceptance Criteria

      • ...

      Definition of Done

      • Code Complete:
        • All code has been written, reviewed, and approved.
      • Tested:
        • Unit tests have been written and passed.
        • Ensure code coverage is not reduced with the changes.
        • Integration tests have been automated.
        • System tests have been conducted, and all critical bugs have been fixed.
        • Tested and merged on OpenShift either upstream or downstream on a local build.
      • Documentation:
        • User documentation or release notes have been written (if applicable).
      • Build:
        • Code has been successfully built and integrated into the main repository / project.
        • Midstream changes (if applicable) are done, reviewed, approved and merged.
      • 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.

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

                Created:
                Updated:
                Resolved: