Comments (3)
Interpret my radio silence on this issue as indecision and not contempt. I've been trying to think through this, and I'm really undecided. dotenv was purely intended to be a development shim.
I feel like there are better ways of loading environment variables in production. In my ideal fantasy land, a project's repository should only contain information needed to for local development. Deployment is a separate concern and should be managed externally. I would put hostnames, production configuration, etc in a separate deployment repository (with some Chef/puppet to manage provisioning).
But…that's easy for me to say, because everything I work on is deployed to Heroku or internally at GitHub. Either way, I don't have to manage it and deal with deployment infrastructure. The reality is that most people are deploying Rails apps directly with capistrano. Everything needed by the app is managed in the same repo. No matter how much I try to discourage that, I understand that it is the easiest thing that works.
So I think I would like to push the dotenv-rails
gem to encourage my ideal fantasy-land, but also release a dotenv-deployment
gem that has capistrano recipes, multiple environment support, unicorn reloading and whatever else people think they need to deploy.
How does that sound?
from dotenv.
@bkeepers, it sounds like a great idea. So you want to break dotenv-rails
and dotenv-deployment
into repos? I like it. Point me at the repos and I'll help you get this stuff sorted out.
from dotenv.
FYI, Foreman supports running one-off processes (loading the .env
files) with foreman run <command>
.
/cc @dblock #76 (comment)
from dotenv.
Related Issues (20)
- Just HOT 1
- Special characters are being escaped from the value of the environment variables HOT 3
- dotenv-rails loads dev environment when running system tests with Rails 7 HOT 5
- `Dotenv.load` call causes Rails app to be loaded twice HOT 2
- Not specifying required ruby version on Gemfile causes my bundler with ruby 2.5.x pull dotenv 2.8.0 HOT 6
- template is not created in working directory HOT 2
- Question on Removal of ### What other .env* files can I use? FAQ HOT 1
- README should explicitly call out the gem needed is `dotenv-rails` HOT 4
- environment specific env not loaded when using require: 'dotenv/load' HOT 1
- Rails < v6.1: LocalJumpError in tagged logging HOT 2
- autorestore: can't modify frozen Hash HOT 7
- Use existing TaggedLogger instead of re-wrapping it with `TaggedLogging` HOT 4
- Ruby warning: circular require considered harmful HOT 2
- v3.0.3 causes regression with semantic-logger v4.15.0 HOT 2
- [BUG] All logs are tagged with "dotenv" HOT 1
- Dotenv's tagged method conflicts with SemanticLogger's HOT 1
- loading multiple files are not correctly overwriting env variables HOT 1
- ActiveSupport::TestCase teardown error: undefined method `keys' for nil HOT 3
- Use ERB in env file? HOT 3
- Arbitrary code execution vulnerability (or intended behavior?)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dotenv.