|
| 1 | +--- |
| 2 | +# generated by https://github.com/hashicorp/terraform-plugin-docs |
| 3 | +page_title: "marmot_pipeline Resource - marmot" |
| 4 | +subcategory: "" |
| 5 | +description: |- |
| 6 | + A pipeline: a plugin pointed at a source that discovers and catalogs assets on a recurring schedule. Rather than declaring each asset by hand, point a plugin at a source and Marmot keeps the catalog in sync from what it finds there. |
| 7 | +--- |
| 8 | + |
| 9 | +# marmot_pipeline (Resource) |
| 10 | + |
| 11 | +A pipeline: a plugin pointed at a source that discovers and catalogs assets on a recurring schedule. Rather than declaring each asset by hand, point a plugin at a source and Marmot keeps the catalog in sync from what it finds there. |
| 12 | + |
| 13 | +## Example Usage |
| 14 | + |
| 15 | +```terraform |
| 16 | +resource "marmot_pipeline" "bigquery_analytics" { |
| 17 | + name = "analytics" |
| 18 | + plugin_id = "bigquery" |
| 19 | +
|
| 20 | + config = jsonencode({ |
| 21 | + project_id = "acme-analytics-prod" |
| 22 | + use_default_credentials = true |
| 23 | + }) |
| 24 | +
|
| 25 | + cron_expression = "0 */6 * * *" # every six hours |
| 26 | + enabled = true |
| 27 | +} |
| 28 | +``` |
| 29 | + |
| 30 | +<!-- schema generated by tfplugindocs --> |
| 31 | +## Schema |
| 32 | + |
| 33 | +### Required |
| 34 | + |
| 35 | +- `config` (String) Plugin configuration as a JSON object. The accepted keys depend on the plugin; the server validates this against the plugin and rejects an invalid config. Use `jsonencode()` to build it from HCL. |
| 36 | +- `cron_expression` (String) Cron expression setting how often the pipeline runs, for example `0 * * * *` for hourly. |
| 37 | +- `name` (String) Name of the pipeline |
| 38 | +- `plugin_id` (String) ID of the plugin that runs the ingestion, for example `postgresql`, `bigquery` or `kafka`. |
| 39 | + |
| 40 | +### Optional |
| 41 | + |
| 42 | +- `enabled` (Boolean) Whether the pipeline runs on its cron. Defaults to `true`. Set to `false` to keep the pipeline but pause automatic runs. |
| 43 | + |
| 44 | +### Read-Only |
| 45 | + |
| 46 | +- `created_at` (String) Creation timestamp |
| 47 | +- `id` (String) Pipeline ID |
| 48 | +- `last_run_at` (String) Timestamp of the most recent run |
| 49 | +- `last_run_status` (String) Status of the most recent run |
| 50 | +- `managed_by` (String) What manages the pipeline, for example the API or the CLI |
| 51 | +- `next_run_at` (String) Timestamp of the next scheduled run |
| 52 | +- `updated_at` (String) Last update timestamp |
| 53 | + |
| 54 | +## Import |
| 55 | + |
| 56 | +Import is supported using the following syntax: |
| 57 | + |
| 58 | +The [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import) can be used, for example: |
| 59 | + |
| 60 | +```shell |
| 61 | +# Ingestion schedules are imported by their ID. |
| 62 | +terraform import marmot_pipeline.postgres 018e1234-5678-7abc-def0-123456789abc |
| 63 | +``` |
0 commit comments