<p>How to deploy on K8 via Pulumi using the ArgoCD Helm Chart?</p>
<p>Pulumi up Diagnostics:</p>
<pre><code>  kubernetes:helm.sh/v3:Release (argocd):
    error: failed to create chart from template: chart requires kubeVersion: &gt;=1.22.0-0 which is incompatible with Kubernetes v1.20.0
</code></pre>
<p>THE CLUSTER VERSION IS: v1.23.0 verified on AWS. And NOT 1.20.0</p>
<p>ArgoCD install yaml used with CRD2Pulumi: <a href="https://raw.githubusercontent.com/argoproj/argo-cd/master/manifests/core-install.yaml" rel="nofollow noreferrer">https://raw.githubusercontent.com/argoproj/argo-cd/master/manifests/core-install.yaml</a></p>
<p>Source:</p>
<pre><code>...

cluster = eks.Cluster(&quot;argo-example&quot;) # version=&quot;1.23&quot;

# Cluster provider
provider = k8s.Provider(
    &quot;eks&quot;,
    kubeconfig=cluster.kubeconfig.apply(lambda k: json.dumps(k))
    #kubeconfig=cluster.kubeconfig
)

ns = k8s.core.v1.Namespace(
    'argocd',
    metadata={
        &quot;name&quot;: &quot;argocd&quot;, 
    },

    opts=pulumi.ResourceOptions( 
        provider=provider
    )
)

argo = k8s.helm.v3.Release(
    &quot;argocd&quot;,  
    args=k8s.helm.v3.ReleaseArgs(
        chart=&quot;argo-cd&quot;,
        namespace=ns.metadata.name,
        repository_opts=k8s.helm.v3.RepositoryOptsArgs(
            repo=&quot;https://argoproj.github.io/argo-helm&quot;
        ),
        values={
            &quot;server&quot;: {
                &quot;service&quot;: {
                    &quot;type&quot;: &quot;LoadBalancer&quot;,
                }
            }
        },
    ),
    opts=pulumi.ResourceOptions(provider=provider, parent=ns),
)

</code></pre>
<p>Any ideas as to fixing this oddity between the version error and the actual cluster version?</p>
<p>I've tried:</p>
<ul>
<li>Deleting everything and starting over.</li>
<li>Updating to the latest ArgoCD install yaml.</li>
</ul>

LeStackOverflow
<p>I could reproduce your issue, though I am not quite sure what causes the mismatch between versions. Better open an issue at <a href="https://github.com/pulumi/pulumi-kubernetes" rel="nofollow noreferrer">pulumi's k8s repository</a>.</p>
<p>Looking at the history of <a href="https://github.com/argoproj/argo-helm/blame/main/charts/argo-cd/Chart.yaml" rel="nofollow noreferrer">https://github.com/argoproj/argo-helm/blame/main/charts/argo-cd/Chart.yaml</a>, you can see that the kubeversion requirement has been added after 5.9.1. So using that version successfully deploys the helm chart. E.g.</p>
<pre><code>import * as k8s from &quot;@pulumi/kubernetes&quot;;

const namespaceName = &quot;argo&quot;;

const namespace = new k8s.core.v1.Namespace(&quot;namespace&quot;, {
  metadata: {
    name: namespaceName,
  }
});

const argo = new k8s.helm.v3.Release(&quot;argo&quot;, {
  repositoryOpts: {
    repo: &quot;https://argoproj.github.io/argo-helm&quot;
  },
  chart: &quot;argo-cd&quot;,
  version: &quot;5.9.1&quot;,
  namespace: namespace.metadata.name,
})
</code></pre>
<p>(Not Recommended) Alternatively, you could also clone the source code of the chart, comment out the kubeVersion requirement in <code>Chart.yaml</code> and install the chart from your local path.</p>
