npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

extra-awsconfig

v1.3.7

Published

Get ready to use AWS Config from parameters and environment variables.

Downloads

22

Readme

Get ready to use AWS Config from arguments and environment variables.

Do you want to:

  • Have most of you AWS Config loaded from environment variables?
  • Handle JSON shared credentials and config files?
  • Get AWS Config from arguments?

Setup

  1. Run npm install -g extra-awsconfig in console.
  2. To install this as a package use npm install extra-awsconfig.

Console

awsconfig
# get default AWS config

awsconfig --access_key_id "..." --secret_access_key "..."
awsconfig --accessKeyId "..." --secretAccessKey "..."
awsconfig --id "..." --key "..."
# get AWS config with custom credentials
## all commands are equivalent

awsconfig --region "us-west-1"
# get AWS config with region="us-west-1"

awsconfig --sslEnabled=0
# get AWS config with SSL disabled
## enable SSL with simply --sslEnabled

awsconfig --profile dev
# get AWS config with "dev" profile
## credential and config associated with the profile is loaded

awsconfig --credentialsFile credentials.json
# use a custom credentials file
## credentials/config file can be INI for JSON

Reference

awsconfig [options]
# -> AWS config as JSON

# Options:
# --help: show this help
# -i, --id:       set your AWS access key ID
# -k, --key:      set your AWS secret access key
# -e, --endpoint: set the endpoint to send service requests to
# -r, --region:   set the region to send service requests to (us-east-1)
# -p, --profile:  set the AWS config profile to use (default)
# -f, --file:             set custom AWS config file path
# -cf, --credentialsFile: set custom AWS credentails file path
# ...: for more options check AWS Config options below

# Environment variables:
$AWS_ACCESS_KEY_ID           # set your default AWS access key ID
$AWS_SECRET_ACCESS_KEY       # set your default AWS secret access key
$AWS_DEFAULT_REGION          # set default region to send service requests to (us-east-1)
$AWS_PROFILE                 # set default AWS config profile to use (default)
$AWS_SHARED_CREDENTIALS_FILE # set default AWS credentails file path (~/.aws/credentials)
$AWS_CONFIG_FILE             # set default AWS config file path (~/.aws/config)

# Credential/Config file (INI):
[default]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-east-1
...

# Credential/Config file (JSON, default profile):
{
  "accessKeyId": "...",
  "secretAccessKey": "...",
  "region": "us-east-1",
  ...
}

# Credential/Config file (JSON, multi-profile):
{
  "profiles": true,
  "default": {
    "accessKeyId": "...",
    "secretAccessKey": "...",
    "region": "us-east-1",
    ...
  },
  "dev": { ... },
  ...
}

See AWS Config options.

Package

const awsconfig = require('extra-awsconfig');

awsconfig();
// get default AWS config

awsconfig({accessKeyId: '...', secretAccessKey: '...'});
// get AWS config with custom credentials

awsconfig({region: 'us-west-1'});
// get AWS config with region="us-west-1"

awsconfig({sslEnabled: false});
// get AWS config with SSL disabled

awsconfig({profile: 'dev'});
// get AWS config with "dev" profile

awsconfig({credentialsFile: 'credentials.json'});
// use a custom credentials file
/// credentials/config file can be INI for JSON

var A = process.argv, o = {};
for(var i=0, I=A.length; i<I;)
  i = awsconfig.options(o, A[i], A, i);
awsconfig(o);
// get AWS config from arguments

Reference

const awsconfig = require('extra-awsconfig');

awsconfig.options(options, argument_key, arguments, index);
// options: target object to store AWS config options
// argument_key: name of the argument (ex: "--help")
// arguments: arguments array (ex: process.argv)
// index: current index in arguments array (ex: i=2...args.length)
// -> new index in arguments array


awsconfig(options);
// options: custom AWS config options
// -> AWS config options

// Default options:
options = {
  file: '~/.aws/config',                 // set custom AWS config file path
  credentialsFile: '~/.aws/credentials', // set custom AWS credentails file path
  ... /* for more options check AWS Config options below */
};

See AWS Config options.

Similar

Do you need anything similar?

Suggestions are welcome. Please create an issue.

nodef

References: AWS Config, AWS CLI environment variables.