{
  "schema_version": 2,
  "id": "integrate/redis-data-integration/reference/cli/redis-di-scaffold",
  "title": "redis-di scaffold",
  "url": "https://redis.io/docs/latest/integrate/redis-data-integration/reference/cli/redis-di-scaffold/",
  "summary": "Generates pipeline configuration files",
  "aliases": [
    "/integrate/redis-data-integration/ingest/reference/cli/redis-di-scaffold/"
  ],
  "tags": [
    "redis-di"
  ],
  "last_updated": "2026-09-18T16:41:35+01:00",
  "page_type": "content",
  "content_hash": "93bbaa24bd951cc02ab1b1b1be937540fe141707857d89067b623826c5aaabc1",
  "sections": [
    {
      "id": "overview",
      "title": "Overview",
      "role": "overview",
      "text": "Generates a starter pipeline configuration for the given source database type. With `--dir`, the\ncommand writes a `config.yaml` file and a `jobs/job.yaml` file into that directory, prompting\nbefore overwriting existing files unless `--force` is set. Without `--dir`, it prints the\nconfiguration to standard output."
    },
    {
      "id": "usage",
      "title": "Usage",
      "role": "syntax",
      "text": "[code example]"
    },
    {
      "id": "options",
      "title": "Options",
      "role": "parameters",
      "text": "| Option          | Description                                                                                                                     |\n| :-------------- | :------------------------------------------------------------------------------------------------------------------------------ |\n| `--db-type`     | Source database type (required): `mariadb`, `mongodb`, `mysql`, `oracle`, `postgresql`, `snowflake`, `sqlserver`, or `spanner`. |\n| `--db-flavor`   | Source database flavor: `mongodb-atlas`, `mongodb-replica-set`, or `mongodb-sharded-cluster`.                                   |\n| `--source-name` | Name of the generated source; defaults to the database type.                                                                    |\n| `--dir`         | Directory to write the configuration and job files to; prints the configuration to standard output when omitted.                |\n| `--force`       | Skip the confirmation prompt when overwriting an existing file.                                                                 |\n\nThis command also accepts the\n[global options](https://redis.io/docs/latest/integrate/redis-data-integration/reference/cli/redis-di#global-options)."
    },
    {
      "id": "example",
      "title": "Example",
      "role": "example",
      "text": "[code example]"
    }
  ],
  "examples": [
    {
      "id": "usage-ex0",
      "language": "plaintext",
      "code": "redis-di scaffold [flags]",
      "section_id": "usage"
    },
    {
      "id": "example-ex0",
      "language": "bash",
      "code": "# Print a PostgreSQL configuration to stdout\nredis-di scaffold --db-type postgresql\n\n# Write a MySQL configuration into a directory\nredis-di scaffold --db-type mysql --dir /opt/rdi/config\n\n# Name the generated source 'inventory' instead of 'mysql'\nredis-di scaffold --db-type mysql --source-name inventory --dir /opt/rdi/config",
      "section_id": "example"
    }
  ]
}
