From 771dcf3d403fe862f5afa040309fa1db7b067554 Mon Sep 17 00:00:00 2001 From: elcore Date: Fri, 18 Jan 2019 18:46:21 +0100 Subject: [PATCH] caddy: move EmitEvent(InstanceStartupEvent, instance) (#2161) * caddy: move EmitEvent(InstanceStartupEvent, instance) * caddy: update SupportedEvents --- caddy.go | 4 ++++ caddy/caddymain/run.go | 3 --- onevent/hook/config.go | 7 ++++--- onevent/on_test.go | 3 ++- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/caddy.go b/caddy.go index eda695dd6..ce831787a 100644 --- a/caddy.go +++ b/caddy.go @@ -498,6 +498,10 @@ func Start(cdyfile Input) (*Instance, error) { if pidErr := writePidFile(); pidErr != nil { log.Printf("[ERROR] Could not write pidfile: %v", pidErr) } + + // Execute instantiation events + EmitEvent(InstanceStartupEvent, inst) + return inst, nil } diff --git a/caddy/caddymain/run.go b/caddy/caddymain/run.go index c0d1ba494..f7269c88c 100644 --- a/caddy/caddymain/run.go +++ b/caddy/caddymain/run.go @@ -160,9 +160,6 @@ func Run() { mustLogFatalf("%v", err) } - // Execute instantiation events - caddy.EmitEvent(caddy.InstanceStartupEvent, instance) - // Begin telemetry (these are no-ops if telemetry disabled) telemetry.Set("caddy_version", appVersion) telemetry.Set("num_listeners", len(instance.Servers())) diff --git a/onevent/hook/config.go b/onevent/hook/config.go index 5055e7eb4..a09b2bb9e 100644 --- a/onevent/hook/config.go +++ b/onevent/hook/config.go @@ -14,7 +14,8 @@ type Config struct { // SupportedEvents is a map of supported events. var SupportedEvents = map[string]caddy.EventName{ - "startup": caddy.InstanceStartupEvent, - "shutdown": caddy.ShutdownEvent, - "certrenew": caddy.CertRenewEvent, + "startup": caddy.StartupEvent, + "instance_startup": caddy.InstanceStartupEvent, + "shutdown": caddy.ShutdownEvent, + "certrenew": caddy.CertRenewEvent, } diff --git a/onevent/on_test.go b/onevent/on_test.go index 33e4490ee..eb6f34b8d 100644 --- a/onevent/on_test.go +++ b/onevent/on_test.go @@ -45,7 +45,8 @@ func TestCommandParse(t *testing.T) { }{ {name: "noInput", input: `on`, shouldErr: true}, {name: "nonExistent", input: "on xyz cmd arg", shouldErr: true}, - {name: "startup", input: `on startup cmd arg1 arg2`, shouldErr: false, config: hook.Config{Event: caddy.InstanceStartupEvent, Command: "cmd", Args: []string{"arg1", "arg2"}}}, + {name: "startup", input: `on startup cmd arg1 arg2`, shouldErr: false, config: hook.Config{Event: caddy.StartupEvent, Command: "cmd", Args: []string{"arg1", "arg2"}}}, + {name: "instance_startup", input: `on instance_startup cmd arg1 arg2`, shouldErr: false, config: hook.Config{Event: caddy.InstanceStartupEvent, Command: "cmd", Args: []string{"arg1", "arg2"}}}, {name: "shutdown", input: `on shutdown cmd arg1 arg2 &`, shouldErr: false, config: hook.Config{Event: caddy.ShutdownEvent, Command: "cmd", Args: []string{"arg1", "arg2", "&"}}}, {name: "certrenew", input: `on certrenew cmd arg1 arg2`, shouldErr: false, config: hook.Config{Event: caddy.CertRenewEvent, Command: "cmd", Args: []string{"arg1", "arg2"}}}, }