salt icon indicating copy to clipboard operation
salt copied to clipboard

[BUG] helm.release_present broken

Open kiemlicz opened this issue 1 year ago • 0 comments

Description helm.release_present should have the "ensure" semantics, yet underlying helm.status doesn't accept global flags from kvflags which makes this state useless when passing kubeconfig helm flag.

If this state is to accept KUBECONFIG somehow differenltly - please let me know?

Setup Sample state (have helm available upfront)

kubernetes_cni_release:
  helm.release_present:
    - name: cilium
    - namespace: cilium
    - chart: cilium/cilium
    - version: 1.14.6
    - set: []
    - flags:
      - "create-namespace"
      - "wait"
    - kvflags:
        kubeconfig: /etc/rancher/k3s/k3s.yaml

The minion must have the KUBECONFIG on non standard location

Please be as specific as possible and give set-up details.

  • [x] on-prem machine
  • [x] VM (Virtualbox, KVM, etc. please specify)
  • [ ] VM running on a cloud service, please be explicit and add details
  • [x] container (Kubernetes, Docker, containerd, etc. please specify)
  • [ ] or a combination, please be explicit
  • [ ] jails if it is FreeBSD
  • [ ] classic packaging
  • [ ] onedir packaging
  • [ ] used bootstrap to install

Steps to Reproduce the behavior Run sls from setup section

          ID: kubernetes_cni_release                                                                                                                                                                                                                                                                                        
    Function: helm.release_present                                                                                                                                                                                                                                                                                          
        Name: cilium                                                                                                                                                                                                                                                                                                        
      Result: False                                                                                                                                                                                                                                                                                                         
     Comment: Error: INSTALLATION FAILED: cannot re-use a name that is still in use                                                                                                                                                                                                                                         
     Started: 16:13:42.552550                                                                                                                                                                                                                                                                                               
    Duration: 621.304 ms                                                                                                                                                                                                                                                                                                    
     Changes:         

This happens because helm.status cannot connect to k8s

Expected behavior Helm Chart release properly detected and upgraded/installed accordingly

Versions Report

salt --versions-report (Provided by running salt --versions-report. Please also mention any differences in master/minion versions.)
Salt Version:
          Salt: 3006.5
 
Python Version:
        Python: 3.10.13 (main, Nov 15 2023, 04:34:27) [GCC 11.2.0]
 
Dependency Versions:
          cffi: 1.14.6
      cherrypy: unknown
      dateutil: 2.8.1
     docker-py: 5.0.3
         gitdb: Not Installed
     gitpython: Not Installed
        Jinja2: 3.1.2
       libgit2: 1.5.0
  looseversion: 1.0.2
      M2Crypto: 0.38.0
          Mako: Not Installed
       msgpack: 1.0.2
  msgpack-pure: Not Installed
  mysql-python: Not Installed
     packaging: 22.0
     pycparser: 2.21
      pycrypto: Not Installed
  pycryptodome: 3.9.8
        pygit2: 1.10.1
  python-gnupg: 0.4.8
        PyYAML: 6.0.1
         PyZMQ: 23.2.0
        relenv: 0.14.2
         smmap: Not Installed
       timelib: 0.2.4
       Tornado: 4.5.3
           ZMQ: 4.3.4
 
System Versions:
          dist: debian 12 bookworm
        locale: utf-8
       machine: x86_64
       release: 6.5.0-0.deb12.4-amd64
        system: Linux
       version: Debian GNU/Linux 12 bookworm

kiemlicz avatar Feb 10 '24 15:02 kiemlicz