Commit graph

344 commits

Author SHA1 Message Date
James Phillips 4d0aa9b82a Bumps Raft library. (#3201)
This picks up the fix for https://github.com/hashicorp/raft/issues/212,
which can cause out-of-date followers to get stuck in a loop trying to
sync because they don't discard old snapshot data.

There's some incidental reordering of the vendor.json since the last
update to that file was merged by hand.
2017-06-27 18:41:00 -07:00
James Phillips 59621dbccc Revert "discover: move instance discover code into separate package (#3144)" (#3180)
This reverts commit 26bfb2d00a30bf30ebdd85ba2e1e19f37355853f.
2017-06-23 01:38:55 -07:00
James Phillips 728971afdb Fixes broken HTTP header and method for health checks. (#3178)
* Fixes broken HTTP header and method for health checks.
* Adds a fuzz utility and test to make sure copy is complete.
2017-06-23 01:15:48 -07:00
Kyle Havlovitz e875cc30fa vendor: update github.com/hashicorp/memberlist (#3176) 2017-06-22 14:44:46 -07:00
Frank Schroeder 43c42b12ae
vendor: update github.com/hashicorp/go-discover 2017-06-22 12:46:23 +02:00
Frank Schroeder 3023f6d641
add missing packages
Moving the discover package dependencies out removed
some packages we need.
2017-06-21 11:02:32 +02:00
Frank Schröder 4bdff5fff4 discover: move instance discover code into separate package (#3144)
This patch moves the code that discovers instances from metadata
information to github.com/hashicorp/go-discover with
sub-packages for each provider.
2017-06-21 10:40:38 +02:00
Kyle Havlovitz 5e45aec642 Add an option to disable keyring file (#3145)
Also disables keyring file in dev mode.
2017-06-15 15:24:04 -07:00
Frank Schroeder 4783af5733
vendor: Update github.com/shirou/gopsutil
Pull in fix for data race on host.BootTime.
2017-06-02 07:51:08 +02:00
Frank Schroeder 0a2b982616
vendor: upgrade github.com/armon/go-metrics
Pull in changes to fix race condition for concurrent tests.
2017-06-01 23:52:26 +02:00
Frank Schroeder b66eb6b6ac
vendor: upgrade github.com/go-ole/go-ole
This replaces the monkey patch for github.com/go-ole/go-ole/pull/144

See #3097
2017-06-01 16:05:24 +02:00
Frank Schroeder 1d30241784
vendor: monkey patch github.com/go-ole/go-ole support for s390x
Remove this once https://github.com/go-ole/go-ole/pull/144 gets
merged.

Fixes #3097
2017-06-01 15:31:29 +02:00
Frank Schroeder 9ea307a90d
Revert "vendor: monkey patch github.com/go-ole/go-ole support for s390x"
This reverts commit 50fe2148a81a2d91c7b6f75246f16b452d811e0f.
2017-06-01 15:31:02 +02:00
Frank Schroeder 047b35bd92
vendor: monkey patch github.com/go-ole/go-ole support for s390x
Remove this once https://github.com/go-ole/go-ole/pull/144 gets
merged.
2017-06-01 15:29:47 +02:00
Frank Schroeder c38fbff292
vendor: patch github.com/mitchellh/cli until help output is fixed
We need to init the flagset that cli uses to generate the help
outside of the Run method since Run isn't called anymore for
printing help.
2017-05-31 00:29:29 +02:00
Frank Schroeder ee094a5bc6
vendor: fix data race in github.com/armon/go-metrics/start.go
96 -> 42 data races
2017-05-31 00:29:25 +02:00
Frank Schroeder bd0d4a79b2
vendor: update github.com/mitchellh/cli
This pulls in the patch that fixes the nil panic and the
data race in MockUi.
2017-05-31 00:29:25 +02:00
Kyle Havlovitz e196576c07 Add settings for upshifting to encrypted gossip (#3079) 2017-05-30 08:51:37 -07:00
James Phillips 3cce06fd38
Pulls in Serf logger fix. 2017-05-25 22:02:09 -07:00
James Phillips 0a8a78833e
Updates Serf to pick up small fixes and coordinate NaN/Inf defenses. 2017-05-25 16:16:37 -07:00
Michael Leow 37e159df63
vendor: add github.com/Azure/azure-sdk-for-go 2017-05-24 10:15:38 +02:00
Michael Leow 447413bf99
vendor: add github.com/Azure/go-autorest/autorest/to 2017-05-24 10:15:38 +02:00
Michael Leow bdaf9d6ba9
vendor: add github.com/Azure/go-autorest/autorest/validation 2017-05-24 10:15:37 +02:00
Michael Leow b6d6582acc
vendor: add github.com/Azure/go-autorest/autorest/azure 2017-05-24 10:15:37 +02:00
Michael Leow f2ff7510f3
vendor: add github.com/Azure/go-autorest/autorest/date 2017-05-24 10:15:37 +02:00
Michael Leow ea6dea1dff
vendor: add github.com/Azure/go-autorest/autorest 2017-05-24 10:15:37 +02:00
Michael Leow 6a3524deb4
vendor: add github.com/dgijalva/jwt-go 2017-05-24 10:15:37 +02:00
Sean Chittenden 6037c3c016
Update hashicorp/go-sockaddr to the latest version.
* Adds plural IP helpers (e.g. `GetPrivateIPs`, `GetPublicIPs`)
  hashicorp/go-sockaddr#11
* Adds subnet math hashicorp/go-sockaddr#8
* Fixes helper functions for dual-homed hosts hashicorp/go-sockaddr#10)
2017-05-23 16:47:17 -07:00
Frank Schroeder 39aeb5e520 vendor: remove github.com/hashicorp/scada-client 2017-05-22 11:07:46 +02:00
Frank Schroeder e13f3446ac agent: drop atlas/scada code 2017-05-10 23:06:36 +02:00
Sean Chittenden ec200c7133
Add the minimal fix to restore being able to compile on Illumos.
This brings in the necessary fix to satisfy #2989 without dragging along
additional vendor updates reverted in #3019.
2017-05-09 08:41:44 -07:00
James Phillips 63f61063bf Revert "Fix the build on Illumos." 2017-05-08 20:42:12 -07:00
James Phillips e17e514249
Updates vendored Raft library.
This pulls in https://github.com/hashicorp/raft/pull/207 to get
support for the new-style peers.json recovery file.
2017-05-04 13:27:33 -07:00
Sean Chittenden f4b7feef79
Fix the build on Illumos.
Update `github.com/docker/docker/pkg/system`.
2017-04-28 17:13:20 -07:00
Frank Schroeder a53485bc6d vendor: add github.com/pascaldekloe/goe/verify 2017-04-28 15:00:08 -07:00
Kyle Havlovitz 8119cea849
Vendor the go-rootcerts lib for the client tls options 2017-04-14 13:46:19 -07:00
Seth Vargo bd8de2bdb8
Add pkg/errors 2017-03-23 18:41:20 -04:00
Kyle Havlovitz 37ea20cb44
Add advanced autopilot features 2017-03-22 15:25:16 -07:00
James Phillips 21e2307248
Updates memberlist to get NACK penalty improvements. 2017-03-17 15:28:12 -07:00
James Phillips 8b39dc9dd5
Updates memberlist to get new transport interface. 2017-03-16 16:57:28 -07:00
Kyle Havlovitz 9c7bba7903
Tweak last_contact health logic for leader 2017-03-15 19:57:54 -07:00
James Phillips 30859ff731
Updates AWS Go SDK.
Needed as part of Go 1.8 transition; see https://aws.amazon.com/blogs/developer/aws-sdk-for-go-update-needed-for-go-1-8/.
2017-02-16 23:55:59 -08:00
James Phillips d9f4d4949b
Updates hashicorp/go-immutable-radix to pick up leaf panic fixes.
This fixes #2724 by properly tracking leaf updates during very large
delete transactions.
2017-02-13 16:47:49 -08:00
Jeff Mitchell 726590367f Update unix dial functions to use DialContext with new go-cleanhttp 2017-02-10 21:11:21 -05:00
James Phillips a5028e833e Revert "Updates go-cleanhttp to get better tuning for newer Go versions." 2017-02-10 17:12:56 -08:00
James Phillips 5221c4086c
Updates go-cleanhttp to get better tuning for newer Go versions. 2017-02-10 16:39:19 -08:00
James Phillips 8bcf1a74a9
Updates memberlist and Serf (and adds new dependencies).
This gets a number of improvements:

* Fixed a missing case where gossip would stop flowing to dead nodes for a short while.
* Uses the go-sockaddr library to look for private IP addresses, which prefers non-loopback
  private addresses over loopback ones when trying to automatically determine the advertise address.
* Properly seeds Go's random number generator using the seed library.
* Serf snapshots no longer have the executable bit set on thie file.
2017-02-08 13:56:07 -08:00
Sean Chittenden 405aa17d0e
Update vendor/vendor.json to reflect shiriou/gopsutil#313 being merged. 2017-02-07 22:39:05 -08:00
Kyle Havlovitz 2a2c3bbbda Merge pull request #2717 from hashicorp/f-cli-rework
Begin centralizing command-line parsing
2017-02-07 21:15:06 -05:00
Sean Chittenden 954168fe0c
Update shirou/gopsutil/313 to pull in lowercased HostIDs. 2017-02-06 16:27:56 -08:00
Kyle Havlovitz 53b9fa02ee
vendor: Add golang-text dependency 2017-02-06 13:52:43 -05:00
James Phillips 2df8b492c4
Updates Serf library to get relay fixes.
https://github.com/hashicorp/serf/pull/447
2017-02-06 08:57:36 -08:00
Sean Chittenden 07b92c52e8
Update github.com/shiriou/gopsutil's vendor.json entries.
Direct to `master` commit now that
https://github.com/shirou/gopsutil/pull/312 has been merged.
2017-02-03 22:31:51 -08:00
Sean Chittenden 4c6c18a709
Chase an upstream go fmt that has been long overdue. 2017-02-03 22:31:11 -08:00
Sean Chittenden eab1cd3a2e
Remove _test.go files from shirou/gopsutil 2017-02-03 22:29:02 -08:00
Sean Chittenden 6a787ec6f7
Add durable HostID generation for Windows.
https://github.com/shirou/gopsutil/pull/312
2017-02-02 16:11:54 -08:00
Kyle Havlovitz 21ce56e6f3
Update serf deps 2017-02-01 20:57:37 -05:00
Sean Chittenden 48037c516d
Add missing shirou/gopsutils vendor dependencies and files that were reverted 2017-02-01 10:26:00 -08:00
Sean Chittenden b9ea658cce Merge branch 'master' into f-gopsutil 2017-02-01 08:44:30 -08:00
Sean Chittenden 968a8e8257
Reintroduce the necessary vendor bits for per-node IDs
* `shirou/gopsutil`
* `shirou/w32`
2017-02-01 08:36:24 -08:00
James Phillips d1824ce361 Revert "Adds gopsutil in the loop when trying to make the node ID." 2017-01-31 19:13:49 -08:00
James Phillips ee8d373d6a
Adds gopsutil to vendored deps. 2017-01-31 08:51:25 -08:00
James Phillips b4272f31ad
Updates go-immutable-radix and go-memdb to get fine-grained watches. 2017-01-25 09:58:22 -08:00
Sean Chittenden c82cc25b09
Update hashicorp/go-sockaddr to account for tun(4) interfaces. 2017-01-17 12:37:56 -08:00
Kyle Havlovitz c9e2f72988
vendor: pull in GCE deps 2017-01-12 17:42:06 -05:00
Kyle Havlovitz 6ed38de871
Revert "vendor: Add GCE deps"
This reverts commit 4831b6de40a9291ed461d5c757e7459bbe2c307d.
2017-01-12 17:02:42 -05:00
Kyle Havlovitz ebd37af4ef
Style tweaks and vendor.json cleanup 2017-01-12 16:49:44 -05:00
Kyle Havlovitz 2139dbb029
Merge branch 'master' into f-gce-discovery 2017-01-11 22:57:07 -05:00
Kyle Havlovitz 12da452136
vendor: Update go-memdb dependency 2017-01-09 11:23:09 -08:00
Kyle Havlovitz d5a675e02d
Update memberlist vendor deps 2016-12-13 18:53:40 -05:00
Chris Marchesi 197a3e7bb7 vendor: Add GCE deps
Add Google API and related dependencies for GCE discovery.
2016-12-06 17:46:55 -08:00
Kyle Havlovitz 3a771c8994
Update memberlist vendor deps 2016-12-05 17:27:52 -05:00
Sean Chittenden cf02ce2033
Small vendor update for go-sockaddr: now able to filter by CIDR. 2016-12-03 01:21:34 +11:00
Sean Chittenden 73d8efa908
Update Windows support. 2016-12-02 18:05:18 +11:00
Sean Chittenden 98afed5da3
Fix compilation on Windows. 2016-12-02 17:04:28 +11:00
Sean Chittenden 4104e9e53a
Import github.com/hashicorp/go-sockaddr 2016-12-02 15:14:44 +11:00
James Phillips bd5adea5ba Merge pull request #2555 from hashicorp/pr-2497-slackpad
Updates Circonus library and adds support for custom display name and tags.
2016-11-30 21:42:01 -08:00
James Phillips 4da47b10f0
Adds AWS S3 SDK.
This isn't used in OSS but CE needs it. It'll be easier to manage common deps
in OSS and take them to CE.
2016-11-14 17:56:47 -08:00
James Phillips 2673efed76
Cleans up EC2 vendor entry. 2016-11-14 17:41:58 -08:00
James Phillips b2b883239f
Cleans up go-msgpack vendoring. 2016-11-14 17:37:05 -08:00
James Phillips 3bc8fb1692
Updates Raft checksum. 2016-11-14 17:35:01 -08:00
James Phillips 5e07b61b6c
Removes bad "context" dep. 2016-11-14 17:33:42 -08:00
Kyle Havlovitz 55bae4a4c1 Update raft deps to fix snapshot races in -dev mode (#2498) 2016-11-09 17:10:03 -08:00
matt maier 5e9a8e787e revert to previous circonusllhist 2016-11-09 19:30:32 -05:00
James Phillips 60d0c66be0
Revert "Updates Circonus metrics library and adds support for display name and tags."
This reverts commit bd490ec937a5859ba43b07d9103b3cb8f037e9e5 from #2491.
2016-11-09 16:21:02 -08:00
matt maier c7f98fe988 Updates Circonus metrics library and adds support for display name and tags.
* Update circonus-gometrics

`vendor circonus-labs/circonus-gometrics`
`vendor circonus-labs/circonus-gometrics/api`
`vendor circonus-labs/circonus-gometrics/checkmgr`
`vendor circonus-labs/circonusllhist`
`vendor hashicorp/go-retryablehttp`

* Update Circonus integration expose Check Display Name and Check Tags configuration options.

* Adds version info to docs for new Circonus options.
2016-11-09 13:26:43 -08:00
matt maier febd734bd1 Update circonus-gometrics
`vendor circonus-labs/circonus-gometrics`
`vendor circonus-labs/circonus-gometrics/api`
`vendor circonus-labs/circonus-gometrics/checkmgr`
`vendor circonus-labs/circonusllhist`
`vendor hashicorp/go-retryablehttp`
2016-11-09 15:30:07 -05:00
Kyle Havlovitz b8e2963a4e
vendor: Add aws-go-sdk 2016-11-01 14:10:05 -04:00
Kyle Havlovitz c6f461aa25 Enable snapshots in dev mode (#2453) 2016-10-31 14:39:47 -04:00
James Phillips bc29610124 Adds support for snapshots and restores. (#2396)
* Updates Raft library to get new snapshot/restore API.

* Basic backup and restore working, but need some cleanup.

* Breaks out a snapshot module and adds a SHA256 integrity check.

* Adds snapshot ACL and fills in some missing comments.

* Require a consistent read for snapshots.

* Make sure snapshot works if ACLs aren't enabled.

* Adds a bit of package documentation.

* Returns an empty response from restore to avoid EOF errors.

* Adds API client support for snapshots.

* Makes internal file names match on-disk file snapshots.

* Adds DC and token coverage for snapshot API test.

* Adds missing documentation.

* Adds a unit test for the snapshot client endpoint.

* Moves the connection pool out of the client for easier testing.

* Fixes an incidental issue in the prepared query unit test.

I realized I had two servers in bootstrap mode so this wasn't a good setup.

* Adds a half close to the TCP stream and fixes panic on error.

* Adds client and endpoint tests for snapshots.

* Moves the pool back into the snapshot RPC client.

* Adds a TLS test and fixes half-closes for TLS connections.

* Tweaks some comments.

* Adds a low-level snapshot test.

This is independent of Consul so we can pull this out into a library
later if we want to.

* Cleans up snapshot and archive and completes archive tests.

* Sends a clear error for snapshot operations in dev mode.

Snapshots require the Raft snapshots to be readable, which isn't supported
in dev mode. Send a clear error instead of a deep-down Raft one.

* Adds docs for the snapshot endpoint.

* Adds a stale mode and index feedback for snapshot saves.

This gives folks a way to extract data even if the cluster has no
leader.

* Changes the internal format of a snapshot from zip to tgz.

* Pulls in Raft fix to cancel inflight before a restore.

* Pulls in new Raft restore interface.

* Adds metadata to snapshot saves and a verify function.

* Adds basic save and restore snapshot CLI commands.

* Gets rid of tarball extensions and adds restore message.

* Fixes an incidental bad link in the KV docs.

* Adds documentation for the snapshot CLI commands.

* Scuttle any request body when a snapshot is saved.

* Fixes archive unit test error message check.

* Allows for nil output writers in snapshot RPC handlers.

* Renames hash list Decode to DecodeAndVerify.

* Closes the client connection for snapshot ops.

* Lowers timeout for restore ops.

* Updates Raft vendor to get new Restore signature and integrates with Consul.

* Bounces the leader's internal state when we do a restore.
2016-10-25 19:20:24 -07:00
Adam Wolfe Gordon fa08665ad2 vendor: Remove go-reap
go-reap is no longer used since we no longer reap child processes.
2016-10-04 09:41:29 -06:00
James Phillips a32990f402
Updates vendor info for memberlist. 2016-08-12 11:43:26 -07:00
R.B. Boyer 291a468c87
Validate gossip encryption key before made persistent in local.keyring 2016-08-12 11:42:45 -07:00
James Phillips 359587f70e
Removes support for muxado and protocol version 1. 2016-08-09 18:10:04 -07:00
James Phillips 307a2cd94b
Updates metadata for golang.org/x/sys/unix, keeps SHA the same. 2016-08-09 17:36:48 -07:00
James Phillips 56092d4946
Updates ryanuber/columnize. 2016-08-09 17:35:03 -07:00
James Phillips ce206323bb
Updates mitchellh/copystructure, mitchellh/mapstructure, and mitchellh/reflectwalk. 2016-08-09 17:34:07 -07:00
James Phillips 33ea18fb21
Updates mattn/go-isatty and mitchellh/cli. 2016-08-09 17:26:11 -07:00
James Phillips 6a208e0797
Updates hashicorp/yamux. 2016-08-09 17:24:41 -07:00
James Phillips 1f46758761
Updates hashicorp/scada-client. 2016-08-09 17:24:40 -07:00
James Phillips 6ca99530fa
Updates hashicorp/raft-boltdb. 2016-08-09 17:24:40 -07:00
James Phillips cd97d34344
Updates hashicorp/net-rpc-msgpackrpc. 2016-08-09 17:24:40 -07:00
James Phillips 7caa29363d
Updates hashicorp/memberlist. 2016-08-09 17:24:40 -07:00
James Phillips 4412a7e9fa
Updates hashicorp/logutils. 2016-08-09 17:24:40 -07:00
James Phillips eceb58fff5
Updates hashicorp/go-uuid. 2016-08-09 17:24:40 -07:00
James Phillips 2e931733d0
Updates hashicorp/go-syslog. 2016-08-09 17:24:40 -07:00
James Phillips 4515a1d90b
Updates hashicorp/go-retryablehttp. 2016-08-09 17:24:39 -07:00
James Phillips e53f348a9c
Updates hashicorp/go-reap. 2016-08-09 17:24:39 -07:00
James Phillips d1d5c14c83
Updates hashicorp/go-cleanhttp. 2016-08-09 17:24:39 -07:00
James Phillips 38185955ea
Upates hashicorp/go-checkpoint. 2016-08-09 17:24:39 -07:00
James Phillips bfb6abec90
Updates hashicorp/errwrap and hashicorp/go-multierror. 2016-08-09 17:24:39 -07:00
James Phillips f431598fb6
Updates hashicorp/go-immutable-radix and hashicorp/go-memdb. 2016-08-09 17:24:39 -07:00
James Phillips 99ab3390c2
Updates hashicorp/hcl and hashicorp/hil.
This required a small mod to core Consul code to cope with an interface
change.
2016-08-09 17:24:13 -07:00
James Phillips 8d03a2c948
Removes some unused vendored dependencies. 2016-08-09 16:50:34 -07:00
James Phillips 5f54e902de
Updates fsouza/go-dockerclient.
9b6c972004...a53ba79627
2016-08-09 16:50:04 -07:00
James Phillips 23633f7241
Updates elazarl/go-bindata-assetfs. 2016-08-09 16:36:07 -07:00
James Phillips 0ed936e5e6
Updates circonus-labs/circonus-gometrics and circonus-labs/circonusllhist. 2016-08-09 16:34:48 -07:00
James Phillips e522f5a642
Updates boltdb/bolt. 2016-08-09 16:33:05 -07:00
James Phillips a695c89193
Updates bgentry/speakeasy. 2016-08-09 16:31:32 -07:00
James Phillips fd178c9027
Updates armon/go-radix. 2016-08-09 16:28:34 -07:00
James Phillips 550af4b895
Updates armon/circbuf. 2016-08-09 16:27:51 -07:00
James Phillips 59313b13dc
Updates DataDog/datadog-go. 2016-08-09 16:27:20 -07:00
James Phillips 43dab05630
Updates armon/go-metrics. 2016-08-09 16:27:17 -07:00
James Phillips 93f58eb466
Updates miekg/dns.
75e6e86cc6...db96a2b759
2016-08-09 16:27:11 -07:00
James Phillips f1b47817f2
Updates hashicorp/golang-lru. 2016-08-09 16:26:59 -07:00
James Phillips 7f2346bb0f
Vendors first stage branch of the v2 Raft library. 2016-08-08 19:19:17 -07:00
James Phillips 954c32e6ee
Updates Serf to pick up intent queue fix.
This fixes #1062 by storing intents per-node instead of in a small, fixed-
size circular buffer.
2016-08-08 18:58:44 -07:00
James Phillips 196e3b4b3e
Switches over to govendor. 2016-08-08 18:53:35 -07:00
James Phillips c1be6c0093 Updates Bolt DB to v1.2.1.
This fixes #2203 which was a consistency problem on Windows.
2016-07-25 16:27:31 -07:00
James Phillips 044512c6de Updates armon/go-metrics and adds Circonus vendored libraries. 2016-07-19 16:54:21 -07:00
James Phillips bf9e334dde Updates go-immutable-radix to pull in caching fix. 2016-06-08 19:08:31 -07:00
James Phillips 7e75c894b0 Updates serf to get health score in stats. 2016-06-08 17:20:12 -07:00
James Phillips 1776316053 Updates to latest Serf/memberlist to get lifeguard and TCP joins over DNS. 2016-06-07 14:30:47 -07:00
James Phillips 6ee216eace Pulls in latest Serf to get flap metric. 2016-06-07 09:22:41 -07:00
Jeff Mitchell e061d89fe9 Use upstream high-level SCADA provider 2016-06-01 18:25:39 -04:00
Sean Chittenden 32c24b5447 Update Serf to include serf.NumNodes() 2016-03-23 22:10:50 -07:00
James Phillips ac14a1ca97 Updates BoltDB to v1.2.0 release. 2016-03-22 08:36:46 -07:00
James Phillips cbd296be6a Updates Docker client to fix issue with .10 Docker engine. 2016-03-09 11:32:23 -08:00
James Phillips 06087633f0 Adds in basic query template lookups and vendors newly-updated memdb as well as improved iradix tree. 2016-03-07 10:45:39 -08:00
James Phillips ee43212da4 Updates vendored dependencies.
This removes some unused dependencies that I know we plan to re-add later,
but this makes for a clean `godep save` for now.
2016-03-07 10:45:39 -08:00
James Phillips f4aab86081 Updates memberlist to get goroutine leak fix for TCP pings. 2016-03-07 10:41:54 -08:00
Mat Schaffer fa2ba64654 Metric name typo 2016-02-25 11:20:53 +09:00
Jeff Mitchell 1dfacd8a1e Update go-cleanhttp 2016-02-17 17:03:57 -05:00
Sean Chittenden 333ff22e9a Manage dependencies via Godep
Embrace the future and use Go 1.6's vendor support via Godep.

Go 1.5 users should `export GO15VENDOREXPERIMENT=1`
2016-02-12 16:50:37 -08:00