temporal-server validate-dynamic-config command validates dynamic configuration files for syntax errors, unknown keys, and type mismatches.
Synopsis
Description
Validates one or more dynamic configuration YAML files against known configuration keys and their expected types. This command helps catch configuration errors before deploying to production. The validator checks:- YAML syntax validity
- Known configuration keys
- Correct value types for each key
- Valid constraint names
- Proper constraint value types
Arguments
file
Path to one or more dynamic configuration files to validate.- Type: String (file path)
- Required: Yes (at least one file)
- Multiple: Yes
Output
For each file, the command prints:- File name
- Any errors found
- Any warnings found
Success Output
Error Output
Exit Codes
- 0: All files are valid (no errors)
- 1: One or more files contain errors
Common Errors
Unknown Key
unknown key: "frontend.namespacRPS"
Type Mismatch
type mismatch for "history.maxAutoResetPoints": expected int, got string
Invalid Constraint
unknown constraint: "invalidConstraint"
Missing Value
key "frontend.namespaceRPS" has no value
Valid Configuration Example
Validation in CI/CD
GitHub Actions
GitLab CI
Pre-commit Hook
Makefile Integration
Best Practices
- Validate Before Deploy: Always validate configs before deploying to production
- Automate Validation: Add validation to CI/CD pipelines
- Version Control: Keep dynamic configs in version control
- Comment Changes: Document why specific values were chosen
- Test Changes: Test config changes in development first
- Regular Review: Periodically review and update configurations
Troubleshooting
File Not Found
Permission Denied
YAML Syntax Error
- Missing colons
- Incorrect indentation
- Unclosed quotes
- Invalid characters