Sha256: 3600aa6f2bff48aedb14ac666daca924ba474989082b779ab4f879d1e9542bb0

Contents?: true

Size: 826 Bytes

Versions: 1

Compression:

Stored size: 826 Bytes

Contents

namespace :secret_service do

  def _run_with_prompt(command)
    run command do |input, stream, out|
      puts out
      if stream == :out and out =~ /^Enter/
        input.send_data STDIN.gets
      end
    end
  end

  desc "Store a secret using secret_service"
  task :store, :roles => :db, :only => { :primary => true } do
    rake = fetch(:rake, "rake")
    rails_env = fetch(:rails_env, "production")

    _run_with_prompt("cd #{current_path} && #{rake} RAILS_ENV=#{rails_env} secret_service:store")
  end

  desc "Show a secret previously stored with secret_service"
  task :show, :roles => :db, :only => { :primary => true } do
    rake = fetch(:rake, "rake")
    rails_env = fetch(:rails_env, "production")

    _run_with_prompt("cd #{current_path} && #{rake} RAILS_ENV=#{rails_env} secret_service:show")
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
secret_service-0.1.1 lib/secret_service/capistrano.rb