MCPcopy Index your code
hub / github.com/cli/cli / findKeygen

Method findKeygen

pkg/ssh/ssh_keys.go:102–122  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

100}
101
102func (c *Context) findKeygen() (string, error) {
103 if c.keygenExe != "" {
104 return c.keygenExe, nil
105 }
106
107 keygenExe, err := safeexec.LookPath("ssh-keygen")
108 if err != nil && runtime.GOOS == "windows" {
109 // We can try and find ssh-keygen in a Git for Windows install
110 if gitPath, err := safeexec.LookPath("git"); err == nil {
111 gitKeygen := filepath.Join(filepath.Dir(gitPath), "..", "usr", "bin", "ssh-keygen.exe")
112 if _, err = os.Stat(gitKeygen); err == nil {
113 return gitKeygen, nil
114 }
115 }
116 }
117
118 if err == nil {
119 c.keygenExe = keygenExe
120 }
121 return keygenExe, err
122}

Callers 2

HasKeygenMethod · 0.95
GenerateSSHKeyMethod · 0.95

Calls 1

JoinMethod · 0.80

Tested by

no test coverage detected