Sha256: dbcf685d2cb929316248ab42a7b90eab6f425b882bac6c69d8729a4b559118b4

Contents?: true

Size: 1000 Bytes

Versions: 11

Compression:

Stored size: 1000 Bytes

Contents

module Pvcglue
  class Capistrano
    # TODO:  Add requirements to gem file:  capistrano-rails, etc.
    def self.capify
      Pvcglue.render_template('capfile.erb', capfile_file_name)
      Pvcglue.render_template('deploy.rb.erb', common_deploy_file_name)
      Pvcglue.render_template('stage-deploy.rb.erb', stage_deploy_file_name)
    end

    def self.capfile_file_name
      File.join(Pvcglue.configuration.application_dir, 'Capfile')
    end

    def self.application_config_dir
      File.join(Pvcglue.configuration.application_dir, 'config')
    end

    def self.common_deploy_file_name
      File.join(application_config_dir, 'deploy.rb')
    end

    def self.stage_deploy_dir
      File.join(application_config_dir, 'deploy')
    end

    def self.stage_deploy_file_name
      `mkdir -p #{stage_deploy_dir}`
      File.join(stage_deploy_dir, "#{Pvcglue.cloud.stage_name_validated}.rb")
    end

    def self.deploy
      system("cap #{Pvcglue.cloud.stage_name} deploy")
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
pvcglue-0.1.15 lib/pvcglue/capistrano.rb
pvcglue-0.1.14 lib/pvcglue/capistrano.rb
pvcglue-0.1.13 lib/pvcglue/capistrano.rb
pvcglue-0.1.12 lib/pvcglue/capistrano.rb
pvcglue-0.1.11 lib/pvcglue/capistrano.rb
pvcglue-0.1.10 lib/pvcglue/capistrano.rb
pvcglue-0.1.9 lib/pvcglue/capistrano.rb
pvcglue-0.1.8 lib/pvcglue/capistrano.rb
pvcglue-0.1.7 lib/pvcglue/capistrano.rb
pvcglue-0.1.6 lib/pvcglue/capistrano.rb
pvcglue-0.1.5 lib/pvcglue/capistrano.rb