commit:     5dd2e1ccfbdf3c4b4309327a110ef43bf6b8e133
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 23 15:02:06 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Aug 23 15:02:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5dd2e1cc

sys-cluster/kube-apiserver: make gomaxprocs install optional

Bug: https://bugs.gentoo.org/912781
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 ...r-1.28.0-make-gomaxprocs-install-optional.patch | 78 ++++++++++++++++++++++
 .../kube-apiserver/kube-apiserver-1.28.0.ebuild    |  6 +-
 2 files changed, 83 insertions(+), 1 deletion(-)

diff --git 
a/sys-cluster/kube-apiserver/files/kube-apiserver-1.28.0-make-gomaxprocs-install-optional.patch
 
b/sys-cluster/kube-apiserver/files/kube-apiserver-1.28.0-make-gomaxprocs-install-optional.patch
new file mode 100644
index 000000000000..1a8935b31c9c
--- /dev/null
+++ 
b/sys-cluster/kube-apiserver/files/kube-apiserver-1.28.0-make-gomaxprocs-install-optional.patch
@@ -0,0 +1,78 @@
+From cce3f6ffa796ea416021b0d62567a3f52b979567 Mon Sep 17 00:00:00 2001
+From: Jordan Liggitt <ligg...@google.com>
+Date: Wed, 16 Aug 2023 09:33:02 -0400
+Subject: [PATCH 2/2] Make gomaxprocs install optional, limit to tests
+
+---
+ hack/lib/golang.sh               | 25 +++++++++++++++----------
+ hack/make-rules/test-e2e-node.sh |  1 +
+ hack/make-rules/test.sh          |  1 +
+ 3 files changed, 17 insertions(+), 10 deletions(-)
+
+diff --git a/hack/lib/golang.sh b/hack/lib/golang.sh
+index 66772f08a81..983ff368e25 100755
+--- a/hack/lib/golang.sh
++++ b/hack/lib/golang.sh
+@@ -556,20 +556,25 @@ kube::golang::setup_env() {
+ 
+   # This seems to matter to some tools
+   export GO15VENDOREXPERIMENT=1
++}
+ 
++kube::golang::setup_gomaxprocs() {
+   # GOMAXPROCS by default does not reflect the number of cpu(s) available
+   # when running in a container, please see 
https://github.com/golang/go/issues/33803
+-  if ! command -v ncpu >/dev/null 2>&1; then
+-    # shellcheck disable=SC2164
+-    pushd "${KUBE_ROOT}/hack/tools" >/dev/null
+-    GO111MODULE=on go install ./ncpu
+-    # shellcheck disable=SC2164
+-    popd >/dev/null
++  if [[ -z "${GOMAXPROCS:-}" ]]; then
++    if ! command -v ncpu >/dev/null 2>&1; then
++      # shellcheck disable=SC2164
++      pushd "${KUBE_ROOT}/hack/tools" >/dev/null
++      GO111MODULE=on go install ./ncpu || echo "Will not automatically set 
GOMAXPROCS"
++      # shellcheck disable=SC2164
++      popd >/dev/null
++    fi
++    if command -v ncpu >/dev/null 2>&1; then
++      GOMAXPROCS=$(ncpu)
++      export GOMAXPROCS
++      kube::log::status "Set GOMAXPROCS automatically to ${GOMAXPROCS}"
++    fi
+   fi
+-
+-  GOMAXPROCS=${GOMAXPROCS:-$(ncpu)}
+-  export GOMAXPROCS
+-  kube::log::status "Setting GOMAXPROCS: ${GOMAXPROCS}"
+ }
+ 
+ # This will take binaries from $GOPATH/bin and copy them to the appropriate
+diff --git a/hack/make-rules/test-e2e-node.sh 
b/hack/make-rules/test-e2e-node.sh
+index 43dde0c740f..49e3e04ac71 100755
+--- a/hack/make-rules/test-e2e-node.sh
++++ b/hack/make-rules/test-e2e-node.sh
+@@ -18,6 +18,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE[0]}")/../..
+ source "${KUBE_ROOT}/hack/lib/init.sh"
+ 
+ kube::golang::setup_env
++kube::golang::setup_gomaxprocs
+ 
+ # start the cache mutation detector by default so that cache mutators will be 
found
+ KUBE_CACHE_MUTATION_DETECTOR="${KUBE_CACHE_MUTATION_DETECTOR:-true}"
+diff --git a/hack/make-rules/test.sh b/hack/make-rules/test.sh
+index e9074678a8f..4aa72730d83 100755
+--- a/hack/make-rules/test.sh
++++ b/hack/make-rules/test.sh
+@@ -22,6 +22,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE[0]}")/../..
+ source "${KUBE_ROOT}/hack/lib/init.sh"
+ 
+ kube::golang::setup_env
++kube::golang::setup_gomaxprocs
+ 
+ # start the cache mutation detector by default so that cache mutators will be 
found
+ KUBE_CACHE_MUTATION_DETECTOR="${KUBE_CACHE_MUTATION_DETECTOR:-true}"
+-- 
+2.41.0
+

diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.28.0.ebuild 
b/sys-cluster/kube-apiserver/kube-apiserver-1.28.0.ebuild
index 4385ac330a7d..4e599b798a47 100644
--- a/sys-cluster/kube-apiserver/kube-apiserver-1.28.0.ebuild
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.28.0.ebuild
@@ -23,8 +23,12 @@ BDEPEND=">=dev-lang/go-1.20"
 RESTRICT+=" test"
 S="${WORKDIR}/kubernetes-${PV}"
 
+PATCHES=(
+       "${FILESDIR}"/${P}-make-gomaxprocs-install-optional.patch
+       )
+
 src_compile() {
-       CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+       CGO_LDFLAGS="$(usex hardened '-fNO-PIC ' '')" FORCE_HOST_GO="yes" \
                emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
 }
 

Reply via email to