diff options
author | Theodore Ts'o <tytso@mit.edu> | 2023-07-02 23:40:16 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2023-07-02 23:40:16 -0400 |
commit | 993766213a9cdb8d9be8d185ade0642f66e82aad (patch) | |
tree | c2740480d1ef80e5449a79b880fd45a68c93cb41 | |
parent | ad9f2b74f899cbe88c9b8d867147dc6c65bb8ee3 (diff) | |
download | xfstests-bld-993766213a9cdb8d9be8d185ade0642f66e82aad.tar.gz |
test-appliance: use gce-logger to indicate the start of the ltm or kcs server
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4 files changed, 22 insertions, 6 deletions
diff --git a/test-appliance/files/usr/local/lib/gce-logger b/test-appliance/files/usr/local/lib/gce-logger index 4eadca31..d32925d9 100755 --- a/test-appliance/files/usr/local/lib/gce-logger +++ b/test-appliance/files/usr/local/lib/gce-logger @@ -1,6 +1,12 @@ #!/bin/bash . /usr/local/lib/gce-funcs +FORCE= +if test "$1" = "--force" ; then + FORCE="yes" + shift +fi + if test -z "$HOOK_ARG" # prevent recursion then run_hooks logger "$*" @@ -43,7 +49,7 @@ fi if test -n "$is_test" -a ! -s /run/last_logged; then /usr/local/lib/gce-add-metadata "status=$(date +%H:%M) $status" echo "Started testing" > /run/last_logged -elif test -z "$(find /run/last_logged -mmin -1 -print 2> /dev/null)" +elif test -n "$FORCE" -o -z "$(find /run/last_logged -mmin -1 -print 2> /dev/null)" then /usr/local/lib/gce-add-metadata "status=$(date +%H:%M) $status" & touch /run/last_logged diff --git a/test-appliance/files/usr/local/lib/gce-server/kcs/main.go b/test-appliance/files/usr/local/lib/gce-server/kcs/main.go index 00bcda0c..517040fb 100644 --- a/test-appliance/files/usr/local/lib/gce-server/kcs/main.go +++ b/test-appliance/files/usr/local/lib/gce-server/kcs/main.go @@ -97,7 +97,7 @@ func status(w http.ResponseWriter, r *http.Request, serverLog *logrus.Entry) { } func main() { - s, err := server.New(":443") + s, err := server.New(":443", "kcs") if err != nil { panic(err) } diff --git a/test-appliance/files/usr/local/lib/gce-server/ltm/main.go b/test-appliance/files/usr/local/lib/gce-server/ltm/main.go index cbf4bb7c..e6473c9e 100644 --- a/test-appliance/files/usr/local/lib/gce-server/ltm/main.go +++ b/test-appliance/files/usr/local/lib/gce-server/ltm/main.go @@ -140,7 +140,7 @@ func status(w http.ResponseWriter, r *http.Request, serverLog *logrus.Entry) { } func main() { - s, err := server.New(":443") + s, err := server.New(":443", "ltm") if err != nil { panic(err) } diff --git a/test-appliance/files/usr/local/lib/gce-server/util/server/server.go b/test-appliance/files/usr/local/lib/gce-server/util/server/server.go index d7e3690e..268cfd79 100644 --- a/test-appliance/files/usr/local/lib/gce-server/util/server/server.go +++ b/test-appliance/files/usr/local/lib/gce-server/util/server/server.go @@ -44,6 +44,8 @@ const ( sessionsKeyPath = "/usr/local/lib/gce-server/.sessions_secret_key" shutdownTimeout = 30 * time.Second + + loggerPath = "/usr/local/lib/gce-logger" ) // RequestType defines the type of a json request. @@ -165,6 +167,7 @@ type SimpleResponse struct { type Instance struct { httpServer *http.Server addr string + name string router *mux.Router store *sessions.CookieStore @@ -218,11 +221,12 @@ func init() { } // New sets up a new https server. -func New(addr string) (*Instance, error) { +func New(addr string, name string) (*Instance, error) { log := logging.InitLogger(logging.ServerLogPath) log.Info("Initiating server") server := &Instance{ + name: name, addr: addr, router: mux.NewRouter(), store: sessions.NewCookieStore(key), @@ -247,14 +251,20 @@ func (server *Instance) Log() *logrus.Entry { // Start launches the server. Custom endpoints shuold be registered already. func (server *Instance) Start() { - server.log.Info("Launching server") + launchMsg := fmt.Sprintf("Started %s server", server.name) + server.log.Info(launchMsg) defer logging.CloseLog(server.log) + err := exec.Command(loggerPath, "--force", launchMsg).Run() + if err != nil { + server.log.WithError(err).Error("Failed log startup message") + } + server.httpServer = &http.Server{ Addr: server.addr, Handler: server.router, } - err := server.httpServer.ListenAndServeTLS(certPath, secretPath) + err = server.httpServer.ListenAndServeTLS(certPath, secretPath) if err != http.ErrServerClosed { server.log.WithError(err).Error("Server stopped unexpectedly") |