36 lines
639 B
Go
36 lines
639 B
Go
package main
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
"os"
|
|
"os/signal"
|
|
"syscall"
|
|
|
|
"git.asio.asia/nixevol/NixMsg/test/harness"
|
|
)
|
|
|
|
func main() {
|
|
srv, err := harness.Start(harness.Options{KeepDir: true})
|
|
if err != nil {
|
|
fmt.Fprintln(os.Stderr, err)
|
|
os.Exit(1)
|
|
}
|
|
info := srv.ConnectionInfo()
|
|
enc := json.NewEncoder(os.Stdout)
|
|
enc.SetEscapeHTML(false)
|
|
if err := enc.Encode(info); err != nil {
|
|
_ = srv.Stop()
|
|
_ = os.RemoveAll(srv.DataDir)
|
|
fmt.Fprintln(os.Stderr, err)
|
|
os.Exit(1)
|
|
}
|
|
|
|
sigCh := make(chan os.Signal, 1)
|
|
signal.Notify(sigCh, os.Interrupt, syscall.SIGTERM)
|
|
<-sigCh
|
|
|
|
_ = srv.Stop()
|
|
_ = os.RemoveAll(srv.DataDir)
|
|
}
|