diff options
| -rw-r--r-- | internal/client/ui/auth/auth.go | 12 | ||||
| -rw-r--r-- | test_ed25519 | 7 | ||||
| -rw-r--r-- | test_ed25519.pub | 1 |
3 files changed, 20 insertions, 0 deletions
diff --git a/internal/client/ui/auth/auth.go b/internal/client/ui/auth/auth.go index 253d2f3..b04b7eb 100644 --- a/internal/client/ui/auth/auth.go +++ b/internal/client/ui/auth/auth.go @@ -16,6 +16,7 @@ import ( "github.com/charmbracelet/lipgloss" "golang.org/x/crypto/ssh" + "github.com/kyren223/eko/internal/client/config" "github.com/kyren223/eko/internal/client/ui" authfield "github.com/kyren223/eko/internal/client/ui/auth/field" "github.com/kyren223/eko/internal/client/ui/choicepopup" @@ -366,6 +367,12 @@ func (m *Model) SetSignup(signup bool) tea.Cmd { } m.focusIndex = -1 m.CycleForward() + + privateKey := config.Read().PrivateKeyPath + if !m.signup && privateKey != "" { + m.fields[privateKeyField].Input.SetValue(privateKey) + } + return m.updateFocus() } @@ -526,6 +533,11 @@ func (m *Model) signin() tea.Cmd { return nil } + if m.remember { + config.Use(func(config *config.Config) { + config.PrivateKeyPath = privateKeyFilepath + }) + } return authenticate(*privKey) } diff --git a/test_ed25519 b/test_ed25519 new file mode 100644 index 0000000..b34623f --- /dev/null +++ b/test_ed25519 @@ -0,0 +1,7 @@ +-----BEGIN OPENSSH PRIVATE KEY----- +b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW +QyNTUxOQAAACCR5BEBgM5NLxzD8ZW3JMw2dTNz1yzla0qZBeRXoDPz2AAAAJhXAuJ0VwLi +dAAAAAtzc2gtZWQyNTUxOQAAACCR5BEBgM5NLxzD8ZW3JMw2dTNz1yzla0qZBeRXoDPz2A +AAAEBYpomJrO7G7YzdC3rN6zuut558MBhVTljvWOujIMfjYpHkEQGAzk0vHMPxlbckzDZ1 +M3PXLOVrSpkF5FegM/PYAAAAEGt5cmVuQDFIODQwNTBXMVABAgMEBQ== +-----END OPENSSH PRIVATE KEY----- diff --git a/test_ed25519.pub b/test_ed25519.pub new file mode 100644 index 0000000..531b4af --- /dev/null +++ b/test_ed25519.pub @@ -0,0 +1 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJHkEQGAzk0vHMPxlbckzDZ1M3PXLOVrSpkF5FegM/PY kyren@1H84050W1P |
