@aws-sdk/shared-ini-file-loader
    TypeScript icon, indicating that this package has built-in type declarations

    3.47.1 • Public • Published

    @aws-sdk/shared-ini-file-loader

    NPM version NPM downloads

    AWS Shared Configuration File Loader

    This module provides a function that reads from AWS SDK configuration files and returns a promise that will resolve with a hash of the parsed contents of the AWS credentials file and of the AWS config file. Given the sample files below, the promise returned by loadSharedConfigFiles would resolve with:

    {
      configFile: {
        'default': {
          aws_access_key_id: 'foo',
          aws_secret_access_key: 'bar',
        },
        dev: {
          aws_access_key_id: 'foo1',
          aws_secret_access_key: 'bar1',
        },
        prod: {
          aws_access_key_id: 'foo2',
          aws_secret_access_key: 'bar2',
        },
        'testing host': {
          aws_access_key_id: 'foo4',
          aws_secret_access_key: 'bar4',
        }
      },
      credentialsFile: {
        'default': {
          aws_access_key_id: 'foo',
          aws_secret_access_key: 'bar',
        },
        dev: {
          aws_access_key_id: 'foo1',
          aws_secret_access_key: 'bar1',
        },
        prod: {
          aws_access_key_id: 'foo2',
          aws_secret_access_key: 'bar2',
        }
      },
    }

    If a file is not found, its key (configFile or credentialsFile) will instead have a value of an empty object.

    Supported configuration

    You may customize how the files are loaded by providing an options hash to the loadSharedConfigFiles function. The following options are supported:

    • filepath - The path to the shared credentials file. If not specified, the provider will use the value in the AWS_SHARED_CREDENTIALS_FILE environment variable or a default of ~/.aws/credentials.
    • configFilepath - The path to the shared config file. If not specified, the provider will use the value in the AWS_CONFIG_FILE environment variable or a default of ~/.aws/config.

    Sample files

    ~/.aws/credentials

    [default]
    aws_access_key_id=foo
    aws_secret_access_key=bar
    
    [dev]
    aws_access_key_id=foo2
    aws_secret_access_key=bar2
    
    [prod]
    aws_access_key_id=foo3
    aws_secret_access_key=bar3

    ~/.aws/config

    [default]
    aws_access_key_id=foo
    aws_secret_access_key=bar
    
    [profile dev]
    aws_access_key_id=foo2
    aws_secret_access_key=bar2
    
    [profile prod]
    aws_access_key_id=foo3
    aws_secret_access_key=bar3
    
    [profile "testing host"]
    aws_access_key_id=foo4
    aws_secret_access_key=bar4

    Keywords

    none

    Install

    npm i @aws-sdk/shared-ini-file-loader

    DownloadsWeekly Downloads

    2,326,494

    Version

    3.47.1

    License

    Apache-2.0

    Unpacked Size

    43.7 kB

    Total Files

    8

    Last publish

    Collaborators

    • amzn-oss
    • zheallan
    • aws-sdk-bot
    • trivikr-aws
    • jamesiri
    • mattsb42-aws
    • jordonphillips