kubevela / terraform-controller

A Kubernetes Terraform Controller, managing Cloud resources through Kubernetes
Apache License 2.0
155 stars 67 forks source link

Question: Is it possible to use openstack provider and feed it in terraform controller, in order to provision vm and other Openstack resources just like GCP and Azure? #90

Open geokal opened 3 years ago

zzxwill commented 3 years ago

@geokal Thanks for asking.

The answer is yes. You can check the official openstack provider in Terraform official site https://registry.terraform.io/providers/terraform-provider-openstack/openstack/latest/docs.

So you wanna provision resources in a Kubernetes cluster?

geokal commented 3 years ago

Hi @zzxwill ! Thanks ! Answering in your question: Exactly that is the plan ! I want to use the terraform to provision resources on openstack hosts as an additional option instead of using KubeVirt. I did not came across any reference in docs except GCP Azure etc,so I though i might have to do some work upfront to make it work.

zzxwill commented 3 years ago

@geokal Exactly! We need to support openstack first. It's simple. You can refer to PR like https://github.com/oam-dev/terraform-controller/pull/79, https://github.com/oam-dev/terraform-controller/pull/27. I can assist the feature:)

geokal commented 3 years ago

@zzxwill Perfect! should I go ahead and add/test openstack as CloudProvider as well as a OpenstackCredentials struct in controllers/util/provider.go and a "case" in switch GetProviderCredentials?

zzxwill commented 3 years ago

@geokal Right.

zzxwill commented 2 years ago

@geokal How is it going? Do you need any help?

geokal commented 2 years ago

Hi @zzxwill been really busy in work lately. I should get back to it next week ! Also there is the cdktf project from Terraform, where you write tf code in Typescript, Python or C# and it gets translated to tf files or HCL. Should be a good project to integrate with TF Controller! Also my main interest was initially with KubeVela , especially if I could register new app/service using the TF controller and the custom code aka ComponentDefinition and then having them as part of the Service Catalog in order to deploy instances of them in another cluster. Yeah i know lots of ideas!! So in essence you built something like a complete lifecycle managment platform