cmdeploy 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
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: