antoineco / aco-oracle_java Goto Github PK
View Code? Open in Web Editor NEWPuppet module to install Oracle Java on Linux systems
Home Page: https://forge.puppet.com/aco/oracle_java
License: Other
Puppet module to install Oracle Java on Linux systems
Home Page: https://forge.puppet.com/aco/oracle_java
License: Other
The download does not work from from behind an http proxy. Is it possible to make this configurable, or like other modules use the systems wget with its own independent proxy config?
Other less preferred option is to add a custom source so we can pre download the jdk files and make them available internally.
The module is worth using, so thank you!
Hi,
I'M trying the last commit to resolve the Empty? problem but I have this error now:
Error: can't convert Hash into String at /oracle_java/manifests/download.pp:33
Do I did something wrong?
Thanks,
Hi,
We have the following in a manifest to install Java 161.
class { 'oracle_java':
version => '8u161',
type => 'jdk',
add_alternative => true,
ssousername => '[email protected]',
ssopassword => 'password123',
before => Java_ks['server.domain.com:truststore'],
}
This installed perfectly on our CentOS 7 server:
[16:01]root@servername:~# puppet agent -t --no-noop Info: Using configured environment 'production' Info: Retrieving pluginfacts Info: Retrieving plugin Info: Loading facts Info: Caching catalog for servername.domain.com Info: Applying configuration version '1516635730' Notice: /Stage[main]/Oracle_java::Download/Archive[/usr/java/jdk-8u161-linux-x64.rpm]/ensure: download archive from http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm?AuthParam=123456789_e2a116cd8a99794ae98ef37518956095 to /usr/java/jdk-8u161-linux-x64.rpm without cleanup Info: Class[Oracle_java::Download]: Scheduling refresh of Class[Oracle_java::Install] Info: Class[Oracle_java::Install]: Scheduling refresh of Class[Oracle_java::Install::Rpm] Info: Class[Oracle_java::Install::Rpm]: Scheduling refresh of Package[jdk1.8.0_161] Notice: /Stage[main]/Oracle_java::Install::Rpm/Package[jdk1.8.0_161]/ensure: created Notice: /Stage[main]/Oracle_java::Install::Rpm/Package[jdk1.8.0_161]: Triggered 'refresh' from 1 event Notice: /Stage[main]/Oracle_java::Alternative::Rpm/Exec[add java alternative 8u161]/returns: executed successfully Notice: /Stage[main]/Profiles::Java::Java8/Java_ks[server.domain.com:truststore]/ensure: created Notice: Applied catalog in 24.93 seconds
This is the only Java jdk rpm installed.
Unfortunately, subsequent Puppet runs are reporting:
Notice: /Stage[main]/Oracle_java::Install::Rpm/Package[jdk1.8.0_161]/ensure: current_value 'absent', should be 'latest' (noop)
If we run in no-noop it fails with the error that it's already installed!
Error: Could not update: Execution of '/bin/rpm -i /usr/java/jdk-8u161-linux-x64.rpm' returned 1: package jdk1.8-2000:1.8.0_161-fcs.x86_64 is already installed Error: /Stage[main]/Oracle_java::Install::Rpm/Package[jdk1.8.0_161]/ensure: change from 'absent' to 'latest' failed: Could not update: Execution of '/bin/rpm -i /usr/java/jdk-8u161-linux-x64.rpm' returned 1: package jdk1.8-2000:1.8.0_161-fcs.x86_64 is already installed
For example,
[Aside, I should say I really like this module and thank you for creating it.]
Hi
I just wanted to run our script today and got the following error message:
Evaluation Error: Error while evaluating a Function Call, $format must be either 'rpm' or 'tar.gz' at /etc/puppet/modules/oracle_java/manifests/init.pp:72:3 on node ...
Error while evaluating a Function Call, $format must be either 'rpm' or 'tar.gz' at /etc/puppet/modules/oracle_java/manifests/init.pp:72:3 on node ...
Quickly checked the sources and found out that the '$format_real' does not get set at all in my "ubuntu" case.
the config used:
class { 'oracle_java':
version => '7u80',
type => 'jdk',
add_alternative => true
} ->
oracle_java::installation { '8u51':
type => 'jdk',
add_alternative => true
}
Regards,
maecval
Hi,
I'm getting the following error in my Ubuntu 16.04 and module 2.9.1
Notice: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144]: Not removing directory; use 'force' to override
Notice: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144]: Not removing directory; use 'force' to override
Error: Could not set 'file' on ensure: Is a directory @ rb_sysopen - /usr/java/jdk1.8.0_144 at /etc/puppetlabs/puppet/environments/maxifier/modules/oracle_java/manifests/install/targz.pp:23
Error: Could not set 'file' on ensure: Is a directory @ rb_sysopen - /usr/java/jdk1.8.0_144 at /etc/puppetlabs/puppet/environments/maxifier/modules/oracle_java/manifests/install/targz.pp:23
Wrapped exception:
Is a directory @ rb_sysopen - /usr/java/jdk1.8.0_144
Error: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144]/ensure: change from directory to file failed: Could not set 'file' on ensure: Is a directory @ rb_sysopen - /usr/java/jdk1.8.0_144 at /etc/puppetlabs/puppet/environments/maxifier/modules/oracle_java/manifests/install/targz.pp:23
Notice: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144/COPYRIGHT]: Dependency File[/usr/java/jdk1.8.0_144] has failures: true
Warning: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144/COPYRIGHT]: Skipping because of failed dependencies
Debug: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144/COPYRIGHT]: Resource is being skipped, unscheduling all events
Notice: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144/LICENSE]: Dependency File[/usr/java/jdk1.8.0_144] has failures: true
Warning: /Stage[main]/Oracle_java::Install::Targz/File[/usr/java/jdk1.8.0_144/LICENSE]: Skipping because of failed dependencies
Thanks for this module.
I find I usually have this module fail due to Oracle website administration issues. I would rather use this module with Apt as the provider and ppa:webupd8team/java. What I have had to do lately is stop using aco-oracl_java on Ubuntu for some versions of Java.
class managelaptops::install_java
(
$wget_temp = $managelaptops::wget_temp,
$java_install_path = $managelaptops::java_install_path
){Exec['apt-update'] -> Package <| |>
$javacmds = join([
'add-apt-repository ppa:webupd8team/java -y;',
'echo "oracle-java8-installer shared/accepted-oracle-license-v1-1 select true" | debconf-set-selections;',
'echo "oracle-java8-installer shared/accepted-oracle-license-v1-1 seen true" | debconf-set-selections;',
])$jcecmd = join([
"cp -f ${wget_temp}/UnlimitedJCEPolicyJDK8/*jar ",
"${java_install_path}/jre/lib/security",
])exec { 'add apt java ppa':
command => $javacmds,
}managelaptops::apt_cleanup{ 'java pre clean':
subject => $title,
require => Exec['add apt java ppa'],
notify => Package['oracle-java8-installer'],
}package { 'oracle-java8-installer':
ensure => installed,
}package { 'oracle-java8-set-default':
ensure => installed,
require => Package['oracle-java8-installer'],
}archive { 'jce_policy-8':
ensure => present,
extract => true,
source => "puppet:///modules/${module_name}/jce_policy-8.zip",
temp_dir => $wget_temp,
path => "${wget_temp}/jce_policy-8.zip",
extract_path => $wget_temp,
cleanup => true,
require => [Package['oracle-java8-installer'],Package['oracle-java8-set-default']],
}the archive is nested and we need the files from a subdirectory
exec { 'copy_jce':
command => $jcecmd,
path => '/usr/bin:/usr/sbin:/bin:/usr/local/bin',
require => [Archive['jce_policy-8']],
}exec { 'clean_jce':
command => "sudo rm -fr ${wget_temp}/jce_policy-8/*",
path => '/usr/bin:/usr/sbin:/bin:/usr/local/bin',
require => [Exec['copy_jce']],
}
}
Hi,
since v2.9.X the runs fail. Downgraded to v.2.8.3 makes the module work again
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Could not autoload puppet/parser/functions/oracle_sso: no such file to load -- puppet_x/util at /etc/puppetlabs/code/environments/production/modules/oracle_java/manifests/download.pp:33:17
Could you please confirm whether oracle_sso function works behind a proxy?
I have tried setting up both
a) environment variables proxy setting (http_proxy, HTTP_PROXY, https_proxy, HTTPS_PROXY, no_proxy, and NO_PROXY
)
b) oracle_java's proxy_server
attribute
but I kept getting connection error to download.oracle.com
I could only get it working by explicitly passing the proxy details to Net::HTTP.start
:
response = Net::HTTP.start(uri.host, uri.port, <proxy_host>, <proxy_port>, :use_ssl => uri.scheme == 'https') do |http|
Would you expect the above to be necessary? Or should it use environment variables?
I understand that Net::HTTP should inherit the environment variables, but it didn't work.
Using ruby-2.2 with oracle_java 2.9.1 .
Hi all,
The configuration/setup for Java 8u51 seems not to be complete.
It can not be installed successfully.
I guess the entries in manifests/installation.pp are missing.
Regards,
maecval
Presumably with the newer versions being released on 16/1/18...
Error: Evaluation Error: Error while evaluating a Function Call, Sign-on failed. Check your Oracle.com credentials. at /etc/puppetlabs/code/environments/production/modules/oracle_java/manifests/download.pp:33:17
Running with current master latest works fine. Looks like new release required...
If you'd like to turn off curl's verification of the certificate, use the -k (or --insecure) option.
Error: /Stage[main]/Oracle_java::Download/Archive[/usr/java/jdk-u131-linux-x64.tar.gz]/ensure: change from absent to present failed: Execution of '/bin/curl https://repo.ournamegoeshere.net/repo/ourname-repo//jdk-u131-linux-x64.tar.gz -o /tmp/jdk-u131-linux-x64.tar.gz_75b2cb2249710d822a60f83e2886005320170426-65466-1udkpl2 -fsSL --max-redirs 5 --cookie oraclelicense=accept-securebackup-cookie' returned 60: curl: (60) Peer's certificate issuer has been marked as not trusted by the user.
I'm trying to test installing oracle from our own repository that we sync from oracles when they come out with a new java package because security won't permit internet access to the business application environments. We update this repository manually then deploy code from our own repository. Currently we are in testing and haven't setup the SSL certificate CA process but I don't want to hack in the -k because java is patched so often.
Thanks!
Hi!
There would be nice to have possibility to install more the one package of java on node. :)
Regards,
p.
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Could not autoload puppet/parser/functions/oracle_sso: undefined method `path' for nil:NilClass at /etc/puppetlabs/code/environments/general_test/modules/oracle_java/manifests/download.pp:33:17 on node ...
For proxy setting in aco-oracle_java, is the intention for user to explicitly set proxy setting as attributes? or for user to set environment variables and then aco-oracle_java will honour http_proxy, https_proxy, and no_proxy?
download.pp
manifest explicitly set the proxy setting by setting Archive proxy attributes https://github.com/antoineco/aco-oracle_java/blob/master/manifests/download.pp#L24
However, puppet_x/util.rb
doesn't explicitly set any proxy detail and I assume it relies on Net::HTTP to honour proxy environment variable.
https://github.com/antoineco/aco-oracle_java/blob/master/lib/puppet_x/util.rb#L22
So which one is the intended way of setting proxy in aco-oracle_java?
I expected an 'ensure' parameter but didn't find one. Nice-to-have.
And again, thank you for the module.
I'm getting "no parameter named 'provider' if I run puppet agent -t but it works if I use puppet apply.
PE 2016.2
RHEL 7
[root@is-engineering-t01 manifests]# puppet agent -t
Notice: Local environment: 'production' doesn't match server specified node environment 'lab', switching agent to 'lab'.
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: no parameter named 'provider' at /etc/puppetlabs/code/environments/lab/modules/oracle_java/manifests/download.pp:42 on Archive[/usr/java/jre-8u92-linux-x64.tar.gz] at /etc/puppetlabs/code/environments/lab/modules/oracle_java/manifests/download.pp:42 on node is-engineering-t01.it.****.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
[root@is-engineering-t01 manifests]# puppet facts | grep aio
"aio_agent_build": "1.4.2",
"aio_agent_version": "1.4.2",
Could you add support as for automated setting of the required environment variables? E.g. JAVA_HOME
thanks
Hi,
I'm getting the following error with the module:
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Could not autoload puppet/parser/functions/oracle_sso: no such file to load -- puppet_x/util at /etc/puppetlabs/code/environments/production/modules/oracle_java/manifests/download.pp:33:17 on xxxxx.
I've restarted the Puppet master but now get:
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, undefined method `empty?' for #URI::HTTP:0x27a14f09 at /etc/puppetlabs/code/environments/production/modules/oracle_java/manifests/download.pp:33:17 on node palf05.alfresco.com
class { 'oracle_java':
version => '8u151',
type => 'jdk',
add_alternative => true,
ssousername => 'auser@namehere',
ssopassword => 'apasswordhere',
}
I'm using 2.9.1 of the module on Puppet 2017.1.1. The Puppet Master is running CentOS 7.
I did simply include oracle_java
, and got the following error message:
Error: Could not autoload puppet/provider/archive/ruby: Unable to find archive module in modulepath /etc/puppet/modules:/opt/puppetlabs/puppet/modules
Error: Could not autoload puppet/type/archive: Could not autoload puppet/provider/archive/ruby: Unable to find archive module in modulepath /etc/puppet/modules:/opt/puppetlabs/puppet/modules
Error: Evaluation Error: Error while evaluating a Resource Statement, Could not autoload puppet/type/archive: Could not autoload puppet/provider/archive/ruby: Unable to find archive module in modulepath /etc/puppet/modules:/opt/puppetlabs/puppet/modules at […]/oracle_java/manifests/download.pp:35:5 on node […]
Module structure:
└─┬ aco-oracle_java (v2.7.1)
├── puppet-archive (v1.1.1)
└── puppetlabs-stdlib (v4.12.0)
Using Puppet 4.2.1-3.fc24 from the @commandline
repository (I just upgraded from Fedora 21 so I'm quite sure it was installed from the official repos). Modules are installed in the same directory as all my other modules (a Git repository directory in my home directory). I'm using agentless Puppet.
Hi all,
The installation fails when using the following definition:
class { 'oracle_java':
version => '7u79',
type => 'jdk',
add_alternative => true
} ->
oracle_java::installation { '8u45':
type => 'jdk',
add_alternative => true
}
For details about errors see end of this report.
It succeeds if the "add_alternative => true" is not used in the "8u45" section.
i.e.
class { 'oracle_java':
version => '7u79',
type => 'jdk',
add_alternative => true
} ->
oracle_java::installation { '8u45':
type => 'jdk'
}
What's my mistake?
Regards,
maecval
Details:
Failures (when using "add_alternative => true"):
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: alternative path /usr/java/jdk1.8.0_45/bin/java doesn't exist
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: alternative path /usr/java/jdk1.8.0_45/bin/javaws doesn't exist
...
...
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: alternative path /usr/java/jdk1.8.0_45/bin/javah doesn't exist
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: alternative path /usr/java/jdk1.8.0_45/bin/javap doesn't exist
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: alternative path /usr/java/jdk1.8.0_45/bin/javapackager doesn't exist
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: unknown argument `update-alternatives'
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: alternative path /usr/java/jdk1.8.0_45/bin/jconsole doesn't exist
...
...
Notice: /Stage[main]/Main/Oracle_java::Installation[8u45]/Exec[add java alternative 8u45]/returns: update-alternatives: error: alternative path /usr/java/jdk1.8.0_45/bin/xjc doesn't exist
Error: update-alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_45/bin/java 1800045 --slave /usr/share/man/man1/java.1 java.1 /usr/java/jdk1.8.0_45/man/man1/java.1;
update-alternatives --install /usr/bin/javaws javaws /usr/java/jdk1.8.0_45/bin/javaws 1800045 --slave /usr/share/man/man1/javaws.1 javaws.1 /usr/java/jdk1.8.0_45/man/man1/javaws.1;
...
... update-alternatives --install /usr/bin/wsimport wsimport /usr/java/jdk1.8.0_45/bin/wsimport 1800045 --slave /usr/share/man/man1/wsimport.1 wsimport.1 /usr/java/jdk1.8.0_45/man/man1/wsimport.1;
update-alternatives --install /usr/bin/xjc xjc /usr/java/jdk1.8.0_45/bin/xjc 1800045 --slave /usr/share/man/man1/xjc.1 xjc.1 /usr/java/jdk1.8.0_45/man/man1/xjc.1 returned 2 instead of one of [0]
Hello. I actually was able to use a proxy through setting it in the environment, but our proxy seems to be too slow on providing a connection because it scans the download beforehand.
I get:
Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Function Call, Connection timed out - connect(2) for "download.oracle.com" port 80 at /data/config/puppet/common/modules/oracle_java/manifests/download.pp:33:17 at [..] /opt/puppetlabs/puppet/lib/ruby/2.1.0/net/http.rb:879:in 'initialize' /opt/puppetlabs/puppet/lib/ruby/2.1.0/net/http.rb:879:in 'open' /opt/puppetlabs/puppet/lib/ruby/2.1.0/net/http.rb:879:in 'block in connect' /opt/puppetlabs/puppet/lib/ruby/2.1.0/timeout.rb:90:in 'block in timeout' /opt/puppetlabs/puppet/lib/ruby/2.1.0/timeout.rb:100:in 'call' /opt/puppetlabs/puppet/lib/ruby/2.1.0/timeout.rb:100:in 'timeout' /opt/puppetlabs/puppet/lib/ruby/2.1.0/net/http.rb:878:in 'connect' /opt/puppetlabs/puppet/lib/ruby/2.1.0/net/http.rb:863:in 'do_start' /opt/puppetlabs/puppet/lib/ruby/2.1.0/net/http.rb:852:in 'start' /opt/puppetlabs/puppet/lib/ruby/2.1.0/net/http.rb:583:in 'start' /data/config/puppet/common/modules/oracle_java/lib/puppet_x/aco/util.rb:22:in 'request' /data/config/puppet/common/modules/oracle_java/lib/puppet/parser/functions/oracle_sso.rb:23:in 'block in <module:Functions>'
I had to change the module, because the official puppetlabs module could no longer download an older jdk because they don't provide a means of logging in into oracle. However it uses stdlib archive which does not have this timeout problem.
Will the plugin automatically update my java version? I
started with your plugin and it installed java version "1.8.0_51" but now 1.8.0_60 is available and it was not updated. Will this happen automatically?
Hello,
I would like to install both jre and jdk on a system using oracle_java class (puppet 3.8.5), but I did not find a way to do this. Because classes are unique in puppet I cannot have two oracle_java class declarations, one for jre and the other for jdk installation.
Is there way to do this using oracle_java? if not then I think it would great to have such an option. If it is possible please tell me how and perhaps add a demo to the documentation.
Thanks a lot
Rainer
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Could not autoload puppet/parser/functions/oracle_sso: no such file to load -- /etc/puppetlabs/code/modules/oracle_java/lib/puppet_x/aco/util at /etc/puppetlabs/code/environments/my_dev/modules/oracle_java/manifests/download.pp:33:17
Puppet agent 5.3.3
Puppet server 5.1.4
Fixed it for myself by comparing it to another module (archive)...
The oracle_sso is requiring on puppet_x/aco/util
but it seems it prefers the full name of the ruby module.
we need to provide proxy credentials for the downloads. Is that possible with this module?
V2.7.2 pulls in the latest 1.1.2 and this version no longer supports the 'provider' parameter. I removed it manually from the download.pp file and the manifest runs as expected.
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: no parameter named 'provider' at /etc/puppetlabs/code/environments/osb2/modules/oracle_java/manifests/download.pp:35 on Archive[/usr/java/jdk-8u111-linux-x64.rpm] at /etc/puppetlabs/code/environments/osb2/modules/oracle_java/manifests/download.pp:35 on node dosbdevadm01.dev.somecool.place
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
If I see it right, the tar.gz containig the jre is not removed after install.
thanks
The manifest hard codes the latest version of Java rather than getting it dynamically. This means it's necessary to update this module to get the latest security and other updates.
I've run into a conflict with other modules' dependency on camptocamp's archive module, and this module's dependency on the puppetlabs-archive module.
[root@puppet:manifests]# puppet module install aco-oracle_java
Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ...
Notice: Downloading from https://forgeapi.puppetlabs.com ...
Error: Could not install module 'aco-oracle_java' (latest)
Dependency 'puppet-archive' (v0.4.8) would overwrite /etc/puppetlabs/code/environments/production/modules/archive
Currently, 'camptocamp-archive' (v0.8.1) is installed to that directory
Use `puppet module install --ignore-dependencies` to install only this module
[root@puppet:manifests]# puppet module uninstall camptocamp-archive
Notice: Preparing to uninstall 'camptocamp-archive' ...
Error: Could not uninstall module 'camptocamp-archive'
Other installed modules have dependencies on 'camptocamp-archive' (v0.8.1)
'bfraser/grafana' (v2.5.0) requires 'camptocamp-archive' (>= 0.3.2 <2.0.0)
Use `puppet module uninstall --force` to uninstall this module anyway
The only workaround I can think of is to use a separate environment for the servers that need Oracle-java installing. As far as I can see, the camptocamp-archive module doesn't allow the cookie to be set that allows you to download the archive directly from oracle. Any thoughts? This seems to be a big problem within the puppet community at the moment.
Hi,
I have one, possibly two issues with the module...
We have some build agents which require Java 6, 7 and 8 to be installed.
Previously I've been using this module to install 7 and 8 and the Puppetlabs module to install Java 6. This was working fine until I updated the module for version 101.
Then I started having Puppet reporting:
Notice: /Stage[main]/Oracle_java::Install::Rpm/Package[jdk]/ensure: current_value 2000:1.6.0_45-fcs, should be 2000:1.8.0_101-fcs (noop)
on every run... Obviously it's finding the 1.6.0 installed by the other module.
As I noticed your change logs state that you'd added back support for 1.6.0 I decided to try and install all three Java versions just via your module.
Unfortunately this is failing with the message:
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Function Call, oracle_java module does not support Java SE version 6 (yet) at /etc/puppetlabs/code/environments/production/modules/oracle_java/manifests/installation.pp:152:7 at ...
So it looks like whilst 6 is included in init.pp and javalist.pp it's not included in the installation.pp The case $maj_version only handles 7 and 8 still.
For info this is how I'm currently initiating the install:
class { 'oracle_java':
version => '8u101',
type => 'jdk',
add_alternative => true,
before => Java_ks['ca.file:truststore8'],
} ->
oracle_java::installation { ['7u79','6u45']:
type => 'jdk',
before => Java_ks['ca.file:truststore7'],
}
The module doesn't support any version older than 7th. However, many enviroments, specially production ones for legacy systems still use Java 6 (u22 specifically) or even 5, for example.
Additionally, the module doesn't execute any source command when setting enviroment variables with Augeas, so when a project is provisioned the enviroment variable is not accessible and require a new ssh session to load. That's bad, because other modules may rely on this one, for example, a JBoss module.
Could you please solve this issue?
[root@is-lab-p01 tests]# cat init.pp
class { 'oracle_java':
version => '7u80',
type => 'jdk',
format => 'tar.gz',
check_checksum => false,
}
[root@is-lab-p01 tests]# puppet apply init.pp
Warning: Config file /etc/puppet/hiera.yaml not found, using Hiera defaults
Notice: Compiled catalog for is-lab-p01.it.ucla.edu in environment lab in 0.82 seconds
Error: Cannot alias Archive[extract java archive] to ["/usr/java/jdk-7u80-linux-x64.tar.gz"] at /etc/puppet/modules/oracle_java/manifests/install/targz.pp:22; resource ["Archive", "/usr/java/jdk-7u80-linux-x64.tar.gz"] already declared at /etc/puppet/modules/oracle_java/manifests/download.pp:41
Hi,
I've just updated to the latest version of the module and tried to deploy Java version "8u101"
Puppet is erroring with:
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Function Call, $version must be formated as 'major'u'minor' or just 'major' at /etc/puppetlabs/code/environments/production/modules/oracle_java/manifests/init.pp:72:3
Looking at the init.pp I believe the issue is here:
validate_re($version, '^([0-9]|[0-9]u[0-9]{1,2})$', '$version must be formated as \'major\'u\'minor\' or just \'major\'')
The Regex needs to be updated to accept version 101 as a valid version.
Thanks
Greetings,
I'm attempting to use this module to handle installation of JDK 7 onto some machines (ETA: Ubuntu 14.04). Last time I set up a machine and needed to do an install with this module, it worked. When I attempted to bring a new machine up today, I got the following error:
Error: Execution of '/usr/bin/curl http://download.oracle.com/otn-pub/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz -o /tmp/jdk-7u80-linux-x64.tar.gz_20170607-29275-c28sca -fsSL --max-redirs 5 --cookie oraclelicense=accept-securebackup-cookie' returned 22: curl: (22) The requested URL returned error: 404 Not Found
I was able to install the JDK for Java 8 without any problem, and also to manually download the 7u80 JDK. I also get a 404 when trying to do a manual download using wget after a few redirects.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.