@@ -19,13 +19,13 @@ import awssig2 from "./awssig2.js";
1919import awssig4 from "./awssig4.js" ;
2020import utils from "./utils.js" ;
2121
22- _require_env_var ( 'S3_BUCKET_NAME' ) ;
23- _require_env_var ( 'S3_SERVER' ) ;
24- _require_env_var ( 'S3_SERVER_PROTO' ) ;
25- _require_env_var ( 'S3_SERVER_PORT' ) ;
26- _require_env_var ( 'S3_REGION' ) ;
27- _require_env_var ( 'AWS_SIGS_VERSION' ) ;
28- _require_env_var ( 'S3_STYLE' ) ;
22+ _requireEnvVars ( 'S3_BUCKET_NAME' ) ;
23+ _requireEnvVars ( 'S3_SERVER' ) ;
24+ _requireEnvVars ( 'S3_SERVER_PROTO' ) ;
25+ _requireEnvVars ( 'S3_SERVER_PORT' ) ;
26+ _requireEnvVars ( 'S3_REGION' ) ;
27+ _requireEnvVars ( 'AWS_SIGS_VERSION' ) ;
28+ _requireEnvVars ( 'S3_STYLE' ) ;
2929
3030const fs = require ( 'fs' ) ;
3131
@@ -208,7 +208,7 @@ function _s3ReqParamsForSigV2(r, bucket) {
208208 if ( PROVIDE_INDEX_PAGE && _isDirectory ( r . variables . uri_path ) ) {
209209 uri = r . variables . uri_path + INDEX_PAGE
210210 }
211-
211+
212212 return {
213213 uri : '/' + bucket + uri ,
214214 httpDate : s3date ( r )
@@ -469,11 +469,11 @@ function _isDirectory(path) {
469469 * @param envVarName {string} environment variable to check for
470470 * @private
471471 */
472- function _require_env_var ( envVarName ) {
472+ function _requireEnvVars ( envVarName ) {
473473 const isSet = envVarName in process . env ;
474474
475475 if ( ! isSet ) {
476- throw ( ' Required environment variable ' + envVarName + ' is missing' ) ;
476+ throw ( ` Required environment variable ${ envVarName } is missing` ) ;
477477 }
478478}
479479
@@ -509,7 +509,7 @@ const maxValidityOffsetMs = 4.5 * 60 * 1000;
509509async function fetchCredentials ( r ) {
510510 /* If we are not using an AWS instance profile to set our credentials we
511511 exit quickly and don't write a credentials file. */
512- if ( process . env [ 'S3_ACCESS_KEY_ID' ] && process . env [ 'S3_SECRET_KEY' ] ) {
512+ if ( utils . areAllEnvVarsSet ( [ 'S3_ACCESS_KEY_ID' , 'S3_SECRET_KEY' ] ) ) {
513513 r . return ( 200 ) ;
514514 return ;
515515 }
@@ -539,8 +539,9 @@ async function fetchCredentials(r) {
539539
540540 utils . debug_log ( r , 'Cached credentials are expired or not present, requesting new ones' ) ;
541541
542- if ( process . env [ 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' ] ) {
543- const uri = ECS_CREDENTIAL_BASE_URI + process . env [ 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' ] ;
542+ if ( utils . areAllEnvVarsSet ( 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' ) ) {
543+ const relative_uri = process . env [ 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' ] || '' ;
544+ const uri = ECS_CREDENTIAL_BASE_URI + relative_uri ;
544545 try {
545546 credentials = await _fetchEcsRoleCredentials ( uri ) ;
546547 } catch ( e ) {
@@ -549,7 +550,7 @@ async function fetchCredentials(r) {
549550 return ;
550551 }
551552 }
552- else if ( process . env [ 'AWS_WEB_IDENTITY_TOKEN_FILE' ] ) {
553+ else if ( utils . areAllEnvVarsSet ( 'AWS_WEB_IDENTITY_TOKEN_FILE' ) ) {
553554 try {
554555 credentials = await _fetchWebIdentityCredentials ( r )
555556 } catch ( e ) {
0 commit comments