konpyutaika / nifikop

The NiFiKop NiFi Kubernetes operator makes it easy to run Apache NiFi on Kubernetes. Apache NiFI is a free, open-source solution that support powerful and scalable directed graphs of data routing, transformation, and system mediation logic.
https://konpyutaika.github.io/nifikop/
Apache License 2.0
125 stars 42 forks source link

[Feature/NifiDataflowOrganizer] Implementation of NifiDataflowOrganizer controller #264

Open juldrixx opened 1 year ago

juldrixx commented 1 year ago
Q A
Bug fix? no
New feature? yes
API breaks? no
Deprecations? no
Related tickets -
License Apache 2.0

What's in this PR?

Add new resource to create organize your dataflows in NiFi by grouping them.

Why?

To automate the positioning of the dataflows according to others in the same group.

Checklist

mh013370 commented 1 year ago

This is an interesting idea and i definitely understand the desire for the feature. I'm wondering if this is something the operator should just do by default without needing a new CRD to accomplish it.

Do you think these groupings could be expressed as a part of the NifiDataflow configuration? The operator could interpret these configs and do the same type of grouping.

What do you think? My only concern is that this CRD seems mostly for cosmetic reasons and not functional.

juldrixx commented 1 year ago

This is an interesting idea and i definitely understand the desire for the feature. I'm wondering if this is something the operator should just do by default without needing a new CRD to accomplish it.

Do you think these groupings could be expressed as a part of the NifiDataflow configuration? The operator could interpret these configs and do the same type of grouping.

What do you think? My only concern is that this CRD seems mostly for cosmetic reasons and not functional.

I totally agree, but I can't figure out how. In a group, you can specify a color, a position, a name, etc., but if I want to do it directly in the NiFiDataflow resource, how can I do it? And where do I save the information of label, in which resource status? May be the operator should create a configmap resource to save the information? I'm full of questions 😄

mh013370 commented 1 year ago

This is an interesting idea and i definitely understand the desire for the feature. I'm wondering if this is something the operator should just do by default without needing a new CRD to accomplish it. Do you think these groupings could be expressed as a part of the NifiDataflow configuration? The operator could interpret these configs and do the same type of grouping. What do you think? My only concern is that this CRD seems mostly for cosmetic reasons and not functional.

I totally agree, but I can't figure out how. In a group, you can specify a color, a position, a name, etc., but if I want to do it directly in the NiFiDataflow resource, how can I do it? And where do I save the information of label, in which resource status? May be the operator should create a configmap resource to save the information? I'm full of questions 😄

Let me give this some thought and come up with a proposal!