Installation with Helm

Installing Control Plane using Helm Chart

Installation steps

  1. Create truefoundry namespace

    kubectl create ns truefoundry
    
  2. Create an imagePullSecret for the Truefoundry images in the truefoundry namespace

    cat <<EOF | kubectl apply -f -
    apiVersion: v1
    kind: Secret
    metadata:
      name: truefoundry-image-pull-secret
      namespace: truefoundry
    data:
      .dockerconfigjson: <image pull secret provided by truefoundry team>
    type: kubernetes.io/dockerconfigjson
    EOF
    
  3. The helm charts to use for the three cloud providers are as follows -

  4. Add the truefoundry helm repo

      helm repo add truefoundry https://truefoundry.github.io/infra-charts/
    
  5. Create a values.yaml and fill in the values

    ## @section Global Parameters
    ## @param tenantName Parameters for tenantName
    ## Tenant Name - This is same as the name of the organization used to sign up 
    ## on Truefoundry
    ##
    tenantName: <tenant_name>
    
    ## @param controlPlaneURL Parameters for controlPlaneURL
    ## URL of the control plane - Same as the URL of the Truefoundry dashboard
    ##
    controlPlaneURL: <control_plane_url>
    
    ## @param clusterName Name of the cluster
    ## Name of the cluster that you have created on AWS/GCP/Azure
    ##
    clusterName: <cluster_name>
      
    ## @section Parameters for argocd
    ## @param argocd.enabled Flag to enable ArgoCD
    ## ArgoCD is mandatory for Truefoundry to work. You can make it false if ArgoCD is
    ## already installed in your cluster. Please make sure that the configuration of 
    ## existing ArgoCD is same as the ArgoCD configuration required by Truefoundry.
    argocd:
      enabled: true
    
    ## @section Parameters for argoWorkflows
    ## @param argoWorkflows.enabled Flag to enable Argo Workflows
    ##
    argoWorkflows:
      enabled: true
    
    ## @section Parameters for truefoundry
    ## @param truefoundry.enabled Flag to enable TrueFoundry
    ## This installs the Truefoundry control plane helm chart. You can make it true
    ## if you want to install Truefoundry control plane.
    ##
    truefoundry:
      enabled: true
    	truefoundryBootstrap:
    		enabled: true
    		database:
    			host: <host>
    			name: <name>
    			username: <username>
    			password: <password>
    		sfyApiKey: <sfy_api_key>
      dev: false
    
    ## @section Parameters for loki
    ## @param loki.enabled Flag to enable Loki. This is needed to show build logs
    ##
    loki:
      enabled: true
    
    ## @section Parameters for tfyAgent
    ## @param tfyAgent.enabled Flag to enable Tfy Agent
    ##
    tfyAgent:
      enabled: false
    
  6. Apply the helm chart with the values.yaml. Replace the chart_name with the correct one from step 3

    helm install inframold truefoundry/<chart_name> --version 0.0.8 -f values.yaml