diff --git a/cmd/agent/agent.go b/cmd/agent/agent.go index cf9f25c..772fa2b 100755 --- a/cmd/agent/agent.go +++ b/cmd/agent/agent.go @@ -4,6 +4,7 @@ import ( "bufio" "crypto/tls" "fmt" + "git.wamblee.org/converge/pkg/agent/service" "git.wamblee.org/converge/pkg/agent/session" "git.wamblee.org/converge/pkg/comms" "git.wamblee.org/converge/pkg/support/iowrappers" @@ -205,7 +206,7 @@ func main() { // Authentiocation - authorizedKeys, err := NewAuthorizedPublicKeys(authorizedKeysFile) + authorizedKeys, err := service.NewAuthorizedPublicKeys(authorizedKeysFile) if err != nil { os.Exit(1) } @@ -253,13 +254,10 @@ func main() { go comms.ListenForServerEvents(commChannel) - var service AgentService + var agentService AgentService + + agentService = service.NewSshAgentService(registration.HostPrivateKey, shell, authorizedKeys) - service = SshAgentService{ - hostPrivateKey: registration.HostPrivateKey, - shellCommand: shell, - authorizedKeys: authorizedKeys, - } //service = ConnectionServer(netCatServer) //service = ConnectionServer(echoServer) log.Println() @@ -290,7 +288,7 @@ func main() { listener := comms.NewAgentListener(commChannel.Session) - service.Run(listener) + agentService.Run(listener) } func chooseShell(shells []string) string { diff --git a/cmd/agent/activitydetector.go b/pkg/agent/service/activitydetector.go similarity index 98% rename from cmd/agent/activitydetector.go rename to pkg/agent/service/activitydetector.go index 98a5842..8a48e5a 100644 --- a/cmd/agent/activitydetector.go +++ b/pkg/agent/service/activitydetector.go @@ -1,4 +1,4 @@ -package main +package service import ( "git.wamblee.org/converge/pkg/agent/session" diff --git a/pkg/agent/service/service.go b/pkg/agent/service/service.go deleted file mode 100644 index 6d43c33..0000000 --- a/pkg/agent/service/service.go +++ /dev/null @@ -1 +0,0 @@ -package service diff --git a/cmd/agent/sshauthorizedkeys.go b/pkg/agent/service/sshauthorizedkeys.go similarity index 99% rename from cmd/agent/sshauthorizedkeys.go rename to pkg/agent/service/sshauthorizedkeys.go index 0ba4fa0..410e4b7 100644 --- a/cmd/agent/sshauthorizedkeys.go +++ b/pkg/agent/service/sshauthorizedkeys.go @@ -1,4 +1,4 @@ -package main +package service import ( "bufio" diff --git a/cmd/agent/sshservice.go b/pkg/agent/service/sshservice.go similarity index 92% rename from cmd/agent/sshservice.go rename to pkg/agent/service/sshservice.go index 1849068..54b50aa 100644 --- a/cmd/agent/sshservice.go +++ b/pkg/agent/service/sshservice.go @@ -1,4 +1,4 @@ -package main +package service import ( "fmt" @@ -21,6 +21,15 @@ type SshAgentService struct { authorizedKeys *AuthorizedPublicKeys } +func NewSshAgentService(hostPrivateKey []byte, shellCommand string, + authorizedKeys *AuthorizedPublicKeys) SshAgentService { + return SshAgentService{ + hostPrivateKey: hostPrivateKey, + shellCommand: shellCommand, + authorizedKeys: authorizedKeys, + } +} + func (s SshAgentService) Run(listener net.Listener) { s.sshServer().Serve(listener) }