File structure of a CoB server
Each newly created server_* will have a default file structure, and it is vital to understand the purpose of each directory, as well as what it stores. The structure is visualized below:
server_example
.gitignore
.sops.yaml
.version
environments
integrationm
others
recordm
recordm-importer
reportm
userm
customizations.json
solutions.yml
Top-level Files
.version- This file is included in every server and is used for version management purposes: it contains the version number ofcob-cliinstalled on this server. Since cob-cli handles server files this data is crucial..sops.yaml- This file only exists in servers that use secrets encryption: it contains instructions about the public keys that are used to decrypt the encrypted files.customizations.json- Contains the version number and name of all the customizations available on the server.solutions.yaml- This optional file contains the configuration for server-to-server data migrations.
Sub-folders
environments- Environments are a mechanism that allows users to maintain some seperate files in seperate machines while maintaing a common code base. The different enverionments available in a server are specified here.others- This folder contains all the files of the independent applications that are not directly implemented on CoB solutions even if they use some of its internal services through the REST API. Additionally, code belonging to projects that is not directly related to the internal CoB services but is nevertheless needed to run the application, will also be stored in this folder.recordm-importer- Holds all the configuration files and Groovy scripts used to configure RecordM Importer.reportm- Configuration files for ReportM. This folder and its subfolders may not always be present, since not all solutions use ReportM.userm- UserM configuration files. Normally there is no need to change this folder and its files and subfolders.integrationm- Holds all the files for IntegrationM, such as scripts and actions.recordm- Contains data regarding RecordM, such as the front-end modifications to the product.
