yads 0.1.1 → 0.1.2

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/lib/yads/deployer.rb CHANGED
@@ -26,16 +26,25 @@ module Yads
26
26
 
27
27
  private
28
28
 
29
- def config
30
- @config ||= begin
31
- YAML.load(File.open("config/deploy.yml"))
32
- rescue Errno::ENOENT
33
- raise Yads::ConfigNotFound, "config/deploy.yml not found"
34
- end
29
+ def config
30
+ @config ||= begin
31
+ YAML.load(File.open("config/deploy.yml"))
32
+ rescue Errno::ENOENT
33
+ raise Yads::ConfigNotFound, "config/deploy.yml not found"
35
34
  end
35
+ end
36
+
37
+ def connection
38
+ @connection ||= begin
39
+ options = {
40
+ :host => config["host"],
41
+ :user => config["user"],
42
+ :forward_agent => config["forward_agent"]
43
+ }
44
+ options[:port] = config["port"] if config["port"]
36
45
 
37
- def connection
38
- @connection ||= SSH.new(:host => config["host"], :user => config["user"], :forward_agent => config["forward_agent"])
46
+ SSH.new(options)
39
47
  end
48
+ end
40
49
  end
41
50
  end
data/lib/yads/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Yads
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -0,0 +1,9 @@
1
+ host: rafaelss.com
2
+ port: 2222
3
+ user: deploy
4
+ forward_agent: true
5
+ path: /tmp/yads
6
+ repository: git@repohost.com:myrepo.git
7
+ commands:
8
+ migrate: rake db:migrate
9
+ touch: touch test
@@ -35,6 +35,18 @@ class TestYads < MiniTest::Unit::TestCase
35
35
  end
36
36
  end
37
37
 
38
+ def test_setup_using_non_standard_port
39
+ inside_project_root do
40
+ ssh = mock
41
+ ssh.expects(:execute).with("mkdir -p /tmp/yads && cd /tmp/yads && git clone --depth 1 git@repohost.com:myrepo.git .")
42
+ Yads::SSH.expects(:new).with(:host => "rafaelss.com", :user => "deploy", :forward_agent => true, :port => 2222).returns(ssh)
43
+
44
+ deployer = Yads::Deployer.new(@log_file)
45
+ deployer.stubs(:config => YAML.load(File.open("config/deploy_with_port.yml")).merge("port" => 2222))
46
+ deployer.setup
47
+ end
48
+ end
49
+
38
50
  def test_deploy
39
51
  inside_project_root do
40
52
  ssh = mock
@@ -46,9 +58,21 @@ class TestYads < MiniTest::Unit::TestCase
46
58
  end
47
59
  end
48
60
 
49
- private
61
+ def test_deploy_using_non_standard_port
62
+ inside_project_root do
63
+ ssh = mock
64
+ ssh.expects(:execute).with("cd /tmp/yads && rake db:migrate && touch test")
65
+ Yads::SSH.expects(:new).with(:host => "rafaelss.com", :user => "deploy", :forward_agent => true, :port => 2222).returns(ssh)
50
66
 
51
- def inside_project_root(&block)
52
- Dir.chdir(File.expand_path("../../fixtures", __FILE__), &block)
67
+ deployer = Yads::Deployer.new(@log_file)
68
+ deployer.stubs(:config => YAML.load(File.open("config/deploy_with_port.yml")).merge("port" => 2222))
69
+ deployer.deploy
53
70
  end
71
+ end
72
+
73
+ private
74
+
75
+ def inside_project_root(&block)
76
+ Dir.chdir(File.expand_path("../../fixtures", __FILE__), &block)
77
+ end
54
78
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yads
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-04-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: net-ssh
16
- requirement: &70167770426280 !ruby/object:Gem::Requirement
16
+ requirement: &70191598240660 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.1.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70167770426280
24
+ version_requirements: *70191598240660
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: slop
27
- requirement: &70167770425040 !ruby/object:Gem::Requirement
27
+ requirement: &70191598239280 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.5.2
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70167770425040
35
+ version_requirements: *70191598239280
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70167770423080 !ruby/object:Gem::Requirement
38
+ requirement: &70191598237440 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 0.8.7
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70167770423080
46
+ version_requirements: *70191598237440
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: minitest
49
- requirement: &70167770422200 !ruby/object:Gem::Requirement
49
+ requirement: &70191598236560 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 2.0.2
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70167770422200
57
+ version_requirements: *70191598236560
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: mocha
60
- requirement: &70167770437500 !ruby/object:Gem::Requirement
60
+ requirement: &70191598251880 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: 0.9.10
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70167770437500
68
+ version_requirements: *70191598251880
69
69
  description: Simple deployment tool that uses a single YAML file to put your code
70
70
  live
71
71
  email:
@@ -86,6 +86,7 @@ files:
86
86
  - lib/yads/ssh.rb
87
87
  - lib/yads/version.rb
88
88
  - test/fixtures/config/deploy.yml
89
+ - test/fixtures/config/deploy_with_port.yml
89
90
  - test/test_helper.rb
90
91
  - test/yads/test_deployer.rb
91
92
  - test/yads/test_ssh.rb
@@ -116,6 +117,7 @@ specification_version: 3
116
117
  summary: Deploy your code using a YAML file
117
118
  test_files:
118
119
  - test/fixtures/config/deploy.yml
120
+ - test/fixtures/config/deploy_with_port.yml
119
121
  - test/test_helper.rb
120
122
  - test/yads/test_deployer.rb
121
123
  - test/yads/test_ssh.rb