nikhiljindal
7bcc4a6755
Allowing runtimeConfig to support enabling/disabling specific extension resources
2015-10-15 14:24:22 -07:00
derekwaynecarr
eae56c3b2d
Add status subresource to Ingress
2015-10-14 14:36:29 -04:00
Andrew Butcher
a2c97c7b0e
Ports could be in reverse order or otherwise.
2015-10-13 07:42:43 -04:00
Andrew Butcher
efd8e3c9c7
Additional service ports config for master service.
2015-10-13 07:42:40 -04:00
k8s-merge-robot
2dec0826f7
Merge pull request #15351 from caesarxuchao/fix-14584-1
...
Auto commit by PR queue bot
2015-10-13 02:19:43 -07:00
Dawn Chen
0901e5050d
Merge pull request #15371 from timothysc/etcd-contexts
...
New etcd client modifications part 1 (context support)
2015-10-12 16:04:13 -07:00
Dawn Chen
782102d437
Merge pull request #15224 from liggitt/proxy_https
...
Allow specifying scheme when proxying
2015-10-12 14:39:21 -07:00
Chao Xu
7817c2312c
fix rebase
2015-10-12 13:48:14 -07:00
Chao Xu
cbeb307a60
run grep-sed
2015-10-12 13:34:07 -07:00
Chao Xu
29d3351b69
run goimports
2015-10-12 13:33:13 -07:00
Chao Xu
e3d984be27
run grep-sed
2015-10-12 13:33:13 -07:00
derekwaynecarr
3c012db30f
Add status subresource to HorizontalPodAutoscaler
2015-10-12 11:27:56 -04:00
Jordan Liggitt
1043126135
Refactor SSH tunneling, fix proxy transport TLS/Dial extraction
2015-10-12 11:17:01 -04:00
Timothy St. Clair
2a2a2d79ff
New etcd client modifications part 1 (context support)
...
This commit plumbs contexts which are needed for the new client.
2015-10-12 08:45:49 -05:00
Chao Xu
7c9f4cc42f
experimental. -> extensions.
2015-10-09 15:49:10 -07:00
Chao Xu
f3caff2a79
testapi.Experimental -> testapi.Extensions
2015-10-09 15:15:35 -07:00
Chao Xu
80f213c376
"experimental" -> "extensions"
2015-10-09 15:14:03 -07:00
Chao Xu
67f316dd19
apis/experimental->apis/extensions
2015-10-09 15:04:41 -07:00
derekwaynecarr
544b453e31
Add replication controller status subresource
2015-10-07 14:39:33 -04:00
jayvyas
be2a2ec3cd
NodePort apiserver option for exposing KubernetesMasterService NodePort on startup.
2015-10-05 20:34:25 -04:00
Wojciech Tyczynski
0f1cbe37a4
Events in separate etcd
2015-10-05 10:54:24 +02:00
k8s-merge-robot
e330b1197e
Merge pull request #14459 from bprashanth/l7_ingress_resource_refactor
...
Auto commit by PR queue bot
2015-10-02 10:20:48 -07:00
k8s-merge-robot
f5adbb7e12
Merge pull request #14926 from caesarxuchao/fix-discovery-1
...
Auto commit by PR queue bot
2015-10-02 06:39:44 -07:00
Chao Xu
4927cec3be
fix groups exposes at apis/
2015-10-01 18:32:42 -07:00
Chao Xu
f4ff0f7683
fix thirdparty API, now the config file of thirdpartyresource also need to group/version instead of version
2015-10-01 12:30:51 -07:00
deads2k
df870cf36a
remove Kind from APIRequestInfo
2015-09-30 09:46:22 -04:00
deads2k
dc8d0de70b
update APIRequestInfo for APIGroup
2015-09-30 09:45:10 -04:00
Prashanth Balasubramanian
16921f961a
Ingress registry
2015-09-29 18:51:24 -07:00
Jerzy Szczepkowski
0fd5a74450
Fixed update of scale sub-resource for experimental RC.
...
Fixed update of scale sub-resource for experimental RC. Resolves #14656 .
2015-09-29 10:55:29 +02:00
derekwaynecarr
aead9d3291
DaemonSets adds a Status subresource
2015-09-25 12:13:54 -04:00
jayunit100
a2f9957745
MasterCount explain logic around reorder+wraparound
2015-09-25 10:10:54 -04:00
Chao Xu
3473212ea5
remove thirdParty API from api/v1/ and api/
2015-09-24 16:31:00 -07:00
Chao Xu
ae1293418b
move experimental/v1 to experimental/v1alpha1;
...
use "group/version" in many places where used to expect "version" only.
2015-09-24 15:32:11 -07:00
Eric Tune
95a44be2ef
Job status updates.
...
Added status REST storage.
Added validation for Status Updates.
Changed job controller to update status rather than just job
(which ignores status updates).
2015-09-22 11:39:35 -07:00
k8s-merge-robot
98231d1f68
Merge pull request #14171 from jszczepkowski/deployment-scale
...
Auto commit by PR queue bot
2015-09-22 01:37:41 -07:00
Chao Xu
f1de364a0e
Make latest.AllGroups public; fix thirdPartyResourceDataCreator.New
2015-09-21 22:32:24 -07:00
Brendan Burns
fb9efac68c
Complete initial third party API support in the master
2015-09-21 15:56:36 -07:00
Chao Xu
1278771b34
let apiserver support api discovery
2015-09-21 12:20:24 -07:00
Jerzy Szczepkowski
53dab136ed
Implemented Scale sub-resource for Deployment.
...
Implemented Scale sub-resource for Deployment.
2015-09-18 13:55:26 +02:00
Kris
f4ad00d9ae
Moving Status object to a common package
2015-09-17 14:09:53 -07:00
Alex Mohr
f893245f4e
Merge pull request #14103 from feihujiang/fixWrongPathOfDocument
...
Fixes the wrong path of documents
2015-09-17 10:27:41 -07:00
k8s-merge-robot
62d8cfb615
Merge pull request #13765 from brendandburns/schema-api-5
...
Auto commit by PR queue bot
2015-09-17 09:32:04 -07:00
feihujiang
51f59f3c78
Fix the wrong path of document
2015-09-17 20:38:08 +08:00
Chao Xu
9bef5ff99d
register experimental apis as apis/experimental/..
...
mark --api-version as deprecated
2015-09-15 11:25:01 -07:00
Brendan Burns
8d0016b542
Address comments.
2015-09-14 16:19:03 -07:00
Brendan Burns
0a3aa2242b
Add a third party controller that creates/deletes third party apis
2015-09-14 14:21:14 -07:00
Chao Xu
f5023929d8
fix broken files after rebase
2015-09-12 15:45:12 -07:00
Chao Xu
c733124920
address lavalamp's comments
2015-09-11 17:34:32 -07:00
Chao Xu
0d2110c3f4
fix boilerplate
2015-09-11 17:33:22 -07:00
Chao Xu
0b6fd8c5c4
fixing tests
2015-09-11 17:33:22 -07:00
Chao Xu
190ca2ebf2
add import_known_versions.go
2015-09-11 17:32:23 -07:00
Chao Xu
64bf839e9f
refactor tests to use testapi rather than latest directly
2015-09-11 17:32:23 -07:00
Chao Xu
dd6c121d7f
massive changes
2015-09-11 17:31:47 -07:00
Chao Xu
e400a15f84
make a central latest package
2015-09-11 17:29:37 -07:00
Daniel Smith
ccd9e3e247
Run all automated tools
2015-09-11 16:11:08 -07:00
Daniel Smith
4c2adabf42
move; sed replace
2015-09-11 16:03:22 -07:00
k8s-merge-robot
bafa7627db
Merge pull request #12910 from soltysh/job_controller
...
Auto commit by PR queue bot
2015-09-11 15:52:37 -07:00
Maciej Szulik
e55c59e8c2
New Job resource
2015-09-11 21:36:20 +02:00
Steve Milner
66dff577f4
test: improved master coverage.
2015-09-11 09:10:05 -04:00
tummychow
78ce5da988
Move util.StringSet into its own package
...
A lot of packages use StringSet, but they don't use anything else from
the util package. Moving StringSet into another package will shrink
their dependency trees significantly.
2015-09-10 12:04:15 -07:00
k8s-merge-robot
1313e3b14e
Merge pull request #13700 from mikedanese/daemon_set
...
Auto commit by PR queue bot
2015-09-10 10:15:45 -07:00
Mike Danese
bf881f187e
rename expapi.Daemon to expapi.DaemonSet
2015-09-10 08:34:26 -07:00
Wojciech Tyczynski
cd1ac360de
Rename "minion" to "node" in few places.
2015-09-09 16:18:23 +02:00
k8s-merge-robot
0a7921e988
Merge pull request #13538 from brendandburns/thirdparty
...
Auto commit by PR queue bot
2015-09-08 23:17:56 -07:00
Brendan Burns
61f272c8cd
Update the third party data codec to automatically include everything
...
in api.ObjectMeta. Add more tests.
2015-09-08 21:13:06 -07:00
Piotr Szczesniak
48b9c365c7
Merge pull request #13308 from timothysc/watch-cache-disable
...
Plumb through configuration option to disable watch cache
2015-09-04 13:40:46 +02:00
Brendan Burns
6aa7ce2689
addressed comments.
2015-09-01 12:00:56 -07:00
Brendan Burns
d993b8891d
Addressed changes
2015-08-31 21:13:37 -07:00
Brendan Burns
855c7cedcc
Address comments.
2015-08-31 21:13:37 -07:00
Brendan Burns
b196d0f84b
Add support for installing custom object APIs
2015-08-31 21:13:36 -07:00
Brendan Burns
7bfc8b5f37
Add dynamic APIs
2015-08-31 21:13:07 -07:00
k8s-merge-robot
044e4854e1
Merge pull request #13347 from nikhiljindal/expDeployment
...
Auto commit by PR queue bot
2015-08-31 14:31:23 -07:00
Jordan Liggitt
b5e8f7aa41
Recover panics in finishRequest, write correct API response
2015-08-31 14:55:18 -04:00
nikhiljindal
13ecd8a72c
Adding deployment registry and exposing deployments in master
2015-08-31 10:47:04 -07:00
Timothy St. Clair
2145371c45
Plumb through configuration option to disable watch cache
...
because we are seeing anomolies on our cluster.
2015-08-28 12:36:40 -05:00
Mike Danese
bee3fd02e4
enable daemon controller in the experimental api
2015-08-27 11:47:35 -07:00
Wojciech Tyczynski
c0aba1dc8a
Reenable watch in apiserver
2015-08-26 10:39:01 +02:00
Wojciech Tyczynski
f0b8749450
Revert "Reenable Cacher"
2015-08-25 08:06:49 +02:00
Wojciech Tyczynski
102b618ce3
Reenable Cacher.
2015-08-24 13:07:10 +02:00
Brendan Burns
5d664892f2
Add a storage implementation for thirdpartyresources.
2015-08-21 17:21:40 -07:00
Wojciech Tyczynski
4e76ed31aa
Switch off cacher
2015-08-21 15:28:28 +02:00
Wojciech Tyczynski
ec6556987e
Switch on Cacher for pods, endpoints and nodes.
2015-08-21 09:24:49 +02:00
Wojciech Tyczynski
5931cc74cc
Unification refactoring to pkg/registry
2015-08-20 11:17:23 +02:00
Tim Hockin
86f4535871
Check loopback and link-local multicast endpoints
...
Previously we just disallowed link-local (unicast). This disallows loopback
and link-local multicast.
2015-08-18 21:50:27 -07:00
Kris Rousey
ae6c64d9bb
Moving everyone to unversioned client
2015-08-18 10:23:03 -07:00
Wojciech Tyczynski
56fb29a83a
Merge pull request #12344 from jszczepkowski/hpa-api
...
Added HorizontalPodAutoscaler object to experimental API.
2015-08-13 10:33:31 +02:00
Wojciech Tyczynski
5de0f11b1d
Unify events registry to be generic.
2015-08-12 11:23:07 +02:00
Jerzy Szczepkowski
baa1612241
Added HorizontalPodAutoscaler object to experimental API.
...
Added HorizontalPodAutoscaler object to experimental API. Related to #12087 .
2015-08-12 11:03:21 +02:00
Jerzy Szczepkowski
84af5594b3
Cleanup: "scaler" -> "scale".
...
Cosmetic cleanup: "scaler" replaced with "scale" (the proper name for sub-resource).
2015-08-12 09:14:05 +02:00
Kris Rousey
565189f5b8
Correcting all go vet errors
2015-08-11 13:55:37 -07:00
Wojciech Tyczynski
5ea99310f1
Unify limitrange registry to be generic.
2015-08-11 09:06:44 +02:00
Alex Robinson
42e12f1c5f
Merge pull request #12340 from wojtek-t/rewrite_service_etcd
...
Refactor "service" registry to use standard REST storage (and generic etcd)
2015-08-10 15:38:50 -07:00
Marek Grabowski
5f9cefc1d8
Merge pull request #12441 from vlajos/typofixes-vlajos-20150807
...
typofix - https://github.com/vlajos/misspell_fixer
2015-08-10 16:33:52 +02:00
Marek Grabowski
87250d075f
Merge pull request #12217 from mwielgus/exp_scale
...
Experimental Scale subresource
2015-08-10 16:32:59 +02:00
Wojciech Tyczynski
79125f460c
Services using standard REST storage
2015-08-10 13:27:44 +02:00
Wojciech Tyczynski
d11ab96446
Extract non-storage operations from service etcd
2015-08-10 13:27:44 +02:00
Veres Lajos
9f77e49109
typofix - https://github.com/vlajos/misspell_fixer
2015-08-08 22:31:48 +01:00
Marcin Wielgus
91584c6b3b
Experimental Scale subresource
2015-08-07 12:00:42 +02:00
David Walter
792fc2269b
change underscores to dashes to match the command line argument
2015-08-06 22:13:44 -05:00
Eric Paris
7cbb52ce04
Use the pflag StringSlice instead of implementing it ourselves
...
Saves code and makes our code easier to read because we just use normal
[]string instead of custom type.
2015-08-06 19:16:13 -04:00
Wojciech Tyczynski
20e84d2eb1
Remove unused members
2015-08-06 09:00:42 +02:00
Mike Danese
17defc7383
run gofmt on everything we touched
2015-08-05 17:52:56 -07:00
Mike Danese
8e33cbfa28
rewrite go imports
2015-08-05 17:30:03 -07:00
Mike Danese
a23ee556ad
Merge pull request #11999 from brendandburns/attach2
...
Add support for attach to kubectl
2015-07-31 12:51:08 -07:00
Muhammed Uluyol
58a875ac2c
Add (stopgap) support for an experimental API prefix.
2015-07-30 18:14:29 -07:00
Brendan Burns
e8e756a719
Add pod/attach to the APIServer.
2015-07-30 10:55:53 -07:00
Wojciech Tyczynski
3cbbe72f9f
Move etcd storage to pkg/storage/etcd
2015-07-30 15:42:06 +02:00
Wojciech Tyczynski
99d6b0e9f4
Rename storage interfaces
2015-07-30 10:34:57 +02:00
Wojciech Tyczynski
d17985f1ad
Move StorageInterface to pkg/storage.
2015-07-30 09:32:04 +02:00
Chi Vinh Le
d91932f0b7
SSH tunnels fallback to LegacyHostIP
2015-07-28 10:10:48 +02:00
Wojciech Tyczynski
9d943df397
Private EtcdHelper
2015-07-27 09:20:13 +02:00
Tim Hockin
1c3233a1d4
Remove v1beta3
2015-07-23 17:21:27 -07:00
Vish Kannan
136d53466a
Merge pull request #10892 from nikhiljindal/beta1
...
Removing references to pre v1beta3 apis in code
2015-07-23 17:05:43 -07:00
Wojciech Tyczynski
ee92aa3897
Prepare for extracting EtcdHelper interface
2015-07-23 09:37:39 +02:00
Brendan Burns
25d3834b74
Add monitoring and healthz based on tunnel health.
2015-07-14 14:37:38 -07:00
nikhiljindal
c465a50891
Stop exposing v1beta3 by default
2015-07-08 15:27:41 -07:00
nikhiljindal
fc4da6844e
removing references to pre v1beta3 apis
2015-07-08 13:51:43 -07:00
Eric Paris
7a29af4d2c
Add Subject Alt Names to self signed apiserver certs
...
A cert from GCE shows:
- IP Address:23.236.49.122
- IP Address:10.0.0.1
- DNS:kubernetes,
- DNS:kubernetes.default
- DNS:kubernetes.default.svc
- DNS:kubernetes.default.svc.cluster.local
- DNS:e2e-test-zml-master
A similarly configured self signed cert shows:
- IP Address:23.236.49.122
- IP Address:10.0.0.1
- DNS:kubernetes
- DNS:kubernetes.default
- DNS:kubernetes.default.svc
So we are missing the fqdn kubernetes.default.svc.cluster.local. The
apiserver does not even know the fqdn! it's defined entirely by the
kubelet! We also do not have the cluster name certificate. This may be
--cluster-name= argument to the apiserver but will take a bit more
research.
2015-07-01 17:05:17 -04:00
CJ Cullen
ea2d617944
Don't hold lock while opening new sshTunnels.
2015-06-29 16:16:25 -07:00
Maxwell Forbes
712f303350
Merge pull request #9736 from sdminonne/bug_fix2
...
To add validation for service ports when defined as string
2015-06-25 19:37:04 -07:00
Brendan Burns
f4e97be78e
Switch to using the official etcd health check.
2015-06-24 10:18:39 -07:00
Wojciech Tyczynski
23d405ad86
Expose /resetMetrics handle in apiserver
2015-06-23 11:12:45 +02:00
Salvatore Dario Minonne
4b13faa346
To add validation for service ports when defined as string (fixing issue #9734 )
2015-06-22 17:21:51 +02:00
Filip Grzadkowski
4c0c7dd879
Fix intializing IP/Port allocators when etcd is not reachable.
2015-06-19 21:20:52 +02:00
Satnam Singh
d8e5225144
Merge pull request #10069 from lavalamp/sshLockingFix
...
fix locking around ssh tunnels
2015-06-18 17:50:06 -07:00
Daniel Smith
4126622388
fix locking around ssh tunnels
2015-06-18 16:52:10 -07:00
Satnam Singh
3e7799d9a8
Merge pull request #9845 from liggitt/kubernetes_service_uid
...
Apply BeforeCreate logic to kubernetes service
2015-06-18 16:28:49 -07:00
Satnam Singh
28197e07d6
Merge pull request #9841 from smarterclayton/fix_apiserver_abstractions
...
Cleaning up apiserver method signatures
2015-06-18 15:36:52 -07:00
Clayton Coleman
debd42a07d
Cleaning up apiserver method signatures
...
A lot of the changes in apiserver could have been represented more
cleanly - this returns the signatures to their older behavior (and
unbreaks OpenShift).
2015-06-18 15:13:41 -04:00
Satnam Singh
798739f013
Merge pull request #10006 from brendandburns/ssh
...
Truncate SSH usernames to 32 chars.
2015-06-18 11:44:26 -07:00
Brendan Burns
075c075b9e
Truncate SSH usernames to 32 chars.
2015-06-17 23:10:32 -07:00
CJ Cullen
15596ede41
Make AddSSHKeys a controller loop. Make sure master's always initializes m.tunnels.
2015-06-17 17:46:27 -07:00
Jordan Liggitt
e869d5c6fc
Apply BeforeCreate logic to kubernetes service
2015-06-16 21:08:42 -04:00
CJ Cullen
48f672af92
Change SSHTunnelList to struct to make Open() semantics better.
2015-06-16 10:36:38 -07:00
CJ Cullen
66fb8ccb02
Add ssh tunnel-open metrics
2015-06-15 17:28:54 -07:00
CJ Cullen
faa9313eea
Fix several potential crashes in sshtunnel open/close code.
2015-06-15 14:38:37 -07:00
Justin Santa Barbara
6f3879e3bb
Actually pass down ServiceNodePortRange so it is used
...
Also fix default range to match what we've documented (off-by-one)
Fix #9318
2015-06-08 18:03:42 -04:00
CJ Cullen
9ab329827a
Change sshproxy to poll registry for nodes every 10 seconds (reduces window where closed tunnels from scaling down may exist).
2015-06-05 15:24:17 -07:00
CJ Cullen
cb317604ab
Some refactoring. Only selectively use ssh proxy.
...
Add NetworkName to gce.Config.
Add locking to uses of master.tunnels.
2015-06-05 14:55:16 -07:00
CJ Cullen
1ae8801387
Fix transport creation logic.
...
Refactor loadTunnels to allow one path for load, another for refresh.
Make SSHTunnelList.Close sleep for a minute before actually closing each tunnel.
2015-06-05 14:55:16 -07:00
Brendan Burns
7ea533d871
Add the SSHTunnel transport to the kubelet client.
2015-06-05 14:55:15 -07:00
CJ Cullen
de9a5f43bc
Specify sshUser, sshKeyfile in kube-apiserver manifest.
...
Trim space on ssh key so GCE doesn't treat it as 2 lines.
A couple other minor fixes.
2015-06-05 14:55:15 -07:00
Brendan Burns
5115fd5703
Add key generation.
2015-06-05 14:55:15 -07:00
Brendan Burns
30a89968a4
Initial proxy tunnelling.
2015-06-05 14:54:20 -07:00
Quinton Hoole
521446503a
Merge pull request #9269 from caesarxuchao/make-v1-enabled-by-default
...
Make v1 enabled by default
2015-06-04 13:29:48 -07:00
Chao Xu
ef61b031f5
make v1 enabled by default
2015-06-04 11:37:44 -07:00
Chao Xu
c2e21fe5d7
use c.EtcdHelper in master.go
2015-06-04 09:39:05 -07:00
Daniel Smith
1690617ee6
remove ro service
2015-06-03 16:45:54 -07:00
Daniel Smith
3f454b7599
remove ro refs from more places
2015-06-03 15:41:09 -07:00
Prashanth Balasubramanian
0162529ea5
Default minRequestTimeout to 1800s
2015-06-03 08:47:45 -07:00
Prashanth Balasubramanian
448867073d
Pipe minRequestTimeout as an arg to the apiserver
2015-06-03 08:44:14 -07:00
CJ Cullen
934c553c04
Clarify description/usage of --advertise-address, Master.PublicAddress
2015-06-02 15:23:32 -07:00
CJ Cullen
085a48a70e
Add an advertise-address flag. This allows the address that the apiserver binds
...
to (possibly 0.0.0.0) to be different than the address on which members of the cluster
can reach the apiserver (possibly not a local interface).
2015-06-02 14:33:15 -07:00
Kris
f4e2c738f6
Delete deprecated API versions
...
pkg/service:
There were a couple of references here just as a reminder to change the
behavior of findPort. As of v1beta3, TargetPort was always defaulted, so
we could remove findDefaultPort and related tests.
pkg/apiserver:
The tests were using versioned API codecs for some of their encoding
tests. Necessary API types had to be written and registered with the
fake versioned codecs.
pkg/kubectl:
Some tests were converted to current versions where it made sense.
2015-05-29 17:17:35 -07:00
Tim Hockin
4318ca5a8b
Rename 'portal IP' to 'cluster IP' most everywhere
...
This covers obvious transforms, but not --portal_net, $PORTAL_NET and
similar.
2015-05-28 16:10:44 -07:00
CJ Cullen
36d54b2094
Remove /Validate endpoint
2015-05-26 10:49:18 -07:00
Justin Santa Barbara
9255770068
Fix a few occurences of old language (e.g. visibility -> ServiceType)
2015-05-22 19:14:28 -04:00
Justin Santa Barbara
3bb2fe2425
Create port allocator, based on IP allocator mechanism
...
Including some refactoring of IP allocator
2015-05-22 19:14:28 -04:00
Tim Hockin
a548d542db
Rename AffinityType to ServiceAffinity
2015-05-18 17:21:30 -07:00
nikhiljindal
fa9f864782
Adding a script to update etcd objects
2015-05-15 16:20:35 -07:00
Nikhil Jindal
d75bd8bf2a
Merge pull request #7101 from liggitt/service_account
...
ServiceAccounts
2015-05-12 10:23:41 -07:00
Derek Carr
c1158fa696
Merge pull request #7969 from smarterclayton/rest_fixes
...
Fixes to apiserver for subresources and naming
2015-05-12 10:57:34 -04:00
Nikhil Jindal
3d31883829
Merge pull request #8083 from brendandburns/kubectl
...
Add a flag to disable legacy APIs
2015-05-11 17:35:28 -07:00
Clayton Coleman
0617951ead
Public read only port is incorrect in master
2015-05-11 19:20:38 -04:00
Brendan Burns
d8f48290e9
Add a flag to disable legacy APIs
2015-05-11 16:09:25 -07:00
Jordan Liggitt
53d55f4192
Add ServiceAccount API type, client
2015-05-11 17:18:05 -04:00
Clayton Coleman
84d1f19016
Subresources should be in their parent rest scope
...
A subresource like "Binding" does not necessarily have
to have a namespace. The RESTScope of a subresource
should always be its parent resource.
2015-05-11 15:51:05 -04:00
Clayton Coleman
5bcb96dae1
Separate out the master's control loops
...
These are "Bootstrap Controllers" as distinct from
the controllers in the controller-manager binary - they
are necessary for the cluster to start running.
2015-05-08 16:04:03 -04:00
Clayton Coleman
e200d5a317
Make PortalIP alloc HA
...
* Add an allocator which saves state in etcd
* Perform PortalIP allocation check on startup and periodically afterwards
Also expose methods in master for downstream components to handle IP allocation
/ master registration themselves.
2015-05-08 13:34:16 -04:00
Quinton Hoole
8a4a39d9b4
Merge pull request #7273 from lavalamp/fix7
...
fix master service endpoint system for multiple masters
2015-05-05 11:59:30 -07:00
Wojciech Tyczynski
bd3d853242
Merge pull request #7737 from lavalamp/fixTimeAfter
...
Reduce usage of time.After
2015-05-05 09:28:07 +02:00
Daniel Smith
a41a57cfe1
fix master service endpoint system for multiple masters
2015-05-04 22:55:51 -07:00
Fabio Yeon
1709cf0dbb
Remove node status from "componentstatuses" call.
...
The legacy "/validate" behavior remains unchanged.
2015-05-04 14:34:20 -07:00
Daniel Smith
16a6fb8ef7
Replace calls to time.After with time.NewTimer for explicit stopping
2015-05-04 14:29:33 -07:00
Eric Paris
6b3a6e6b98
Make copyright ownership statement generic
...
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Filip Grzadkowski
15e9bfd9ae
Add a simple cache for objects stored in etcd.
2015-04-30 12:08:56 +02:00
CJ Cullen
182f47ee3d
Revert "Add a simple cache for objects stored in etcd"
2015-04-29 12:06:52 -07:00
Daniel Smith
2802b18b0a
Merge pull request #7288 from fgrzadkowski/perf
...
Add a simple cache for objects stored in etcd
2015-04-29 09:00:33 -07:00
Paul Morie
8fa21ebd62
Merge pull request #7419 from liggitt/secrets_etcd
...
Convert Secret registry to use update/create strategy, allow filtering by Type
2015-04-29 09:59:22 -04:00
Filip Grzadkowski
016e20167b
Add a simple cache for objects stored in etcd.
2015-04-29 13:14:31 +02:00
Brian Grant
a4316aa638
Merge pull request #7454 from nikhiljindal/v1
...
Cloning v1beta3 as v1 and exposing it in the apiserver
2015-04-28 18:06:57 -07:00
nikhiljindal
c4d7e19c8c
Cloning v1beta3 as v1 and exposing it in the apiserver
2015-04-28 16:06:03 -07:00
Jordan Liggitt
ac67fff1cf
Convert Secret registry to use update/create strategy, allow filtering by Type
2015-04-28 15:00:20 -04:00
Robert Bailey
4304b1d24a
Set the 'WWW-Authenticate' header on 401 responses when basic
...
auth is enabled. This is required for basic auth to work with
web browsers.
2015-04-28 11:00:05 -07:00
Daniel Smith
83093af8b0
Merge pull request #5707 from endocode/kbeecher/etcd_prefix
...
Adds ability to define a prefix for etcd paths
2015-04-27 13:37:43 -07:00
Karl Beecher
a7623ca6cc
Adds ability to define a prefix for etcd paths
...
The API server can be supplied (via a command line flag) with a custom
prefix that is prepended to etcd resources paths.
Refs: #3476
2015-04-24 12:12:39 +02:00
nikhiljindal
120904df5f
Fixing serviceErrorHandler to use apiVersion specific codec
2015-04-23 14:32:05 -07:00
Clayton Coleman
10c2ace6bf
Pod Templates
2015-04-22 12:54:25 -04:00
Fabio Yeon
951a125751
Add "componentstatus" to API for easier cluster health check.
2015-04-17 11:58:23 -07:00
Clayton Coleman
b3f03b934d
Merge pull request #6869 from csrwng/pod_connect
...
Pod proxy, portforward and exec subresources
2015-04-17 09:49:12 -04:00
nikhiljindal
f9132dc572
Registering serviceErrorHandler with go-restful
2015-04-16 14:59:44 -07:00
Cesar Wong
d672363387
Pod proxy, exec and portforward subresources
...
Makes it possible to access the following subresources:
/namespaces/<ns>/pods/<pod-name>[:port]/proxy
/namespaces/<ns>/pods/<pod-name>/exec?container=<container>&command=<cmd>
/namespaces/<ns>/pods/<pod-name>/portforward
2015-04-16 10:20:17 -04:00
Alex Robinson
2b14fc1d14
Remove the cloud provider field from the services REST handler and the master
...
now that load balancers are handled by the ServiceController.
2015-04-14 18:56:47 +00:00
Daniel Smith
629d94657e
Merge pull request #6624 from gmarek/status_to_subresource
...
Update NodeStatus use subresources.
2015-04-09 16:00:15 -07:00
Wojciech Tyczynski
0e5b478b4d
ListMinions support for selectors
2015-04-09 14:22:09 +02:00
gmarek
ccc56d3c3c
Update NodeStatus use subresources.
2015-04-09 14:07:40 +02:00
Tim Hockin
f2c8decffe
Clarify network-related flags in the master
...
Rename and rejigger flags to make it more obvious what is happening. Change
the default listen from ChooseHostInterface() to 0.0.0.0.
2015-04-07 15:55:51 -07:00
Derek Carr
27c12d5160
Merge pull request #6473 from markturansky/yoko_pv_client
...
Added PVClaim status subresource
2015-04-07 11:39:58 -04:00
Cesar Wong
8df4758ee9
Pod log subresource
...
Adds a Log subresource to Pod storage. The Log subresource implements
rest.GetterWithOptions and produces a ResourceStreamer resource that
will stream the log output from the pod's host node.
2015-04-07 07:56:24 -04:00
Cesar Wong
58a1b308c1
Refactor storage return for pod etcd storage
...
Convert the return value of pods rest.NewStorage to a struct.
This will allow returning more storage objects for a pod (sub resources)
without awkwardly adding more return values.
2015-04-07 07:46:30 -04:00
markturansky
4e528a847a
added PVClaim status subresource
2015-04-06 14:42:22 -04:00
markturansky
95bd170ca2
PV & PVC Client implementation
2015-04-06 08:46:43 -04:00
Robert Bailey
4488ff95a2
Create an insecure (http) read-only port on the kubelet so that
...
heapster can collect metrics. Update the heapster config to
point to the non-secured port.
2015-04-02 10:45:49 -07:00
Robert Bailey
f15e34a1bf
Revert "Merge pull request #6309 from GoogleCloudPlatform/revert-6243-kubelet-ssl"
...
This reverts commit 96a0a0d618
, reversing
changes made to 2af9b54147
.
2015-04-02 10:44:37 -07:00
Robert Bailey
32a1c052dc
Revert "Configure the kubelet to use HTTPS"
2015-04-01 13:59:31 -07:00
Robert Bailey
58bc792e68
Configure the master to connect to the kubelet using HTTPS.
2015-04-01 09:09:29 -07:00
Brian Grant
af858c99e2
Merge pull request #6098 from nikhiljindal/enableInMaster
...
Enabling v1beta3 api version by default in master
2015-03-31 15:31:18 -07:00
Tim Hockin
186818d787
WIP: Implement multi-port Services
2015-03-30 19:28:11 -07:00
Robert Bailey
bc8af553a3
Configure the kubelet to bind a simple healthz server to a localhost
...
port for monitoring by monit. This is in preparation for the standard
kubelet port to switch to SSL only (and eventually to only accepting
connections on the SSL port that present a proper client SSL cert).
Also standardize the formatting of the monit config files a bit.
2015-03-30 14:20:30 -07:00
nikhiljindal
478b7d5edf
Repurposing enableV1beta3 to disableV1beta3 in master config to enable v1beta3 by default
2015-03-30 11:50:10 -07:00
Brian Grant
f0da47b2dd
Merge pull request #5763 from smarterclayton/get_input_parameters_versioned
...
Expose versioned query parameters and make watch an operation on List
2015-03-27 14:35:23 -07:00
Tim Hockin
8ae203825b
Implement multi-port endpoints
...
Instead of endpoints being a flat list, it is now a list of "subsets"
where each is a struct of {Addresses, Ports}. To generate the list of
endpoints you need to take union of the Cartesian products of the
subsets. This is compact in the vast majority of cases, yet still
represents named ports and corner cases (e.g. each pod has a different
port number).
This also stores subsets in a deterministic order (sorted by hash) to
avoid spurious updates and comparison problems.
This is a fully compatible change - old objects and clients will
keepworking as long as they don't need the new functionality.
This is the prep for multi-port Services, which will add API to produce
endpoints in this new structure.
2015-03-27 12:36:32 -07:00
Clayton Coleman
1618c39a46
Convert List query parameters via object conversion
...
Convert url.Values -> an object, with appropriate versioning. ListOptions
should also expose parameter names to swagger.
2015-03-27 15:03:57 -04:00
Brendan Burns
7c684e4331
Pipe through the ability to set the external hostname for swagger URLs.
2015-03-25 21:08:05 -07:00
Masahiro Sano
c49af0b7cb
port minion registry to generic etcd
2015-03-26 02:44:35 +09:00
Saad Ali
1f50bd226b
Merge pull request #5854 from fgrzadkowski/delete_pod_cache
...
Delete pod_cache and rely on updating pod status by kublet.
2015-03-25 09:17:09 -07:00
Filip Grzadkowski
74da3b14b0
Delete pod_cache and rely on updating pod status by kublet.
2015-03-25 15:08:09 +01:00
Masahiro Sano
410e11c305
port endpoints to generic etcd
2015-03-25 22:15:19 +09:00
Deyuan Deng
ca68f4a9d1
Rename ConditionFull->ConditionTrue, ConditionNone->ConditionFalse
2015-03-24 17:28:59 -04:00
Clayton Coleman
aee9bdd69a
Merge pull request #5805 from liggitt/node_proxy
...
Improve ResourceLocation API, allow proxy to use authenticated transport
2015-03-24 13:01:54 -04:00
Clayton Coleman
97560c409f
Merge pull request #5554 from derekwaynecarr/namespace_controller
...
Namespace Controller to support Namespace Termination
2015-03-24 12:59:00 -04:00
Jordan Liggitt
a75b501821
Improve ResourceLocation API, allow proxy to use authenticated transport
2015-03-24 11:11:34 -04:00
derekwaynecarr
29c491ef2e
Namespace.Spec.Finalizer support
2015-03-24 10:36:06 -04:00
Prashanth Balasubramanian
ef6601646d
Migrate replication controllers to generic etcd
2015-03-23 17:59:25 -07:00
Clayton Coleman
9bb797fe93
Rename NewREST -> NewStorage to align on terminology
2015-03-23 16:52:21 -04:00
Clayton Coleman
d46087db50
Move REST* interfaces into pkg/api/rest
...
Dependency chain is now api -> api/rest -> apiserver. Makes the
interfaces much cleaner to read, and cleans up some inconsistenties
that crept in along the way.
2015-03-23 16:52:21 -04:00
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