whiskey_disk 0.6.4 → 0.6.10

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.
Files changed (62) hide show
  1. data/CHANGELOG +34 -0
  2. data/README.integration_specs +36 -0
  3. data/README.markdown +122 -5
  4. data/VERSION +1 -1
  5. data/bin/wd +5 -0
  6. data/lib/whiskey_disk/config.rb +35 -7
  7. data/lib/whiskey_disk.rb +31 -9
  8. data/scenarios/git_repositories/config.git/HEAD +1 -0
  9. data/scenarios/git_repositories/config.git/config +5 -0
  10. data/scenarios/git_repositories/config.git/description +1 -0
  11. data/scenarios/git_repositories/config.git/git-daemon-export-ok +0 -0
  12. data/scenarios/git_repositories/config.git/hooks/applypatch-msg.sample +15 -0
  13. data/scenarios/git_repositories/config.git/hooks/commit-msg.sample +24 -0
  14. data/scenarios/git_repositories/config.git/hooks/post-commit.sample +8 -0
  15. data/scenarios/git_repositories/config.git/hooks/post-receive.sample +15 -0
  16. data/scenarios/git_repositories/config.git/hooks/post-update.sample +8 -0
  17. data/scenarios/git_repositories/config.git/hooks/pre-applypatch.sample +14 -0
  18. data/scenarios/git_repositories/config.git/hooks/pre-commit.sample +46 -0
  19. data/scenarios/git_repositories/config.git/hooks/pre-rebase.sample +169 -0
  20. data/scenarios/git_repositories/config.git/hooks/prepare-commit-msg.sample +36 -0
  21. data/scenarios/git_repositories/config.git/hooks/update.sample +128 -0
  22. data/scenarios/git_repositories/config.git/info/exclude +6 -0
  23. data/scenarios/git_repositories/config.git/objects/17/6bf54cf17d1d1c24556dc059c4144a5df230e8 +0 -0
  24. data/scenarios/git_repositories/config.git/objects/20/e9ff3feaa8ede30f707e5f1b4356e3c02bb7ec +0 -0
  25. data/scenarios/git_repositories/config.git/objects/45/117b1c775f0de415478dbf08ed9d667ab17d13 +0 -0
  26. data/scenarios/git_repositories/config.git/objects/71/eb5df52676e8e6efba471050b46978173af110 +1 -0
  27. data/scenarios/git_repositories/config.git/objects/d1/0bcd51fec41f854001e4d61f99d9e282a695d3 +0 -0
  28. data/scenarios/git_repositories/config.git/objects/e6/b02c66ad632e6b8535c4630cb8fe07732a72fc +0 -0
  29. data/scenarios/git_repositories/config.git/objects/f9/49d5d8a4f12c91471e34d4e277239c35ebd10d +0 -0
  30. data/scenarios/git_repositories/config.git/refs/heads/master +1 -0
  31. data/scenarios/git_repositories/project.git/HEAD +1 -0
  32. data/scenarios/git_repositories/project.git/config +5 -0
  33. data/scenarios/git_repositories/project.git/description +1 -0
  34. data/scenarios/git_repositories/project.git/git-daemon-export-ok +0 -0
  35. data/scenarios/git_repositories/project.git/hooks/applypatch-msg.sample +15 -0
  36. data/scenarios/git_repositories/project.git/hooks/commit-msg.sample +24 -0
  37. data/scenarios/git_repositories/project.git/hooks/post-commit.sample +8 -0
  38. data/scenarios/git_repositories/project.git/hooks/post-receive.sample +15 -0
  39. data/scenarios/git_repositories/project.git/hooks/post-update.sample +8 -0
  40. data/scenarios/git_repositories/project.git/hooks/pre-applypatch.sample +14 -0
  41. data/scenarios/git_repositories/project.git/hooks/pre-commit.sample +46 -0
  42. data/scenarios/git_repositories/project.git/hooks/pre-rebase.sample +169 -0
  43. data/scenarios/git_repositories/project.git/hooks/prepare-commit-msg.sample +36 -0
  44. data/scenarios/git_repositories/project.git/hooks/update.sample +128 -0
  45. data/scenarios/git_repositories/project.git/info/exclude +6 -0
  46. data/scenarios/git_repositories/project.git/objects/20/1c7641c2e42b0b904e5c1f793489d8b858e4da +2 -0
  47. data/scenarios/git_repositories/project.git/objects/80/26076649ceccbe96a6292f2432652f08483035 +0 -0
  48. data/scenarios/git_repositories/project.git/objects/ef/2a88894d5421920b9dfe67a9a4d8043830e62e +0 -0
  49. data/scenarios/git_repositories/project.git/refs/heads/master +1 -0
  50. data/scenarios/invalid/deploy.yml +1 -0
  51. data/scenarios/local/deploy.yml +16 -0
  52. data/scenarios/remote/deploy.yml +5 -0
  53. data/spec/integration/invalid_configuration_spec.rb +39 -0
  54. data/spec/integration/local_deployments_spec.rb +230 -0
  55. data/spec/integration/remote_deployments_spec.rb +54 -0
  56. data/spec/spec_helper.rb +57 -0
  57. data/spec/wd_command_spec.rb +289 -6
  58. data/spec/whiskey_disk/config_spec.rb +233 -89
  59. data/spec/whiskey_disk/rake_spec.rb +0 -21
  60. data/spec/whiskey_disk_spec.rb +160 -142
  61. data/whiskey_disk.gemspec +55 -2
  62. metadata +57 -4
@@ -45,27 +45,57 @@ describe 'WhiskeyDisk' do
45
45
  WhiskeyDisk.configuration = @parameters
46
46
  end
47
47
 
48
- it 'should work without arguments' do
49
- lambda { WhiskeyDisk.remote? }.should.not.raise(ArgumentError)
50
- end
51
-
52
- it 'should not allow arguments' do
53
- lambda { WhiskeyDisk.remote?(:foo) }.should.raise(ArgumentError)
48
+ it 'should allow a domain argument' do
49
+ lambda { WhiskeyDisk.remote?('domain') }.should.not.raise(ArgumentError)
54
50
  end
55
51
 
56
- it 'should return false if the configuration includes a nil domain setting' do
57
- @parameters['domain'] = nil
58
- WhiskeyDisk.remote?.should == false
52
+ it 'should require a domain argument' do
53
+ lambda { WhiskeyDisk.remote? }.should.raise(ArgumentError)
59
54
  end
60
55
 
61
- it 'should return true if the configuration includes a non-empty domain setting' do
62
- @parameters['domain'] = [ { :name => 'smeghost' } ]
63
- WhiskeyDisk.remote?.should == true
56
+ describe 'when a domain limit is specified in the configuration' do
57
+ before do
58
+ @domain = 'myhost'
59
+ WhiskeyDisk::Config.stub!(:domain_limit).and_return(@domain)
60
+ end
61
+
62
+ it 'should return false if the provided domain is nil' do
63
+ WhiskeyDisk.remote?(nil).should == false
64
+ end
65
+
66
+ it 'should return false if the provided domain is the string "local"' do
67
+ WhiskeyDisk.remote?('local').should == false
68
+ end
69
+
70
+ it 'should return false if the provided domain matches the limit domain from the configuration' do
71
+ WhiskeyDisk.remote?(@domain).should == false
72
+ end
73
+
74
+ it 'should return false if the provided domain, ignoring any user@, matches the limit domain from the configuration' do
75
+ WhiskeyDisk.remote?("user@" + @domain).should == false
76
+ end
77
+
78
+ it 'should return true if the provided domain does not match the limit domain from the configuration' do
79
+ WhiskeyDisk.remote?('smeghost').should == true
80
+ end
64
81
  end
65
82
 
66
- it 'should return true if the configuration includes a multiple domain settings' do
67
- @parameters['domain'] = [ { :name => 'smeghost' }, { :name => 'faphost' } ]
68
- WhiskeyDisk.remote?.should == true
83
+ describe 'when no domain limit is specified in the configuration' do
84
+ before do
85
+ WhiskeyDisk::Config.stub!(:domain_limit).and_return(nil)
86
+ end
87
+
88
+ it 'should return false if the provided domain is nil' do
89
+ WhiskeyDisk.remote?(nil).should == false
90
+ end
91
+
92
+ it 'should return false if the provided domain is the string "local"' do
93
+ WhiskeyDisk.remote?('local').should == false
94
+ end
95
+
96
+ it 'should return true if the provided domain is non-empty' do
97
+ WhiskeyDisk.remote?('smeghost').should == true
98
+ end
69
99
  end
70
100
  end
71
101
 
@@ -547,61 +577,6 @@ describe 'WhiskeyDisk' do
547
577
  end
548
578
  end
549
579
 
550
- describe 'flushing changes' do
551
- describe 'when running remotely' do
552
- before do
553
- WhiskeyDisk.configuration = { 'domain' => [ { :name => 'www.domain.com' } ], 'deploy_to' => '/path/to/main/repo' }
554
- WhiskeyDisk.stub!(:bundle).and_return('command string')
555
- WhiskeyDisk.stub!(:run)
556
- end
557
-
558
- it 'should bundle the buffer of commands' do
559
- WhiskeyDisk.enqueue('x')
560
- WhiskeyDisk.enqueue('y')
561
- WhiskeyDisk.should.receive(:bundle)
562
- WhiskeyDisk.flush
563
- end
564
-
565
- it 'should use "run" to run all the bundled commands at once' do
566
- WhiskeyDisk.should.receive(:run).with('command string')
567
- WhiskeyDisk.flush
568
- end
569
- end
570
-
571
- describe 'when running locally' do
572
- before do
573
- WhiskeyDisk.reset
574
- WhiskeyDisk.configuration = { 'deploy_to' => '/path/to/main/repo' }
575
- WhiskeyDisk.stub!(:bundle).and_return('command string')
576
- WhiskeyDisk.stub!(:system)
577
- end
578
-
579
- it 'should bundle the buffer of commands' do
580
- WhiskeyDisk.enqueue('x')
581
- WhiskeyDisk.enqueue('y')
582
- WhiskeyDisk.should.receive(:bundle).and_return('command string')
583
- WhiskeyDisk.flush
584
- end
585
-
586
- it 'should use "system" to run all the bundled commands at once' do
587
- WhiskeyDisk.should.receive(:system).with('command string')
588
- WhiskeyDisk.flush
589
- end
590
-
591
- it 'should record a failure result when the system command fails' do
592
- WhiskeyDisk.stub!(:system).and_return(false)
593
- WhiskeyDisk.flush
594
- WhiskeyDisk.results.should == [ { :domain => 'local', :status => false } ]
595
- end
596
-
597
- it 'should record a success result when the system command succeeds' do
598
- WhiskeyDisk.stub!(:system).and_return(true)
599
- WhiskeyDisk.flush
600
- WhiskeyDisk.results.should == [ { :domain => 'local', :status => true } ]
601
- end
602
- end
603
- end
604
-
605
580
  describe 'bundling up buffered commands for execution' do
606
581
  before do
607
582
  WhiskeyDisk.reset
@@ -802,93 +777,136 @@ describe 'WhiskeyDisk' do
802
777
  end
803
778
  end
804
779
 
805
- describe 'when running a command string remotely' do
780
+ describe 'determining if a domain is of interest to us' do
806
781
  before do
807
- WhiskeyDisk.reset
808
- @domain = 'ogc@ogtastic.com'
809
- WhiskeyDisk.configuration = { 'domain' => [ { :name => @domain } ] }
810
- WhiskeyDisk.stub!(:system)
782
+ WhiskeyDisk::Config.stub!(:domain_limit).and_return(false)
783
+ end
784
+
785
+ it 'should allow specifying a domain' do
786
+ lambda { WhiskeyDisk.domain_of_interest?(:domain) }.should.not.raise(ArgumentError)
787
+ end
788
+
789
+ it 'should require a domain' do
790
+ lambda { WhiskeyDisk.domain_of_interest? }.should.raise(ArgumentError)
811
791
  end
812
792
 
813
- it 'should accept a command string' do
814
- lambda { WhiskeyDisk.run('ls') }.should.not.raise(ArgumentError)
793
+ it 'should return true when our configuration does not specify a domain limit' do
794
+ WhiskeyDisk::Config.stub!(:domain_limit).and_return(false)
795
+ WhiskeyDisk.domain_of_interest?('somedomain').should == true
815
796
  end
816
797
 
817
- it 'should require a command string' do
818
- lambda { WhiskeyDisk.run }.should.raise(ArgumentError)
798
+ it 'should return true when the specified domain matches the configuration domain limit' do
799
+ WhiskeyDisk::Config.stub!(:domain_limit).and_return('somedomain')
800
+ WhiskeyDisk.domain_of_interest?('somedomain').should == true
819
801
  end
820
802
 
803
+ it 'should return true when the specified domain matches the configuration domain limit, with a prepended "user@"' do
804
+ WhiskeyDisk::Config.stub!(:domain_limit).and_return('somedomain')
805
+ WhiskeyDisk.domain_of_interest?('user@somedomain').should == true
806
+ end
807
+
808
+ it 'should return false when the specified domain does not match the configuration domain limit' do
809
+ WhiskeyDisk::Config.stub!(:domain_limit).and_return('otherdomain')
810
+ WhiskeyDisk.domain_of_interest?('somedomain').should == false
811
+ end
812
+ end
813
+
814
+ describe 'flushing changes' do
815
+ before do
816
+ @cmd = 'ls'
817
+ @domains = [ { :name => 'ogc@ogtastic.com' }, { :name => 'foo@example.com' }, { :name => 'local' } ]
818
+ WhiskeyDisk.configuration = { 'domain' => @domains }
819
+ WhiskeyDisk.stub!(:domain_of_interest?).and_return(true)
820
+ WhiskeyDisk.stub!(:bundle).and_return(@cmd)
821
+ WhiskeyDisk.stub!(:system)
822
+ end
823
+
821
824
  it 'should fail if the domain path is not specified' do
822
825
  WhiskeyDisk.configuration = {}
823
- lambda { WhiskeyDisk.run('ls') }.should.raise
826
+ lambda { WhiskeyDisk.flush}.should.raise
824
827
  end
825
828
 
826
- describe 'and a single domain is specified' do
827
- before do
828
- @domain = 'ogc@ogtastic.com'
829
- WhiskeyDisk.configuration = { 'domain' => [ { :name => @domain } ] }
830
- end
831
-
832
- it 'should pass the string to ssh with verbosity enabled' do
833
- WhiskeyDisk.should.receive(:system).with('ssh', '-v', @domain, "set -x; ls")
834
- WhiskeyDisk.run('ls')
835
- end
836
-
837
- it 'should include domain role settings when the domain has roles' do
838
- WhiskeyDisk.configuration = { 'domain' => [ { :name => @domain, :roles => [ 'web', 'db' ] } ] }
839
- WhiskeyDisk.should.receive(:system).with('ssh', '-v', @domain, "set -x; export WD_ROLES='web:db'; ls")
840
- WhiskeyDisk.run('ls')
841
- end
829
+ it 'should use "run" to issue commands for all remote domains' do
830
+ WhiskeyDisk.should.receive(:run).with({ :name => 'ogc@ogtastic.com' }, @cmd)
831
+ WhiskeyDisk.should.receive(:run).with({ :name => 'foo@example.com' }, @cmd)
832
+ WhiskeyDisk.flush
842
833
  end
843
834
 
844
- describe 'and multiple domains are specified' do
845
- before do
846
- @domains = [ { :name => 'ogc@ogtastic.com' }, { :name => 'foo@example.com' } ]
847
- end
848
-
849
- it 'should run the command via ssh on each domain in the order specified in the configuration file' do
850
- TestOrderedExecution.configuration = { 'domain' => @domains }
851
- TestOrderedExecution.run('ls')
852
- TestOrderedExecution.commands.should == [
853
- "ssh -v ogc@ogtastic.com set -x; ls",
854
- "ssh -v foo@example.com set -x; ls"
855
- ]
856
- end
857
-
858
- it 'should include role settings for each domain when available' do
859
- @domains = [
860
- { :name => 'ogc@ogtastic.com', :roles => [ 'db', 'web' ] },
861
- { :name => 'foo@example.com', :roles => [ 'app' ] }
862
- ]
863
- TestOrderedExecution.configuration = { 'domain' => @domains }
864
- TestOrderedExecution.run('ls')
865
- TestOrderedExecution.commands.should == [
866
- "ssh -v ogc@ogtastic.com set -x; export WD_ROLES='db:web'; ls",
867
- "ssh -v foo@example.com set -x; export WD_ROLES='app'; ls"
868
- ]
869
- end
870
-
871
- it 'should not fail if an ssh command fails' do
872
- WhiskeyDisk.configuration = { 'domain' => @domains }
873
- WhiskeyDisk.stub!(:system).with('ssh', '-v', 'ogc@ogtastic.com', 'set -x; ls').and_return(false)
874
- lambda { WhiskeyDisk.run('ls') }.should.not.raise(RuntimeError)
875
- end
835
+ it 'should use "shell" to issue commands for any local domains' do
836
+ WhiskeyDisk.should.receive(:shell).with({ :name => 'local' }, @cmd)
837
+ WhiskeyDisk.flush
838
+ end
839
+
840
+ it 'should not issue a command via run for a remote domain which is not of interest' do
841
+ WhiskeyDisk.stub!(:domain_of_interest?).with('ogc@ogtastic.com').and_return(false)
842
+ WhiskeyDisk.should.not.receive(:run).with({ :name => 'ogc@ogtastic.com' }, @cmd)
843
+ WhiskeyDisk.flush
844
+ end
845
+
846
+ it 'should not issue a command via shell for a local domain which is not of interest' do
847
+ WhiskeyDisk.stub!(:domain_of_interest?).with('local').and_return(false)
848
+ WhiskeyDisk.should.not.receive(:shell).with({ :name => 'local' }, @cmd)
849
+ WhiskeyDisk.flush
850
+ end
851
+ end
852
+
853
+ describe 'when running a command string locally' do
854
+ before do
855
+ WhiskeyDisk.reset
856
+ @domain_name = 'local'
857
+ @domain = { :name => @domain_name }
858
+ WhiskeyDisk.configuration = { 'domain' => [ @domain ] }
859
+ WhiskeyDisk.stub!(:system)
860
+ end
861
+
862
+ it 'should accept a domain and a command string' do
863
+ lambda { WhiskeyDisk.shell(@domain, 'ls') }.should.not.raise(ArgumentError)
864
+ end
865
+
866
+ it 'should require a domain and a command string' do
867
+ lambda { WhiskeyDisk.shell(@domain) }.should.raise(ArgumentError)
868
+ end
869
+
870
+ it 'should pass the string to the shell with verbosity enabled' do
871
+ WhiskeyDisk.should.receive(:system).with("set -x; ls")
872
+ WhiskeyDisk.shell(@domain, 'ls')
873
+ end
876
874
 
877
- it 'should continue to run the remaining ssh commands when an ssh fails' do
878
- WhiskeyDisk.configuration = { 'domain' => @domains }
879
- WhiskeyDisk.stub!(:system).with('ssh', '-v', 'ogc@ogtastic.com', 'set -x; ls').and_return(false)
880
- WhiskeyDisk.should.receive(:system).with('ssh', '-v', 'foo@example.com', 'set -x; ls')
881
- WhiskeyDisk.run('ls')
882
- end
875
+ it 'should include domain role settings when the domain has roles' do
876
+ @domain = { :name => @domain_name, :roles => [ 'web', 'db' ] }
877
+ WhiskeyDisk.configuration = { 'domain' => [ @domain ] }
878
+ WhiskeyDisk.should.receive(:system).with("set -x; export WD_ROLES='web:db'; ls")
879
+ WhiskeyDisk.shell(@domain, 'ls')
880
+ end
881
+ end
882
+
883
+ describe 'when running a command string remotely' do
884
+ before do
885
+ WhiskeyDisk.reset
886
+ @domain_name = 'ogc@ogtastic.com'
887
+ @domain = { :name => @domain_name }
888
+ WhiskeyDisk.configuration = { 'domain' => [ @domain ] }
889
+ WhiskeyDisk.stub!(:system)
890
+ end
891
+
892
+ it 'should accept a domain and a command string' do
893
+ lambda { WhiskeyDisk.run(@domain, 'ls') }.should.not.raise(ArgumentError)
894
+ end
895
+
896
+ it 'should require a domain and a command string' do
897
+ lambda { WhiskeyDisk.run(@domain) }.should.raise(ArgumentError)
898
+ end
899
+
900
+ it 'should pass the string to ssh for the domain, with verbosity enabled' do
901
+ WhiskeyDisk.should.receive(:system).with('ssh', '-v', @domain_name, "set -x; ls")
902
+ WhiskeyDisk.run(@domain, 'ls')
903
+ end
883
904
 
884
- it 'should record failure and success status for issued ssh commands' do
885
- WhiskeyDisk.configuration = { 'domain' => @domains }
886
- WhiskeyDisk.stub!(:system).with('ssh', '-v', 'ogc@ogtastic.com', 'set -x; ls').and_return(false)
887
- WhiskeyDisk.stub!(:system).with('ssh', '-v', 'foo@example.com', 'set -x; ls').and_return(true)
888
- WhiskeyDisk.run('ls')
889
- WhiskeyDisk.results.should == [ { :domain => 'ogc@ogtastic.com', :status => false },
890
- { :domain => 'foo@example.com', :status => true} ]
891
- end
905
+ it 'should include domain role settings when the domain has roles' do
906
+ @domain = { :name => @domain_name, :roles => [ 'web', 'db' ] }
907
+ WhiskeyDisk.configuration = { 'domain' => [ @domain ] }
908
+ WhiskeyDisk.should.receive(:system).with('ssh', '-v', @domain_name, "set -x; export WD_ROLES='web:db'; ls")
909
+ WhiskeyDisk.run(@domain, 'ls')
892
910
  end
893
911
  end
894
912
 
data/whiskey_disk.gemspec CHANGED
@@ -5,20 +5,22 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{whiskey_disk}
8
- s.version = "0.6.4"
8
+ s.version = "0.6.10"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Rick Bradley"]
12
- s.date = %q{2011-01-26}
12
+ s.date = %q{2011-02-08}
13
13
  s.description = %q{Opinionated gem for doing fast git-based server deployments.}
14
14
  s.email = %q{rick@rickbradley.com}
15
15
  s.executables = ["wd_role", "wd"]
16
16
  s.extra_rdoc_files = [
17
+ "README.integration_specs",
17
18
  "README.markdown"
18
19
  ]
19
20
  s.files = [
20
21
  "CHANGELOG",
21
22
  "MIT-LICENSE",
23
+ "README.integration_specs",
22
24
  "README.markdown",
23
25
  "Rakefile",
24
26
  "VERSION",
@@ -37,9 +39,57 @@ Gem::Specification.new do |s|
37
39
  "lib/whiskey_disk/config.rb",
38
40
  "lib/whiskey_disk/helpers.rb",
39
41
  "lib/whiskey_disk/rake.rb",
42
+ "scenarios/git_repositories/config.git/HEAD",
43
+ "scenarios/git_repositories/config.git/config",
44
+ "scenarios/git_repositories/config.git/description",
45
+ "scenarios/git_repositories/config.git/git-daemon-export-ok",
46
+ "scenarios/git_repositories/config.git/hooks/applypatch-msg.sample",
47
+ "scenarios/git_repositories/config.git/hooks/commit-msg.sample",
48
+ "scenarios/git_repositories/config.git/hooks/post-commit.sample",
49
+ "scenarios/git_repositories/config.git/hooks/post-receive.sample",
50
+ "scenarios/git_repositories/config.git/hooks/post-update.sample",
51
+ "scenarios/git_repositories/config.git/hooks/pre-applypatch.sample",
52
+ "scenarios/git_repositories/config.git/hooks/pre-commit.sample",
53
+ "scenarios/git_repositories/config.git/hooks/pre-rebase.sample",
54
+ "scenarios/git_repositories/config.git/hooks/prepare-commit-msg.sample",
55
+ "scenarios/git_repositories/config.git/hooks/update.sample",
56
+ "scenarios/git_repositories/config.git/info/exclude",
57
+ "scenarios/git_repositories/config.git/objects/17/6bf54cf17d1d1c24556dc059c4144a5df230e8",
58
+ "scenarios/git_repositories/config.git/objects/20/e9ff3feaa8ede30f707e5f1b4356e3c02bb7ec",
59
+ "scenarios/git_repositories/config.git/objects/45/117b1c775f0de415478dbf08ed9d667ab17d13",
60
+ "scenarios/git_repositories/config.git/objects/71/eb5df52676e8e6efba471050b46978173af110",
61
+ "scenarios/git_repositories/config.git/objects/d1/0bcd51fec41f854001e4d61f99d9e282a695d3",
62
+ "scenarios/git_repositories/config.git/objects/e6/b02c66ad632e6b8535c4630cb8fe07732a72fc",
63
+ "scenarios/git_repositories/config.git/objects/f9/49d5d8a4f12c91471e34d4e277239c35ebd10d",
64
+ "scenarios/git_repositories/config.git/refs/heads/master",
65
+ "scenarios/git_repositories/project.git/HEAD",
66
+ "scenarios/git_repositories/project.git/config",
67
+ "scenarios/git_repositories/project.git/description",
68
+ "scenarios/git_repositories/project.git/git-daemon-export-ok",
69
+ "scenarios/git_repositories/project.git/hooks/applypatch-msg.sample",
70
+ "scenarios/git_repositories/project.git/hooks/commit-msg.sample",
71
+ "scenarios/git_repositories/project.git/hooks/post-commit.sample",
72
+ "scenarios/git_repositories/project.git/hooks/post-receive.sample",
73
+ "scenarios/git_repositories/project.git/hooks/post-update.sample",
74
+ "scenarios/git_repositories/project.git/hooks/pre-applypatch.sample",
75
+ "scenarios/git_repositories/project.git/hooks/pre-commit.sample",
76
+ "scenarios/git_repositories/project.git/hooks/pre-rebase.sample",
77
+ "scenarios/git_repositories/project.git/hooks/prepare-commit-msg.sample",
78
+ "scenarios/git_repositories/project.git/hooks/update.sample",
79
+ "scenarios/git_repositories/project.git/info/exclude",
80
+ "scenarios/git_repositories/project.git/objects/20/1c7641c2e42b0b904e5c1f793489d8b858e4da",
81
+ "scenarios/git_repositories/project.git/objects/80/26076649ceccbe96a6292f2432652f08483035",
82
+ "scenarios/git_repositories/project.git/objects/ef/2a88894d5421920b9dfe67a9a4d8043830e62e",
83
+ "scenarios/git_repositories/project.git/refs/heads/master",
84
+ "scenarios/invalid/deploy.yml",
85
+ "scenarios/local/deploy.yml",
86
+ "scenarios/remote/deploy.yml",
40
87
  "spec/.bacon",
41
88
  "spec/init_spec.rb",
42
89
  "spec/install_spec.rb",
90
+ "spec/integration/invalid_configuration_spec.rb",
91
+ "spec/integration/local_deployments_spec.rb",
92
+ "spec/integration/remote_deployments_spec.rb",
43
93
  "spec/spec_helper.rb",
44
94
  "spec/wd_command_spec.rb",
45
95
  "spec/wd_role_command_spec.rb",
@@ -57,6 +107,9 @@ Gem::Specification.new do |s|
57
107
  s.test_files = [
58
108
  "spec/init_spec.rb",
59
109
  "spec/install_spec.rb",
110
+ "spec/integration/invalid_configuration_spec.rb",
111
+ "spec/integration/local_deployments_spec.rb",
112
+ "spec/integration/remote_deployments_spec.rb",
60
113
  "spec/spec_helper.rb",
61
114
  "spec/wd_command_spec.rb",
62
115
  "spec/wd_role_command_spec.rb",
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: whiskey_disk
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 6
9
- - 4
10
- version: 0.6.4
9
+ - 10
10
+ version: 0.6.10
11
11
  platform: ruby
12
12
  authors:
13
13
  - Rick Bradley
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-01-26 00:00:00 -08:00
18
+ date: 2011-02-08 00:00:00 -06:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -40,10 +40,12 @@ executables:
40
40
  extensions: []
41
41
 
42
42
  extra_rdoc_files:
43
+ - README.integration_specs
43
44
  - README.markdown
44
45
  files:
45
46
  - CHANGELOG
46
47
  - MIT-LICENSE
48
+ - README.integration_specs
47
49
  - README.markdown
48
50
  - Rakefile
49
51
  - VERSION
@@ -62,9 +64,57 @@ files:
62
64
  - lib/whiskey_disk/config.rb
63
65
  - lib/whiskey_disk/helpers.rb
64
66
  - lib/whiskey_disk/rake.rb
67
+ - scenarios/git_repositories/config.git/HEAD
68
+ - scenarios/git_repositories/config.git/config
69
+ - scenarios/git_repositories/config.git/description
70
+ - scenarios/git_repositories/config.git/git-daemon-export-ok
71
+ - scenarios/git_repositories/config.git/hooks/applypatch-msg.sample
72
+ - scenarios/git_repositories/config.git/hooks/commit-msg.sample
73
+ - scenarios/git_repositories/config.git/hooks/post-commit.sample
74
+ - scenarios/git_repositories/config.git/hooks/post-receive.sample
75
+ - scenarios/git_repositories/config.git/hooks/post-update.sample
76
+ - scenarios/git_repositories/config.git/hooks/pre-applypatch.sample
77
+ - scenarios/git_repositories/config.git/hooks/pre-commit.sample
78
+ - scenarios/git_repositories/config.git/hooks/pre-rebase.sample
79
+ - scenarios/git_repositories/config.git/hooks/prepare-commit-msg.sample
80
+ - scenarios/git_repositories/config.git/hooks/update.sample
81
+ - scenarios/git_repositories/config.git/info/exclude
82
+ - scenarios/git_repositories/config.git/objects/17/6bf54cf17d1d1c24556dc059c4144a5df230e8
83
+ - scenarios/git_repositories/config.git/objects/20/e9ff3feaa8ede30f707e5f1b4356e3c02bb7ec
84
+ - scenarios/git_repositories/config.git/objects/45/117b1c775f0de415478dbf08ed9d667ab17d13
85
+ - scenarios/git_repositories/config.git/objects/71/eb5df52676e8e6efba471050b46978173af110
86
+ - scenarios/git_repositories/config.git/objects/d1/0bcd51fec41f854001e4d61f99d9e282a695d3
87
+ - scenarios/git_repositories/config.git/objects/e6/b02c66ad632e6b8535c4630cb8fe07732a72fc
88
+ - scenarios/git_repositories/config.git/objects/f9/49d5d8a4f12c91471e34d4e277239c35ebd10d
89
+ - scenarios/git_repositories/config.git/refs/heads/master
90
+ - scenarios/git_repositories/project.git/HEAD
91
+ - scenarios/git_repositories/project.git/config
92
+ - scenarios/git_repositories/project.git/description
93
+ - scenarios/git_repositories/project.git/git-daemon-export-ok
94
+ - scenarios/git_repositories/project.git/hooks/applypatch-msg.sample
95
+ - scenarios/git_repositories/project.git/hooks/commit-msg.sample
96
+ - scenarios/git_repositories/project.git/hooks/post-commit.sample
97
+ - scenarios/git_repositories/project.git/hooks/post-receive.sample
98
+ - scenarios/git_repositories/project.git/hooks/post-update.sample
99
+ - scenarios/git_repositories/project.git/hooks/pre-applypatch.sample
100
+ - scenarios/git_repositories/project.git/hooks/pre-commit.sample
101
+ - scenarios/git_repositories/project.git/hooks/pre-rebase.sample
102
+ - scenarios/git_repositories/project.git/hooks/prepare-commit-msg.sample
103
+ - scenarios/git_repositories/project.git/hooks/update.sample
104
+ - scenarios/git_repositories/project.git/info/exclude
105
+ - scenarios/git_repositories/project.git/objects/20/1c7641c2e42b0b904e5c1f793489d8b858e4da
106
+ - scenarios/git_repositories/project.git/objects/80/26076649ceccbe96a6292f2432652f08483035
107
+ - scenarios/git_repositories/project.git/objects/ef/2a88894d5421920b9dfe67a9a4d8043830e62e
108
+ - scenarios/git_repositories/project.git/refs/heads/master
109
+ - scenarios/invalid/deploy.yml
110
+ - scenarios/local/deploy.yml
111
+ - scenarios/remote/deploy.yml
65
112
  - spec/.bacon
66
113
  - spec/init_spec.rb
67
114
  - spec/install_spec.rb
115
+ - spec/integration/invalid_configuration_spec.rb
116
+ - spec/integration/local_deployments_spec.rb
117
+ - spec/integration/remote_deployments_spec.rb
68
118
  - spec/spec_helper.rb
69
119
  - spec/wd_command_spec.rb
70
120
  - spec/wd_role_command_spec.rb
@@ -111,6 +161,9 @@ summary: embarrassingly fast deployments.
111
161
  test_files:
112
162
  - spec/init_spec.rb
113
163
  - spec/install_spec.rb
164
+ - spec/integration/invalid_configuration_spec.rb
165
+ - spec/integration/local_deployments_spec.rb
166
+ - spec/integration/remote_deployments_spec.rb
114
167
  - spec/spec_helper.rb
115
168
  - spec/wd_command_spec.rb
116
169
  - spec/wd_role_command_spec.rb