Skip to content

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.

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
PropertyDescription
patternRegular expression for validation
patternErrorError message when pattern doesn’t match
placeholderPlaceholder text in input field

UI: Single-line text input


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)
PropertyDescription
minMinimum value
maxMaximum value

UI: Number field with validation


Toggle switch for yes/no values.

DEBUG:
label: Debug Mode
type: Boolean
default: "false"
description: Enables extended logging output

Valid values: "true" or "false" (as strings)

UI: Toggle switch


Password input with hidden display.

DB_PASSWORD:
label: Database Password
type: Password
required: true
description: At least 8 characters

UI: 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
PropertyDescription
minMinimum port (default: 1)
maxMaximum port (default: 65535)

UI: Number field with port validation


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 PropertyDescription
valueTechnical value (required)
labelDisplay text
descriptionAdditional description

UI: Dropdown menu


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.com

UI: Text input with email validation


File system path input.

DATA_PATH:
label: Data Path
description: Path for data storage
type: Path
default: /data

UI: Text input for paths


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


These types provide specialized builder dialogs for database connections.

Microsoft SQL Server connection string.

DB_CONNECTION:
label: SQL Server Connection
type: SqlServerConnectionString
required: true
group: Database

Builder 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=true

PostgreSQL connection string.

PG_CONNECTION:
label: PostgreSQL Connection
type: PostgresConnectionString
required: true

Builder 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=Prefer

MySQL/MariaDB connection string.

MYSQL_CONNECTION:
label: MySQL Connection
type: MySqlConnectionString
required: true

Builder 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=Required

MongoDB connection string.

MONGO_CONNECTION:
label: MongoDB Connection
type: MongoConnectionString

Builder 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=admin

Redis connection string.

REDIS_URL:
label: Redis Server
type: RedisConnectionString
default: redis://localhost:6379

Builder Dialog Features:

  • Host and Port
  • Password (optional)
  • Database number
  • SSL options
  • Sentinel configuration

Generated Format:

redis://user:password@host:6379/0?ssl=true

EventStoreDB gRPC connection string.

EVENTSTORE_CONNECTION:
label: EventStore Connection
type: EventStoreConnectionString

Builder Dialog Features:

  • gRPC Endpoint
  • TLS configuration
  • Cluster mode

Generated Format:

esdb://admin:changeit@localhost:2113?tls=true

Generic connection string without specialized builder.

CUSTOM_CONNECTION:
label: Custom Connection
type: ConnectionString

UI: Simple text field (no builder)


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
PropertyDescription
groupName of the group
orderOrder within the group

UI: Variables are displayed ordered by groups with group headers.

Recommended Groups:

GroupDescription
GeneralGeneral settings
NetworkPorts, DNS, URLs
DatabaseDatabase connections
SecurityCertificates, passwords
LoggingLog levels, outputs
PerformanceTimeouts, pools, threads
AdvancedAdvanced configuration

All types support:

PropertyDescription
requiredField must be filled
defaultDefault value
descriptionHelp text below the field
  1. Required check (if required: true)
  2. Type-specific validation (e.g., port range)
  3. Pattern validation (if pattern defined)

Validation errors are displayed directly below the input field in red.


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