Commit Graph

204 Commits (db35acde19c25f395bd389585f77455ddacb3328)

Author SHA1 Message Date
Michal Rostecki 59ca5986dd Print/log pointers of structs with %#v instead of %+v
There are many places in k8s where %+v is used to format a pointer
to struct, which isn't working as expected.

Fixes #26591
2016-08-01 22:27:56 +02:00
Janet Kuo 32ababbe1b Error out when any RS has more available pods then its spec replicas 2016-07-30 15:34:15 -07:00
Harry Zhang c495397cae Refactor uuid into its own pkg 2016-07-30 00:07:02 -04:00
Janet Kuo b45afc04a2 Use nonexistent image instead of minReadySeconds in deployment rollover e2e test 2016-07-25 11:45:46 -07:00
k8s-merge-robot ca06157421 Merge pull request #28162 from kargakis/annotation-fixes-for-scaling
Automatic merge from submit-queue

controller: update all rs annotations on a scaled rollout

Closes https://github.com/kubernetes/kubernetes/issues/28145

@kubernetes/deployment
2016-07-25 10:58:18 -07:00
Michail Kargakis 62afa3de71 controller: update all rs annotations on a scaled rollout
When a new rollout with a different size than the previous size of the
deployment is initiated then only the new replica set will notice the
new size. Old replica sets are not updated by the rollout path.
2016-07-20 22:40:43 +02:00
Janet Kuo 07d25fdc47 Log the time when checking deployment's pod availability 2016-07-19 14:08:28 -07:00
k8s-merge-robot 23f0edb8b0 Merge pull request #27713 from kargakis/wait-for-synced-rs-in-recreate
Automatic merge from submit-queue

controller: wait for synced old replica sets on Recreate

Partially fixes https://github.com/kubernetes/kubernetes/issues/27362

Any other work on it should be handled in the replica set level (and/or kubelet if it's required)

@kubernetes/deployment PTAL
2016-07-12 20:30:12 -07:00
gmarek 7815a3e7bc DeploymentController doesn't take any actions when being deleted 2016-07-12 09:43:08 +02:00
Michail Kargakis 1fb8dd838b controller: various fixes for the deployment controller
Changes:
* moved waiting for synced caches before starting any work
* refactored worker() to really quit on quit
* changed queue to a ratelimiting queue and added retries on errors
* deep-copy deployments before mutating - we still need to deep-copy
replica sets and pods
2016-07-08 17:30:40 +02:00
Angus Salkeld 6a0577cfcc Increase coverage in pkg/util/deployment 2016-07-08 12:35:23 +02:00
Angus Salkeld eec08872c7 Move deployment utilities to there own package 2016-07-08 09:46:56 +02:00
Janet Kuo 08305f12a2 Log available pods of deployments when scaling down old RS 2016-07-06 13:31:28 -07:00
Michail Kargakis 39576b47ba controller: wait for synced old replica sets on Recreate 2016-07-04 18:23:58 +02:00
Michail Kargakis 332d151d61 Break deployment controller into separate self-contained files
* rolling.go (has all the logic for rolling deployments)
* recreate.go (has all the logic for recreate deployments)
* sync.go (has all the logic for getting and scaling replica sets)
* rollback.go (has all the logic for rolling back a deployment)
* util.go (contains all the utilities used throughout the controller)

Leave back at deployment_controller.go all the necessary bits for
creating, setting up, and running the controller loop.

Also add package documentation.
2016-07-02 09:53:52 +02:00
David McMahon ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
Oleg Shaldybin aff173f7d1 Fix expectations in deployment controller test
Since fake clientset now correctly tracks objects created by deployment
controller, it triggers different controller behavior: controller only
creates replica set once and updates deployment once.
2016-06-28 11:54:13 -07:00
k8s-merge-robot fc1937f68f Merge pull request #20273 from kargakis/allow-scaling-paused-deployments
Automatic merge from submit-queue

Proportionally scale paused and rolling deployments

Enable paused and rolling deployments to be proportionally scaled.
Also have cleanup policy work for paused deployments.

Fixes #20853
Fixes #20966
Fixes #20754

@bgrant0607 @janetkuo @ironcladlou @nikhiljindal

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/20273)
<!-- Reviewable:end -->
2016-06-24 19:41:51 -07:00
Janet Kuo 726ba45b59 Deployment controller's cleanupUnhealthyReplicas should respect minReadySeconds 2016-06-20 15:03:57 -07:00
Michail Kargakis f3d2e3ff22 controller: proportionally scale paused and rolling deployments
Enable paused and rolling deployments to be proportionally scaled.
Also have cleanup policy work for paused deployments.
2016-06-20 12:13:35 +02:00
Janet Kuo 764df2e096 Listing pods only once when getting pods for RS in deployment 2016-06-10 09:55:28 -07:00
Janet Kuo 36f704c975 List RSes only once when getting old+new RSes in deployment controller 2016-06-02 11:24:43 -07:00
Janet Kuo 310a7d2eb5 Adding logs in deployment for debugging 2016-05-31 15:59:46 -07:00
jianhuiz 441e206671 move server client shared annotations to new api/annotations package 2016-05-09 11:10:44 -07:00
mqliang 9011207f18 add namespace index to rc and pod 2016-05-06 17:12:36 +08:00
Clayton Coleman fdb110c859
Fix the rest of the code 2016-04-29 17:12:10 -04:00
gmarek 3171aac57c Generated clients can return their RESTClients, RESTClient can return its RateLimiter 2016-04-27 22:15:10 +02:00
Chao Xu 8537095415 use fully qualified resource in fake clients actions 2016-04-20 19:44:40 -07:00
Chao Xu 49559a3332 Generate the typed clients under the clientset folder 2016-03-31 15:28:45 -07:00
k8s-merge-robot e35efb5765 Merge pull request #23467 from mikedanese/dont-sync-deployment
Auto commit by PR queue bot
2016-03-29 06:42:20 -07:00
Mike Danese c4305762b2 don't sync deployment when pod selector is empty 2016-03-28 10:12:41 -07:00
goltermann 32d569d6c7 Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
Janet Kuo 482efba8de Copy annotations back from RS to Deployment on rollback 2016-03-21 10:21:48 -07:00
Janet Kuo 26bcdb1bd6 Separate GetOldRS and GetNewRS in deployment controller (get and mutate) and deployment util (get only) 2016-03-15 10:23:20 -07:00
Janet Kuo 4a181dacec Fix the possible negative scale down value; add logs when scaling down 2016-03-10 16:01:18 -08:00
Madhusudan.C.S db48dcf583 ReplicaSetSpec.Template shouldn't be a pointer.
PodTemplateSpec should be consistent for all the types in extensions/v1beta1.

See PR #19510.
2016-03-09 21:24:16 -08:00
Michail Kargakis 1388919976 controller: resolve unavailable in conjuction with surge for deployments
Due to rounding down for maxUnavailable, we may end up with deployments
that have zero surge and unavailable pods something that 1) is not allowed
as per validation, 2) blocks deployments. If we end up in such a situation
set maxUnavailable to 1 on the theory that surge might not work due to
quota.
2016-03-07 13:03:41 +01:00
k8s-merge-robot 8ab8231c20 Merge pull request #22577 from jpiccari/master
Auto commit by PR queue bot
2016-03-06 00:18:53 -08:00
Joshua Piccari f5f83b076a Improve go report card by fixing typos in comments 2016-03-04 18:30:59 -08:00
Janet Kuo 59b1f5b8b5 Log contents of pods on creation/update/deletion in controllers 2016-03-04 13:57:34 -08:00
Janet Kuo 48dc694ba6 Add more comments and rename getAllReplicaSets to getAllReplicaSetsAndSyncRevision 2016-03-02 17:51:35 -08:00
Janet Kuo e42eab59bc Add comments about deployment revision update 2016-03-02 11:19:48 -08:00
Janet Kuo 67bfe5d796 Avoid copying deployment revision annotations to rs 2016-03-01 17:25:44 -08:00
Janet Kuo 1706df6242 Revision number should be updated only when it's smaller than it should be 2016-03-01 17:12:24 -08:00
k8s-merge-robot 8d90b2a61b Merge pull request #22213 from janetkuo/deployment-type-assert
Auto commit by PR queue bot
2016-03-01 00:08:48 -08:00
k8s-merge-robot 5b415a7aed Merge pull request #22210 from janetkuo/deployment-e2e
Auto commit by PR queue bot
2016-02-29 22:44:40 -08:00
Janet Kuo 1b831babe7 Move deployment Add/Update/DeleteFunc into functions 2016-02-29 18:19:48 -08:00
Janet Kuo 1960243d82 Fix type assertion error in deployment controller DeleteFunc 2016-02-29 18:19:33 -08:00
nikhiljindal 2019d18e9a Fixing a bug in deployment controller cleanupOldReplicaSets 2016-02-29 16:40:35 -08:00
Janet Kuo f129d97262 Fill missing arg in log 2016-02-29 14:26:19 -08:00
Brian Grant d0dd4f8a93 Restore expectation timeout to 5 minutes. Fix enqueueDeployment. Pass by reference.
Make names of ReplicaSets created by Deployment deterministic for idempotence.
Eliminate use of expectations in Deployment controller.
2016-02-28 07:33:07 +00:00
Brian Grant 39f0edca75 Fix expectations in Deployment. Ref #19299. 2016-02-26 06:15:26 +00:00
mqliang 06d57ec7f4 Deployment: preserve availability when maxUnavailability is not 100% 2016-02-25 13:30:06 +08:00
Brian Grant bea349a80d Merge pull request #21856 from bprashanth/ttl_race
Lock across item expiration in the ttl store.
2016-02-24 15:06:25 -08:00
Brian Grant 88056edab2 Merge pull request #21902 from janetkuo/deployment-unavailable-replicas
Fix the incorrect deployment.status.unavailableReplicas
2016-02-24 14:48:04 -08:00
Brian Grant 0b5edab208 Merge pull request #21857 from nikhiljindal/stopDeployment
fix deployment e2e flake: Update DeploymentReaper.Stop to use ObservedGeneration
2016-02-24 14:26:23 -08:00
Janet Kuo 062b9f86b9 Fix the incorrect deployment.status.unavailableReplicas 2016-02-24 14:09:49 -08:00
Prashanth Balasubramanian 7e88b3ec84 Remove ttl store from controllers. 2016-02-24 14:06:22 -08:00
Brian Grant 832bc37ee4 Merge pull request #21713 from janetkuo/deployment-actual-replicas
Report actual replicas in deployment status
2016-02-24 13:55:16 -08:00
nikhiljindal 9d7259950b Update status for paused deployments 2016-02-24 00:49:03 -08:00
kargakis 7a3d40786b switch internal field to int64 2016-02-23 19:30:33 +01:00
kargakis 418d79cb78 extensions: add observedGeneration for deployments 2016-02-23 18:47:40 +01:00
Janet Kuo 3901423272 Report actual replicas in deployment status 2016-02-22 14:28:28 -08:00
Janet Kuo da58172283 Ensure Deployment labels adopted ReplicaSets and pods 2016-02-22 10:58:54 -08:00
k8s-merge-robot be9dfcaec4 Merge pull request #21210 from mqliang/hasSync-early
Auto commit by PR queue bot
2016-02-20 09:54:12 -08:00
k8s-merge-robot eb45154996 Merge pull request #21348 from caesarxuchao/generate-fake-for-1-2
Auto commit by PR queue bot
2016-02-18 23:02:05 -08:00
mqliang ced5eb7a71 return early if has not synced 2016-02-18 11:56:52 +08:00
Chao Xu ad46715f51 generate fake client for release_1_2 2016-02-17 16:10:02 -08:00
Janet Kuo fe4bf6ff5c When syncRecreateDeployment, don't create a new RS before scaling down 2016-02-16 18:05:44 -08:00
Janet Kuo e9262df456 Scale up early when deployment creates new Replica set 2016-02-16 18:05:44 -08:00
k8s-merge-robot 3616b4bfec Merge pull request #21044 from mqliang/deployment-util
Auto commit by PR queue bot
2016-02-16 15:33:26 -08:00
Chao Xu 97aecd002a remove underscore in imported pkg names 2016-02-16 10:54:51 -08:00
mqliang fcf0d6d720 add GetValueFromIntOrPercent helper funcs 2016-02-15 23:06:02 +08:00
mqliang d96cdb93c4 move helper funcs to util/deployment.go from util.go 2016-02-15 22:36:48 +08:00
k8s-merge-robot 3b4c0beb99 Merge pull request #20868 from mqliang/int-min-max
Auto commit by PR queue bot
2016-02-13 17:32:22 -08:00
k8s-merge-robot 524aaa2f7f Merge pull request #21152 from kargakis/fix-cleanup-policy
Auto commit by PR queue bot
2016-02-13 03:47:33 -08:00
Michail Kargakis b9839d0677 controller: fix cleanup policy for deployments
Cleanup policy should run on all replica sets and not only on those that
have pods (we will not cleanup those anyway).
2016-02-12 19:14:18 +01:00
Janet Kuo 2731e5fe20 Check pod HasSynced in deployment controller manager 2016-02-12 00:11:27 -08:00
mqliang 7be9071584 create some integer min/max function 2016-02-12 11:20:11 +08:00
Madhusudan.C.S ed7ad6dcf3 Make deployments work. 2016-02-08 21:27:49 -08:00
Madhusudan.C.S 518f08aa7c Move Deployments to ReplicaSets and switch the Deployment selector to the new LabelSelector.
Update the Deployments' API types, defaulting code, conversions, helpers
and validation to use ReplicaSets instead of ReplicationControllers and
LabelSelector instead of map[string]string for selectors.

Also update the Deployment controller, registry, kubectl subcommands,
client listers package and e2e tests to use ReplicaSets and
LabelSelector for Deployments.
2016-02-08 21:27:38 -08:00
k8s-merge-robot a2c8712aee Merge pull request #20368 from mqliang/cleanup-unhealthy-replicas
Auto commit by PR queue bot
2016-02-08 20:18:25 -08:00
mqliang 86aea1d59c clean up unhealthy replicas frst for old rcs when reconcileOldRCs 2016-02-09 07:43:48 +08:00
Jan Chaloupka 4389b3f0d6 Rewritte util.* -> wait.* wherever reasonable 2016-02-07 12:02:20 +01:00
k8s-merge-robot b45a94bc78 Merge pull request #20765 from janetkuo/remove-podtemplate-key
Auto commit by PR queue bot
2016-02-06 00:44:47 -08:00
Janet Kuo bb0c5fea0e Fix test failure 2016-02-05 17:26:07 -08:00
Mike Danese b1743a6887 this is a manual reversion of #20702
I can't revert with github which says "Sorry, this pull request couldn’t be
reverted automatically. It may have already been reverted, or the content may
have changed since it was merged."

Reverts commit: 0c191e787b
2016-02-05 16:34:02 -08:00
Janet Kuo 7e9fb97b7d Remove UniqueLabelKey from deployment spec 2016-02-05 16:21:44 -08:00
Chao Xu 184440f8ef rename release_1_2 to internalclientset 2016-02-05 14:02:28 -08:00
k8s-merge-robot 4ecfe4d207 Merge pull request #20678 from janetkuo/dont-copy-apply-annotation
Auto commit by PR queue bot
2016-02-05 05:23:08 -08:00
gmarek 0c191e787b Split controller flags between controllers 2016-02-05 12:17:51 +01:00
Janet Kuo 40849a5b50 Skip apply annotation when copying annotations from deployment to RC 2016-02-04 23:30:31 -08:00
Chao Xu 1b047f8e67 rename legacy to core 2016-02-04 14:26:56 -08:00
Saad Ali 0952dcd349 Merge pull request #20389 from mqliang/deployment-MinReadySeconds
Move MinReadySeconds out of RollingUpdateDeployment
2016-02-03 22:44:14 -08:00
k8s-merge-robot 16aa40cc33 Merge pull request #20035 from janetkuo/record-command
Auto commit by PR queue bot
2016-02-03 20:19:08 -08:00
k8s-merge-robot 65ebe19164 Merge pull request #20584 from caesarxuchao/release_1_2
Auto commit by PR queue bot
2016-02-03 19:46:27 -08:00
Chao Xu f9f5736b01 grep sed 2016-02-03 13:06:07 -08:00
Janet Kuo e3cb44aaff Copy deployment's annotations to its RC 2016-02-03 10:19:06 -08:00
Janet Kuo 5088d0e147 Record kubectl commands 2016-02-03 10:19:05 -08:00
mqliang c4a1ab42e3 Move MinReadySeconds out of RollingUpdateDeployment 2016-02-03 11:38:11 +08:00