Manage and mutate infrastructure with Terraform by running it in Kubernetes as a controller!
This is an example of infrastructure as cloud native software. This repository is not intended to be used in production, but rather offers a starting point for people to start looking at what it would take to run infrastructure as software.
More information can be found on my blog here
TERRAFORMCTL_HOSTNAME can be used to override the hostname to use to connect to a listening gRPC server.
TERRAFORMCTL_PORT can be used to override the port to use to connect to a listening gRPC server.
Sorry but I hard coded everything for a demo.. be ready to hack the Makefile (please open a PR if you want!)
make build push deploy
This also assumes you have Kubernetes up and running already.
You will need to have protoc and grpc installed.
go get google.golang.org/grpc
go get -u github.com/golang/protobuf/protoc-gen-goNow you can make changes to service/terraformctl.proto and run the following command to update the plugin.
make protoA change to the gRPC might be needed in service/server.go if the new gRPC expects new logic.
