engineyard-serverside 1.5.13.servicespike → 1.5.13
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.
@@ -260,15 +260,23 @@ WRAP
|
|
260
260
|
run create_revision_file_command
|
261
261
|
end
|
262
262
|
|
263
|
+
def services_command_check
|
264
|
+
"which /usr/local/ey_resin/ruby/bin/ey-services-setup"
|
265
|
+
end
|
266
|
+
|
263
267
|
def services_setup_command
|
264
|
-
"
|
268
|
+
"/usr/local/ey_resin/ruby/bin/ey-services-setup #{config.app}"
|
265
269
|
end
|
266
270
|
|
267
271
|
def setup_services
|
268
272
|
info "~> Setting up external services."
|
269
|
-
|
270
|
-
|
271
|
-
|
273
|
+
begin
|
274
|
+
sudo(services_command_check)
|
275
|
+
rescue StandardError => e
|
276
|
+
info "Could not setup services. Upgrade your environment to get services configuration."
|
277
|
+
return
|
278
|
+
end
|
279
|
+
sudo(services_setup_command)
|
272
280
|
rescue StandardError => e
|
273
281
|
warning <<-WARNING
|
274
282
|
External services configuration not updated. Using previous version.
|
data/spec/basic_deploy_spec.rb
CHANGED
@@ -51,14 +51,4 @@ describe "Deploying an application without Bundler" do
|
|
51
51
|
@deploy_dir.join('current', 'after_restart.ran' ).should exist
|
52
52
|
end
|
53
53
|
|
54
|
-
it "creates and symlinks ey_services_config_deploy.yml" do
|
55
|
-
shared_services_file = @deploy_dir.join('shared', 'config', 'ey_services_config_deploy.yml')
|
56
|
-
symlinked_services_file = @deploy_dir.join('current', 'config', 'ey_services_config_deploy.yml')
|
57
|
-
|
58
|
-
shared_services_file.should exist
|
59
|
-
shared_services_file.should_not be_symlink
|
60
|
-
|
61
|
-
symlinked_services_file.should exist
|
62
|
-
symlinked_services_file.should be_symlink
|
63
|
-
end
|
64
54
|
end
|
data/spec/custom_deploy_spec.rb
CHANGED
@@ -23,6 +23,7 @@ describe "the EY::Serverside::Deploy API" do
|
|
23
23
|
def copy_repository_cache() @call_order << 'copy_repository_cache' end
|
24
24
|
def create_revision_file() @call_order << 'create_revision_file' end
|
25
25
|
def bundle() @call_order << 'bundle' end
|
26
|
+
def setup_services() @call_order << 'setup_services' end
|
26
27
|
def symlink_configs() @call_order << 'symlink_configs' end
|
27
28
|
def migrate() @call_order << 'migrate' end
|
28
29
|
def compile_assets() @call_order << 'compile_assets' end
|
@@ -40,6 +41,7 @@ describe "the EY::Serverside::Deploy API" do
|
|
40
41
|
copy_repository_cache
|
41
42
|
create_revision_file
|
42
43
|
bundle
|
44
|
+
setup_services
|
43
45
|
symlink_configs
|
44
46
|
conditionally_enable_maintenance_page
|
45
47
|
migrate
|
@@ -54,10 +54,31 @@ describe "Deploying an application with services" do
|
|
54
54
|
@deployer.infos.should_not be_any { |info| info =~ /WARNING/ }
|
55
55
|
end
|
56
56
|
|
57
|
+
describe "followed by a deploy that can't find the command" do
|
58
|
+
before do
|
59
|
+
@deployer = setup_deploy
|
60
|
+
@deployer.mock_services_command_check!("which nonexistatncommand")
|
61
|
+
@deployer.deploy
|
62
|
+
end
|
63
|
+
|
64
|
+
it "silently fails" do
|
65
|
+
@shared_services_file.should exist
|
66
|
+
@shared_services_file.should_not be_symlink
|
67
|
+
@shared_services_file.read.should == "somefilecontents\n"
|
68
|
+
|
69
|
+
@symlinked_services_file.should exist
|
70
|
+
@symlinked_services_file.should be_symlink
|
71
|
+
@shared_services_file.read.should == "somefilecontents\n"
|
72
|
+
|
73
|
+
@deployer.infos.should_not be_any { |info| info =~ /WARNING/ }
|
74
|
+
end
|
75
|
+
|
76
|
+
end
|
77
|
+
|
57
78
|
describe "followed by a deploy that fails to fetch services" do
|
58
79
|
before do
|
59
80
|
@deployer = setup_deploy
|
60
|
-
@deployer.
|
81
|
+
@deployer.mock_services_setup!("notarealcommandsoitwillexitnonzero")
|
61
82
|
@deployer.deploy
|
62
83
|
end
|
63
84
|
|
data/spec/support/integration.rb
CHANGED
@@ -68,6 +68,14 @@ class FullTestDeploy < EY::Serverside::Deploy
|
|
68
68
|
super
|
69
69
|
end
|
70
70
|
|
71
|
+
def services_command_check
|
72
|
+
@mock_services_command_check || "which echo"
|
73
|
+
end
|
74
|
+
|
75
|
+
def mock_services_command_check!(value)
|
76
|
+
@mock_services_command_check = value
|
77
|
+
end
|
78
|
+
|
71
79
|
def services_setup_command
|
72
80
|
@mock_services_setup_command || "echo 'skipped'"
|
73
81
|
end
|
@@ -76,9 +84,6 @@ class FullTestDeploy < EY::Serverside::Deploy
|
|
76
84
|
@mock_services_setup_command = value
|
77
85
|
end
|
78
86
|
|
79
|
-
def mock_services_setup_to_break!
|
80
|
-
@mock_services_setup_command = "notarealcommandsoitwillexitnonzero"
|
81
|
-
end
|
82
87
|
end
|
83
88
|
|
84
89
|
module EY::Serverside::Strategies::IntegrationSpec
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: engineyard-serverside
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 25
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 5
|
9
9
|
- 13
|
10
|
-
|
11
|
-
version: 1.5.13.servicespike
|
10
|
+
version: 1.5.13
|
12
11
|
platform: ruby
|
13
12
|
authors:
|
14
13
|
- EY Cloud Team
|
@@ -16,12 +15,10 @@ autorequire:
|
|
16
15
|
bindir: bin
|
17
16
|
cert_chain: []
|
18
17
|
|
19
|
-
date: 2011-11-
|
18
|
+
date: 2011-11-07 00:00:00 Z
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
22
|
-
|
23
|
-
prerelease: false
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
21
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
25
22
|
none: false
|
26
23
|
requirements:
|
27
24
|
- - "="
|
@@ -32,12 +29,12 @@ dependencies:
|
|
32
29
|
- 3
|
33
30
|
- 2
|
34
31
|
version: 1.3.2
|
32
|
+
requirement: *id001
|
35
33
|
type: :development
|
36
|
-
version_requirements: *id001
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
|
-
name: rake
|
39
34
|
prerelease: false
|
40
|
-
|
35
|
+
name: rspec
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
41
38
|
none: false
|
42
39
|
requirements:
|
43
40
|
- - ">="
|
@@ -46,8 +43,10 @@ dependencies:
|
|
46
43
|
segments:
|
47
44
|
- 0
|
48
45
|
version: "0"
|
46
|
+
requirement: *id002
|
49
47
|
type: :development
|
50
|
-
|
48
|
+
prerelease: false
|
49
|
+
name: rake
|
51
50
|
description:
|
52
51
|
email: cloud@engineyard.com
|
53
52
|
executables:
|
@@ -315,14 +314,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
315
314
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
316
315
|
none: false
|
317
316
|
requirements:
|
318
|
-
- - "
|
317
|
+
- - ">="
|
319
318
|
- !ruby/object:Gem::Version
|
320
|
-
hash:
|
319
|
+
hash: 3
|
321
320
|
segments:
|
322
|
-
-
|
323
|
-
|
324
|
-
- 1
|
325
|
-
version: 1.3.1
|
321
|
+
- 0
|
322
|
+
version: "0"
|
326
323
|
requirements: []
|
327
324
|
|
328
325
|
rubyforge_project:
|