Commit Graph

874 Commits

Author SHA1 Message Date
Jordan Liggitt
f97bc825d5 Update min golang version to 1.18.1 2022-04-14 09:53:20 -04:00
Stephen Augustus
3f85937b11
etcd: Update to v3.5.3
Signed-off-by: Stephen Augustus <foo@auggie.dev>
2022-04-13 19:04:00 -04:00
James Laverack
7d57d5c70d Revert "Introduce APIs to support multiple ClusterCIDRs (#108290)"
This reverts commit b9792a9dae.
2022-04-13 13:58:19 +01:00
Sarvesh Rangnekar
b9792a9dae
Introduce APIs to support multiple ClusterCIDRs (#108290)
* Introduce networking/v1alpha1 api, ClusterCIDRConfig type

Introduce networking/v1alpha1 api group.

Add `ClusterCIDRConfig` type to networking/v1alpha1 api group, this type
will enable the NodeIPAM controller to support multiple ClusterCIDRs.

* Change ClusterCIDRConfig.NodeSelector type in api

* Fix review comments for API

* Update ClusterCIDRConfig API Spec

Introduce PerNodeHostBits field, remove PerNodeMaskSize
2022-03-30 19:39:00 -07:00
Davanum Srinivas
b1fa9e2deb
Turn down log level for etcd
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-03-27 15:21:28 -04:00
Katrina Verey
af059a0731
Colorize string test helper results 2022-03-24 13:31:57 -04:00
Kir Kolyshkin
d8fdb00b34 Fix verify: generated-stable-metrics wrt go 1.18
This should fix the following error when running
./hack/update-generated-stable-metrics.sh:

	'go get' is no longer supported outside a module.
	To build and install a command, 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'.

Using `go get` to download gopkg.in/yaml.v2 package into
KUBE_EXTRA_GOPATH directory no longer works. Interestingly, main repo
already has gopkg.in/yaml.v2@v2.4.0, same version that was installed by
that go get.

I guess that GOPATH with multiple elements no longer works either,
and since this code was the only user of KUBE_EXTRA_GOPATH, let's remove
it as well.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2022-03-23 10:19:59 -07:00
Davanum Srinivas
d8f1da5ecb
golang: Update to 1.18 from 1.18rc1
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-03-22 09:47:35 -04:00
Tim Hockin
bf27cad256 Build flags: use all= syntax
This has somewhat subtle implications.  For a concrete example, this
changes the `-trimpath` behavior from only affecting the named pkg to
affecting all pkgs, which broke ginkgo, which seems to try to strip its
own `pwd` prefix.  But since that runs in run-in-gopath, and not in
KUBE_ROOT, it fails to strip anything.

e.g.

before this, strings in the binary would be like
    /home/user/kube/_output/local/go/src/k8s.io/kubernetes/vendor/github.com/onsi/ginkgo/...
Ginkgo would find its own root as
    /home/user/kube/_output/local/go/src/k8s.io/kubernetes/
so it would produce
    vendor/github.com/onsi/ginkgo/...
in logs.

after this, strings in the binary strip the KUBE_ROOT and be like:
    _output/local/go/src/k8s.io/kubernetes/vendor/github.com/onsi/ginkgo/...
Ginkgo would find its own root as
    /home/user/kube/_output/local/go/src/k8s.io/kubernetes/
so it would not strip anything, and produce
    _output/local/go/src/k8s.io/kubernetes/vendor/github.com/onsi/ginkgo/...
in logs.
2022-03-01 08:48:31 -08:00
Tim Hockin
ed5e549cde Makefile: Add a DBG flag to build debug binaries
Now `make DBG=1` will produce binaries with no optimizaions and no
inlining, but with symbols and DWARF information.
2022-03-01 08:47:34 -08:00
Tim Hockin
4a0c6c2444 Slightly nicer output when building
before:

```
$ make generated_files
+++ [0226 13:42:17] Building go targets for linux/amd64:
    hack/make-rules/helpers/go2make
> non-static build: k8s.io/kubernetes/hack/make-rules/helpers/go2make
```

after:

```
$ make generated_files
+++ [0226 14:30:08] Building go targets for linux/amd64
    k8s.io/kubernetes/hack/make-rules/helpers/go2make (non-static)
```
2022-02-27 10:29:59 -08:00
Kubernetes Prow Robot
21c0f6f6ff
Merge pull request #107677 from pohly/scheduler-integration-benchmark
scheduler integration benchmark improvements
2022-02-14 01:23:28 -08:00
Patrick Ohly
535d885c29 test: fix info message for etcd startup
The output redirection in the info message did not match the actual
invocation (stdout and stderr swapped).
2022-02-07 08:59:19 +01:00
Patrick Ohly
259a8ad0b7 test: allow controlling etcd log level
When running an integration test that measures performance, like for example
test/integration/scheduler_perf, running etcd with debug level output is
undesirable because it creates additional load on the system and isn't
realistic.

The default is still "debug", but ETCD_LOGLEVEL=warn can be used to override
that.
2022-02-07 08:59:19 +01:00
Kubernetes Prow Robot
6dd234d85c
Merge pull request #107386 from ZeusPerez/fix-kubetest-errors-when-executing-local-provider
Fix kubetest errors when executing local provider
2022-01-31 19:56:17 -08:00
ZeusPerez
ddec2a9125 Apply changes requested in the pull-kubernetes-verify failed check 2022-01-20 17:25:52 +01:00
Patrick Ohly
798bdab3d0 kubectl: add integration test for result reporting
This currently covers two cases:
- "kubectl list" (the regression from https://github.com/kubernetes/kubernetes/issues/107012)
- "kubectl get pods/no-such-pod" (no particular reason except that the output
should be deterministic)

In contrast to some other tests that check for strings inside the
output (run_deprecated_api_tests) or compare after
sorting (run_kubectl_version_tests), stdout, stderr and the return code must
match exactly.

This ensures that there is no extra, unexpected output and that the right
output stream is used.
2022-01-11 09:04:56 +01:00
ZeusPerez
5d52b4ef9a Add PATH when looking for executable locations 2022-01-06 19:03:47 +01:00
Kubernetes Prow Robot
1c127d3682
Merge pull request #105706 from uthark/oatamanenko/upgrade-etcd-3.5.1
Upgrade etcd to 3.5.1
2021-11-15 10:04:59 -08:00
Kubernetes Prow Robot
da73a24f6a
Merge pull request #106123 from pohly/log-go-runner-windows
package log runner as part of Kubernetes releases
2021-11-15 09:04:48 -08:00
Kubernetes Prow Robot
0abc054933
Merge pull request #106190 from MikeSpreitzer/integration-scrape-etcd
Add periodic etcd scraping to integration tests
2021-11-09 15:30:38 -08:00
Kubernetes Prow Robot
8e02b78873
Merge pull request #102534 from wangyysde/create-hpav2stable
Create HPA v2 Stable API
2021-11-09 10:27:48 -08:00
Kubernetes Prow Robot
3ae56ab320
Merge pull request #106174 from markusthoemmes/buildx-check
Make the docker buildx check call --help
2021-11-09 04:31:46 -08:00
wangyysde
d2abddd909 rename v2beta2 to v2
Signed-off-by: wangyysde <net_use@bzhy.com>

Generation swagger.json.

Use v2 path for hpa_cpu_field.

run update-codegen.sh

Signed-off-by: wangyysde <net_use@bzhy.com>
2021-11-09 10:34:54 +08:00
Mike Spreitzer
4ca4ccdcc2 Add serving of scrapes as Prometheus metrics 2021-11-08 15:28:05 -05:00
Mike Spreitzer
dc07025470 Add periodic etcd scraping to integration tests
.. to help understand where and why things go bad.
2021-11-05 21:32:58 -04:00
Markus Thömmes
671cd6c606 Make the docker buildx check call --help 2021-11-05 09:49:07 +01:00
Patrick Ohly
c3cd9a3902 kubemark: static binary, replace deprecated --log-file parameter
The --log-file parameter will be deprecated as of Kubernetes 1.23 and should be
avoided. The replacement for distroless images is the image with go-runner, a
tool that handles output redirection.

For kubemark to run in that image it must be built as static binary.
2021-11-04 20:52:56 +01:00
Patrick Ohly
d2a8a81639 Package kube-log-runner as part of Kubernetes releases
kube-log-runner was formerly known as go-runner when it was originally introduced
in 393e0952e9
It was moved to kubernetes/release/images/build/go-runner later but is now
needed again in Kubernetes itself as replacement for the deprecated --log-file
klog feature: when bringing up a Windows node, kube-proxy.exe and kubelet.exe must be wrapped
with the helper binary to redirect output.

It got renamed to avoid a naming conflict with
test/conformance/image/go-runner and because the name was too vague.

Other downstream Kubernetes users may have a similar need, therefore it makes
sense to provide a prebuilt binary also in the release archives.
2021-11-04 10:00:26 +01:00
Oleg Atamanenko
965f10f539 Upgrade etcd to 3.5.1 2021-10-18 23:09:27 -07:00
Kubernetes Prow Robot
a7c67c03ff
Merge pull request #105399 from mopsfelder/ppc64le
Allow fast builds on ppc64le
2021-10-11 22:21:46 -07:00
Kubernetes Prow Robot
f31453fe5b
Merge pull request #104894 from pacoxu/windows-arm
add windows arm support on client-side since go 1.17 supports
2021-10-04 04:19:07 -07:00
Murilo Opsfelder Araujo
1589605a7c Allow fast builds on ppc64le
On a ppc64le host, fast build was failing:

    # make KUBE_FASTBUILD=true quick-release
    +++ [0908 15:56:36] Verifying Prerequisites....
    +++ [0908 15:56:36] Building Docker image kube-build:build-fd009aaa81-5-v1.23.0-go1.17-buster.0
    +++ [0908 15:56:44] Syncing sources to container
    +++ [0908 15:56:48] Running build command...
    +++ [0908 15:56:56] Building go targets for linux/ppc64le:
        ./vendor/k8s.io/code-generator/cmd/prerelease-lifecycle-gen
    > non-static build: k8s.io/kubernetes/./vendor/k8s.io/code-generator/cmd/prerelease-lifecycle-gen
    touch: cannot touch '_output/bin/prerelease-lifecycle-gen': No such file or directory
    make[2]: *** [Makefile.generated_files:209: _output/bin/prerelease-lifecycle-gen] Error 1
    make[1]: *** [Makefile:552: generated_files] Error 2
    make: *** [Makefile:512: cross] Error 1
    !!! [0908 15:56:58] Call tree:
    !!! [0908 15:56:58]  1: build/../build/common.sh:476 kube::build::run_build_command_ex(...)
    !!! [0908 15:56:58]  2: build/release.sh:36 kube::build::run_build_command(...)
    make: *** [Makefile:454: quick-release] Error 1

This error happened because the _output/bin/ directory didn't exist at
the moment the file _output/bin/prerelease-lifecycle-gen was touched, so
the path didn't exist.

The _output/bin symlink was not created by kube::golang::place_bins()
because kube::golang::setup_platforms() assumed
KUBE_CLIENT_PLATFORMS=linux/amd64 despite being on a ppc64le host.

Fix build error by not assuming host_arch=amd64 when on ppc64le in
kube::golang::setup_platforms().

Signed-off-by: Murilo Opsfelder Araujo <muriloo@linux.ibm.com>
2021-10-01 09:31:10 -03:00
Elana Hashman
132fa1cbf3
Revert "Build non-static binaries with PIE buildmode" 2021-09-29 11:36:20 -07:00
Paco Xu
9a2a4f1051 add windows arm support on client-side since go 1.17 supports 2021-09-10 15:42:45 +08:00
Abu Kashem
e2b8701545
apf: ebable v1beta2 2021-09-09 08:28:53 -04:00
Stephen Augustus
e8d2bff6ba
[go1.17] Update to go1.17
Signed-off-by: Stephen Augustus <foo@auggie.dev>
2021-08-24 15:47:41 -04:00
Jordan Liggitt
a26f7f2b58 Add non-vendor version ldflags 2021-08-14 11:20:26 -04:00
Yaakov Selkowitz
67e14290aa Fix build with multiple GOFLAGS
The tag extraction from GOFLAGS doesn't do anything if -tags is not
present in GOFLAGS.  Not only does that mean non-sensical tags are
passed, but because GOFLAGS is a space-separated variable, the build
will fail because the build flags because -tags must be comma-separated.

Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2021-08-11 19:23:41 -04:00
Davanum Srinivas
f63dbd481f
Warn if docker buildx is not available
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-08-10 14:42:11 -04:00
Kubernetes Prow Robot
0427b17395
Merge pull request #104164 from dims/allow-override-of-cgo-enabled
Allow override of KUBE_CGO_OVERRIDES (for switching on/off of `CGO_ENABLED`)
2021-08-05 16:37:26 -07:00
Kubernetes Prow Robot
79c7584764
Merge pull request #103986 from GM1957/fix-scripts
fixing scripts from https://github.com/google/protobuf/releases to ht…
2021-08-05 08:17:59 -07:00
Davanum Srinivas
af2129b77d
Allow override of CGO_ENABLED=0
When building inside a docker container, we fail to pass along enough
information for KUBE_CGO_OVERRIDES. The original PR was geared towards
building the binary from the command line

- dca376a03e
- e4ded2b3ec

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-08-05 10:45:14 -04:00
Tanmoy Bhowmick
260b5ef155 fixing scripts from https://github.com/google/protobuf/releases to https://github.com/protocolbuffers/protobuf/releases 2021-07-29 02:24:39 +05:30
Jordan Liggitt
4115bef826 Update references to test/conformance/image 2021-07-23 11:26:54 -04:00
Marek Siarkowicz
ebe550bd48 Upgrade etcd to 3.5.0 2021-06-24 09:15:17 +02:00
Marek Siarkowicz
12447bc803 Upgrade etcd server version to 3.5.0-rc.0 2021-06-09 17:00:05 +02:00
Sascha Grunert
39d9e98a6f
Build non-static binaries with PIE buildmode
We now add the `-buildmode pie` flag when building non-static binaries,
which enables the ASLR security mechanism.

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2021-05-27 14:51:36 +02:00
Kubernetes Prow Robot
1d2b1ed354
Merge pull request #101395 from tanjing2020/container_manager_test
no_proxy inherits the system settings to adapt to some special scenarios
2021-05-07 21:29:17 -07:00
tanjing2020
3890772bd6 no_proxy inherits the system settings to adapt to some special scenarios 2021-04-25 14:39:36 +08:00