Commit Graph

69431 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
eff30a31a7
Merge pull request #68120 from wojtek-t/configurable_etcd_servers
Automatic merge from submit-queue (batch tested with PRs 67756, 64149, 68076, 68131, 68120). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Allow for configuring etcd servers addresses in gce
2018-08-31 09:06:42 -07:00
Kubernetes Submit Queue
240a086cec
Merge pull request #68131 from wojtek-t/fix_ipam_retrying
Automatic merge from submit-queue (batch tested with PRs 67756, 64149, 68076, 68131, 68120). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix ipam controller to not drop nodes forever in case of failures

https://github.com/kubernetes/kubernetes/pull/68084 introduced a problem that when 10 attempts to assign a cidr would fail, we stop retrying but the node is still marked as "in-processing" so it would never be reconciled again.

This PR is fixing this problem.
2018-08-31 09:06:39 -07:00
Kubernetes Submit Queue
36187c6a2e
Merge pull request #68076 from rajansandeep/corednsupdate112
Automatic merge from submit-queue (batch tested with PRs 67756, 64149, 68076, 68131, 68120). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Update manifest and version for CoreDNS

**What this PR does / why we need it**:
Updates the manifest of CoreDNS and also bumps the version of CoreDNS to 1.2.2

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes https://github.com/kubernetes/kubernetes/issues/68020

**Special notes for your reviewer**:

**Release note**:

```release-note
CoreDNS is now v1.2.2 for Kubernetes 1.12
```
2018-08-31 09:06:35 -07:00
Kubernetes Submit Queue
5d4b0f81bf
Merge pull request #64149 from sttts/sttts-ctrl-mgr-secure-ports
Automatic merge from submit-queue (batch tested with PRs 67756, 64149, 68076, 68131, 68120). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

kube-ctrl-mgr: enable secure port 10257

This PR enables authn+authz (delegated to the kube-apiserver) and the secure port 10257 for the kube-controller-manager. In addition, the insecure port is disabled.

Moreover, it adds integration test coverage for the `--port` and `--secure-port` flags, plus the testserver infrastructure to tests flags in general inside integration tests.

```release-note
Enable secure serving on port 10257 to kube-controller-manager (configurable via `--secure-port`). Delegated authentication and authorization have to be configured like for aggregated API servers.
```
2018-08-31 09:06:31 -07:00
Kubernetes Submit Queue
9ea0f6c729
Merge pull request #67756 from tizhou86/newPR1
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Add function comment to fix golint error in cmd/kube-scheduler/app.

**What this PR does / why we need it**:
Add function comment to fix golint error in cmd/kube-scheduler/app.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
NONE

**Special notes for your reviewer**:
NONE

**Release note**:

```release-note
NONE
```
2018-08-31 08:58:05 -07:00
Kubernetes Submit Queue
14eb029fba
Merge pull request #67798 from mbohlool/crd_refactoring
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Refactor admission webhook client code to a apiserver/pkg/util package

As part of #67006 This refactoring enable us to share code between admission webhooks and CRD conversion webhooks.

@deads2k @lavalamp @sttts @kubernetes/sig-api-machinery-misc
2018-08-31 06:16:28 -07:00
wojtekt
fcd2882722 Fix retrying in ipam controller 2018-08-31 13:41:16 +02:00
wojtekt
122b7a5f82 Allow for configuring etcd servers 2018-08-31 12:37:13 +02:00
Kubernetes Submit Queue
ff46c0fe6b
Merge pull request #68077 from DirectXMan12/deployments/metrics-server-v0.3.0
Automatic merge from submit-queue (batch tested with PRs 68044, 68077). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Update metrics-server to v0.3.0

v0.3.0 is the latest version of metrics-server, and brings a number of
internal stability improvements as well as some bugfixes and features.

NB: this currently disables Kubelet auth entirely, since this setup
needs to work on GKE for the tests, and GKE doesn't support delegated
Kubelet auth yet.  When that's rectified, we can switch this over to
use secure options.

```release-note
Update metrics-server to v0.3.0.
```
2018-08-31 03:04:32 -07:00
Kubernetes Submit Queue
a9855535ba
Merge pull request #68044 from andyzhangx/azuredisk-zone-fix
Automatic merge from submit-queue (batch tested with PRs 68044, 68077). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

fix select zone error in azure disk creation

**What this PR does / why we need it**:
fix select zone error in azure disk creation, this issue only happens in v1.12

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #68043

**Special notes for your reviewer**:

**Release note**:

```
none
```

/kind bug
/sig azure
/assign @feiskyer 
cc @khenidak
2018-08-31 03:04:27 -07:00
Kubernetes Submit Queue
95e85a5dfb
Merge pull request #68098 from justinsb/fix_grammar_flag_help
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix grammar in secure-port flag help

The phrasing made it difficult to understand the message.

```release-note
NONE
```
2018-08-31 00:34:15 -07:00
Mehdy Bohlool
1d8340bde5 update generated files 2018-08-31 16:07:15 +10:00
Mehdy Bohlool
5652d5cffa Refactor addmission webhook hook client to a util package 2018-08-31 16:07:15 +10:00
Kubernetes Submit Queue
c1e37a5f16
Merge pull request #66056 from mikedanese/fixhang
Automatic merge from submit-queue (batch tested with PRs 67349, 66056). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

wait until apiserver connection before starting kubelet tls bootstrap

I wonder if this helps with sometimes slow network programming

cc @mwielgus @awly
2018-08-30 20:16:32 -07:00
Kubernetes Submit Queue
c081c024c7
Merge pull request #67349 from mikedanese/trbeta
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

promote TokenRequest and projection to beta in 1.12

```release-note
TokenRequest and TokenRequestProjection are now beta features. To enable these feature, the API server needs to be started with the following flags:
* --service-account-issuer
* --service-account-signing-key-file
* --service-account-api-audiences
```
2018-08-30 20:09:42 -07:00
Kubernetes Submit Queue
07f68ea842
Merge pull request #68099 from mkimuram/issue/68093
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix hostpath subpath reconstruction tests are failing

**What this PR does / why we need it**:
Fix hostpath subpath reconstruction tests are failing

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes: #68093

**Special notes for your reviewer**:
/sig storage

**Release note**:
```release-note
NONE
```
2018-08-30 18:34:42 -07:00
Kubernetes Submit Queue
88a0987f93
Merge pull request #68088 from msau42/fix-multizone
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix multizone gce pd subpath test

**What this PR does / why we need it**:
The format pod for readonly tests also needs to fill in the NodeSelector for inline gce pd volumes.

Also rename "gce" driver to "gcepd"

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #68085

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-30 16:48:15 -07:00
Masaki Kimura
79230ee56e Fix hostpath subpath reconstruction tests are failing
Fixes: #68093
2018-08-30 22:53:59 +00:00
Justin Santa Barbara
c0ded2d9f5 Fix grammar in secure-port flag help
The phrasing made it difficult to understand the message.
2018-08-30 18:51:25 -04:00
Kubernetes Submit Queue
bd2370d2ae
Merge pull request #68084 from bowei/backoff-node-ipam
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Make CIDR allocation retry backoff exponentially

This also sets to the retry time to be less aggressive

fixes https://github.com/kubernetes/kubernetes/issues/67348

```release-note
NONE
```
2018-08-30 14:42:32 -07:00
Michelle Au
233db366cc Fix multizone gce pd subpath test 2018-08-30 13:53:04 -07:00
Kubernetes Submit Queue
90fed8e27d
Merge pull request #68074 from mkimuram/issue/68073
Automatic merge from submit-queue (batch tested with PRs 67368, 59930, 68074). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix subpath tests not to fail in namespace deletion

**What this PR does / why we need it**:
This PR fixes below subpath test not to fail in namespace deletion

 - subPath should support restarting containers using directory as subpath
 - subPath should support restarting containers using file as subpath

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes: #68073

**Special notes for your reviewer**:
/sig storage
/sig testing

**Release note**:
```release-note
NONE
```
2018-08-30 12:40:35 -07:00
Kubernetes Submit Queue
cfdefff3a9
Merge pull request #59930 from zetaab/shutdoaw
Automatic merge from submit-queue (batch tested with PRs 67368, 59930, 68074). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

implement InstanceShutdownByProviderID to aws cloudprovider

**What this PR does / why we need it**: implement InstanceShutdownByProviderID to aws cloudprovider

**Which issue(s) this PR fixes**:
Fixes #59925

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2018-08-30 12:40:32 -07:00
Kubernetes Submit Queue
144fa4eb9d
Merge pull request #67368 from islinwb/cleanup
Automatic merge from submit-queue (batch tested with PRs 67368, 59930, 68074). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

use CertificatesV1beta1() instead of deprecated Certificates()

**What this PR does / why we need it**:
/kind cleanup
**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-30 12:40:29 -07:00
Bowei Du
d3facac6ef Make CIDR allocation retry backoff exponentially
This also sets to the retry time to be less aggressive

fixes #67348
2018-08-30 12:03:05 -07:00
Mike Danese
2cf1c75e07 wait until apiserver connection before starting kubelet tls bootstrap 2018-08-30 11:37:05 -07:00
Dr. Stefan Schimanski
8aa0eefce8 kube-controller-manager: disable authn/z on insecure port
This is the old behaviour and we did not intent to change it due to enabled authn/z in general.
As the kube-apiserver this sets the "system:unsecured" user info.
2018-08-30 20:17:29 +02:00
Dr. Stefan Schimanski
e209b643a7 kube-controller-manager: add test server and test serving 2018-08-30 20:16:39 +02:00
Dr. Stefan Schimanski
4cc3b2e6bb kube-controller-manager: enable secure loopback 2018-08-30 20:16:39 +02:00
Dr. Stefan Schimanski
5fa8b4b2ae kube-controller-manager: enable delegated authz/authn if secure port is enabled 2018-08-30 20:16:39 +02:00
Dr. Stefan Schimanski
eb27b61cdb kube-controller-manager: enable secure ports 10257, deprecate insecure port 2018-08-30 20:16:39 +02:00
Kubernetes Submit Queue
e45d74d00d
Merge pull request #67780 from luxas/move_kubelet_config_pkg
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Move kubelet internal ComponentConfig types to `pkg/kubelet/apis/config`

**What this PR does / why we need it**:
This PR is split out from the main PR of https://github.com/kubernetes/kubernetes/pull/67263, in order to make merging each scoped piece of the puzzle easier and smoother.

This PR simply moves the `k8s.io/kubernetes/pkg/apis/kubeletconfig` as-is to `k8s.io/kubernetes/pkg/apis/config` as agreed in the KEP.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
ref: kubernetes/community#2354

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
@kubernetes/sig-node-pr-reviews 
/assign @mtaufen @thockin @liggitt
2018-08-30 11:07:14 -07:00
Kubernetes Submit Queue
55859a60fe
Merge pull request #67836 from sttts/sttts-non-fatal-missing-external-apiserver-authn-configmap
Automatic merge from submit-queue (batch tested with PRs 67764, 68034, 67836). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

apiserver: make not-found external-apiserver-authn configmap non-fatal

As client-ca and requestheader-client-ca is optional in the external-apiserver-authentication config file and components like kube-controller-manager and kube-scheduler won't need that anyway, we better make it non-fatal if the configmap is not found in the cluster.

Consumer counter-part PR to https://github.com/kubernetes/kubernetes/pull/67694.

```release-note
Don't let aggregated apiservers fail to launch if the external-apiserver-authentication configmap is not found in the cluster.
```
2018-08-30 09:59:33 -07:00
Kubernetes Submit Queue
39ea20a5bf
Merge pull request #68034 from msau42/remove-feature-tag
Automatic merge from submit-queue (batch tested with PRs 67764, 68034, 67836). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Remove feature tag from dynamic provisioning topology tests

**What this PR does / why we need it**:
Now that the feature has been moved to beta, remove feature tag to let it run in the standard CI suite.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-30 09:59:30 -07:00
Kubernetes Submit Queue
b61bb1f554
Merge pull request #67764 from shyamjvs/add-etcd-db-size-measurement
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Add etcd DB size monitoring in density test

/cc @wojtek-t 

fyi - @jpbetz @gyuho @kubernetes/sig-scalability-misc 

```release-note
NONE
```
2018-08-30 09:49:43 -07:00
Solly Ross
acf2d8ff1c Update metrics-server to v0.3.0
v0.3.0 is the latest version of metrics-server, and brings a number of
internal stability improvements as well as some bugfixes and features.

NB: this currently disables Kubelet auth entirely, since this setup
needs to work on GKE for the tests, and GKE doesn't support delegated
Kubelet auth yet.  When that's rectified, we can switch this over to
use secure options.
2018-08-30 12:10:09 -04:00
Sandeep Rajan
989f6667d2 prep for 1.12 2018-08-30 11:43:36 -04:00
Kubernetes Submit Queue
4219057223
Merge pull request #68060 from shyamjvs/bump-logexporter-version
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Bump logexporter version

/cc @wojtek-t 

```release-note
NONE
```
2018-08-30 08:39:16 -07:00
Masaki Kimura
69b9cf5ccc Fix subpath tests not to fail in namespace deletion
This commit fixes below subpath test not to fail in namespace deletion

 - subPath should support restarting containers using directory as subpath
 - subPath should support restarting containers using file as subpath

Fixes: #68073
2018-08-30 15:11:27 +00:00
Kubernetes Submit Queue
58ead1c1e8
Merge pull request #65862 from loburm/remove_basic_audit
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Promote AdvancedAuditing to GA

**What this PR does / why we need it**:
Removes deprecated legacy code used for basic audit logging in favor of advanced audit logging.

```release-note
Promote AdvancedAuditing to GA, replacing the previous (legacy) audit logging mechanisms.
```
2018-08-30 07:31:23 -07:00
Shyam Jeedigunta
203664933d Add etcd DB size monitoring in density test 2018-08-30 14:40:59 +02:00
Shyam Jeedigunta
898fb4c936 Bump logexporter version 2018-08-30 12:13:31 +02:00
andyzhangx
630c841075 fix select zone error in azure disk creation
fix comments
2018-08-30 07:33:43 +00:00
Dr. Stefan Schimanski
5d56e791bb apiserver: make not-found external-apiserver-authn configmap non-fatal 2018-08-30 09:23:43 +02:00
Jesse Haka
a68cbd65b7 implement InstanceShutdownByProviderID to aws cloudprovider
changes according what was asked

use string

do not delete instance if it is in any other state than running

use constants

fix
2018-08-30 08:51:26 +03:00
Kubernetes Submit Queue
8aea674681
Merge pull request #67984 from feiskyer/on-prem
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Add support for unmanaged nodes for Azure cloud provider

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

Continue of [Azure cross resource groups feature](https://github.com/kubernetes/features/issues/604).

This PR adds support for unmanaged nodes (such as on-prem or on other clouds) that are labeled with `alpha.service-controller.kubernetes.io/exclude-balancer=true` and `kubernetes.azure.com/managed=false`. Azure cloud provider would exclude such nodes from LoadBalancer backends and always assumes they are existing.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:

See KEP [here](https://github.com/kubernetes/community/blob/master/keps/sig-azure/0025-20180809-cross-resource-group-nodes.md).

**Special notes for your reviewer**:

Azure cloud provider won't provision network routes for on-prem nodes, so cluster admins should ensure the network (including pod-to-pod, pod-to-node and node-to-node connectivity) has been set up properly.

**Release note**:

```release-note
Azure cloud provider now supports unmanaged nodes (such as on-prem) that are labeled with `kubernetes.azure.com/managed=false` and `alpha.service-controller.kubernetes.io/exclude-balancer=true`
```

/assign @khenidak @andyzhangx
/sig azure
/kind feature
/milestone v1.12
2018-08-29 21:41:54 -07:00
Kubernetes Submit Queue
72ef97a141
Merge pull request #67747 from smarterclayton/fix_apiservice
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Give APIServer pretty column output

Simple server side render that prints the implementing service (if any)
and the available condition.

```
$ kubectl get apiservice
NAME                               SERVICE                      AVAILABLE                 AGE
v1.                                Local                        True                      10m
v1.apps                            Local                        True                      10m
v1.authentication.k8s.io           Local                        True                      10m
v2beta1.autoscaling                Local                        True                      10m
v1beta1.metrics                    kube-system/metrics-server   False (DiscoveryFailed)   10m
```

@liggitt @deads2k helps to debug why controllers block (aggregate api is down)

```release-note
`kubectl get apiservice` now shows the target service and whether the service is available
```
2018-08-29 18:53:19 -07:00
Kubernetes Submit Queue
e41d9f1553
Merge pull request #67982 from zetaab/isshut
Automatic merge from submit-queue (batch tested with PRs 66577, 67948, 68001, 67982). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

implement InstanceShutdownByProviderID to openstack

**What this PR does / why we need it**: without this openstack cannot get shutdown taint when instance is shutdown (original pr where this feature was added https://github.com/kubernetes/kubernetes/pull/60009)

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
Openstack supports now node shutdown taint. Taint is added when instance is shutdown in openstack.
```
2018-08-29 16:33:40 -07:00
Kubernetes Submit Queue
ca8f267cc8
Merge pull request #68001 from sttts/sttts-timeout-panic-forward
Automatic merge from submit-queue (batch tested with PRs 66577, 67948, 68001, 67982). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

apiserver: forward panic in WithTimeout filter

```release-note
Return apiserver panics as 500 errors instead terminating the apiserver process.
```

Without this PR a panic in a HTTP handler will not be caught in the Go routine started by the timeout filter. Uncaught panics terminate the process.

This is a strong condidate to be backported to 1.11, 1.10 and 1.9.
2018-08-29 16:33:37 -07:00
Kubernetes Submit Queue
11c47e1872
Merge pull request #67948 from wojtek-t/use_buffers_in_kube_proxy
Automatic merge from submit-queue (batch tested with PRs 66577, 67948, 68001, 67982). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Reduce amount of allocations in kube-proxy

Follow up from https://github.com/kubernetes/kubernetes/pull/65902
2018-08-29 16:33:34 -07:00