From b193b96f76818fc431cef346c6e8c056823d451c Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Thu, 5 Apr 2018 14:25:11 -0400 Subject: [PATCH] Include arch and os --- helper/useragent/useragent.go | 10 ++++++++-- helper/useragent/useragent_test.go | 4 +++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/helper/useragent/useragent.go b/helper/useragent/useragent.go index bd433d0cb..575d77aba 100644 --- a/helper/useragent/useragent.go +++ b/helper/useragent/useragent.go @@ -14,6 +14,12 @@ var ( // rt is the runtime - variable for tests. rt = runtime.Version() + // goos is the os - variable for tests. + goos = runtime.GOOS + + // goarch is the architecture - variable for tests. + goarch = runtime.GOARCH + // versionFunc is the func that returns the current version. This is a // function to take into account the different build processes and distinguish // between enterprise and oss builds. @@ -24,6 +30,6 @@ var ( // String returns the consistent user-agent string for Packer. func String() string { - return fmt.Sprintf("Packer/%s (+%s; %s)", - versionFunc(), projectURL, rt) + return fmt.Sprintf("Packer/%s (+%s; %s; %s/%s)", + versionFunc(), projectURL, rt, goos, goarch) } diff --git a/helper/useragent/useragent_test.go b/helper/useragent/useragent_test.go index b193f77eb..b792753c6 100644 --- a/helper/useragent/useragent_test.go +++ b/helper/useragent/useragent_test.go @@ -7,11 +7,13 @@ import ( func TestUserAgent(t *testing.T) { projectURL = "https://packer-test.com" rt = "go5.0" + goos = "linux" + goarch = "amd64" versionFunc = func() string { return "1.2.3" } act := String() - exp := "Packer/1.2.3 (+https://packer-test.com; go5.0)" + exp := "Packer/1.2.3 (+https://packer-test.com; go5.0; linux/amd64)" if exp != act { t.Errorf("expected %q to be %q", act, exp) }