
Security News
Researcher Exposes Zero-Day Clickjacking Vulnerabilities in Major Password Managers
Hacker Demonstrates How Easy It Is To Steal Data From Popular Password Managers
Remote environment management. Heroku style environment configuration brought to any production environment that has a key/value store.
Managing your system's configuration with environment variables is effective, convenient, safe, and flexibile. It lets an application use the same code across all environments and be configured entirely by variables in the environment. The problem comes in when you have multiple production systems that need to have the same environment. Problems are compounded when there are multiple developers deploying to the same environment but with differing local copies of production environment variables. Of course, ideally nobody would be in that kind of distributed race conundrum, but in reality people make mistakes and the production flow isn't as coordinated as we may like.
The goal of remenv is to provide a very simple (very Heroku inspired) set of tools for managing an applications environment across any number of systems. It approaches the problem by applying a thin layer of sugar over maniupating a centralized key value store—namely Redis.
Add this line to your application's Gemfile.
gem 'remenv'
You'll probably want to binstub it so you can avoid typing bundle exec
all of
the time:
bundle binstub remenv
Running remenv
from the command line will print out a (hopefully) helpful bit
of documentation about each command. That is certainly the best place to start:
$ remenv
Commands:
remenv clear # Clear all stored key/value pairs
remenv dump FILENAME # Dump all stored key/value pairs to FILENAME
remenv help [COMMAND] # Describe available commands or one specific command
remenv load FILENAME # Load all key/value pairs from FILENAME
remenv set KEY=VALUE # Store VALUE for KEY
remenv show [KEY] # Show value for KEY or all stored key/value pairs
remenv unset KEY # Remove values for KEY
Options:
[--adapter=ADAPTER] # Default: redis
[--stage=STAGE] # Default: development
[--namespace=NAMESPACE] # Default: remenv
[--url=URL]
Settings should be persisted by writing configuration as YAML to .remenv.yml
for the current directory. Multiple stages (development, production, etc) can be
specified within the same configuration if desired. The default stage is assumed
to be development.
test:
adapter: memory
namespace: remenv-test
development:
adapter: redis
namespace: remenv
url: redis://localhost:6379/15
production:
adapter: redis
namespace: remenv-production
url: redis://server.com:6379/0
.env
configuration for development or production:$ remenv load .env
$ remenv show
LOG_LEVEL DEBUG
RACK_ENV production
RAILS_ENV production
$ remenv set LOG_LEVEL=INFO
OK!
LOG_LEVEL INFO
$ cap production remenv:sync
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)FAQs
Unknown package
We found that remenv demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Hacker Demonstrates How Easy It Is To Steal Data From Popular Password Managers
Security News
Oxlint’s new preview brings type-aware linting powered by typescript-go, combining advanced TypeScript rules with native-speed performance.
Security News
A new site reviews software projects to reveal if they’re truly FOSS, making complex licensing and distribution models easy to understand.