From 200b4c3275ceab18e4c03579da10598af7f41072 Mon Sep 17 00:00:00 2001 From: GregoireW <24318548+GregoireW@users.noreply.github.com> Date: Tue, 25 Jan 2022 18:08:07 +0100 Subject: [PATCH] More detail for the RFC Signed-off-by: GregoireW <24318548+GregoireW@users.noreply.github.com> --- .../README.md | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/rfcs/0005-managed-attributes-image-automation/README.md b/rfcs/0005-managed-attributes-image-automation/README.md index 240e2e7b..f0a00f65 100644 --- a/rfcs/0005-managed-attributes-image-automation/README.md +++ b/rfcs/0005-managed-attributes-image-automation/README.md @@ -8,27 +8,29 @@ ## Summary -Image automation controller can update some attributes of a kubernetes object. -Today this is limited to image name, image tag and image name+tag. -This RFC aims to extend this functionality to other attributes. +Flux should allow referencing more metadata in the image automation Setters strategy. ## Motivation Some automation or observability tools can use label to identify better a -kubernetes object. It can be linked to a version, to a date, to a code +kubernetes object. It can be linked to a version, a date, a code origin... For multiple reason, the image tag can reflect poorly this data. An example can be given by the image reflector controller which can extract a part of the tag and use it to sort and select the correct one. ### Goals -This RFC aims to describe a way to extract such additional value from the -image tag, and to use them to update some attributes on the kubernetes object. +This RFC aims to describe + +- A way to extract such additional attributes from the image tag. +- Use those new attributes to update the kubernetes object. ### Non-Goals -This RFC will focus on image automation controller. It is a non goal to extend -this to manually modified kubernetes objects. +This RFC will focus on Image Automation Controller and Image Reflector Controller. + +It is a non goal to keep in sync the attributes if the kubernetes object is +updated manually. ## Proposal @@ -43,9 +45,13 @@ kubernetes object so that the attribute linked to this comment can be updated. ### Alternatives An alternative would be to build a mutation web hook which would be able to -filter all object and interact with them directly. It would be more generic -but heavier to build. -This raise the question on should this be included in flux or not. +filter all object and interact with them directly. + +It would be more generic, more customizable and safer (fix the manual update use case) +to create such mutation web hook, but will be heavier to build. +(new kubernetes object, new controller) + +This raise the question on should this feature to be included in flux or not. ## Design Details