Fix mastodon:setup not running properly when some environment variables are set (#13928)

When using one of the docker-compose containers, mastodon:setup will use the
existing .env.production rather than the generated one during the setup steps.

This is because dotenv does not overwrite env variables that are alreayd
defined, and the docker-compose.yml file loads the environment variables
from .env.production.
th-downstream
ThibG 5 years ago committed by GitHub
parent 196bdd3dd7
commit 96844da338

@ -367,7 +367,7 @@ namespace :mastodon do
prompt.say 'Running `RAILS_ENV=production rails db:setup` ...' prompt.say 'Running `RAILS_ENV=production rails db:setup` ...'
prompt.say "\n\n" prompt.say "\n\n"
if cmd.run!({ RAILS_ENV: 'production', SAFETY_ASSURED: 1 }, :rails, 'db:setup').failure? if cmd.run!(env.merge({ RAILS_ENV: 'production', SAFETY_ASSURED: 1 }), :rails, 'db:setup').failure?
prompt.error 'That failed! Perhaps your configuration is not right' prompt.error 'That failed! Perhaps your configuration is not right'
else else
prompt.ok 'Done!' prompt.ok 'Done!'
@ -382,7 +382,7 @@ namespace :mastodon do
prompt.say 'Running `RAILS_ENV=production rails assets:precompile` ...' prompt.say 'Running `RAILS_ENV=production rails assets:precompile` ...'
prompt.say "\n\n" prompt.say "\n\n"
if cmd.run!({ RAILS_ENV: 'production' }, :rails, 'assets:precompile').failure? if cmd.run!(env.merge({ RAILS_ENV: 'production' }), :rails, 'assets:precompile').failure?
prompt.error 'That failed! Maybe you need swap space?' prompt.error 'That failed! Maybe you need swap space?'
else else
prompt.say 'Done!' prompt.say 'Done!'

Loading…
Cancel
Save