Skip to main content
Version: 9 - Germknödel

Workspace Configuration Options

Email integration

KeyTypeDescriptionDefault value
SMTP_CHARSETstringThe charset being used to encode email messages.utf-8
SMTP_FROMstringThe email address used in the "from" field of outgoing messages.Cloudomation info@cloudomation.com
SMTP_HOSTstringThe host to use to send emails.
SMTP_PASSWORDstringThe password to authenticate against the SMTP host.
SMTP_PORTintegerThe port to connect to at SMTP_HOST.25
SMTP_USERstringThe username to authenticate against the SMTP host.
SMTP_USE_STARTTLSbooleanIf to use the STARTTLS command to upgrade an unencrypted SMTP connection.false
SMTP_USE_TLSbooleanIf to use transport-layer-security (TLS) to connect to the SMTP host.false

Git integration

KeyTypeDescriptionDefault value
GIT_EXTERNAL_SERVER_NAMEstringThe domain name or ip on which the git server is reachable.localhost
GIT_EXTERNAL_SSH_PORTintegerThe external port used for ssh to push to the repositories.2022
GIT_REPOSITORY_EXTERNAL_SAVE_PATHstringThe directory where git repositories will be stored in (on the host)./git
GIT_REPOSITORY_SAVE_PATHstringThe directory where git repositories will be stored in./data/repositories
GIT_USER_AUTHORIZED_KEYS_FILEstringThe path where the authorized_keys file of the git user is mounted./data/repositories/.ssh/authorized_keys
GIT_USER_NAMEstringThe git user.git

Logging

KeyTypeDescriptionDefault value
LOGGING_CURRENT_LEVELSstringA 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_SIZEintegerHow many log entries to remove at once.100
LOGGING_EXPIRY_ENABLEDbooleanPermanently remove log entries after a timeout.true
LOGGING_EXPIRY_INTERVAL_MINUTESintegerThe number of minutes to wait between checks for expired log entries.5
LOGGING_EXPIRY_TIME_MINUTESintegerThe number of minutes before log entries are permanently removed.20160
LOGGING_FORMATstringOne of "text" or "json". Setting LOGGING_FORMAT to "json" will produce machine-readable log lines.text
LOGGING_LEVELS_RESET_MINUTESintegerThe 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

KeyTypeDescriptionDefault value
NOTIFY_DISK_USAGE_CHECK_ENABLEDbooleanNotify about disk usage exceeding configured limits.true
NOTIFY_DISK_USAGE_CHECK_INTERVAL_MINUTESintegerThe number of minutes to wait between checks of disk usage.60
NOTIFY_DISK_USAGE_FREE_GIB_ERROR_LIMITintegerIf free disk space GiB is below this amount an error notification is generated.1
NOTIFY_DISK_USAGE_FREE_GIB_WARNING_LIMITintegerIf free disk space GiB is below this amount a warning notification is generated.5
NOTIFY_DISK_USAGE_PERCENT_ERROR_LIMITintegerIf disk usage exceeds this percentage an error notification is generated.90
NOTIFY_DISK_USAGE_PERCENT_WARNING_LIMITintegerIf disk usage exceeds this percentage a warning notification is generated.75
NOTIFY_LICENSE_CHECK_ENABLEDbooleanNotify about license usage exceeding configured limits.true
NOTIFY_LICENSE_CHECK_INTERVAL_MINUTESintegerThe number of minutes to wait between checks of license usage.1440
NOTIFY_LICENSE_CONNECTION_USAGE_PERCENT_ERROR_LIMITintegerIf connection usage exceeds this percentage an error notification is generated.100
NOTIFY_LICENSE_CONNECTION_USAGE_PERCENT_WARNING_LIMITintegerIf connection usage exceeds this percentage a warning notification is generated.90
NOTIFY_LICENSE_STORAGE_USAGE_PERCENT_ERROR_LIMITintegerIf storage usage exceeds this percentage an error notification is generated.100
NOTIFY_LICENSE_STORAGE_USAGE_PERCENT_WARNING_LIMITintegerIf storage usage exceeds this percentage a warning notification is generated.90

Resumer

KeyTypeDescriptionDefault value
RESUMER_CLEAN_ORPHANED_ACTIVITIES_ENABLEDbooleanDelete partial activities.true
RESUMER_CLEAN_ORPHANED_IDENTITIES_ENABLEDbooleanDelete partial identities.true
RESUMER_CLEAN_ORPHANED_RECORDS_ENABLEDbooleanDelete partial records.true
RESUMER_CLEAN_ORPHANED_RESOURCES_ENABLEDbooleanDelete partial resources.true
RESUMER_CLEAN_TRASHED_EXECUTION_DUMPS_ENABLEDbooleanDelete execution dumps of executions in trash.true
RESUMER_NOTIFY_LOST_EXECUTION_ENABLEDbooleanResume active executions after workspace restart. WARNING: disabling this will impact functionality of the workspace.true
RESUMER_NOTIFY_LOST_LOCK_ENABLEDbooleanResume executions waiting for a lock. WARNING: disabling this will impact functionality of the workspace.true
RESUMER_NOTIFY_LOST_SCHEDULE_ENABLEDbooleanEnsure enabled schedules have a schedule execution. WARNING: disabling this will impact functionality of the workspace.true
RESUMER_NOTIFY_LOST_SYNC_CONFIG_ENABLEDbooleanResume executions waiting for a remote workspace. WARNING: disabling this will impact functionality of the workspace.true
RESUMER_POLL_DELAY_SECONDSintegerThe number of seconds between activity checks.30
RESUMER_POLL_SLOW_DELAY_SECONDSintegerThe number of seconds between database cleanup routine runs.1800
RESUMER_RESUME_SCHEDULED_ENABLEDbooleanResume executions waiting for a timeout. WARNING: disabling this will impact functionality of the workspace.true

Security

KeyTypeDescriptionDefault value
CAPTCHA_ALLOWED_HOST_NAMESstringA comma-separated list of host names which are accepted as captcha sources.localhost
LOGIN_METHOD_CLOUDOMATION_ENABLEDbooleanIf set, users can log in to the Workspace using a Cloudomation user stored in the workspace&#x27;s database.true
LOGIN_TOKEN_VALIDITY_HOURSintegerThe maximum number of hours a user stays signed in before having to re-authenticate.720

Trash

KeyTypeDescriptionDefault value
TRASH_ACTIVITY_EXPIRY_BATCH_SIZEintegerHow many expired activities to move to the trash at once.100
TRASH_ACTIVITY_EXPIRY_ENABLEDbooleanMove ended executions to the trash after a timeout.true
TRASH_ACTIVITY_EXPIRY_INTERVAL_MINUTESintegerThe number of minutes to wait between checks for ended executions.5
TRASH_ACTIVITY_EXPIRY_TIME_MINUTESintegerThe number of minutes before an ended execution will be moved to the trash.20160
TRASH_RETENTION_TIME_ACTIVITIES_ENABLEDbooleanPermanently delete activities from the trash after a timeout.true
TRASH_RETENTION_TIME_ACTIVITIES_MINUTESintegerThe number of minutes before activities are permanently deleted from the trash.20160
TRASH_RETENTION_TIME_BATCH_SIZEintegerHow many records to permanently delete from the trash at once.100
TRASH_RETENTION_TIME_INTERVAL_MINUTESintegerThe number of minutes to wait between checks for permanently deleting records from the trash.100
TRASH_RETENTION_TIME_RESOURCES_ENABLEDbooleanPermanently delete resources from the trash after a timeout.true
TRASH_RETENTION_TIME_RESOURCES_MINUTESintegerThe number of minutes before resources are permanently deleted from the trash.20160

User Interface

KeyTypeDescriptionDefault value
FILE_SIZE_BYTES_ALWAYS_LOAD_LIMITintegerThe maximum size of a file to always load into the in-browser editor.1048576
FILE_SIZE_BYTES_OPTIONAL_LOAD_LIMITintegerThe maximum size of a file to optionally load into the in-browser editor.10485760
MAX_OPEN_RECORDS_PER_PROJECTintegerThe 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_LIMITintegerHow many submitted messages to display in the messages popover10
MESSAGE_LIST_UNSUBMITTED_LIMITintegerHow many unsubmitted messages to display in the messages popover10
VISUALIZATION_MAX_NODESintegerThe maximum number of nodes shown in the dependency visualization graph.200
VISUALIZATION_REFRESH_INTERVAL_SECONDSintegerThe number of seconds between refreshes of the dependency visualization graph.5
WORKSPACE_HIGHLIGHT_COLORstringTo quickly visually identify Cloudomation workspaces you can choose the background color of the top bar.#FFFFFF

Internals

KeyTypeDescriptionDefault value
DB_KEEPALIVE_INTERVAL_SECONDSintegerThe number of seconds to wait between checking database connectivity.20
DB_KEEPALIVE_TIMEOUT_SECONDSintegerThe number of seconds after which a workspace process is considered "dead".60
EXECUTIONS_MAX_PARALLELintegerThe maximum number of executions one process is handling simultaneous.5
EXECUTION_PROCESSOR_ENABLEDbooleanWhen disabled the workspace will not process executions.true
GRAPHQL_QUERY_COMPLEXITY_LIMITintegerThe maximum "cost" of a single graphql query. TODO: document how cost is calculated...2000
IMPORT_REFERENCE_WAIT_TIMEOUT_SECONDSintegerHow many seconds to wait for a referenced record to be created during import.30
MEMORY_TRACING_FRAMESintegerMemory tracing frame count.
Zero (0) disables tracing.
0
MEMORY_TRACING_INTERVAL_SECONDSintegerHow many seconds to wait before taking another snapshot.3600
MEMORY_TRACING_SAVE_DIRECTORYstringThe directory to save tracing dumps to./tmp
SAVEPOINT_RETENTIONstringSavepoint 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_SECONDSintegerIf a schedule fails to execute wait this many seconds before creating a new one.60
SCHEDULE_MIN_INTERVAL_SUCCEEDED_SECONDSintegerIf a schedule succeeds wait this many seconds before creating a new one.60