murder 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/README.md CHANGED
@@ -13,6 +13,9 @@ centralized distribution systems wouldn't otherwise function. A "Murder" is
13
13
  normally used to refer to a flock of crows, which in this case applies to a
14
14
  bunch of servers doing something.
15
15
 
16
+ For an intro video, see:
17
+ [Twitter - Murder Bittorrent Deploy System](http://vimeo.com/11280885)
18
+
16
19
 
17
20
  QUICK START
18
21
  -----------
@@ -134,7 +137,7 @@ up on all hosts, then manually run the murder cap tasks:
134
137
 
135
138
  4. Stop the seeder and tracker:
136
139
 
137
- cap murder:stop_seeding
140
+ cap murder:stop_seeding tag="Deploy1"
138
141
  cap murder:stop_tracker
139
142
 
140
143
  When this finishes, all peers will have the files in /tmp/Deploy1
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
@@ -35,7 +35,7 @@ Capistrano::Configuration.instance(:must_exist).load do
35
35
  # get around the fact that find_servers does not work in role evaluation
36
36
  # (it tries to evaluate all roles, leading to infinite recursion)
37
37
  role :peer do
38
- roles.reject{|k,v| excluded_roles.include? k }.values.map(&:servers).flatten.uniq.reject{|s| s.options[:no_release] }
38
+ roles.reject{|k,v| excluded_roles.include? k }.values.map{|r| r.servers }.flatten.uniq.reject{|s| s.options[:no_release] }
39
39
  end
40
40
 
41
41
  role(:tracker) { roles[:peer].servers.first }
@@ -53,7 +53,7 @@ namespace :murder do
53
53
  DESC
54
54
  task :start_seeding, :roles => :seeder do
55
55
  require_tag
56
- run "screen -dms 'seeder-#{tag}' python #{remote_murder_path}/murder_client.py seeder '#{filename}.torrent' '#{filename}' `host $HOSTNAME | awk '{print $4}'`"
56
+ run "screen -dms 'seeder-#{tag}' python #{remote_murder_path}/murder_client.py seeder '#{filename}.torrent' '#{filename}' `LC_ALL=C host $HOSTNAME | awk '/has address/ {print $4}' | head -n 1`"
57
57
  end
58
58
 
59
59
  desc <<-DESC
@@ -91,7 +91,7 @@ namespace :murder do
91
91
  end
92
92
 
93
93
  upload("#{filename}.torrent", "#{filename}.torrent", :via => :scp)
94
- run "/usr/bin/time -f %e python #{remote_murder_path}/murder_client.py peer '#{filename}.torrent' '#{filename}' `host $CAPISTRANO:HOST$ | awk '{print $4}'`"
94
+ run "python #{remote_murder_path}/murder_client.py peer '#{filename}.torrent' '#{filename}' `LC_ALL=C host $CAPISTRANO:HOST$ | awk '/has address/ {print $4}' | head -n 1`"
95
95
 
96
96
  if ENV['path_is_file']
97
97
  run "cp #{filename} #{destination_path}"
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{murder}
8
- s.version = "0.1.1"
8
+ s.version = "0.1.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Larry Gadea", "Matt Freels"]
12
- s.date = %q{2010-04-13}
12
+ s.date = %q{2010-10-11}
13
13
  s.description = %q{Large scale server deploys using BitTorrent and the BitTornado library}
14
14
  s.email = %q{lg@twitter.com}
15
15
  s.extra_rdoc_files = [
@@ -85,14 +85,14 @@ Gem::Specification.new do |s|
85
85
  s.homepage = %q{http://github.com/lg/murder}
86
86
  s.rdoc_options = ["--charset=UTF-8"]
87
87
  s.require_paths = ["lib"]
88
- s.rubygems_version = %q{1.3.6}
88
+ s.rubygems_version = %q{1.3.7}
89
89
  s.summary = %q{Large scale server deploys using BitTorrent and the BitTornado library}
90
90
 
91
91
  if s.respond_to? :specification_version then
92
92
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
93
93
  s.specification_version = 3
94
94
 
95
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
95
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
96
96
  else
97
97
  end
98
98
  else
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: murder
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 31
4
5
  prerelease: false
5
6
  segments:
6
7
  - 0
7
8
  - 1
8
- - 1
9
- version: 0.1.1
9
+ - 2
10
+ version: 0.1.2
10
11
  platform: ruby
11
12
  authors:
12
13
  - Larry Gadea
@@ -15,7 +16,7 @@ autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2010-04-13 00:00:00 -07:00
19
+ date: 2010-10-11 00:00:00 -07:00
19
20
  default_executable:
20
21
  dependencies: []
21
22
 
@@ -103,23 +104,27 @@ rdoc_options:
103
104
  require_paths:
104
105
  - lib
105
106
  required_ruby_version: !ruby/object:Gem::Requirement
107
+ none: false
106
108
  requirements:
107
109
  - - ">="
108
110
  - !ruby/object:Gem::Version
111
+ hash: 3
109
112
  segments:
110
113
  - 0
111
114
  version: "0"
112
115
  required_rubygems_version: !ruby/object:Gem::Requirement
116
+ none: false
113
117
  requirements:
114
118
  - - ">="
115
119
  - !ruby/object:Gem::Version
120
+ hash: 3
116
121
  segments:
117
122
  - 0
118
123
  version: "0"
119
124
  requirements: []
120
125
 
121
126
  rubyforge_project:
122
- rubygems_version: 1.3.6
127
+ rubygems_version: 1.3.7
123
128
  signing_key:
124
129
  specification_version: 3
125
130
  summary: Large scale server deploys using BitTorrent and the BitTornado library