capistrano 3.0.0.pre14 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +42 -0
  3. data/README.md +1 -1
  4. data/bin/cap +1 -1
  5. data/capistrano.gemspec +3 -0
  6. data/features/deploy.feature +52 -0
  7. data/features/installation.feature +16 -0
  8. data/features/remote_file_task.feature +14 -0
  9. data/features/step_definitions/assertions.rb +90 -0
  10. data/features/step_definitions/cap_commands.rb +8 -0
  11. data/features/step_definitions/setup.rb +25 -0
  12. data/features/support/env.rb +12 -0
  13. data/features/support/remote_command_helpers.rb +20 -0
  14. data/lib/Capfile +1 -0
  15. data/lib/capistrano.rb +0 -14
  16. data/lib/capistrano/all.rb +16 -0
  17. data/lib/capistrano/application.rb +1 -10
  18. data/lib/capistrano/configuration.rb +4 -0
  19. data/lib/capistrano/configuration/server.rb +44 -6
  20. data/lib/capistrano/configuration/servers.rb +14 -51
  21. data/lib/capistrano/configuration/servers/role_filter.rb +86 -0
  22. data/lib/capistrano/defaults.rb +0 -8
  23. data/lib/capistrano/dsl.rb +1 -1
  24. data/lib/capistrano/dsl/env.rb +6 -2
  25. data/lib/capistrano/dsl/paths.rb +7 -4
  26. data/lib/capistrano/dsl/task_enhancements.rb +38 -0
  27. data/lib/capistrano/hg.rb +1 -0
  28. data/lib/capistrano/i18n.rb +1 -1
  29. data/lib/capistrano/setup.rb +7 -3
  30. data/lib/capistrano/tasks/deploy.rake +39 -9
  31. data/lib/capistrano/tasks/framework.rake +0 -2
  32. data/lib/capistrano/tasks/git.rake +3 -6
  33. data/lib/capistrano/tasks/hg.rake +39 -0
  34. data/lib/capistrano/templates/Capfile +2 -23
  35. data/lib/capistrano/templates/deploy.rb.erb +23 -0
  36. data/lib/capistrano/templates/stage.rb.erb +1 -1
  37. data/lib/capistrano/version.rb +1 -1
  38. data/spec/integration/dsl_spec.rb +71 -0
  39. data/spec/lib/capistrano/configuration/server_spec.rb +69 -0
  40. data/spec/lib/capistrano/configuration/servers/role_filter_spec.rb +140 -0
  41. data/spec/lib/capistrano/configuration/servers_spec.rb +46 -9
  42. data/spec/lib/capistrano/configuration_spec.rb +11 -0
  43. data/spec/spec_helper.rb +1 -2
  44. data/spec/support/.gitignore +1 -0
  45. data/spec/support/Vagrantfile +13 -0
  46. data/spec/support/tasks/database.cap +11 -0
  47. data/spec/support/test_app.rb +55 -6
  48. metadata +74 -16
  49. data/lib/capistrano/bundler.rb +0 -1
  50. data/lib/capistrano/tasks/bundler.rake +0 -13
  51. data/spec/integration/deploy_finalize_spec.rb +0 -34
  52. data/spec/integration/deploy_finished_spec.rb +0 -36
  53. data/spec/integration/deploy_started_spec.rb +0 -74
  54. data/spec/integration/deploy_update_spec.rb +0 -45
  55. data/spec/integration/installation_spec.rb +0 -76
@@ -1,45 +0,0 @@
1
- require 'integration_spec_helper'
2
-
3
- describe 'cap deploy:updating', slow: true do
4
- before do
5
- install_test_app_with(config)
6
- end
7
-
8
- describe 'deploy' do
9
- let(:config) {
10
- %{
11
- set :stage, :#{stage}
12
- set :deploy_to, '#{deploy_to}'
13
- set :repo_url, 'git://github.com/capistrano/capistrano.git'
14
- set :branch, 'v3'
15
- server 'localhost', roles: %w{web app}, user: '#{current_user}'
16
- set :linked_files, %w{config/database.yml}
17
- set :linked_dirs, %w{bin log public/system vendor/bundle}
18
- }
19
- }
20
-
21
- describe 'symlink' do
22
- before do
23
- cap 'deploy:started'
24
- create_shared_directory('config')
25
- create_shared_file('config/database.yml')
26
- cap 'deploy:symlink:shared'
27
- end
28
-
29
- describe 'linked_dirs' do
30
- it 'symlinks the directories in shared to `current`' do
31
- %w{bin log public/system vendor/bundle}.each do |dir|
32
- expect(release_path.join(dir)).to be_a_symlink_to shared_path.join(dir)
33
- end
34
- end
35
- end
36
-
37
- describe 'linked_files' do
38
- it 'symlinks the files in shared to `current`' do
39
- file = 'config/database.yml'
40
- expect(release_path.join(file)).to be_a_symlink_to shared_path.join(file)
41
- end
42
- end
43
- end
44
- end
45
- end
@@ -1,76 +0,0 @@
1
- require 'integration_spec_helper'
2
-
3
- describe 'cap install' do
4
-
5
- context 'with defaults' do
6
- before :all do
7
- create_test_app
8
- Dir.chdir(test_app_path) do
9
- %x[bundle exec cap install]
10
- end
11
- end
12
-
13
- describe 'installation' do
14
-
15
- it 'creates config/deploy' do
16
- path = test_app_path.join('config/deploy')
17
- expect(Dir.exists?(path)).to be_true
18
- end
19
-
20
- it 'creates lib/capistrano/tasks' do
21
- path = test_app_path.join('lib/capistrano/tasks')
22
- expect(Dir.exists?(path)).to be_true
23
- end
24
-
25
- it 'creates the deploy file' do
26
- file = test_app_path.join('config/deploy.rb')
27
- expect(File.exists?(file)).to be_true
28
- end
29
-
30
- it 'creates the stage files' do
31
- staging = test_app_path.join('config/deploy/staging.rb')
32
- production = test_app_path.join('config/deploy/production.rb')
33
- expect(File.exists?(staging)).to be_true
34
- expect(File.exists?(production)).to be_true
35
- end
36
-
37
- end
38
- end
39
-
40
- context 'with STAGES' do
41
- before :all do
42
- create_test_app
43
- Dir.chdir(test_app_path) do
44
- %x[bundle exec cap install STAGES=qa,production]
45
- end
46
- end
47
-
48
- describe 'installation' do
49
-
50
- it 'creates config/deploy' do
51
- path = test_app_path.join('config/deploy')
52
- expect(Dir.exists?(path)).to be_true
53
- end
54
-
55
- it 'creates lib/capistrano/tasks' do
56
- path = test_app_path.join('lib/capistrano/tasks')
57
- expect(Dir.exists?(path)).to be_true
58
- end
59
-
60
- it 'creates the deploy file' do
61
- file = test_app_path.join('config/deploy.rb')
62
- expect(File.exists?(file)).to be_true
63
- end
64
-
65
- it 'creates the stage files specified, not the defaults' do
66
- qa = test_app_path.join('config/deploy/qa.rb')
67
- production = test_app_path.join('config/deploy/production.rb')
68
- staging = test_app_path.join('config/deploy/staging.rb')
69
- expect(File.exists?(qa)).to be_true
70
- expect(File.exists?(production)).to be_true
71
- expect(File.exists?(staging)).to be_false
72
- end
73
-
74
- end
75
- end
76
- end