Project Description
Terraform's remote backend requires a Terraform Cloud account and has an initial limited offering. While the initial offering is suitable for small resource management and teams this quickly becomes an issue as usage demands increase. In addition Terraform's remote operations (plan,apply, etc) are executed on HashiCorp's cloud resources which present issues for sensitive data such as passwords and access keys. Users are also constrained to as what tooling is available on the remote execution environment for example having kubectl
as part of a local-resource
. This project aims to address these shortcomings in a native Kubernetes implementation.
Goal for this Hackweek
- Have remote plan and apply operations execution handled in Kubernetes
- State management: locking and storage
- Logging: execution output (plan and apply)
- User interface: view execution output and approve apply operations
- Helm chart for deploying project
Stretch Goals
- Trigger
plan
on Github PR
Implementation
We hope to take the rancher terraform-controller and add a REST API to it to speak Terraform Cloud (sometimes called tfe or terraform enterprise in their docs). We should be able to deploy the controller and write HCL with a backend remote hostname to this new API and run terraform plan/apply from your desktop and use resources in your k8s cluster.
Resources
Looking for hackers with the skills:
This project is part of:
Hack Week 20
Activity
Similar Projects
Rancher/k8s Trouble-Maker by tonyhansen
[comment]: # (Please use the project descriptio...
A CLI for Harvester by mohamed.belgaied
[comment]: # Harvester does not officially come...