Giter VIP home page Giter VIP logo

Comments (11)

kyontan avatar kyontan commented on August 29, 2024 4

Hi @sebastien-prudhomme

Thanks for maintaining the chart, my team is currently trying to install the VPA chart on our ArgoCD deployment with helmfile (pre-templated) .
Then we faced same issue as this.

Currently, it's difficult to add following annotation by some patch (like kustomization's since the CRD is defined in the ConfigMap as the text.

Can we have helm value to add arbitrary annotation to the CRD, or install CRD in the plain Helm's manner?

argocd.argoproj.io/compare-options: IgnoreExtraneous

Thanks.

from charts.

sebastien-prudhomme avatar sebastien-prudhomme commented on August 29, 2024 1

One way I have seen this done is for the CRDs to live in a sub-chart:

https://github.com/elastic/cloud-on-k8s/tree/main/deploy/eck-operator

It removes the CRDs when uninstalling the main chart, which is not good.

from charts.

sebastien-prudhomme avatar sebastien-prudhomme commented on August 29, 2024

Hi @bodgit

I'm not sure of how to fix the problem.

The first solution is to use these annotations on CRDs:

argocd.argoproj.io/compare-options: IgnoreExtraneous
argocd.argoproj.io/sync-options: Prune=false

ArgoCD wants still to prune them, which sould not append thank to one of the annotations, but the application is considered as synced, thanks to the other annotation.

image

Currently the chart doesn't allow adding annotations on CRDs only.

from charts.

brsolomon-deloitte avatar brsolomon-deloitte commented on August 29, 2024

One way I have seen this done is for the CRDs to live in a sub-chart:

https://github.com/elastic/cloud-on-k8s/tree/main/deploy/eck-operator

from charts.

ctrongminh avatar ctrongminh commented on August 29, 2024

I also meet this problem when installing this helm chart using argocd,
The CRDs are not created, the webhook is also not created

from charts.

sebastien-prudhomme avatar sebastien-prudhomme commented on August 29, 2024

I can no more reproduce the problem with Argo CD 2.7.7. The CRDs doesn't appear anymore in the Argo CD UI.

@ctrongminh Which version of Argo CD are you using and which version of VPA Helm chart?

Can you give me the Application custom resource used to install VPA with Argo CD?

from charts.

neilbartley avatar neilbartley commented on August 29, 2024

I'm currently using ArgoCD 2.6.14 and I can see the issue described in the original post using this resource. Hope this helps replicate.

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: vertical-pod-autoscaler
  namespace: argocd
spec:
  destination:
    namespace: kube-system
    server: 'https://kubernetes.default.svc'
  source:
    repoURL: 'https://cowboysysop.github.io/charts/'
    chart: vertical-pod-autoscaler
  project: default
  syncPolicy:
    automated:
      # Do not allow this to prune or it will remove the CRDs. See: https://github.com/cowboysysop/charts/issues/339
      prune: false 
      selfHeal: false

from charts.

luispabon avatar luispabon commented on August 29, 2024

I'm hitting this when deploying on EKS where the nodes use calico-cni. The job cannot install the CRDs because the kube API is not available from the nodes unless the pod in question is using host networking, which is not configurable via the chart. This is a common interaction of EKS with calico (the control plane nodes do not run any calico pods).

from charts.

oavner avatar oavner commented on August 29, 2024

hitting the same problem, do we have to install the CRDs via a k8s job and not by using the dedicated CRDs chart directory?
installing the CRDs this way with extra helm hooks disables some flexibility, we also want to deploy some VPA CRs along with this chart using helm hooks, but the CRDs keeps deleting.

helm.sh/hook: pre-install,pre-upgrade
helm.sh/hook-delete-policy: before-hook-creation,hook-succeeded

from charts.

sebastien-prudhomme avatar sebastien-prudhomme commented on August 29, 2024

@oavner what is your context? ArgoCD? Version?

This is done with a job because CRDs in the dedicated directory are not updated when an Helm release is upgraded.

What I can do is add an option to disable managing CRDs in the Helm chart so people who have problems can install them as they want to.

from charts.

BestChinchilla avatar BestChinchilla commented on August 29, 2024

May be add parameter .Values.crds.annotations to CRD templates, this is annoying issue with Out Of Sync state

from charts.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.