From 7a06e7968d9ec8461aed5d7ea390584f0f7f6fc4 Mon Sep 17 00:00:00 2001 From: Thorsten Klein Date: Tue, 23 Apr 2013 22:04:54 +0200 Subject: [PATCH 1/3] Set JAVA_HOME on Windows in case a path is specified --- attributes/default.rb | 1 + recipes/windows.rb | 21 +++++++++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/attributes/default.rb b/attributes/default.rb index 3613d17a..bbbca6d1 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -35,6 +35,7 @@ when "windows" default['java']['install_flavor'] = "windows" default['java']['windows']['url'] = nil + default['java']['windows']['checksum'] = nil default['java']['windows']['package_name'] = "Java(TM) SE Development Kit 7 (64-bit)" else default['java']['java_home'] = "/usr/lib/jvm/default-java" diff --git a/recipes/windows.rb b/recipes/windows.rb index 8480edc4..a80fc234 100644 --- a/recipes/windows.rb +++ b/recipes/windows.rb @@ -20,9 +20,26 @@ Chef::Log.warn("No download url set for java installer.") unless node['java']['windows']['url'] +unless node['java']['java_home'].nil? || node['java']['java_home'].empty? + additional_options = "INSTALLDIR=#{node['java']['java_home']}" +end + + windows_package node['java']['windows']['package_name'] do source node['java']['windows']['url'] + checksum node['java']['windows']['checksum'] unless node['java']['windows']['checksum'].empty? action :install installer_type :custom - options "/s" -end \ No newline at end of file + options "/s #{additional_options}" +end + +unless node['java']['java_home'].nil? || node['java']['java_home'].empty? + env "JAVA_HOME" do + value node['java']['java_home'] + end + + # update path + windows_path node['java']['java_home'] do + action :add + end +end From a6244dacbe94fafa9f5be586953257de85bc7491 Mon Sep 17 00:00:00 2001 From: Thorsten Klein Date: Tue, 23 Apr 2013 23:22:16 +0200 Subject: [PATCH 2/3] Fixed Windows path issue --- recipes/windows.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/windows.rb b/recipes/windows.rb index a80fc234..d9e2031b 100644 --- a/recipes/windows.rb +++ b/recipes/windows.rb @@ -21,7 +21,7 @@ Chef::Log.warn("No download url set for java installer.") unless node['java']['windows']['url'] unless node['java']['java_home'].nil? || node['java']['java_home'].empty? - additional_options = "INSTALLDIR=#{node['java']['java_home']}" + additional_options = "INSTALLDIR=#{win_friendly_path(node['java']['java_home'])}" end From dc8359530abb4f3d3cf59756f59ae7e4ad873443 Mon Sep 17 00:00:00 2001 From: Thorsten Klein Date: Tue, 23 Apr 2013 23:44:51 +0200 Subject: [PATCH 3/3] Fixed another Windows path problem --- recipes/windows.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes/windows.rb b/recipes/windows.rb index d9e2031b..3db56ef9 100644 --- a/recipes/windows.rb +++ b/recipes/windows.rb @@ -21,7 +21,8 @@ Chef::Log.warn("No download url set for java installer.") unless node['java']['windows']['url'] unless node['java']['java_home'].nil? || node['java']['java_home'].empty? - additional_options = "INSTALLDIR=#{win_friendly_path(node['java']['java_home'])}" + java_home_win = win_friendly_path(node['java']['java_home']) + additional_options = "INSTALLDIR=#{java_home_win}" end @@ -35,7 +36,7 @@ unless node['java']['java_home'].nil? || node['java']['java_home'].empty? env "JAVA_HOME" do - value node['java']['java_home'] + value java_home_win end # update path