Mam ten kodCapistrano: zadzwoń zadanie z argumentów (wewnętrznie)
namespace :mysql do
task :change_password do
run "mysqladmin -u #{user} -p#{old} password #{new}"
end
end
chcę użyć tego, aby zmienić hasło dla wielu użytkowników. Jak mogę wykonać to zadanie z argumentami, ale nie z wiersza polecenia. Następne wdrożenie byłoby fantastyczne.
task :change_passwords do
mysql.change_password('user1', 'oldpass', 'newpass');
mysql.change_password('user2', 'oldpass', 'newpass');
mysql.change_password('user3', 'oldpass', 'newpass');
end
Niestety to nie działa. Jednym ze sposobów wykonania tej pracy jest ustawienie zmiennych globalnych za każdym razem przed wykonaniem zadania, ale nie jest to eleganckie rozwiązanie.
Czy możesz mi powiedzieć lepszy sposób realizacji tego?
PS Nie wiem, rubin, jestem tylko przy użyciu Capistrano dla wdrażania