Hey everyone,
I'm just starting using Flux + TF controller, so please let me know if I'm missing some basic step
I have it running apparently properly for Kustomization, however, the tf-controller
keeps hanging in Reconciliation in progress
I have created the GitRepo resource, pointing to my repository and correct path
The resource was created successfully and it is in Ready
state
but the Terraform resource is not, and stays forever in Reconciliation in progress
Here is my manifests: (the Terraform state is an existing one)
apiVersion: source.toolkit.fluxcd.io/v1beta1
kind: GitRepository
metadata:
name: myrepo
namespace: flux-system
spec:
interval: 1m
url: https://github.com/MyOrg/MyRepo.git
ref:
branch: master
secretRef:
name: flux-system
---
apiVersion: infra.contrib.fluxcd.io/v1alpha1
kind: Terraform
metadata:
name: saas-github
namespace: flux-system
spec:
interval: 1m
approvePlan: "disable"
backendConfig:
customConfiguration: |
backend "s3" {
bucket = "my-state-bucket"
key = "my-bucket-key"
region = "eu-west-1"
dynamodb_table = "lock-table"
role_arn = "arn:aws:iam::XXXXXXX:role/role"
encrypt = true
}
path: ./terraform/path
sourceRef:
kind: GitRepository
name: myrepo
namespace: flux-system
On the flux-system
namespace I see those pods in running state
- helm-controller-xxxx
- kustomize-controller-xxxx
- notification-controller-xxxx
- saas-github-tf-runner
- source-controller-xxxxx
- tf-controller-xxxxx
And from the logs of tf-controller:
{"level":"info","ts":"2022-09-27T11:46:43.650Z","logger":"controller.terraform","msg":"getting source","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system"}
{"level":"info","ts":"2022-09-27T11:46:43.656Z","logger":"controller.terraform","msg":"trigger namespace tls secret generation","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system"}
{"level":"info","ts":"2022-09-27T11:46:43.656Z","logger":"cert-rotation","msg":"TLS already generated for ","namespace":"flux-system"}
{"level":"info","ts":"2022-09-27T11:46:43.657Z","logger":"controller.terraform","msg":"show runner pod state: ","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system","name":"saas-github","state":"running"}
{"level":"error","ts":"2022-09-27T11:47:13.657Z","logger":"controller.terraform","msg":"unable to lookup or create runner","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system","error":"context deadline exceeded"}
{"level":"error","ts":"2022-09-27T11:47:13.658Z","logger":"controller.terraform","msg":"Reconciler error","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system","error":"context deadline exceeded"}
{"level":"info","ts":"2022-09-27T11:47:13.658Z","logger":"controller.terraform","msg":"getting source","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system"}
{"level":"info","ts":"2022-09-27T11:47:13.658Z","logger":"controller.terraform","msg":"trigger namespace tls secret generation","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system"}
{"level":"info","ts":"2022-09-27T11:47:13.658Z","logger":"cert-rotation","msg":"TLS already generated for ","namespace":"flux-system"}
{"level":"info","ts":"2022-09-27T11:47:13.658Z","logger":"controller.terraform","msg":"show runner pod state: ","reconciler group":"infra.contrib.fluxcd.io","reconciler kind":"Terraform","name":"saas-github","namespace":"flux-system","name":"saas-github","state":"running"}
I see an error looking up for the runner, but I don't see any more information on why it did happen and what is missing
I also looked up the documentation and I can't find more details of things that I need to setup
If I see the logs of the saas-github-tf-runner
the last activity was hours ago
I0927 09:15:38.384584 7 request.go:601] Waited for 1.043722403s due to client-side throttling, not priority and fairness, request: GET:https://172.20.0.1:443/apis/discovery.k8s.io/v1beta1?timeout=32s
I also saw that at the moment there's no way to set the terraform version, I wonder if due to my state using 0.13.6 it might be an issue
Any idea what I'm missing?