diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0bc75d41..f4f12fde 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,6 +21,8 @@ jobs: uses: actions/checkout@v2 - name: Release hrp cli binaries uses: wangyoucao577/go-release-action@v1.22 + env: + GA_TRACKING_ID: ${{ secrets.GA_TRACKING_ID }} with: github_token: ${{ secrets.GITHUB_TOKEN }} goos: ${{ matrix.goos }} diff --git a/.github/workflows/unittest.yml b/.github/workflows/unittest.yml index ece0b0fb..d0680739 100644 --- a/.github/workflows/unittest.yml +++ b/.github/workflows/unittest.yml @@ -28,6 +28,8 @@ jobs: - name: Checkout code uses: actions/checkout@v2 - name: Run coverage + env: + GA_TRACKING_ID: ${{ secrets.GA_TRACKING_ID }} run: go test -coverprofile="cover.out" -covermode=atomic -race ./... - name: Upload coverage to Codecov uses: codecov/codecov-action@v2 diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 7023b21f..ae6f24e7 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -3,6 +3,8 @@ ## v0.5.0 (2022-01-06) - feat: support creating and calling custom functions with [go plugin](https://pkg.go.dev/plugin) +- feat: install hrp with one shell command +- feat: report GA event for loading go plugin ## v0.4.0 (2022-01-05) diff --git a/docs/cmd/hrp.md b/docs/cmd/hrp.md index af644700..cb05f56f 100644 --- a/docs/cmd/hrp.md +++ b/docs/cmd/hrp.md @@ -32,4 +32,4 @@ Copyright 2021 debugtalk * [hrp har2case](hrp_har2case.md) - Convert HAR to json/yaml testcase files * [hrp run](hrp_run.md) - run API test -###### Auto generated by spf13/cobra on 6-Jan-2022 +###### Auto generated by spf13/cobra on 7-Jan-2022 diff --git a/docs/cmd/hrp_boom.md b/docs/cmd/hrp_boom.md index 5690fc09..f81e3723 100644 --- a/docs/cmd/hrp_boom.md +++ b/docs/cmd/hrp_boom.md @@ -38,4 +38,4 @@ hrp boom [flags] * [hrp](hrp.md) - One-stop solution for HTTP(S) testing. -###### Auto generated by spf13/cobra on 6-Jan-2022 +###### Auto generated by spf13/cobra on 7-Jan-2022 diff --git a/docs/cmd/hrp_har2case.md b/docs/cmd/hrp_har2case.md index 144caa8c..da27b051 100644 --- a/docs/cmd/hrp_har2case.md +++ b/docs/cmd/hrp_har2case.md @@ -23,4 +23,4 @@ hrp har2case harPath... [flags] * [hrp](hrp.md) - One-stop solution for HTTP(S) testing. -###### Auto generated by spf13/cobra on 6-Jan-2022 +###### Auto generated by spf13/cobra on 7-Jan-2022 diff --git a/docs/cmd/hrp_run.md b/docs/cmd/hrp_run.md index a0f5d0db..5564d2e4 100644 --- a/docs/cmd/hrp_run.md +++ b/docs/cmd/hrp_run.md @@ -31,4 +31,4 @@ hrp run path... [flags] * [hrp](hrp.md) - One-stop solution for HTTP(S) testing. -###### Auto generated by spf13/cobra on 6-Jan-2022 +###### Auto generated by spf13/cobra on 7-Jan-2022 diff --git a/hrp/cmd/root.go b/hrp/cmd/root.go index db06388e..0b60831a 100644 --- a/hrp/cmd/root.go +++ b/hrp/cmd/root.go @@ -51,7 +51,6 @@ func Execute() { RootCmd.PersistentFlags().BoolVar(&logJSON, "log-json", false, "set log to json format") if err := RootCmd.Execute(); err != nil { - log.Error().Err(err).Msg("Failed to execute root command") os.Exit(1) } } diff --git a/hrp/cmd/run.go b/hrp/cmd/run.go index 93423094..29aa2486 100644 --- a/hrp/cmd/run.go +++ b/hrp/cmd/run.go @@ -1,6 +1,8 @@ package cmd import ( + "os" + "github.com/spf13/cobra" "github.com/httprunner/hrp" @@ -18,7 +20,7 @@ var runCmd = &cobra.Command{ PreRun: func(cmd *cobra.Command, args []string) { setLogLevel(logLevel) }, - RunE: func(cmd *cobra.Command, args []string) error { + Run: func(cmd *cobra.Command, args []string) { var paths []hrp.ITestCase for _, arg := range args { paths = append(paths, &hrp.TestCasePath{Path: arg}) @@ -29,7 +31,10 @@ var runCmd = &cobra.Command{ if proxyUrl != "" { runner.SetProxyUrl(proxyUrl) } - return runner.Run(paths...) + err := runner.Run(paths...) + if err != nil { + os.Exit(1) + } }, } diff --git a/hrp/scripts/install.sh b/hrp/scripts/install.sh new file mode 100644 index 00000000..038e0493 --- /dev/null +++ b/hrp/scripts/install.sh @@ -0,0 +1,84 @@ +#!/bin/bash +# install hrp with one shell command +# curl -sL https://raw.githubusercontent.com/httprunner/hrp/main/hrp/scripts/install.sh | bash + +set -e + +function echoError() { + echo -e "\033[31m✘ $1\033[0m" # red +} +export -f echoError + +function echoInfo() { + echo -e "\033[32m✔ $1\033[0m" # green +} +export -f echoInfo + +function echoWarn() { + echo -e "\033[33m! $1\033[0m" # yellow +} +export -f echoError + +function get_latest_version() { + #