From 63a2dff53b68415f2b1b06362f4fdfbbf46cd33c Mon Sep 17 00:00:00 2001 From: debugtalk Date: Sun, 22 May 2022 15:23:53 +0800 Subject: [PATCH] feat: add wiki sub-command to open httprunner website --- docs/CHANGELOG.md | 4 ++++ hrp/cmd/scaffold.go | 7 ++++--- hrp/cmd/wiki.go | 23 +++++++++++++++++++++++ hrp/internal/wiki/main.go | 12 ++++++++++++ hrp/internal/wiki/open_darwin.go | 3 +++ hrp/internal/wiki/open_linux.go | 3 +++ hrp/internal/wiki/open_windows.go | 3 +++ 7 files changed, 52 insertions(+), 3 deletions(-) create mode 100644 hrp/cmd/wiki.go create mode 100644 hrp/internal/wiki/main.go create mode 100644 hrp/internal/wiki/open_darwin.go create mode 100644 hrp/internal/wiki/open_linux.go create mode 100644 hrp/internal/wiki/open_windows.go diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 823a3330..1f9870aa 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History +## v4.1.0 (2022-05-22) + +- feat: add `wiki` sub-command to open httprunner website + ## v4.1.0-beta (2022-05-21) - feat: add pre-commit-hook to format go/python code diff --git a/hrp/cmd/scaffold.go b/hrp/cmd/scaffold.go index f3441b82..93a8e4b8 100644 --- a/hrp/cmd/scaffold.go +++ b/hrp/cmd/scaffold.go @@ -11,9 +11,10 @@ import ( ) var scaffoldCmd = &cobra.Command{ - Use: "startproject $project_name", - Short: "create a scaffold project", - Args: cobra.ExactValidArgs(1), + Use: "startproject $project_name", + Aliases: []string{"scaffold"}, + Short: "create a scaffold project", + Args: cobra.ExactValidArgs(1), PreRun: func(cmd *cobra.Command, args []string) { setLogLevel(logLevel) }, diff --git a/hrp/cmd/wiki.go b/hrp/cmd/wiki.go new file mode 100644 index 00000000..7774a740 --- /dev/null +++ b/hrp/cmd/wiki.go @@ -0,0 +1,23 @@ +package cmd + +import ( + "github.com/spf13/cobra" + + "github.com/httprunner/httprunner/v4/hrp/internal/wiki" +) + +var wikiCmd = &cobra.Command{ + Use: "wiki", + Aliases: []string{"info", "docs", "doc"}, + Short: "visit https://httprunner.com", + PreRun: func(cmd *cobra.Command, args []string) { + setLogLevel(logLevel) + }, + RunE: func(cmd *cobra.Command, args []string) error { + return wiki.OpenWiki() + }, +} + +func init() { + rootCmd.AddCommand(wikiCmd) +} diff --git a/hrp/internal/wiki/main.go b/hrp/internal/wiki/main.go new file mode 100644 index 00000000..0c4cdb44 --- /dev/null +++ b/hrp/internal/wiki/main.go @@ -0,0 +1,12 @@ +package wiki + +import ( + "os/exec" + + "github.com/rs/zerolog/log" +) + +func OpenWiki() error { + log.Info().Msgf("%s https://httprunner.com", openCmd) + return exec.Command(openCmd, "https://httprunner.com").Run() +} diff --git a/hrp/internal/wiki/open_darwin.go b/hrp/internal/wiki/open_darwin.go new file mode 100644 index 00000000..a8856c1f --- /dev/null +++ b/hrp/internal/wiki/open_darwin.go @@ -0,0 +1,3 @@ +package wiki + +const openCmd = "open" diff --git a/hrp/internal/wiki/open_linux.go b/hrp/internal/wiki/open_linux.go new file mode 100644 index 00000000..d20152c4 --- /dev/null +++ b/hrp/internal/wiki/open_linux.go @@ -0,0 +1,3 @@ +package wiki + +const openCmd = "xdg-open" diff --git a/hrp/internal/wiki/open_windows.go b/hrp/internal/wiki/open_windows.go new file mode 100644 index 00000000..981253da --- /dev/null +++ b/hrp/internal/wiki/open_windows.go @@ -0,0 +1,3 @@ +package wiki + +const openCmd = "explorer"