Hey,
I brought an interesting topic about RHEV support in Foreman, Ori
pointed out that RHEV v3 API is going to be deprecated soon (rumors
are 4.2 which is very soon) and since we are still using v3 via
rbovirt, it's the time to start dicussion in moving towards v4.
We switched to discussing the idea to implement RHEV v4 support via
newly created API that would allow us easily creating new CR
providers, Fog based or non-Fog based. Concerns were obvious - we do
not want to rewrite Fog or big part of it, on the other hand Marek
pointed out we want very simple API which will be pure Ruby (and not
XML hell) as minimal as it can be.
Marek pointed out that our API could include things like memory sizes,
pool sizes and other lists (OS lists) which are spread around in Fog,
but we want consistent UX. Our API could be a chance to unify these.
Also our approach can increase performance as we not always need all
flags and data.
Shim brought an idea to use Facets for the new CR (CRNG - new
generation) which would allow to run multiple versions of compute
resources easily which is something we will need to do for RHEV (we
still want to support oVirt 3.x for some time).
He also raised concern in going too far in unification, Marek answered
that we should only unify internal things and primarily data (memory).
Greg added that UI is added value and not core goal. He also mentioned
that Fog project lost its momentum a bit and it is not very relevant
to us these days.
I brought an idea to solve our long-standing request to proxy CR
communication through proxy, we should keep that in mind when
designing the new API. Which should be definitely as minimal as
possible to allow writing non-Fog providers. Also one problem we could
tackle is to stop doing long HTTP requests from web request thead, we
could consider using Rails Jobs or Foreman Tasks for tasks.
We agreed that we are not getting rid of Fog anytime soon, but we
would love to have the possibility not to use Fog in the future. This
is a good candidate for RFC and we are running out of time thank to
RHEV v3 API deprecation.