diff --git a/plugins/app-json/functions.go b/plugins/app-json/functions.go index 3d1ef3eab..99527666d 100644 --- a/plugins/app-json/functions.go +++ b/plugins/app-json/functions.go @@ -442,7 +442,11 @@ func createdContainerID(appName string, dockerArgs []string, image string, comma } containerID := result.StdoutContents() - err = common.PlugnTrigger("post-container-create", []string{"app", containerID, appName, phase}...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-container-create", + Args: []string{"app", containerID, appName, phase}, + StreamStdio: true, + }) return containerID, err } @@ -462,12 +466,27 @@ func setScale(appName string, image string) error { } if len(args) == 3 { - return common.PlugnTrigger("ps-can-scale", []string{appName, "true"}...) - } - - if err := common.PlugnTrigger("ps-can-scale", []string{appName, "false"}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "ps-can-scale", + Args: []string{appName, "true"}, + StreamStdio: true, + }) return err } - return common.PlugnTrigger("ps-set-scale", args...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "ps-can-scale", + Args: []string{appName, "false"}, + StreamStdio: true, + }) + if err != nil { + return err + } + + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "ps-set-scale", + Args: args, + StreamStdio: true, + }) + return err } diff --git a/plugins/app-json/go.mod b/plugins/app-json/go.mod index 8ffa9aa50..da0eeb9ba 100644 --- a/plugins/app-json/go.mod +++ b/plugins/app-json/go.mod @@ -12,8 +12,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/app-json/go.sum b/plugins/app-json/go.sum index 6131c1424..bc9e30440 100644 --- a/plugins/app-json/go.sum +++ b/plugins/app-json/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= diff --git a/plugins/apps/functions.go b/plugins/apps/functions.go index 3f9af9559..96a3e04f0 100644 --- a/plugins/apps/functions.go +++ b/plugins/apps/functions.go @@ -38,11 +38,12 @@ func createApp(appName string) error { return err } - if err := common.PlugnTrigger("post-create", []string{appName}...); err != nil { - return err - } - - return nil + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-create", + Args: []string{appName}, + StreamStdio: true, + }) + return err } // destroys an app @@ -56,19 +57,41 @@ func destroyApp(appName string) error { common.LogInfo1(fmt.Sprintf("Destroying %s (including all add-ons)", appName)) imageTag, _ := common.GetRunningImageTag(appName, "") - if err := common.PlugnTrigger("pre-delete", []string{appName, imageTag}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "pre-delete", + Args: []string{appName, imageTag}, + StreamStdio: true, + }) + if err != nil { return err } scheduler := common.GetAppScheduler(appName) removeContainers := "true" - if err := common.PlugnTrigger("scheduler-stop", []string{scheduler, appName, removeContainers}...); err != nil { + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-stop", + Args: []string{scheduler, appName, removeContainers}, + StreamStdio: true, + }) + if err != nil { return err } - if err := common.PlugnTrigger("scheduler-post-delete", []string{scheduler, appName, imageTag}...); err != nil { + + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-post-delete", + Args: []string{scheduler, appName, imageTag}, + StreamStdio: true, + }) + if err != nil { return err } - if err := common.PlugnTrigger("post-delete", []string{appName, imageTag}...); err != nil { + + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-delete", + Args: []string{appName, imageTag}, + StreamStdio: true, + }) + if err != nil { return err } @@ -76,7 +99,12 @@ func destroyApp(appName string) error { common.DockerCleanup(appName, forceCleanup) common.LogInfo1("Retiring old containers and images") - if err := common.PlugnTrigger("scheduler-retire", []string{scheduler, appName}...); err != nil { + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-retire", + Args: []string{scheduler, appName}, + StreamStdio: true, + }) + if err != nil { return err } diff --git a/plugins/apps/go.mod b/plugins/apps/go.mod index f9c13adab..a7453d6cf 100644 --- a/plugins/apps/go.mod +++ b/plugins/apps/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/apps/go.sum b/plugins/apps/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/apps/go.sum +++ b/plugins/apps/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/apps/subcommands.go b/plugins/apps/subcommands.go index de74cefb3..56e6f7cc4 100644 --- a/plugins/apps/subcommands.go +++ b/plugins/apps/subcommands.go @@ -40,7 +40,12 @@ func CommandClone(oldAppName string, newAppName string, skipDeploy bool, ignoreE return err } - if err := common.PlugnTrigger("post-app-clone-setup", []string{oldAppName, newAppName}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-app-clone-setup", + Args: []string{oldAppName, newAppName}, + StreamStdio: true, + }) + if err != nil { return err } @@ -48,15 +53,21 @@ func CommandClone(oldAppName string, newAppName string, skipDeploy bool, ignoreE os.Setenv("SKIP_REBUILD", "true") } - if err := common.PlugnTrigger("git-has-code", []string{newAppName}...); err != nil { + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "git-has-code", + Args: []string{newAppName}, + StreamStdio: true, + }) + if err != nil { os.Setenv("SKIP_REBUILD", "true") } - if err := common.PlugnTrigger("post-app-clone", []string{oldAppName, newAppName}...); err != nil { - return err - } - - return nil + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-app-clone", + Args: []string{oldAppName, newAppName}, + StreamStdio: true, + }) + return err } // CommandCreate creates app via command line @@ -158,7 +169,12 @@ func CommandRename(oldAppName string, newAppName string, skipDeploy bool) error return err } - if err := common.PlugnTrigger("post-app-rename-setup", []string{oldAppName, newAppName}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-app-rename-setup", + Args: []string{oldAppName, newAppName}, + StreamStdio: true, + }) + if err != nil { return err } @@ -171,15 +187,21 @@ func CommandRename(oldAppName string, newAppName string, skipDeploy bool) error os.Setenv("SKIP_REBUILD", "true") } - if err := common.PlugnTrigger("git-has-code", []string{newAppName}...); err != nil { + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "git-has-code", + Args: []string{newAppName}, + StreamStdio: true, + }) + if err != nil { os.Setenv("SKIP_REBUILD", "true") } - if err := common.PlugnTrigger("post-app-rename", []string{oldAppName, newAppName}...); err != nil { - return err - } - - return nil + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-app-rename", + Args: []string{oldAppName, newAppName}, + StreamStdio: true, + }) + return err } // CommandReport displays an app report for one or more apps diff --git a/plugins/builder/go.mod b/plugins/builder/go.mod index 66c63df64..59d3bec3b 100644 --- a/plugins/builder/go.mod +++ b/plugins/builder/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/builder/go.sum b/plugins/builder/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/builder/go.sum +++ b/plugins/builder/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/buildpacks/go.mod b/plugins/buildpacks/go.mod index cf1b1530d..779a4a1ca 100644 --- a/plugins/buildpacks/go.mod +++ b/plugins/buildpacks/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/buildpacks/go.sum b/plugins/buildpacks/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/buildpacks/go.sum +++ b/plugins/buildpacks/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/buildpacks/subcommands.go b/plugins/buildpacks/subcommands.go index c52bd9b4c..24d3125ef 100644 --- a/plugins/buildpacks/subcommands.go +++ b/plugins/buildpacks/subcommands.go @@ -149,7 +149,12 @@ func CommandSetProperty(appName string, property string, value string) error { common.CommandPropertySet("buildpacks", appName, property, value, DefaultProperties, GlobalProperties) if property == "stack" && oldStack != value { if appName != "--global" { - return common.PlugnTrigger("post-stack-set", []string{appName, value}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-stack-set", + Args: []string{appName, value}, + StreamStdio: true, + }) + return err } apps, err := common.DokkuApps() @@ -157,7 +162,12 @@ func CommandSetProperty(appName string, property string, value string) error { return err } for _, app := range apps { - if err := common.PlugnTrigger("post-stack-set", []string{app, value}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-stack-set", + Args: []string{app, value}, + StreamStdio: true, + }) + if err != nil { return err } } diff --git a/plugins/common/go.mod b/plugins/common/go.mod index 9d229cd93..5cb66aab9 100644 --- a/plugins/common/go.mod +++ b/plugins/common/go.mod @@ -4,7 +4,6 @@ go 1.21 require ( github.com/alexellis/go-execute/v2 v2.2.1 - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 github.com/fatih/color v1.16.0 github.com/hashicorp/go-multierror v1.1.1 github.com/melbahja/goph v1.4.0 @@ -17,7 +16,6 @@ require ( ) require ( - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect github.com/google/go-cmp v0.6.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/kr/fs v0.1.0 // indirect diff --git a/plugins/common/go.sum b/plugins/common/go.sum index ea3cd3d81..50c6f3e18 100644 --- a/plugins/common/go.sum +++ b/plugins/common/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/common/subprocess.go b/plugins/common/subprocess.go index 8a6187fb9..d47f320e3 100644 --- a/plugins/common/subprocess.go +++ b/plugins/common/subprocess.go @@ -1,158 +1,10 @@ package common import ( - "fmt" - "io" - "os" - "os/exec" "path/filepath" "strings" - - "github.com/codeskyblue/go-sh" ) -// ShellCmd represents a shell command to be run for dokku -type ShellCmd struct { - Env map[string]string - Command *exec.Cmd - CommandString string - Args []string - ShowOutput bool - ExitError *exec.ExitError -} - -// NewShellCmd returns a new ShellCmd struct -// -// Deprecated: use CallExecCommand instead -func NewShellCmd(command string) *ShellCmd { - items := strings.Split(command, " ") - cmd := items[0] - args := items[1:] - return NewShellCmdWithArgs(cmd, args...) -} - -// NewShellCmdWithArgs returns a new ShellCmd struct -// -// Deprecated: use CallExecCommand instead -func NewShellCmdWithArgs(cmd string, args ...string) *ShellCmd { - commandString := strings.Join(append([]string{cmd}, args...), " ") - - return &ShellCmd{ - Command: exec.Command(cmd, args...), - CommandString: commandString, - Args: args, - ShowOutput: true, - } -} - -func (sc *ShellCmd) setup() { - env := os.Environ() - for k, v := range sc.Env { - env = append(env, fmt.Sprintf("%s=%s", k, v)) - } - sc.Command.Env = env - if sc.ShowOutput { - sc.Command.Stdout = os.Stdout - sc.Command.Stderr = os.Stderr - } -} - -// Execute is a lightweight wrapper around exec.Command -func (sc *ShellCmd) Execute() bool { - sc.setup() - - if err := sc.Command.Run(); err != nil { - exitError, ok := err.(*exec.ExitError) - if ok { - sc.ExitError = exitError - } - return false - } - return true -} - -// Start is a wrapper around exec.Command.Start() -func (sc *ShellCmd) Start() error { - sc.setup() - - return sc.Command.Start() -} - -// Output is a lightweight wrapper around exec.Command.Output() -func (sc *ShellCmd) Output() ([]byte, error) { - sc.setup() - return sc.Command.Output() -} - -// CombinedOutput is a lightweight wrapper around exec.Command.CombinedOutput() -func (sc *ShellCmd) CombinedOutput() ([]byte, error) { - sc.setup() - return sc.Command.CombinedOutput() -} - -// PlugnTrigger fire the given plugn trigger with the given args -// -// Deprecated: use CallPlugnTrigger instead -func PlugnTrigger(triggerName string, args ...string) error { - LogDebug(fmt.Sprintf("plugn trigger %s %v", triggerName, args)) - return PlugnTriggerSetup(triggerName, args...).Run() -} - -// PlugnTriggerOutput fire the given plugn trigger with the given args -// -// Deprecated: use CallPlugnTrigger with CaptureOutput=true instead -func PlugnTriggerOutput(triggerName string, args ...string) ([]byte, error) { - LogDebug(fmt.Sprintf("plugn trigger %s %v", triggerName, args)) - rE, wE, _ := os.Pipe() - rO, wO, _ := os.Pipe() - session := PlugnTriggerSetup(triggerName, args...) - session.Stderr = wE - session.Stdout = wO - err := session.Run() - wE.Close() - wO.Close() - - readStderr, _ := io.ReadAll(rE) - readStdout, _ := io.ReadAll(rO) - - stderr := string(readStderr[:]) - if err != nil { - err = fmt.Errorf(stderr) - } - - if os.Getenv("DOKKU_TRACE") == "1" { - for _, line := range strings.Split(stderr, "\n") { - LogDebug(fmt.Sprintf("plugn trigger %s stderr: %s", triggerName, line)) - } - for _, line := range strings.Split(string(readStdout[:]), "\n") { - LogDebug(fmt.Sprintf("plugn trigger %s stdout: %s", triggerName, line)) - } - } - - return readStdout, err -} - -// PlugnTriggerOutputAsString fires the given plugn trigger with the given args and returns the string contents instead of bytes -// -// Deprecated: use CallPlugnTrigger with CaptureOutput=true instead -func PlugnTriggerOutputAsString(triggerName string, args ...string) (string, error) { - b, err := PlugnTriggerOutput(triggerName, args...) - return strings.TrimSpace(string(b[:])), err -} - -// PlugnTriggerSetup sets up a plugn trigger call -// -// Deprecated: use CallPlugnTrigger instead -func PlugnTriggerSetup(triggerName string, args ...string) *sh.Session { - shellArgs := make([]interface{}, len(args)+2) - shellArgs[0] = "trigger" - shellArgs[1] = triggerName - for i, arg := range args { - shellArgs[i+2] = arg - } - return sh.Command("plugn", shellArgs...) -} - // PlugnTriggerExists returns whether a plugin trigger exists (ignoring the existence of any within the 20_events plugin) func PlugnTriggerExists(triggerName string) bool { pluginPath := MustGetEnv("PLUGIN_PATH") diff --git a/plugins/config/config.go b/plugins/config/config.go index 3bfbf59d6..90f04039d 100644 --- a/plugins/config/config.go +++ b/plugins/config/config.go @@ -129,14 +129,24 @@ func UnsetAll(appName string, restart bool) (err error) { func triggerRestart(appName string) { common.LogInfo1(fmt.Sprintf("Restarting app %s", appName)) - if err := common.PlugnTrigger("release-and-deploy", appName); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "release-and-deploy", + Args: []string{appName}, + StreamStdio: true, + }) + if err != nil { common.LogWarn(fmt.Sprintf("Failure while restarting app: %s", err)) } } func triggerUpdate(appName string, operation string, args []string) { args = append([]string{appName, operation}, args...) - if err := common.PlugnTrigger("post-config-update", args...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-config-update", + Args: args, + StreamStdio: true, + }) + if err != nil { common.LogWarn(fmt.Sprintf("Failure while triggering post-config-update: %s", err)) } } diff --git a/plugins/config/go.mod b/plugins/config/go.mod index f024bb7eb..ebafb4695 100644 --- a/plugins/config/go.mod +++ b/plugins/config/go.mod @@ -12,8 +12,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/google/go-cmp v0.6.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect diff --git a/plugins/config/go.sum b/plugins/config/go.sum index 76515bbb1..60dc76b24 100644 --- a/plugins/config/go.sum +++ b/plugins/config/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/cron/go.mod b/plugins/cron/go.mod index 7fab44cd3..37acb73ba 100644 --- a/plugins/cron/go.mod +++ b/plugins/cron/go.mod @@ -14,8 +14,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/cron/go.sum b/plugins/cron/go.sum index 3dad92380..1d1317b5f 100644 --- a/plugins/cron/go.sum +++ b/plugins/cron/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= diff --git a/plugins/cron/subcommands.go b/plugins/cron/subcommands.go index 4a85a01e3..981f1deab 100644 --- a/plugins/cron/subcommands.go +++ b/plugins/cron/subcommands.go @@ -110,7 +110,12 @@ func CommandRun(appName string, cronID string, detached bool) error { os.Setenv("DOKKU_RM_CONTAINER", "1") scheduler := common.GetAppScheduler(appName) args := append([]string{scheduler, appName, "0", "--"}, fields...) - return common.PlugnTrigger("scheduler-run", args...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-run", + Args: args, + StreamStdio: true, + }) + return err } // CommandSet set or clear a cron property for an app @@ -120,5 +125,9 @@ func CommandSet(appName string, property string, value string) error { } common.CommandPropertySet("cron", appName, property, value, DefaultProperties, GlobalProperties) - return common.PlugnTrigger("cron-write") + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "cron-write", + StreamStdio: true, + }) + return err } diff --git a/plugins/docker-options/go.mod b/plugins/docker-options/go.mod index 6bd85a923..7b3e42735 100644 --- a/plugins/docker-options/go.mod +++ b/plugins/docker-options/go.mod @@ -6,8 +6,6 @@ require github.com/dokku/dokku/plugins/common v0.0.0-00010101000000-000000000000 require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/docker-options/go.sum b/plugins/docker-options/go.sum index d37bea445..6b2aed785 100644 --- a/plugins/docker-options/go.sum +++ b/plugins/docker-options/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/logs/go.mod b/plugins/logs/go.mod index 2b7a13f1c..f0cee1bf4 100644 --- a/plugins/logs/go.mod +++ b/plugins/logs/go.mod @@ -11,8 +11,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/logs/go.sum b/plugins/logs/go.sum index 418e80d53..de72fbf95 100644 --- a/plugins/logs/go.sum +++ b/plugins/logs/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/logs/logs.go b/plugins/logs/logs.go index d0122957e..6d24d8755 100644 --- a/plugins/logs/logs.go +++ b/plugins/logs/logs.go @@ -40,9 +40,11 @@ var templates embed.FS // GetFailedLogs outputs failed deploy logs for a given app func GetFailedLogs(appName string) error { common.LogInfo2Quiet(fmt.Sprintf("%s failed deploy logs", appName)) - s := common.GetAppScheduler(appName) - if err := common.PlugnTrigger("scheduler-logs-failed", s, appName); err != nil { - return err - } - return nil + scheduler := common.GetAppScheduler(appName) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-logs-failed", + Args: []string{scheduler, appName}, + StreamStdio: true, + }) + return err } diff --git a/plugins/network/go.mod b/plugins/network/go.mod index 6c4f630e5..438ca7390 100644 --- a/plugins/network/go.mod +++ b/plugins/network/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/network/go.sum b/plugins/network/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/network/go.sum +++ b/plugins/network/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/network/triggers.go b/plugins/network/triggers.go index 3f5bd99ff..6ad20bd0c 100644 --- a/plugins/network/triggers.go +++ b/plugins/network/triggers.go @@ -40,7 +40,12 @@ func TriggerInstall() error { if common.PropertyExists("network", appName, "bind-all-interfaces") { continue } - if err := common.PlugnTrigger("proxy-is-enabled", []string{appName}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-is-enabled", + Args: []string{appName}, + StreamStdio: true, + }) + if err != nil { common.LogVerboseQuiet("Setting network property 'bind-all-interfaces' to false") if err := common.PropertyWrite("network", appName, "bind-all-interfaces", "false"); err != nil { common.LogWarn(err.Error()) diff --git a/plugins/nginx-vhosts/go.mod b/plugins/nginx-vhosts/go.mod index a72c65d5a..0db352073 100644 --- a/plugins/nginx-vhosts/go.mod +++ b/plugins/nginx-vhosts/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/nginx-vhosts/go.sum b/plugins/nginx-vhosts/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/nginx-vhosts/go.sum +++ b/plugins/nginx-vhosts/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/ports/functions.go b/plugins/ports/functions.go index 59f62e1bb..29ca80b0d 100644 --- a/plugins/ports/functions.go +++ b/plugins/ports/functions.go @@ -286,10 +286,12 @@ func inRange(value int, min int, max int) bool { // isAppVhostEnabled checks if the app vhost is enabled func isAppVhostEnabled(appName string) bool { - if err := common.PlugnTrigger("domains-vhost-enabled", []string{appName}...); err != nil { - return false - } - return true + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "domains-vhost-enabled", + Args: []string{appName}, + StreamStdio: true, + }) + return err == nil } // listAppPortMaps lists the port mappings for an app diff --git a/plugins/ports/go.mod b/plugins/ports/go.mod index 6e5b795d0..6d7895562 100644 --- a/plugins/ports/go.mod +++ b/plugins/ports/go.mod @@ -11,8 +11,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/ports/go.sum b/plugins/ports/go.sum index a2e5d436b..bf77a3bf1 100644 --- a/plugins/ports/go.sum +++ b/plugins/ports/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/ports/subcommands.go b/plugins/ports/subcommands.go index 51f9564f8..6f4f3793f 100644 --- a/plugins/ports/subcommands.go +++ b/plugins/ports/subcommands.go @@ -46,7 +46,12 @@ func CommandAdd(appName string, portMapStrings []string) error { return err } - return common.PlugnTrigger("post-proxy-ports-update", []string{appName, "add"}...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-proxy-ports-update", + Args: []string{appName, "add"}, + StreamStdio: true, + }) + return err } // CommandClear clears all port mappings for an app @@ -59,7 +64,12 @@ func CommandClear(appName string) error { return err } - return common.PlugnTrigger("post-proxy-ports-update", []string{appName, "clear"}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-proxy-ports-update", + Args: []string{appName, "clear"}, + StreamStdio: true, + }) + return err } // CommandRemove removes specific port mappings from an app @@ -81,7 +91,12 @@ func CommandRemove(appName string, portMapStrings []string) error { return err } - return common.PlugnTrigger("post-proxy-ports-update", []string{appName, "remove"}...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-proxy-ports-update", + Args: []string{appName, "remove"}, + StreamStdio: true, + }) + return err } // CommandSet sets port mappings for an app @@ -107,7 +122,12 @@ func CommandSet(appName string, portMapStrings []string) error { return err } - return common.PlugnTrigger("post-proxy-ports-update", []string{appName, "set"}...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-proxy-ports-update", + Args: []string{appName, "set"}, + StreamStdio: true, + }) + return err } // CommandReport displays a ports report for one or more apps diff --git a/plugins/proxy/go.mod b/plugins/proxy/go.mod index e44834cba..3a6fdbf10 100644 --- a/plugins/proxy/go.mod +++ b/plugins/proxy/go.mod @@ -10,8 +10,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/proxy/go.sum b/plugins/proxy/go.sum index a2e5d436b..bf77a3bf1 100644 --- a/plugins/proxy/go.sum +++ b/plugins/proxy/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/proxy/proxy.go b/plugins/proxy/proxy.go index 26cfee2ff..57a7bfba6 100644 --- a/plugins/proxy/proxy.go +++ b/plugins/proxy/proxy.go @@ -11,12 +11,22 @@ const RunInSerial = 0 // BuildConfig rebuilds the proxy config for the specified app func BuildConfig(appName string) error { - return common.PlugnTrigger("proxy-build-config", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-build-config", + Args: []string{appName}, + StreamStdio: true, + }) + return err } // ClearConfig clears the proxy config for the specified app func ClearConfig(appName string) error { - return common.PlugnTrigger("proxy-clear-config", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-clear-config", + Args: []string{appName}, + StreamStdio: true, + }) + return err } // Disable disables proxy implementations for the specified app @@ -35,7 +45,12 @@ func Disable(appName string) error { return err } - return common.PlugnTrigger("proxy-disable", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-disable", + Args: []string{appName}, + StreamStdio: true, + }) + return err } // Enable enables proxy implementations for the specified app @@ -50,8 +65,12 @@ func Enable(appName string) error { if err := config.UnsetMany(appName, keys, false); err != nil { return err } - - return common.PlugnTrigger("proxy-enable", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-enable", + Args: []string{appName}, + StreamStdio: true, + }) + return err } // IsAppProxyEnabled returns true if proxy is enabled; otherwise return false diff --git a/plugins/ps/functions.go b/plugins/ps/functions.go index de6d9aa86..3bb7f1235 100644 --- a/plugins/ps/functions.go +++ b/plugins/ps/functions.go @@ -210,7 +210,12 @@ func getFormations(appName string) (FormationSlice, error) { } func restorePrep() error { - if err := common.PlugnTrigger("proxy-clear-config", []string{"--all"}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-clear-config", + Args: []string{"--all"}, + StreamStdio: true, + }) + if err != nil { return fmt.Errorf("Error clearing proxy config: %s", err) } @@ -266,7 +271,12 @@ func scaleSet(appName string, skipDeploy bool, clearExisting bool, processTuples } for _, formation := range formations { - if err := common.PlugnTrigger("deploy", []string{appName, imageTag, formation.ProcessType}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "deploy", + Args: []string{appName, imageTag, formation.ProcessType}, + StreamStdio: true, + }) + if err != nil { return err } } diff --git a/plugins/ps/go.mod b/plugins/ps/go.mod index 3105295f4..3ee49a0d8 100644 --- a/plugins/ps/go.mod +++ b/plugins/ps/go.mod @@ -12,8 +12,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/ps/go.sum b/plugins/ps/go.sum index 5a4997fa4..3d4afc513 100644 --- a/plugins/ps/go.sum +++ b/plugins/ps/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/ps/ps.go b/plugins/ps/ps.go index a0b937e83..7e1e2f4d9 100644 --- a/plugins/ps/ps.go +++ b/plugins/ps/ps.go @@ -68,7 +68,12 @@ func (d FormationSlice) Less(i, j int) bool { // Rebuild rebuilds app from base image func Rebuild(appName string) error { - return common.PlugnTrigger("receive-app", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "receive-app", + Args: []string{appName}, + StreamStdio: true, + }) + return err } // Restart restarts the app @@ -85,10 +90,20 @@ func Restart(appName string) error { if imageTag == "" { common.LogWarn("No deployed-image-tag property saved, falling back to full release-and-deploy") - return common.PlugnTrigger("release-and-deploy", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "release-and-deploy", + Args: []string{appName}, + StreamStdio: true, + }) + return err } - return common.PlugnTrigger("deploy", []string{appName, imageTag}...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "deploy", + Args: []string{appName, imageTag}, + StreamStdio: true, + }) + return err } // RestartProcess restarts a process type within an app @@ -105,21 +120,41 @@ func RestartProcess(appName string, processName string) error { if imageTag == "" { common.LogWarn("No deployed-image-tag property saved, falling back to full release-and-deploy") - return common.PlugnTrigger("release-and-deploy", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "release-and-deploy", + Args: []string{appName}, + StreamStdio: true, + }) + return err } - return common.PlugnTrigger("deploy", []string{appName, imageTag, processName}...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "deploy", + Args: []string{appName, imageTag, processName}, + StreamStdio: true, + }) + return err } // Restore ensures an app that should be running is running on boot func Restore(appName string) error { scheduler := common.GetAppScheduler(appName) - if err := common.PlugnTrigger("scheduler-pre-restore", []string{scheduler, appName}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-pre-restore", + Args: []string{scheduler, appName}, + StreamStdio: true, + }) + if err != nil { return fmt.Errorf("Error running scheduler-pre-restore: %s", err) } common.LogInfo1("Clearing potentially invalid proxy configuration") - if err := common.PlugnTrigger("proxy-clear-config", []string{appName}...); err != nil { + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-clear-config", + Args: []string{appName}, + StreamStdio: true, + }) + if err != nil { common.LogWarn(fmt.Sprintf("Error clearing proxy config: %s", err)) } @@ -151,7 +186,12 @@ func Start(appName string) error { return nil } - if err := common.PlugnTrigger("pre-start", []string{appName}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "pre-start", + Args: []string{appName}, + StreamStdio: true, + }) + if err != nil { return fmt.Errorf("Failure in pre-start hook: %s", err) } @@ -164,18 +204,24 @@ func Start(appName string) error { } if runningState != "true" { - if err := common.PlugnTrigger("release-and-deploy", []string{appName, imageTag}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "release-and-deploy", + Args: []string{appName, imageTag}, + StreamStdio: true, + }) + if err != nil { return err } } else { common.LogWarn(fmt.Sprintf("App %s already running", appName)) } - if err := common.PlugnTrigger("proxy-build-config", []string{appName}...); err != nil { - return err - } - - return nil + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "proxy-build-config", + Args: []string{appName}, + StreamStdio: true, + }) + return err } // Stop stops the app @@ -188,13 +234,19 @@ func Stop(appName string) error { common.LogInfo1Quiet(fmt.Sprintf("Stopping %s", appName)) scheduler := common.GetAppScheduler(appName) - if err := common.PlugnTrigger("scheduler-stop", []string{scheduler, appName}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-stop", + Args: []string{scheduler, appName}, + StreamStdio: true, + }) + if err != nil { return err } - if err := common.PlugnTrigger("post-stop", []string{appName}...); err != nil { - return err - } - - return nil + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "post-stop", + Args: []string{appName}, + StreamStdio: true, + }) + return err } diff --git a/plugins/ps/subcommands.go b/plugins/ps/subcommands.go index f818d8140..2d5302403 100644 --- a/plugins/ps/subcommands.go +++ b/plugins/ps/subcommands.go @@ -18,7 +18,12 @@ func CommandInspect(appName string) error { } scheduler := common.GetAppScheduler(appName) - return common.PlugnTrigger("scheduler-inspect", []string{scheduler, appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-inspect", + Args: []string{scheduler, appName}, + StreamStdio: true, + }) + return err } // CommandRebuild rebuilds an app from source @@ -74,7 +79,11 @@ func CommandRestart(appName string, processName string, allApps bool, parallelCo // CommandRestore starts previously running apps e.g. after reboot func CommandRestore(appName string, allApps bool, parallelCount int) error { - if err := common.PlugnTrigger("pre-restore", []string{}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "pre-restore", + StreamStdio: true, + }) + if err != nil { return fmt.Errorf("Error running pre-restore: %s", err) } @@ -124,7 +133,12 @@ func CommandRetire(appName string) error { } common.LogInfo1("Retiring old containers and images") - return common.PlugnTrigger("scheduler-retire", []string{scheduler, appName}...) + _, err = common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "scheduler-retire", + Args: []string{scheduler, appName}, + StreamStdio: true, + }) + return err } // CommandScale gets or sets how many instances of a given process to run diff --git a/plugins/registry/go.mod b/plugins/registry/go.mod index b67077c8c..75c6adcc2 100644 --- a/plugins/registry/go.mod +++ b/plugins/registry/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/registry/go.sum b/plugins/registry/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/registry/go.sum +++ b/plugins/registry/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/registry/triggers.go b/plugins/registry/triggers.go index fa8cb5f07..5579a8b74 100644 --- a/plugins/registry/triggers.go +++ b/plugins/registry/triggers.go @@ -90,7 +90,12 @@ func TriggerPostDelete(appName string) error { func TriggerPostReleaseBuilder(appName string, image string) error { parts := strings.Split(image, ":") imageTag := parts[len(parts)-1] - if err := common.PlugnTrigger("pre-deploy", []string{appName, imageTag}...); err != nil { + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "pre-deploy", + Args: []string{appName, imageTag}, + StreamStdio: true, + }) + if err != nil { return err } diff --git a/plugins/repo/go.mod b/plugins/repo/go.mod index 48194e2be..791f1e826 100644 --- a/plugins/repo/go.mod +++ b/plugins/repo/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/repo/go.sum b/plugins/repo/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/repo/go.sum +++ b/plugins/repo/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/resource/go.mod b/plugins/resource/go.mod index 1fb2ef53f..3a1926766 100644 --- a/plugins/resource/go.mod +++ b/plugins/resource/go.mod @@ -9,8 +9,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/resource/go.sum b/plugins/resource/go.sum index 82ead0675..d1dda89b5 100644 --- a/plugins/resource/go.sum +++ b/plugins/resource/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/plugins/scheduler-docker-local/go.mod b/plugins/scheduler-docker-local/go.mod index db86c77b1..236d6dbb1 100644 --- a/plugins/scheduler-docker-local/go.mod +++ b/plugins/scheduler-docker-local/go.mod @@ -11,8 +11,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/dokku/dokku/plugins/app-json v0.0.0-00010101000000-000000000000 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect diff --git a/plugins/scheduler-docker-local/go.sum b/plugins/scheduler-docker-local/go.sum index c231b0109..775646bc7 100644 --- a/plugins/scheduler-docker-local/go.sum +++ b/plugins/scheduler-docker-local/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= diff --git a/plugins/scheduler-k3s/go.mod b/plugins/scheduler-k3s/go.mod index e7d8d9e59..4895bf9f3 100644 --- a/plugins/scheduler-k3s/go.mod +++ b/plugins/scheduler-k3s/go.mod @@ -47,8 +47,6 @@ require ( github.com/cenkalti/backoff/v4 v4.2.1 // indirect github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/chai2010/gettext-go v1.0.2 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/containerd/containerd v1.7.11 // indirect github.com/containerd/log v0.1.0 // indirect github.com/cyphar/filepath-securejoin v0.2.4 // indirect diff --git a/plugins/scheduler-k3s/go.sum b/plugins/scheduler-k3s/go.sum index 8f9fcd676..beac6a835 100644 --- a/plugins/scheduler-k3s/go.sum +++ b/plugins/scheduler-k3s/go.sum @@ -51,10 +51,6 @@ github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/chai2010/gettext-go v1.0.2 h1:1Lwwip6Q2QGsAdl/ZKPCwTe9fe0CjlUbqj5bFNSjIRk= github.com/chai2010/gettext-go v1.0.2/go.mod h1:y+wnP2cHYaVj19NZhYKAwEMH2CI1gNHeQQ+5AjwawxA= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM= github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw= github.com/containerd/containerd v1.7.11 h1:lfGKw3eU35sjV0aG2eYZTiwFEY1pCzxdzicHP3SZILw= diff --git a/plugins/scheduler-k3s/triggers.go b/plugins/scheduler-k3s/triggers.go index 4ea74b512..86a5cb6c6 100644 --- a/plugins/scheduler-k3s/triggers.go +++ b/plugins/scheduler-k3s/triggers.go @@ -227,7 +227,11 @@ func TriggerSchedulerDeploy(scheduler string, appName string, imageTag string) e domains := []string{} if _, ok := processes["web"]; ok { - err = common.PlugnTrigger("domains-vhost-enabled", []string{appName}...) + _, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ + Trigger: "domains-vhost-enabled", + Args: []string{appName}, + StreamStdio: true, + }) if err == nil { results, err := common.CallPlugnTrigger(common.PlugnTriggerInput{ Trigger: "domains-list", diff --git a/plugins/scheduler/go.mod b/plugins/scheduler/go.mod index 570da73bc..4bdadd218 100644 --- a/plugins/scheduler/go.mod +++ b/plugins/scheduler/go.mod @@ -10,8 +10,6 @@ require ( require ( github.com/alexellis/go-execute/v2 v2.2.1 // indirect - github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 // indirect - github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 // indirect github.com/fatih/color v1.16.0 // indirect github.com/hashicorp/errwrap v1.0.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect diff --git a/plugins/scheduler/go.sum b/plugins/scheduler/go.sum index a2e5d436b..bf77a3bf1 100644 --- a/plugins/scheduler/go.sum +++ b/plugins/scheduler/go.sum @@ -1,9 +1,5 @@ github.com/alexellis/go-execute/v2 v2.2.1 h1:4Ye3jiCKQarstODOEmqDSRCqxMHLkC92Bhse743RdOI= github.com/alexellis/go-execute/v2 v2.2.1/go.mod h1:FMdRnUTiFAmYXcv23txrp3VYZfLo24nMpiIneWgKHTQ= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0 h1:sDMmm+q/3+BukdIpxwO365v/Rbspp2Nt5XntgQRXq8Q= -github.com/codegangsta/inject v0.0.0-20150114235600-33e0aa1cb7c0/go.mod h1:4Zcjuz89kmFXt9morQgcfYZAYZ5n8WHjt81YYWIwtTM= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27 h1:HHUr4P/aKh4quafGxDT9LDasjGdlGkzLbfmmrlng3kA= -github.com/codeskyblue/go-sh v0.0.0-20190412065543-76bd3d59ff27/go.mod h1:VQx0hjo2oUeQkQUET7wRwradO6f+fN5jzXgB/zROxxE= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= diff --git a/tests/unit/ps-general-2.bats b/tests/unit/ps-general-2.bats index 70a869e43..379d7727d 100644 --- a/tests/unit/ps-general-2.bats +++ b/tests/unit/ps-general-2.bats @@ -111,7 +111,7 @@ teardown() { echo "output: $output" echo "status: $status" assert_failure - assert_output_contains "Could not start due to" + assert_output_contains "Could not start due to" 2 run /bin/bash -c "dokku ps:set $TEST_APP procfile-path second.Procfile" echo "output: $output"