1.6.4 • Published 6 months ago

@jumpgroup/secret-fetcher v1.6.4

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

Secrets Fetcher

This is a Node.js package that replaces secrets in configuration files. It works by fetching variables from a remote server, merging them with any additional variables provided, and then replacing placeholders in configuration files with the merged variables. The resulting files are then saved to a specified output directory.

Installation

To install this package, run the following command:

npm install @jumpgroup/secret-fetcher

Usage

To use this package you can import the:

  • 'replaceSecrets',
  • 'replaceFiles'
  • 'addUpdateSecret'

functions from the package and call it with the necessary parameters or you can use this functions like a command.

Include as a functions

If you want to use this like a functions has the following signature:

replaceSecrets

replaceSecrets(groupKey, groupSecret, input, output, addVariables = {})

Here is an explanation of the parameters:

replaceFiles

replaceFiles(input, output, addVariables = {})

Here is an explanation of the parameters:

addUpdateSecret

addUpdateSecret(groupKey, groupSecret, note, env)

Here is an explanation of the parameters:

Include as a command

If you want to use this like a command you can use the following commands:

replaceSecrets

To replace secrets in configuration files, use the following command:

secret-fetcher replace-secrets --groupKey myGroup --groupSecret mySecret --input config/**/* --output .config --addVariables '{"myVariable": "myValue"}'

The following options are available:

replaceFiles

To replace secrets in configuration files, use the following command:

secret-fetcher replace-files --input config/**/* --output .config --variables '{"myVariable": "myValue"}'

The following options are available:

addUpdateSecret

To add or update a secret, use the following command:

secret-fetcher add-update-secret --groupKey myGroup --groupSecret mySecret --note myNote --env site

The following options are available:

Example Usage

Include as a functions

replaceSecrets

import { replaceSecrets } from '@jumpgroup/secret-fetcher';

replaceSecrets('myGroup', 'mySecret', 'config/**/*', '.config'); 

This will replace secrets in all files in the config directory and its subdirectories and save the resulting files in a directory called ".config".

replaceFiles

import { replaceFiles } from '@jumpgroup/secret-fetcher';

replaceFiles('config/**/*', '.config'); 

This will replace secrets in all files in the config directory and its subdirectories and save the resulting files in a directory called ".config".

addUpdateSecret

import { addUpdateSecret } from '@jumpgroup/secret-fetcher';

addUpdateSecret('myGroup', 'mySecret', 'myNote', 'site'); 

This will create or update a secret with the note "myNote" using tag and name like "myGroup-site".

Include as a command

replaceSecrets

secret-fetcher replace-secrets --groupKey myGroup --groupSecret mySecret --input config/**/* --output .config --addVariables '{"myVariable": "myValue"}'

This will replace secrets in all files in the config directory and its subdirectories and save the resulting files in a directory called ".config".

replaceFiles

secret-fetcher replace-files --input config/**/* --output .config --variables '{"myVariable": "myValue"}'

This will replace secrets in all files in the config directory and its subdirectories and save the resulting files in a directory called ".config".

addUpdateSecret

secret-fetcher add-update-secret --groupKey myGroup --groupSecret mySecret --note myNote --env site

This will create or update a secret with the note "myNote" using tag and name like "myGroup-site".

License

This package is licensed under the MIT License.

1.6.4

6 months ago

1.6.3

6 months ago

1.6.2

7 months ago

1.6.1

7 months ago

1.6.0

7 months ago

1.5.0

7 months ago

1.4.0

10 months ago

1.2.0

1 year ago

1.3.0

1 year ago

1.2.1

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago