https://github.com/block65/pommel
Store and access sensitive environment variables using your operating system's secure keystore.
https://github.com/block65/pommel
Last synced: 3 months ago
JSON representation
Store and access sensitive environment variables using your operating system's secure keystore.
- Host: GitHub
- URL: https://github.com/block65/pommel
- Owner: block65
- License: mit
- Created: 2020-08-19T07:54:23.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-04-12T10:49:45.000Z (about 3 years ago)
- Last Synced: 2025-10-23T21:54:51.823Z (7 months ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/@block65/pommel
- Size: 534 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Pommel
A tool to securely store and access sensitive environment variables in
a development environment. Pommel stores these values in your operating system's
secure keystore.
Sensitive environment variables are only populated when you intentionally
invoke `pommel exec` and they are therefore safely hidden away from your
everyday command line usage.
Inspired by [aws-vault](https://github.com/99designs/aws-vault)
## Installing
```shell script
yarn global add @block65/pommel
```
```shell script
npm install --global @block65/pommel
```
## Quick start
### Setting values
Set a value in the profile called `prod`
```shell script
$ pommel set prod SOME_SECRET_ENV_VAR QGJsb2NrNjUvcG9tbWVs
```
### Executing commands
Execute the command `/usr/bin/env` in the profile called `prod`
```shell script
$ pommel exec prod -- /usr/bin/env
TERM=xterm
USER=user
DISPLAY=:0
...
SOME_SECRET_ENV_VAR=QGJsb2NrNjUvcG9tbWVs
```
### Chaining commands
Execute the command `terraform apply` with profile called `prod` and then, `aws-vault` with profile `prod`
```shell script
$ pommel exec prod -- aws-vault exec prod -- terraform apply
```
## Usage
```
Usage: pommel [options] [command]
Options:
-V, --version output the version number
-h, --help display help for command
Commands:
exec <--> [args...] execute a specific command within the profile environment
set [key] [value] Set environment variable [key] with value [value] to the
profile
unset [key] Unset environment variable
dump dump the profile environment
slurp slurp environment variables from STDIN
help [command] display help for command
```