Skip to content

Commit 63ca065

Browse files
carguelerichelgeson
authored andcommitted
Support specific version and name for Oracle RPM (sous-chefs#184).
1 parent c40f77b commit 63ca065

3 files changed

Lines changed: 24 additions & 3 deletions

File tree

README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ Attributes
6868
See `attributes/default.rb` for default values.
6969

7070
* `node['java']['install_flavor']` - Flavor of JVM you would like
71-
installed (`oracle`, `openjdk`, `ibm`, `windows`), default `openjdk`
71+
installed (`oracle`, `oracle_rpm`, `openjdk`, `ibm`, `windows`), default `openjdk`
7272
on Linux/Unix platforms, `windows` on Windows platforms.
7373
* `node['java']['jdk_version']` - JDK version to install, defaults to
7474
`'6'`.
@@ -101,6 +101,13 @@ the .tar.gz.
101101
JDK/SDK. See the `ibm` recipe section below.
102102
* `node['java']['ibm']['accept_ibm_download_terms']` - Indicates that
103103
you accept IBM's EULA (for `java::ibm`)
104+
* `node['java']['oracle_rpm']['type']` - Type of java RPM (`jre` or `jdk`), default `jdk`
105+
* `node['java']['oracle_rpm']['package_version']` - optional, can be set
106+
to pin a version different from the up-to-date one available in the YUM repo,
107+
it might be needed to also override the node['java']['java_home'] attribute
108+
to a value consistent with the defined version
109+
* `node['java']['oracle_rpm']['package_name']` - optional, can be set
110+
to define a package name different from the RPM published by Oracle.
104111
* `node['java']['accept_license_agreement']` - Indicates that you accept
105112
the EULA for openjdk package installation.
106113
* `node['java']['set_default']` - Indicates whether or not you want the

attributes/default.rb

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,19 @@
5555

5656
default['java']['ibm']['7']['bin_cmds'] = node['java']['ibm']['6']['bin_cmds'] + [ "pack200", "unpack200" ]
5757
when 'oracle_rpm'
58+
# type of java RPM : jdk or jre
5859
default['java']['oracle_rpm']['type'] = 'jdk'
60+
61+
# optional, can be overriden to pin to a version different
62+
# from the up-to-date.
63+
default['java']['oracle_rpm']['package_version'] = nil
64+
65+
# optional, some distros re-package the official Oracle's RPM
66+
# with a different name
67+
default['java']['oracle_rpm']['package_name'] = nil
68+
69+
# set the JAVA_HOME path, it may be overriden
70+
# when a package version is provided.
5971
default['java']['java_home'] = "/usr/java/latest"
6072
end
6173

recipes/oracle_rpm.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,9 @@
5050

5151
end
5252

53-
package node['java']['oracle_rpm']['type'] do
54-
action :upgrade
53+
package_name = node['java']['oracle_rpm']['package_name'] || node['java']['oracle_rpm']['type']
54+
package package_name do
55+
action :install
56+
version node['java']['oracle_rpm']['package_version'] if node['java']['oracle_rpm']['package_version']
5557
notifies :run, 'bash[update-java-alternatives]', :immediately if platform_family?('rhel', 'fedora') and node['java']['set_default']
5658
end

0 commit comments

Comments
 (0)