RFC: Deprecation and removal of oVirt Compute Resource

Hi everyone,
I would like to share our plan regarding the deprecation and eventual removal of oVirt integration in Foreman.

Summary:

  • In version 3.15, we will deprecate the integration and introduce a rake task for data migration.
  • In version 3.16, we will remove the code from Foreman core, as well as the installer and packaging.

Details:

  • The oVirt integration has been deprecated in Satellite for some time now.
  • The rake task for data migration will be cherry-picked for the older versions so the community can prepare in advance.
  • There are no plans to migrate the code to the plugin.

Links:

Thank you for your attention to this matter.

2 Likes

I think this is a follow-up on Proposal to drop support for oVirt where @hlawatschek and @Bernhard_Suttner thought about taking over the maintenance.

1 Like

If people want to maintain the integration, that would be awesome. The code can be extracted from the core and moved to the plugin.

But even with someone volunteering for the plugin extraction, we won’t block the removal from the core because of it.

Do you plan to move this to a separate plugin @lstejska ?

No, just code removal + rake task & migration for compute resource data.

Well, I guess, then we will create a plugin out of it as we still need it.
Another possibility is, to have a different approach than a separte Plugin.
We will discuss internally how to proceed.

1 Like

On a technical level please know that ovirt-engine-sdk already fails to build on Fedora 41 (and IIRC also EL10). Update to Ruby 3 by jhernand · Pull Request #10 · oVirt/ovirt-engine-sdk-ruby · GitHub and Extracted: Update gemspec dependencies for ruby 3 by kbrock · Pull Request #19 · oVirt/ovirt-engine-sdk-ruby · GitHub tell me that it’s hard to get changes in. You’d probably also volunteer to pick up the SDK itself.

1 Like

Just to clarify — is the code in this PR intended to be part of a migration that will be included in the 3.16 release?

@lstejska one more question - why did we decide to keep the hosts and hostgroups instead of deleting them?
Should we consider adding an option to the rake task to delete the hosts and hostgroups as well?
I understand this may not be something we can implement in a migration, but perhaps we could add it to the rake task to give users the flexibility to choose?

Yes, exactly the same. In fact I’m planning to execute the rake task directly from the migration file, so we don’t have to duplicate the code.

why did we decide to keep the hosts and hostgroups instead of deleting them?

Safety.

Should we consider adding an option to the rake task to delete the hosts and hostgroups as well?

IMO this should be done by users.

1 Like

Added pretend mode to the rake task that will list all the changes without actually doing them.

1 Like

@Dirk @Bernhard_Suttner @hlawatschek

Are there any updates on the migration to the plugin?

I pushed PRs (most in WIP) for the upcoming removal in 3.16; I plan to have them ready and merged right after the 3.15 branching, which is according to the document intended for 2025-05-13.

Open PRs:

We could just “disassociate” hosts from VMs and keep hosts as they are, right? That basically makes them being considered a baremetal machine running somewhere and we don’t know where.

1 Like

When I was looking at @lstejska’s PR to add a rake task I wondered if we had anything existing already but I don’t think we do. It made made me wonder if we should create a generic disassociate feature in the API and UI for any compute resource. If we end up dropping another one (kubevirt comes to mind) we could reuse the code.

1 Like

Maybe we don’t have the API for this, but in UI, you can do it. Navigate to Host edit form, on the top right you see “Disassociate host” button. I agree it’s not clear why it’s in edit form but it’s there.

That’s an unexpected place indeed. It’s also going to be quite tedious to do every host 1 by 1 so I was thinking about listing all hosts for a compute resource and then implement a bulk action to disassociate them. Either by a selection or all. Perhaps also implement a search filter.

The legacy UI host index page has a bulk action for that as well. But I thought we’d do that as part of upgrade automatically for the user.

Hello
Redhat has announced removing ovirt/rhv support in the last release : foreman 3.14 / satellite 6.17.
Does anyone has info regarding ATIX maybe creating a plugin ?