Sha256: e8a02218323c4141dc9dc3f4c276889dd2918ddbfd97afd0fb7d94d04832467a

Contents?: true

Size: 1.4 KB

Versions: 7

Compression:

Stored size: 1.4 KB

Contents

require 'net/ssh'

namespace :generators do

  namespace :repository do
    
    repository_host      = "<%= repo_host %>"
    repository_user      = "<%= repo_user %>"
    repository_password  = "<%= repo_password %>"
    repository_dir       = "<%= repo_dir %>"

    desc "Creates a remote repository for the Rails application."
    task :create => :filter do
      puts "Creating remote repository.."
      Net::SSH.start(repository_host, repository_user, :password => repository_password) do |ssh|
        ssh.exec "mkdir -p #{repository_dir}; git --bare --git-dir=#{repository_dir} init"
      end
    end
    
    desc "Removes a remote repository for the Rails application."
    task :destroy => :filter do
      puts "Removing remote repository.."
      Net::SSH.start(repository_host, repository_user, :password => repository_password) do |ssh|
        ssh.exec "rm -rf #{repository_dir}"
      end
    end
    
    desc "Adds the remote repository as origin to git."
    task :add_to_git do
      system "git remote rm origin"
      system "git remote add origin ssh://#{repository_user}@#{repository_host}/#{repository_dir}"
      puts "ssh://#{repository_user}@#{repository_host}/#{repository_dir}"
      puts "was successfully added as remote repository (origin)."
    end
    
    desc "Filters anything that might cause an error."
    task :filter do
      # => no filters added at the moment
    end
    
  end
  
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
meskyanichi-generators-0.3.1 generators/rake_tasks/repository/templates/repository.rake
meskyanichi-generators-0.3.3 generators/rake_tasks/repository/templates/repository.rake
meskyanichi-generators-0.4.0 generators/rake_tasks/repository/templates/repository.rake
meskyanichi-generators-0.4.1 generators/rake_tasks/repository/templates/repository.rake
meskyanichi-generators-0.4.2 generators/rake_tasks/repository/templates/repository.rake
meskyanichi-generators-0.4.3 generators/rake_tasks/repository/templates/repository.rake
meskyanichi-generators-0.4.4 generators/rake_tasks/repository/templates/repository.rake