Uploaded image for project: 'OpenShift Logging'
  1. OpenShift Logging
  2. LOG-6169

[k8s 1.30 and ocp 4.17] Upgrade LokiStack Log Storage Dependencies

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done-Errata
    • Icon: Major Major
    • None
    • None
    • Log Storage
    • False
    • None
    • False
    • NEW
    • NEW
    • Log Storage - Sprint 261

       

      On every release we need to take care to stay compatible on available Golang Builder and Kubernetes/OpenShift Go Modules. This card is dedicated to the hygiene tasks being executed once per release. Upgrades to consider:

      Golang Upgrades Go Modules Upgrades SDK upgrades
      • loki-operator
      • observatorium-api
      • opa-openshift
      • k8s.io/api
      • k8s.io/api-machinery
      • k8s.io/apiserver
      • k8s.io/client-go
      • k8s.io/component-base
      • openshift/api
      • openshift/library-go
      • sigs.k8s.io/controller-runtime
      • operator-sdk
         

      The table above provides a matching of the required repositories to upgrade separately (See sub-tasks). Instructions to consider:

      1. For Golang upgrades, the selected Golang version is the one used to build and release the kubernetes version used in the next OpenShift release (e.g. go1.20 used for k8s 1.26 and OpenShift 4.13)
        1. For all repositories spanning multiple releases (e.g. operands) we should consider keeping the go-directive in the go mod file to the previous Golang release (e.g. go 1.19). Sometimes it happens that the newest Golang compiler for the next OpenShift release is not officially released yet. Leaving the directive to the previous Golang release enables building active z-streams with their respective production golang compiler.
      2. For Go Modules upgrades:
        1. The client-go, api-machinery, apiserver modules should match the same k8s dependency used in the next OpenShift release (e.g. k8s 1.26 used for OpenShift 4.13)
        2. The openshift/api module should match the next OpenShift release branch (e.g. release-4.13)
        3. The controller-runtime module should match the operator-sdk recommendation. (See operator-sdk upgrade docs)
      3. For SDK upgrades:
        1. The Operator-SDK mandates a comprehensive upgrade documentation

      Developer Notes

      1. Link all Pull and Merge requests for accomplishing the upgrades in this single task and NOT on the subtasks.
      2. Consider that changing golang builders require changes on upstream repositories, the OpenShift release repository and midstream repositories

              Unassigned Unassigned
              ptsiraki@redhat.com Periklis Tsirakidis
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: