Commit Graph

428 Commits

Author SHA1 Message Date
Wojciech Tyczynski 24d21a0ee4 Fix kubectl conversions
Kubernetes-commit: bfa4188123ed334d4f5dda3a79994cadf663d8f2
2019-11-17 18:35:55 +01:00
Jordan Liggitt 25e7825a5b Fix --resource-version handling in kubectl
Kubernetes-commit: 0ac8345d3a4c5ee38fd3fc2c40976ba876d815e7
2019-11-14 09:24:42 -05:00
Maciej Szulik dfa60c7722 Drop job from scale description
Kubernetes-commit: c3964927f758be88a65f833595a0b0d5456ce729
2019-10-23 12:25:42 +02:00
Rob Scott 56eaaf1668 Promoting EndpointSlices to beta
Kubernetes-commit: a7e589a8c689d1a6c0c21d47c5e6c97267822875
2019-10-25 14:59:10 -07:00
Rob Scott 4118a67aeb Splitting IP address type into IPv4 and IPv6 for EndpointSlices
Kubernetes-commit: 0fa9981e0106d7f0d6f9c88fc49d4cdf779c95c1
2019-11-06 22:46:04 -08:00
Jack Kleeman 1f00e044fd Fix incorrect message on describe netpol
When I describe network policies, it often tells me that pods are
isolated for egress connectivity because the policy that applies to them
has no egress rules. However, this would only lead to isolation if there
is an explicitly set egress policy type. Otherwise, the policy allows
egress traffic. The same applies if you have explicitly set an egress
type only, describe will incorrectly report isolated ingress traffic.

This PR fixes this by inferring the applicable direction for the policy
based on the PolicyTypes, and then if a policy doesn't apply eg to
egress, we print 'Not affecting egress traffic'

Kubernetes-commit: 7753bfa3a418d95795420d03193732e024456466
2019-10-22 17:43:03 +01:00
wojtekt 7f6186e3c1 Eliminate couple unnecessary conversions
Kubernetes-commit: 067d173266303c5c9a4281e962d3662c34a78053
2019-11-12 14:19:14 +01:00
louisgong ae926dc56e fix kubectl diff panic
Kubernetes-commit: 4f13f2739a3a33c7ed4b86b98054972c0fde4579
2019-11-09 20:34:51 +08:00
Clayton Coleman 4ca8f5ecfe test: kubectl unit tests should be using codecs without conversion
Tests are also refactored to use the simpler RESTClient code path.

Kubernetes-commit: 8a9b8c87c40ee65751828d9dd02f4f642588f0ce
2019-11-03 15:20:10 -05:00
Ted Yu eb7c1bf189 Only put un-filtered pod in podDeleteList
Kubernetes-commit: 65c2f61806468d25795516d6077ce0c31c83adcd
2019-10-30 09:55:34 -07:00
Maciej Szulik 89d9f2ef29 Set TypeSetter in get print flags, like we do everywhere else
Kubernetes-commit: 626b9081fbee1eeae3f96a99f40da6c665d5753f
2019-10-31 18:25:46 +01:00
ritho b0cd1c2290 Do some Kubectl optimizations suggested by the golangci linter
The tool golangci-lint gives a bunch of warnings. This PR solves the easier/less controversial ones, so the code is simpler and a little bit more optimal, since it removes some if conditions.

Kubernetes-commit: cd2adbe760641f844d84d411f9adcf17fb6982ff
2019-06-04 01:25:43 -05:00
clarklee92 87db492820 Modify the status code number to HTTP status semantics
Signed-off-by: clarklee92 <clarklee1992@hotmail.com>

Kubernetes-commit: f86f5ee14ef3c8adf9855ce16dcc57beca949719
2019-11-06 00:45:35 +08:00
Mike Danese fc0d402286 support URI SANs in local signer
Kubernetes-commit: 6a004d0c18818f79d7c294091f071706aac2d912
2019-11-04 08:08:59 -08:00
Sean Sullivan 3ec9685c39 Rename test/data directory to testdata
Kubernetes-commit: 4ce97d6c48ae4735463f020430dd20539a03e8c5
2019-10-31 13:40:02 -07:00
Sean Sullivan 7965551001 Moves kubectl get subcommand to staging
Kubernetes-commit: 2a3f28863baa804a05d35c3958a107f9210b4c9e
2019-10-29 15:51:00 -07:00
Pablo Mercado 6b77b0790a Kubectl certificate signing: fix certificate deny message (#84400)
* add certificate deny flag message

* bring back NewCertificateOptions with operation parameter

Kubernetes-commit: e528c2f2925d61fa7a12313a895af5a312d36dd6
2019-10-27 03:24:33 +00:00
Ted Yu 587c053a55 Add note on the applicability of --grace-period
Kubernetes-commit: abc9a9f8369c220ee3a1de2e1917edef3d7d680e
2019-10-24 16:07:02 -07:00
Jan Chaloupka 6fd1ff2fb0 Require exact match when calling Get method within fake clientset
`Get` method within the fake clientset returns an object that would not be normally returned when using the real clientset. Reproducer:

```go
package main

import (
	v1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	"k8s.io/client-go/kubernetes/fake"
)

func main () {
	cm := &v1.ConfigMap{
		ObjectMeta: metav1.ObjectMeta{Namespace: metav1.NamespaceSystem, Name: "cm"},
		}

	client := fake.NewSimpleClientset(cm)
	obj, err := client.CoreV1().ConfigMaps("").Get("", metav1.GetOptions{})
	if err != nil {
		panic(err)
	}
	fmt.Printf("obj: %#v\n", obj)
}
```

stored under `test.go` of `github.com/kubernetes/kubernetes` (master HEAD) root directory and ran:

```sh
$ go run test.go
obj: &v1.ConfigMap{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"cm", GenerateName:"", Namespace:"kube-system", SelfLink:"", UID:"", ResourceVersion:"", Generation:0, CreationTimestamp:v1.Time{Time:time.Time{wall:0x0, ext:0, loc:(*time.Location)(nil)}}, DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ClusterName:"", ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Data:map[string]string(nil), BinaryData:map[string][]uint8(nil)}
```

As you can see fake clientset with a "test" configmap is created. When getting the object through the clientset back, I intentionally set the object name to an empty string. I would expect to get an error saying config map "" was not found. However, I get "test" configmap instead.

Reason for that is inside implementation of `filterByNamespaceAndName` private function:
```go
func filterByNamespaceAndName(objs []runtime.Object, ns, name string) ([]runtime.Object, error) {
	var res []runtime.Object

	for _, obj := range objs {
		acc, err := meta.Accessor(obj)
		if err != nil {
			return nil, err
		}
		if ns != "" && acc.GetNamespace() != ns {
			continue
		}
		if name != "" && acc.GetName() != name {
			continue
		}
		res = append(res, obj)
	}

	return res, nil
}
```

When `name` is empty, `name != "" && acc.GetName() != name` condition is false and thus `obj` is consider as a fit.

[1] https://github.com/kubernetes/client-go/blob/master/testing/fixture.go#L481-L493

Kubernetes-commit: d32c76fc03381784516c47cb1bf62ef932189afa
2019-09-17 17:52:28 +02:00
Sean Sullivan c6a8c8a72e Removes duplicate TabWriter. Several updates to reference the one remaining TabWriter in cli-runtime.
Kubernetes-commit: 958d7d3b6e74b8648fb897ce09f52049eb9823a1
2019-10-17 13:32:40 -07:00
David Eads 3fa753054c add option to skip verifying kubelet certificates for logs
Kubernetes-commit: f0931cbf48cb4f170177d42c1a3c75b9d8792c52
2019-10-23 14:33:37 -04:00
Ivan Shvedunov 6bf46a2bba Fix crash in kubectl drain
When there's a pod that can't be evicted/deleted, and apiserver
connection breaks at a wrong moment, kubectl can panic due
to nil pointer dereference. This PR also improves drain tests
to avoid confusing panics with fatal errors.

Kubernetes-commit: 37226f8e8306475895d7e68eb52c57e57f00ee28
2019-10-11 22:12:26 +03:00
Michael Gugino ff5adba11b Add timeout info to kubectl drain logging
Kubernetes-commit: 0088a9e6a8c47b2710fc49b82a912861cda8a554
2019-10-21 15:21:26 -04:00
Michael Gugino e09feee202 kubectl drain: avoid leaking goroutines
Recently, kubectl drain has been refactored to be consumeable
as a library.  Currently, if a pod cannot be evicted due
to PDBs, we will leak a goroutine.

This commit ensures the goroutine always exists.

Related-bug: https://github.com/kubernetes/kubernetes/issues/81333

Kubernetes-commit: 0e8998a040efe5dd82592911e739fe2e2258cfa3
2019-10-15 15:24:27 -04:00
Niclas Ladd 72381882b1 Add a new --sort-by flag to kubectl api-resources command
Kubernetes-commit: cf492e95ebbe5f58c5988ddb69ff58c823c96ac1
2019-10-07 10:17:34 -07:00
wojtekt e55208d067 Add information from Lease to kubectl describe node
Kubernetes-commit: b44f8948a4ec4105ce3e989132199dd6757c65e4
2019-10-14 12:53:38 +02:00
Mikalai Radchuk a38258b351 Adds --prefix flag to the kubectl log command
Kubernetes-commit: 8cadd185d67e84dd186728669d6e72e9e415db70
2019-09-04 16:23:02 +01:00
Ted Yu 91465db998 Improve 'No resource limits' message
Kubernetes-commit: 3553de332e9367a9126937c5840da00f8001f2a0
2019-10-10 14:31:17 -07:00
Sally O'Malley 56a4f6edaa kubectl: remove usage info from bad flag error msg
Kubernetes-commit: e36dc3adb4045373eefc002e4afe5298ec715ce9
2019-09-01 10:22:13 -04:00
tanjunchen 588a48c6ab remove the repeat word in documents
Kubernetes-commit: de3cf23414efb2eb4d94e821996cd4c93e6534e4
2019-10-04 15:32:48 +08:00
fang duan 28ba3d4e95 Fix help text in kubectl top -h
close https://github.com/kubernetes/kubernetes/issues/82843

[heapster deprecation timeline](https://github.com/kubernetes-retired/heapster/blob/master/docs/deprecation.md)

Kubernetes-commit: 13a37abb8bca75e7cad8952da1145bd980aa05a1
2019-09-27 23:05:02 +08:00
Ted Yu 04c0c6e8db Prune should respect namespace
Kubernetes-commit: 88e2f8e04fa310e848f07d0a2ab801aa0917e408
2019-09-25 16:43:08 -07:00
Ted Yu b89bb29485 Remove unnecessary traversal of pod.Status.Conditions
Kubernetes-commit: 936ae632a0b6e1a83f1729aeff736baebbc4e68c
2019-09-24 10:47:34 -07:00
ZP-AlwaysWin da06ecc74b Fix bug The statefulset have duplicate revision after resource was updated
Kubernetes-commit: e081d1dca65e738a2541023968251e58b9abf656
2019-09-12 22:26:09 +08:00
wojtekt 52d3bfc415 Minor cleanup of jsonFallbackEncoder
Kubernetes-commit: cd24a0e5fa7af1bd921386cf80c90cd535954e6c
2019-09-22 13:50:05 +02:00
Lantao Liu 7c6594395c Fix kubectl panic when handling invalid error.
Kubernetes-commit: 12d944b860e4872085fa1155590c7fcef58e6bb8
2019-09-19 21:48:50 -07:00
ZP-AlwaysWin b3895b0e0e fix kubectl run --generator=xxx bug
Kubernetes-commit: 860845b58216fa7fa058bacd06b4be5caefa6251
2019-09-15 14:27:33 +08:00
ZP-AlwaysWin a376c2df78 replace 200 with http.StatusOK
Kubernetes-commit: cfa77048f9b7fa96bad4eebb059cf60acc9dfd29
2019-09-12 22:35:19 +08:00
Han Kang 010c893f0a remove pkg/version and some of redundant copies of it
Change-Id: Ia58367c1b1274bfb49c8a4784051463abaf795de

Kubernetes-commit: 866ea74326fba45241cbccd3ca4624b68ba7022f
2019-09-10 14:42:55 -07:00
David Symonds deabbd435b Fix description of diff flags.
Running `diff -u` produces a unified diff. It isn't related to Unicode.
Also, `diff -N` treats _absent_ files as empty, not new files.

Kubernetes-commit: 0af2dedd96e973f4ed59af0cc325a70ca0b9100a
2019-05-22 13:34:30 +10:00
haoshuwei 4dd9f90e6e fix some missing errors return statements
Signed-off-by: haoshuwei <haoshuwei24@gmail.com>

Kubernetes-commit: c4fe8f11b200d0a97e8ce447e5af592b5c4870d0
2019-09-09 13:54:14 +08:00
caiweidong 521a90f087 add apigroup to the data source when using kubectl describe pvc
Kubernetes-commit: 9157df47e8db6e10edcd398294e6a4c04b3572e9
2019-09-08 15:03:26 +08:00
Sally O'Malley 9555357d5c fix indentation with 'kubectl describe node'
Kubernetes-commit: 4ce16254f7b89324dcbb43de70d0d95cb9ce5865
2019-09-06 16:57:42 -04:00
draveness a61556981e feat: remove deprecated include uninitialized flag
Kubernetes-commit: f18f86ad9a16335e44b2799a419f51c9b606526b
2019-07-19 10:01:17 +08:00
Eric Ernst 84f773a30b kubectl: take pod overhead into account
Signed-off-by: Eric Ernst <eric.ernst@intel.com>

Kubernetes-commit: 7922d73f98aa8cc41bb27c3a819c0092bf753bc9
2019-08-25 23:55:56 -07:00
Rob Scott 743417d981 Adding kubectl support for EndpointSlice
Kubernetes-commit: ab1943e00bff372c362ba1a04353cb000c07d0ea
2019-08-20 14:44:08 -07:00
Maciej Szulik b567e802b1 Move kubectl cp back to k/k
Kubernetes-commit: ab1c56ae87780a390bd31d50558e4e44bca551dc
2019-08-28 19:01:25 +02:00
Matthias Bertschy dfd6b3033e startupProbe: API changes
Kubernetes-commit: e4d26f845e1e11ec75ce3a395ff0fc691347f3cf
2019-08-07 10:21:48 +02:00
Antoine Pelisse 4574b365f9 Rename --experimental-* flags to --* for server-side apply
Kubernetes-commit: a3f4e6e933d3292b3921cdc7b60d7ae019ca1580
2019-08-26 09:09:40 -07:00
Maciej Szulik e82cbf6bec Remove kubectl log
Kubernetes-commit: 6939e77277808672864b6ae43916e44bbcbe4752
2019-05-20 11:36:43 +02:00