kpm 0.2.3 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4006872829cb16464b5567e8ab5d1f58cdb62867
4
- data.tar.gz: 5b1db83cc94abdf91430b0fcfe2882616b826d75
3
+ metadata.gz: 0889ae583673bb8168b34853243ea0e2a88f97e0
4
+ data.tar.gz: 56ac52db997d07403c2950e673d6677c1c116703
5
5
  SHA512:
6
- metadata.gz: 541bedab598e86c0a1b09d0a6b64a166525acff629ddef683dac996810f9b1ebd26036ce4d3ea53e1fde85b36c39e1a0b02a2b95bc6583a404712dfbad67a89c
7
- data.tar.gz: 9ae353b4d8de4a27444ec8116ba6ed1ae8de7da408b2a0249a86d3497a46455b85d4939713e8b109a84e9b01ce0e9b59a21bf82bc79de2322c23c9ea2f78c04a
6
+ metadata.gz: 12d0020758ace9cf0ea3de62d2f136f06c8e9ac97a08a8ff7805523f8945b8640e8f2ad2ce3642a3dbb03c53cb578625acc7eb10a9b4650f17bc93c67879bede
7
+ data.tar.gz: 9d941fbca6145ce2e94cbb5b660b266f07cbab65a2c02077369184e581795f1a76138a7dd55ed63c7591fc1b1a43003c42848e018fdff5c30b14025644d19ad6
@@ -140,7 +140,6 @@ module KPM
140
140
  end
141
141
 
142
142
  def skip_if_exists(artifact_info, coordinates, sha1_file)
143
-
144
143
  # If there is no sha1 from the binary server, we don't skip
145
144
  # (Unclear if this is even possible)
146
145
  return false if artifact_info[:sha1].nil?
@@ -154,11 +153,16 @@ module KPM
154
153
  sha1_checker = Sha1Checker.from_file(sha1_file)
155
154
  local_sha1 = sha1_checker.sha1(coordinates)
156
155
 
157
- # If there is an entry in the sha1_file and it matches the remote, we can skip
158
- # Also support convenient 'SKIP' keyword for allowing hacking deployments (dev mode)
159
- return true if local_sha1 == artifact_info[:sha1] || local_sha1 == 'SKIP'
156
+ # Support convenient 'SKIP' keyword for allowing hacking deployments (dev mode)
157
+ return true if local_sha1 == 'SKIP'
160
158
 
161
- false
159
+ if artifact_info[:is_tgz]
160
+ # For Ruby plugins, if there is an entry in the sha1_file and it matches the remote, we can skip
161
+ local_sha1 == artifact_info[:sha1]
162
+ else
163
+ # For Java plugins and other artifacts, verify the file is still around
164
+ local_sha1 == artifact_info[:sha1] && File.file?(artifact_info[:file_path])
165
+ end
162
166
  end
163
167
 
164
168
  def artifact_info(logger, coordinate_map, overrides={}, ssl_verify=true)
@@ -52,8 +52,9 @@ module KPM
52
52
  end
53
53
 
54
54
  def install(force_download=false, verify_sha1=true)
55
+ bundles_dir = !@config.nil? ? @config['plugins_dir'] : (!@kaui_config.nil? ? @kaui_config['plugins_dir'] : nil)
56
+ bundles_dir ||= DEFAULT_BUNDLES_DIR
55
57
 
56
- bundles_dir = @config['plugins_dir'] || DEFAULT_BUNDLES_DIR
57
58
  help = nil
58
59
  unless @config.nil?
59
60
  help = install_tomcat if @config['webapp_path'].nil?
@@ -1,3 +1,3 @@
1
1
  module KPM
2
- VERSION = '0.2.3'
2
+ VERSION = '0.2.4'
3
3
  end
@@ -8,6 +8,36 @@ describe KPM::Installer do
8
8
  @logger.level = Logger::INFO
9
9
  end
10
10
 
11
+ it 'should be able to install only Kill Bill' do
12
+ Dir.mktmpdir do |dir|
13
+ kb_webapp_path = dir + '/KB_ROOT.war'
14
+ installer = KPM::Installer.new({
15
+ 'killbill' => {
16
+ 'webapp_path' => kb_webapp_path
17
+ }
18
+ },
19
+ @logger)
20
+
21
+ # No exception
22
+ installer.install.should be_nil
23
+ end
24
+ end
25
+
26
+ it 'should be able to install only Kaui' do
27
+ Dir.mktmpdir do |dir|
28
+ kaui_webapp_path = dir + '/KAUI_ROOT.war'
29
+ installer = KPM::Installer.new({
30
+ 'kaui' => {
31
+ 'webapp_path' => kaui_webapp_path
32
+ }
33
+ },
34
+ @logger)
35
+
36
+ # No exception
37
+ installer.install.should be_nil
38
+ end
39
+ end
40
+
11
41
  it 'should be able to install all artifacts' do
12
42
  Dir.mktmpdir do |dir|
13
43
  kb_webapp_path = dir + '/KB_ROOT.war'
@@ -36,7 +66,6 @@ describe KPM::Installer do
36
66
  'kaui' => {
37
67
  'webapp_path' => kaui_webapp_path
38
68
  }
39
-
40
69
  },
41
70
  @logger)
42
71
 
@@ -54,14 +83,12 @@ describe KPM::Installer do
54
83
 
55
84
  info = installer.install_plugin('analytics', nil, nil, nil, nil, nil, '0.7.1', plugins_dir)
56
85
  info[:bundle_dir].should == plugins_dir + '/plugins/java/analytics-plugin/0.7.1'
57
-
58
86
  end
59
87
  end
60
88
 
61
89
  private
62
90
 
63
91
  def check_installation(plugins_dir, kb_webapp_path, kaui_webapp_path)
64
-
65
92
  [
66
93
  plugins_dir,
67
94
  plugins_dir + '/platform',
@@ -114,6 +141,5 @@ describe KPM::Installer do
114
141
  plugin_identifiers['stripe']['packaging'].should == 'tar.gz'
115
142
  plugin_identifiers['stripe']['version'].should == '2.0.0'
116
143
  plugin_identifiers['stripe']['language'].should == 'ruby'
117
-
118
144
  end
119
145
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kpm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kill Bill core team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-29 00:00:00.000000000 Z
11
+ date: 2016-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: highline