Skip to content

WIP - Consume s2i content in kuttl tests - #646

Open
fmount wants to merge 3 commits into
openstack-k8s-operators:mainfrom
fmount:dummy
Open

fmount wants to merge 3 commits into
openstack-k8s-operators:mainfrom
fmount:dummy

Conversation

@fmount

@fmount fmount commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

Update kuttl jobs to consume s2i content

@coderabbitai

coderabbitai Bot commented Sep 9, 2026

Copy link
Copy Markdown

Important

Review skipped

Ignore keyword(s) in the title.

⛔ Ignored keywords (1)
  • WIP

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Advanced

Run ID: 62a9c918-1652-46b6-995b-7ed541767cac

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@openshift-ci

openshift-ci Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fmount

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved label Sep 9, 2026
@fmount

fmount commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator Author
Defaulted container "manila-share" out of: manila-share, probe
2026-09-09 09:58:46.243 1 DEBUG oslo_concurrency.lockutils [-] Acquiring lock "singleton_lock" lock /usr/lib/python3.9/site-packages/oslo_concurrency/lockutils.py:312
2026-09-09 09:58:46.243 1 DEBUG oslo_concurrency.lockutils [-] Acquired lock "singleton_lock" lock /usr/lib/python3.9/site-packages/oslo_concurrency/lockutils.py:315
2026-09-09 09:58:46.243 1 DEBUG oslo_concurrency.lockutils [-] Releasing lock "singleton_lock" lock /usr/lib/python3.9/site-packages/oslo_concurrency/lockutils.py:333
2026-09-09 09:58:46.311 1 INFO oslo_service.periodic_task [-] Skipping periodic task update_share_usage_size because it is disabled
2026-09-09 09:58:46.312 1 CRITICAL manila [None req-c43bfb75-82aa-4829-aca0-7fcc5e245074 - - - - - -] Unhandled error: ModuleNotFoundError: No module named 'manila.tests'
2026-09-09 09:58:46.312 1 ERROR manila Traceback (most recent call last):
2026-09-09 09:58:46.312 1 ERROR manila   File "/usr/bin/manila-share", line 10, in <module>
2026-09-09 09:58:46.312 1 ERROR manila     sys.exit(main())
2026-09-09 09:58:46.312 1 ERROR manila   File "/usr/lib/python3.9/site-packages/manila/cmd/share.py", line 55, in main
2026-09-09 09:58:46.312 1 ERROR manila     server = service.Service.create(host=host,
2026-09-09 09:58:46.312 1 ERROR manila   File "/usr/lib/python3.9/site-packages/manila/service.py", line 232, in create
2026-09-09 09:58:46.312 1 ERROR manila     service_obj = cls(host, binary, topic, manager,
2026-09-09 09:58:46.312 1 ERROR manila   File "/usr/lib/python3.9/site-packages/manila/service.py", line 124, in __init__
2026-09-09 09:58:46.312 1 ERROR manila     self.manager = manager_class(host=self.host,
2026-09-09 09:58:46.312 1 ERROR manila   File "/usr/lib/python3.9/site-packages/manila/share/manager.py", line 276, in __init__
2026-09-09 09:58:46.312 1 ERROR manila     self.driver = importutils.import_object(
2026-09-09 09:58:46.312 1 ERROR manila   File "/usr/lib/python3.9/site-packages/oslo_utils/importutils.py", line 44, in import_object
2026-09-09 09:58:46.312 1 ERROR manila     return import_class(import_str)(*args, **kwargs)
2026-09-09 09:58:46.312 1 ERROR manila   File "/usr/lib/python3.9/site-packages/oslo_utils/importutils.py", line 30, in import_class
2026-09-09 09:58:46.312 1 ERROR manila     __import__(mod_str)
2026-09-09 09:58:46.312 1 ERROR manila ModuleNotFoundError: No module named 'manila.tests'
2026-09-09 09:58:46.312 1 ERROR manila

we might require to include manila.tests in the container I suppose (cc @gouthampacha)

@fmount
fmount marked this pull request as draft September 9, 2026 10:32
@fmount fmount changed the title Move multibackend job to dummy driver WIP - Move multibackend job to dummy driver Sep 9, 2026
@fmount
fmount marked this pull request as ready for review September 9, 2026 10:32
@openshift-ci
openshift-ci Bot requested a review from dprince September 9, 2026 10:32
@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/871921a76f07465d8d219e15057e523e

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 03m 26s
⚠️ manila-operator-kuttl SKIPPED Skipped due to failed job manila-s2i-content-provider
manila-s2i-content-provider NODE_FAILURE Node(set) request 100-0000197101 failed in 0s
✔️ manila-operator-tempest SUCCESS in 1h 36m 22s

@fmount

fmount commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator Author

recheck

@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/cf3c6cdde5a8497ab9993f0c11b45c91

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 18m 19s
manila-operator-kuttl FAILURE in 39m 13s
✔️ manila-s2i-content-provider SUCCESS in 1h 17m 05s
✔️ manila-operator-tempest SUCCESS in 1h 40m 24s

@gouthampacha

Copy link
Copy Markdown
Contributor

Hey @fmount

yeah, since the manila-share RPM doesn't contain the "manila.tests" module, the dummy driver isn't included. It'd have been perfect for this use-case. Maybe it still can be if we can shove it into the testing here, and use it via the extraMounts logic when we don't use the s2i container images?

You're right that with s2i, we kinda get this package because we're closer to manila's source there - and we include everything in the package, including tests today.

An LLM was tortured to get something along these lines as a brittle dev/CI-only flake we can incorporate:

curl -sO https://opendev.org/openstack/manila/raw/commit/849119d900f13a6ff5604943138c5d37d46aedb9/manila/tests/share/drivers/dummy.py
: > empty
oc create configmap manila-dummy-driver -n openstack \
  --from-file=dummy.py=dummy.py \
  --from-file=pkg_init=empty \
  --from-file=share_init=empty \
  --from-file=drivers_init=empty \
  --dry-run=client -o yaml > manila-dummy-driver-cm.yaml

then:

spec:
  manila:
    template:
      extraMounts:
        - name: manila-dummy-driver
          extraVol:
            - extraVolType: Undefined
              propagation: [ManilaShare]       
              volumes:
                - name: manila-dummy-driver
                  configMap:
                    name: manila-dummy-driver
                    items:  
                      - {key: pkg_init,     path: __init__.py}
                      - {key: share_init,   path: share/__init__.py}
                      - {key: drivers_init, path: share/drivers/__init__.py}
                      - {key: dummy.py,     path: share/drivers/dummy.py}
              mounts:
                - name: manila-dummy-driver
                  mountPath: /usr/lib/python3.9/site-packages/manila/tests
                  readOnly: true
      manilaShares:
        dummy:
          replicas: 1
          customServiceConfig: |
            [dummy]
            driver_handles_share_servers = False
            share_driver = manila.tests.share.drivers.dummy.DummyDriver
            share_backend_name = dummy

@centosinfra-prod-github-app

Copy link
Copy Markdown

@fmount

fmount commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator Author

Hey @fmount

yeah, since the manila-share RPM doesn't contain the "manila.tests" module, the dummy driver isn't included. It'd have been perfect for this use-case. Maybe it still can be if we can shove it into the testing here, and use it via the extraMounts logic when we don't use the s2i container images?

You're right that with s2i, we kinda get this package because we're closer to manila's source there - and we include everything in the package, including tests today.

An LLM was tortured to get something along these lines as a brittle dev/CI-only flake we can incorporate:

curl -sO https://opendev.org/openstack/manila/raw/commit/849119d900f13a6ff5604943138c5d37d46aedb9/manila/tests/share/drivers/dummy.py
: > empty
oc create configmap manila-dummy-driver -n openstack \
  --from-file=dummy.py=dummy.py \
  --from-file=pkg_init=empty \
  --from-file=share_init=empty \
  --from-file=drivers_init=empty \
  --dry-run=client -o yaml > manila-dummy-driver-cm.yaml

then:

spec:
  manila:
    template:
      extraMounts:
        - name: manila-dummy-driver
          extraVol:
            - extraVolType: Undefined
              propagation: [ManilaShare]       
              volumes:
                - name: manila-dummy-driver
                  configMap:
                    name: manila-dummy-driver
                    items:  
                      - {key: pkg_init,     path: __init__.py}
                      - {key: share_init,   path: share/__init__.py}
                      - {key: drivers_init, path: share/drivers/__init__.py}
                      - {key: dummy.py,     path: share/drivers/dummy.py}
              mounts:
                - name: manila-dummy-driver
                  mountPath: /usr/lib/python3.9/site-packages/manila/tests
                  readOnly: true
      manilaShares:
        dummy:
          replicas: 1
          customServiceConfig: |
            [dummy]
            driver_handles_share_servers = False
            share_driver = manila.tests.share.drivers.dummy.DummyDriver
            share_backend_name = dummy

Thanks @gouthampacha for checking it. I think that 18 jobs can continue to use ceph backend as the goal is to remove it from main, where we will actually rely on s2i generated content. I confirmed w/ the last run that manila.tests module is present and the DummyDriver can be used, so no need to hack it via extraMounts. Following up on #647 and keep using this patch to experiment.

@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/02fbda5566ea43bcb2491616fcdee090

✔️ openstack-k8s-operators-content-provider SUCCESS in 4h 22m 19s
manila-operator-kuttl FAILURE in 42m 03s
✔️ manila-s2i-content-provider SUCCESS in 4h 12m 24s
✔️ manila-operator-tempest SUCCESS in 1h 32m 21s

@centosinfra-prod-github-app

Copy link
Copy Markdown

@centosinfra-prod-github-app

Copy link
Copy Markdown

Comment thread zuul.d/jobs.yaml
- tests?\/functional
- ^renovate.json$
vars:
cifmw_crc_additional_insecure_registries:

@fmount fmount Sep 11, 2026

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This part can be moved to a potential centralized base job that lives in s2i-openstack-containers, but I'm considering moving forward with this and have a dedicated follow up for this (which I think is already in our plans). cc @tosky

Note that we need a follow up anyway to target the ceph removal via install_yamls, but at that point this job will still be green because this patch migrates it to s2i+dummy backend

@fmount fmount changed the title WIP - Move multibackend job to dummy driver Move multibackend job to dummy driver Sep 11, 2026
@fmount fmount changed the title Move multibackend job to dummy driver Consume s2i content in kuttl tests Sep 11, 2026
@fmount fmount changed the title Consume s2i content in kuttl tests WIP - Consume s2i content in kuttl tests Sep 11, 2026
@fmount

fmount commented Sep 11, 2026

Copy link
Copy Markdown
Collaborator Author

I'm going to put this patch on hold as we need to rebase it on top of #647 and rename the jobs.

@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/a714c8f875ad4420b1a4f81a1b4c1008

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 28m 59s
manila-operator-kuttl FAILURE in 38m 23s
✔️ manila-s2i-content-provider SUCCESS in 1h 24m 30s
✔️ manila-operator-tempest SUCCESS in 1h 33m 52s

Signed-off-by: Francesco Pantano <fpantano@redhat.com>
Signed-off-by: Francesco Pantano <fpantano@redhat.com>
Add cifmw overrides to consume s2i images coming from content provider
and have a command to patch the csv where RELATED_IMAGES_* are replaced
with what s2i provides.

Signed-off-by: Francesco Pantano <fpantano@redhat.com>
@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/37fb44d3e03b4ce58550218bc8a85166

✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 59m 57s
manila-operator-kuttl FAILURE in 37m 12s
✔️ manila-s2i-content-provider SUCCESS in 1h 55m 50s
✔️ manila-operator-tempest SUCCESS in 1h 34m 19s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants