The new benchmark requires the benchtime to be set to a very small number
so each test is run at most once. Some machines can have too powerfull resources
and decrease running time of some tests under the default 1s. Also, the old suite
expects the benchtime to be set to 1s. Allow to override the benchtime for the
new test suite will allow to run the same script from both suites.
After the shift for init phases, GetStaticPodSpecs() from
app/phases/controlplane/manifests.go gets called on each control-plane
component sub-phase. This ends up calling the Printf from
AddExtraHostPathMounts() in app/phases/controlplane/volumes.go
multiple times printing the same volumes for different components.
- Remove the Printf call from AddExtraHostPathMounts().
- Print all volumes for a component in CreateStaticPodFiles() using klog
V(2).
Perhaps in the future a bigger refactor is needed here were a
single control-plane component spec can be requested instead of a
map[string]v1.Pod.
The selected key type is defined by kubeadm's --feature-gates option:
if it contains PublicKeysECDSA=true then ECDSA keys will be generated
and used.
By default RSA keys are used still.
Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
The service session affinity allows to set the maximum session
sticky timeout.
This commit adds e2e tests to check that the session is sticky
before the timeout and is not after.
Executing commands in pods is expensive in terms of time and the
execution time is unpredictable and random.
The session affinity tests send several http requests from a pod
to check that the session is sticky. Instead of executing one
http request at a time, we can execute several requests from the
pod at one time and process the output.
When adding this functionality in
https://github.com/kubernetes/kubernetes/pull/88372, I forgot to
allocate a map for the `Errors` field when constructing the object. As a
result, trying to actually use the `InjectError` method failed (as I
noticed when I started trying to write tests to actually use
`InjectError`). Fortunately, `FakeImageService` is only used in tests...
but still, we should fix this issue.
Fixing in a separate diff from the one which will add additional test
coverage (and actually use `InjectError`, because I don't like having
non-working code in master.)
We could also revert the original commit and then re-merge with this
fix, but that seems like unnecessary work given we already have a fix
ready to go.
We appear to be respecting this options when provisioning the volume
but when PV is admitted the zone/region fields get added back to the
PV and hence defeating the purpose of the option.