Commit Graph

1171 Commits

Author SHA1 Message Date
Patrick Ohly
00e4a599f6 command lines: always show flags with hyphens
All Kubernetes commands should show flags with hyphens in their help text even
when the flag originally was defined with underscore. Converting a command to
this style is not breaking its command line API because the old-style parameter
with underscore is accepted as alias.

The easiest solution to achieve this is to set normalization shortly before
running the command in the new central cli.Run or the few places where that
function isn't used yet.

There may be some texts which depends on normalization at flag definition time,
like the --logging-format usage warning. Those get generated assuming that
hyphens will be used.
2021-09-30 13:46:49 +02:00
Patrick Ohly
21d1bcd6b8 initialize logging after flag parsing
It wasn't documented that InitLogs already uses the log flush frequency, so
some commands have called it before parsing (for example, kubectl in the
original code for logs.go). The flag never had an effect in such commands.

Fixing this turned into a major refactoring of how commands set up flags and
run their Cobra command:

- component-base/logs: implicitely registering flags during package init is an
  anti-pattern that makes it impossible to use the package in commands which
  want full control over their command line. Logging flags must be added
  explicitly now, something that the new cli.Run does automatically.

- component-base/logs: AddFlags would have crashed in kubectl-convert if it
  had been called because it relied on the global pflag.CommandLine. This
  has been fixed and kubectl-convert now has the same --log-flush-frequency
  flag as other commands.

- component-base/logs/testinit: an exception are tests where flag.CommandLine has
  to be used. This new package can be imported to add flags to that
  once per test program.

- Normalization of the klog command line flags was inconsistent. Some commands
  unintentionally didn't normalize to the recommended format with hyphens. This
  gets fixed for sample programs, but not for production programs because
  it would be a breaking change.

This refactoring has the following user-visible effects:

- The validation error for `go run ./cmd/kube-apiserver --logging-format=json
  --add-dir-header` now references `add-dir-header` instead of `add_dir_header`.

- `staging/src/k8s.io/cloud-provider/sample` uses flags with hyphen instead of
  underscore.

- `--log-flush-frequency` is not listed anymore in the --logging-format flag's
  `non-default formats don't honor these flags` usage text because it will also
  work for non-default formats once it is needed.

- `cmd/kubelet`: the description of `--logging-format` uses hyphens instead of
  underscores for the flags, which now matches what the command is using.

- `staging/src/k8s.io/component-base/logs/example/cmd`: added logging flags.

- `apiextensions-apiserver` no longer prints a useless stack trace for `main`
  when command line parsing raises an error.
2021-09-30 13:46:49 +02:00
Khaled Henidak (Kal)
a53e2eaeab
move IPv6DualStack feature to stable. (#104691)
* kube-proxy

* endpoints controller

* app: kube-controller-manager

* app: cloud-controller-manager

* kubelet

* app: api-server

* node utils + registry/strategy

* api: validation (comment removal)

* api:pod strategy (util pkg)

* api: docs

* core: integration testing

* kubeadm: change feature gate to GA

* service registry and rest stack

* move feature to GA

* generated
2021-09-24 16:30:22 -07:00
Abu Kashem
28f2b42a41
apf: update apf logic to use v1beta2 2021-09-09 08:28:58 -04:00
Abu Kashem
e2b8701545
apf: ebable v1beta2 2021-09-09 08:28:53 -04:00
Stephen Augustus
481cf6fbe7
generated: Run hack/update-gofmt.sh
Signed-off-by: Stephen Augustus <foo@auggie.dev>
2021-08-24 15:47:49 -04:00
Antonio Ojea
0cd75e8fec run hack/update-netparse-cve.sh 2021-08-20 10:42:09 +02:00
Kubernetes Prow Robot
3c72622a1f
Merge pull request #104229 from astraw99/fix_trivial_code
Fix single pointer variable parenthesis
2021-08-12 21:16:31 -07:00
astraw99
ff7307bf9c fix single pointer variable 2021-08-11 10:40:10 +08:00
Jordan Liggitt
39a1293cbc Drop beta REST APIs removed in 1.22 2021-08-09 11:10:16 -04:00
David Ashpole
9dd59017c4 add tracing to webhook requests 2021-07-09 06:30:05 -07:00
Kubernetes Prow Robot
694d6cd2b9
Merge pull request #103216 from dashpole/etcd_client_tracing
Add distributed tracing to the etcd client
2021-07-08 14:01:52 -07:00
maruiyan
da4aaf81cd Error should be checked first, then go to other steps. 2021-06-30 11:00:55 +08:00
David Ashpole
71f810bb71 Add distributed tracing to the etcd client 2021-06-26 09:19:39 -07:00
David Ashpole
79550ed40c Add distributed tracing to the apiserver using OpenTelemetry 2021-06-25 05:20:27 -07:00
Mike Spreitzer
0762f492c5 Add config checking for inflight limits
When API Priority and Fairness is enabled, the inflight limits must
add up to something positive.
This rejects the configuration that prompted
https://github.com/kubernetes/kubernetes/issues/102885

Update help for max inflight flags
2021-06-23 14:06:50 -04:00
Jordan Liggitt
2979c3325e Switch to go.etcd.io/etcd/client/v3 2021-06-15 09:53:06 -04:00
Mengjiao Liu
170c93bf05 JSON log format registration for kube-apiserver 2021-06-10 07:20:43 +08:00
Kubernetes Prow Robot
57fbeb8030
Merge pull request #101993 from wongma7/waitforetcd
Remove etcd connection apiserver preflight check
2021-06-08 12:26:20 -07:00
David Eads
84590fe27c remove --ssh- options, deprecated 13 releases, that only work on GCE 2021-06-03 13:54:35 -04:00
Danil-Grigorev
5d57b3794c Add DisableCloudProviders FG
FeatureGate acts as a secondary switch to disable cloud-controller loops
in KCM, Kubelet and KAPI.

Provide comprehensive logging information to users, so they will be
guided in adoption of out-of-tree cloud provider implementation.
2021-05-21 16:09:44 +02:00
Matthew Wong
c201a78dff Remove etcd connection apiserver preflight check 2021-05-19 13:46:20 -07:00
Kubernetes Prow Robot
8365e2384c
Merge pull request #101187 from GreenApple10/feature/import_cleanup
remove duplicate packet import
2021-04-30 12:06:25 -07:00
Kubernetes Prow Robot
fbc93bd34c
Merge pull request #101403 from wangyx1992/redundant-silce-nilcheck
cleanup: omit redundant nil check around loop in apiserver
2021-04-27 12:31:38 -07:00
Kubernetes Prow Robot
e640a01219
Merge pull request #101068 from BinacsLee/binacs-apiserver-remove-useless-code-logic
code cleanup: apiserver remove useless code logic
2021-04-26 00:03:01 -07:00
wangyx1992
b9ea207ff7 cleanup: omit redundant nil check around loop in apiserver
Signed-off-by: wangyx1992 <wang.yixiang@zte.com.cn>
2021-04-23 11:38:28 +08:00
BinacsLee
75dde4dce4 code cleanup: Abstract repetitive codes in cmd as a function 2021-04-22 23:35:04 +08:00
Shihang Zhang
925900317e allow multiple of --service-account-issuer 2021-04-19 09:54:11 -07:00
Kubernetes Prow Robot
cbe41b4e76
Merge pull request #101178 from dcwbq/delete_kubeletHTTPS_flag
Remove kube-apiserver `--kubelet-https` flag
2021-04-16 10:02:42 -07:00
c00522440
a1335cba68 del duplicate import 2021-04-16 16:57:57 +08:00
dcwbq
5d186d0d0c This flag will be removed in 1.22
Signed-off-by: dcwbq <biqiang.wu@daocloud.io>
2021-04-16 11:20:52 +08:00
Monis Khan
91241eac9b
Prune stale entries from OWNERS files
Signed-off-by: Monis Khan <mok@vmware.com>
2021-04-13 20:54:50 -04:00
BinacsLee
802a50e4e9 code cleanup: apiserver remove useless code logic 2021-04-13 21:33:41 +08:00
Kubernetes Prow Robot
dc54027341
Merge pull request #100208 from songxiao-wang87/mytest
spelling mistake
2021-04-11 03:05:59 -07:00
Kubernetes Prow Robot
5c5aa98215
Merge pull request #99578 from pandaamanda/remove_duplicate_apiserverServiceRange_validation
remove duplicated validation for service-cluster-ip-range
2021-04-09 01:18:48 -07:00
Kubernetes Prow Robot
26fba1403b
Merge pull request #99528 from pandaamanda/apiserver_validation_code_optimization
fix log message and optimize log format check logic
2021-04-08 14:28:34 -07:00
Kubernetes Prow Robot
b11d0fbdd5
Merge pull request #100171 from chenyw1990/fixGlobalFlagChange
add normalize function to global FlagSet
2021-03-23 22:08:04 -07:00
xiongzhongliang
e6d6409cf8 remove duplicated validation for service-cluster-ip-range 2021-03-19 11:17:07 +08:00
Kevin Delgado
66d2f4359e Add ability to skip OpenAPI handler installation 2021-03-18 22:41:42 +00:00
chenyw1990
e2020f62ac add normalize function to global FlagSet 2021-03-18 09:23:52 +08:00
songxiao-wang87
d78f3cd47b spelling mistake
Signed-off-by: songxiao-wang87 <461870555@qq.com>
2021-03-13 04:56:39 -05:00
Kubernetes Prow Robot
08b11727f5
Merge pull request #99951 from deads2k/fix-decodableversions
provide directly decodable versions for storageversion API
2021-03-09 16:08:40 -08:00
Morten Torkildsen
21fba79d45 Promote PDBs to GA 2021-03-09 10:29:11 -05:00
David Eads
fa03dee68c provide directly decodable versions for storageversion API 2021-03-09 08:36:32 -05:00
chenyw1990
edff740386 fix json log format panic, change the flag names in flagIsSet 2021-03-09 14:14:25 +08:00
Kubernetes Prow Robot
b139db1539
Merge pull request #99573 from pandaamanda/apiserver_identity_validate
cleanup: wrap the apiserver identity validation
2021-03-08 19:23:19 -08:00
Swetha Repakula
108fd44f7c Graduate EndpointSlice feature gate to GA 2021-03-06 15:58:47 -08:00
Swetha Repakula
a9891b4b9b Graduate EndpointSlice API to GA
* Removes discovery v1alpha1 API
  * Replaces per Endpoint Topology with a read only DeprecatedTopology
  in GA API
  * Adds per Endpoint Zone field in GA API
2021-03-05 12:02:41 -08:00
xiongzhongliang
c7bf5506ee cleanup: wrap the apiserver identity validation 2021-03-06 00:57:02 +08:00
xiongzhongliang
4a24a08f93 Optimize some codes 2021-03-05 18:23:39 +08:00