operator-framework / operator-sdk

SDK for building Kubernetes applications. Provides high level APIs, useful abstractions, and project scaffolding.
https://sdk.operatorframework.io
Apache License 2.0
7.21k stars 1.74k forks source link

etcd dependency has no darwin/arm64 binary #5654

Closed huiyichanmian closed 1 year ago

huiyichanmian commented 2 years ago

When I use the operator-sdk in the reference document and execute make docker build, the following error occurs:

My working environment:

go version go1.17.8 darwin/arm64

operator-sdk version: "v1.19.0", commit: "728682c347f6335ee2a610e08790a5e1411508f4", kubernetes version: "1.23", go version: "go1.17.8", GOOS: "darwin", GOARCH: "arm64"


➜  memcached-operator make docker-build docker-push IMG="example.com/memcached-operator:v0.0.1"

/Users/Christian/Documents/code/negan/memcached-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases
/Users/Christian/Documents/code/negan/memcached-operator/bin/controller-gen object:headerFile="hack/boilerplate.go.txt" paths="./..."
go fmt ./...
go vet ./...
go: creating new go.mod: module tmp
Downloading sigs.k8s.io/controller-runtime/tools/setup-envtest@latest
go: downloading sigs.k8s.io/controller-runtime v0.11.2
go: downloading sigs.k8s.io/controller-runtime/tools/setup-envtest v0.0.0-20220407132358-188b48630db2
go: downloading github.com/spf13/afero v1.6.0
go: downloading golang.org/x/text v0.3.6
go get: installing executables with 'go get' in module mode is deprecated.
    To adjust and download dependencies of the current module, use 'go get -d'.
    To install using requirements of the current module, use 'go install'.
    To install ignoring the current module, use 'go install' with a version,
    like 'go install example.com/cmd@latest'.
    For more information, see https://golang.org/doc/go-get-install-deprecation
    or run 'go help get' or 'go help install'.
go get: added github.com/go-logr/logr v1.2.0
go get: added github.com/go-logr/zapr v1.2.0
go get: added github.com/spf13/afero v1.6.0
go get: added github.com/spf13/pflag v1.0.5
go get: added go.uber.org/atomic v1.7.0
go get: added go.uber.org/multierr v1.6.0
go get: added go.uber.org/zap v1.19.1
go get: added golang.org/x/text v0.3.6
go get: added sigs.k8s.io/controller-runtime/tools/setup-envtest v0.0.0-20220407132358-188b48630db2
unable to find a version that was supported for platform darwin/arm64
KUBEBUILDER_ASSETS="" go test ./... -coverprofile cover.out
?       github.com/example/memcached-operator   [no test files]
?       github.com/example/memcached-operator/api/v1alpha1  [no test files]
Running Suite: Controller Suite
===============================
Random Seed: 1649835915
Will run 0 of 0 specs

STEP: bootstrapping test environment
1.64983591596008e+09    DEBUG   controller-runtime.test-env starting control plane
1.649835915963889e+09   ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 0, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.649835915964452e+09   ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 1, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.6498359159647639e+09  ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 2, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.649835915965055e+09   ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 3, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.649835915965365e+09   ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 4, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
Failure [0.006 seconds]
[BeforeSuite] BeforeSuite
/Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:52

  Unexpected error:
      <*fmt.wrapError | 0x140005a6640>: {
          msg: "unable to start control plane itself: failed to start the controlplane. retried 5 times: exec: \"etcd\": executable file not found in $PATH",
          err: <*fmt.wrapError | 0x140005a6620>{
              msg: "failed to start the controlplane. retried 5 times: exec: \"etcd\": executable file not found in $PATH",
              err: <*exec.Error | 0x140005a65e0>{
                  Name: "etcd",
                  Err: <*errors.errorString | 0x1400038d250>{
                      s: "executable file not found in $PATH",
                  },
              },
          },
      }
      unable to start control plane itself: failed to start the controlplane. retried 5 times: exec: "etcd": executable file not found in $PATH
  occurred

  /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:62
------------------------------
STEP: tearing down the test environment
Panic [0.000 seconds]
[AfterSuite] AfterSuite
/Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:76

  Test Panicked
  runtime error: invalid memory address or nil pointer dereference
  /usr/local/go/src/runtime/panic.go:221

  Full Stack Trace
  sigs.k8s.io/controller-runtime/pkg/internal/testing/controlplane.(*APIServer).Stop(0x140000fe2a0)
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/testing/controlplane/apiserver.go:425 +0x98
  sigs.k8s.io/controller-runtime/pkg/internal/testing/controlplane.(*ControlPlane).Stop(0x140000e7180)
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/testing/controlplane/plane.go:87 +0x40
  sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Stop(0x140000e7180)
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:194 +0xfc
  github.com/example/memcached-operator/controllers.glob..func2()
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:78 +0x50
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync(0x14000622cc0)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113 +0x9c
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).run(0x14000622cc0)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64 +0xe8
  github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run(0x140000e3180, 0x1, 0x1, {0x0, 0x0})
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25 +0x64
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runAfterSuite(0x140000e1760)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:138 +0x90
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run(0x140000e1760)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:71 +0xc8
  github.com/onsi/ginkgo/internal/suite.(*Suite).Run(0x140002693b0, {0x10e1b2538, 0x14000682820}, {0x105976d88, 0x10}, {0x1400012bf00, 0x2, 0x2}, {0x105e226f8, 0x14000473c00}, ...)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79 +0x3e0
  github.com/onsi/ginkgo.runSpecsWithCustomReporters({0x105de3080, 0x14000682820}, {0x105976d88, 0x10}, {0x1400012bee0, 0x2, 0x2})
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245 +0x13c
  github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters({0x105de3080, 0x14000682820}, {0x105976d88, 0x10}, {0x140001abf58, 0x1, 0x1})
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228 +0x180
  github.com/example/memcached-operator/controllers.TestAPIs(0x14000682820)
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47 +0xe4
  testing.tRunner(0x14000682820, 0x105dd6fb8)
    /usr/local/go/src/testing/testing.go:1259 +0xfc
  created by testing.(*T).Run
    /usr/local/go/src/testing/testing.go:1306 +0x328
------------------------------

Ran 0 of 0 Specs in 0.006 seconds
FAIL! -- 0 Passed | 0 Failed | 0 Pending | 0 Skipped

You're using deprecated Ginkgo functionality:
=============================================
Ginkgo 2.0 is under active development and will introduce several new features, improvements, and a small handful of breaking changes.
A release candidate for 2.0 is now available and 2.0 should GA in Fall 2021.  Please give the RC a try and send us feedback!
  - To learn more, view the migration guide at https://github.com/onsi/ginkgo/blob/ver2/docs/MIGRATING_TO_V2.md
  - For instructions on using the Release Candidate visit https://github.com/onsi/ginkgo/blob/ver2/docs/MIGRATING_TO_V2.md#using-the-beta
  - To comment, chime in at https://github.com/onsi/ginkgo/issues/711

  You are using a custom reporter.  Support for custom reporters will likely be removed in V2.  Most users were using them to generate junit or teamcity reports and this functionality will be merged into the core reporter.  In addition, Ginkgo 2.0 will support emitting a JSON-formatted report that users can then manipulate to generate custom reports.

  If this change will be impactful to you please leave a comment on https://github.com/onsi/ginkgo/issues/711
  Learn more at: https://github.com/onsi/ginkgo/blob/ver2/docs/MIGRATING_TO_V2.md#removed-custom-reporters

To silence deprecations that can be silenced set the following environment variable:
  ACK_GINKGO_DEPRECATIONS=1.16.5

--- FAIL: TestAPIs (0.01s)
FAIL
coverage: 0.0% of statements
FAIL    github.com/example/memcached-operator/controllers   0.501s
FAIL
make: *** [test] Error 1
➜  memcached-operator make docker-build docker-push IMG="example.com/memcached-operator:v0.0.1"

/Users/Christian/Documents/code/negan/memcached-operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases

/Users/Christian/Documents/code/negan/memcached-operator/bin/controller-gen object:headerFile="hack/boilerplate.go.txt" paths="./..."
go fmt ./...
go vet ./...
unable to find a version that was supported for platform darwin/arm64
KUBEBUILDER_ASSETS="" go test ./... -coverprofile cover.out
?       github.com/example/memcached-operator   [no test files]
?       github.com/example/memcached-operator/api/v1alpha1  [no test files]
Running Suite: Controller Suite
===============================
Random Seed: 1649836357
Will run 0 of 0 specs

STEP: bootstrapping test environment
1.64983635768282e+09    DEBUG   controller-runtime.test-env starting control plane
1.6498363576859012e+09  ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 0, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.649836357686551e+09   ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 1, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.6498363576870332e+09  ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 2, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.6498363576874728e+09  ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 3, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
1.649836357687847e+09   ERROR   controller-runtime.test-env unable to start the controlplane    {"tries": 4, "error": "exec: \"etcd\": executable file not found in $PATH"}
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).startControlPlane
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:330
sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Start
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:260
github.com/example/memcached-operator/controllers.glob..func1
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:61
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64
github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runBeforeSuite
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:123
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:63
github.com/onsi/ginkgo/internal/suite.(*Suite).Run
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79
github.com/onsi/ginkgo.runSpecsWithCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245
github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228
github.com/example/memcached-operator/controllers.TestAPIs
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47
testing.tRunner
    /usr/local/go/src/testing/testing.go:1259
Failure [0.005 seconds]
[BeforeSuite] BeforeSuite
/Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:52

  Unexpected error:
      <*fmt.wrapError | 0x140003ec6e0>: {
          msg: "unable to start control plane itself: failed to start the controlplane. retried 5 times: exec: \"etcd\": executable file not found in $PATH",
          err: <*fmt.wrapError | 0x140003ec6c0>{
              msg: "failed to start the controlplane. retried 5 times: exec: \"etcd\": executable file not found in $PATH",
              err: <*exec.Error | 0x140003ec680>{
                  Name: "etcd",
                  Err: <*errors.errorString | 0x1400038f250>{
                      s: "executable file not found in $PATH",
                  },
              },
          },
      }
      unable to start control plane itself: failed to start the controlplane. retried 5 times: exec: "etcd": executable file not found in $PATH
  occurred

  /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:62
------------------------------
STEP: tearing down the test environment
Panic [0.000 seconds]
[AfterSuite] AfterSuite
/Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:76

  Test Panicked
  runtime error: invalid memory address or nil pointer dereference
  /usr/local/go/src/runtime/panic.go:221

  Full Stack Trace
  sigs.k8s.io/controller-runtime/pkg/internal/testing/controlplane.(*APIServer).Stop(0x140005a6000)
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/testing/controlplane/apiserver.go:425 +0x98
  sigs.k8s.io/controller-runtime/pkg/internal/testing/controlplane.(*ControlPlane).Stop(0x1400024aa00)
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/testing/controlplane/plane.go:87 +0x40
  sigs.k8s.io/controller-runtime/pkg/envtest.(*Environment).Stop(0x1400024aa00)
    /Users/Christian/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.11.0/pkg/envtest/server.go:194 +0xfc
  github.com/example/memcached-operator/controllers.glob..func2()
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:78 +0x50
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync(0x14000526ba0)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:113 +0x9c
  github.com/onsi/ginkgo/internal/leafnodes.(*runner).run(0x14000526ba0)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/runner.go:64 +0xe8
  github.com/onsi/ginkgo/internal/leafnodes.(*simpleSuiteNode).Run(0x140000e3180, 0x1, 0x1, {0x0, 0x0})
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/leafnodes/suite_nodes.go:25 +0x64
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runAfterSuite(0x140000e1080)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:138 +0x90
  github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run(0x140000e1080)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/specrunner/spec_runner.go:71 +0xc8
  github.com/onsi/ginkgo/internal/suite.(*Suite).Run(0x1400026fe30, {0x129676278, 0x14000192d00}, {0x100fead88, 0x10}, {0x140000921a0, 0x2, 0x2}, {0x1014966f8, 0x140003a6040}, ...)
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/internal/suite/suite.go:79 +0x3e0
  github.com/onsi/ginkgo.runSpecsWithCustomReporters({0x101457080, 0x14000192d00}, {0x100fead88, 0x10}, {0x14000092180, 0x2, 0x2})
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:245 +0x13c
  github.com/onsi/ginkgo.RunSpecsWithDefaultAndCustomReporters({0x101457080, 0x14000192d00}, {0x100fead88, 0x10}, {0x140001ab758, 0x1, 0x1})
    /Users/Christian/go/pkg/mod/github.com/onsi/ginkgo@v1.16.5/ginkgo_dsl.go:228 +0x180
  github.com/example/memcached-operator/controllers.TestAPIs(0x14000192d00)
    /Users/Christian/Documents/code/negan/memcached-operator/controllers/suite_test.go:47 +0xe4
  testing.tRunner(0x14000192d00, 0x10144afb8)
    /usr/local/go/src/testing/testing.go:1259 +0xfc
  created by testing.(*T).Run
    /usr/local/go/src/testing/testing.go:1306 +0x328
------------------------------

Ran 0 of 0 Specs in 0.006 seconds
FAIL! -- 0 Passed | 0 Failed | 0 Pending | 0 Skipped

You're using deprecated Ginkgo functionality:
=============================================
Ginkgo 2.0 is under active development and will introduce several new features, improvements, and a small handful of breaking changes.
A release candidate for 2.0 is now available and 2.0 should GA in Fall 2021.  Please give the RC a try and send us feedback!
  - To learn more, view the migration guide at https://github.com/onsi/ginkgo/blob/ver2/docs/MIGRATING_TO_V2.md
  - For instructions on using the Release Candidate visit https://github.com/onsi/ginkgo/blob/ver2/docs/MIGRATING_TO_V2.md#using-the-beta
  - To comment, chime in at https://github.com/onsi/ginkgo/issues/711

  You are using a custom reporter.  Support for custom reporters will likely be removed in V2.  Most users were using them to generate junit or teamcity reports and this functionality will be merged into the core reporter.  In addition, Ginkgo 2.0 will support emitting a JSON-formatted report that users can then manipulate to generate custom reports.

  If this change will be impactful to you please leave a comment on https://github.com/onsi/ginkgo/issues/711
  Learn more at: https://github.com/onsi/ginkgo/blob/ver2/docs/MIGRATING_TO_V2.md#removed-custom-reporters

To silence deprecations that can be silenced set the following environment variable:
  ACK_GINKGO_DEPRECATIONS=1.16.5

--- FAIL: TestAPIs (0.01s)
FAIL
coverage: 0.0% of statements
FAIL    github.com/example/memcached-operator/controllers   0.690s
FAIL
make: *** [test] Error 1
varshaprasad96 commented 2 years ago

Related upstream issue: https://github.com/kubernetes-sigs/controller-runtime/issues/1809 @camilamacedo86 are you still working on this upstream?

varshaprasad96 commented 2 years ago

@camilamacedo86 Hey Camila, any updates on this? The issue has been open for quite a while, it would be helpful to know the status of KB/C-R release with updated envtest binaries

camilamacedo86 commented 2 years ago

@varshaprasad96 did we check if we have the code to build the artefacts in this arch? If yes, we can see how we can trigger the build. If not we need to raise the issue in the respective repo/place.

tdaleibm commented 2 years ago

I'm seeing the same etcd dependency issue with s390x architecture, should I create a separate bug for tracking?

ryantking commented 2 years ago

Hi @tdaleibm, from researching this issue, it looks like the path of least resistance is going to be adding --arch=amd64 to your setup-envtest call in the Makefile to download the Intel binaries, which Darwin arm64 machines can run.

Beyond that, the most recent Kubebuilder releases and onward now have a prebuilt binary for Darwin, but this looks like its related to a downstream dependency in etcd, which still does not have Darwin arm64 releases as of nine days ago. I will do some more digging and see what's involved in getting full native Darwin arm64 support.

One other thing you can look at is sideloading a native Darwin arm64 binary if you can download and build etcd yourself.

tdaleibm commented 2 years ago

Thanks, looks like my issue is just for s390x, since kubebuilder is still not available for this arch https://github.com/kubernetes-sigs/kubebuilder/issues/2298.

camilamacedo86 commented 2 years ago

@huiyichanmian,

The darwin/arm64 is still not supported by kubebuilder-tools. See that we open a issue for that: https://github.com/kubernetes-sigs/kubebuilder/issues/2664.

c/c @varshaprasad96 @ryantking @rashmigottipati

huiyichanmian commented 2 years ago

@camilamacedo86
So it looks like I'll have to build on a linux system.

camilamacedo86 commented 2 years ago

We are very close to beginning to provide it from Kubebuilder and then be able to add it to SDK as well, See: https://github.com/kubernetes-sigs/kubebuilder/issues/2664#issuecomment-1149956592

We hope to achieve the goal for the next KB release and begin to provide the kubebuilder tools for darwin/arm64 from k8s 1.24

c/c @rashmigottipati @varshaprasad96 @everettraven @ryantking

openshift-bot commented 2 years ago

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale. Stale issues rot after an additional 30d of inactivity and eventually close. Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

openshift-bot commented 2 years ago

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten. Rotten issues close after an additional 30d of inactivity. Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten /remove-lifecycle stale

openshift-bot commented 1 year ago

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen. Mark the issue as fresh by commenting /remove-lifecycle rotten. Exclude this issue from closing again by commenting /lifecycle frozen.

/close

openshift-ci[bot] commented 1 year ago

@openshift-bot: Closing this issue.

In response to [this](https://github.com/operator-framework/operator-sdk/issues/5654#issuecomment-1304932901): >Rotten issues close after 30d of inactivity. > >Reopen the issue by commenting `/reopen`. >Mark the issue as fresh by commenting `/remove-lifecycle rotten`. >Exclude this issue from closing again by commenting `/lifecycle frozen`. > >/close Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.