Workspace Configuration Options
Email integration
| Key | Type | Description | Default value | 
|---|---|---|---|
| SMTP_CHARSET | string | The charset being used to encode email messages. | utf-8 | 
| SMTP_FROM | string | The email address used in the "from" field of outgoing messages. | Cloudomation info@cloudomation.com | 
| SMTP_HOST | string | The host to use to send emails. |  | 
| SMTP_PASSWORD | string | The password to authenticate against the SMTP host. |  | 
| SMTP_PORT | integer | The port to connect to at SMTP_HOST. | 25 | 
| SMTP_USER | string | The username to authenticate against the SMTP host. |  | 
| SMTP_USE_STARTTLS | boolean | If to use the STARTTLS command to upgrade an unencrypted SMTP connection. | false | 
| SMTP_USE_TLS | boolean | If to use transport-layer-security (TLS) to connect to the SMTP host. | false | 
Git integration
| Key | Type | Description | Default value | 
|---|---|---|---|
| GIT_EXTERNAL_SERVER_NAME | string | The domain name or ip on which the git server is reachable. | localhost | 
| GIT_EXTERNAL_SSH_PORT | integer | The external port used for ssh to push to the repositories. | 2022 | 
| GIT_REPOSITORY_EXTERNAL_SAVE_PATH | string | The directory where git repositories will be stored in (on the host). | /git | 
| GIT_REPOSITORY_SAVE_PATH | string | The directory where git repositories will be stored in. | /data/repositories | 
| GIT_USER_AUTHORIZED_KEYS_FILE | string | The path where the authorized_keys file of the git user is mounted. | /data/repositories/.ssh/authorized_keys | 
| GIT_USER_NAME | string | The git user. | git | 
Logging
| Key | Type | Description | Default value | 
|---|---|---|---|
| LOGGING_CURRENT_LEVELS | string | A comma-separated list of logger names, followed by a colon and a log-level. Possible log-levels are: * ERROR * WARNING * INFO * DEBUG * NOTSET: inherit the log level from the parent logger possible logger names include: (defaults are NOTSET unless specified otherwise) * <empty string>: the root logger. other loggers will inherit the flag from the root logger unless configured otherwise * sqlalchemy: all sqlalchemy logging. default level: WARN * sqlalchemy.engine: database queries * sqlalchemy.pool: database pool operations * aiohttprest: API * common: common methods * connector_types: Cloudomation connectors * connector_types.<connector_type>: a specific connector * resources: Cloudomation resources * resources.<resource name>: a specific resource * sarest: database layer * workspace: workspace processes * workspace.engine: the execution engine | :WARNING,cloudomation:INFO | 
| LOGGING_EXPIRY_BATCH_SIZE | integer | How many log entries to remove at once. | 100 | 
| LOGGING_EXPIRY_ENABLED | boolean | Permanently remove log entries after a timeout. | true | 
| LOGGING_EXPIRY_INTERVAL_MINUTES | integer | The number of minutes to wait between checks for expired log entries. | 5 | 
| LOGGING_EXPIRY_TIME_MINUTES | integer | The number of minutes before log entries are permanently removed. | 20160 | 
| LOGGING_FORMAT | string | One of "text" or "json". Setting LOGGING_FORMAT to "json" will produce machine-readable log lines. | text | 
| LOGGING_LEVELS_RESET_MINUTES | integer | The number of minutes after which the manually set configuration value for LOGGING_CURRENT_LEVELS is removed. Logging will reset to the value configured in the environment (if set) or to the default value. Set to `0` to disable. | 10 | 
Notifications
| Key | Type | Description | Default value | 
|---|---|---|---|
| NOTIFY_DISK_USAGE_CHECK_ENABLED | boolean | Notify about disk usage exceeding configured limits. | true | 
| NOTIFY_DISK_USAGE_CHECK_INTERVAL_MINUTES | integer | The number of minutes to wait between checks of disk usage. | 60 | 
| NOTIFY_DISK_USAGE_FREE_GIB_ERROR_LIMIT | integer | If free disk space GiB is below this amount an error notification is generated. | 1 | 
| NOTIFY_DISK_USAGE_FREE_GIB_WARNING_LIMIT | integer | If free disk space GiB is below this amount a warning notification is generated. | 5 | 
| NOTIFY_DISK_USAGE_PERCENT_ERROR_LIMIT | integer | If disk usage exceeds this percentage an error notification is generated. | 90 | 
| NOTIFY_DISK_USAGE_PERCENT_WARNING_LIMIT | integer | If disk usage exceeds this percentage a warning notification is generated. | 75 | 
| NOTIFY_LICENSE_CHECK_ENABLED | boolean | Notify about license usage exceeding configured limits. | true | 
| NOTIFY_LICENSE_CHECK_INTERVAL_MINUTES | integer | The number of minutes to wait between checks of license usage. | 1440 | 
| NOTIFY_LICENSE_CONNECTION_USAGE_PERCENT_ERROR_LIMIT | integer | If connection usage exceeds this percentage an error notification is generated. | 100 | 
| NOTIFY_LICENSE_CONNECTION_USAGE_PERCENT_WARNING_LIMIT | integer | If connection usage exceeds this percentage a warning notification is generated. | 90 | 
| NOTIFY_LICENSE_STORAGE_USAGE_PERCENT_ERROR_LIMIT | integer | If storage usage exceeds this percentage an error notification is generated. | 100 | 
| NOTIFY_LICENSE_STORAGE_USAGE_PERCENT_WARNING_LIMIT | integer | If storage usage exceeds this percentage a warning notification is generated. | 90 | 
Resumer
| Key | Type | Description | Default value | 
|---|---|---|---|
| RESUMER_CLEAN_ORPHANED_ACTIVITIES_ENABLED | boolean | Delete partial activities. | true | 
| RESUMER_CLEAN_ORPHANED_IDENTITIES_ENABLED | boolean | Delete partial identities. | true | 
| RESUMER_CLEAN_ORPHANED_RECORDS_ENABLED | boolean | Delete partial records. | true | 
| RESUMER_CLEAN_ORPHANED_RESOURCES_ENABLED | boolean | Delete partial resources. | true | 
| RESUMER_CLEAN_TRASHED_EXECUTION_DUMPS_ENABLED | boolean | Delete execution dumps of executions in trash. | true | 
| RESUMER_NOTIFY_LOST_EXECUTION_ENABLED | boolean | Resume active executions after workspace restart. WARNING: disabling this will impact functionality of the workspace. | true | 
| RESUMER_NOTIFY_LOST_LOCK_ENABLED | boolean | Resume executions waiting for a lock. WARNING: disabling this will impact functionality of the workspace. | true | 
| RESUMER_NOTIFY_LOST_SCHEDULE_ENABLED | boolean | Ensure enabled schedules have a schedule execution. WARNING: disabling this will impact functionality of the workspace. | true | 
| RESUMER_NOTIFY_LOST_SYNC_CONFIG_ENABLED | boolean | Resume executions waiting for a remote workspace. WARNING: disabling this will impact functionality of the workspace. | true | 
| RESUMER_POLL_DELAY_SECONDS | integer | The number of seconds between activity checks. | 30 | 
| RESUMER_POLL_SLOW_DELAY_SECONDS | integer | The number of seconds between database cleanup routine runs. | 1800 | 
| RESUMER_RESUME_SCHEDULED_ENABLED | boolean | Resume executions waiting for a timeout. WARNING: disabling this will impact functionality of the workspace. | true | 
Security
| Key | Type | Description | Default value | 
|---|---|---|---|
| CAPTCHA_ALLOWED_HOST_NAMES | string | A comma-separated list of host names which are accepted as captcha sources. | localhost | 
| LOGIN_METHOD_CLOUDOMATION_ENABLED | boolean | If set, users can log in to the Workspace using a Cloudomation user stored in the workspace's database. | true | 
| LOGIN_TOKEN_VALIDITY_HOURS | integer | The maximum number of hours a user stays signed in before having to re-authenticate. | 720 | 
Trash
| Key | Type | Description | Default value | 
|---|---|---|---|
| TRASH_ACTIVITY_EXPIRY_BATCH_SIZE | integer | How many expired activities to move to the trash at once. | 100 | 
| TRASH_ACTIVITY_EXPIRY_ENABLED | boolean | Move ended executions to the trash after a timeout. | true | 
| TRASH_ACTIVITY_EXPIRY_INTERVAL_MINUTES | integer | The number of minutes to wait between checks for ended executions. | 5 | 
| TRASH_ACTIVITY_EXPIRY_TIME_MINUTES | integer | The number of minutes before an ended execution will be moved to the trash. | 20160 | 
| TRASH_RETENTION_TIME_ACTIVITIES_ENABLED | boolean | Permanently delete activities from the trash after a timeout. | true | 
| TRASH_RETENTION_TIME_ACTIVITIES_MINUTES | integer | The number of minutes before activities are permanently deleted from the trash. | 20160 | 
| TRASH_RETENTION_TIME_BATCH_SIZE | integer | How many records to permanently delete from the trash at once. | 100 | 
| TRASH_RETENTION_TIME_INTERVAL_MINUTES | integer | The number of minutes to wait between checks for permanently deleting records from the trash. | 100 | 
| TRASH_RETENTION_TIME_RESOURCES_ENABLED | boolean | Permanently delete resources from the trash after a timeout. | true | 
| TRASH_RETENTION_TIME_RESOURCES_MINUTES | integer | The number of minutes before resources are permanently deleted from the trash. | 20160 | 
User Interface
| Key | Type | Description | Default value | 
|---|---|---|---|
| FILE_SIZE_BYTES_ALWAYS_LOAD_LIMIT | integer | The maximum size of a file to always load into the in-browser editor. | 1048576 | 
| FILE_SIZE_BYTES_OPTIONAL_LOAD_LIMIT | integer | The maximum size of a file to optionally load into the in-browser editor. | 10485760 | 
| MAX_OPEN_RECORDS_PER_PROJECT | integer | The maximum number of records a user can have opened in each project. When this number is exceeded, the oldest opened record will be closed. | 7 | 
| MESSAGE_LIST_SUBMITTED_LIMIT | integer | How many submitted messages to display in the messages popover | 10 | 
| MESSAGE_LIST_UNSUBMITTED_LIMIT | integer | How many unsubmitted messages to display in the messages popover | 10 | 
| VISUALIZATION_MAX_NODES | integer | The maximum number of nodes shown in the dependency visualization graph. | 200 | 
| VISUALIZATION_REFRESH_INTERVAL_SECONDS | integer | The number of seconds between refreshes of the dependency visualization graph. | 5 | 
| WORKSPACE_HIGHLIGHT_COLOR | string | To quickly visually identify Cloudomation workspaces you can choose the background color of the top bar. | #FFFFFF | 
Internals
| Key | Type | Description | Default value | 
|---|---|---|---|
| DB_KEEPALIVE_INTERVAL_SECONDS | integer | The number of seconds to wait between checking database connectivity. | 20 | 
| DB_KEEPALIVE_TIMEOUT_SECONDS | integer | The number of seconds after which a workspace process is considered "dead". | 60 | 
| EXECUTIONS_MAX_PARALLEL | integer | The maximum number of executions one process is handling simultaneous. | 5 | 
| EXECUTION_PROCESSOR_ENABLED | boolean | When disabled the workspace will not process executions. | true | 
| GRAPHQL_QUERY_COMPLEXITY_LIMIT | integer | The maximum "cost" of a single graphql query. TODO: document how cost is calculated... | 2000 | 
| IMPORT_REFERENCE_WAIT_TIMEOUT_SECONDS | integer | How many seconds to wait for a referenced record to be created during import. | 30 | 
| MEMORY_TRACING_FRAMES | integer | Memory tracing frame count. Zero (0) disables tracing. | 0 | 
| MEMORY_TRACING_INTERVAL_SECONDS | integer | How many seconds to wait before taking another snapshot. | 3600 | 
| MEMORY_TRACING_SAVE_DIRECTORY | string | The directory to save tracing dumps to. | /tmp | 
| SAVEPOINT_RETENTION | string | Savepoint retention behaviour. Possible values are: * ALL: keep all savepoints of executions * LAST: keep the last implicit and all explicit savepoints of executions. Note: It is possiblt to override this configuration in an execution using the `savepoint_retention` argument. | LAST | 
| SCHEDULE_MIN_INTERVAL_FAILED_SECONDS | integer | If a schedule fails to execute wait this many seconds before creating a new one. | 60 | 
| SCHEDULE_MIN_INTERVAL_SUCCEEDED_SECONDS | integer | If a schedule succeeds wait this many seconds before creating a new one. | 60 |