Commit Graph

1243 Commits (ff998ab5667b19a07ccc83778b8160580e137f62)

Author SHA1 Message Date
Jan Safranek 79b91b9ee0 Refactor persistent volume initialization
There should be only one initialization function, shared by the real
controller and unit tests.
2016-05-18 10:06:51 +02:00
Jan Safranek 7f549511e2 Big move and rename
- remove persistentvolume_ prefix from all files
- split controller.go into controller.go and controller_base.go (to have them
  under 1500 lines for github)
2016-05-18 10:06:51 +02:00
Jan Safranek c5fe1f943c Fixed binder logging
- we need the original volume/claim in error paths
- don't report version conflicts as errors (they happen pretty often and we
  recover from them)
2016-05-18 10:06:51 +02:00
Jan Safranek 41adcc5496 Speed up binding of provisioned volumes
This fixes e2e test for provisioning - it expects that provisioned volumes
are bound quickly.

Majority of this patch is update of test framework needs to initialize the
controller appropriately.
2016-05-18 10:06:51 +02:00
Jan Safranek c6f05c8056 provisioning: Add unit testso for provisioning errors. 2016-05-18 10:06:51 +02:00
Jan Safranek c24b33793c unit test: Add possibility to inject kubeclient errors. 2016-05-18 10:06:51 +02:00
Jan Safranek 92dc159ab6 Delete provisioned volumes that are not needed.
We should delete volumes that are provisioned for a claim and the claim
gets bound to different volume during the provisioning.
2016-05-18 10:06:51 +02:00
Jan Safranek 9fb0f7a3fd provisioning: Unit tests 2016-05-18 10:06:51 +02:00
Jan Safranek 514d595881 provisioning: Implement provisioner 2016-05-18 10:06:51 +02:00
Jan Safranek 75b0e2ad63 provisioning: Refactor volume plugins.
NewPersistentVolumeTemplate() and Provision() are merged into one call.
2016-05-18 10:06:51 +02:00
Jan Safranek dd7890c362 delete: Implement Deleter 2016-05-18 10:06:51 +02:00
Jan Safranek 22e68d4622 recycler: unit tests
- Add reclaim policy to newVolume() call.
- Implement reactor Volumes().Get().
- Implement mock volume plugin.
- Add recycler tests.
- Add a synchronization condition to controller.scheduleOperation
  - we need to pause the controller here, let the test to do some bad things
    to the controller and test error cases in recycleVolumeOperation.

Test framework gets more and more complicated... But this is the last piece,
I promise.
2016-05-18 10:06:24 +02:00
Jan Safranek a08d826ca5 Make a separate functions to emit events and change status.
These two seem to be always used together.
2016-05-18 10:06:24 +02:00
Jan Safranek 1feb346830 recycler: implement recycler
Also update the old unit test to pass. New unit tests will be added in
subsequent commit.
2016-05-18 10:06:24 +02:00
Jan Safranek 56cae2dc20 unit test framework: Wait for all running operations to finish during all tests. 2016-05-18 10:06:24 +02:00
Jan Safranek cf68370371 recycler: Maintain a list of long-running operations.
We need to keep list of running recyclers, deleters and provisioners in
memory in order not to start a new recycling/deleting/provisioning twice
for the same volume/claim.

This will be eventually replaced by GoRoutineMap from PR #24838.
2016-05-18 10:06:24 +02:00
Jan Safranek 4e47f69cba recycler: Implement volume host interfaces.
We need the controller to implement volume.VolumeHost interface to be able
to call recycle plugins.
2016-05-18 10:06:24 +02:00
Jan Safranek a17f0d5949 Move release logic to standalone function. 2016-05-18 10:06:23 +02:00
Jan Safranek 7b73384fda Add controller method tests. 2016-05-18 10:05:14 +02:00
Tim Hockin 152c86ab06 Make name validators return string slices 2016-05-18 00:48:01 -07:00
gmarek 6d27009db1 NodeController doesn't evict Pods if no Nodes are Ready 2016-05-17 23:03:21 +02:00
derekwaynecarr 3075d8554f Have quota controller use a rate limiter to avoid hot-loops 2016-05-17 11:09:30 -04:00
deads2k 7a7fe3abb8 prevent namespace cleanup hotloop 2016-05-17 11:04:48 -04:00
k8s-merge-robot a24f03c3c9 Merge pull request #25669 from deads2k/fix-npe
Automatic merge from submit-queue

prevent nil pointer when starting controllers before running the shar…

Fixes https://github.com/kubernetes/kubernetes/issues/25643.

https://github.com/kubernetes/kubernetes/pull/23795 changed initialization order, so the controller isn't guaranteed to be present at startup.

@mqliang @wojtek-t I'm pretty sure that we're not guaranteed to get back the correct `cache.Indexer` or `cache.Store` either.  I'll look at re-plumbing the `AddIndexer` path to use the same instance so that its safe to use again.
2016-05-17 07:54:12 -07:00
Jan Safranek af295719f6 Add events. 2016-05-17 15:14:11 +02:00
Jan Safranek 61019b2401 Process deleted PVs
To speed up marking claims as "lost".
2016-05-17 15:14:10 +02:00
Jan Safranek 50b61ae168 Add "multi-sync" tests.
These test will call syncVolume/syncClaim until they reach consistent state.
2016-05-17 15:14:09 +02:00
Jan Safranek f4f252e81c Implement syncVolume. 2016-05-17 15:14:08 +02:00
Jan Safranek 5949b956f5 Implement syncClaim with bound claims. 2016-05-17 15:14:06 +02:00
Jan Safranek eff6b50b93 Bind unbound claims in syncClaim. 2016-05-17 15:14:06 +02:00
Jan Safranek e620bfc9cc Add unit test framework.
It's quite complicated one, see subsequent commits for usage.
2016-05-17 15:14:05 +02:00
Jan Safranek a195802d3e Make standalone function to check for (pre-)bound volumes.
Note the semantic change, we now check for UID=""
2016-05-17 15:14:04 +02:00
Jan Safranek 20305f9235 Don't process events until fully initialized.
We do not want to process any volume / claim events until both PV and claim
caches are fully loaded.
2016-05-17 15:14:03 +02:00
Jan Safranek 71aa892a86 Implement volume controller skeleton.
This is a simple controller that watches changes of PersistentVolumes and
PersistentVolumeClaims.
2016-05-17 15:14:02 +02:00
Jan Safranek b86e5923b2 Rename types.go to persistentvolume_index.go
With some changes:
- make some method private, nobody seems to use them.
- adapt to framework.NewIndexerInformer instead of using custom cache.
2016-05-17 15:14:01 +02:00
k8s-merge-robot a57fd9adfb Merge pull request #25651 from 249043822/249043822-patch-1
Automatic merge from submit-queue

MatchingCache lock optimize
2016-05-17 01:56:03 -07:00
deads2k 4a39cc9dd3 make addIndexers safe for sharedInformer 2016-05-16 10:15:05 -04:00
deads2k 4af1c546b4 prevent nil pointer when starting controllers before running the shared informer 2016-05-16 09:53:45 -04:00
zhangke 49f4f242a8 Update lookup_cache.go
MatchingCache struct hold a RWLock, so Get operation of Cache should use RLock properly, nor WLock
2016-05-16 15:26:30 +08:00
Wojciech Tyczynski 626ff900ad Explicitly enqueue controllers on failures and increase resync period 2016-05-16 08:52:01 +02:00
Chao Xu c73406bcfe the garbage collector controller 2016-05-15 16:04:19 -07:00
k8s-merge-robot 3b18a12eb9 Merge pull request #24736 from jayunit100/hpa-computeimpl
Automatic merge from submit-queue

Horizontal autoscalaer tolerance breaching verifier

@piosz @jszczepkowski This is the original HPA test without the other modifications, it makes explicit the mathematics of the logic in case changes ever occur.

<!-- 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/24736)
<!-- Reviewable:end -->
2016-05-14 21:28:34 -07:00
zhouhaibing089 af3e2357ea use monotonic now in TestDelNode 2016-05-15 10:58:29 +08:00
k8s-merge-robot f6c2560f68 Merge pull request #25565 from wojtek-t/traces_in_replication_controller
Automatic merge from submit-queue

Add traces to ReplicationController

Ref #25563
2016-05-13 03:41:31 -07:00
Wojciech Tyczynski 327c9486e1 Add traces to ReplicationController 2016-05-13 10:30:45 +02:00
jay vyas db3d1b6942 horizontal pod autoscaler tolerance breaching verifier 2016-05-12 22:27:42 -04:00
Saad Ali 19169889d4 Merge pull request #24908 from pmorie/daemon-controller-loc
Reduce LOC in daemon controller tests
2016-05-12 15:51:55 -07:00
k8s-merge-robot 08440b5dcc Merge pull request #24836 from Clarifai/gpu-impl
Automatic merge from submit-queue

WIP v0 NVIDIA GPU support

```release-note
* Alpha support for scheduling pods on machines with NVIDIA GPUs whose kubelets use the `--experimental-nvidia-gpus` flag, using the alpha.kubernetes.io/nvidia-gpu resource 
```

Implements part of #24071 for  #23587

I am not familiar with the scheduler enough to know what to do with the scores. Mostly punting for now.

Missing items from the implementation plan: limitranger, rkt support, kubectl
support and docs

cc @erictune @davidopp @dchen1107 @vishh @Hui-Zhi @gopinatht
2016-05-12 14:04:15 -07:00
k8s-merge-robot 15919f336f Merge pull request #25284 from bprashanth/service_unready
Automatic merge from submit-queue

Add a service annotation that allows endpoints for unready pods

See https://github.com/kubernetes/kubernetes/issues/25283 for context 
@smarterclayton @thockin yes?

<!-- 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/25284)
<!-- Reviewable:end -->
2016-05-12 12:05:27 -07:00
Wojciech Tyczynski 2706df102b Merge pull request #25465 from wojtek-t/client_renegotiation
Support renegotiation in client based on response ContentType
2016-05-12 10:21:10 +02:00
Wojciech Tyczynski 5d046fed41 Fix tests for renegotiation 2016-05-12 08:21:11 +02:00
k8s-merge-robot 4513b7c2a4 Merge pull request #25495 from davidopp/change-owners
Automatic merge from submit-queue

Remove myself from a bunch of OWNERS files

For the time being I am too overloaded to do non scheduler/admission related reviews that aren't explicitly assigned to me.

cc/ @brendandburns
2016-05-11 19:18:33 -07:00
k8s-merge-robot ac50a70992 Merge pull request #25459 from errm/misspell
Automatic merge from submit-queue

Corrects some misspellings in comments

This should help to make
https://goreportcard.com/report/k8s.io/kubernetes#misspell
look a little nicer.
2016-05-11 19:18:30 -07:00
saadali b83af3d481 Change "speter.net/go/exp/math/dec/inf" dependency
to "https://gopkg.in/inf.v0"
2016-05-11 17:01:28 -07:00
David Oppenheimer 4ae37df7b7 Remove myself from a bunch of OWNERS files, as I am too overloaded
to do so many code reviews right now.
2016-05-11 13:34:51 -07:00
k8s-merge-robot e0f7de94f5 Merge pull request #25279 from piosz/hpa-ga
Automatic merge from submit-queue

Move internal types of hpa from pkg/apis/extensions to pkg/apis/autoscaling

ref #21577

@lavalamp could you please review or delegate to someone from CSI team?
@janetkuo could you please take a look into the kubelet changes?

cc @fgrzadkowski @jszczepkowski @mwielgus @kubernetes/autoscaling
2016-05-11 13:19:42 -07:00
k8s-merge-robot 7e7465e2d4 Merge pull request #25423 from caesarxuchao/dynamic-listoptions
Automatic merge from submit-queue

Let the dynamic client take runtime.Object instead of v1.ListOptions

so that I can pass whatever version of ListOptions to the List/Watch/DeleteCollection methods.

cc @krousey
2016-05-11 10:59:21 -07:00
Ed Robinson afdbad078a
Corrects some misspellings in comments
This should help to make
https://goreportcard.com/report/k8s.io/kubernetes#misspell
look a little nicer.
2016-05-11 08:16:13 +01:00
Fabio Yeon 0809b2be4d Merge pull request #25119 from XiaoningDing/api-shared-annotations
move shared annotations to new api/annotations package
2016-05-10 19:34:17 -07:00
derekwaynecarr 31970780cc Fix resource quota controller shutting down its worker threads 2016-05-10 19:50:36 -04:00
derekwaynecarr ff4a5e2068 Allow a replication manager to be created that does not record events 2016-05-10 19:50:36 -04:00
Chao Xu c7d111280f let dynamic client take runtime.Object instead of v1.ListOptions 2016-05-10 16:05:31 -07:00
Prashanth Balasubramanian 74ccd24574 Endpoints controller respects unready service annotation 2016-05-10 14:20:10 -07:00
Prashanth Balasubramanian 377957a173 PetSet doesn't scale if it finds unready pets 2016-05-10 13:03:28 -07:00
Jan Safranek 6fa527a460 Remove all three PersistentVolume controllers.
We will add new ones gradually in smaller chunks.
2016-05-10 17:57:54 +02:00
Rudi Chiarito 362c763fca WIP v0 NVIDIA GPU support
Implements part of #24071

I am not familiar with the scheduler enough to know what to do with the scores. Punting for now.

Missing items from the implementation plan: limitranger, rkt support, kubectl
support and user docs
2016-05-09 19:20:05 -04:00
saadali 214b4c28bc Skeleton of new attach detach controller 2016-05-09 11:34:11 -07:00
jianhuiz 441e206671 move server client shared annotations to new api/annotations package 2016-05-09 11:10:44 -07:00
Piotr Szczesniak 212b459817 Move internal types of hpa from pkg/apis/extensions to pkg/apis/autoscaling 2016-05-09 09:18:13 +02:00
k8s-merge-robot 2f1a9dd65c Merge pull request #24696 from saad-ali/attachControllerSkeleton
Automatic merge from submit-queue

Add data structure for storing attach detach controller state.

This PR introduces the data structure for maintaining the in-memory state for the new attach/detach controller (#20262).
2016-05-08 23:44:38 -07:00
k8s-merge-robot 5988080396 Merge pull request #23795 from mqliang/rc-ns-index
Automatic merge from submit-queue

add namespace index for cache

@wojtek-t 

Implement in this approach make the change of lister.go small, but we should replace all `NewInformer()` to `NewIndexInformer()`, even when someone not want to filter by namespace(eg. gc_controller and scheduler). Any suggestion?
2016-05-08 12:09:01 -07:00
Robert Bailey 96aa3d7176 Merge pull request #24929 from mwielgus/heapster_godeps_bump
Update Heapster api types location in Godeps
2016-05-06 13:57:35 -07:00
mqliang c10f43a2e5 implement AddIndexers for SharedIndexInformer 2016-05-06 21:23:18 +08:00
mqliang 9011207f18 add namespace index to rc and pod 2016-05-06 17:12:36 +08:00
k8s-merge-robot f5e1e9a227 Merge pull request #24912 from bprashanth/petset_controller
Automatic merge from submit-queue

Petset controller

Took longer than I expected. Main parts of this pr are:
1. Identity generation based on petset spec (volumes are mapped per discussion in #18016)
2. Ensure that we create/delete pets in sequence
3. Ensuring that we create, wait for healthy, create; or delete, wait for terminationGrace, delete
4. Controller that watches apiserver and drives actual -> desired

PVCs are not deleted, yet.
2016-05-05 08:58:23 -07:00
k8s-merge-robot 67b8a3dd16 Merge pull request #24776 from tnachen/autoscaler_docs
Automatic merge from submit-queue

Add docs for podautoscaler package

Add missing docs for podautoscaler package in controllers.
2016-05-04 21:26:31 -07:00
Prashanth Balasubramanian 6bc3052551 PetSet alpha controller 2016-05-04 18:39:17 -07:00
k8s-merge-robot 9d80a047d2 Merge pull request #25109 from lavalamp/fix-time-sleep
Automatic merge from submit-queue

remove inappropriate time.Sleep

Fixes #24815

@liggitt since you added this in #8494 :)
2016-05-04 18:13:42 -07:00
k8s-merge-robot 93e3df8e55 Merge pull request #24789 from wojtek-t/use_proper_codec_in_client
Automatic merge from submit-queue

Use proper codec in client
2016-05-04 11:00:04 -07:00
Marcin Wielgus 8e90cded97 Update Heapster api types location in Godeps 2016-05-04 16:27:12 +02:00
Wojciech Tyczynski 3aadafd411 Use NegotiatedSerializer in client 2016-05-04 10:57:36 +02:00
Daniel Smith d1de30cd6c remove inappropriate time.Sleep 2016-05-03 16:37:28 -07:00
saadali 71302d1163 Add data structure for storing attach detach controller state. 2016-05-03 14:11:10 -07:00
Kris 28132be07e Redo Unstructured to have accessor methods
Add accessor methods that implement pkg/api/unversioned.ObjectKind,
pkg/api/meta.Object, pkg/api/meta.Type and pkg/api/meta.List.

Removed the convenience fields since writing to them was not reflected
in serialized JSON.
2016-05-03 14:07:28 -07:00
Timothy Chen d218f55dd5 Add docs for podautoscaler package 2016-04-29 18:39:48 -07:00
Clayton Coleman fdb110c859
Fix the rest of the code 2016-04-29 17:12:10 -04:00
k8s-merge-robot ad67363c12 Merge pull request #24362 from ArtfulCoder/hostname-field
Automatic merge from submit-queue

Promote Pod Hostname & Subdomain to fields (were annotations)

Deprecating the podHostName, subdomain and PodHostnames annotations and created corresponding new fields for them on PodSpec and Endpoints types.

Annotation doc: #22564
Annotation code: #20688
2016-04-29 01:06:45 -07:00
Abhishek Shah 8a3ed48808 Added Hostname and Subdomain field to Pod.Spec 2016-04-28 10:56:56 -07:00
k8s-merge-robot d0b887e4e0 Merge pull request #24595 from zhouhaibing089/httpserverclose
Automatic merge from submit-queue

Uncomment the code that caused by #19254

Fix https://github.com/kubernetes/kubernetes/issues/24546.

@lavalamp
2016-04-28 01:41:16 -07:00
Paul Morie b7089f81da Reduce LOC in daemon controller tests 2016-04-28 00:04:45 -04:00
k8s-merge-robot 4a0e0826e5 Merge pull request #24220 from gmarek/metrics
Automatic merge from submit-queue

Generated clients can return their RESTClients, RESTClient can return its RateLimiter

cc @lavalamp @krousey @wojtek-t @smarterclayton @timothysc 

Ref. #22421
2016-04-27 19:25:38 -07:00
gmarek 3171aac57c Generated clients can return their RESTClients, RESTClient can return its RateLimiter 2016-04-27 22:15:10 +02:00
Alex Robinson ed15931935 Fix DeletingLoadBalancer event generation.
Also patch up a log statement to log the service's namespace and name
rather than potentially just logging `kind:"" apiVersion:""`.
2016-04-27 00:27:55 +00:00
k8s-merge-robot f79c7d12c6 Merge pull request #24382 from smarterclayton/fix_rlqt
Automatic merge from submit-queue

RateLimitedQueue TestTryOrdering could fail under load

Remove the possibility of contention in the test by providing a
synthetic Now() function.

Fixes #24125
2016-04-26 08:40:58 -07:00
zhouhaibing089 bf1a3f99c0 Uncomment the code that cause by #19254 2016-04-25 23:21:31 +08:00
Maciej Szulik a3b4447305 Move internal types of job from pkg/apis/extensions to pkg/apis/batch 2016-04-25 11:03:54 +02:00
Clayton Coleman 08f136b8d9
RateLimitedQueue TestTryOrdering could fail under load
Remove the possibility of contention in the test by providing a
synthetic Now() function.
2016-04-24 20:03:04 -04:00
k8s-merge-robot ea15d792a1 Merge pull request #24470 from deads2k/shared-cache-02
Automatic merge from submit-queue

update controllers watching all pods to share an informer

This plumbs the shared pod informer through the various controllers to avoid duplicated watches.
2016-04-23 17:18:47 -07:00
k8s-merge-robot de9c1a2a51 Merge pull request #24247 from sdminonne/service_loadbalancer_quotas
Automatic merge from submit-queue

Adding loadBalancer services to quota system

@derekwaynecarr follow up to #22154.
2016-04-23 10:22:45 -07:00
k8s-merge-robot 72e51dacfe Merge pull request #24034 from AdoHe/log_spam
Automatic merge from submit-queue

remove log spam from nodecontroller

@thockin @quinton-hoole ptal.
2016-04-21 12:11:05 -07:00
deads2k 60fe17d338 update resource quota controller for shared informers 2016-04-21 08:20:39 -04:00
deads2k 8c4e3af1a3 switch job controller to shared informer 2016-04-21 08:20:39 -04:00
deads2k 8b707016f9 convert daemonset controller to SharedInformer 2016-04-21 08:20:39 -04:00
Chao Xu 8537095415 use fully qualified resource in fake clients actions 2016-04-20 19:44:40 -07:00
Marcin Wielgus c5a64c1f44 Add locks in HPA test 2016-04-20 22:29:01 +02:00
k8s-merge-robot db28f73c3b Merge pull request #24282 from goltermann/spelling
Automatic merge from submit-queue

Fix misspellings in comments
2016-04-19 03:47:07 -07:00
deads2k f0c33d65b6 start sharing the pod cache and list/watch 2016-04-18 08:51:55 -04:00
deads2k 96d1f48b0b add SharedInformer 2016-04-18 08:51:55 -04:00
goltermann c226c9435b Fix misspellings in comments.
https://goreportcard.com/report/k8s.io/kubernetes#misspell
2016-04-14 13:57:45 -07:00
Salvatore Dario Minonne f4ed4998ff Adding loadbalancer services to quota 2016-04-14 14:06:42 +02:00
Chao Xu 31cd4c124d handle empty perferredVersion 2016-04-13 13:18:31 -07:00
k8s-merge-robot 8eb19c7889 Merge pull request #22154 from sdminonne/service_nodeports_quotas
Automatic merge from submit-queue

Adding nodeports services to quota

To fix #21677
@derekwaynecarr
2016-04-13 05:50:27 -07:00
k8s-merge-robot acf9492cb1 Merge pull request #23660 from goltermann/vetclean
Automatic merge from submit-queue

Additional go vet fixes

Mostly:
- pass lock by value
- bad syntax for struct tag value
- example functions not formatted properly
2016-04-12 06:22:16 -07:00
Salvatore Dario Minonne 15b7577454 Adding nodeports services to quota 2016-04-12 11:09:16 +02:00
AdoHe e52f71f78d remove log spam from nodecontroller 2016-04-10 22:51:29 -04:00
Jeff Lowdermilk c3dac2d18b Merge pull request #23449 from swagiaal/pv-recycle-race-logging
Add loging to the recently recycled PV section
2016-04-08 13:30:23 -07:00
Mike Danese 14284291da only include running and pending pods in daemonset should place calculation 2016-04-06 12:30:50 -07:00
goltermann 696423e044 Vet fixes, mostly pass lock by value errors. 2016-04-06 11:27:40 -07:00
Sami Wagiaalla 99744df6ee Add loging to the recently recycled PV section 2016-04-04 10:07:03 -04:00
k8s-merge-robot 9ad3b9d669 Merge pull request #23463 from mikedanese/ds-event
Automatic merge from submit-queue

add an event for when a daemonset can't place a pod due to insufficen…

…t resource or port conflict

https://github.com/kubernetes/kubernetes/issues/23013#issuecomment-201076147
2016-04-03 05:16:31 -07:00
k8s-merge-robot 7d7ca5ab72 Merge pull request #23608 from caesarxuchao/mv-typed-clients
Automatic merge from submit-queue

Move typed clients into clientset folder

Move typed clients from `pkg/client/typed/` to `pkg/client/clientset_generated/${clientset_name}/typed`.

The first commit changes the client-gen, the last commit updates the doc, other commits are just moving things around.

@lavalamp @krousey
2016-04-02 19:31:40 -07:00
k8s-merge-robot df20dfb2e4 Merge pull request #23548 from ncdc/fix-23078
Automatic merge from submit-queue

Check claimRef UID when processing a recycled PV, take 2

Reorder code a bit so it doesn't allow a case where you get some error other than "not found"
combined with a non-nil Claim.

Add test case.

cc @kubernetes/rh-cluster-infra @kubernetes/rh-storage @liggitt
2016-04-02 05:58:55 -07:00
Chao Xu 49559a3332 Generate the typed clients under the clientset folder 2016-03-31 15:28:45 -07:00
Wojciech Tyczynski 2699be2e7e Switch api.ObjetaMetaFor to meta.Accessor 2016-03-31 17:52:31 +02:00
k8s-merge-robot 39bcb81e21 Merge pull request #23579 from edevil/fix_typo
Automatic merge from submit-queue

Fixed typo.

Corrected log message.
2016-03-30 15:38:50 -07:00
Alex Robinson b2ceb3e206 Merge pull request #22917 from liggitt/namespace_controller_logging
Decrease verbosity of namespace controller trace logging
2016-03-30 10:11:37 -07:00
André Cruz 34a273f1eb Fixed typo. 2016-03-29 16:10:11 +01: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 fb4a5c6c42 add an event for when a daemonset can't place a pod due to insufficent resource or port conflict 2016-03-28 13:58:51 -07:00
Andy Goldstein 5ce2e6d576 Check claimRef UID when processing a recycled PV, take 2
Reorder code a bit so it doesn't allow a case where you get some error other than "not found"
combined with a non-nil Claim.

Add test case.
2016-03-28 15:25:17 -04:00
Mike Danese c4305762b2 don't sync deployment when pod selector is empty 2016-03-28 10:12:41 -07:00
k8s-merge-robot 2205a30348 Merge pull request #23368 from saad-ali/renameBuilderCleaner
Auto commit by PR queue bot
2016-03-26 13:01:25 -07:00
k8s-merge-robot e44ad7a083 Merge pull request #22735 from resouer/throttle-dev
Auto commit by PR queue bot
2016-03-26 06:44:48 -07:00
goltermann 32d569d6c7 Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
saadali 79012f6d53 Rename volume.Builder to Mounter and volume.Cleaner to Unmounter 2016-03-25 11:29:58 -07:00
Marcin Wielgus c640256917 Shorten execution time of HPA tests 2016-03-25 13:02:55 +01:00
k8s-merge-robot a577e16d8d Merge pull request #23078 from swagiaal/pv-recycle-race
Auto commit by PR queue bot
2016-03-25 03:48:25 -07:00
k8s-merge-robot 4e4ad61260 Merge pull request #23366 from goltermann/vet
Auto commit by PR queue bot
2016-03-24 21:50:56 -07:00
harry 8472cfa214 Refactor throttle into util pkg
Fix missing throttle.go
2016-03-25 08:32:23 +08:00
Mike Danese 625ce91d54 don't sync daemonsets or controllers with selectors that match all pods 2016-03-24 14:46:49 -07:00
Chris Batey and James Ravn be9ce30897 Change LoadBalancer methods to take api.Service
This is a better abstraction than passing in specific pieces of the
Service that each of the cloudproviders may or may not need. For
instance, many of the providers don't need a region, yet this is passed
in. Similarly many of the providers want a string IP for the load
balancer, but it passes in a converted net ip. Affinity is unused by
AWS. A provider change may also require adding a new parameter which has
an effect on all other cloud provider implementations.

Further, this will simplify adding provider specific load balancer
options, such as with labels or some other metadata. For example, we
could add labels for configuring the details of an AWS elastic load
balancer, such as idle timeout on connections, whether it is
internal or external, cross-zone load balancing, and so on.

Authors: @chbatey, @jsravn
2016-03-23 10:48:11 +00:00
goltermann 34d4eaea08 Fixing several (but not all) go vet errors. Most are around string formatting, or unreachable code. 2016-03-22 17:26:50 -07:00
k8s-merge-robot 562516b60e Merge pull request #22838 from resouer/util-pkg
Auto commit by PR queue bot
2016-03-21 19:21:33 -07:00
Janet Kuo 482efba8de Copy annotations back from RS to Deployment on rollback 2016-03-21 10:21:48 -07:00
harry b0900bf0d4 Refactor diff into sub pkg 2016-03-21 20:21:39 +08:00
Xiaogang Xin f5c631e220 kubernetes/kubernetes#23034 Fix controller-manager race condition issue which cause endpoints flush during restart 2016-03-17 11:08:48 +08:00
Sami Wagiaalla b77abe56a2 Check claimRef UID when processing a recycled PV 2016-03-16 17:00:05 -04: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
Jordan Liggitt 655048add9 Decrease verbosity of namespace controller trace logging 2016-03-12 22:56:31 -05:00
Jordan Liggitt d008283942 Tolerate multiple registered versions in a single group 2016-03-12 12:49:41 -05:00
Chao Xu a6240c1ab8 add FullyLabeledReplicas in Replicaset Status and ReplicationController Status 2016-03-11 23:55:04 -08: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
Madhusudan.C.S fe26381c90 Support for both map-based and set-based selectors in extensions/v1beta1.Scale
Here are a list of changes along with an explanation of how they work:
1. Add a new string field called TargetSelector to the external version of
   extensions Scale type (extensions/v1beta1.Scale). This is a serialized
   version of either the map-based selector (in case of ReplicationControllers)
   or the unversioned.LabelSelector struct (in case of Deployments and
   ReplicaSets).
2. Change the selector field in the internal Scale type (extensions.Scale) to
   unversioned.LabelSelector.
3. Add conversion functions to convert from two external selector fields to a
   single internal selector field. The rules for conversion are as follows:
   i.   If the target resource that this scale targets supports LabelSelector
        (Deployments and ReplicaSets), then serialize the LabelSelector and
        store the string in the TargetSelector field in the external version
        and leave the map-based Selector field as nil.
   ii.  If the target resource only supports a map-based selector
        (ReplicationControllers), then still serialize that selector and
	store the serialized string in the TargetSelector field. Also,
	set the the Selector map field in the external Scale type.
   iii. When converting from external to internal version, parse the
        TargetSelector string into LabelSelector struct if the string isn't
	empty. If it is empty, then check if the Selector map is set and just
	assign that map to the MatchLabels component of the LabelSelector.
   iv.  When converting from internal to external version, serialize the
        LabelSelector and store it in the TargetSelector field. If only
	the MatchLabel component is set, then also copy that value to
	the Selector map field in the external version.
4. HPA now just converts the LabelSelector field to a Selector interface
   type to list the pods.
5. Scale Get and Update etcd methods for Deployments and ReplicaSets now
   return extensions.Scale instead of autoscaling.Scale.
6. Consequently, SubresourceGroupVersion override and is "autoscaling"
   enabled check is now removed from pkg/master/master.go
7. Other small changes to labels package, fuzzer and LabelSelector
   helpers to piece this all together.
8. Add unit tests to HPA targeting Deployments and ReplicaSets.
9. Add an e2e test to HPA targeting ReplicaSets.
2016-03-09 17:54:17 -08:00
Mike Danese e0431d8409 Revert "Revert "continuously delete pods on nodes that don't exist""
This reverts commit da0a72f2c2.
2016-03-08 11:00:35 -08:00
Marek Grabowski da0a72f2c2 Revert "continuously delete pods on nodes that don't exist" 2016-03-08 09:38:53 +01:00
Mike Danese c404e7c6d1 continuously delete pods on nodes that don't exist 2016-03-07 16:01:33 -08:00
k8s-merge-robot dc46ae031d Merge pull request #22336 from cjcullen/evict
Auto commit by PR queue bot
2016-03-07 08:42:40 -08:00
k8s-merge-robot ec9c67d65d Merge pull request #22516 from kargakis/resolve-fenceposts-together
Auto commit by PR queue bot
2016-03-07 07:37:12 -08:00
CJ Cullen e7fc608df7 Immediately evict pods and delete node when cloud says node is gone. 2016-03-07 06:07:51 -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
Wojciech Tyczynski e2ebc50648 Don't sync all objects for replenishment as often as ResourceQuota. 2016-03-07 08:31:09 +01:00
k8s-merge-robot 95ab1936ea Merge pull request #22559 from krousey/discbreak
Auto commit by PR queue bot
2016-03-06 12:47:07 -08: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
k8s-merge-robot c7a50206c0 Merge pull request #22579 from bprashanth/graceful_rc
Auto commit by PR queue bot
2016-03-05 23:42:11 -08:00
k8s-merge-robot 005c67a1ef Merge pull request #22445 from derekwaynecarr/quota_replenish_perf
Auto commit by PR queue bot
2016-03-05 22:00:37 -08:00
Prashanth Balasubramanian 7f5c9bd676 Track deletes in rc manager with a UID expectations cache. 2016-03-05 18:18:18 -08:00
k8s-merge-robot 2808973503 Merge pull request #22038 from mqliang/daemonset-cache
Auto commit by PR queue bot
2016-03-05 03:38:55 -08:00
k8s-merge-robot 20838c3314 Merge pull request #22560 from janetkuo/pod-update-delete-log
Auto commit by PR queue bot
2016-03-04 23:32:35 -08:00
Joshua Piccari f5f83b076a Improve go report card by fixing typos in comments 2016-03-04 18:30:59 -08:00
k8s-merge-robot d9d0fdecd3 Merge pull request #22570 from janetkuo/inactive-pods-not-available
Auto commit by PR queue bot
2016-03-04 18:11:20 -08:00
Janet Kuo f666e87217 Filter out inactive pods first when determining if it's available 2016-03-04 16:32:32 -08:00
k8s-merge-robot 3f8086192b Merge pull request #21982 from justinsb/fix_21952
Auto commit by PR queue bot
2016-03-04 16:23:45 -08:00
Janet Kuo 59b1f5b8b5 Log contents of pods on creation/update/deletion in controllers 2016-03-04 13:57:34 -08:00
Kris dbde4fd798 Move the discovery client to its own package 2016-03-04 13:44:52 -08:00
Abhishek Shah a3c00aadd5 Specify hostname, subdomain via annotation on podspec.
The hostname is a DNS A record, if the subdomain maps to a service name
in the same namespace
2016-03-04 13:28:33 -08:00
k8s-merge-robot 57670edc15 Merge pull request #22345 from fgrzadkowski/hpa_events
Auto commit by PR queue bot
2016-03-04 09:18:21 -08:00
k8s-merge-robot 18d8e7b756 Merge pull request #22052 from mwielgus/hpa-average
Auto commit by PR queue bot
2016-03-04 08:38:38 -08:00
k8s-merge-robot 0e3469dce3 Merge pull request #22183 from pmorie/config-quota
Auto commit by PR queue bot
2016-03-04 03:12:51 -08:00
Prashanth B a1118b2e72 Merge pull request #22503 from bprashanth/rc_logs
Add some logging around deletion timestamps for RC scaling.
2016-03-04 00:15:24 -08:00
Prashanth Balasubramanian c61bf4d665 Add some logging around deletion timestamps for RC scaling. 2016-03-03 23:10:37 -08:00
k8s-merge-robot 258eac505f Merge pull request #21400 from derekwaynecarr/namespace_deletion_discovery
Auto commit by PR queue bot
2016-03-03 21:33:01 -08:00
k8s-merge-robot 601104f201 Merge pull request #22472 from caesarxuchao/log-nodecontroller
Auto commit by PR queue bot
2016-03-03 20:19:06 -08:00
Jeff Lowdermilk 1e70f17c6a Merge pull request #22416 from mikedanese/ds-fixer
Fix daemonset flapping when using a host port
2016-03-03 15:21:14 -08:00
Chao Xu 828fe5df2f remove V(2) 2016-03-03 14:54:33 -08:00
derekwaynecarr 04b809573f Quota replenishment should only add quotas that track the resource 2016-03-03 12:50:25 -05:00
Filip Grzadkowski 69b3c6aa39 Add events to improve understandability of HPA controller decisions.
Fixes #22174
2016-03-03 12:05:51 +01:00
Filip Grzadkowski b5c9af9762 Use controller framework in HPA controller.
Ref #22174
2016-03-03 11:55:44 +01:00
Mike Danese cd6c288d45 Fix daemonset flapping when using a host port 2016-03-02 22:22:14 -08:00
derekwaynecarr beace2dbad Fix incorrect logging string that could cause confusion 2016-03-02 23:42:33 -05:00
derekwaynecarr 41057b02d5 Move namespace controller to use discovery and dynamic client 2016-03-02 23:34:18 -05:00
k8s-merge-robot d81d823ca5 Merge pull request #22393 from eparis/blunderbuss
Auto commit by PR queue bot
2016-03-02 18:51:56 -08:00
k8s-merge-robot aba1847857 Merge pull request #22375 from janetkuo/comment-deployment-revision
Auto commit by PR queue bot
2016-03-02 18:51:54 -08:00
Janet Kuo 48dc694ba6 Add more comments and rename getAllReplicaSets to getAllReplicaSetsAndSyncRevision 2016-03-02 17:51:35 -08:00
Eric Paris 5e5a823294 Move blunderbuss assignees into tree 2016-03-02 20:46:32 -05:00
Jeff Lowdermilk 21455ab776 Merge pull request #22171 from piosz/hpa-default
Added default cpu target for HPA
2016-03-02 16:07:24 -08:00
k8s-merge-robot ec77d0841d Merge pull request #22376 from caesarxuchao/add-log-nodecontroller
Auto commit by PR queue bot
2016-03-02 13:36:34 -08:00
Janet Kuo e42eab59bc Add comments about deployment revision update 2016-03-02 11:19:48 -08:00
Chao Xu f8dd7fe1de log the succussful forceful deletion 2016-03-02 11:18:55 -08:00
Paul Morie 834776aa1f Add resource quota for ConfigMap 2016-03-02 09:59:51 -05:00
Marcin Wielgus 24b12b9191 In HPA metric client make average from samples from the last 1 minute 2016-03-02 15:06:27 +01:00
Piotr Szczesniak 205e3e607d Added default cpu target for HPA 2016-03-02 09:38:26 +01: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
Saad Ali c4ccd5188f Merge pull request #22110 from timstclair/volumetest
Move test-only volume files to test-only volume package
2016-03-01 15:47:41 -08:00
CJ Cullen 506df24c1f Revert "Evict pods w/o rate-limit when cloud says node is gone." 2016-03-01 11:04:18 -08:00
k8s-merge-robot fec00b535f Merge pull request #21187 from cjcullen/evict
Auto commit by PR queue bot
2016-03-01 10:45:22 -08:00
k8s-merge-robot 94a2319804 Merge pull request #22211 from derekwaynecarr/quota_fix
Auto commit by PR queue bot
2016-03-01 10:13:44 -08:00
mqliang 7e1ab26c06 add lookup cache for daemonset 2016-03-01 22:04:56 +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
k8s-merge-robot c9bd9e9c95 Merge pull request #22223 from nikhiljindal/deploymente2eFlake
Auto commit by PR queue bot
2016-02-29 20:20:35 -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
derekwaynecarr c9e4c846e6 Incorrect type passed into quota reflector 2016-02-29 20:48:48 -05:00
nikhiljindal 2019d18e9a Fixing a bug in deployment controller cleanupOldReplicaSets 2016-02-29 16:40:35 -08:00
Tim St. Clair 246b389275 Move test-only volume files to test-only volume package 2016-02-29 14:44:28 -08:00
Janet Kuo f129d97262 Fill missing arg in log 2016-02-29 14:26:19 -08:00
Kris e664ef922f Move restclient to its own package 2016-02-29 12:05:13 -08:00
Justin Santa Barbara 5b3bb56a4f Apply exponential backoff in servicecontroller before retrying
Issue #21952
2016-02-29 14:47:36 -05:00
Saad Ali 1dd3cb58f8 Merge pull request #22160 from liggitt/token-e2e
Remove short-circuit of token reference cleanup
2016-02-29 10:51:00 -08:00
CJ Cullen 3a8c7a7074 Evict pods w/o rate-limit when cloud says node is gone. 2016-02-29 10:33:50 -08:00
k8s-merge-robot fe03c663d9 Merge pull request #22094 from alex-mohr/routes
Auto commit by PR queue bot
2016-02-29 05:46:51 -08:00
Jordan Liggitt bd552c99c5 Remove cache-based short-circuit of token cleanup 2016-02-29 00:25:49 -05:00
k8s-merge-robot 8b19638bd0 Merge pull request #22078 from janetkuo/kill-pods-better
Auto commit by PR queue bot
2016-02-28 10:39:15 -08:00
Brian Grant a56bbbf8bc Merge pull request #22143 from bprashanth/graceful_del
Don't double count graceful deletion
2016-02-28 08:46:52 -08:00
k8s-merge-robot 5ecbf4ff4a Merge pull request #22138 from bgrant0607/bugfix1
Auto commit by PR queue bot
2016-02-28 02:00:40 -08:00
Prashanth Balasubramanian 859f6b13fa Don't double count graceful deletion. 2016-02-28 00:30:57 -08:00
k8s-merge-robot ff758bec58 Merge pull request #21750 from piosz/hpa-status-current-utilization
Auto commit by PR queue bot
2016-02-28 00:22:26 -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
k8s-merge-robot 6f8a951f87 Merge pull request #20446 from derekwaynecarr/quota_scopes
Auto commit by PR queue bot
2016-02-27 19:46:42 -08:00
Mike Danese a50bc3da10 revert deletePods changes in #22100 2016-02-27 08:40:50 -08:00
k8s-merge-robot 43792754d8 Merge pull request #21469 from wojtek-t/parallel_namespace_deletion
Auto commit by PR queue bot
2016-02-27 07:26:49 -08:00
Mike Danese c1a7e280a3 fix pod eviction for gracefully terminationg pods 2016-02-26 17:34:15 -08:00
derekwaynecarr af85fb57c3 Make ResourceQuota admission and controller work generically 2016-02-26 20:34:15 -05:00
Alex Mohr 0816fa2072 Add support for more than 500 results to GCE cloud provider API calls
for Instance.List and Routes.List which we will definitely have
more than 500 of when supporting 1000 nodes.

Add TODOs for other GCE List API calls to do similar fixes.

Add more logging to GCE's routecontroller.go when creating or deleting routes.
2016-02-26 16:03:01 -08:00
Fabio Yeon 53859b032f Merge pull request #22067 from derekwaynecarr/ns_controller_errors
e2e flake fix: Namespace controller error handling improvements
2016-02-26 15:59:32 -08:00
Fabio Yeon 7d0684e9c4 Merge pull request #21628 from smarterclayton/suppress_debug_logging
Reduce volume of logs generated at v(3)
2016-02-26 15:47:31 -08:00
Janet Kuo 9185c05a91 When comparing timestamp of pods, kill pods with zero timestamps first 2016-02-26 15:35:06 -08:00
Janet Kuo 2b81e751e1 Better choices of what pods to kill 2016-02-26 15:35:06 -08:00
Fabio Yeon 1bd3e83ce4 Merge pull request #22069 from a-robinson/keymutex-v2
Protect against race conditions in the service controller
2016-02-26 14:37:37 -08:00
Fabio Yeon e4dd1e66fb Merge pull request #22030 from mikedanese/ds-nil
fix nil pointer in dameonset controller
2016-02-26 13:01:24 -08:00
Alex Robinson ab797d1b65 A load balancer should be updated if a service's UID has changed.
The load balancer's name is determined by the service's UID. If the
service's UID has changed (presumably due to a delete and recreate),
then we need to recreate the load balancer as well to avoid eventually
leaking the old one.
2016-02-26 20:26:27 +00:00
Alex Robinson 4ce5f68ed0 Protect against race conditions in the service controller.
Re-GET the service object when we process it rather than trusting the
delta. This will make for a lot more service get requests given that we
resync all the services every 5 minutes, but will avoid re-ordering of
updates and continually retrying stale updates, as has been described in
a few other issues and PRs.
2016-02-26 20:26:22 +00:00
derekwaynecarr a301a2565e Namespace controller error handling improvements 2016-02-26 14:08:28 -05:00
k8s-merge-robot cab55f856b Merge pull request #22044 from davidopp/wait
Auto commit by PR queue bot
2016-02-26 10:33:15 -08:00
David Oppenheimer 690aae1e67 Wait for goroutines creating routes to finish. 2016-02-25 22:36:51 -08:00
Brian Grant 39f0edca75 Fix expectations in Deployment. Ref #19299. 2016-02-26 06:15:26 +00:00
Mike Danese d7a7f87eee fix nil pointer in dameonset controller 2016-02-25 16:17:33 -08:00
Wojciech Tyczynski 506899008f Parallelization of namespace deletion 2016-02-25 16:33:25 +01:00