FairwindsOps/nova

splunk-connect-for-kubernetes subcharts versions are not identified properly

UncleIS opened this issue · 6 comments

What happened?

Nova tool was unable to identify the upstream versions of splunk-connect-for-kubernetes:

$ nova find -a -u https://splunk.github.io/splunk-connect-for-kubernetes/
Release Name                         Installed      Latest          Old      Deprecated
============                         =========      ======          ===      ==========
...
splunk-kubernetes-logging            1.4.14                         false    false    
splunk-kubernetes-objects            1.4.14                         false    false    

No matter which URL I specify, the latest version is no identified.

Original charts are coming from this repo: https://github.com/splunk/splunk-connect-for-kubernetes. Helm repo listing looks as follows:

$ helm repo list
NAME            URL                                                                         
...
splunk          https://splunk.github.io/splunk-connect-for-kubernetes/ 

What did you expect to happen?

Nova would identify the latest versions of the charts.

How can we reproduce this?

Install corresponding splunk charts and try executing nova find -a -u https://splunk.github.io/splunk-connect-for-kubernetes/ command against the cluster that has them installed.

Version

Version:3.0.2 Commit:f8f0448ca2362fff6797578a595308dd956ce462

Search

  • I did search for other open and closed issues before opening this.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Additional context

No response

Hey @UncleIS, thanks for the report, I'll take a look at this as soon as I can.

That's interesting. I'm unable to reproduce this when installed in a local kind cluster:

❯ nova find -a -u https://splunk.github.io/splunk-connect-for-kubernetes
Release Name         Installed    Latest    Old     Deprecated
============         =========    ======    ===     ==========
my-splunk-connect    1.4.13       1.4.14    true    false

@UncleIS Could you provide the output of your command again, but add the -v 8 arg at the end for more logging?

I get the expected latest version output when I install the newest chart version as well:

❯ nova find -a -u https://splunk.github.io/splunk-connect-for-kubernetes
Release Name         Installed    Latest    Old      Deprecated
============         =========    ======    ===      ==========
my-splunk-connect    1.4.14       1.4.14    false    false

Hi! The thing is that we do not use the wrapping chart splunk-connect-for-kubernetes, but instead we install two sub-charts separately: splunk-kubernetes-logging and splunk-kubernetes-objects.

Here are the logs that you asked for (I'm deleting the lines unrelated to the issue in question):

$ nova find -a -u https://splunk.github.io/splunk-connect-for-kubernetes -v 8
I0428 13:09:29.314884   62629 root.go:99] config not set, using flags only                                                      
I0428 13:09:29.315591   62629 root.go:183] Settings: map[context: desired-versions:map[] include-all:true output-file: poll-artifacthub:true url:[https://splunk.github.io/splunk-connect-for-kubernetes] wide:false]                                           
I0428 13:09:29.315623   62629 root.go:184] All Keys: [include-all output-file desired-versions url poll-artifacthub context wide]                                                                                                                               
I0428 13:09:29.321216   62629 loader.go:372] Config loaded from file:  /<user>/.kube/config                             
I0428 13:09:29.330314   62629 round_trippers.go:463] GET https://<cluster>/api/v1/secrets?labelSelector=owner%3Dhelm                                                                           
I0428 13:09:29.330328   62629 round_trippers.go:469] Request Headers:                                                           
I0428 13:09:29.330342   62629 round_trippers.go:473]     Accept: application/json, */*                                          
I0428 13:09:29.688930   62629 round_trippers.go:574] Response Status: 200 OK in 358 milliseconds                                
I0428 13:09:29.688987   62629 round_trippers.go:577] Response Headers:                                                          
I0428 13:09:29.689033   62629 round_trippers.go:580]     Vary: Accept-Encoding                                                  
I0428 13:09:29.689046   62629 round_trippers.go:580]     X-Kubernetes-Pf-Flowschema-Uid: 1689b6fa-e146-415b-a76e-b97cd4bcfc39   I0428 13:09:29.689054   62629 round_trippers.go:580]     X-Kubernetes-Pf-Prioritylevel-Uid: bce14ab2-4045-4ec1-868f-e7b034b14586
I0428 13:09:29.689060   62629 round_trippers.go:580]     Date: Thu, 28 Apr 2022 10:09:29 GMT                                    I0428 13:09:29.689066   62629 round_trippers.go:580]     Audit-Id: 1ef1a1ed-bf69-42f2-9088-03af1fff573d                         
I0428 13:09:29.689072   62629 round_trippers.go:580]     Cache-Control: no-cache, private                                       
I0428 13:09:29.689077   62629 round_trippers.go:580]     Content-Type: application/json                                         
I0428 13:09:33.474024   62629 request.go:1181] Response Body: {"kind":"SecretList","apiVersion":"v1","metadata":{"resourceVersion":"300785814"},"items":[{"metadata":{<other carts versions> [truncated 13048296 chars]                                       
I0428 13:09:35.000478   62629 artifacthub.go:200] found 0 packages matching 'splunk-kubernetes-objects'                                                         
I0428 13:09:35.016408   62629 artifacthub.go:200] found 0 packages matching 'splunk-kubernetes-logging'                                                              
I0428 13:09:35.324824   62629 root.go:218] found 36 possible package matches                                                    
I0428 13:09:35.325198   62629 chartrepo.go:57] loading 1 chart repositories                                                     
I0428 13:09:35.325209   62629 chartrepo.go:60] loading chart repository: https://splunk.github.io/splunk-connect-for-kubernetes 
I0428 13:09:35.562004   62629 chartrepo.go:173] Got 9 installed releases in the cluster                                                                                                                                        
I0428 13:09:35.562136   62629 output.go:139] found duplicate release output, deduping: 'splunk-kubernetes-logging', chart: 'splunk-kubernetes-logging', namespace: 'splunk'                                                                                     
I0428 13:09:35.562140   62629 output.go:139] found duplicate release output, deduping: 'splunk-kubernetes-objects', chart: 'splunk-kubernetes-objects', namespace: 'splunk'                                                                                     
Release Name                         Installed      Latest       Old      Deprecated                                            
============                         =========      ======       ===      ==========                                            
splunk-kubernetes-logging            1.4.14                      false    false                                                 
splunk-kubernetes-objects            1.4.14                      false    false                                                 

Ah yeah I think because of the way that repository is set up there is no repository metadata for these subcharts. This is unfortunately a situation where nova will not be able to help currently.