Sha256: e5b69f9004b31fc56200842020617169dd94bfc5203fe0b7c7873596f707fe59

Contents?: true

Size: 1.08 KB

Versions: 2

Compression:

Stored size: 1.08 KB

Contents

# Example
# =======
#
# uploader_setup_settings:
#   fog_credentials:
#     provider: Rackspace
#     rackspace_username: username
#     rackspace_api_key: secret
#   fog_directory: frontend
#   fog_host: http://123.rackcdn.com

Capistrano::Configuration.instance(:must_exist).load do
  set(:uploader_remote_file) { File.join(shared_path, 'config/uploader.yml') } unless exists?(:uploader_remote_file)
  set(:uploader_template, 'uploader.yml.erb') unless exists?(:uploader_template)

  namespace :uploader do
    namespace :setup do
      desc "Upload configs"
      task :default, :roles => :db do
        if exists?(:uploader_setup_settings)
          set :recipe_settings, fetch(:uploader_setup_settings, {})
          put template.render(fetch(:uploader_template)), fetch(:uploader_remote_file)
        else
          puts "[FATAL] - Uploader template settings were not found"
          abort
        end
      end

      desc "Download configs"
      task :get, :roles => :db do
        download fetch(:uploader_remote_file), File.join(local_rails_root, "config/uploader.yml")
      end
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
marcosgz-cap-recipe-0.0.5 lib/capistrano/recipes/uploader.rb
marcosgz-cap-recipe-0.0.3 lib/capistrano/recipes/uploader.rb