{"id":20448919,"url":"https://github.com/koslib/terraform-provider-planetscale","last_synced_at":"2025-04-13T01:39:58.793Z","repository":{"id":144101208,"uuid":"597877102","full_name":"koslib/terraform-provider-planetscale","owner":"koslib","description":"A Terraform provider for Planetscale, the world's most advanced database platform. Built using the Terraform Plugin Framework.","archived":false,"fork":false,"pushed_at":"2025-03-13T00:32:02.000Z","size":208,"stargazers_count":7,"open_issues_count":3,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-13T01:39:39.923Z","etag":null,"topics":["planetscale","terraform","terraform-provider"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/koslib.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-02-05T22:13:15.000Z","updated_at":"2024-10-01T14:53:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"9a53a55e-099a-4473-8402-94781216cf8b","html_url":"https://github.com/koslib/terraform-provider-planetscale","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koslib%2Fterraform-provider-planetscale","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koslib%2Fterraform-provider-planetscale/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koslib%2Fterraform-provider-planetscale/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koslib%2Fterraform-provider-planetscale/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/koslib","download_url":"https://codeload.github.com/koslib/terraform-provider-planetscale/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654027,"owners_count":21140236,"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":["planetscale","terraform","terraform-provider"],"created_at":"2024-11-15T10:37:41.541Z","updated_at":"2025-04-13T01:39:58.772Z","avatar_url":"https://github.com/koslib.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Terraform Provider for Planetscale\n\nThis is an unofficial Terraform provider for [Planetscale](https://planetscale.com/) built using the new\n[Terraform Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework) 🔥\n\nProvider documentation: https://registry.terraform.io/providers/koslib/planetscale/latest/docs\n\n## Getting started\n\nAdd this provider in your terraform configuration block:\n\n```terraform\nterraform {\n  required_providers {\n    planetscale = {\n      source = \"koslib/planetscale\"\n      version = \"~\u003e 0.5\"\n    }\n  }\n}\n\n# Configure the planetscale provider\nprovider \"planetscale\" {\n  service_token_id = \"\u003cmy-service-token-id\u003e\"\n  service_token    = \"\u003cmy-service-token\u003e\"\n}\n```\n\nSee the following section for more quick examples as well as the `/examples` directory for more detailed demonstrations.\n\n## Examples\n\nThis provider focuses in being efficient and getting-the-job-done as easy as possible.\n\nThe following is a very simple demonstration of an example use of this provider for typical use-cases with Planetscale:\n\n```terraform\n# Create a database\nresource \"planetscale_database\" \"this\" {\n  organization = \"my-awesome-org\"\n  name         = \"test-from-tf\"\n}\n\n# List databases in your organization\ndata \"planetscale_databases\" \"all\" {\n  organization = \"my-awesome-org\"\n}\n\n# Output the values of the databases fetched in the data source above\noutput \"list_databases\" {\n  value = data.planetscale_databases.all\n}\n\n# A useful data source for fetching all regions enabled for you organization\ndata \"planetscale_regions\" \"all\" {}\n\n# Create a database branch\nresource \"planetscale_database_branch\" \"this\" {\n  organization = planetscale_database.this.organization\n  database     = planetscale_database.this.name\n  name         = \"my-tf-branch\"\n}\n\n# Create a database branch password\nresource \"planetscale_database_branch_password\" \"my-user\" {\n  organization = planetscale_database.this.organization\n  database     = planetscale_database.this.name\n  branch       = planetscale_database_branch.this.name\n  name         = \"my-staging-env\"\n}\n\n```\n\nMore examples can be found in the `/examples` directory.\n\n## Development\n\nThis provider has been based on the awesome work Planetscale has done with their [Golang SDK](https://github.com/planetscale/planetscale-go).\n\nPlanetscale API docs can be found [here](https://api-docs.planetscale.com/).\n\n### Contributing\n\nPlease use this provider and test this out in all possible scenarios! The main drive behind making this Terraform \nprovider was to enable the use of Planetscale in an as automated as possible manner. \n\nPlease open [Issues](https://github.com/koslib/terraform-provider-planetscale/issues) for any problem you face or if you\ngot an idea for an improvement - or just need help!\n\nBeing more technical? [PRs](https://github.com/koslib/terraform-provider-planetscale/pulls) are welcome!\n\nInterested in becoming a maintainer in this Github repository? [Get in touch](https://twitter.com/koslib)!\n\n### Docs\n\nDocs can be generated automatically with \n\n```\ngo generate ./...\n``` \n\nSome points to remember and enhance potentially in future releases:\n\n1. The `/examples` path contains examples for both data-sources and resources that will end up in the documentation generated.\n2. The `Schema` in the resources and data-sources need to contain a `Description` so that the fields appearing in the documentation can actually make sense.\n\n## Known limitations/issues\n\n1. Resources updates: the Planetscale Golang SDK, on which this Terraform provider heavily relies on, does not support update operations everywhere. This means configuration of resources is not always successful.\n2. Data sources filtering: the filters supported are the filters supported by the Planetscale Golang SDK. More filters will be added as soon as the SDK offers support for them.\n3. No `import` functionality yet.\n\n## Licence\n\nMIT License\n\nCopyright (c) 2023 Konstantinos Livieratos\n\nSee the full licence [here](https://github.com/koslib/terraform-provider-planetscale/blob/main/LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkoslib%2Fterraform-provider-planetscale","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkoslib%2Fterraform-provider-planetscale","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkoslib%2Fterraform-provider-planetscale/lists"}