{"id":18830791,"url":"https://github.com/materializeinc/terraform-provider-materialize","last_synced_at":"2026-02-17T12:26:03.900Z","repository":{"id":65724307,"uuid":"597962674","full_name":"MaterializeInc/terraform-provider-materialize","owner":"MaterializeInc","description":"A Terraform provider for Materialize","archived":false,"fork":false,"pushed_at":"2025-04-07T13:10:00.000Z","size":2554,"stargazers_count":11,"open_issues_count":36,"forks_count":8,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-11T17:46:53.784Z","etag":null,"topics":["materialize","terraform"],"latest_commit_sha":null,"homepage":"https://registry.terraform.io/providers/MaterializeInc/materialize","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MaterializeInc.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-06T04:55:06.000Z","updated_at":"2025-04-07T13:10:02.000Z","dependencies_parsed_at":"2023-09-26T21:56:07.393Z","dependency_job_id":"56bceafa-d857-412b-9d95-1f9144d8f287","html_url":"https://github.com/MaterializeInc/terraform-provider-materialize","commit_stats":null,"previous_names":[],"tags_count":67,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaterializeInc%2Fterraform-provider-materialize","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaterializeInc%2Fterraform-provider-materialize/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaterializeInc%2Fterraform-provider-materialize/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaterializeInc%2Fterraform-provider-materialize/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MaterializeInc","download_url":"https://codeload.github.com/MaterializeInc/terraform-provider-materialize/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248819141,"owners_count":21166470,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["materialize","terraform"],"created_at":"2024-11-08T01:50:48.385Z","updated_at":"2026-02-17T12:26:03.889Z","avatar_url":"https://github.com/MaterializeInc.png","language":"Go","readme":"# Terraform Provider: Materialize\n\n[![Slack Badge](https://img.shields.io/badge/Join%20us%20on%20Slack!-blueviolet?style=flat\u0026logo=slack\u0026link=https://materialize.com/s/chat)](https://materialize.com/s/chat)\n\nThis repository contains a Terraform provider for managing resources in a [Materialize](https://materialize.com/) account.\n\n## Requirements\n\n* Materialize \u003e= 0.27\n* [Terraform](https://www.terraform.io/downloads.html) \u003e= 1.0.3\n* (Development) [Go](https://golang.org/doc/install) \u003e= 1.24\n\n## Installation\n\nThe `materialize` provider is published to the [Terraform Registry](https://registry.terraform.io/providers/MaterializeInc/materialize/latest). To use it, add the following configuration to your Terraform settings:\n\n```hcl\nterraform {\n  required_providers {\n    materialize = {\n      source = \"MaterializeInc/materialize\"\n    }\n  }\n}\n```\n\nConfigure the provider by adding the following block to your Terraform project:\n\n```hcl\nprovider \"materialize\" {\n  password       = \"materialize_password\"\n  default_region = \"aws/us-east-1\"\n  database       = \"materialize\"\n}\n```\n\nOnce you have configured the provider, you can start defining resources using Terraform. You can find examples on how to define resources in the [`examples`](./examples/) directory.\n\n## Usage\n\n### Managing resources\n\nYou can manage resources using the `terraform apply` command. For example, to create a new connection named `kafka_connection`, add the following resource definition to your Terraform project:\n\n```hcl\n# main.tf\nresource \"materialize_connection_kafka\" \"kafka_connection\" {\n  name = \"kafka_connection\"\n  kafka_broker {\n    broker = \"b-1.hostname-1:9096\"\n  }\n  sasl_username {\n    text = \"user\"\n  }\n  sasl_password {\n    name          = \"kafka_password\"\n    database_name = \"materialize\"\n    schema_name   = \"public\"\n  }\n  sasl_mechanisms = \"SCRAM-SHA-256\"\n  progress_topic  = \"example\"\n}\n```\n\n### Data sources\n\nYou can use data sources to retrieve information about existing resources. For example, to retrieve information about the existing sinks in your Materialize region, add the following data source definition to your Terraform project:\n\n```hcl\n# main.tf\ndata \"materialize_connection\" \"all\" {}\n\noutput name {\n  value       = data.materialize_connection.all\n}\n```\n\n### Importing existing resources\n\nYou can import existing resources into your Terraform state using the `terraform import` command. For this, you will need the `id` of the resource from the respective [`mz_catalog`](https://materialize.com/docs/sql/system-catalog/mz_catalog/) system table.\n\nFor example, to import an existing connection named `kafka_connection`, first add the resource definition to your Terraform project:\n\n```hcl\n# main.tf\nresource \"materialize_connection_kafka\" \"kafka_connection\" {\n  name = \"kafka_connection\"\n  kafka_broker {\n    broker = \"b-1.hostname-1:9096\"\n  }\n}\n```\n\nThen, look up the connection id (`connection_id`) in [`mz_connections`](https://materialize.com/docs/sql/system-catalog/mz_catalog/#mz_connections) and run:\n\n```bash\nterraform import materialize_connection_kafka.kafka_connection \u003cconnection_id\u003e\n```\n\nAfter the import, you can check the state of the resource by running:\n\n```bash\nterraform state show materialize_connection_kafka.kafka_connection\n```\n\n## Contributing\n\nPlease see [CONTRIBUTING.md](CONTRIBUTING.md) for instructions on how to contribute to this provider.\n\n## License\n\nThis provider is distributed under the [Apache License, Version 2.0](LICENSE).\n\n[Materialize Cloud]: https://cloud.materialize.com\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaterializeinc%2Fterraform-provider-materialize","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaterializeinc%2Fterraform-provider-materialize","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaterializeinc%2Fterraform-provider-materialize/lists"}