capifony 2.1.16 → 2.2.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.
@@ -1,4 +1,50 @@
1
- == 2.1.16 / September 25, 2012
1
+ ### 2.2.0 / October 22, 2012
2
+
3
+ * Minor fixes
4
+ * Clean output in tests
5
+ * Fix travis build
6
+ * Dump autoloader generation
7
+ * Refactor specs
8
+ * Update CHANGELOG
9
+ * Fix #244
10
+ * Correct pretty_print on composer:get based on @simonchrz's patch
11
+ * Enable web tasks
12
+ * Update gemspec file
13
+ * Make version consistent with capistrano
14
+ * Add UPGRADE file
15
+ * Fix command again
16
+ * Fix missing method
17
+ * Fix command
18
+ * Rename files
19
+ * Improve command
20
+ * Remove old README.ja.md as it's not maintained anymore
21
+ * Add note about tests in README
22
+ * Update CHANGELOG
23
+ * Minor fixes
24
+ * Add tests for propel namespace
25
+ * Add tests for doctrine namespace
26
+ * Fix travis-ci setup
27
+ * Add more tests for the symfony namespace (Symfony2)
28
+ * Fix encoding
29
+ * Trying to fix dependencies
30
+ * Add testing tools to gemfile
31
+ * fix gemfile
32
+ * Add travis/bundler configs, bump version to 2.2.x-dev
33
+ * Introducing a test suite
34
+ * Refactored Symfony2 code
35
+ * Fix conflict with the pp gem
36
+ * cd command not found when composer self-update
37
+ * Fix #240
38
+ * Fixing spelling mistakes an code
39
+ * Fix composer tasks
40
+ * Fixing logic in deep_merge method for symfony1
41
+ * Fix symfony:doctrine:migrations:migrate when using pty by not using try_sudo. Also log current database version with level info.
42
+ * Fixed a problem with case-insensitivity. This worked on OS X, but not on Linux, because the file system is case sensitive.
43
+ * Take capistrano/ext/multistage parameter deploy_env into account when using different deploy environments.
44
+ * Avoid the unnecessary use of try_sudo to make remote dumps work, as Capifony doesn't seem to check if use_sudo is false.
45
+ * Added patch-5 branch modifications from https://github.com/leek/capifony/tree/patch-5 to enable using parameters.ini config files.
46
+
47
+ ### 2.1.16 / September 25, 2012
2
48
 
3
49
  * Add composer:dump_autoload to the finalize_update after hook
4
50
  * Add new task to allow composer dump-autoload
@@ -7,7 +53,7 @@
7
53
  * run "#{try_sudo}"
8
54
  * Use try_sudo instead of run
9
55
 
10
- == 2.1.15 / September 10, 2012
56
+ ### 2.1.15 / September 10, 2012
11
57
 
12
58
  * Fix #203
13
59
  * Preliminary testing seems to show that this is generally how try_sudo was meant to be implemented, and is in fact how it is required to be implemented to work with things that depend on the output of run.
@@ -21,11 +67,11 @@
21
67
  * set_permissions: fix for acl method
22
68
  * Fix this fucking dumb task. #195
23
69
 
24
- == 2.1.14 / August 22, 2012
70
+ ### 2.1.14 / August 22, 2012
25
71
 
26
72
  * Fix escaping in clear controllers #195
27
73
 
28
- == 2.1.13 / August 21, 2012
74
+ ### 2.1.13 / August 21, 2012
29
75
 
30
76
  * check all .php files in stead of only _app.php
31
77
  * fix clear controllers to also work with try_sudo
@@ -39,14 +85,14 @@
39
85
  * Fix running doctrine migrations with allocated PTY
40
86
  * Update lib/symfony1.rb
41
87
 
42
- == 2.1.12 / August 6, 2012
88
+ ### 2.1.12 / August 6, 2012
43
89
 
44
90
  * Enable options for assets:install
45
91
  * Looked for sf1 settings DB file instead of sf2 one
46
92
  * Add ability to tail `dev|prod.log`
47
93
  * Put remote tmp directory in a variable so that it can be overriden
48
94
 
49
- == 2.1.11 / July 20, 2012
95
+ ### 2.1.11 / July 20, 2012
50
96
 
51
97
  * Fix hard-coded "app" references
52
98
  * Fix hard-coded path to "app"
@@ -58,7 +104,7 @@
58
104
  * Fix #163
59
105
  * fix elsif synthax
60
106
 
61
- == 2.1.10 / July 16, 2012
107
+ ### 2.1.10 / July 16, 2012
62
108
 
63
109
  * Fix CS
64
110
  * Add ownership check before changing permissions
@@ -78,11 +124,11 @@
78
124
  * Since `:roles` isn't used in Capifony, these need `:no_release` *at least*.
79
125
  * Fixing missing `pretty_print`.
80
126
 
81
- == 2.1.9 / July 3, 2012
127
+ ### 2.1.9 / July 3, 2012
82
128
 
83
129
  * fixed regression
84
130
 
85
- == 2.1.8 / July 2, 2012
131
+ ### 2.1.8 / July 2, 2012
86
132
 
87
133
  * bugfixes
88
134
  * fix database tasks to use role :db
@@ -96,7 +142,7 @@
96
142
  * added human readable messages in deploy related tasks.
97
143
  * removed unexistent Doctrine commands
98
144
 
99
- == 2.1.7 / June 21, 2012
145
+ ### 2.1.7 / June 21, 2012
100
146
 
101
147
  * added maintenance page feature for Symfony2, use symfony 1.4 tasks
102
148
  (project:disable, project:enable) to do the same.
@@ -112,78 +158,78 @@
112
158
  working directory.
113
159
  * bugfixes.
114
160
 
115
- == 2.1.6 / April 12, 2012
161
+ ### 2.1.6 / April 12, 2012
116
162
 
117
163
  * bugfixes
118
164
 
119
- == 2.1.3 / September 27, 2011
165
+ ### 2.1.3 / September 27, 2011
120
166
 
121
167
  * propel support for Symfony2 (by @willdurand)
122
168
  * cache warmup and assets install configurable (by @gigo6000)
123
169
  * always use --no-debug with assetic (by @fernanDOTdo)
124
170
  * fixed assetic bug (by @mbontemps)
125
171
 
126
- == 2.1.2 / August 11, 2011
172
+ ### 2.1.2 / August 11, 2011
127
173
 
128
174
  * fix for vendors install
129
175
 
130
- == 2.1.1 / July 13, 2011
176
+ ### 2.1.1 / July 13, 2011
131
177
 
132
178
  * support for rubygems 1.8
133
179
 
134
- == 2.1.0 / June 24, 2011
180
+ ### 2.1.0 / June 24, 2011
135
181
 
136
182
  * fully support different app path
137
183
 
138
- == 2.0.9 / June 15, 2011
184
+ ### 2.0.9 / June 15, 2011
139
185
 
140
186
  * migrations fixed in Symfony2
141
187
 
142
- == 2.0.8 / June 14, 2011
188
+ ### 2.0.8 / June 14, 2011
143
189
 
144
190
  * update_vendors functionality support (via @weaverryan)
145
191
 
146
- == 2.0.7 / June 9, 2011
192
+ ### 2.0.7 / June 9, 2011
147
193
 
148
194
  * more modular behavior (thanks Alif Rachmawadi)
149
195
  * cache:clear command fix (thanks Marijn Huizendveld)
150
196
 
151
- == 2.0.6 / May 4, 2011
197
+ ### 2.0.6 / May 4, 2011
152
198
 
153
199
  * add write access to cache folder for deployer's usergroup
154
200
 
155
- == 2.0.5 / May 3, 2011
201
+ ### 2.0.5 / May 3, 2011
156
202
 
157
203
  * made the Symfony2 console command configurable (symfony_console) (thanks @ruudk)
158
204
  * added --env=#{symfony_env_prod} to every Symfony2 console command (thanks @ruudk)
159
205
 
160
- == 2.0.4 / April 23, 2011
206
+ ### 2.0.4 / April 23, 2011
161
207
 
162
208
  * shared lib support in symfony1 (thanks @jakzal)
163
209
 
164
- == 2.0.3 / April 16, 2011
210
+ ### 2.0.3 / April 16, 2011
165
211
 
166
212
  * windows support for symfony1 database: tasks (thanks @akloboucnik)
167
213
 
168
- == 2.0.2 / April 6, 2011
214
+ ### 2.0.2 / April 6, 2011
169
215
 
170
216
  * db migration task refactoring (thanks @schmittjoh)
171
217
 
172
- == 2.0.1 / March 30, 2011
218
+ ### 2.0.1 / March 30, 2011
173
219
 
174
220
  * fixed wrong assetic command
175
221
 
176
- == 2.0.0 / March 22, 2011
222
+ ### 2.0.0 / March 22, 2011
177
223
 
178
224
  * optimized shared commands in symfony1 scripts
179
225
  * added symfony2 deployment strategy
180
226
  * added `use_orm` option to symfony1 recipes. Turn it off if you don't use ORM
181
227
 
182
- == 0.4.2 / September 23, 2010
228
+ ### 0.4.2 / September 23, 2010
183
229
 
184
230
  * added `symfony:doctrine:compile` task
185
231
 
186
- == 0.4.1 / June 17, 2010
232
+ ### 0.4.1 / June 17, 2010
187
233
 
188
234
  * added `symfony_env_local` variable, specifying local symfony environment to work with
189
235
  * added third parameter (blocks) to `prompt_with_default` (as in `ask`)
@@ -191,46 +237,46 @@
191
237
  * added confirmation dialogs to destructive ORM tasks
192
238
  * run `project:clear-controllers` only on `prod` environment
193
239
 
194
- == 0.4.0 / June 16, 2010
240
+ ### 0.4.0 / June 16, 2010
195
241
 
196
242
  * added propel tasks (thanks to http://github.com/arlo)
197
243
  * added orm abstraction
198
244
  * added doctrine/symfony tasks
199
245
  * huge refactoring of mostly everything (thanks to http://github.com/arlo)
200
246
 
201
- == 0.3.3 / June 13, 2010
247
+ ### 0.3.3 / June 13, 2010
202
248
 
203
249
  * added ability to change called php binary (thanks to http://github.com/xgorse)
204
250
 
205
- == 0.3.2 / June 12, 2010
251
+ ### 0.3.2 / June 12, 2010
206
252
 
207
253
  * fixed :finalize_update hooks (clear_controllers task now runs)
208
254
 
209
- == 0.3.1 / June 11, 2010
255
+ ### 0.3.1 / June 11, 2010
210
256
 
211
257
  * fixed deployment bug with new shared link instruction
212
258
 
213
- == 0.3.0 / June 11, 2010
259
+ ### 0.3.0 / June 11, 2010
214
260
 
215
261
  * fixed incorrect links bug (thanks to arlo)
216
262
  * added database dumpers tasks
217
263
  * database:move:* now uses database dumpers to actually dump
218
264
 
219
- == 0.2.2 / June 6, 2010
265
+ ### 0.2.2 / June 6, 2010
220
266
 
221
267
  * deployment bug with `mkdir shared/config` fixed
222
268
 
223
- == 0.2.1 / June 5, 2010
269
+ ### 0.2.1 / June 5, 2010
224
270
 
225
271
  * dependency fix
226
272
 
227
- == 0.2.0 / June 5, 2010
273
+ ### 0.2.0 / June 5, 2010
228
274
 
229
275
  * some fixes
230
276
  * symfony:check_configuration task
231
277
  * database move tasks
232
278
  * shared folder tasks (move to_local, move to_remote)
233
279
 
234
- == 0.1.0 / June 3, 2010
280
+ ### 0.1.0 / June 3, 2010
235
281
 
236
282
  First ever working version.
data/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  Deploying symfony Applications with Capistrano
2
2
  ==============================================
3
3
 
4
+ [![Build Status](https://secure.travis-ci.org/everzet/capifony.png?branch=master)](http://travis-ci.org/everzet/capifony)
5
+
4
6
  Capistrano is an open source tool for running scripts on multiple servers.
5
7
  Its primary use is for easily deploying applications. While it was built
6
8
  specifically for deploying Rails apps, it’s pretty simple to customize it
@@ -35,6 +37,19 @@ lot easier.
35
37
 
36
38
  Read the [capifony documentation](http://capifony.org/)
37
39
 
40
+ ## Running the test suite ##
41
+
42
+ You need a set of dependencies in order to run the capifony's test suite.
43
+ You can use **Bundler** to install these dependencies:
44
+
45
+ bundle install --gemfile=.gemfile
46
+
47
+ Then, run the tests using **Rake**:
48
+
49
+ rake spec
50
+
51
+ For more information, see the `.travis.yml` file.
52
+
38
53
 
39
54
  ## Contributors ##
40
55
 
data/UPGRADE.md ADDED
@@ -0,0 +1,30 @@
1
+ UPGRADE FROM 2.1.x TO 2.2.x
2
+ ===========================
3
+
4
+ Upgrading your capifony configuration from **2.1.x** to **2.2.x** is quite easy.
5
+ If you don't have a custom `Capfile` file, delete it and recreate it using the
6
+ following command:
7
+
8
+ capifony .
9
+
10
+ Important: This is mandatory for both symfony 1.x and Symfony2 projects.
11
+
12
+ If you have a custom `Capfile` file, you just have to change the way you load
13
+ capifony. In capifony 2.1.x and for Symfony2 projects, the line below was used
14
+ to load capifony:
15
+
16
+ load Gem.find_files('symfony2.rb').first.to_s
17
+
18
+ You have to replace this line by the following one:
19
+
20
+ require 'capifony_symfony2'
21
+
22
+ For symfony 1.x projects, the line below was used for the same purpose:
23
+
24
+ load Gem.find_files('symfony1.rb').first.to_s
25
+
26
+ You have to replace it by the following line:
27
+
28
+ load Gem.find_files('capifony_symfony1.rb').first.to_s
29
+
30
+ That's all.
data/bin/capifony CHANGED
@@ -5,6 +5,7 @@ require 'fileutils'
5
5
 
6
6
  symfony_version = nil
7
7
  symfony_app_path = 'app'
8
+ capifony_version = '2.2.0'
8
9
 
9
10
  OptionParser.new do |opts|
10
11
  opts.banner = "Usage: #{File.basename($0)} [path]"
@@ -14,6 +15,11 @@ OptionParser.new do |opts|
14
15
  exit 0
15
16
  end
16
17
 
18
+ opts.on("-v", "--version", "") do
19
+ puts "capifony v#{capifony_version}"
20
+ exit 0
21
+ end
22
+
17
23
  opts.on("-s", "--symfony VERSION", "Capify specific symfony verion (1|2)") do |version|
18
24
  symfony_version = version.to_i
19
25
  end
@@ -38,7 +44,7 @@ elsif !File.exists?(ARGV.first)
38
44
  elsif !File.directory?(ARGV.first)
39
45
  abort "`#{ARGV.first}' is not a directory."
40
46
  elsif ARGV.length > 1
41
- abort "Too many arguments; please specify only the directory to capify."
47
+ abort "Too many arguments; please specify only the directory to capifony."
42
48
  end
43
49
 
44
50
  def unindent(string)
@@ -53,8 +59,8 @@ if symfony_version == 2
53
59
  files = {
54
60
  "Capfile" => unindent(<<-FILE),
55
61
  load 'deploy' if respond_to?(:namespace) # cap2 differentiator
56
- Dir['vendor/**/Resources/recipes/*.rb'].each { |bundle| load(bundle) }
57
- load Gem.find_files('symfony2.rb').first.to_s
62
+
63
+ require 'capifony_symfony2'
58
64
  load '#{symfony_app_path}/config/deploy'
59
65
  FILE
60
66
 
@@ -86,7 +92,8 @@ else
86
92
  "Capfile" => unindent(<<-FILE),
87
93
  load 'deploy' if respond_to?(:namespace) # cap2 differentiator
88
94
  Dir['plugins/*/lib/recipes/*.rb'].each { |plugin| load(plugin) }
89
- load Gem.find_files('symfony1.rb').first.to_s
95
+
96
+ load Gem.find_files('capifony_symfony1.rb').first.to_s
90
97
  load 'config/deploy'
91
98
  FILE
92
99
 
@@ -54,8 +54,19 @@ end
54
54
 
55
55
  def deep_merge(hash1, hash2)
56
56
 
57
+ #if both 'all' and env keys are nil break
58
+ if(hash1 == nil && hash2 == nil)
59
+ return nil
60
+ end
61
+
62
+ #the config.yml may not have 'all' key but instead 'dev' 'prod' and so on
63
+ if(hash1 == nil && hash2 != nil)
64
+ return hash2 # no need to merge
65
+ end
66
+
67
+ #if only the 'all' key is specified
57
68
  #There might not be a second has to cascade to
58
- if(hash2 == nil)
69
+ if(hash2 == nil && hash1 != nil)
59
70
  return hash1;
60
71
  end
61
72
  hash1.merge(hash2){|key, subhash1, subhash2|
@@ -0,0 +1,255 @@
1
+ # encoding: utf-8
2
+ require 'capistrano'
3
+ require 'colored'
4
+ require 'fileutils'
5
+ require 'inifile'
6
+ require 'yaml'
7
+ require 'zlib'
8
+
9
+ module Capifony
10
+ module Symfony2
11
+ def self.load_into(configuration)
12
+ configuration.load do
13
+
14
+ load_paths.push File.expand_path('../', __FILE__)
15
+ load 'capifony'
16
+ load 'symfony2/symfony'
17
+ load 'symfony2/database'
18
+ load 'symfony2/deploy'
19
+ load 'symfony2/doctrine'
20
+ load 'symfony2/propel'
21
+ load 'symfony2/web'
22
+
23
+ # Symfony application path
24
+ set :app_path, "app"
25
+
26
+ # Symfony web path
27
+ set :web_path, "web"
28
+
29
+ # Symfony console bin
30
+ set :symfony_console, app_path + "/console"
31
+
32
+ # Symfony log path
33
+ set :log_path, app_path + "/logs"
34
+
35
+ # Symfony cache path
36
+ set :cache_path, app_path + "/cache"
37
+
38
+ # Symfony config file path
39
+ set :app_config_path, app_path + "/config"
40
+
41
+ # Symfony config file (parameters.(ini|yml|etc...)
42
+ set :app_config_file, "parameters.yml"
43
+
44
+ # Symfony bin vendors
45
+ set :symfony_vendors, "bin/vendors"
46
+
47
+ # Symfony build_bootstrap script
48
+ set :build_bootstrap, "bin/build_bootstrap"
49
+
50
+ # Whether to use composer to install vendors.
51
+ # If set to false, it will use the bin/vendors script
52
+ set :use_composer, false
53
+
54
+ # Path to composer binary
55
+ # If set to false, Capifony will download/install composer
56
+ set :composer_bin, false
57
+
58
+ # Options to pass to composer when installing/updating
59
+ set :composer_options, "--no-scripts --verbose --prefer-dist"
60
+
61
+ # Whether to update vendors using the configured dependency manager (composer or bin/vendors)
62
+ set :update_vendors, false
63
+
64
+ # run bin/vendors script in mode (upgrade, install (faster if shared /vendor folder) or reinstall)
65
+ set :vendors_mode, "reinstall"
66
+
67
+ # Whether to run cache warmup
68
+ set :cache_warmup, true
69
+
70
+ # Use AsseticBundle
71
+ set :dump_assetic_assets, false
72
+
73
+ # Assets install
74
+ set :assets_install, true
75
+ set :assets_symlinks, false
76
+ set :assets_relative, false
77
+
78
+ # Whether to update `assets_version` in `config.yml`
79
+ set :update_assets_version, false
80
+
81
+ # Need to clear *_dev controllers
82
+ set :clear_controllers, true
83
+
84
+ # Files that need to remain the same between deploys
85
+ set :shared_files, false
86
+
87
+ # Dirs that need to remain the same between deploys (shared dirs)
88
+ set :shared_children, [log_path, web_path + "/uploads"]
89
+
90
+ # Asset folders (that need to be timestamped)
91
+ set :asset_children, [web_path + "/css", web_path + "/images", web_path + "/js"]
92
+
93
+ # Dirs that need to be writable by the HTTP Server (i.e. cache, log dirs)
94
+ set :writable_dirs, [log_path, cache_path]
95
+
96
+ # Name used by the Web Server (i.e. www-data for Apache)
97
+ set :webserver_user, "www-data"
98
+
99
+ # Method used to set permissions (:chmod, :acl, or :chown)
100
+ set :permission_method, false
101
+
102
+ # Model manager: (doctrine, propel)
103
+ set :model_manager, "doctrine"
104
+
105
+ # Symfony2 version
106
+ set(:symfony_version) { guess_symfony_version }
107
+
108
+ # If set to false, it will never ask for confirmations (migrations task for instance)
109
+ # Use it carefully, really!
110
+ set :interactive_mode, true
111
+
112
+ def load_database_config(data, env)
113
+ read_parameters(data)['parameters']
114
+ end
115
+
116
+ def read_parameters(data)
117
+ if '.ini' === File.extname(app_config_file) then
118
+ File.readable?(data) ? IniFile::load(data) : IniFile.new(data)
119
+ else
120
+ YAML::load(data)
121
+ end
122
+ end
123
+
124
+ def guess_symfony_version
125
+ capture("cd #{latest_release} && #{php_bin} #{symfony_console} --version |cut -d \" \" -f 3")
126
+ end
127
+
128
+ def remote_file_exists?(full_path)
129
+ 'true' == capture("if [ -e #{full_path} ]; then echo 'true'; fi").strip
130
+ end
131
+
132
+ def remote_command_exists?(command)
133
+ 'true' == capture("if [ -x \"$(which #{command})\" ]; then echo 'true'; fi").strip
134
+ end
135
+
136
+ STDOUT.sync
137
+ $error = false
138
+ $pretty_errors_defined = false
139
+
140
+ # Be less verbose by default
141
+ logger.level = Capistrano::Logger::IMPORTANT
142
+
143
+ def capifony_pretty_print(msg)
144
+ if logger.level == Capistrano::Logger::IMPORTANT
145
+ pretty_errors
146
+
147
+ msg = msg.slice(0, 57)
148
+ msg << '.' * (60 - msg.size)
149
+ print msg
150
+ else
151
+ puts msg.green
152
+ end
153
+ end
154
+
155
+ def capifony_puts_ok
156
+ if logger.level == Capistrano::Logger::IMPORTANT && !$error
157
+ puts '✔'.green
158
+ end
159
+
160
+ $error = false
161
+ end
162
+
163
+ def pretty_errors
164
+ if !$pretty_errors_defined
165
+ $pretty_errors_defined = true
166
+
167
+ class << $stderr
168
+ @@firstLine = true
169
+ alias _write write
170
+
171
+ def write(s)
172
+ if @@firstLine
173
+ s = '✘' << "\n" << s
174
+ @@firstLine = false
175
+ end
176
+
177
+ _write(s.red)
178
+ $error = true
179
+ end
180
+ end
181
+ end
182
+ end
183
+
184
+ after "deploy:finalize_update" do
185
+ if use_composer
186
+ if update_vendors
187
+ symfony.composer.update
188
+ else
189
+ symfony.composer.install
190
+ end
191
+ else
192
+ if update_vendors
193
+ vendors_mode.chomp # To remove trailing whiteline
194
+ case vendors_mode
195
+ when "upgrade" then symfony.vendors.upgrade
196
+ when "install" then symfony.vendors.install
197
+ when "reinstall" then symfony.vendors.reinstall
198
+ end
199
+ end
200
+ end
201
+
202
+ symfony.bootstrap.build
203
+
204
+ if model_manager == "propel"
205
+ symfony.propel.build.model
206
+ end
207
+
208
+ if use_composer
209
+ symfony.composer.dump_autoload
210
+ end
211
+
212
+ if assets_install
213
+ symfony.assets.install # Publish bundle assets
214
+ end
215
+
216
+ if update_assets_version
217
+ symfony.assets.update_version # Update `assets_version`
218
+ end
219
+
220
+ if cache_warmup
221
+ symfony.cache.warmup # Warmup clean cache
222
+ end
223
+
224
+ if dump_assetic_assets
225
+ symfony.assetic.dump # Dump assetic assets
226
+ end
227
+
228
+ if clear_controllers
229
+ symfony.project.clear_controllers
230
+ end
231
+ end
232
+
233
+ before "deploy:update_code" do
234
+ msg = "--> Updating code base with #{deploy_via} strategy"
235
+
236
+ if logger.level == Capistrano::Logger::IMPORTANT
237
+ pretty_errors
238
+ puts msg
239
+ else
240
+ puts msg.green
241
+ end
242
+ end
243
+
244
+ after "deploy:create_symlink" do
245
+ puts "--> Successfully deployed!".green
246
+ end
247
+ end
248
+
249
+ end
250
+ end
251
+ end
252
+
253
+ if Capistrano::Configuration.instance
254
+ Capifony::Symfony2.load_into(Capistrano::Configuration.instance)
255
+ end