@@ -4,7 +4,7 @@ let debug = require('debug')('node-vault');
44let tv4 = require ( 'tv4' ) ;
55let commands = require ( './commands.js' ) ;
66let mustache = require ( 'mustache' ) ;
7- const rp = require ( 'request-promise-native' ) ;
7+ let rp = require ( 'request-promise-native' ) ;
88
99class VaultError extends Error { }
1010
@@ -24,12 +24,21 @@ module.exports = (config = {}) => {
2424 tv4 = config . tv4 || tv4 ;
2525 commands = config . commands || commands ;
2626 mustache = config . mustache || mustache ;
27- const requestPromise = ( config [ 'request-promise' ] || rp ) . defaults ( {
27+
28+ const rpDefaults = {
2829 json : true ,
2930 resolveWithFullResponse : true ,
3031 simple : false ,
3132 strictSSL : ! process . env . VAULT_SKIP_VERIFY ,
32- } ) ;
33+ } ;
34+
35+ if ( config . rpDefaults ) {
36+ Object . keys ( config . rpDefaults ) . forEach ( key => {
37+ rpDefaults [ key ] = config . rpDefaults [ key ] ;
38+ } ) ;
39+ }
40+
41+ rp = ( config [ 'request-promise' ] || rp ) . defaults ( rpDefaults ) ;
3342 const client = { } ;
3443
3544 function handleVaultResponse ( response ) {
@@ -88,7 +97,7 @@ module.exports = (config = {}) => {
8897 options . uri = uri ;
8998 debug ( options . method , uri ) ;
9099 if ( options . json ) debug ( options . json ) ;
91- return requestPromise ( options ) . then ( client . handleVaultResponse ) ;
100+ return rp ( options ) . then ( client . handleVaultResponse ) ;
92101 } ;
93102
94103 client . help = ( path , requestOptions ) => {
0 commit comments