-
Notifications
You must be signed in to change notification settings - Fork 212
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for Cockroach DB #372
Comments
Pulumi-wrapped-terraform postgres provider with a Cockroach DB backend. Proper discussion is here: cyrilgdn/terraform-provider-postgresql#372 To start using it locally, after installing the dependencies (I believe just `go` and `pulumictl`: https://github.com/pulumi/pulumictl), with the appropriate version number (I'm using v3.10.0): `make provider && pulumi plugin rm resource postgresql && pulumi plugin install resource postgresql v3.10.0 -f bin/pulumi-resource-postgresql` The version number just needs to match what you are currently depending on. `pulumi plugin ls` should show it.
@NidalShaterM - I did not, though I still use it locally. I never investigated how to publish it, so if it's actually the publishing part, I won't be much assistance, if it's something else, feel free to comment here. |
@kylepl, thanks for the quick response, I was trying to modify and use the provider with your changes, so I forked this repo and tried to use github directly as a source in the required_provider
I tried also to use git submodules:
then
even when publishing the provider and try to run apply (https://registry.terraform.io/providers/NidalShaterM/postgresql/latest)
so is there a faster way to test the CockroachDB changes? |
So the last error message looks like progress - it is complaining that the version number is wrong (so it is running something), the CCL is from Cockroach. So I'm actually using a wrapper over Terraform (Pulumi), so I'm not sure the syntax on the Terraform side, but one thing in my comment but not the in the merge (since it is outside of this repo itself, is):
so I set |
adding but when I tried to remove the user, I got the following error
adding |
Agreed that there is likely non-trivial development to make it work well, I hadn't, for instance, tried removing a user. |
Hi,
I'm attempting to use this provider with Cockroach DB, which aims to be ~Postgres compatible. A few different bugs show that features relied upon by cockroach DB:
I've managed to hack-up a version such that I can at least support the
Role
resource, and tested it locally (commit). This just a proof-of-concept, but solves my immediate issue.This provider already has conditional features depending on the version, so my question is, is it reasonable to expand this to support other "near-Postgres" databases? So Cockroach is one, Yugabyte another.
Options I can picture:
To add a few notes about how the conditional features could look:
SELECT version();
, which does not work for Cockroach at least, but users can setexpectedVersion
. Ideally, parsing for Cockroach and other versions would be supported.Of course, there are questions about the resilience of these other implementations (e.g. adding integration testing with each one).
Thoughts?
The text was updated successfully, but these errors were encountered: