Manage Fluid Topics Configuration Directory Structure and Files - Fluid Topics - 3.4

Fluid Topics Installation and Administration Guide

Product
Fluid Topics
FT_Version
3.4
Platform
RHEL
Category
Reference Guide

In a multiple-server installation, all the following files listed in this section are required on the Front and Indexing servers.

The tenant configuration files are located in a tenant dedicated directory:

/usr/local/afs7/Fluid-Topics/conf/$TENANT_ID/

For each tenant, the following configuration files are required:

  • conf.json: defines business parameters (tenant name, data input type, and so on).
  • vhost.conf.json: indicates the domain name used to reach the Fluid Topics portal.

The following additional files or directories may also be needed depending on the environment:

  • groups.conf.json: indicates user/group mapping
  • public: a folder to host files exposed and accessible from the Fluid Topics portal. Its organization is free. It can contain images, fonts, scripts, styles, and so on, such as:
    • custom.less: contains variable values and additional CSS rules that are injected in portal pages to enable display customization
    • fonts: customized fonts
    • images: logos, backgrounds, images that are referenced in specific styles, and so on
    • opensearch.xml: internal search engine description file that can be used by browsers to get a direct access to the search page
  • SAML configuration files: all mandatory files required to set up a SAML-based authentication (see SAML documentation)

The files allowing the communication between servers are located in a “-“ directory.

The following files are required:

  • mongo.conf.json: declares MongoDB hosts and authentication required to reach them.
  • ws.conf.json: declares Back Office and PDF Server hosts and authentication required to reach the Back Office.

All resources, e.g., configuration files, public images, and so on, can also be located in the "/usr/local/afs7/Fluid-Topics/conf/-" special directory. They are factorized and shared between all tenants and statuses present on the server.

However, it is recommended to copy the shared resources in each tenant directory.

Files are not located in the same place weither they are related to tenant or not

Example of a configuration directory structure:

user@host:/usr/local/afs7/Fluid-Topics/conf$ tree
.
├── -
│ └── ws.conf.json
├── $TENANT1_ID
│ ├── conf.json <-- (3)
│ ├── vhost.conf.json
│ ├── public
│ │ └── custom.less
├── $TENANT2_ID
│ ├── conf.json
...

The conf.json can be split into fragments spread in different directory tree levels. Fluid Topics merges all matching files to get the final configuration and validate it.

For a tenant, files are read at the following path:

  • conf/$TENANT_ID/conf.json

A file installed in a public directory and declared with my-directory/my-file.txt in the configuration of a tenant is searched at the following path:

  • conf/$TENANT_ID/public/my-directory/my-file.txt

A file installed in a public directory and declared with my-directory/my-file.txt in the configuration of a tenant is searched at the following path:

  • conf/$TENANT_ID/public/my-directory/my-file.txt

Example: in the above file hierarchy, a promote image is available for all tenants. Services with the $TENANT_ID ID redefine this image by providing a file with the same path.

Access URL

public files can be accessed at the following URL:

http://$DOMAIN_NAME/public/$PATH

Where $PATH corresponds to their path in the public directory.

The file is opened in the browser window. If the format is not supported by the browser, the file is automatically downloaded.

For consistency reason, on multi-server installation, this configuration directory structure and files must be identical ON ALL SERVERS except the one(s) only hosting the MongoDB environment.