Skip to content

Commit 4c83a67

Browse files
committed
Do not fail start command when openssl does not exist
Signed-off-by: Zhongcheng Lao <[email protected]>
1 parent aec9406 commit 4c83a67

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

pkg/minikube/bootstrapper/certs.go

+19-8
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,15 @@ func configureCACerts(cmd command.Runner, caCerts map[string]string) error {
295295
return stringHash, nil
296296
}
297297

298+
hasSSLBinary := true
299+
if err := cmd.Run("sudo which openssl"); err != nil {
300+
hasSSLBinary = false
301+
}
302+
303+
if !hasSSLBinary && len(caCerts) > 0 {
304+
glog.Warning("OpenSSL not found for subject name hashing. Please recreate the cluster with the latest minikube ISO.")
305+
}
306+
298307
for _, caCertFile := range caCerts {
299308
dstFilename := path.Base(caCertFile)
300309
certStorePath := path.Join(constants.SSLCertStoreDir, dstFilename)
@@ -303,14 +312,16 @@ func configureCACerts(cmd command.Runner, caCerts map[string]string) error {
303312
return errors.Wrapf(err, "error making symbol link for certificate %s", caCertFile)
304313
}
305314
}
306-
subjectHash, err := getSubjectHash(caCertFile)
307-
if err != nil {
308-
return errors.Wrapf(err, "error calculating subject hash for certificate %s", caCertFile)
309-
}
310-
subjectHashLink := path.Join(constants.SSLCertStoreDir, fmt.Sprintf("%s.0", subjectHash))
311-
if err := cmd.Run(fmt.Sprintf("sudo test -f '%s'", subjectHashLink)); err != nil {
312-
if err := cmd.Run(fmt.Sprintf("sudo ln -s '%s' '%s'", certStorePath, subjectHashLink)); err != nil {
313-
return errors.Wrapf(err, "error making subject hash symbol link for certificate %s", caCertFile)
315+
if hasSSLBinary {
316+
subjectHash, err := getSubjectHash(caCertFile)
317+
if err != nil {
318+
return errors.Wrapf(err, "error calculating subject hash for certificate %s", caCertFile)
319+
}
320+
subjectHashLink := path.Join(constants.SSLCertStoreDir, fmt.Sprintf("%s.0", subjectHash))
321+
if err := cmd.Run(fmt.Sprintf("sudo test -f '%s'", subjectHashLink)); err != nil {
322+
if err := cmd.Run(fmt.Sprintf("sudo ln -s '%s' '%s'", certStorePath, subjectHashLink)); err != nil {
323+
return errors.Wrapf(err, "error making subject hash symbol link for certificate %s", caCertFile)
324+
}
314325
}
315326
}
316327
}

0 commit comments

Comments
 (0)