Dan Everton
32add0809e
More efficient s3 paging ( #2780 )
2017-06-16 11:09:15 -04:00
Jeff Mitchell
3e7205c4c1
Add another nil guard to S3, follow on from #2785
2017-06-05 10:54:26 -04:00
Vishal Nayak
c31b076360
Avoid panic in s3 list operation ( #2785 )
2017-06-05 10:53:20 -04:00
Mevan Samaratunga
731a7f187f
fixed bug where the project name was not being read from configuration if it was provided via the "tenant" attribute. this was causing the swift client to crash with an EOF error. ( #2803 )
2017-06-05 10:48:39 -04:00
Eugene Bekker
b55d972d24
Fixes #2789 ( #2790 )
2017-06-03 08:15:37 -04:00
Igor Katson
88118dce0f
Add max_parallel parameter to MySQL backend. ( #2760 )
...
* Add max_parallel parameter to MySQL backend.
This limits the number of concurrent connections, so that vault does not die
suddenly from "Too many connections".
This can happen when e.g. vault starts up, and tries to load all the
existing leases in parallel. At the time of writing this, the value
ExpirationRestoreWorkerCount in vault/helper/consts/const.go is set to
64, meaning that if there are enough leases in the vault's DB, it will
generate AT LEAST 64 concurrent connections to MySQL when loading the
data during start-up. On certain configurations, e.g. smaller AWS
RDS/Aurora instances, this will cause Vault to fail startup.
* Fix a typo in mysql storage readme
2017-06-01 15:20:32 -07:00
Jeff Mitchell
9807f77bb8
Fix brokenness from Consul API updates
2017-05-24 11:10:59 -04:00
Michael Ansel
03dbe3f175
Ignore go-zookeeper lock children ( #2724 )
2017-05-22 13:23:28 -04:00
Paul Seiffert
a8ec1466dc
DynamoDB: Check for children more efficiently ( #2722 )
...
* Check for children more efficiently
* Wrap comments to a width of 80
2017-05-15 08:53:41 -07:00
Jeff Mitchell
26781471a6
Oops, fix tests again
2017-05-12 14:38:52 -04:00
Jeff Mitchell
680cc704d1
Fix tests
2017-05-12 14:12:53 -04:00
Jeff Mitchell
858deb9ca4
Don't allow parent references in file paths
2017-05-12 13:52:33 -04:00
Jeff Mitchell
e98690d00c
Ensure we aren't leaking any open FDs in the file backend if we hit certain error conditions
2017-05-09 09:24:43 -04:00
Chris Hoffman
847c86f788
Rename ParseDedupAndSortStrings to ParseDedupLowercaseAndSortStrings ( #2614 )
2017-04-19 10:39:07 -04:00
Jeff Mitchell
30af63c881
Fix azure test round 2
2017-04-17 14:52:52 -04:00
Jeff Mitchell
8cf0cd8cd2
Fix test for changed Azure
2017-04-17 13:18:34 -04:00
Jeff Mitchell
e1e78b1409
Update to new Azure code after dep update ( #2603 )
2017-04-17 12:15:12 -04:00
Mevan Samaratunga
3b2c42f6dd
Added "Domain" configuration parameter to Swift provider to enable V3 authentication ( #2554 )
2017-04-17 11:59:44 -04:00
Sebastian Haba
3322f637ac
add mssql physical backend ( #2546 )
2017-04-06 09:33:49 -04:00
Jonathan Sokolowski
a4ceaf0035
Etcd DNS discovery ( #2521 )
...
* etcd: Add discovery_srv option
2017-04-04 08:50:44 -07:00
VladV
1d4c901aeb
Fix state change notification channels ( #2548 )
2017-03-31 09:01:55 -07:00
Vishal Nayak
b9aa56c17e
s3: use pooled transport for http client ( #2481 )
2017-03-29 10:27:27 -07:00
Marshall Brekka
1a73923a21
Etcd3: Write lock item with lease to ensure release on bad shutdown ( #2526 )
2017-03-28 11:08:41 -04:00
Dan Everton
4ef8ce1198
Add permitPool support to S3 ( #2466 )
2017-03-26 14:32:26 -04:00
Jeff Mitchell
ff3c3db91b
Have Consul's transaction handler use the permit pool
2017-03-09 12:59:42 -05:00
Jeff Mitchell
3d162b63cc
Use locks in a slice rather than a map, which is faster and makes things cleaner ( #2446 )
2017-03-07 11:21:32 -05:00
Jeff Mitchell
f5ffa229f4
Switch physical cache map index value to md5 from sha1 for all the performances
2017-03-06 13:11:14 -05:00
Jeff Mitchell
27399aeb7a
Fix dynamo test that can double close a channel
2017-03-04 16:59:00 -05:00
Jeff Mitchell
111fbc5747
Make cache not actually cache values under core/ ( #2439 )
2017-03-03 16:04:31 -05:00
Marshall Brekka
184b47e20c
Add a TTL to the dynamodb lock implementation. ( #2141 )
2017-02-27 14:30:34 -05:00
Jeff Mitchell
2cc0906b33
Fix breakage for HTTP2 support due to changes in wrapping introduced in 1.8 ( #2412 )
2017-02-27 12:49:35 -05:00
Jeff Mitchell
41ae5d14ce
Add pseudo transactional test
2017-02-20 11:40:36 -05:00
Jeff Mitchell
4305900a64
Add faultPseudo for testing
2017-02-20 11:08:03 -05:00
Jeff Mitchell
3230f697bd
Final rep porting ( #2392 )
2017-02-17 09:15:35 -05:00
Colin Arenz
99b01a3d82
Fix listing of deep paths in PostgreSQL backend ( #2393 )
...
This change addresses an issue where deep paths would not be enumerated if parent paths did not contain a key.
Given the keys `shallow` and `deep` at the following paths...
```
secret/shallow
secret/path/deep
```
... a `LIST` request against `/v1/secret` would produce only one result, `shallow`. With this change, the same list request will now list `shallow` and `path/`.
2017-02-17 09:14:11 -05:00
Brian Kassouf
13ec9c5dbf
Load leases into the expiration manager in parallel ( #2370 )
...
* Add a benchmark for exiration.Restore
* Add benchmarks for consul Restore functions
* Add a parallel version of expiration.Restore
* remove debug code
* Up the MaxIdleConnsPerHost
* Add tests for etcd
* Return errors and ensure go routines are exited
* Refactor inmem benchmark
* Add s3 bench and refactor a bit
* Few tweaks
* Fix race with waitgroup.Add()
* Fix waitgroup race condition
* Move wait above the info log
* Add helper/consts package to store consts that are needed in cyclic packages
* Remove not used benchmarks
2017-02-16 10:16:06 -08:00
Xiang Li
220930f539
etcdbackend: support version auto discovery ( #2299 )
2017-01-26 17:19:13 -05:00
Jeff Mitchell
f856963706
Revert file backend base64ing, as we need to fix a pathological case for some keys
2017-01-25 12:27:18 -05:00
Brian Kassouf
d6198b7e24
change consistency config value from a bool to a string ( #2282 )
2017-01-19 17:36:33 -05:00
Vishal Nayak
bb1f28ce66
Merge pull request #2203 from hashicorp/file-backend-base64
...
Base64 encode the file names in the 'file' physical backend
2017-01-19 10:10:57 -05:00
Brian Kassouf
6aa097b727
Add require consistent flag to Consul Lock
2017-01-13 12:22:14 -08:00
Brian Kassouf
ce6fa6b30e
Add test for require_consistency option
2017-01-13 10:24:40 -08:00
Brian Kassouf
fb19c81f62
add a option for strong consistancy for consul
2017-01-13 09:49:04 -08:00
vishalnayak
5aeb276018
correcting the error statement
2017-01-13 03:58:46 -05:00
vishalnayak
76a456cc97
file: correct the old entry check
2017-01-13 03:51:09 -05:00
vishalnayak
8b579d47a9
address review feedback
2017-01-13 03:39:33 -05:00
vishalnayak
d2026364c7
physical/file: added test for base64 encoding the storage file names
2017-01-13 01:00:25 -05:00
vishalnayak
cbccf9869d
physical/file: Handle file duplication case while updating
2017-01-13 01:00:25 -05:00
vishalnayak
17652b486d
physical/file: Fix the deletion flow
2017-01-13 01:00:25 -05:00
vishalnayak
a952d324fe
physical: file backend to have key base64 URL encoded
2017-01-13 01:00:25 -05:00
Adam Shannon
6fc53dc135
physical/zk: Ignore ErrNoNode when deleting znodes ( #2256 )
2017-01-11 09:42:30 -05:00
Jeff Mitchell
80dc5819d3
Use dockertest.v2 ( #2247 )
...
New dockertest has a totally different API and will require some serious
refactoring. This will tide over until then by pinning the API version.
2017-01-09 13:46:54 -05:00
Jeff Mitchell
9e5d1eaac9
Port some updates
2017-01-06 15:42:18 -05:00
Xiang Li
2faa3f5764
etcd3: remove wrong keys checking for prefix request ( #2231 )
2017-01-05 07:48:46 -05:00
Xiang Li
02070e0fc6
physical: add etcd3 backend ( #2168 )
2017-01-03 14:43:46 -05:00
Dan Everton
e4a1f5a3bb
Page results from S3. ( #2224 )
...
S3 results require paging to ensure that all results are returned. This
PR changes the S3 physical backend to use the new ListObjectV2 method
and pages through all the results.
Fixes #2223 .
2017-01-03 11:15:48 -05:00
Jeff Mitchell
f9c6fc2e6b
Actually give the logger to inmem backend
2016-12-15 15:48:51 -05:00
Christopher Pauley
f07a19c503
gcs physical backend ( #2099 )
2016-12-01 11:42:31 -08:00
Jeff Mitchell
736a4b111c
Add some commenting to PermitPool
2016-11-28 18:34:58 -05:00
Kevin Goess
33bf26f320
check for failure on that mysql query ( #2105 )
2016-11-17 09:59:27 -05:00
Jeff Mitchell
9066f012a7
Fix cache default size and docs
2016-11-01 10:24:35 -04:00
Jeff Mitchell
9d5462ca04
Don't cache physical responses when thre was an error ( #2040 )
2016-10-28 12:55:56 -04:00
Paweł Rozlach
33b4683dfd
Post-review fixes for file/zk recursive empty prefix delete
2016-10-05 08:08:00 -04:00
Pawel Rozlach
41ade15f73
Fix file backend so that it properly removes nested secrets.
...
This patch makes file backend properly remove nested secrets, without leaving
empty directory artifacts, no matter how nested directories were.
2016-10-04 21:56:12 +02:00
Pawel Rozlach
44b4704cfa
Fix zookeeper backend so that properly deletes/lists secrets.
...
This patch fixes two bugs in Zookeeper backends:
* backend was determining if the node is a leaf or not basing on the number
of the childer given node has. This is incorrect if you consider the fact
that deleteing nested node can leave empty prefixes/dirs behind which have
neither children nor data inside. The fix changes this situation by testing
if the node has any data set - if not then it is not a leaf.
* zookeeper does not delete nodes that do not have childern just like consul
does and this leads to leaving empty nodes behind. In order to fix it, we
scan the logical path of a secret being deleted for empty dirs/prefixes and
remove them up until first non-empty one.
2016-10-04 21:56:12 +02:00
Pawel Rozlach
68fc52958d
Add tests for nested/prefixed secrets removal.
...
Current tests were not checking if backends are properly removing
nested secrets. We follow here the behaviour of Consul backend, where
empty "directories/prefixes" are automatically removed by Consul itself.
2016-10-04 21:55:33 +02:00
Jeff Mitchell
226ef5d78c
Make HA in etcd off by default. ( #1909 )
...
Fixes #1908
(Doesn't really "fix" it but someone from the community needs to step up
if they want to see this fixed.)
2016-09-21 14:01:36 -04:00
James Pearson Hughes
f598c78d98
DynamoDB: fix log typo ( #1891 )
2016-09-14 15:16:24 -04:00
Jeff Mitchell
ffaaacd029
Have file backend remove empty dirs. ( #1821 )
...
Add tests to check that prefixes are being properly removed (or at
least, not listed) from backends.
2016-08-31 14:12:28 -04:00
Jeff Mitchell
2ce4397deb
Plumb through the ability to set the storage read cache size. ( #1784 )
...
Plumb through the ability to set the storage read cache size.
Fixes #1772
2016-08-26 10:27:06 -04:00
Jeff Mitchell
58b32e5432
Convert to logxi
2016-08-21 18:13:37 -04:00
Jeff Mitchell
2860dcc60f
gofmt
2016-08-19 16:48:32 -04:00
Jeff Mitchell
734e80ca56
Add permit pool to dynamodb
2016-08-15 19:45:06 -04:00
Jeff Mitchell
dcba6129e3
Use dockertest for physical consul tests, and always run them
2016-08-15 16:20:32 -04:00
Jeff Mitchell
37320f8798
Request forwarding ( #1721 )
...
Add request forwarding.
2016-08-15 09:42:42 -04:00
Jeff Mitchell
9e204bd88c
Add arbitrary string slice parsing.
...
Like the KV function, this supports either separated strings or JSON
strings, base64-encoded or not.
Fixes #1619 in theory.
2016-08-03 14:24:16 -04:00
Jeff Mitchell
c025b292b5
Cleanup
2016-08-03 13:09:12 -04:00
vishalnayak
91e60a5824
Fixed the test after removing shutdown bool
2016-08-01 12:20:38 -04:00
Jeff Mitchell
6ffefb649d
Close the shutdown channel instead of sending a value down
2016-08-01 11:58:45 -04:00
vishalnayak
05b8ce8348
Address review feedback
2016-08-01 11:15:25 -04:00
vishalnayak
21d155f4af
Fix physical/consul test case
2016-08-01 10:55:47 -04:00
vishalnayak
5ed10f4074
Make the defer statement of waitgroup to execute last
2016-08-01 10:24:27 -04:00
vishalnayak
ea2e677f02
Sharing shutdown message with physical consul backend
2016-07-31 10:09:16 -04:00
vishalnayak
a8b4fc0d3c
Add waitgroup wait to allow physical consul to deregister checks
2016-07-30 13:17:29 -04:00
vishalnayak
32a72e84dc
Added test for service tags
2016-07-22 09:04:42 -04:00
vishalnayak
58bd985551
Address review feedback from @jefferai
2016-07-22 08:44:16 -04:00
vishalnayak
9bfb518e3f
Make debug statements specify that the logs are for physical/consul
2016-07-22 07:03:14 -04:00
vishalnayak
248889dd1b
Fix broken test
2016-07-22 06:42:56 -04:00
vishalnayak
765d131b47
Added service-tags config option to provide additional tags to registered service
2016-07-22 04:41:48 -04:00
vishalnayak
bd8ff10462
Address review feedback from @sean
2016-07-21 19:04:43 -04:00
vishalnayak
6872df833a
Uniquify the check ID
2016-07-19 14:17:50 -04:00
vishalnayak
f54dc7a31e
Set QueryOptions while fetching service information from Consul catalog
2016-07-19 14:07:06 -04:00
vishalnayak
11e6fe0fb4
Fix tests
2016-07-19 07:58:47 -04:00
vishalnayak
ac7ecbce5c
Fixed re-registrations and health-check flatenning issue
2016-07-19 07:06:41 -04:00
Jeff Mitchell
c47fc73bd1
Use parsebool
2016-07-18 13:49:05 -04:00
Jeff Mitchell
a3ce0dcb0c
Turn off DynamoDB HA by default.
...
The semantics are wonky and have caused issues from people not reading
docs. It can be enabled but by default is off.
2016-07-18 13:19:58 -04:00
vishalnayak
c14235b206
Merge branch 'master-oss' into json-use-number
...
Conflicts:
http/handler.go
logical/framework/field_data.go
logical/framework/wal.go
vault/logical_passthrough.go
2016-07-15 19:21:55 -04:00
vishalnayak
407722a9b4
Added tls_min_version to consul storage backend
2016-07-12 20:10:54 -04:00
vishalnayak
f34f0ef503
Make 'tls_min_version' configurable
2016-07-12 19:32:47 -04:00
vishalnayak
46d34130ac
Set minimum TLS version in all tls.Config objects
2016-07-12 17:06:28 -04:00