Skip to main content
Version: Next

Configuration

In this section, the configuration of the control plane is explained. Configuration is used based on a config.yaml file which should be placed in the apps/backend/src folder. This config.yaml file is loaded when booting the application. The values get type checked, and it gives a clear error message if there is a configuration field missing or provided incorrectly. Next to the config.yaml file, you can also set environment variables. These override the values that are listed in the config.yaml file.

Databases

By default, the development database is sqlite. We use postgres databases for production type instances of the control planes.

Authentication

Authentication for frontend services can be done via Casdoor. This helps users who need to login to several components to authenticate themselves faster.

Possible configuration parameters

NameData TypeExplanationDefault
Database Configuration
typeStringType of the database. Must be "sqlite" or "postgres".
databaseStringName of the database.
synchronizeBooleanWhether or not the database should be synchronized, MUST only be true in test scenariosfalse
hostStringHost of the database.
portNumberPort of the database.
usernameStringUsername for the database.
passwordStringPassword for the database.
sslObject or BooleanBoolean if SSL is not used, else object with optionsfalse
ssl.rejectUnauthorizedBooleanWhether unauthorized requests should be rejected.false
Server Configuration
listenStringIP address to listen on."0.0.0.0"
portNumberPort number for the server.3000
publicDomainStringPublic domain of the server."localhost"
publicAddressStringPublic address of the server."http://localhost:3000"
Registry Configuration
isRegistryBooleanIndicates whether it's a registry.false
registryUrlStringURL of the registry.
registryDidStringDID (Decentralized Identifier) of the registry.
registryIntervalInMillisecondsNumberInterval in milliseconds for registry updates.30000
IAM Configuration
typeStringType of IAM. Options: "tsg", "tsg-iatp", "miw", "dev".
didIdStringIdentifier for the DID.
clientIdStringClient ID for authentication.
clientSecretStringClient secret for authentication.
tokenUrlStringURL for token management.
walletUrlStringURL for wallet management.
User Configuration
usernameStringUsername for authentication.
passwordStringPassword for authentication (validated by regex).
Runtime Configuration
controlPlaneInteractionsStringMode of control plane interactions. Options: "automatic", "semi-manual", "manual"."automatic"
Initialization Catalog Configuration
creatorStringCreator of the catalog.
publisherStringPublisher of the catalog.
titleStringTitle of the catalog.
descriptionStringDescription of the catalog.
datasetsArray of StringsArray of dataset names.
Root Configuration
dbObjectDatabase configuration.
serverObjectServer configuration.
registryObjectRegistry configuration.
iamObjectIAM configuration.
usersArray of ObjectsArray of user configurations.
initCatalogObjectInitialization catalog configuration.
runtimeObjectRuntime configuration.