29. Libraries

    A Library is a redistributable package containing reusable graphs, subgraphs, jobflows, data services or metadata. It can be developed in CloverDX Designer and then deployed to CloverDX Server. It allows comfortable sharing of CloverDX elements.

    Development and Installation

    Libraries are developed as regular projects. When the development is finished, the developer can use CloverDX Designer to export the whole project into a package. During the export, the author selects which elements are public – meant to be used by others. We call these elements the public interface of the library. They will be visible to all users. Libraries may contain other (internal) elements, which may be used as sub-routines in the public ones.

    The export creates a single file with ".clib" extension. This file can be uploaded to CloverDX Server in the Libraries section. Adding or deleting libraries requires the "Libraries administration" permission. Once installed, public elements from the library may be used by all authenticated users of the Server.

    Installed libraries may be seen as a special type of public shared sandbox with read-only permissions. Internally, the packages are unpacked into the ${libraries.home} directory. By default, it points to "libraries" sub-directory located in ${sandboxes.home}.


    Graphs, Jobflows

    When creating new schedule or event listener on the CloverDX Server, public graphs and jobflows from installed libraries can be used.


    When developing new graphs in a Server project in CloverDX Designer, public subgraphs from installed libraries are shown in the Palette. They are also available in the Add Component dialog.

    Data Services

    Data services from installed libraries can be deployed on the CloverDX Server.


    When developing new graphs in CloverDX Designer, public metadata from installed libraries can be linked as a shared metadata by opening context menu on the Metadata group in the outline and selecting New metadata  Link shared definition from library.

    Updating a Library

    Since CloverDX 5.15, you can have multiple versions of the same library.

    Figure 109. Administration of Libraries

    Library Repository

    Library repositories allow you to share your libraries. A repository is a local or remote directory with ".clib" archives, each containing one library.

    Currently, we support the following remote protocols: FTP, SFTP, Amazon S3, Azure Blob Storage, SMB and SMB2.

    In CloverDX Server, you can add one or more repositories and then browse the repository and install selected libraries.

    During the very first start of the Server with an empty database the CloverDX public library marketplace is installed.

    Figure 110. FTP Library Repository

    Library Import

    When you import configuration, CloverDX Server installs imported libraries if it can find them in any of the available repositories. Both the name and the version of the library must match.