volley 0.1.19 → 0.1.20

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/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.1.19:
4
+ * gemspec had hardcoded tag
5
+ * add release functionality to publishers
6
+ * remove puts call
7
+
3
8
  ## v0.1.18:
4
9
  * 'volley:exists' plan to check for artifact in publisher
5
10
 
@@ -52,6 +52,11 @@ project :volley do
52
52
  p = args.project
53
53
  pub = Volley::Dsl.publisher
54
54
  r = pub.latest_release(p)
55
+ list = pub.versions(p, "release")
56
+ list.each do |v|
57
+ f = pub.released_from(p, v) || "unknown" rescue "unknown"
58
+ puts " #{v} <= #{f}"
59
+ end
55
60
 
56
61
  puts "latest '#{p}' release: #{r}"
57
62
  end
@@ -133,30 +138,14 @@ project :volley do
133
138
 
134
139
  plan :release do
135
140
  argument :version, required: true
136
- localfile = nil
137
- reldesc = nil
138
- tmpdir = "/var/tmp/volley-%d-%d-%05d" % [Time.now.to_i, $$, rand(99999)]
139
141
  pub = Volley::Dsl.publisher
140
142
 
141
- action :mktmp do
142
- FileUtils.mkdir_p(tmpdir)
143
- Dir.chdir(tmpdir)
144
- end
145
- action :download do
143
+ default do
146
144
  desc = args.descriptor
147
145
  to = args.version
148
- reldesc = Descriptor.new("#{desc.project}@release:#{to}")
149
- puts "#{desc} => #{reldesc}"
150
- (p, b, v) = desc.get
151
- localfile = pub.pull(p, b, v)
152
- log "downloaded: #{localfile}"
153
- end
154
- action :release do
155
- (p, b, v) = reldesc.get
156
- pub.release(tmpdir, localfile, p, b, v)
157
- end
158
- action :cleanup do
159
- FileUtils.remove_entry_secure(tmpdir)
146
+ old = desc.to_s
147
+ new = "#{desc.project}@release:#{to}"
148
+ pub.release(old, new)
160
149
  end
161
150
  end
162
151
 
@@ -3,7 +3,7 @@ module Volley
3
3
  class Base
4
4
  attr_accessor :force
5
5
 
6
- def initialize(options={ })
6
+ def initialize(options={})
7
7
  @options = {
8
8
  :overwrite => false,
9
9
  }.merge(options)
@@ -12,24 +12,24 @@ module Volley
12
12
  @encrypted = optional(:encrypted, false)
13
13
  @local = optional(:local, Volley.config.directory)
14
14
  @loglevel = @debug ? :info : :debug
15
- @latest = { }
15
+ @latest = {}
16
16
  @force = false
17
17
 
18
18
  load_configuration
19
19
  end
20
20
 
21
21
  def list(&block)
22
- hash = { }
23
- unsorted = { }
22
+ hash = {}
23
+ unsorted = {}
24
24
  plist = projects
25
25
  plist.each do |p|
26
- hash[p] = { }
26
+ hash[p] = {}
27
27
  blist = branches(p)
28
28
  blist.each do |b|
29
- hash[p][b] = { }
29
+ hash[p][b] = {}
30
30
  vlist = versions(p, b)
31
31
  vlist.each do |v|
32
- d = version_data(p, b, v)
32
+ d = version_data(p, b, v)
33
33
  hash[p][b][v] = d
34
34
  unsorted["#{p}@#{b}:#{v}"] = d if d[:contents] && d[:contents].count > 0
35
35
  end
@@ -82,6 +82,10 @@ module Volley
82
82
  pull_file(project, "latest_release")
83
83
  end
84
84
 
85
+ def released_from(project, version)
86
+ pull_file(dir(project, "release", version), "from")
87
+ end
88
+
85
89
  def volleyfile(project, branch, version="latest")
86
90
  d = dir(project, branch, version)
87
91
  contents = pull_file(d, "Volleyfile")
@@ -125,25 +129,58 @@ module Volley
125
129
  "#@local/#{dir}/#{file}"
126
130
  end
127
131
 
128
- def release(tmpdir, local, p, b, v)
129
- Dir.chdir(tmpdir) do
130
- packed = "#{b}-#{v}.tgz"
131
- dest = dir(p, b, v)
132
+ def release(old, new)
133
+ odesc = Descriptor.new(old)
134
+ ndesc = Descriptor.new(new)
135
+
136
+ Dir.mktmpdir("volley-#{$$}", "/var/tmp") do |tmpdir|
137
+ Dir.chdir(tmpdir) do
138
+ (op, ob, ov) = odesc.get
139
+ (p, b, v) = ndesc.get
140
+
141
+ Volley::Log.debug "%% #{me}#release: #{odesc} => #{ndesc} (#{tmpdir})"
132
142
 
133
- system("tar xfz #{local}")
143
+ packed = "#{b}-#{v}.tgz"
144
+ dest = dir(p, b, v)
134
145
 
135
- files = Dir["**"]
146
+ local = pull(op, ob, ov)
147
+ system("tar xfz #{local}")
136
148
 
137
- system("tar cfz #{packed} #{files.join(" ")}")
138
- push_file(dest, packed, File.open(packed))
139
- push_file(dest, "Volleyfile", File.open("Volleyfile")) if File.exists?("Volleyfile")
140
- push_file(dir(p, b), "latest", "#{p}/#{b}/#{v}")
141
- push_file(p, "latest_release", "#{p}/#{b}/#{v}")
149
+ files = Dir["**"]
150
+ cmd = "tar cfz #{packed} #{files.join(" ")}"
151
+ #Volley::Log.debug "-- command: #{cmd}"
152
+ system(cmd)
153
+
154
+ push_file(dest, packed, File.open(packed))
155
+ push_file(dest, "Volleyfile", File.open("Volleyfile")) if File.exists?("Volleyfile")
156
+ push_file(dest, "from", "#{op}/#{ob}/#{ov}")
157
+ push_file(dir(p, b), "latest", "#{p}/#{b}/#{v}")
158
+ push_file(p, "latest_release", "#{p}/#{b}/#{v}")
159
+ end
142
160
  end
143
161
 
144
162
  true
145
163
  end
146
164
 
165
+ #def release(tmpdir, local, p, b, v)
166
+ # Dir.chdir(tmpdir) do
167
+ # packed = "#{b}-#{v}.tgz"
168
+ # dest = dir(p, b, v)
169
+ #
170
+ # system("tar xfz #{local}")
171
+ #
172
+ # files = Dir["**"]
173
+ #
174
+ # system("tar cfz #{packed} #{files.join(" ")}")
175
+ # push_file(dest, packed, File.open(packed))
176
+ # push_file(dest, "Volleyfile", File.open("Volleyfile")) if File.exists?("Volleyfile")
177
+ # push_file(dir(p, b), "latest", "#{p}/#{b}/#{v}")
178
+ # push_file(p, "latest_release", "#{p}/#{b}/#{v}")
179
+ # end
180
+ #
181
+ # true
182
+ #end
183
+
147
184
  protected
148
185
 
149
186
  def me
@@ -3,7 +3,7 @@ unless defined?(Volley::Version)
3
3
  module Version
4
4
  MAJOR = 0
5
5
  MINOR = 1
6
- TINY = 19
6
+ TINY = 20
7
7
  TAG = nil
8
8
  STRING = [MAJOR, MINOR, TINY, TAG].compact.join('.')
9
9
  end
@@ -37,14 +37,8 @@ shared_examples_for Volley::Publisher::Base do
37
37
  end
38
38
 
39
39
  it "should be able to release an artifact" do
40
- tmpdir = "#{Dir.pwd}/test/tmp"
41
- FileUtils.mkdir_p(tmpdir)
42
- Dir.chdir(tmpdir) do
43
- local = @pub.pull("spec", "trunk", "1")
44
- expect(@pub.release(tmpdir, local, "spec", "release", "v1.0")).to be(true)
45
- expect(@pub.versions("spec", "release")).to match_array(%w{v1.0})
46
- end
47
- FileUtils.remove_entry_secure(tmpdir)
40
+ expect(@pub.release("spec@trunk:1", "spec@release:v1.0")).to be(true)
41
+ expect(@pub.versions("spec", "release")).to match_array(%w{v1.0})
48
42
  end
49
43
 
50
44
  it "should be able to tell me the list of projects" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: volley
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.19
4
+ version: 0.1.20
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -199,7 +199,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
199
199
  version: '0'
200
200
  segments:
201
201
  - 0
202
- hash: 974353220657797386
202
+ hash: -2184208437167885640
203
203
  required_rubygems_version: !ruby/object:Gem::Requirement
204
204
  none: false
205
205
  requirements:
@@ -208,7 +208,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
208
208
  version: '0'
209
209
  segments:
210
210
  - 0
211
- hash: 974353220657797386
211
+ hash: -2184208437167885640
212
212
  requirements: []
213
213
  rubyforge_project:
214
214
  rubygems_version: 1.8.24