Jerzy Szczepkowski
34a8a3a844
Running node selector predicate on kubelet.
...
Added checking on kubelet if scheduled pods have matching node selector. This is the last step to fix #5207 .
2015-03-23 08:21:58 +01:00
CJ Cullen
2e7356bca7
Merge pull request #5534 from bprashanth/generic_storage_interface
...
Add a GenericRESTStorage interface
2015-03-19 09:35:06 -07:00
Prashanth Balasubramanian
960e16c397
Embed etcdgeneric in RESTStorage for pods
2015-03-18 16:31:33 -07:00
Brian Grant
11f9733599
Merge pull request #5587 from nikhiljindal/enable3
...
Updating integration tests to test both API versions - v1beta1 and 3
2015-03-18 16:14:20 -07:00
nikhiljindal
7e36bbab3c
Updating integration tests to test both API versions - v1beta1 and 3
2015-03-18 15:24:11 -07:00
Filip Grzadkowski
1a352b74ba
Periodically update pod status from kubelet.
2015-03-18 12:11:39 +01:00
Filip Grzadkowski
18b728ff44
Revert "Periodically update pod status from kubelet."
2015-03-17 13:51:45 +01:00
Filip Grzadkowski
336525a27d
Periodically update pod status from kubelet.
2015-03-16 23:03:03 +01:00
Tim Hockin
9eebaa8168
Merge pull request #4115 from sub-mod/master_changes
...
Use discovery heuristics in ChooseHostInterface method to fetch PublicAddress
2015-03-16 14:31:15 -07:00
Clayton Coleman
bddef32193
Prepare EtcdHelper to extract more data from Node
...
In order to support graceful deletion, the resource object will
need access to the TTL value in etcd. Also, in the future we
may want to get the creation index (distinct from modifiedindex)
and expose it to clients. Change EtcdResourceVersioner to be
more type specific (objects vs lists) and provide a default
implementation that relies on the internal API convention.
Also, rename etcd_tools.go to etcd_helper.go and split a few
things up.
2015-03-16 15:33:50 -04:00
Subin M
1138045185
use ChooseHostInterface to get IP
2015-03-16 23:37:00 +05:30
Jeff Lowdermilk
e37fd2a84d
Merge pull request #5477 from dchen1107/clean
...
Convert RestartPolicy to string for v1beta3.
2015-03-16 10:23:52 -07:00
Jeff Lowdermilk
f3cb9949a7
Merge pull request #5484 from smarterclayton/dont_warn_on_existing
...
Don't log when auto-published services and namespace exist already
2015-03-16 09:54:19 -07:00
derekwaynecarr
2d13dfaf13
Improvements to namespace registry to align with pod model
2015-03-16 10:16:28 -04:00
Clayton Coleman
893a64f2ed
Don't log when auto-published services and namespace exist already
...
Also, be a bit less chatty w.r.t. master setDefaults
2015-03-14 13:07:56 -04:00
Dawn Chen
34e9c82c70
Convert RestartPolicy to string for v1beta3.
...
Fixed #3607 and spiritually support #5475
2015-03-13 18:38:07 -07:00
derekwaynecarr
799e3fa9cc
Eliminate ResourceQuotaUsage in favor of ResourceQuota status
2015-03-13 16:52:09 -04:00
Timothy St. Clair
7eebf674d4
Update to option enable profiling on the master daemon processes.
...
--profiling=true , default is false
2015-03-13 10:45:01 -05:00
Jerzy Szczepkowski
ba9d02c0c7
Cleanup: removed BoundPodFactory.
...
Removed unused code: BoundPodFactory. Fixes #5384 .
2015-03-13 10:44:25 +01:00
nikhiljindal
8c3f728aa6
Adding http:// prefix to the swagger WebServicesURL to prevent basePath validation errors
2015-03-11 16:52:45 -07:00
Daniel Smith
6606f9c9f5
double-fix crash on my cluster
2015-03-11 09:54:33 -07:00
Federico Simoncelli
daed0af3b5
api: return endpoints target object references
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 18:32:53 -04:00
Salvatore Dario Minonne
925fa6baf8
Adding fields selector
2015-03-10 22:13:10 +01:00
Brian Grant
7b72d9539f
Merge pull request #5054 from smarterclayton/switch_to_sub_bindings
...
Make Pod binding a subresource (and be generic to other types)
2015-03-09 16:41:26 -07:00
Clayton Coleman
dfc19185f5
Add a subbindings resource as /pods/{name}/binding
...
Allows POST to create a binding as a child. Also refactors internal
and v1beta3 Binding to be more generic (so that other resources can
support Bindings).
2015-03-09 15:37:19 -04:00
Clayton Coleman
4b16a87096
Simplify api_installer and setup methods
2015-03-09 14:39:31 -04:00
Brendan Burns
7c654a3d1b
Expand test coverage in master, kubectl/cmd/util, pkg/registry/resourcequota, and api/rest.
2015-03-07 15:24:39 -08:00
Yu-Ju Hong
3ccdb8db98
kubelet: reject pods on host port conflict
...
When a host port conflict is detected, kubelet should set the pod status to
fail. The failed status will then be polled by other components at a later time,
which allows replication controller to create a new pod if necessary.
To achieve this, this change stores the pod status information in a status map
upon the detecton of port conflict. GetPodStatus() consults this status map
before attempting to query docker. The entries in the status map will be removed
when the pod is no longer associated with the node.
2015-03-06 10:46:49 -08:00
Deyuan Deng
9b0af8df63
Node addresses
2015-03-04 16:47:31 -05:00
Brian Grant
fca9fd68c7
Merge pull request #4779 from smarterclayton/status_endpoints
...
Minimal status mutation change
2015-03-03 11:00:02 -08:00
Filip Grzadkowski
86b1c90097
Add flag to control probing pods statuses from kubelets.
2015-03-02 16:06:14 +01:00
Clayton Coleman
3d290089ae
Minimal status mutation change
...
PUT /api/v1beta3/namespaces/default/pods/foo/status
{
"metadata": {...}, // allowed for valid values
"spec": {}, // ignored
"status": {...}, // allowed, except for Host
}
Exposes the simplest possibly change. Needs a slight refactoring
to RESTUpdateStrategy to split merging which can be done in a
follow up.
2015-03-01 22:35:17 -05:00
Lénaïc Huard
060ebfcea0
Fix nil pointer dereference in kube-apiserver when etcd is not there
2015-02-27 17:33:02 +01:00
Eric Tune
e77745672c
Merge pull request #4577 from satnam6502/cluster-name
...
Qualify the name of forwarding rules with INSTANCE_PREFIX
2015-02-26 13:17:49 -08:00
nikhiljindal
b771a56435
Stop importing expvar
2015-02-26 10:47:58 -08:00
Mike Danese
5267127af1
api: rename conditionkind -> conditiontype
2015-02-23 22:13:21 -08:00
Satnam Singh
19b927ea57
Name a cluster and use it to make forwarding rules for GCE
2015-02-23 17:04:33 -08:00
Daniel Smith
650f6cb826
Revert "Multi-port Endpoints"
2015-02-23 13:53:21 -08:00
Tim Hockin
160f288832
Implement multi-port Endpoints
...
This is a part of multi-port services.
2015-02-22 09:35:12 -08:00
Brendan Burns
9829128a75
Merge pull request #4580 from thockin/plural_20_endpoints
...
Part 2 of plural ports: make endpoints a struct
2015-02-20 15:42:19 -08:00
Tim Hockin
899d30f16a
move pkg/master/server to cmd/kube-apiserver/app
2015-02-20 08:49:12 -08:00
Tim Hockin
ae0062d001
Part 2 of plural ports: make endpoints a struct
...
Includes conversions for v1b[12] and tests and fixups for call sites.
2015-02-18 19:54:15 -08:00
Tim Hockin
34eaa0dbd6
Part 1 of plural ports: Add protocol to Endpoints
...
This makes it easier to make the second step, which is moving endpoints
to a struct instead of a string.
2015-02-18 18:58:04 -08:00
Paul Morie
fb001ada21
Secret API resource
2015-02-18 11:54:56 -05:00
Tim Hockin
003c0986b4
Merge pull request #4478 from thommay/rackspace_cloud_base
...
Basic Rackspace cloud support
2015-02-17 13:41:31 -08:00
Thom May
8357e1521a
Basic Rackspace cloud support
...
This enables all but Load Balancer support for the Rackspace public
cloud platform.
2015-02-17 10:59:40 +00:00
Clayton Coleman
7a93af57c0
Remove pods from pkg/registry/etcd/etcd.go since they are in their own type
...
Altered the master initialization code
2015-02-16 10:09:27 -05:00
Clayton Coleman
247e467217
Collapse pod REST+Registry to a single object using generic/etcd
2015-02-16 10:09:27 -05:00
Dawn Chen
1ce999318e
Better debugging log for investigating pod unknown status.
2015-02-13 15:27:14 -08:00
Jordan Liggitt
083ce268e0
Put user in context, map requests to context above resthandler layer
2015-02-12 20:58:04 -05:00
Eric Tune
dd8f335380
Merge pull request #4376 from dchen1107/podstatus
...
Fix podstatus issue caused by docker's resource temporarily unavailable issue
2015-02-12 13:16:09 -08:00
Eric Tune
5b4569697f
Stop putting env vars into BoundPods.
...
They will still show up in etcd. They never were available
through the API.
A subsequent PR(s) will rip out all BoundPods code.
Working in small increments.
This PR will cause users on lagging cloud providers
to not get env vars in their pods if they update to this code.
They have already been warned via email.
Removed unit tests of BasicBoundPodFactory.
There is adequate coverage in pkg/kubelet/kubelet_test.go.
2015-02-12 08:37:23 -08:00
Dawn Chen
af54c62766
Fix podstatus issue caused by docker's resource temporarily unavailable error
2015-02-11 23:52:58 -08:00
Clayton Coleman
79cb93002e
Remove asynchronous channel on RESTStorage interfaces
2015-02-11 16:26:07 -05:00
Clayton Coleman
dce4cd8b1d
Merge pull request #3613 from derekwaynecarr/namespace_as_kind
...
Namespace as kind
2015-02-10 14:49:58 -05:00
Mike Danese
043794492e
implement readiness.
2015-02-10 08:30:09 -08:00
derekwaynecarr
0bd0e12bbc
Add support for Namespace as Kind
...
Add example for using namespaces
2015-02-10 09:50:50 -05:00
Tim Hockin
2707bcf10e
Fix wrong port on kubernetes service
...
* Rename a field to make it more obvious.
* Fix some comments and other minor artifacts.
Verified by hitting the service on 443, and by hitting the master on 8080,
6443, and 7080.
2015-02-06 20:23:17 -08:00
Brendan Burns
b527b8a9ef
Add some more verbose logging around pod status.
2015-02-06 12:42:17 -08:00
Brian Grant
175e9caa55
Merge pull request #4194 from dchen1107/podstatus
...
Kubelet decides podStatus
2015-02-05 17:18:39 -08:00
Dawn Chen
4da829ef20
comment.
2015-02-05 15:57:26 -08:00
Dawn Chen
f762e062f2
Kubelet decides podStatus
2015-02-05 15:49:41 -08:00
Brendan Burns
6d0b8ea7a7
Fix a regression where we never cleared out failed nodes.
2015-02-05 10:55:57 -08:00
Brendan Burns
550b98ebf4
Merge pull request #3931 from deads2k/deads-pull-more-info-from-request
...
pull more complete information from request
2015-02-04 12:23:20 -08:00
Brian Grant
3f28badae3
Merge pull request #3854 from yujuhong/defaults
...
Migrate API defaulting to a centralized location
2015-02-04 11:41:23 -08:00
deads2k
1c9216a45e
clarify api request information
2015-02-04 13:36:01 -05:00
nikhiljindal
18609e1706
Moving /watch, /proxy and /redirect registration to go-restful
2015-02-03 15:47:48 -08:00
Yu-Ju Hong
4a72addaeb
Factor out API defaulting from validation logic
...
Currently, the validation logic validates fields in an object and supply default
values wherever applies. This change factors out defaulting to a set of
defaulting callback functions for decoding (see #1502 for more discussion).
* This change is based on pull request 2587.
* Most defaulting has been migrated to defaults.go where the defaulting
functions are added.
* validation_test.go and converter_test.go have been adapted to not testing the
default values.
* Fixed all tests with that create invalid objects with the absence of
defaulting logic.
2015-02-03 00:55:42 -08:00
Deyuan Deng
31991f82c6
Remove ip cache, use node status cache instead.
2015-02-02 17:08:36 -05:00
Alex Robinson
9992abdfcf
Merge pull request #3997 from smarterclayton/make_master_index_optional
...
Make master index optional when master is used in other contexts
2015-02-02 12:45:18 -08:00
Clayton Coleman
7f39a37eee
Fix integration tests to not depend on setting pod.Status on create
...
Allow the master to have pod/node cache timeouts controlled via a config
flag for integration tests.
Move integration test to '127.0.0.1' so that it correctly returns a health
check, and enable health check testing on the integration test.
2015-02-02 14:46:23 -05:00
Alex Robinson
7868fe468e
Merge pull request #3618 from saad-ali/fix2410
...
Make master service IP static (no longer randomly assigned)
2015-02-02 11:05:58 -08:00
derekwaynecarr
4c33e36a88
Plumb restmapper properly through apiserver and tests
2015-02-02 10:26:19 -05:00
Clayton Coleman
42175b433a
Make master index optional when master is used in other contexts
...
OpenShift provides a default URL at the root that shows the UI. The
provided flag makes loading the index handler optional for now.
2015-01-30 22:19:55 -05:00
saadali
e83fd7b8e7
Make master service IP static (no longer randomly assigned)
2015-01-30 16:07:19 -08:00
Clayton Coleman
49ee27988d
Print the returned object in the event of a publish error
...
resp.Object is a pointer, so printing resp doesn't show what the
server returned.
2015-01-30 18:27:50 -05:00
Joe Beda
6bdede6925
Convert kube-apiserver to hyperkube.
...
Part of #108 .
Also:
* Added hyperkube cmd (not built by default yet).
* Added version support to hyperkube
* Remove health_check_minions flag from apiserver as it is no longer used with #3733
2015-01-30 13:06:28 -08:00
Brian Grant
207d0f5d40
Merge pull request #3878 from thockin/infra_name
...
Use a constant for the pod infra container name
2015-01-30 09:18:00 -08:00
Satnam Singh
9a8d20a2fc
Merge pull request #3969 from GoogleCloudPlatform/alex-mohr-patch-1
...
Update master.go's UpdateAllContainers to every 5 seconds instead of 30.
2015-01-30 07:58:43 -08:00
Deyuan Deng
c793c4f0ab
Sync node status from node controller to master.
2015-01-29 23:17:15 -05:00
Alex Mohr
3ac5b611b1
Update master.go
...
Make pod status update every 5 seconds instead of every 30 to mask the issue #3952 . I suspect (but haven't confirmed) that #3927 doesn't completely address the issue since it will still happily cache a Pending status for up to 30 seconds even though the pod may have transitioned to Running already.
2015-01-29 18:54:35 -08:00
Brendan Burns
3624b65f1c
Transform the podCache into a write-through cache.
...
Don't always clear podInfo, instead occasionally garbage collect.
2015-01-28 22:15:23 -08:00
derekwaynecarr
829fa69527
Introduce a ResourceQuota object
2015-01-28 15:03:19 -05:00
Tim Hockin
70ab406751
Use a constant for the pod infra container name
...
This is an implementation detail that has leaked out of kubelet. Use a
constant to prevent divergence, for now. Plan to get rid of it.
@dchen1107
2015-01-28 10:13:02 -08:00
Tim Hockin
60119db5d5
More e2e damage from renaming "net" to "POD"
...
This stops the bleeding. Will followup with a constant.
2015-01-28 09:58:19 -08:00
derekwaynecarr
091cbe5fa2
Add a limit range resource
2015-01-27 16:41:27 -05:00
Brendan Burns
f124842505
Clear pod cache on delete.
2015-01-26 17:26:43 -08:00
Dawn Chen
c65f83f424
Merge pull request #3795 from ddysher/pod-cache-semantic
...
fix pod-cache with node semantic change
2015-01-26 16:04:48 -08:00
Clayton Coleman
6410f37a32
Merge pull request #3591 from ddysher/node-client-update
...
Add node update method to client interface
2015-01-26 15:47:18 -05:00
Deyuan Deng
881be6c952
fix pod-cache with node semantic change
2015-01-25 16:59:00 -05:00
Deyuan Deng
e71227388e
add node update method to client interface
2015-01-23 16:40:33 -05:00
Brian Grant
3ae67f8153
Merge pull request #3548 from nikhiljindal/listHandlers
...
Updating handleIndex in master to list all valid paths.
2015-01-21 15:42:50 -08:00
nikhiljindal
51007cc798
Updating handleIndex in master to list all valid paths.
...
The list of valid paths is computed from http.ServeMux and
restful.WebService.
Adding a mux helper - wrapper over mux, that keeps track of the paths
handled by mux.
2015-01-21 13:40:01 -08:00
Andrew Seidl
6dee1d7fa4
Fix typos in user-facing strings
2015-01-18 01:32:34 -06:00
Brendan Burns
e86c8f9e53
Merge pull request #3565 from dchen1107/podstatus
...
Introduce PodStatusResult, and deprecate PodContainerInfo.
2015-01-16 12:05:07 -08:00
Dawn Chen
15e9fa8a9d
Introduce PodStatusResult, and deprecate PodContainerInfo.
2015-01-16 09:10:40 -08:00
nikhiljindal
1ccae67b6e
master.go cleanup: Deleting unused public methods and converting rest to private
2015-01-15 16:22:43 -08:00
Clayton Coleman
90c835af47
The API server setup logging is debug specific, bump above V(4)
...
Reduces some chatter in test suites where we are confident this code
already works. Also removed any logging which is obvious from swagger.
Finally, rolls up InstallREST related errors all the way back to master,
which will glog.Fatalf (coding errors).
2015-01-15 14:25:58 -05:00
Paul Morie
fd834ae84d
Pods should see services only from their own ns
2015-01-14 17:06:36 -05:00
Dawn Chen
26a6628d8a
Merge pull request #3374 from lavalamp/fix
...
Fix minion listing
2015-01-12 16:36:46 -08:00
Daniel Smith
3e75195ff3
make minion registry not intolerably slow
2015-01-12 16:20:52 -08:00
Daniel Smith
6e70853e83
genericize ip cache
2015-01-12 16:04:43 -08:00
nikhiljindal
6ddfb10728
Setting WebServicesUrl in swagger config, so that the api docs contain correct basepath
2015-01-12 13:48:39 -08:00
Clayton Coleman
22c99c98e2
Split RESTStorage into separate interfaces
...
Omit unimplemented interfaces from Swagger
2015-01-12 12:19:45 -05:00
nikhiljindal
7e909ed743
Changes to improve swagger ui.
...
- Separating out index, version and api handlers into independent web
services. Moved the index handler to /welcome, version handler to
/version and the api handler to /api,
2015-01-09 10:56:24 -08:00
Clayton Coleman
7fd887df61
Enable v1beta3 API via --runtime_config=api/v1beta3 flag
...
This exposes the proper v1beta3 API endpoint when the user specifies
the --runtime_config=api/v1beta3 argument to the apiserver. v1beta3
is still considered experimental and subject to change.
--runtime_config is a map of string keys and values, that can be
specified by providing
--runtime_config=a=b,b=c,d,e
Only the key must be specified, the value can be omitted.
Enables v1beta3 in hack/local-up-cluster.sh and hack/test-cmd.sh
2015-01-08 13:01:24 -05:00
derekwaynecarr
a56087cdf8
Remove client from attributes, remove admission control interface, fix-up error codes
2015-01-07 14:42:31 -05:00
derekwaynecarr
520ae3ef27
Implement basic admission control framework
2015-01-07 14:42:31 -05:00
nikhiljindal
1db30aeb51
Moving swagger-ui files from www/swagger-ui to third-party/swagger-ui
...
and adding LICENSE and README files
2015-01-05 16:27:33 -08:00
Daniel Smith
6916235513
Make locking simpler
...
add test for node existence cache behavior
2014-12-22 15:11:28 -08:00
Daniel Smith
dc5383dcf8
add ttl as param to ip cache
2014-12-22 14:14:03 -08:00
Daniel Smith
545d87d554
Move clock to util
2014-12-22 14:14:03 -08:00
Daniel Smith
5b8e91595a
Make pod listing costant-time
...
* move ip cache out of registry/pod
* combine, rationalize, and move pod status logic
* Fix unit and integration tests
2014-12-22 14:14:03 -08:00
Brendan Burns
ba25ae49d7
Merge pull request #3070 from nikhiljindal/setApiVersion
...
Adding skeleton swagger UI
2014-12-19 17:16:04 -08:00
nikhiljindal
bf96e95899
ran gofmt
2014-12-19 16:16:54 -08:00
nikhiljindal
f12f5ed34b
1. Adding swagger-ui/dist files.
...
2. Updating datafile.go to include it.
3. Updating master,go to use it.
2014-12-19 14:56:20 -08:00
Daniel Smith
a63bd1bdfa
Remove an unneeded trip over the network when getting/listing pods.
2014-12-18 17:47:59 -08:00
Deyuan Deng
3f84924095
Use constant for port number
2014-12-16 11:45:27 +08:00
bgrant0607
f621a05d74
Merge pull request #2945 from smarterclayton/support_optional_swagger
...
Make Swagger API support optional, so that consumers can define their own
2014-12-15 16:13:13 -08:00
Clayton Coleman
cd4135666e
Make Swagger API support optional, so that consumers can define their own
...
OpenShift would like to also enable swagger, but we need to register our
services as swagger services prior to the SwaggerAPI being started. I've
added a bool (default false) to master.Config to enable swagger, and split
the method in master out so that a downstream consumer can call it.
2014-12-15 15:29:55 -05:00
Brendan Burns
a6f967b6e7
Revert "Revert "Add an api object for the kubelet, and a versioned endpoint.""
...
This reverts commit dcfcf315e5
.
2014-12-15 09:29:04 -08:00
Brendan Burns
dcfcf315e5
Revert "Add an api object for the kubelet, and a versioned endpoint."
...
This reverts commit d4b9979382
.
2014-12-12 21:13:44 -08:00
Daniel Smith
9c0fbf1f02
Merge pull request #2908 from brendandburns/kubelet
...
Add an api object for the kubelet, and a versioned endpoint.
2014-12-12 16:01:46 -08:00
Brendan Burns
d4b9979382
Add an api object for the kubelet, and a versioned endpoint.
2014-12-12 15:26:28 -08:00
Eric Tune
029a9b6400
Remove whoami handler.
...
This was a temporary thing. Not aware of anyone using it.
2014-12-11 21:31:06 -08:00
Brendan Burns
59b5546b28
Turn on node level validation, and make the validation set dynamic.
2014-12-10 22:02:45 -08:00
Clayton Coleman
d1d7505272
Rename client Minions->Nodes, select the correct path for v1beta3
...
Replaces the client public interface but leaves old references to "minions"
for a later refactor. Selects the path "nodes" for v1beta3 and "minions"
for older versions.
2014-12-10 12:08:19 -05:00
Clayton Coleman
9030759df8
Add 'nodes' everywhere 'minions' can be used in api / cli
2014-12-10 12:08:18 -05:00
Clayton Coleman
2c27f7d332
Allow an empty service
2014-12-09 12:48:53 -05:00
Mike Danese
5bda95f9fe
added healthz check to the proxy with configurable port
2014-11-23 09:07:19 -08:00
Deyuan Deng
a4e7604266
Merge pull request #2478 from smarterclayton/refactor_minion_to_match_v1beta3
...
Move the internal minion representation to match v1beta3
2014-11-20 21:37:43 -05:00
Clayton Coleman
156000ef6d
Move the internal minion representation to match v1beta3
...
Moves to 'Spec' and 'Status' internally and removes duplicate
fields. Moves Capacity into Spec and drops use of NodeResources
2014-11-20 20:53:08 -05:00
Tim Hockin
ea960711ff
Clean up error logs.
...
Use %v for errors, tidy some messages, make error messages start lowe-case
(as per go guidelines). Just accumulated nits.
2014-11-21 09:45:26 +08:00
Jordan Liggitt
c895331277
Make master take authenticator.Request interface instead of tokenfile
2014-11-19 15:07:51 -05:00
markturansky
8af4ccb111
v1beta3 Pod refactor
2014-11-18 09:25:42 -05:00
Brian Grant
7583e1a643
Automatic API generation by adopting go-restful
2014-11-14 16:49:19 +00:00
Clayton Coleman
21a6e96418
Merge pull request #2126 from brendandburns/validatez
...
Add etcd to the list of services to validate.
2014-11-10 14:53:41 -05:00
Eric Tune
c068b56919
Return InsecureHandler from master.
...
Subsequent changes will make use of both
m.Handler and m.InsecureHandler for different ports.
2014-11-06 09:11:31 -08:00
Brendan Burns
d7dc20fd6a
Add etcd to the list of services to validate.
...
Also add minions.
2014-11-05 21:22:01 -08:00
Daniel Smith
c163535563
Allow (delayed) apiserver starting when network interface isn't available immediately.
2014-11-05 12:07:33 -08:00
bgrant0607
fc0dab630c
Merge pull request #2086 from markturansky/v1beta3_refactor
...
Refactor internal API for Services to match v1beta3
2014-11-04 21:48:02 -08:00
markturansky
bd7643c033
refactor services to v1beta3
2014-11-04 14:23:53 -05:00
Eric Tune
1668c6f107
Authorization based on namespace, kind, readonly.
...
Also, pass Authorizer into master.Config.
2014-11-03 17:45:15 -08:00
Eric Tune
3045035512
Get user from request and put in authz attribs.
...
Added integration tests for user-based auth.
2014-11-03 16:38:56 -08:00
Eric Tune
795bc7f976
Require a KubeletClient in master.New().
...
Without this, tests which create a master
will panic with a nil pointer when the periodic
podCache update runs.
Deleted unused FakePodInfoGetter.
Added FakeKubeletClient.
Passed to master.New.
Required a KubeletClient in master.New.
2014-11-03 16:09:41 -08:00
Eric Tune
55c2d6bbbb
Add basic Authorization.
...
Added basic interface for authorizer implementations.
Added default "authorize everything" and "authorize nothing
implementations.
Added authorization check immediately after authentication check.
Added an integration test of authorization at the HTTP level of
abstraction.
2014-10-31 12:04:33 -07:00
Deyuan Deng
019b7fc74c
Separate minion controller from master.
2014-10-30 20:24:15 -04:00
Eric Tune
9713b58caa
Allocate mux in master.New()
...
Callsites no longer allocate a mux.
Master now exposes method to install handlers
which use the master's auth code. Not used
but forks (openshift) are expected to use these
methods. These methods will later be a point
for additional plug-in functionality.
Integration tests now use the master-provided
handler which has auth, rather than using the mux,
which didn't. Fix TestWhoAmI now that /_whoami
sits behind auth.
2014-10-29 14:31:07 -07:00
Daniel Smith
070c6c0440
Fix missing portalNets in tests once and for all by adding a default.
2014-10-29 12:27:35 -07:00
Daniel Smith
a036ebc1be
Switch models. No master election.
2014-10-29 11:38:45 -07:00
Daniel Smith
7146ec9d49
Implement kubernetes & kubernetes-ro services
2014-10-29 11:29:28 -07:00
Daniel Smith
94e736e286
Merge pull request #2009 from smarterclayton/unify_meta
...
Unify Accessor for ObjectMeta/TypeMeta/ListMeta
2014-10-29 09:58:46 -07:00
Daniel Smith
dca7363459
Serve API version list, test with an integration test.
2014-10-28 17:35:56 -07:00
Eric Tune
f7ebc7d0d5
Added /_whoami and integration test for auth(z|n)
...
Added new endpoint /_whoami for debugging authentication.
Added integration test which checks that a user is authenticated
using token authentication.
Rearranged initialization of authenticator to support preceeding.
2014-10-28 09:33:45 -07:00
Clayton Coleman
66ace4c270
Begin to unify ResourceVersioner and SelfLinker
...
Create a new MetadataAccessor interface that combines both
and use it where previously latest.ResourceVersioner and SelfLinker
were being used.
Adds Namespace to the get/set interface. Adds TODO about future
fast path for metadata (as per thockin's comment)
2014-10-27 16:00:55 -04:00
Eric Tune
245585f364
Move handler setup: cmd/apiserver -> pkg/master
...
Moved CORS handler setup and authorizer setup.
Will allow for integration test of authorization.
2014-10-27 11:43:12 -07:00
Eric Tune
40a5ca034d
Integration test on master, not just apiserver.
...
Moved code from cmd/apiserver to pkg/master.
test/integration/client_test made to use a master object,
instead of an apiserver.Handle.
Subsequent PRs will move more handler-installation into
pkg/master, with the goal that every http.Handler of a
standalone apiserver process can also be tested
in a "testing"-style go test.
In particular, a subsequent PR will test
authorization.
2014-10-27 09:14:58 -07:00
derekwaynecarr
580cb5ea4f
Rework client.Interface
2014-10-24 11:47:30 -04:00
Clayton Coleman
644eb70085
Refactor tests to split ObjectMeta from TypeMeta
2014-10-24 11:22:21 -04:00
Clayton Coleman
7550c146dc
Replace struct initializers for TypeMeta with ObjectMeta
2014-10-24 11:22:21 -04:00
Haney Maxwell
3160500940
Refactor kubelet access and add SSL
2014-10-22 14:53:59 -07:00
Clayton Coleman
bb77a5d15f
Rename ID -> Name
2014-10-22 15:00:26 -04:00
bgrant0607
71c6f8ee5c
Merge pull request #1875 from lavalamp/fix3
...
fix typo
2014-10-20 12:13:43 -07:00
Daniel Smith
82bbcee8d9
Move port definitions to their own package
2014-10-20 11:28:12 -07:00
Daniel Smith
082a9d8af9
fix typo
2014-10-20 10:28:38 -07:00
Clayton Coleman
6ae611aedd
Write BoundPods to etcd instead of ContainerManifestList
...
Rename ManifestFactory -> BoundPodFactory and change the general structure
of the call to focus on BoundPod.
2014-10-16 19:29:08 -04:00
Tim Hockin
e907011111
Core support for ip-per-service
2014-10-16 08:36:47 -07:00
Deyuan Deng
2bd88d4544
Remove OnceAndForever util, create a Run() method on MinionController.
2014-10-14 18:47:42 -04:00
Deyuan Deng
ec46e94dc2
Create MinionController to sync minions from cloudprovider (pkg cloudprovider/controller).
2014-10-14 18:45:25 -04:00
Daniel Smith
15680731f7
Add event endpoint to apiserver
2014-10-10 15:47:34 -07:00
derekwaynecarr
9e60bf1e43
Pod cache needs to be namespace-aware
2014-10-10 09:35:31 -04:00
Daniel Smith
5d24820dd5
Merge pull request #1464 from hmrm/add-etcd-config
...
Allow etcd config file to be passed to apiserver, kubelet, and proxy
2014-10-08 16:29:46 -07:00
Clayton Coleman
82bcdd3b3b
Make ResourceVersion a string internally instead of uint64
...
Allows us to define different watch versioning regimes in the future
as well as to encode information with the resource version.
This changes /watch/resources?resourceVersion=3 to start the watch at
4 instead of 3, which means clients can read a resource version and
then send it back to the server. Clients should no longer do math on
resource versions.
2014-10-07 19:00:26 -04:00
Haney Maxwell
4d87159eda
Allow etcd config file to be passed to apiserver, kubelet, and proxy
2014-10-07 14:25:54 -07:00
Deyuan Deng
4de810efb4
Rebase to master, change JSONBase to TypeMeta.
2014-10-07 16:22:36 -04:00
Deyuan Deng
c3d9197a4b
Rename InsertMinion to CreateMinion.
2014-10-07 16:22:35 -04:00
Deyuan Deng
4a35325f29
Use etcd as backend for minion registry.
2014-10-07 16:22:35 -04:00
Clayton Coleman
d3e51a0f24
Rename JSONBase -> TypeMeta in preparation for v1beta3
...
Will make subsequent refactor much easier
2014-10-07 11:12:16 -04:00
Dawn Chen
8d0ed93aa1
Clean unittests
2014-10-06 13:37:22 -07:00
Brendan Burns
7c694d2cad
Merge pull request #1596 from thockin/unbound
...
Better handling of unbound pods.
2014-10-06 13:31:41 -07:00
Daniel Smith
cc086908aa
Merge pull request #1578 from brendandburns/controller
...
Extract the service controller from the apiserver.
2014-10-06 12:44:41 -07:00
Tim Hockin
372aa07b58
Better handling of unbound pods.
...
A small collection of tweaks to better handle pods when they are not currently
bound to a host.
2014-10-06 12:27:18 -07:00
Brendan Burns
e6991d0a66
Extract the service controller from the apiserver, put it in the controller manager for now.
2014-10-03 15:27:22 -07:00
Brendan Burns
1551b48347
Add a resource fit scheduler predicate. Set sensible defaults.
2014-10-03 15:09:59 -07:00
Daniel Smith
37e505601e
add self linking to apiserver
2014-09-26 15:08:02 -07:00
Daniel Smith
b972f72248
convert multiple return values into a struct, add SelfLinker
2014-09-26 14:52:16 -07:00
derekwaynecarr
ee19ba186d
Update to use api.Context
2014-09-26 11:50:34 -04:00
derekwaynecarr
3e685674e7
Add context object to interfaces
2014-09-26 11:50:34 -04:00
Dawn Chen
0e6ec3cbfc
Convert existing kubernetes system to use ContainerStatus, instead of
...
docker.Container directly.
Conflicts:
pkg/kubelet/dockertools/docker.go
pkg/registry/pod/rest.go
2014-09-24 11:16:46 -07:00
Brendan Burns
253bce42fe
Extract the minion registry from the etcd implementation into the pod registry where it belongs.
2014-09-23 15:42:59 -07:00
Clayton Coleman
5483333e29
Allow server and client to take api version as argument
...
* Defaults to v1beta1
* apiserver takes -storage_version which controls etcd storage version
and the version of the client used to connect to other apiservers
* Changed signature of client.New to add version parameter
* All controller code and component code prefers the oldest (most common)
server version
2014-09-18 23:27:28 -04:00
Clayton Coleman
ca5355908f
Expose v1beta2 API group
2014-09-18 23:24:05 -04:00
Brendan Burns
99586b4da4
Fix a problem where if a minion went missing, we still thought the pod was running.
...
Also convert some tests to table driven.
2014-09-17 18:16:52 -07:00
Clayton Coleman
61e3ce7ddc
Make runtime less global for Codec
...
* Make Codec separate from Scheme
* Move EncodeOrDie off Scheme to take a Codec
* Make Copy work without a Codec
* Create a "latest" package that imports all versions and
sets global defaults for "most recent encoding"
* v1beta1 is the current "latest", v1beta2 exists
* Kill DefaultCodec, replace it with "latest.Codec"
* This updates the client and etcd to store the latest known version
* EmbeddedObject is per schema and per package now
* Move runtime.DefaultScheme to api.Scheme
* Split out WatchEvent since it's not an API object today, treat it
like a special object in api
* Kill DefaultResourceVersioner, instead place it on "latest" (as the
package that understands all packages)
* Move objDiff to runtime.ObjectDiff
2014-09-16 16:26:43 -04:00
Brendan Burns
99f7a4f25d
Add healthz handlers to the controller manager and scheduler
2014-09-12 21:13:33 -07:00
Daniel Smith
759c3f9033
Rename all XStorage types to REST for clarity
2014-09-08 15:19:13 -07:00
Daniel Smith
0d30a656ef
Do interface{} -> runtime.Object rename everywhere
2014-09-07 22:19:24 -07:00
Daniel Smith
1c2b65788d
Rename Codec and ResourceVersioner to add Default in front, to allow for types of those names
2014-09-07 22:19:24 -07:00
Daniel Smith
a63966e73c
Combine pkg/apitools and pkg/api/common and call the result pkg/runtime
2014-09-02 11:15:44 -07:00
Daniel Smith
099c8fd36f
Propagate rename; tests pass again.
2014-09-02 10:42:06 -07:00