Hi All,
I tried to request user to input username and password for the database
when deploy, therefore, in my capistrano task, I
task :create_database_user do
@username = Capistrano::CLI.password_prompt('mysql_username: ')
@password = Capistrano::CLI.password_prompt('mysql_password: ')
#@config = YAML::load( File.open(
“#{release_path}/config/config.yml”))[‘production’]
@config[“username”] = @username
@config[“password”] = @password
end
However, File not found error occurs.
Actually, I want to save the input in the .yml file so that I can access
them before restart in the database.yml.
Or, Can I save the cap input into the database.yml directly before
restart?
How can I do that?
Thanks much!
Arthur
Did you mean
“#{release_path}/config/database.yml”
instead of
“#{release_path}/config/config.yml”
On Feb 16, 8:02 am, Arthur C. [email protected]
Jeff Emminger wrote:
Did you mean
“#{release_path}/config/database.yml”
instead of
“#{release_path}/config/config.yml”
On Feb 16, 8:02�am, Arthur C. [email protected]
Yes and no. I wanna update the database.yml. But the main reason I do
this task is to protect the password, so I should not write anything
there. Instead, I wanna create an object to hold the MYSQL login and put
it in the database.yml:
development:
adapter: mysql
database: arthur_dev
username: <%= username %>
password: <%= password %>
The problem is in Capistrano that I don’t know how to retrieve the
password from Capistrano
“Capistrano::CLI.password_prompt('mysql_username: ')”.
Thanks much!
Arthur