Closed
Description
Terraform Runner is a sub system of TF-controller.
It is responsible for running Terraform commands at the different stages.
Terraform Runner is a part of supporting multi-tenancy #43
Requirements
- It must be an gRPC server wrapping around TFExec Implement local RPC server for TF Runner #68
- Its local version must be able to use inside the TF-controller, and all current tests pass Implement local RPC server for TF Runner #68
- the gRPC server must support executing a command for each step in the life-cycle Implement local RPC server for TF Runner #68
- receive tar.gz
- init
- plan for drift detection
- plan
- apply
- show
- output
- Separate runner as a Pod Implement runner main program #70
- Implement Pod invocation logics #71
- the gRPC server must support mTLS #72
- TF-controller must be able to rotate certificates for every Terraform Runner Pod #73
- A Runner Pod must be placed inside the namespace of the Terraform object only #105
- A Runner Pod of a Terraform Object must use the Service Account specified by the Terraform object #106
