This change refactors the code of preparing kube-system manifests
for trusty based cluster. The manifests used by nodes do not contain
salt configuration, so we can simply copy them from the directory
cluster/saltbase/salt, make a tarball, and upload to Google Storage.
I'm moving/deleting some tests to make an upcoming RESTClient refactor
PR cleaner.
- TestDoRequestBearer is redundant to
pkg/client/transport.TestBearerAuthRoundTripper
- Added a case to pkg/client/transport.TestBasicAuthRoundTripper to
cover what TestDoRequestWithoutPassword was testing
- Moved TestSetsCodec, TestRESTClientRequires,
TestValidateHostParameter to helper_test.go since they were really
testing helper functions and not the RESTClient directly.
- Modified TestValidateHostParameter during the moved to just use
DefaultServerURL instead of creating a client.
The original scale function takes around 800ns/op with more
than 10 allocations. It significantly slow down scheduler
and other components that heavily relys on resource pkg.
For more information see #18126.
This pull request tries to optimize scale function. It takes
two approach:
1. when the value is small, only use normal math ops.
2. when the value is large, use math.Big with buffer pool.
The final result is:
BenchmarkScaledValueSmall-4 20000000 66.9 ns/op 0 B/op 0 allocs/op
BenchmarkScaledValueLarge-4 2000000 711 ns/op 48 B/op 1 allocs/op
I also run the scheduler benchmark again. It doubles the throughput of
scheduler for 1000 nodes case.
- Don't indent top-level lists
- Use 2 space list item indentation, unless using multi-line items, then use 4 space indents
- Use underline for page title
- Auto-generate table of contents
- Start with lvl 2 headers (lvl 1 headers look too much like the page title)
The logic doesn't apply to static pods as their corresponding mirror pod may
not have been created yet, or may be in the process of recreation. Deleting the
pod status immediately resets the version of the status for the static pod,
while the apiStatusVersion remains unchanged. This could lead to incorrect
versioning and hence stale pod status in the apiserver.
The formatting function is used often in logging. This improves the readability
by shortening the length of the call. Also change the fomartted string to
include the pod UID.