You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nifi.apache.org by ski n <ra...@gmail.com> on 2019/12/10 14:35:02 UTC
Asset Registry
The NiFi Registry initially targeted at versioning flows at first. As its
goal is much broader, namely as a complementary application that provides
a central location for storage and management of shared resources across
one or more instances of NiFi and/or MiNiFi, there have been two feature
proposals:
1) Variable registry (
https://cwiki.apache.org/confluence/display/NIFI/Variable+Registry)
2) Extension registry (
https://cwiki.apache.org/confluence/display/NIFI/Extension+Repositories+%28aka+Extension+Registry%29+for+Dynamically-loaded+Extensions
)
The first one is completed (NiFi 0.5) and the second one is on going.
Asset registry
The have a complete registry I want to discuss a fourth registry type: the
"Asset Registry". (As already shortly discussed with bbende on Slack).The
goal of Asset Registry would be to central store, versioning and manage
file resources.
Some examples would be:
1) jar libraries for connecting with MQ
2) XSLT files used in XML Transform processor
3) Configuration files
etc
So basically all kind of files that are used from/within NiFi.
Process
The process would be that one commit of a flow/process group that the files
linked to flow are committed to the Asset Repository with a link to flows
where a file is used. On import of flows the files are imported as file.
Probably the files are stored relatively to the NiFi Installation Dir, or
elsewhere when configured differently. This process should also work for
parameterized flows.
For example in my flow (On my Windows laptop):
1) Hard coded file link: C:\directory\myFile.ext
2) Parameterized file link: ${myPath}/myFile.ext
This should still work if for example
1) Another developer imports this on his MacBook
2) This is imported on Windows Server NiFi Installation
3) On a NiFi running on a Docker with Linux
etc
Besides committing/exporting/importing from NiFi this could also be done
from registry API, CLI or the Registry GUI. I think this would be a great
enhancement as this would provide one-stop solution for all kind of
resources.
What do you think?
Regards,
Raymond