Variable Types
The RSGo Manifest Format supports typed variables with automatic UI generation and validation. Each type has specific properties and a matching editor in the web UI.
Basic Types
Section titled “Basic Types”String
Section titled “String”Simple text input with optional pattern validation.
EMAIL: label: Email Address type: String pattern: "^[^@]+@[^@]+\\.[^@]+$" patternError: Please enter a valid email address required: true placeholder: user@example.com| Property | Description |
|---|---|
pattern | Regular expression for validation |
patternError | Error message when pattern doesn’t match |
placeholder | Placeholder text in input field |
UI: Single-line text input
Number
Section titled “Number”Numeric input with optional min/max constraints.
WORKERS: label: Worker Threads type: Number default: "4" min: 1 max: 32 description: Number of parallel workers (1-32)| Property | Description |
|---|---|
min | Minimum value |
max | Maximum value |
UI: Number field with validation
Boolean
Section titled “Boolean”Toggle switch for yes/no values.
DEBUG: label: Debug Mode type: Boolean default: "false" description: Enables extended logging outputValid values: "true" or "false" (as strings)
UI: Toggle switch
Password
Section titled “Password”Password input with hidden display.
DB_PASSWORD: label: Database Password type: Password required: true description: At least 8 charactersUI: Password field with eye icon to show/hide
Network port with automatic validation (1-65535).
WEB_PORT: label: Web Port type: Port default: "8080" description: HTTP port for the application| Property | Description |
|---|---|
min | Minimum port (default: 1) |
max | Maximum port (default: 65535) |
UI: Number field with port validation
Select
Section titled “Select”Dropdown selection from predefined options.
ENVIRONMENT: label: Environment type: Select default: development options: - value: development label: Development description: Local development environment - value: staging label: Staging description: Test environment - value: production label: Production description: Live system| Option Property | Description |
|---|---|
value | Technical value (required) |
label | Display text |
description | Additional description |
UI: Dropdown menu
Extended Types
Section titled “Extended Types”URL input with format validation.
API_ENDPOINT: label: API Endpoint description: External API endpoint URL type: Url default: "https://api.example.com" placeholder: "https://..."UI: Text input with URL validation
Email address input with format validation.
ADMIN_EMAIL: label: Admin Email description: Administrator email for notifications type: Email default: admin@example.com placeholder: admin@yourdomain.comUI: Text input with email validation
File system path input.
DATA_PATH: label: Data Path description: Path for data storage type: Path default: /dataUI: Text input for paths
MultiLine
Section titled “MultiLine”Multi-line text input for larger content.
SSL_CERTIFICATE: label: SSL Certificate description: PEM-encoded SSL certificate type: MultiLine placeholder: | -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----UI: Textarea with multiple lines
Connection String Types
Section titled “Connection String Types”These types provide specialized builder dialogs for database connections.
SqlServerConnectionString
Section titled “SqlServerConnectionString”Microsoft SQL Server connection string.
DB_CONNECTION: label: SQL Server Connection type: SqlServerConnectionString required: true group: DatabaseBuilder Dialog Features:
- Configure server and port separately
- Windows Authentication or SQL Login
- Options: Encrypt, TrustServerCertificate, MARS
- Live preview of connection string
- Test Connection button
Generated Format:
Server=myserver,1433;Database=mydb;User Id=sa;Password=***;TrustServerCertificate=truePostgresConnectionString
Section titled “PostgresConnectionString”PostgreSQL connection string.
PG_CONNECTION: label: PostgreSQL Connection type: PostgresConnectionString required: trueBuilder Dialog Features:
- Host, Port, Database
- Username and Password
- SSL Mode (Disable, Require, Prefer)
- Connection Pooling options
- Test Connection
Generated Format:
Host=localhost;Port=5432;Database=mydb;Username=postgres;Password=***;SSL Mode=PreferMySqlConnectionString
Section titled “MySqlConnectionString”MySQL/MariaDB connection string.
MYSQL_CONNECTION: label: MySQL Connection type: MySqlConnectionString required: trueBuilder Dialog Features:
- Server and Port
- Database and User
- SSL options
- Charset configuration
- Test Connection
Generated Format:
Server=localhost;Port=3306;Database=mydb;User=root;Password=***;SslMode=RequiredMongoConnectionString
Section titled “MongoConnectionString”MongoDB connection string.
MONGO_CONNECTION: label: MongoDB Connection type: MongoConnectionStringBuilder Dialog Features:
- Single Host or Replica Set
- Authentication and AuthSource
- SSL/TLS options
- Read Preference
- Test Connection
Generated Format:
mongodb://user:pass@host1:27017,host2:27017/mydb?replicaSet=rs0&authSource=adminRedisConnectionString
Section titled “RedisConnectionString”Redis connection string.
REDIS_URL: label: Redis Server type: RedisConnectionString default: redis://localhost:6379Builder Dialog Features:
- Host and Port
- Password (optional)
- Database number
- SSL options
- Sentinel configuration
Generated Format:
redis://user:password@host:6379/0?ssl=trueEventStoreConnectionString
Section titled “EventStoreConnectionString”EventStoreDB gRPC connection string.
EVENTSTORE_CONNECTION: label: EventStore Connection type: EventStoreConnectionStringBuilder Dialog Features:
- gRPC Endpoint
- TLS configuration
- Cluster mode
Generated Format:
esdb://admin:changeit@localhost:2113?tls=trueConnectionString (Generic)
Section titled “ConnectionString (Generic)”Generic connection string without specialized builder.
CUSTOM_CONNECTION: label: Custom Connection type: ConnectionStringUI: Simple text field (no builder)
Variable Grouping
Section titled “Variable Grouping”Variables can be organized into logical groups:
variables: # Database group DB_HOST: type: String group: Database order: 1 DB_PORT: type: Port group: Database order: 2 DB_PASSWORD: type: Password group: Database order: 3
# Network group WEB_PORT: type: Port group: Network order: 1 API_PORT: type: Port group: Network order: 2| Property | Description |
|---|---|
group | Name of the group |
order | Order within the group |
UI: Variables are displayed ordered by groups with group headers.
Recommended Groups:
| Group | Description |
|---|---|
General | General settings |
Network | Ports, DNS, URLs |
Database | Database connections |
Security | Certificates, passwords |
Logging | Log levels, outputs |
Performance | Timeouts, pools, threads |
Advanced | Advanced configuration |
Validation
Section titled “Validation”All types support:
| Property | Description |
|---|---|
required | Field must be filled |
default | Default value |
description | Help text below the field |
Validation Order
Section titled “Validation Order”- Required check (if
required: true) - Type-specific validation (e.g., port range)
- Pattern validation (if
patterndefined)
Error Display
Section titled “Error Display”Validation errors are displayed directly below the input field in red.
Complete Example
Section titled “Complete Example”variables: # String with pattern VERSION_TAG: label: Version Tag type: String default: v1.0.0 pattern: "^v\\d+\\.\\d+\\.\\d+$" patternError: Version must match format v#.#.# (e.g., v1.0.0) group: Versions order: 1
# Number with range MAX_CONNECTIONS: label: Max Connections type: Number default: "100" min: 1 max: 1000 group: Performance
# Boolean ENABLE_DEBUG: label: Enable Debug Mode type: Boolean default: "false" group: General
# Password ADMIN_PASSWORD: label: Admin Password type: Password required: true group: Security
# Port HTTP_PORT: label: HTTP Port type: Port default: "8080" group: Network
# Select ENVIRONMENT: label: Environment type: Select default: development options: - value: development label: Development - value: staging label: Staging - value: production label: Production group: General
# URL API_ENDPOINT: label: API Endpoint type: Url default: "https://api.example.com" group: External Services
# Email ADMIN_EMAIL: label: Admin Email type: Email default: admin@example.com group: Notifications
# MultiLine SSL_CERTIFICATE: label: SSL Certificate type: MultiLine placeholder: | -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- group: Security
# SQL Server Connection DATABASE: label: SQL Server Connection type: SqlServerConnectionString group: Database