kubernetes/pkg/controller/deployment
Kubernetes Submit Queue f37cffcf4e Merge pull request #43239 from enisoc/kubectl-controller-ref
Automatic merge from submit-queue

kubectl: Use v1.5-compatible ownership logic when listing dependents.

**What this PR does / why we need it**:

This restores compatibility between kubectl 1.6 and clusters running Kubernetes 1.5.x. It introduces transitional ownership logic in which the client considers ControllerRef when it exists, but does not require it to exist.

If we were to ignore ControllerRef altogether (pre-1.6 client behavior), we would introduce a new failure mode in v1.6 because controllers that used to get stuck due to selector overlap will now make progress. For example, that means when reaping ReplicaSets of an overlapping Deployment, we would risk deleting ReplicaSets belonging to a different Deployment that we aren't about to delete.

This transitional logic avoids such surprises in 1.6 clusters, and does no worse than kubectl 1.5 did in 1.5 clusters. To prevent this when kubectl 1.5 is used against 1.6 clusters, we can cherrypick this change.

**Which issue this PR fixes**:

Fixes #43159

**Special notes for your reviewer**:

**Release note**:
```release-note
```
2017-03-17 14:25:38 -07:00
..
util kubectl: Use v1.5-compatible ownership logic when listing dependents. 2017-03-16 12:28:38 -07:00
BUILD Deployment: Use ControllerRef to route watch events. 2017-03-06 15:12:07 -08:00
deployment_controller_test.go Merge pull request #43239 from enisoc/kubectl-controller-ref 2017-03-17 14:25:38 -07:00
deployment_controller.go Deployment: Clear obsolete OverlapAnnotaiton. 2017-03-16 14:52:01 -07:00
OWNERS Update OWNERS for pkg/controller/deployment 2017-01-26 10:24:52 -08:00
progress_test.go controller: fix requeueing progressing deployments 2017-02-20 18:19:23 +01:00
progress.go Deployment: Use ControllerRef to list controlled objects. 2017-03-06 15:12:06 -08:00
recreate_test.go react to informer updates 2017-02-13 09:18:32 -05:00
recreate.go Deployment: Use ControllerRef to list controlled objects. 2017-03-06 15:12:06 -08:00
rollback.go Deployment: Use ControllerRef to list controlled objects. 2017-03-06 15:12:06 -08:00
rolling_test.go move client/record 2017-01-31 19:14:13 -05:00
rolling.go Deployment: Use ControllerRef to list controlled objects. 2017-03-06 15:12:06 -08:00
sync_test.go react to informer updates 2017-02-13 09:18:32 -05:00
sync.go Fix revision when SetDeploymentRevision 2017-03-17 23:23:41 +08:00