Commit Graph

644 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
84ba901b60
Merge pull request #97247 from claudiubelu/test-images/20h2-windows
test images: Adds 20H2 image to windows-servercore-cache
2020-12-14 14:02:10 -08:00
Kubernetes Prow Robot
eecbdea3d6
Merge pull request #96462 from claudiubelu/test-images-multiarch
test images: Adds -p yes when calling register.sh
2020-12-11 15:01:27 -08:00
Claudiu Belu
77e0c55acd test images: Adds 20H2 image to windows-servercore-cache
The 20H2 image was released in the second half of the year, and
we are going to need images for testing the release.

The image tag can be found here:
https://hub.docker.com/_/microsoft-windows-servercore
2020-12-11 03:22:55 -08:00
Kubernetes Prow Robot
ee8983705a
Merge pull request #96679 from stmcginnis/appspot-cleanup
Remove stale analytics links from docs
2020-12-10 23:17:22 -08:00
Claudiu Belu
b95891b1f0 test images: sets DOCKER_CLI_EXPERIMENTAL="enabled" globally 2020-12-01 15:10:39 +00:00
Claudiu Belu
ef530c12d6 test images: Adds -p yes when calling register.sh
Before creating and bootstrapping a docker buildx instance, we need to call
register.sh with the -p yes flag. Without this, the docker buildx will only
support linux/amd64 and linux/386 platforms, meaning that it will fail when
trying to build images for other architecture types.

Additionally, the builder has to have qemu and its qemu-* binaries installed
in order to properly build the images. The recently created image
gcr.io/k8s-testimages/gcb-docker-gcloud:v20201130-750d12f has those requirements met.
2020-12-01 15:10:39 +00:00
Stephen Augustus
2407a70cc7 [go1.15] Update to go1.15.5
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-11-23 20:49:56 -05:00
Sean McGinnis
be131457ef
Remove stale analytics links from docs
Many README files and other docs contained a link to a an appspot
tracking app that is no longer active. Following the links leads to an
error about Go 1.9 no longer being supported. Go 1.9 support was dropped
in appspot in 2019 and disabled June 2020.

This also resulted in a broken image link displaying when viewing these
files on GitHub. Since the app is no longer functioning, and since it
causes a potentially (but granted, minor) confusing error to display,
this just removes those links as I don't believe they are needed
anymore.

Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
2020-11-18 07:04:48 -06:00
Kubernetes Prow Robot
58f82efe70
Merge pull request #95032 from claudiubelu/test-images/multiarch
test images: Removes -p yes flag from qemu-user-static script call
2020-11-06 12:24:29 -08:00
Claudiu Belu
5152919611 test images: Authenticate in order to push images
We cannot push images without being authenticated.
2020-11-04 23:22:30 -08:00
Claudiu Belu
54d0c1e1d2 test images: Removes -p yes flag from qemu-user-static script call
Currently, the Image Builder job is failing as it cannot build images
for other architecture types. This happens because the Image Builder image
does not have any of the expected qemu-* binaries in /usr/bin/ needed in order to
run qemu-binfmt-conf.sh with the -p yes flag, so that flag is removed.
2020-11-04 23:01:24 +00:00
Claudiu Belu
5de5ae6bd3 test images: sets HOME=/root in cloudbuild.yaml
The default cloudbuild has HOME=/builder/home and docker buildx is in /root/.docker/cli-plugins/docker-buildx

We need to set the Home to /root explicitly since we're using docker buildx
2020-11-03 22:19:18 -08:00
Claudiu Belu
cf838ca180 test images: set DOCKER_CLI_EXPERIMENTAL=enabled
docker buildx requires DOCKER_CLI_EXPERIMENTAL=enabled to be set
in order to be used.

This environment variable is not getting plumbed through from the
test/images/cloudbuild.yaml file, causing the docker buildx commands
to fail.
2020-11-04 14:23:44 +00:00
Kubernetes Prow Robot
17376e6aef
Merge pull request #92850 from tallclair/netexec
Enhance agnhost netexec for SSRF E2Es
2020-11-02 18:10:14 -08:00
Kubernetes Prow Robot
0dbfe2633e
Merge pull request #95781 from ii/porter-add-verbose-flag
Add verbose flag to porter so http method can be returned to client
2020-11-02 13:41:33 -08:00
Tim Allclair
c05a350b4f Update usage information for --http-override 2020-11-02 13:30:55 -08:00
Tim Allclair
354cb6ca91 Bump agnhost version 2020-11-02 13:30:55 -08:00
Tim Allclair
700006f2d9 Add override option to netexec 2020-11-02 13:30:22 -08:00
Tim Allclair
9156360234 Add a redirect handler to netexec 2020-11-02 13:30:22 -08:00
Tim Allclair
a15f5ea836 Add optional code to netexec echo endpoint 2020-11-02 13:30:22 -08:00
Stephen Heywood
f005b3a5f7 Add json-response flag to porter
Provides a response that includes a body and a method. This response
will enable a client (e2e test) to confirm that a proxy did not alter
the http method.
2020-10-30 14:48:16 +13:00
Kubernetes Prow Robot
0ec6602679
Merge pull request #77398 from claudiubelu/test-images/windows-support-part-2
test images: Adds Windows Container images support (part 2)
2020-10-26 06:19:02 -07:00
Kubernetes Prow Robot
82cc713b13
Merge pull request #95328 from aojea/conntrack_invalid
add ipv6 support to the image issue-74839
2020-10-22 22:16:16 -07:00
Rajas Kakodkar
0269e2d042 bump qemu version
Signed-off-by: Rajas Kakodkar <rajas.kakodkar@ibm.com>
2020-10-22 16:34:53 +00:00
Claudiu Belu
4dbb55fe85 test images: Adds Windows support (part 2)
Adds Windows support for most of the images.

Adds a README explaining the image building process, including the
Windows Container image building process.
2020-10-19 16:54:28 +00:00
Claudiu Belu
0d24b05434 test images: Switches to buildx
Currently, some of the E2E test images have Windows support, and one of the goals is for most of
them to have Windows support. For that, the Image Builder is currently building those Windows
container images using a few Windows Server nodes (for 1809, 1903, 1909) with Remote Docker
enabled which are hosted on an azure subscription dedicated for CNCF.

With this, the Windows nodes dependency is removed entirely, as the images can be also built with
docker buildx. One additional benefit to this is that adding new supported Windows OS versions
to the E2E test images manifest lists becomes a lot easier (we wouldn't have to create a new Windows
Server node that matches that new OS version, assign DNS name, update certificates, etc.), and it
also becomes easier for other people to build their own E2E windows test images.

However, some dependencies are still required to run on a Windows machine. To solve this, we can
just pull helper images: e2eteam/powershell-helper:6.2.7 and e2eteam/busybox-helper:1.29.0. Their
Dockerfiles and a Makefile for them has been included in this commit. If any change is required to
them, then a new image will be built and tagged under a different version, but they are pretty
straight-forward and shouldn't require changes.

However, there is a small concern when it comes to the build time: Windows servercore images are
very large (for example, mcr.microsoft.com/windows/servercore:ltsc2019 is 4.99GB uncompressed, and
about ~2 GB compressed - those images are already cached on the Windows Server builder nodes, so
this isn't an issue there), and we currently support 1809, 1903, and 1909 (soon to add 2004).
This can lead to build times that are too big.

We have changed the base image to nanoserver (uncompressed size: 250MB), but some images still
require some DLLs or some other dependencies that can be fetched from a servercore image.

A separate job has been defined that would build a scratch windows-servercore-cache image monthly,
and then we can just get those dependencies from this cache, which will be very small.
This would be preferred, as the Windows images update periodically, and those dependencies
could be updated as well.
2020-10-16 10:42:49 +00:00
Antonio Ojea
a0887285f5 add ipv6 support to the image issue-74839
Co-authored-by: Dan Winship <danwinship@redhat.com>
2020-10-07 18:30:47 +02:00
Kubernetes Prow Robot
3a7d7101c5
Merge pull request #94876 from linux-on-ibm-z/nonewprivs-s390x
Add s390x support for nonewprivs
2020-09-25 01:37:11 -07:00
Valerii Ponomarov
c55b6cdbb4 agnhost image: use actual DNS domain instead of hardcoded cluster.local
'agnhost' image uses hardcoded 'cluster.local' value for DNS domain.
It leads to failure of a bunch of HPA tests when test cluster is
configured to use custom DNS domain and there is no alias for
default 'cluster.local' one.
So, fix it by reusing it's own function for reading DNS domain suffixes.

Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
2020-09-24 14:24:16 +03:00
Claudiu Belu
46c820e793 test images: uses nanoserver
Using Windows nanoserver container images as a base instead of the current
Windows servercore image will reduce the image size by about ~10x.

However, the nanoserver image lacks several things we need:
- netapi32.dll
- powershell
- certain powershell commands
- chocolatey cannot be used

When building the nanoserver images, we are going to use a Windows servercore helper,
in which we are going to install the necessary dependencies, and then copy them over
to our nanoserver image, including necessary DLLs.

Other notable changes include:
- switch from wget to curl (wget was a powershell alias).
- implement in code getting the DNS suffix list and DNS server list.
- reimplement getting file permissions for mounttest.
2020-09-21 04:53:44 -07:00
Kubernetes Prow Robot
73b4f09dce
Merge pull request #94777 from claudiubelu/test-images/echoserver-fix
test images: Fixes echoserver s390x image
2020-09-17 08:12:45 -07:00
Rajas Kakodkar
7566da7f81 Add support for s390x
Signed-off-by: Rajas Kakodkar <rajas.kakodkar@ibm.com>
2020-09-17 02:50:20 -07:00
Claudiu Belu
d663b07f7d test images: Fixes echoserver s390x image
When trying to build the s390x image, it would fail when running the apk
command with the following error:

ERROR: Unable to open root: Bad address
ERROR: Failed to open apk database: Bad address

This can be fixed by updating the third_party/multiarch/qemu-user-static/register/register.sh
and third_party/multiarch/qemu-user-static/register/qemu-binfmt-conf.sh scripts
and their usage to a newer version [1].

Additionally, the packages nginx-mod-http-lua and nginx-mod-http-lua-upstream
cannot be found in the regular http://dl-cdn.alpinelinux.org/alpine/v3.9/main/s390x/
repository, but we can use an older one [2].

[1] https://github.com/qemu/qemu/blob/master/scripts/qemu-binfmt-conf.sh
[2] http://dl-cdn.alpinelinux.org/alpine/v3.8/main
2020-09-17 09:34:40 +00:00
Kubernetes Prow Robot
aed5ffd195
Merge pull request #94449 from justaugustus/go115
[go1.15] Update to go1.15.2
2020-09-15 15:15:19 -07:00
Stephen Augustus
fc673df1e4 test/{images,utils/image}: Add justaugustus as reviewer
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-09-14 09:11:50 -04:00
Stephen Augustus
a4a98f440c [go1.15] Update to go1.15.2
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-09-11 13:15:12 -07:00
Kubernetes Prow Robot
5832c44dbf
Merge pull request #92988 from nikhita/cleanup-owners-test-images
test/images/pets: remove OWNERS to cleanup inactive members
2020-08-27 19:08:43 -07:00
Benjamin Elder
3e2cb2922b synchronize agnhost image / app version 2020-08-20 17:00:41 -07:00
Benjamin Elder
9d7a94263a track agnhost version in dependencies.yaml 2020-08-20 17:00:41 -07:00
Stephen Augustus
aa2bb18a2b [go1.15] Update to go1.15
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-08-12 14:19:59 -04:00
Stephen Augustus
ffcef48b83 [go1.15] Update to go1.15rc2
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-08-09 02:53:53 -04:00
Kubernetes Prow Robot
aec30be5b3
Merge pull request #93433 from dcbw/netexec-errors
agnhost/netexec: logging cleanup and print more verbose errors
2020-07-28 21:04:01 -07:00
Stephen Augustus
479249b3a3 [go1.15] dependencies.yaml: Update to go1.15rc1
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-07-25 16:45:02 -04:00
Dan Williams
31c563a46f agnhost/netexec: logging cleanup and print more verbose errors
There's currently no way to know whether an error is for SCTP or
UDP, for example:

Jul 24 09:55:54.469: INFO: netserver-0[e2e-nettest-3476].container[webserver].log
2020/07/24 09:53:52 Started UDP server
2020/07/24 09:53:52 Error occurred. error:protocol not supported

In this case the "Error occurred. error:protocol not supported" is
actually for the SCTP socket. Make that more apparent.
2020-07-24 14:40:58 -05:00
Stephen Augustus
90c223fa5c [VDF] Remove references to us.gcr.io/k8s-artifacts-prod
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-07-22 16:08:30 -04:00
Stephen Augustus
3bbcba9b84 Update Golang to v1.14.6
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-07-17 14:47:21 -04:00
Stephen Augustus
c4b6678757 Update Golang to v1.14.5
Signed-off-by: Stephen Augustus <saugustus@vmware.com>
2020-07-15 00:10:05 -04:00
Nikhita Raghunath
cb2fb92686 test/images/pets: remove OWNERS to cleanup inactive members
bprashanth hasn't be active since the release of v1.11. Removing them
from test/images/pets/OWNERS would leave mkumatag as the sole approver.

But mkumatag is also an approver for test/images/OWNERS so this commit
removes the test/images/pets/OWNERS completely.

Note: we should try to find more OWNERS for test/images/pets instead,
but this cleanup is a short term solution to avoid the bot suggesting
inactive members for reviews and approval.
2020-07-11 19:35:47 +05:30
Jeff Grafton
089a1af421 Move ixdy to emeritus 2020-07-06 10:39:56 -07:00
Kubernetes Prow Robot
efb56da4a5
Merge pull request #92665 from klueska/upstream-add-get-preferred-allocation-api
Add GetPreferredAllocation() call to the v1beta1 device plugin API
2020-07-03 20:31:16 -07:00