Skip to content

Serialization

The Flyway lexicon serializes resources into TOML format compatible with Flyway v10+ CLI configuration (flyway.toml).

Run chant build to produce Flyway config from your declarations:

Terminal window
chant build
# Writes dist/flyway.toml

The generated file includes:

  • Root-level project properties (id, name, databaseType)
  • [flyway] namespace with global settings
  • [environments.<name>] sections for each environment
  • [environments.<name>.resolvers.<type>] for credential resolvers
  • [flywayDesktop] and [redgateCompare] optional namespaces
Chant (TypeScript)TOML outputRule
new FlywayProject({...})Root-level keysProject properties at document root
new FlywayConfig({...})[flyway] sectionGlobal Flyway settings
new Environment({displayName: "dev", ...})[environments.dev]Named environment section
resolve("vault", "password")${vault.password}Resolver reference string
placeholder("defaultSchema")${flyway:defaultSchema}Built-in placeholder string

The output is standard Flyway TOML. Use with the Flyway CLI:

Terminal window
flyway -environment=dev migrate
flyway -environment=prod validate