mirkoify, godepify
diff --git a/main.go b/main.go
index 66e8d94..f417f1f 100644
--- a/main.go
+++ b/main.go
@@ -4,17 +4,15 @@
"flag"
"fmt"
+ "code.hackerspace.pl/q3k/mirko"
"github.com/golang/glog"
"github.com/ybbus/jsonrpc"
+
+ pb "code.hackerspace.pl/q3k/arista-proxy/proto"
)
var (
- flagAristaAPI string
- flagListenAddress string
- flagDebugAddress string
- flagCAPath string
- flagCertificatePath string
- flagKeyPath string
+ flagAristaAPI string
)
type aristaClient struct {
@@ -39,32 +37,31 @@
return nil
}
+type server struct {
+ arista *aristaClient
+}
+
func main() {
flag.StringVar(&flagAristaAPI, "arista_api", "http://admin:password@1.2.3.4:80/command-api", "Arista remote endpoint")
- flag.StringVar(&flagListenAddress, "listen_address", "127.0.0.1:42000", "gRPC listen address")
- flag.StringVar(&flagDebugAddress, "debug_address", "127.0.0.1:42001", "Debug HTTP listen address, or empty to disable")
- flag.StringVar(&flagCAPath, "tls_ca_path", "pki/ca.pem", "Path to PKI CA certificate")
- flag.StringVar(&flagCertificatePath, "tls_certificate_path", "pki/service.pem", "Path to PKI service certificate")
- flag.StringVar(&flagKeyPath, "tls_key_path", "pki/service-key.pem", "Path to PKI service private key")
- flag.Set("logtostderr", "true")
flag.Parse()
arista := &aristaClient{
rpc: jsonrpc.NewClient(flagAristaAPI),
}
- opts := &serverOpts{
- listenAddress: flagListenAddress,
- debugAddress: flagDebugAddress,
- tlsCAPath: flagCAPath,
- tlsCertificatePath: flagCertificatePath,
- tlsKeyPath: flagKeyPath,
- }
- server, err := newServer(opts, arista)
- if err != nil {
- glog.Errorf("Could not create server: %v", err)
+ m := mirko.New()
+ if err := m.Listen(); err != nil {
+ glog.Exitf("Listen(): %v", err)
}
- glog.Info("Starting up...")
- server.serveForever()
+ s := &server{
+ arista: arista,
+ }
+ pb.RegisterAristaProxyServer(m.GRPC(), s)
+
+ if err := m.Serve(); err != nil {
+ glog.Exitf("Serve(): %v", err)
+ }
+
+ select {}
}