MCPcopy Index your code
hub / github.com/devspace-sh/devspace / getHostKey

Function getHostKey

pkg/devspace/services/ssh/keys.go:86–119  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

84}
85
86func getHostKey() (string, error) {
87 keyLock.Lock()
88 defer keyLock.Unlock()
89
90 _, err := os.Stat(DevSpaceSSHFolder)
91 if err != nil {
92 err = os.MkdirAll(DevSpaceSSHFolder, 0755)
93 if err != nil {
94 return "", err
95 }
96 }
97
98 // check if key pair exists
99 _, err = os.Stat(DevSpaceSSHHostKeyFile)
100 if err != nil {
101 privateKey, err := MakeHostKey()
102 if err != nil {
103 return "", errors.Wrap(err, "generate host key")
104 }
105
106 err = os.WriteFile(DevSpaceSSHHostKeyFile, []byte(privateKey), 0600)
107 if err != nil {
108 return "", errors.Wrap(err, "write host key")
109 }
110 }
111
112 // read public key
113 out, err := os.ReadFile(DevSpaceSSHHostKeyFile)
114 if err != nil {
115 return "", errors.Wrap(err, "read host ssh key")
116 }
117
118 return base64.StdEncoding.EncodeToString(out), nil
119}
120
121func getPublicKey() (string, error) {
122 keyLock.Lock()

Callers 1

startSSHWithRestartFunction · 0.85

Calls 3

MakeHostKeyFunction · 0.85
LockMethod · 0.80
UnlockMethod · 0.80

Tested by

no test coverage detected