capistrano-jdk-installer 0.0.4 → 0.0.5
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 +1 -1
- data/capistrano-jdk-installer.gemspec +4 -4
- data/lib/capistrano-jdk-installer.rb +7 -42
- data/lib/capistrano-jdk-installer/version.rb +1 -1
- metadata +12 -12
data/README.md
CHANGED
@@ -30,7 +30,7 @@ To enable this recipe, add following in your `config/deploy.rb`.
|
|
30
30
|
require 'capistrano-jdk-installer'
|
31
31
|
set(:java_version_name, "7u6")
|
32
32
|
set(:java_oracle_username, "foo@example.com") # your ID on oracle.com
|
33
|
-
set(:java_oracle_password, "
|
33
|
+
set(:java_oracle_password, "secret") # your password on oracle.com
|
34
34
|
set(:java_license_title, "Oracle Binary Code License Agreement for Java SE")
|
35
35
|
set(:java_accept_license, true)
|
36
36
|
|
@@ -17,8 +17,8 @@ Gem::Specification.new do |gem|
|
|
17
17
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
18
|
gem.require_paths = ["lib"]
|
19
19
|
|
20
|
-
gem.add_dependency(
|
21
|
-
gem.add_dependency(
|
22
|
-
gem.add_dependency(
|
23
|
-
gem.add_dependency(
|
20
|
+
gem.add_dependency("capistrano")
|
21
|
+
gem.add_dependency("capistrano-file-transfer-ext", "~> 0.0.3")
|
22
|
+
gem.add_dependency("json")
|
23
|
+
gem.add_dependency("mechanize", "~> 2.0.0")
|
24
24
|
end
|
@@ -1,10 +1,9 @@
|
|
1
1
|
require "capistrano-jdk-installer/version"
|
2
|
-
require
|
3
|
-
require
|
4
|
-
require
|
5
|
-
require
|
6
|
-
require
|
7
|
-
require 'uri'
|
2
|
+
require "capistrano/configuration/actions/file_transfer_ext"
|
3
|
+
require "json"
|
4
|
+
require "logger"
|
5
|
+
require "mechanize"
|
6
|
+
require "uri"
|
8
7
|
|
9
8
|
module Capistrano
|
10
9
|
module JDKInstaller
|
@@ -37,40 +36,6 @@ module Capistrano
|
|
37
36
|
end
|
38
37
|
end
|
39
38
|
|
40
|
-
def upload_archive(from, to, options={}, &block)
|
41
|
-
mode = options.delete(:mode)
|
42
|
-
run("mkdir -p #{File.dirname(to)}")
|
43
|
-
execute_on_servers(options) { |servers|
|
44
|
-
targets = servers.map { |server| sessions[server] }
|
45
|
-
if dry_run
|
46
|
-
logger.debug "transfering: #{[:up, from, to, targets, options.merge(:logger => logger).inspect ] * ', '}"
|
47
|
-
else
|
48
|
-
stat = File.stat(from)
|
49
|
-
checksum_cmd = fetch(:java_checksum_cmd, 'md5sum')
|
50
|
-
checksum = run_locally("( cd #{File.dirname(from)} && #{checksum_cmd} #{File.basename(from)} )").strip
|
51
|
-
targets = targets.reject { |ssh|
|
52
|
-
begin
|
53
|
-
sftp = Net::SFTP::Session.new(ssh).connect!
|
54
|
-
remote_stat = sftp.stat!(to)
|
55
|
-
if stat.size == remote_stat.size
|
56
|
-
remote_checksum = ssh.exec!("( cd #{File.dirname(to)} && #{checksum_cmd} #{File.basename(to)} )").strip
|
57
|
-
checksum == remote_checksum # skip upload if file size and checksum are same between local and remote
|
58
|
-
else
|
59
|
-
false
|
60
|
-
end
|
61
|
-
rescue Net::SFTP::StatusException
|
62
|
-
false # upload again if the remote file is absent
|
63
|
-
end
|
64
|
-
}
|
65
|
-
Capistrano::Transfer.process(:up, from, to, targets, options.merge(:logger => logger), &block)
|
66
|
-
end
|
67
|
-
}
|
68
|
-
if mode
|
69
|
-
mode = mode.is_a?(Numeric) ? mode.to_s(8) : mode.to_s
|
70
|
-
run("chmod #{mode} #{to}", options)
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
39
|
def extract_archive(archive, destination)
|
75
40
|
case archive
|
76
41
|
when /\.(bin|sh)$/
|
@@ -270,7 +235,7 @@ module Capistrano
|
|
270
235
|
_cset(:java_installer_json) {
|
271
236
|
# should not update cache directly from wget.
|
272
237
|
# wget will save response to the file even if the request fails.
|
273
|
-
tempfile =
|
238
|
+
tempfile = `mktemp /tmp/capistrano-jdk-installer.XXXXXXXXXX`.chomp
|
274
239
|
begin
|
275
240
|
if not File.file?(java_installer_json_cache) or File.mtime(java_installer_json_cache)+java_installer_json_expires < Time.now
|
276
241
|
execute = []
|
@@ -400,7 +365,7 @@ module Capistrano
|
|
400
365
|
if fetch(:java_setup_remotely, true)
|
401
366
|
transaction {
|
402
367
|
download
|
403
|
-
|
368
|
+
transfer_if_modified(:up, java_deployee_archive_local, java_deployee_archive)
|
404
369
|
install
|
405
370
|
setup_locally if fetch(:java_setup_locally, false)
|
406
371
|
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capistrano-jdk-installer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-02-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: capistrano
|
@@ -28,29 +28,29 @@ dependencies:
|
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: '0'
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
31
|
+
name: capistrano-file-transfer-ext
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
33
33
|
none: false
|
34
34
|
requirements:
|
35
|
-
- -
|
35
|
+
- - ~>
|
36
36
|
- !ruby/object:Gem::Version
|
37
|
-
version:
|
37
|
+
version: 0.0.3
|
38
38
|
type: :runtime
|
39
39
|
prerelease: false
|
40
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
41
|
none: false
|
42
42
|
requirements:
|
43
|
-
- -
|
43
|
+
- - ~>
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
version:
|
45
|
+
version: 0.0.3
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
|
-
name:
|
47
|
+
name: json
|
48
48
|
requirement: !ruby/object:Gem::Requirement
|
49
49
|
none: false
|
50
50
|
requirements:
|
51
51
|
- - ! '>='
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
53
|
+
version: '0'
|
54
54
|
type: :runtime
|
55
55
|
prerelease: false
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -58,13 +58,13 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - ! '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: '0'
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
63
|
name: mechanize
|
64
64
|
requirement: !ruby/object:Gem::Requirement
|
65
65
|
none: false
|
66
66
|
requirements:
|
67
|
-
- -
|
67
|
+
- - ~>
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: 2.0.0
|
70
70
|
type: :runtime
|
@@ -72,7 +72,7 @@ dependencies:
|
|
72
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
74
|
requirements:
|
75
|
-
- -
|
75
|
+
- - ~>
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: 2.0.0
|
78
78
|
description: a capistrano recipe to download and install JDK for your projects.
|