diff --git a/internal/tlsutil/cfg.go b/internal/tlsutil/cfg.go index 5c15487b4..e6965b8a1 100644 --- a/internal/tlsutil/cfg.go +++ b/internal/tlsutil/cfg.go @@ -105,34 +105,32 @@ func ReadCertFromSecDir(host string) (opts Options, err error) { fmt.Printf(" Certificate not found in current directory - %v\n ", err) os.Exit(1) } - if opts.CaCertFile == "" && opts.CertFile == "" && opts.KeyFile == "" { + switch { + case opts.CaCertFile == "" && opts.CertFile == "" && opts.KeyFile == "": fmt.Printf("Error : Missing certificate (cacerts.crt,client.pem,client.key) required !!\n") os.Exit(1) - } - - if opts.CaCertFile == "" && opts.CertFile == "" { + case opts.CaCertFile == "" && opts.CertFile == "": fmt.Printf("Error : Missing certificate : Root-CA and client certificate (cacerts.crt,client.pem) required !!\n") os.Exit(1) - } - - if opts.CaCertFile == "" && opts.KeyFile == "" { - fmt.Printf("Error Certificate Required : Root-CA and and client key (cacerts.crt,client.key) not found.\n") + case opts.CaCertFile == "" && opts.KeyFile == "": + fmt.Printf("Error : Missing Certificate : Root-CA and and client key (cacerts.crt,client.key) required.\n") os.Exit(1) - } - if opts.CertFile == "" && opts.KeyFile == "" { - fmt.Printf("Error Certificate Required : Client certificate and client key (client.pem,client.key) not found.\n") + case opts.CertFile == "" && opts.KeyFile == "": + fmt.Printf("Error : Missing Certificate : Client certificate and client key (client.pem,client.key) required.\n") os.Exit(1) } - if opts.CaCertFile == "" { - fmt.Printf("Error Certificate Required : Client Root-CA (cacerts.crt) not found.\n") + switch { + case opts.CaCertFile == "": + fmt.Printf("Error : Missing Certificate : Client Root-CA (cacerts.crt) required.\n") os.Exit(1) - } else if opts.CertFile == "" { - fmt.Printf("Error Certificate Required : Client certificate(client.pem) not found.\n") + case opts.CertFile == "": + fmt.Printf("Error : Missing Certificate : Client certificate(client.pem) required.\n") os.Exit(1) - } else if opts.KeyFile == "" { - fmt.Printf("Error Certificate Required : Client keyfile (client.key) not found.\n") + case opts.KeyFile == "": + fmt.Printf("Error : Missing Certificate : Client keyfile (client.key) required.\n") os.Exit(1) + } } } diff --git a/pkg/action/pull.go b/pkg/action/pull.go index 6f728ea9f..87cbd4380 100644 --- a/pkg/action/pull.go +++ b/pkg/action/pull.go @@ -125,7 +125,7 @@ func (p *Pull) Run(chartRef string) (string, error) { saved, v, err := c.DownloadTo(chartRef, p.Version, dest) if err != nil { - if strings.Contains(fmt.Sprint(err), "remote error: tls: handshake failure") { + if registry.IsOCI(chartRef) && strings.Contains(fmt.Sprint(err), "remote error: tls: handshake failure") { registryClient, err := registry.NewCrosClient(chartRef, registry.ClientOptDebug(p.Settings.Debug), registry.ClientOptCredentialsFile(p.Settings.RegistryConfig),