capistrano-jdk-installer 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|