jara 1.0.1-java → 1.1.0-java

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b4c87b6cd554cf419c0b9f57631666fdb1b34158
4
- data.tar.gz: b473ad12415da614856244fa5655a9485416e138
3
+ metadata.gz: 2866e6ec4f73dcf0b729a06c4c7cff6bd50dfaf8
4
+ data.tar.gz: 0b6922ae025849ac6d3ccbfc84cdaecb7062c3b6
5
5
  SHA512:
6
- metadata.gz: 5e6a9457dca081a8b09728c715b2d3bed784109aad13c5556a1e9f4afc238fb4d32d752de91860e8779dd6be1094f4b5f8a5812064618538b9e857c292e8ccb3
7
- data.tar.gz: 3ee40274d05ed21f2e4c527dab8b8df2c7ba5308157133045e89221ac4e7cfb6fdc93d0b77dfd00056bf4c3c81313032f38edf45cbb91359681c3afb532083bd
6
+ metadata.gz: 2831f0770b4f049855f2bf497bf74f271a4edb09ac19e593e80ab44332c01ac401ff2d7373a182d16d09d2b8686f4fbf0590cc39ee90408db2ed4f6803c1bb91
7
+ data.tar.gz: 550f1254bc23d82c133a0621c745f927356976ae754ec5b30b64ce5deb78e3e8061d434bb771cbd43b43b103a987828c9a6bb2826ee92533ef7374e08f1d9a3e
data/lib/jara/releaser.rb CHANGED
@@ -16,6 +16,8 @@ module Jara
16
16
  def initialize(environment, bucket_name, options={})
17
17
  @environment = environment
18
18
  @bucket_name = bucket_name
19
+ @re_release = options.fetch(:re_release, false)
20
+ @extra_metadata = options[:metadata] || {}
19
21
  @shell = options[:shell] || Shell.new
20
22
  @archiver = options[:archiver] || Archiver.new
21
23
  @file_system = options[:file_system] || FileUtils
@@ -40,8 +42,8 @@ module Jara
40
42
  destination_dir = File.join(project_dir, 'build', @environment)
41
43
  jar_name = [app_name, @environment, date_stamp, branch_sha[0, 8]].join('-') << '.jar'
42
44
  Dir.mktmpdir do |path|
45
+ @shell.exec('git archive --format=tar --prefix=%s/ %s | (cd %s/ && tar xf -)' % [File.basename(path), branch_sha, File.dirname(path)])
43
46
  Dir.chdir(path) do
44
- @shell.exec('git clone %s . && git checkout %s' % [project_dir, branch_sha])
45
47
  @logger.info('Checked out %s from branch %s' % [branch_sha[0, 8], @branch])
46
48
  @archiver.create(jar_name: jar_name)
47
49
  @file_system.mkdir_p(destination_dir)
@@ -56,7 +58,7 @@ module Jara
56
58
  def release
57
59
  raise JaraError, 'No environment set' unless @environment
58
60
  raise JaraError, 'No bucket name set' unless @bucket_name
59
- if obj = find_remote_artifact
61
+ if !@re_release && (obj = find_remote_artifact)
60
62
  @logger.warn('An artifact for %s already exists: s3://%s/%s' % [branch_sha[0, 8], @bucket_name, obj.key])
61
63
  else
62
64
  local_path = find_local_artifact || build_artifact
@@ -103,11 +105,26 @@ module Jara
103
105
  end
104
106
  end
105
107
 
108
+ def git_remote
109
+ @git_remote ||= @shell.exec('git config --get remote.origin.url')
110
+ end
111
+
112
+ def jruby_version
113
+ @jruby_version ||= begin
114
+ jruby_jars_path = $LOAD_PATH.grep(/\/jruby-jars/).first
115
+ jruby_jars_path && jruby_jars_path.scan(/\/jruby-jars-(.+)\//).flatten.first
116
+ end
117
+ end
118
+
106
119
  def metadata
107
- {
120
+ m = {
108
121
  'packaged_by' => "#{ENV['USER']}@#{Socket.gethostname}",
109
- 'sha' => branch_sha
122
+ 'sha' => branch_sha,
123
+ 'remote' => git_remote,
124
+ 'jruby' => jruby_version,
110
125
  }
126
+ m.merge!(@extra_metadata)
127
+ m
111
128
  end
112
129
 
113
130
  def find_local_artifact
data/lib/jara/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  module Jara
4
- VERSION = '1.0.1'.freeze
4
+ VERSION = '1.1.0'.freeze
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jara
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.1.0
5
5
  platform: java
6
6
  authors:
7
7
  - Burt Platform Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-24 00:00:00.000000000 Z
11
+ date: 2014-11-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement