Uploaded image for project: 'OpenShift Service Mesh'
  1. OpenShift Service Mesh
  2. OSSM-8542

Align setup in all Kiali pipelines to use the same setup for istio and demo apps

XMLWordPrintable

    • Align setup in all Kiali pipelines
    • False
    • Hide

      None

      Show
      None
    • False
    • Done
    • 0% To Do, 0% In Progress, 100% Done

      With OSSM3, there are differences in the Istio control plane setup via OSSM3/Sail operator or in comparison to istioctl/ossm2 operator. ( no ingress gateway in istio-system, no addons like grafana or prometheus).
      Before we run Kiali tests (integration/cypress/ossmc), the Istio control plane and the demo apps are set up according to the pipeline.

      We run kiali tests in 3 pipelines/layers.

      1. Upstream main in GitHub CI (against Kind)
      2. Upstream main in our Jenkins CI (against Openshift) - nightly 
      3. Downstream pipeline (productized Kiali, e.g. v2.1) in Jenkins (against Openshift)

      We should adopt all pipelines to OSSM3/sail operator and align setup across all pipelines for easier maintenance (to not maintenance 3 different setups of istio) (when something gets wrong, it gets wrong everywhere and the following fix will be on one place) 

       

      =================================================================

      Upstream ticket: https://github.com/kiali/kiali/issues/7830 + downstream pipeline (most of it was done in https://issues.redhat.com/browse/OSSM-8000)

      =================================================================
      More context:

      Initial work to switch from istioctl to sail operator for kiali integration test was done by this PR: https://github.com/kiali/kiali/pull/7876
      So right now, for kiali integration tests, the istio is installed by sail operator and demo apps are installed by `./install-testing-demos.sh -gw true` ( thanks to that, the istio gateway is created in bookinfo app via GatewayAPI. Some tests needed to be updated [

      • to not expect istio-ingressgateway in istio-system
      • usage of different kind, instead of `networking.istio.io/v1alpha3 Gateway` and `networking.istio.io/v1alpha3 VirtualService`, the `gateway.networking.k8s.io/v1beta1 Gateway` and `gateway.networking.k8s.io/v1beta1 HTTPRoute` are used in Gateway API ]
        • Some tests will need to be updated + some new test to explicitly test VirtualService in cypress test too

      So we need to do this for cypress/ossmc tests as well (adapt test on newer configuration installed via Gateway API (+ add gateway api to the other demo apps if needed), install via sail operator in github CI) and propagate that CI changes to Jenkins pipeline as well. (change install-istio job to use sail operator as in upstream ci)

      =================================================================
      Current status:

      Kiali integration tests:

      1. Upstream main in GitHub CI
        1. (already done by https://github.com/kiali/kiali/pull/7876)
      2. Upstream main in our Jenkins CI (against Openshift) - nightly 
        1. TODO, install-istio job needs to be updated to use sail operator instead of istioctl
      3. Downstream pipeline
        1. will be done by https://gitlab.cee.redhat.com/istio/servicemesh-qe/jenkins-csb-declaration/-/merge_requests/534

      Kiali Cypress tests:

      1. Upstream main in GitHub CI
        1. TODO, update upstream CI to install istio via sail operator, demo apps via `./install-testing-demos.sh -gw true` and adapt tests
      1. Upstream main in our Jenkins CI (against Openshift) - nightly 
        1. TODO, install-istio job needs to be updated to use sail operator instead of istioctl (tests will be updated in previous step)
      2. Downstream pipeline
        1. will be done by https://gitlab.cee.redhat.com/istio/servicemesh-qe/jenkins-csb-declaration/-/merge_requests/534 however, until the test suite is adapted to new config, that affected tests will be failing

      Kiali OSSMC tests:

      1. Upstream main in GitHub CI
        1. TODO, update upstream CI to install istio via sail operator (``), demo apps via `./install-testing-demos.sh -gw true` and adapt tests
      1. Upstream main in our Jenkins CI (against Openshift) - nightly 
        1. TODO, install-istio job needs to be updated to use sail operator instead of istioctl (tests will be updated in previous step)
      1. Downstream pipeline
        1. will be done by https://gitlab.cee.redhat.com/istio/servicemesh-qe/jenkins-csb-declaration/-/merge_requests/534 however, until the test suite is adapted to new config, that affected tests will be failing

      =================================================================
      Acceptance Criteria:

      • istio control plane is installed by sail operator (upstream) / ossm operator (downstream) in all pipelines (and for all test suites)
      • Demo apps are installed via `./install-testing-demos.sh -gw true` script which set up the bookinfo gateway in the bookinfo app via Gateway API (probably it needs to be implemented for other demo apps as well)
      • All tests (integration, cypress, ossmc) are updated to not expect istio-ingressgateway in istio-system project
      • All tests (integration, cypress, ossmc) are updated to expect demo app set up via GatewayAPI ( e.g. HTTPRoute instead of VirtualService )

              mkralik@redhat.com Matej Kralik
              mkralik@redhat.com Matej Kralik
              Matej Kralik, Pavel Marek
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: