VAL
5f80aec3c7
Don't clone OutputCurlString value ( #14968 )
...
* Don't clone OutputCurlString value, add flag to docs
* Add changelog
2022-04-08 09:58:50 -07:00
Anton Averchenkov
8db5c6c6cc
Add ability to pass certificate PEM bytes to vault/api ( #14753 )
2022-04-06 11:21:46 -04:00
Anton Averchenkov
3c6439b1fc
Replace http method strings with net/http constants ( #14677 )
2022-03-24 13:58:03 -04:00
Ben Ash
ef8e4008a8
Add ability to optionally clone a Client's token ( #13515 )
2021-12-22 17:07:26 -05:00
Ben Ash
fab2f630b4
Fix properly initialize replicateStateStore from SetReadYourWrites() ( #13486 )
...
Fixes an issue where the `replicateStateStore` was being set to `nil`
upon consecutive calls to `client.SetReadYourWrites(true)`.
2021-12-21 16:14:39 -05:00
Ben Ash
0b095588c6
api.Client: support isolated read-after-write ( #12814 )
...
- add new configuration option, ReadYourWrites, which enables a Client
to provide cluster replication states to every request. A curated set
of cluster replication states are stored in the replicationStateStore,
and is shared across clones.
2021-10-14 14:51:31 -04:00
vinay-gopalan
458927c2ed
[VAULT-3157] Move mergeStates
utils from Agent to api module ( #12731 )
...
* move merge and compare states to vault core
* move MergeState, CompareStates and ParseRequiredStates to api package
* fix merge state reference in API Proxy
* move mergeStates test to api package
* add changelog
* ghost commit to trigger CI
* rename CompareStates to CompareReplicationStates
* rename MergeStates and make compareStates and parseStates private methods
* improved error messaging in parseReplicationState
* export ParseReplicationState for enterprise files
2021-10-06 10:57:06 -07:00
Ben Ash
e899e2adfa
Add ability to optionally clone an api.Client's headers ( #12117 )
2021-07-19 17:15:31 -04:00
Calvin Leung Huang
8cb48018b7
api/client: provide the ability to set a logger on retryablehttp.Client ( #11696 )
...
* api/client: provide the ability to set a logger on retryablehttp.Client
* go mod tidy; fix import ordering
* go mod vendor
2021-05-27 10:25:25 -07:00
Brian Kassouf
303c2aee7c
Run a more strict formatter over the code ( #11312 )
...
* Update tooling
* Run gofumpt
* go mod vendor
2021-04-08 09:43:39 -07:00
Ace Eldeib
9584c989ca
don't panic on connection errors in DefaultRetryPolicy ( #11002 )
...
fixes #11001
2021-02-25 13:16:17 -05:00
Josh Black
67ffd0b6de
Fix client.Clone() to include the address. ( #10077 )
2020-11-06 11:27:35 -08:00
Daniel Spangenberg
8007845ba4
Fix SRV Lookups ( #8520 )
...
* Pin HTTP Host header for all client requests
* Drop port map scheme
* Add SRV Lookup environment var
* Lookup SRV records only when env var is specified
* Add docs
Co-Authored-By: Michel Vocks <michelvocks@gmail.com>
2020-03-11 14:22:58 +01:00
Becca Petrin
c2894b8d05
Add Kerberos auth agent ( #7999 )
...
* add kerberos auth agent
* strip old comment
* changes from feedback
* strip appengine indirect dependency
2020-01-09 14:56:34 -08:00
Jeff Mitchell
f522dd8f35
Add backwards compat support for API env vars ( #7135 )
...
Several env vars got renamed in
https://github.com/hashicorp/vault/pull/6306 . This re-adds support for
those.
Indirectly addresses
https://github.com/hashicorp/consul-template/pull/1233 although they
should still update to the new values.
2019-07-17 06:29:25 -04:00
Jeff Mitchell
8bcb533a1b
Create sdk/ and api/ submodules ( #6583 )
2019-04-12 17:54:35 -04:00
ncabatoff
9670ec28b1
api.NewClient() now uses $VAULT_NAMESPACE as an input. ( #6470 )
...
* api.NewClient() now uses $VAULT_NAMESPACE as an input.
* Remove bogus comments.
2019-03-25 13:23:59 -05:00
Austin Green
7fd469af88
Correct variables in "got %v expect %v" errors ( #6437 )
2019-03-19 09:34:13 -07:00
Vishal Nayak
ac2b499fc9
Support reading Vault's address from Agent's config file ( #6306 )
...
* Support reading Vault's address from Agent's config file
* use consts and switch
* Add tls options to agent config vault block
* Update command/agent/config/config.go
Co-Authored-By: vishalnayak <vishalnayak@users.noreply.github.com>
* remove fmt.Printfs
2019-02-28 17:29:28 -05:00
Jeff Mitchell
35cb9bc517
Redo API client locking ( #4551 )
...
* Redo API client locking
This assigns local values when in critical paths, allowing a single API
client to much more quickly and safely pipeline requests.
Additionally, in order to take that paradigm all the way it changes how
timeouts are set. It now uses a context value set on the request instead
of configuring the timeout in the http client per request, which was
also potentially quite racy.
Trivially tested with
VAULT_CLIENT_TIMEOUT=2 vault write pki/root/generate/internal key_type=rsa key_bits=8192
2018-05-25 14:38:06 -04:00
Lucy Davinhart
4b8589a9b8
Fix syntax errors causing api package to fail tests ( #4555 )
2018-05-11 16:28:03 -04:00
Robbie McKinstry
9765779622
Client side rate limiting ( #4421 )
2018-05-11 10:42:06 -04:00
Jeff Mitchell
bab8db3328
Don't allow non-printable characters in the API client's token ( #3841 )
2018-01-24 19:57:49 -05:00
Jeff Mitchell
e4750fc793
Fix typo in test (and failure)
2017-11-13 10:35:36 -05:00
Jeff Mitchell
57f60c4f9f
Fix client test
2017-11-12 12:34:56 -05:00
Jeff Mitchell
08d9353c60
Only call ConfigureTransport if "h2" is not already in NextProtos.
...
Fixes #3435
2017-10-27 14:08:30 -04:00
Billie Cleek
3033a7beb6
do not panic when Client.Transport is not *http.Transport ( #3440 )
2017-10-10 08:46:54 -04:00
Jeff Mitchell
3cf4e3e142
Fix panic when setting a client http client with no transport ( #3437 )
...
Fixes #3436
2017-10-09 08:49:20 -04:00
Gobin Sougrakpam
2ddbc4a939
Adding option to set custom vault client timeout using env variable VAULT_CLIENT_TIMEOUT ( #3022 )
2017-07-18 09:48:31 -04:00
vishalnayak
ff22640015
Use default config and read environment by default while creating client object
2016-08-12 11:37:13 -04:00
Jeff Mitchell
57cdb58374
Switch to pester from go-retryablehttp to avoid swallowing 500 error messages
2016-07-11 21:37:46 +00:00
Jeff Mitchell
7023eafc67
Make the API client retry on 5xx errors.
...
This should help with transient issues. Full control over min/max delays
and number of retries (and ability to turn off) is provided in the API
and via env vars.
Fix tests.
2016-07-06 16:50:23 -04:00
Adam Shannon
fb07d07ad9
all: Cleanup from running go vet
2016-04-13 14:38:29 -05:00
vishalnayak
aee006ba2d
moved the test cert keys to appropriate test-fixtures folder
2016-02-29 15:49:08 -05:00
vishalnayak
dca18aec2e
replaced old certs, with new certs generated from PKI backend, containing IP SANs
2016-02-28 22:15:54 -05:00
Jeff Mitchell
32e23bea71
Move environment variable reading logic to API.
...
This allows the same environment variables to be read, parsed, and used
from any API client as was previously handled in the CLI. The CLI now
uses the API environment variable reading capability, then overrides any
values from command line flags, if necessary.
Fixes #618
2015-11-04 10:28:00 -05:00
Seth Vargo
6f248425a6
Update documentation around cookies
2015-09-03 10:36:59 -04:00
Jeff Mitchell
a8ef0e8a80
Remove cookie authentication.
2015-08-21 19:46:23 -07:00
Seth Vargo
cc25b8b15c
Remove api dependency on http package
2015-04-23 19:58:44 -04:00
Seth Vargo
e5fca055f7
Use VAULT_ADDR instead
2015-04-23 11:46:22 -04:00
Seth Vargo
b421689ab4
Read environment variables for VAULT_HTTP_ADDR and VAULT_TOKEN
2015-04-23 11:43:20 -04:00
Armon Dadgar
fbaca87f56
api: Support redirect for HA
2015-04-20 11:30:35 -07:00
Mitchell Hashimoto
df4dc88176
api: SetToken
2015-03-30 21:20:23 -07:00
Mitchell Hashimoto
c2e1371217
api: re-use proper token constant
2015-03-30 11:14:51 -07:00
Mitchell Hashimoto
02126dd935
api: store token cookie, tests
2015-03-11 17:46:42 -05:00