capones_recipes 1.18.0 → 1.19.0

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/CHANGELOG CHANGED
@@ -1,6 +1,12 @@
1
+ 1.19.0
2
+ ======
3
+ * Add host_and_port helper from sync:db to sync:fs.
4
+ * Add thinking_sphinx:rebuild task.
5
+
1
6
  1.18.0
2
7
  ======
3
- * Use instance instead of client.domain as bluepill instance name.
8
+ * No failing in db:sync if db:drop fails.
9
+ * Use instance instead of client.domain as bluepill instance name.
4
10
 
5
11
  1.17.0
6
12
  ======
@@ -43,7 +43,7 @@ Capistrano::Configuration.instance.load do
43
43
 
44
44
  # Local DB import
45
45
  username, password, database, host = database_config('development')
46
- run_locally "rake db:drop && rake db:create"
46
+ run_locally "rake db:drop; rake db:create"
47
47
  run_locally "bzip2 -d -c #{filename} | mysql -u #{username} --password='#{password}' #{database}"
48
48
  run_locally "rm -f #{filename}"
49
49
 
@@ -42,17 +42,17 @@ Capistrano::Configuration.instance.load do
42
42
  server, port = host_and_port
43
43
  Array(fetch(:sync_directories, [])).each do |syncdir|
44
44
  destination, base = Pathname.new(syncdir).split
45
-
45
+
46
46
  unless File.directory? "#{syncdir}"
47
47
  logger.info "Create '#{syncdir}' directory"
48
48
  run "mkdir -p #{shared_path}/#{syncdir}"
49
49
  end
50
-
50
+
51
51
  # Make a backup
52
52
  logger.info "backup #{syncdir}"
53
53
  run "tar cjf #{shared_path}/sync/#{base}.#{Time.now.strftime '%Y-%m-%d_%H:%M:%S'}.tar.bz2 #{shared_path}/#{syncdir}"
54
54
  purge_old_backups "#{base}"
55
-
55
+
56
56
  # Sync directory up
57
57
  logger.info "sync #{syncdir} to #{server}:#{port} from local"
58
58
  run_locally "rsync --verbose --archive --compress --keep-dirlinks --delete --stats --rsh='ssh -p #{port}' #{syncdir} #{user}@#{server}:#{shared_path}/#{destination.to_s}"
@@ -60,5 +60,12 @@ Capistrano::Configuration.instance.load do
60
60
  logger.important "sync filesystem from local to the stage '#{stage}' finished"
61
61
  end
62
62
  end
63
+
64
+ #
65
+ # Returns the actual host name to sync and port
66
+ #
67
+ def host_and_port
68
+ return roles[:web].servers.first.host, ssh_options[:port] || roles[:web].servers.first.port || 22
69
+ end
63
70
  end
64
71
  end
@@ -21,5 +21,18 @@ Capistrano::Configuration.instance.load do
21
21
  run "ln -nfs #{shared_path}/db/sphinx #{latest_release}/db/sphinx"
22
22
  run "ln -nfs #{shared_path}/tmp/sockets #{latest_release}/tmp/sockets"
23
23
  end
24
+
25
+ desc "Rebuild index"
26
+ task :rebuild, :roles => :app do
27
+ run_rake "thinking_sphinx:rebuild"
28
+ end
29
+
30
+ def run_rake(task, options={}, &block)
31
+ rake = fetch(:rake, "rake")
32
+ rails_env = fetch(:rails_env, 'production')
33
+
34
+ command = "cd #{latest_release} && #{rake} #{task} RAILS_ENV=#{rails_env} ; true"
35
+ run(command, options, &block)
36
+ end
24
37
  end
25
38
  end
@@ -1,3 +1,3 @@
1
1
  module CaponesRecipes
2
- VERSION = "1.18.0"
2
+ VERSION = "1.19.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capones_recipes
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.18.0
4
+ version: 1.19.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2013-02-04 00:00:00.000000000 Z
13
+ date: 2013-05-01 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: capistrano
17
- requirement: !ruby/object:Gem::Requirement
17
+ requirement: &85891320 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,15 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
- requirements:
28
- - - ! '>='
29
- - !ruby/object:Gem::Version
30
- version: '0'
25
+ version_requirements: *85891320
31
26
  - !ruby/object:Gem::Dependency
32
27
  name: capistrano_colors
33
- requirement: !ruby/object:Gem::Requirement
28
+ requirement: &85890940 !ruby/object:Gem::Requirement
34
29
  none: false
35
30
  requirements:
36
31
  - - ! '>='
@@ -38,15 +33,10 @@ dependencies:
38
33
  version: '0'
39
34
  type: :runtime
40
35
  prerelease: false
41
- version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
- requirements:
44
- - - ! '>='
45
- - !ruby/object:Gem::Version
46
- version: '0'
36
+ version_requirements: *85890940
47
37
  - !ruby/object:Gem::Dependency
48
38
  name: cap-recipes
49
- requirement: !ruby/object:Gem::Requirement
39
+ requirement: &85906900 !ruby/object:Gem::Requirement
50
40
  none: false
51
41
  requirements:
52
42
  - - ! '>='
@@ -54,15 +44,10 @@ dependencies:
54
44
  version: '0'
55
45
  type: :runtime
56
46
  prerelease: false
57
- version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
- requirements:
60
- - - ! '>='
61
- - !ruby/object:Gem::Version
62
- version: '0'
47
+ version_requirements: *85906900
63
48
  - !ruby/object:Gem::Dependency
64
49
  name: capistrano-ext
65
- requirement: !ruby/object:Gem::Requirement
50
+ requirement: &85906390 !ruby/object:Gem::Requirement
66
51
  none: false
67
52
  requirements:
68
53
  - - ! '>='
@@ -70,15 +55,10 @@ dependencies:
70
55
  version: '0'
71
56
  type: :runtime
72
57
  prerelease: false
73
- version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
- requirements:
76
- - - ! '>='
77
- - !ruby/object:Gem::Version
78
- version: '0'
58
+ version_requirements: *85906390
79
59
  - !ruby/object:Gem::Dependency
80
60
  name: shoulda
81
- requirement: !ruby/object:Gem::Requirement
61
+ requirement: &85905910 !ruby/object:Gem::Requirement
82
62
  none: false
83
63
  requirements:
84
64
  - - ! '>='
@@ -86,15 +66,10 @@ dependencies:
86
66
  version: '0'
87
67
  type: :development
88
68
  prerelease: false
89
- version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
- requirements:
92
- - - ! '>='
93
- - !ruby/object:Gem::Version
94
- version: '0'
69
+ version_requirements: *85905910
95
70
  - !ruby/object:Gem::Dependency
96
71
  name: rcov
97
- requirement: !ruby/object:Gem::Requirement
72
+ requirement: &85905440 !ruby/object:Gem::Requirement
98
73
  none: false
99
74
  requirements:
100
75
  - - ! '>='
@@ -102,12 +77,7 @@ dependencies:
102
77
  version: '0'
103
78
  type: :development
104
79
  prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
- requirements:
108
- - - ! '>='
109
- - !ruby/object:Gem::Version
110
- version: '0'
80
+ version_requirements: *85905440
111
81
  description: A collection of usefull capistrano recipes used by CyT GmbH and others.
112
82
  email:
113
83
  - roman.simecek@cyt.ch
@@ -187,7 +157,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
187
157
  version: '0'
188
158
  requirements: []
189
159
  rubyforge_project:
190
- rubygems_version: 1.8.23
160
+ rubygems_version: 1.8.11
191
161
  signing_key:
192
162
  specification_version: 3
193
163
  summary: Some capistrano recipes for use.