Resolved: ArgoCD bootstrapping with terraform in Azure Pipeline

Question:

I am trying to deploy ArgoCD and applications located in subfolders through Terraform in an AKS cluster.
This is my Folder structure tree:
I’m using app of apps approach, so first I will deploy ArgoCD (this will manage itself as well) and later ArgoCD will let me SYNC the cluster-addons and application manually once installed.
apps
   cluster-addons
      AKV2K8S
      Cert-Manager
      Ingress-nginx
   application
      application-A
argocd
   override-values.yaml
   Chart
When I run the command “helm install …” manually in the AKS cluster everything is installed fine. ArgoCD is installed and later when I access ArgoCD I see that rest of applications are missing and I can sync them manually.
However, If I want to install it through Terraform only ArgoCD is installed but looks like it does not “detect” the override_values.yaml file:
i mean, ArgoCD and ArgoCD application set controller are installed in the cluster but ArgoCD does not “detect” the values.yaml files that are customized for my AKS cluster. If I run “helm install” manually on the cluster everything works but not through Terraform
resource "helm_release" "argocd_applicationset" {
  name       = "argocd-applicationset"
  repository = https://argoproj.github.io/argo-helm
  chart      = "argocd-applicationset"
  namespace  = "argocd"
  version    = "1.11.0"
}

resource "helm_release" "argocd" {
  name       = "argocd"
  repository = https://argoproj.github.io/argo-helm
  chart      = "argo-cd"
  namespace  = "argocd"
  version    = "3.33.6"
  values = [
    "${file("values.yaml")}"
  ]
values.yaml file is located in the folder where I have the TF code to install argocd and argocd applicationset.
I tried to change the name of the file” values.yaml” to “override_values.yaml” but same issue.
I have many things changed into the override_values.yaml file so I cannot use “set” inside the TF code…
Also, I tried adding:
 values = [
    "${yamlencode(file("values.yaml"))}"
  ]
but I get this error in “apply” step in the pipeline:
error unmarshaling JSON: while decoding JSON: json: cannot unmarshal string into Go value of type map[string]interface {} "argo-cd:\r\n  ## ArgoCD configuration\r\n  ## Ref: https://github.com/argoproj/argo-cd\r\n
Probably because is not a JSON file? It does make sense to convert this file into a JSON one?
Any idea if I can pass this override values yaml file through terraform?
If not, please may you post a clear/full example with mock variables on how to do that using Azure pipeline?
Thanks in advance!

Answer:

The issue was with the values identation in TF code.
The issue was resolved when I resolve that:
resource "helm_release" "argocd_applicationset" {
  name       = "argocd-applicationset"
  repository = https://argoproj.github.io/argo-helm
  chart      = "argocd-applicationset"
  namespace  = "argocd"
  version    = "1.11.0"
}

resource "helm_release" "argocd" {
  name       = "argocd"
  repository = https://argoproj.github.io/argo-helm
  chart      = "argo-cd"
  namespace  = "argocd"
  version    = "3.33.6"
  values = [file("values.yaml")]
It is working fine also with quoting.

If you have better answer, please add a comment about this, thank you!