From a92078a5bd9212675c35fa2814a31a2cfc872dd2 Mon Sep 17 00:00:00 2001 From: Ivan Fernandez Calvo Date: Tue, 22 Jun 2021 18:27:01 +0200 Subject: [PATCH 1/5] fix: build elastic agent dependencies on the architecture you are running --- x-pack/elastic-agent/magefile.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/x-pack/elastic-agent/magefile.go b/x-pack/elastic-agent/magefile.go index 5d7de29af97e..7d6160524b18 100644 --- a/x-pack/elastic-agent/magefile.go +++ b/x-pack/elastic-agent/magefile.go @@ -566,6 +566,7 @@ func packageAgent(requiredPackages []string, packagingFn func()) { } // build deps only when drop is not provided + // build dependencies only if your are running on a amd64 architecture. if dropPathEnv, found := os.LookupEnv(agentDropPath); !found || len(dropPathEnv) == 0 { // prepare new drop dropPath := filepath.Join("build", "distributions", "elastic-agent-drop") @@ -579,10 +580,12 @@ func packageAgent(requiredPackages []string, packagingFn func()) { } os.Setenv(agentDropPath, dropPath) + os.Setenv("PLATFORMS", runtime.GOOS + "/" + runtime.GOARCH) // cleanup after build defer os.RemoveAll(dropPath) defer os.Unsetenv(agentDropPath) + defer os.Unsetenv("PLATFORMS") packedBeats := []string{"filebeat", "heartbeat", "metricbeat"} From 1a44523f3f5a15c1e2e00778ef3f7f539e83b350 Mon Sep 17 00:00:00 2001 From: Ivan Fernandez Calvo Date: Tue, 22 Jun 2021 18:53:02 +0200 Subject: [PATCH 2/5] fix: format --- x-pack/elastic-agent/magefile.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x-pack/elastic-agent/magefile.go b/x-pack/elastic-agent/magefile.go index 7d6160524b18..3aa43f611286 100644 --- a/x-pack/elastic-agent/magefile.go +++ b/x-pack/elastic-agent/magefile.go @@ -580,7 +580,7 @@ func packageAgent(requiredPackages []string, packagingFn func()) { } os.Setenv(agentDropPath, dropPath) - os.Setenv("PLATFORMS", runtime.GOOS + "/" + runtime.GOARCH) + os.Setenv("PLATFORMS", runtime.GOOS+"/"+runtime.GOARCH) // cleanup after build defer os.RemoveAll(dropPath) From c11592f98f4e6218acc594820d59934d396f9937 Mon Sep 17 00:00:00 2001 From: Ivan Fernandez Calvo Date: Tue, 22 Jun 2021 22:35:27 +0200 Subject: [PATCH 3/5] fix: build ARM on ARM --- x-pack/elastic-agent/magefile.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/x-pack/elastic-agent/magefile.go b/x-pack/elastic-agent/magefile.go index 3aa43f611286..aaa11bf97cd0 100644 --- a/x-pack/elastic-agent/magefile.go +++ b/x-pack/elastic-agent/magefile.go @@ -566,7 +566,6 @@ func packageAgent(requiredPackages []string, packagingFn func()) { } // build deps only when drop is not provided - // build dependencies only if your are running on a amd64 architecture. if dropPathEnv, found := os.LookupEnv(agentDropPath); !found || len(dropPathEnv) == 0 { // prepare new drop dropPath := filepath.Join("build", "distributions", "elastic-agent-drop") @@ -580,12 +579,14 @@ func packageAgent(requiredPackages []string, packagingFn func()) { } os.Setenv(agentDropPath, dropPath) - os.Setenv("PLATFORMS", runtime.GOOS+"/"+runtime.GOARCH) + if(runtime.GOARCH == "arm64"){ + os.Setenv("PLATFORMS", runtime.GOOS+"/"+runtime.GOARCH) + defer os.Unsetenv("PLATFORMS") + } // cleanup after build defer os.RemoveAll(dropPath) defer os.Unsetenv(agentDropPath) - defer os.Unsetenv("PLATFORMS") packedBeats := []string{"filebeat", "heartbeat", "metricbeat"} From cedb45e0870e00288c97ff0b14fb57251682a423 Mon Sep 17 00:00:00 2001 From: Ivan Fernandez Calvo Date: Wed, 23 Jun 2021 10:55:13 +0200 Subject: [PATCH 4/5] fix: format --- x-pack/elastic-agent/magefile.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x-pack/elastic-agent/magefile.go b/x-pack/elastic-agent/magefile.go index aaa11bf97cd0..fbed62fd2ea1 100644 --- a/x-pack/elastic-agent/magefile.go +++ b/x-pack/elastic-agent/magefile.go @@ -579,7 +579,7 @@ func packageAgent(requiredPackages []string, packagingFn func()) { } os.Setenv(agentDropPath, dropPath) - if(runtime.GOARCH == "arm64"){ + if runtime.GOARCH == "arm64" { os.Setenv("PLATFORMS", runtime.GOOS+"/"+runtime.GOARCH) defer os.Unsetenv("PLATFORMS") } From 39273d5ffc79563dbe5db95643e7483486c00707 Mon Sep 17 00:00:00 2001 From: Ivan Fernandez Calvo Date: Mon, 28 Jun 2021 12:56:45 +0200 Subject: [PATCH 5/5] chore: backup the platforms env var --- x-pack/elastic-agent/magefile.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/x-pack/elastic-agent/magefile.go b/x-pack/elastic-agent/magefile.go index fbed62fd2ea1..bacd468b44d2 100644 --- a/x-pack/elastic-agent/magefile.go +++ b/x-pack/elastic-agent/magefile.go @@ -580,8 +580,14 @@ func packageAgent(requiredPackages []string, packagingFn func()) { os.Setenv(agentDropPath, dropPath) if runtime.GOARCH == "arm64" { - os.Setenv("PLATFORMS", runtime.GOOS+"/"+runtime.GOARCH) - defer os.Unsetenv("PLATFORMS") + const platformsVar = "PLATFORMS" + oldPlatforms := os.Getenv(platformsVar) + os.Setenv(platformsVar, runtime.GOOS+"/"+runtime.GOARCH) + if oldPlatforms != "" { + defer os.Setenv(platformsVar, oldPlatforms) + } else { + defer os.Unsetenv(oldPlatforms) + } } // cleanup after build