cmdeploy 0.2.5 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/bin/cmdeploy CHANGED
@@ -3,59 +3,63 @@
3
3
  require 'fileutils'
4
4
  require 'erb'
5
5
 
6
- def template(application,from,to)
7
- erb = File.read("#{File.dirname(__FILE__)}/../lib/cmdeploy/recipes/templates/#{from}")
8
- File.open(to,"w") do |output|
9
- output.write(ERB.new(erb).result(binding))
10
- end
11
- end
6
+ module CMDeploy
12
7
 
13
- if ARGV.size == 0
14
- # no arguments provided, show usage
15
- puts "Usage of #{File.basename(__FILE__)}: bundle exec cmdeploy [-f] APPNAME"
16
- puts " -f => force to overwrite existing files"
17
- else
18
- force = false
19
- application = nil
20
-
21
- ARGV.each do |arg|
22
- case arg
23
- when /-f/ then
24
- force = true
25
- else
26
- application = application || arg
8
+ def self.template(application,from,to)
9
+ erb = File.read("#{File.dirname(__FILE__)}/../lib/cmdeploy/recipes/templates/#{from}")
10
+ File.open(to,"w") do |output|
11
+ output.write(ERB.new(erb).result(binding))
27
12
  end
28
13
  end
29
14
 
30
- # checking where we are...
31
- puts "Installing templates #{"[force mode] " if force}for application [#{application}]..."
32
- puts "Checking actual folder..."
33
- %w(app app/controllers config).each do |folder|
34
- unless File.exists?(folder) && File.directory?(folder)
35
- puts "=> Could not find folder [#{folder}]. You need to be in a Ruby On Rails root folder"
36
- exit 1
15
+ if ARGV.size == 0
16
+ # no arguments provided, show usage
17
+ puts "Usage of #{File.basename(__FILE__)}: bundle exec cmdeploy [-f] APPNAME"
18
+ puts " -f => force to overwrite existing files"
19
+ else
20
+ force = false
21
+ application = nil
22
+
23
+ ARGV.each do |arg|
24
+ case arg
25
+ when /-f/ then
26
+ force = true
27
+ else
28
+ application = application || arg
29
+ end
37
30
  end
38
- end
39
31
 
40
- list = []
41
- list << ["deploy_rb.erb","config/deploy.rb"]
42
- list << ["unicorn_rb.erb","config/unicorn.rb"]
32
+ # checking where we are...
33
+ puts "Installing templates #{"[force mode] " if force}for application [#{application}]..."
34
+ puts "Checking actual folder..."
35
+ %w(app app/controllers config).each do |folder|
36
+ unless File.exists?(folder) && File.directory?(folder)
37
+ puts "=> Could not find folder [#{folder}]. You need to be in a Ruby On Rails root folder"
38
+ exit 1
39
+ end
40
+ end
43
41
 
44
- list.each do |item|
45
- from = item[0]
46
- to = item[1]
42
+ list = []
43
+ list << ["deploy_rb.erb","config/deploy.rb"]
44
+ list << ["unicorn_rb.erb","config/unicorn.rb"]
47
45
 
48
- puts "Processing [#{to}]..."
46
+ list.each do |item|
47
+ from = item[0]
48
+ to = item[1]
49
49
 
50
- if File.exists?(to)
51
- if force
52
- puts "overwrite existing file"
53
- else
54
- puts "=> File [#{to}] exists. Please delete or use -f to overwrite."
55
- exit 1
50
+ puts "Processing [#{to}]..."
51
+
52
+ if File.exists?(to)
53
+ if force
54
+ puts "overwrite existing file"
55
+ else
56
+ puts "=> File [#{to}] exists. Please delete or use -f to overwrite."
57
+ exit 1
58
+ end
56
59
  end
60
+ CMDeploy.template(application,from,to)
57
61
  end
58
- template(application,from,to)
62
+
59
63
  end
60
64
 
61
65
  end
@@ -1,17 +1,15 @@
1
- module CMDeploy
2
- configuration = Capistrano::Configuration.respond_to?(:instance) ?
3
- Capistrano::Configuration.instance(:must_exist) :
4
- Capistrano.configuration(:must_exist)
1
+ configuration = Capistrano::Configuration.respond_to?(:instance) ?
2
+ Capistrano::Configuration.instance(:must_exist) :
3
+ Capistrano.configuration(:must_exist)
5
4
 
6
- configuration.load do
5
+ configuration.load do
7
6
 
8
- namespace :deploy do
9
- namespace :assets do
10
- desc "cmdeploy: Assets precompilation"
11
- task :precompile do
12
- run "cd #{release_path} && #{rake} RAILS_RELATIVE_URL_ROOT=#{app_relative_root_url} RAILS_ENV=#{stage} RAILS_GROUPS=assets assets:precompile"
13
- end
7
+ namespace :deploy do
8
+ namespace :assets do
9
+ desc "cmdeploy: Assets precompilation"
10
+ task :precompile do
11
+ run "cd #{release_path} && #{rake} RAILS_RELATIVE_URL_ROOT=#{app_relative_root_url} RAILS_ENV=#{stage} RAILS_GROUPS=assets assets:precompile"
14
12
  end
15
13
  end
16
14
  end
17
- end
15
+ end
@@ -1,11 +1,4 @@
1
- module CMDeploy
2
- def set_default(name, *args, &block)
3
- set(name, *args, &block) unless exists?(name)
4
- end
5
-
6
- def template(from, to)
7
- erb = File.read("#{File.dirname(__FILE__)}/templates/#{from}")
8
- put ERB.new(erb).result(binding), to
9
- end
10
-
1
+ def cmdeploy_template(from, to)
2
+ erb = File.read("#{File.dirname(__FILE__)}/templates/#{from}")
3
+ put ERB.new(erb).result(binding), to
11
4
  end
@@ -1,20 +1,18 @@
1
- module CMDeploy
2
- configuration = Capistrano::Configuration.respond_to?(:instance) ?
3
- Capistrano::Configuration.instance(:must_exist) :
4
- Capistrano.configuration(:must_exist)
1
+ configuration = Capistrano::Configuration.respond_to?(:instance) ?
2
+ Capistrano::Configuration.instance(:must_exist) :
3
+ Capistrano.configuration(:must_exist)
5
4
 
6
- configuration.load do
5
+ configuration.load do
7
6
 
8
- namespace :deploy do
9
-
10
- desc "cmdeploy: check and install gems via bundler"
11
- task :bundle_setup, roles: :app do
12
- run ". ~/.bashrc && cd #{release_path} && (bundle check || bundle install --without development) && bundle install --binstubs"
13
- end
14
- after "deploy:assets:symlink", "deploy:bundle_setup"
7
+ namespace :deploy do
15
8
 
9
+ desc "cmdeploy: check and install gems via bundler"
10
+ task :bundle_setup, roles: :app do
11
+ run ". ~/.bashrc && cd #{release_path} && (bundle check || bundle install --without development) && bundle install --binstubs"
16
12
  end
17
-
13
+ after "deploy:assets:symlink", "deploy:bundle_setup"
18
14
 
19
15
  end
20
- end
16
+
17
+
18
+ end
@@ -1,30 +1,27 @@
1
- module CMDeploy
2
- configuration = Capistrano::Configuration.respond_to?(:instance) ?
3
- Capistrano::Configuration.instance(:must_exist) :
4
- Capistrano.configuration(:must_exist)
1
+ configuration = Capistrano::Configuration.respond_to?(:instance) ?
2
+ Capistrano::Configuration.instance(:must_exist) :
3
+ Capistrano.configuration(:must_exist)
5
4
 
6
- configuration.load do
5
+ configuration.load do
7
6
 
8
- namespace :nginx do
9
- desc "cmdeploy: setup nginx configuration for this application"
10
- task :setup, roles: :web do
11
- template("nginx_unicorn.erb","/tmp/nginx_unicorn")
12
- run "mv /tmp/nginx_unicorn #{nginx_conf_folder}/#{application}.conf"
7
+ namespace :nginx do
8
+ desc "cmdeploy: setup nginx configuration for this application"
9
+ task :setup, roles: :web do
10
+ cmdeploy_template("nginx_unicorn.erb","/tmp/nginx_unicorn")
11
+ run "mv /tmp/nginx_unicorn #{nginx_conf_folder}/#{application}.conf"
13
12
 
14
- template("nginx_unicorn_upstream.erb","/tmp/nginx_unicorn_upstream")
15
- run "mv /tmp/nginx_unicorn_upstream #{nginx_conf_folder}/upstream/#{application}.conf"
16
- end
17
- after "deploy:setup", "nginx:setup"
13
+ cmdeploy_template("nginx_unicorn_upstream.erb","/tmp/nginx_unicorn_upstream")
14
+ run "mv /tmp/nginx_unicorn_upstream #{nginx_conf_folder}/upstream/#{application}.conf"
15
+ end
16
+ after "deploy:setup", "nginx:setup"
18
17
 
19
- %w[start stop restart status reload configtest].each do |command|
20
- desc "cmdeploy: #{command} nginx"
21
- task command, roles: :web do
22
- run "#{sudo} /sbin/service nginx #{command}"
23
- end
18
+ %w[start stop restart status reload configtest].each do |command|
19
+ desc "cmdeploy: #{command} nginx"
20
+ task command, roles: :web do
21
+ run "#{sudo} /sbin/service nginx #{command}"
24
22
  end
25
-
26
23
  end
27
24
 
28
-
29
25
  end
26
+
30
27
  end
@@ -1,4 +1,4 @@
1
- module CMDeploy
1
+
2
2
  configuration = Capistrano::Configuration.respond_to?(:instance) ?
3
3
  Capistrano::Configuration.instance(:must_exist) :
4
4
  Capistrano.configuration(:must_exist)
@@ -21,4 +21,3 @@ module CMDeploy
21
21
 
22
22
 
23
23
  end
24
- end
@@ -1,19 +1,17 @@
1
- module CMDeploy
2
- configuration = Capistrano::Configuration.respond_to?(:instance) ?
3
- Capistrano::Configuration.instance(:must_exist) :
4
- Capistrano.configuration(:must_exist)
1
+ configuration = Capistrano::Configuration.respond_to?(:instance) ?
2
+ Capistrano::Configuration.instance(:must_exist) :
3
+ Capistrano.configuration(:must_exist)
5
4
 
6
- configuration.load do
5
+ configuration.load do
7
6
 
8
- namespace :deploy do
9
-
10
- desc "cmdeploy: fetch revision history"
11
- task :fetch_revision_history, roles: :app do
12
- run "cd #{release_path} && svn log --xml #{release_path} > revision.xml"
13
- end
7
+ namespace :deploy do
14
8
 
9
+ desc "cmdeploy: fetch revision history"
10
+ task :fetch_revision_history, roles: :app do
11
+ run "cd #{release_path} && svn log --xml #{release_path} > revision.xml"
15
12
  end
16
- after "deploy:assets:precompile", "deploy:fetch_revision_history"
17
13
 
18
14
  end
19
- end
15
+ after "deploy:assets:precompile", "deploy:fetch_revision_history"
16
+
17
+ end
@@ -1,5 +1,5 @@
1
1
  # deliver static assets as gzip files
2
- location ~ ^/<%= application %>/assets/ {
2
+ location ~ ^<%= [nil,'','/'].include?(app_relative_root_url) ? "/" : "#{app_relative_root_url}/" %>assets/ {
3
3
  root /CHBS/apps/apps/<%= application %>/current/public;
4
4
  gzip_static on; # to serve pre-gzipped version
5
5
  expires max;
@@ -7,7 +7,7 @@ location ~ ^/<%= application %>/assets/ {
7
7
  }
8
8
 
9
9
  # pass request to rails app
10
- location ~ <%= app_relative_root_url %> {
10
+ location <%= [nil,'','/'].include?(app_relative_root_url) ? "/" : "~ ^#{app_relative_root_url}" %> {
11
11
  root /CHBS/apps/apps/<%= application %>/current/public;
12
12
 
13
13
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
@@ -1,29 +1,27 @@
1
- module CMDeploy
2
- configuration = Capistrano::Configuration.respond_to?(:instance) ?
3
- Capistrano::Configuration.instance(:must_exist) :
4
- Capistrano.configuration(:must_exist)
1
+ configuration = Capistrano::Configuration.respond_to?(:instance) ?
2
+ Capistrano::Configuration.instance(:must_exist) :
3
+ Capistrano.configuration(:must_exist)
5
4
 
6
- configuration.load do
5
+ configuration.load do
7
6
 
8
- namespace :unicorn do
9
- desc "cmdeploy: create unicorn startup script"
10
- task :setup, roles: :app do
11
- run "mkdir -p #{unicorn_conf_folder}"
12
- template("unicorn_conf.erb","/tmp/unicorn_conf")
13
- run "mv /tmp/unicorn_conf #{unicorn_conf_folder}/#{application}.conf"
14
- end
15
- after "deploy:setup", "unicorn:setup"
7
+ namespace :unicorn do
8
+ desc "cmdeploy: create unicorn startup script"
9
+ task :setup, roles: :app do
10
+ run "mkdir -p #{unicorn_conf_folder}"
11
+ cmdeploy_template("unicorn_conf.erb","/tmp/unicorn_conf")
12
+ run "mv /tmp/unicorn_conf #{unicorn_conf_folder}/#{application}.conf"
13
+ end
14
+ after "deploy:setup", "unicorn:setup"
16
15
 
17
- %w[start stop restart reload upgrade status rotate].each do |command|
18
- desc "cmdeploy: #{command} unicorn"
19
- task command, roles: :app do
20
- run ". ~/.bashrc && uc #{command} ~/etc/unicorn/#{application}.conf"
21
- end
16
+ %w[start stop restart reload upgrade status rotate].each do |command|
17
+ desc "cmdeploy: #{command} unicorn"
18
+ task command, roles: :app do
19
+ run ". ~/.bashrc && uc #{command} ~/etc/unicorn/#{application}.conf"
22
20
  end
23
- after "deploy:restart", "unicorn:reload"
24
-
25
21
  end
26
-
22
+ after "deploy:restart", "unicorn:reload"
27
23
 
28
24
  end
25
+
26
+
29
27
  end
@@ -1,9 +1,8 @@
1
- module CMDeploy
2
- configuration = Capistrano::Configuration.respond_to?(:instance) ?
3
- Capistrano::Configuration.instance(:must_exist) :
4
- Capistrano.configuration(:must_exist)
1
+ configuration = Capistrano::Configuration.respond_to?(:instance) ?
2
+ Capistrano::Configuration.instance(:must_exist) :
3
+ Capistrano.configuration(:must_exist)
5
4
 
6
- configuration.load do
5
+ configuration.load do
7
6
 
8
7
  # cm specific settings
9
8
  set :stage, 'test'
@@ -20,7 +19,7 @@ module CMDeploy
20
19
  # scm
21
20
  set :scm, :subversion
22
21
  set :repository, "http://svn.nibr.novartis.intra/svn/SDM/cm/module/#{application}/branches/master/src/rails"
23
-
22
+
24
23
  # sudo
25
24
  set :use_sudo, false
26
25
 
@@ -34,5 +33,4 @@ module CMDeploy
34
33
  # per default only 5 release will be kept
35
34
  after "deploy:assets:precompile", "deploy:cleanup"
36
35
 
37
- end
38
- end
36
+ end
@@ -1,3 +1,3 @@
1
1
  module CMDeploy
2
- VERSION = "0.2.5"
2
+ VERSION = "0.2.6"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cmdeploy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-30 00:00:00.000000000 Z
12
+ date: 2012-12-05 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: CM specific deployment recipes
15
15
  email: