Config file reference

Naming

DipDup configuration file is usually stored on the top level of your project and has default name dipdup.yml. You can also have multiple configuration files and explicitly provide the target name via -c option when using CLI.
1
dipdup -c custom-config.yml
Copied!

General structure

Configuration file consists of several logical blocks:
Top level sections
Header
spec_version package
Inventory
contracts datasources
Indexer specifications
indexes templates*
Deployment options
database sentry* hasura*
Plugin settings
mempool* metadata*
* — optional sections

Environment variables

DipDup supports compose-style variable expansion with optional default value:
1
field: ${ENV_VAR:-default_value}
Copied!
You can use environment variables throughout the configuration file except for the property names (keys).

Multiple config files

DipDup allows you to customize configuration for a specific environment or a workflow. It works pretty much the same as in Docker Compose, but only for the top level sections (i.e. you cannot override just a single nested property, you need to provide the entire new section). In order to merge several DipDup files use -c command line option multiple times:
1
dipdup -c dipdup.yml -c dipdup.prod.yml run
Copied!
Last modified 3mo ago