BareMetalHost API decomposition

20 views
Skip to first unread message

Zane Bitter

unread,
Jan 30, 2021, 12:45:25 AM1/30/21
to Metal3 Development List
Maaaany moons ago I proposed (in
https://groups.google.com/d/msgid/metal3-dev/5af117fc-2006-6068-5be6-6226c8fa0faf%40redhat.com)
creating a new API revision by splitting the BareMetalHost CRD into
multiple different types of resources so that we can apply different
RBAC policies to different actors. The next step was for me to
incorporate the stuff we figured out in that thread and put it into a
draft design doc for review. While I made a start, finishing it never
made it to the top of my priority list, because when are we ever going
to have time to write a whole new API revision???

However! I realised something recently. We can get basically all of the
value by leaving the current BareMetalHost API alone. We can still add
the new CRDs, but when resources of those types are present they'll work
by simply writing to the BareMetalHost's Spec. So we can do this
incrementally, without messing with any existing code, and users of the
current API can continue to do so indefinitely with no forced flag-day
changeover for e.g. CAPM3. Suddenly this is looking a lot more feasible
to actually implement.

Thus, for your reviewing pleasure, I present the following draft that
hopefully all y'all have access to (requires membership of this group; I
can't find a way to make it public):

https://docs.google.com/document/d/1FL8oA0_WNcPdiC-0zrToinl8aol-NPQUjWe-OkcvTqA/edit?usp=sharing

I look forward to reading everyone's feedback.

cheers,
Zane.

Reply all
Reply to author
Forward
0 new messages