Sprout Configuration File¶
The configuration file follows the following standards.
By default sprout looks for a config/sprout.yml
file, you can specify a different file
using --config=path/to/file.yml
. This file is relative to the current working directory.
Complete Configuration File Example¶
# [optional] default properties to use defaults: # [optional, string, default: `core`] The default group to use if `--group` is not specified group: core # [optional, string, default: `/seed`] The root path of all the seed data path: /seed # [optional, int, default: `10`] Maximum number of simultaneous processes to run at a time simultaneousProcesses: 10 # [optional] The groups root collection allows you to specify custom paths for an individual group groups: # The name of the group (used when specifying `--group=<group>` core: # [optional, string] A custom path to the group if it does not follow the `/root/group/` hierarchy. This is absolute # or relative to the working directory path: /custom/path/to/group # [required, min: 1] Schemas specify each schema you wish to seed in the database and their connection information schemas: # name of the schema to reference. There must be at least 1 schema in the configuration file schema1: # [optional, string] the actual name of the schema in the database. If not specified, the schema name from # above will be used schema: 'schema' # [optional, string] A custom directory name for this schema, only required if it is different from the `schema` value dirName: directory # [optional, array[string]] A list of tables (as regular expressions) to exclude from actions exclude: - 'table1' - 'table2' - 'migrations' - 'table[456]' - '/^table_\d{4}/' # [required] Connection details connection: &default_connection # [required, string] Username of the database connection user: 'morphism' # [required, string] Password of the database connection password: 'morphism' # [required] driver for the database connection, currently only: `mysql` is supported driver: 'mysql' # [required, string] database on a remote host host: 'db' # [optional, string] name of the database. If not specified `<schema>` will be used dbName: 'schema' # [optional, int, default: `3306`] The port to connect on port: 3306 # A second schema, schema2: connection: # you can use yaml anchors to reduce duplicate data <<: *default_connection
Minimal Configuration File¶
This is a minimal configuration file with a single schema and connection
schemas: first_schema: connection: host: db driver: mysql user: root password: rootpassword
Excludes¶
See the excludes page for more information of the effect of exclusion.