Configuration Schema Versioning and Details
Alembic Version
The default_properties.yaml
as well as the schema and configurations exports will include an alembic_version
property.
The value is a unique hash that indicates the schema revision of the database and thus the format and properties that make
up and import/export file.
This version typically changes with each build of the application.
The system will only allow imports and seeding of files that match it’s internal alembic_version
. This means that
Administrators are not able to automatically export configurations from an older build of Workspaces and import it in
a newer version - only between like versions.
All Users Group ID
The All Users group has special significance within the application and must be defined in the schema
with group_id 68d557ac-4cac-42cc-a9f3-1c7c853de0f3
Default Global Settings
The default_properties.yaml
that ships with each build of workspaces will have a list of
Global Settings (settings:
). Administrators are welcome to adjust the default
values, but they should not add or remove settings as the system is expecting these exact settings to be defined.
Example Global Settings
Below is an example of a few global settings. The full configuration will have dozens. It is ok to adjust the values, but none of the entries should be removed, or other properties altered.
settings:
- category: logging
description: The logging protocol used, allowed values are internal, https, splunk, and elasticsearch
name: log_protocol
sanitize: false
services_restart: manager,api
title: Log Protocol
value: internal
value_type: string
- category: logging
description: The port to use for logging communication.
name: log_port
sanitize: false
services_restart: manager,api
title: Log Port
value: '443'
value_type: int
Default Group Settings
The default_properties.yaml
that ships with each build of workspaces will have a list default Group Settings.
The system defaults are those that have no group_id assigned
. Administrators should not add/remove or adjust the defaults.
However, Administrators can assign additional group settings to existing groups, such as the All Users group,
to change default behaviors for users.
Example Group Settings
Do not adjust the Default Group Settings - those that don’t have group_id
’s assigned.
group_settings:
- description: Allow audio streaming for a Kasm.
group_id: null
group_setting_id: "${uuid:group_setting_id:2}"
name: allow_kasm_audio
value: 'False'
value_type: bool
group_settings:
- description: Allow audio streaming for a Kasm.
group_id: 68d557ac-4cac-42cc-a9f3-1c7c853de0f3
group_setting_id: "${uuid:group_setting_id:1001}"
name: allow_kasm_audio
value: 'True'
value_type: bool