/redact-variables

Reduct sensitive and security variables

Primary LanguageJavaScriptMIT LicenseMIT

Build Status MIT License NPM VErsion Codacy Badge Coverage Status

Redact variables

Motivation

Use this product if you want an easy tool to provide a redacted example of the file holding your environement variables.

How to use

$npm i redact-variables
add "redact": "redact <path_to_environement_variable_file>" to your package.json
Check <path_to_environement_variable_file>.example

Supported files

  • Bash
  • JSON
  • dotenv ### Prerequesites

    This library is primarily written for node.js. The library makes use of fs.writeFile function and hence needs node.js 8.0.0 or higher. If this is a problem for you please open an issue and we may consider using a different function to write into a file so an older node version can be supported.

    Install

    With node.js and npm:

    npm install redact-variables -g
    

    You can now use redact from the command line.

    Examples

    Bash script

    If you want to redact all declared variables in a bash script foobar.sh you need to run
    $redact foobar.sh
    This command line will create in the same directory a file foobar.sh.example containing redacted variables.
    foobar.sh contains

    export FOO=bar
    

    foobar.sh.example contains

    export FOO=[REDACTED]
    

    JSON file

    If you want to redact all declared variables in a JSON file foobar.json you need to run
    $redact foobar.json
    This command line will create in the same directory a file foobar.json.example containing redacted variables.
    foobar.json contains

    {
      "foo" : "bar",
      "other_foo" : {
        "more_foo" : "bar"
      }
    }
    

    foobar.json.example contains

    {
      "foo" : [REDACTED],
      "other_foo" : {
        "more_foo" : [REDACTED]
      }
    }
    

    dotenv file

    If you want to redact all declared variables in a dotenv file .env you need to run
    $redact .env
    This command line will create in the same directory a file .env.example containing redacted variables.
    .env contains

    foo=bar
    

    .env.example contains

    foo=[REDACTED]
    

    Contribution

    To contribute to this project fork
    Project-URL