Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 10 additions & 7 deletions cmd/scw/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ var (
GoOS = runtime.GOOS
GoArch = runtime.GOARCH
BetaMode = os.Getenv(scw.ScwEnableBeta) == "true"

userAgentPrefix = "scaleway-cli"
)

// cleanup does the recover
Expand Down Expand Up @@ -66,13 +68,14 @@ func main() {

func mainNoExit() int {
buildInfo := &core.BuildInfo{
Version: version.Must(version.NewSemver(buildVersion())), // panic when version does not respect semantic versioning
BuildDate: BuildDate,
GoVersion: GoVersion,
GitBranch: GitBranch,
GitCommit: GitCommit,
GoOS: GoOS,
GoArch: GoArch,
Version: version.Must(version.NewSemver(buildVersion())), // panic when version does not respect semantic versioning
BuildDate: BuildDate,
GoVersion: GoVersion,
GitBranch: GitBranch,
GitCommit: GitCommit,
GoOS: GoOS,
GoArch: GoArch,
UserAgentPrefix: userAgentPrefix,
}
defer cleanup(buildInfo)

Expand Down
20 changes: 10 additions & 10 deletions core/build_info.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,14 @@ import (
)

type BuildInfo struct {
Version *version.Version `json:"-"`
BuildDate string `json:"build_date"`
GoVersion string `json:"go_version"`
GitBranch string `json:"git_branch"`
GitCommit string `json:"git_commit"`
GoArch string `json:"go_arch"`
GoOS string `json:"go_os"`
Version *version.Version `json:"-"`
BuildDate string `json:"build_date"`
GoVersion string `json:"go_version"`
GitBranch string `json:"git_branch"`
GitCommit string `json:"git_commit"`
GoArch string `json:"go_arch"`
GoOS string `json:"go_os"`
UserAgentPrefix string `json:"user_agent_prefix"`
}

func (b *BuildInfo) MarshalJSON() ([]byte, error) {
Expand All @@ -36,7 +37,6 @@ const (
scwDisableCheckVersionEnv = "SCW_DISABLE_CHECK_VERSION"
latestGithubReleaseURL = "https://api.github.com/repos/scaleway/scaleway-cli/releases/latest"
latestVersionRequestTimeout = 1 * time.Second
userAgentPrefix = "scaleway-cli"
)

// IsRelease returns true when the version of the CLI is an official release:
Expand All @@ -48,9 +48,9 @@ func (b *BuildInfo) IsRelease() bool {

func (b *BuildInfo) GetUserAgent() string {
if b.Version != nil {
return userAgentPrefix + "/" + b.Version.String()
return b.UserAgentPrefix + "/" + b.Version.String()
}
return userAgentPrefix
return b.UserAgentPrefix
}

func (b *BuildInfo) Tags() map[string]string {
Expand Down
15 changes: 8 additions & 7 deletions core/testing.go
Original file line number Diff line number Diff line change
Expand Up @@ -367,13 +367,14 @@ func Test(config *TestConfig) func(t *testing.T) {
buildInfo := config.BuildInfo
if buildInfo == nil {
buildInfo = &BuildInfo{
Version: version.Must(version.NewSemver("v0.0.0+test")),
BuildDate: "unknown",
GoVersion: "runtime.Version()",
GitBranch: "unknown",
GitCommit: "unknown",
GoArch: "runtime.GOARCH",
GoOS: "runtime.GOOS",
Version: version.Must(version.NewSemver("v0.0.0+test")),
BuildDate: "unknown",
GoVersion: "runtime.Version()",
GitBranch: "unknown",
GitCommit: "unknown",
GoArch: "runtime.GOARCH",
GoOS: "runtime.GOOS",
UserAgentPrefix: "scaleway-cli",
}
}

Expand Down
4 changes: 2 additions & 2 deletions internal/namespaces/feedback/custom_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ func Test_FeedbackBug(t *testing.T) {
observed = cmd.Args[1]
}
assert.Equal(t,
"https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%3A%0A%0A%23%23+How+to+reproduce%3A%0A%0A%23%23%23+Command+attempted%0A%0A%23%23%23+Expected+Behavior%0A%0A%23%23%23+Actual+Behavior%0A%0A%23%23+More+info%0A%0A%23%23+Version%0A%0AVersion++++0.0.0%26%2343%3Btest%0ABuildDate++unknown%0AGoVersion++runtime.Version%28%29%0AGitBranch++unknown%0AGitCommit++unknown%0AGoArch+++++runtime.GOARCH%0AGoOS+++++++runtime.GOOS%0A&issueTemplate=bug_report.md&labels=bug",
"https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%3A%0A%0A%23%23+How+to+reproduce%3A%0A%0A%23%23%23+Command+attempted%0A%0A%23%23%23+Expected+Behavior%0A%0A%23%23%23+Actual+Behavior%0A%0A%23%23+More+info%0A%0A%23%23+Version%0A%0AVersion++++++++++0.0.0%26%2343%3Btest%0ABuildDate++++++++unknown%0AGoVersion++++++++runtime.Version%28%29%0AGitBranch++++++++unknown%0AGitCommit++++++++unknown%0AGoArch+++++++++++runtime.GOARCH%0AGoOS+++++++++++++runtime.GOOS%0AUserAgentPrefix++scaleway-cli%0A&issueTemplate=bug_report.md&labels=bug",
observed)

return 0, nil
Expand All @@ -50,7 +50,7 @@ func Test_FeedbackFeature(t *testing.T) {
observed = cmd.Args[1]
}
assert.Equal(t,
"https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%0A%0A%23%23+How+this+functionality+would+be+exposed%0A%0A%23%23+References%0A%0A%23%23+Version%0A%0AVersion++++0.0.0%26%2343%3Btest%0ABuildDate++unknown%0AGoVersion++runtime.Version%28%29%0AGitBranch++unknown%0AGitCommit++unknown%0AGoArch+++++runtime.GOARCH%0AGoOS+++++++runtime.GOOS%0A&issueTemplate=feature_request.md&labels=enhancement",
"https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%0A%0A%23%23+How+this+functionality+would+be+exposed%0A%0A%23%23+References%0A%0A%23%23+Version%0A%0AVersion++++++++++0.0.0%26%2343%3Btest%0ABuildDate++++++++unknown%0AGoVersion++++++++runtime.Version%28%29%0AGitBranch++++++++unknown%0AGitCommit++++++++unknown%0AGoArch+++++++++++runtime.GOARCH%0AGoOS+++++++++++++runtime.GOOS%0AUserAgentPrefix++scaleway-cli%0A&issueTemplate=feature_request.md&labels=enhancement",
observed)

return 0, nil
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
🟩🟩🟩 STDOUT️ 🟩🟩🟩️
✅ Successfully opened the page.
https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%3A%0A%0A%23%23+How+to+reproduce%3A%0A%0A%23%23%23+Command+attempted%0A%0A%23%23%23+Expected+Behavior%0A%0A%23%23%23+Actual+Behavior%0A%0A%23%23+More+info%0A%0A%23%23+Version%0A%0AVersion++++0.0.0%26%2343%3Btest%0ABuildDate++unknown%0AGoVersion++runtime.Version%28%29%0AGitBranch++unknown%0AGitCommit++unknown%0AGoArch+++++runtime.GOARCH%0AGoOS+++++++runtime.GOOS%0A&issueTemplate=bug_report.md&labels=bug
https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%3A%0A%0A%23%23+How+to+reproduce%3A%0A%0A%23%23%23+Command+attempted%0A%0A%23%23%23+Expected+Behavior%0A%0A%23%23%23+Actual+Behavior%0A%0A%23%23+More+info%0A%0A%23%23+Version%0A%0AVersion++++++++++0.0.0%26%2343%3Btest%0ABuildDate++++++++unknown%0AGoVersion++++++++runtime.Version%28%29%0AGitBranch++++++++unknown%0AGitCommit++++++++unknown%0AGoArch+++++++++++runtime.GOARCH%0AGoOS+++++++++++++runtime.GOOS%0AUserAgentPrefix++scaleway-cli%0A&issueTemplate=bug_report.md&labels=bug
🟩🟩🟩 JSON STDOUT 🟩🟩🟩
{
"message": "Successfully opened the page",
"details": "https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%3A%0A%0A%23%23+How+to+reproduce%3A%0A%0A%23%23%23+Command+attempted%0A%0A%23%23%23+Expected+Behavior%0A%0A%23%23%23+Actual+Behavior%0A%0A%23%23+More+info%0A%0A%23%23+Version%0A%0AVersion++++0.0.0%26%2343%3Btest%0ABuildDate++unknown%0AGoVersion++runtime.Version%28%29%0AGitBranch++unknown%0AGitCommit++unknown%0AGoArch+++++runtime.GOARCH%0AGoOS+++++++runtime.GOOS%0A\u0026issueTemplate=bug_report.md\u0026labels=bug"
"details": "https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%3A%0A%0A%23%23+How+to+reproduce%3A%0A%0A%23%23%23+Command+attempted%0A%0A%23%23%23+Expected+Behavior%0A%0A%23%23%23+Actual+Behavior%0A%0A%23%23+More+info%0A%0A%23%23+Version%0A%0AVersion++++++++++0.0.0%26%2343%3Btest%0ABuildDate++++++++unknown%0AGoVersion++++++++runtime.Version%28%29%0AGitBranch++++++++unknown%0AGitCommit++++++++unknown%0AGoArch+++++++++++runtime.GOARCH%0AGoOS+++++++++++++runtime.GOOS%0AUserAgentPrefix++scaleway-cli%0A\u0026issueTemplate=bug_report.md\u0026labels=bug"
}
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
🟩🟩🟩 STDOUT️ 🟩🟩🟩️
✅ Successfully opened the page.
https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%0A%0A%23%23+How+this+functionality+would+be+exposed%0A%0A%23%23+References%0A%0A%23%23+Version%0A%0AVersion++++0.0.0%26%2343%3Btest%0ABuildDate++unknown%0AGoVersion++runtime.Version%28%29%0AGitBranch++unknown%0AGitCommit++unknown%0AGoArch+++++runtime.GOARCH%0AGoOS+++++++runtime.GOOS%0A&issueTemplate=feature_request.md&labels=enhancement
https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%0A%0A%23%23+How+this+functionality+would+be+exposed%0A%0A%23%23+References%0A%0A%23%23+Version%0A%0AVersion++++++++++0.0.0%26%2343%3Btest%0ABuildDate++++++++unknown%0AGoVersion++++++++runtime.Version%28%29%0AGitBranch++++++++unknown%0AGitCommit++++++++unknown%0AGoArch+++++++++++runtime.GOARCH%0AGoOS+++++++++++++runtime.GOOS%0AUserAgentPrefix++scaleway-cli%0A&issueTemplate=feature_request.md&labels=enhancement
🟩🟩🟩 JSON STDOUT 🟩🟩🟩
{
"message": "Successfully opened the page",
"details": "https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%0A%0A%23%23+How+this+functionality+would+be+exposed%0A%0A%23%23+References%0A%0A%23%23+Version%0A%0AVersion++++0.0.0%26%2343%3Btest%0ABuildDate++unknown%0AGoVersion++runtime.Version%28%29%0AGitBranch++unknown%0AGitCommit++unknown%0AGoArch+++++runtime.GOARCH%0AGoOS+++++++runtime.GOOS%0A\u0026issueTemplate=feature_request.md\u0026labels=enhancement"
"details": "https://github.com/scaleway/scaleway-cli/issues/new?body=%0A%23%23+Description%0A%0A%23%23+How+this+functionality+would+be+exposed%0A%0A%23%23+References%0A%0A%23%23+Version%0A%0AVersion++++++++++0.0.0%26%2343%3Btest%0ABuildDate++++++++unknown%0AGoVersion++++++++runtime.Version%28%29%0AGitBranch++++++++unknown%0AGitCommit++++++++unknown%0AGoArch+++++++++++runtime.GOARCH%0AGoOS+++++++++++++runtime.GOOS%0AUserAgentPrefix++scaleway-cli%0A\u0026issueTemplate=feature_request.md\u0026labels=enhancement"
}
16 changes: 9 additions & 7 deletions internal/namespaces/info/testdata/test-info-show-secret.golden
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
🟩🟩🟩 STDOUT️ 🟩🟩🟩️
Build Info:
Version 0.0.0+test
BuildDate unknown
GoVersion runtime.Version()
GitBranch unknown
GitCommit unknown
GoArch runtime.GOARCH
GoOS runtime.GOOS
Version 0.0.0+test
BuildDate unknown
GoVersion runtime.Version()
GitBranch unknown
GitCommit unknown
GoArch runtime.GOARCH
GoOS runtime.GOOS
UserAgentPrefix scaleway-cli

Settings:
KEY VALUE ORIGIN
Expand All @@ -28,6 +29,7 @@ secret_key 22222222-2222-2222-2222-222222222222 env (SCW_SECRET_K
"git_commit": "unknown",
"go_arch": "runtime.GOARCH",
"go_os": "runtime.GOOS",
"user_agent_prefix": "scaleway-cli",
"version": "0.0.0+test"
},
"settings": [
Expand Down
16 changes: 9 additions & 7 deletions internal/namespaces/info/testdata/test-info-simple.golden
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
🟩🟩🟩 STDOUT️ 🟩🟩🟩️
Build Info:
Version 0.0.0+test
BuildDate unknown
GoVersion runtime.Version()
GitBranch unknown
GitCommit unknown
GoArch runtime.GOARCH
GoOS runtime.GOOS
Version 0.0.0+test
BuildDate unknown
GoVersion runtime.Version()
GitBranch unknown
GitCommit unknown
GoArch runtime.GOARCH
GoOS runtime.GOOS
UserAgentPrefix scaleway-cli

Settings:
KEY VALUE ORIGIN
Expand All @@ -28,6 +29,7 @@ secret_key 22222222-xxxx-xxxx-xxxx-xxxxxxxxxxxx env (SCW_SECRET_K
"git_commit": "unknown",
"go_arch": "runtime.GOARCH",
"go_os": "runtime.GOOS",
"user_agent_prefix": "scaleway-cli",
"version": "0.0.0+test"
},
"settings": [
Expand Down