From 1fabfc4f9766186723700a5c25b34a80beb68dc0 Mon Sep 17 00:00:00 2001 From: appleboy Date: Sun, 9 Mar 2025 21:42:02 +0800 Subject: [PATCH] chore: implement debug functionality with godump integration - Add a new dependency on `github.com/yassinebenaid/godump` - Include `godump` in the import statements - Add a new environment variable `DEBUG` to the existing list - Implement a debug dump of the plugin if debugging is enabled Signed-off-by: appleboy --- go.mod | 1 + go.sum | 2 ++ main.go | 7 ++++++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/go.mod b/go.mod index 142e9b0..5f4fa00 100644 --- a/go.mod +++ b/go.mod @@ -7,6 +7,7 @@ require ( github.com/joho/godotenv v1.5.1 github.com/stretchr/testify v1.8.4 github.com/urfave/cli/v2 v2.27.5 + github.com/yassinebenaid/godump v0.11.1 golang.org/x/crypto v0.29.0 ) diff --git a/go.sum b/go.sum index 7d1ce0b..6d055f8 100644 --- a/go.sum +++ b/go.sum @@ -23,6 +23,8 @@ github.com/urfave/cli/v2 v2.27.5 h1:WoHEJLdsXr6dDWoJgMq/CboDmyY/8HMMH1fTECbih+w= github.com/urfave/cli/v2 v2.27.5/go.mod h1:3Sevf16NykTbInEnD0yKkjDAeZDS0A6bzhBH5hrMvTQ= github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 h1:gEOO8jv9F4OT7lGCjxCBTO/36wtF6j2nSip77qHd4x4= github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1/go.mod h1:Ohn+xnUBiLI6FVj/9LpzZWtj1/D6lUovWYBkxHVV3aM= +github.com/yassinebenaid/godump v0.11.1 h1:SPujx/XaYqGDfmNh7JI3dOyCUVrG0bG2duhO3Eh2EhI= +github.com/yassinebenaid/godump v0.11.1/go.mod h1:dc/0w8wmg6kVIvNGAzbKH1Oa54dXQx8SNKh4dPRyW44= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.29.0 h1:L5SG1JTTXupVV3n6sUqMTeWbjAyfPwoda2DLX8J8FrQ= diff --git a/main.go b/main.go index e4aa12c..edfeccf 100644 --- a/main.go +++ b/main.go @@ -9,6 +9,7 @@ import ( easyssh "github.com/appleboy/easyssh-proxy" "github.com/joho/godotenv" "github.com/urfave/cli/v2" + "github.com/yassinebenaid/godump" ) // Version set at compile-time @@ -212,7 +213,7 @@ func main() { &cli.BoolFlag{ Name: "debug", Usage: "debug mode", - EnvVars: []string{"PLUGIN_DEBUG", "INPUT_DEBUG"}, + EnvVars: []string{"PLUGIN_DEBUG", "INPUT_DEBUG", "DEBUG"}, }, &cli.StringFlag{ Name: "envs.format", @@ -329,5 +330,9 @@ func run(c *cli.Context) error { Writer: os.Stdout, } + if plugin.Config.Debug { + _ = godump.Dump(plugin) + } + return plugin.Exec() }