Compare commits

...

34 Commits

Author SHA1 Message Date
lionce
a0bab6cf38 Release version 6.0.0 2019-11-11 15:31:38 +02:00
lionce
8b451e161c Merge pull request #399 from david22swan/FM-8676
(FM-8676) - Support added for CentOS 8
2019-11-11 11:04:03 +02:00
David Swan
afb5531a4a (FM-8676) - Support added for CentOS 8 2019-11-08 16:07:59 +00:00
carabasdaniel
47a51b4490 Merge pull request #397 from lionce/MODULES-10062
MODULES-10062 - fix acceptance tests on sles
2019-11-07 12:33:16 +02:00
david22swan
b64e9a2f88 Merge pull request #398 from puppetlabs/pdksync_remove_ubuntu14_support
pdksync - FM-8499 - remove ubuntu14 support
2019-11-07 09:16:10 +00:00
lionce
6f05978750 FM-8499 - remove ubuntu14 support 2019-11-06 17:45:14 +02:00
lionce
c477db3b59 MODULES-10062 - fix acceptance tests on sles 2019-11-06 14:25:09 +02:00
lionce
00588d2b96 Merge pull request #396 from puppetlabs/pdksync_encrypt-git
pdksync - (FM-8634) ensure encrypted communication for fixtures
2019-11-05 12:43:17 +02:00
lionce
2ea5a4adb5 Merge pull request #395 from glennsarti/manage-travis
(PDK-1501) Allow Travis CI config to be templated
2019-11-05 10:46:05 +02:00
Glenn Sarti
018de0aef6 (PDK-1501) Fix acceptance stages in Travis CI
Previously the Travis CI file was brought under PDK control, however the
sync.yml did not contain the stage settings for the Litmus jobs which meant
that they did not run.  This commit fixes that error and runs PDK Update again
2019-11-05 13:31:09 +08:00
David Schmitt
74c5c27108 (FM-8634) ensure encrypted communication for fixtures 2019-11-01 16:48:53 +00:00
Glenn Sarti
ee0e10dc12 (maint) Fix rubocop failures in download_spec.rb
This commit updates the download_spec.rb file to remote the global variable and
use let based test fixture.
2019-11-01 09:49:19 +08:00
Glenn Sarti
4913dc0bef (PDK-1501) Allow Travis CI config to be templated
Previously the module unmanaged the Travis CI file when converted to Litmus.
This commit allows the Travis CI file to be managed.
2019-11-01 09:49:19 +08:00
Glenn Sarti
459757dd65 (maint) Update for PDK templates
This commit updates the module as per PDK-Templates commit 0b5b39b
2019-11-01 09:49:19 +08:00
david22swan
7ce9df174f Merge pull request #392 from michaeltlombardi/ticket/master/FM-8275-add-vagrant-provision
(FM-8275) Add vagrant provision list
2019-10-25 15:17:35 +01:00
cmccrisken-puppet
b1ea376937 Merge pull request #393 from puppetlabs/pdksync_pdksync-pdkgemupdate
pdksync - (maint) Override pdk gem version to master branch (PDK-1525 workaround until release)
2019-10-24 21:09:25 +01:00
Ciaran McCrisken
de79582baf Point pdk gem to head of master until PDK-1525 resolved 2019-10-24 15:21:53 +01:00
Michael T Lombardi
ea006c0587 (FM-8275) Add vagrant provision list
Prior to this commit the only provisioners included in
the provision lists were docker and vmpooler, neither
of which are particularly accessible to folks developing
on Windows outside of Puppet.

This commit adds a list which leverages the vagrant
provisioner.
2019-10-18 17:18:02 -05:00
carabasdaniel
e57cbc84ec Merge pull request #391 from robmbrooks/master
we need to check if java_default_home has a value before we attempt t…
2019-09-30 10:03:51 +03:00
Robert Brooks
d4e5461c26 we need to check if java_default_home has a value before we attempt to find libjvm.so, otherwise we search the entire filesystem 2019-09-26 09:57:55 -07:00
TP Honey
a5aad36b86 Merge pull request #390 from puppetlabs/fix_acceptance_tests
Fix fake paths that always cause errors
2019-09-26 10:40:37 +01:00
tphoney
f70d15207a fake paths always cause errors 2019-09-26 11:31:23 +03:00
sheenaajay
0b1f8df952 Merge pull request #389 from puppetlabs/pdksync_add_codeowners
(maint) Add a codeowners file
2019-09-18 10:38:02 +01:00
tphoney
f83cf9fc38 (maint) Add a codeowners file 2019-09-17 15:50:40 +01:00
sheenaajay
074162d034 Merge pull request #386 from vrtdev/feature/java11
Add support for java 11, the default in debian buster 10
2019-09-12 11:22:33 +01:00
sheenaajay
71b6a47798 Merge pull request #385 from leitmedium/master
ensure Java8 update number is being handled as a number
2019-09-12 09:15:14 +01:00
TP Honey
b670aca0cc Merge pull request #387 from puppetlabs/FM-8403
FM-8403 - add support Debain10
2019-09-11 15:27:19 +01:00
Caspar Clemens Mierau
27fed78308 ensure Java8 update number is being handled as a number when doing version comparing 2019-09-11 13:12:45 +02:00
lionce
ba9a1dbe45 add support Debain10 2019-09-10 16:27:01 +03:00
Jeroen Hooyberghs
197213e517 Put test result in variable to satisfy RuboCop 2019-09-10 14:33:49 +02:00
Jeroen Hooyberghs
21d39590b0 Add support for java 11, the default in debian buster 10 2019-09-10 12:21:19 +02:00
TP Honey
00c05a826f Merge pull request #384 from puppetlabs/pdksync_net-ssh-fix
pdksync - (MAINT) pdksync: fix for net-ssh 5 host_key check
2019-08-29 16:02:07 +01:00
Florin Dragos
d277391efc (MAINT) pdksync: fix for net-ssh 5 host_key check 2019-08-29 17:09:24 +03:00
sheenaajay
ce34499671 Merge pull request #382 from puppetlabs/release
MODULES-9673 Release merge back v5.0.1
2019-08-12 12:18:21 +01:00
21 changed files with 246 additions and 86 deletions

View File

@@ -1,9 +1,9 @@
fixtures:
repositories:
archive: "git://github.com/voxpupuli/puppet-archive.git"
facts: 'git://github.com/puppetlabs/puppetlabs-facts.git'
stdlib: "git://github.com/puppetlabs/puppetlabs-stdlib.git"
puppet_agent: 'git://github.com/puppetlabs/puppetlabs-puppet_agent.git'
provision: 'git://github.com/puppetlabs/provision.git'
archive: "https://github.com/voxpupuli/puppet-archive.git"
facts: 'https://github.com/puppetlabs/puppetlabs-facts.git'
stdlib: "https://github.com/puppetlabs/puppetlabs-stdlib.git"
puppet_agent: 'https://github.com/puppetlabs/puppetlabs-puppet_agent.git'
provision: 'https://github.com/puppetlabs/provision.git'
symlinks:
java: "#{source_dir}"

View File

@@ -14,7 +14,6 @@ AllCops:
- "**/Rakefile"
- pkg/**/*
- spec/fixtures/**/*
- spec/**/*
- vendor/**/*
- "**/Puppetfile"
- "**/Vagrantfile"
@@ -28,6 +27,7 @@ GetText/DecorateString:
Description: We don't want to decorate test output.
Exclude:
- spec/**/*
Enabled: false
RSpec/BeforeAfterAll:
Description: Beware of using after(:all) as it may cause state to leak between tests.
A necessary evil in acceptance testing.
@@ -89,6 +89,12 @@ Style/MethodCalledOnDoEndBlock:
Enabled: true
Style/StringMethods:
Enabled: true
GetText/DecorateFunctionMessage:
Enabled: false
GetText/DecorateStringFormattingUsingInterpolation:
Enabled: false
GetText/DecorateStringFormattingUsingPercent:
Enabled: false
Layout/EndOfLine:
Enabled: false
Layout/IndentHeredoc:

View File

@@ -7,7 +7,65 @@
unmanaged: true
.travis.yml:
unmanaged: true
branches:
- release
includes:
-
bundler_args:
dist: trusty
env: PLATFORMS=deb_puppet5
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_deb]'
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
- bundle exec rake 'litmus:install_agent[puppet5]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
sudo: required
stage: acceptance
-
bundler_args:
dist: trusty
env: PLATFORMS=deb_puppet6
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_deb]'
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
- bundle exec rake 'litmus:install_agent[puppet6]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
-
bundler_args:
dist: trusty
env: PLATFORMS=el_puppet5
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_el]'
- bundle exec rake 'litmus:install_agent[puppet5]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
sudo: required
stage: acceptance
-
bundler_args:
dist: trusty
env: PLATFORMS=el_puppet6
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_el]'
- bundle exec rake 'litmus:install_agent[puppet6]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
sudo: required
stage: acceptance
appveyor.yml:
delete: true

View File

@@ -23,59 +23,6 @@ stages:
matrix:
fast_finish: true
include:
-
bundler_args:
dist: trusty
env: PLATFORMS=deb_puppet5
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_deb]'
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
- bundle exec rake 'litmus:install_agent[puppet5]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
sudo: required
-
bundler_args:
dist: trusty
env: PLATFORMS=deb_puppet6
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_deb]'
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
- bundle exec rake 'litmus:install_agent[puppet6]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
-
bundler_args:
dist: trusty
env: PLATFORMS=el_puppet5
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_el]'
- bundle exec rake 'litmus:install_agent[puppet5]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
sudo: required
-
bundler_args:
dist: trusty
env: PLATFORMS=el_puppet6
rvm: 2.5.1
before_script:
- bundle exec rake 'litmus:provision_list[travis_el]'
- bundle exec rake 'litmus:install_agent[puppet6]'
- bundle exec rake litmus:install_module
script:
- bundle exec rake litmus:acceptance:parallel
services: docker
sudo: required
-
env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
stage: static
@@ -90,6 +37,44 @@ matrix:
-
env: DEPLOY_TO_FORGE=yes
stage: deploy
-
before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
bundler_args:
dist: trusty
env: PLATFORMS=deb_puppet5
rvm: 2.5.1
script: ["bundle exec rake litmus:acceptance:parallel"]
services: docker
stage: acceptance
sudo: required
-
before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
bundler_args:
dist: trusty
env: PLATFORMS=deb_puppet6
rvm: 2.5.1
script: ["bundle exec rake litmus:acceptance:parallel"]
services: docker
-
before_script: ["bundle exec rake 'litmus:provision_list[travis_el]'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
bundler_args:
dist: trusty
env: PLATFORMS=el_puppet5
rvm: 2.5.1
script: ["bundle exec rake litmus:acceptance:parallel"]
services: docker
stage: acceptance
sudo: required
-
before_script: ["bundle exec rake 'litmus:provision_list[travis_el]'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
bundler_args:
dist: trusty
env: PLATFORMS=el_puppet6
rvm: 2.5.1
script: ["bundle exec rake litmus:acceptance:parallel"]
services: docker
stage: acceptance
sudo: required
branches:
only:
- master

View File

@@ -2,6 +2,29 @@
All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org).
## [v6.0.0](https://github.com/puppetlabs/puppetlabs-java/tree/v6.0.0) (2019-11-11)
[Full Changelog](https://github.com/puppetlabs/puppetlabs-java/compare/v5.0.1...v6.0.0)
### Changed
- pdksync - FM-8499 - remove ubuntu14 support [\#398](https://github.com/puppetlabs/puppetlabs-java/pull/398) ([lionce](https://github.com/lionce))
### Added
- \(FM-8676\) - Support added for CentOS 8 [\#399](https://github.com/puppetlabs/puppetlabs-java/pull/399) ([david22swan](https://github.com/david22swan))
- FM-8403 - add support Debain10 [\#387](https://github.com/puppetlabs/puppetlabs-java/pull/387) ([lionce](https://github.com/lionce))
### Fixed
- MODULES-10062 - fix acceptance tests on sles [\#397](https://github.com/puppetlabs/puppetlabs-java/pull/397) ([lionce](https://github.com/lionce))
- we need to check if java\_default\_home has a value before we attempt t… [\#391](https://github.com/puppetlabs/puppetlabs-java/pull/391) ([robmbrooks](https://github.com/robmbrooks))
- Add support for java 11, the default in debian buster 10 [\#386](https://github.com/puppetlabs/puppetlabs-java/pull/386) ([jhooyberghs](https://github.com/jhooyberghs))
## [v5.0.1](https://github.com/puppetlabs/puppetlabs-java/tree/v5.0.1) (2019-08-05)
[Full Changelog](https://github.com/puppetlabs/puppetlabs-java/compare/v5.0.0...v5.0.1)
## [v5.0.0](https://github.com/puppetlabs/puppetlabs-java/tree/v5.0.0) (2019-07-29)
[Full Changelog](https://github.com/puppetlabs/puppetlabs-java/compare/v4.1.0...v5.0.0)

2
CODEOWNERS Normal file
View File

@@ -0,0 +1,2 @@
# Setting ownership to the modules team
* @puppetlabs/modules

View File

@@ -1,4 +1,5 @@
source ENV['GEM_SOURCE'] || 'https://rubygems.org'
gem 'pdk', git: 'https://github.com/puppetlabs/pdk.git', branch: 'master'
def location_for(place_or_version, fake_version = nil)
git_url_regex = %r{\A(?<url>(https?|git)[:@][^#]*)(#(?<branch>.*))?}
@@ -23,6 +24,7 @@ group :development do
gem "json", '= 1.8.1', require: false if Gem::Version.new(RUBY_VERSION.dup) == Gem::Version.new('2.1.9')
gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw]
gem "puppet-module-posix-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
gem "puppet-module-posix-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
gem "puppet-module-win-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw]

View File

@@ -15,8 +15,17 @@ end
def changelog_project
return unless Rake.application.top_level_tasks.include? "changelog"
returnVal = nil || JSON.load(File.read('metadata.json'))['source'].match(%r{.*/([^/]*)})[1]
raise "unable to find the changelog_project in .sync.yml or the name in metadata.json" if returnVal.nil?
returnVal = nil
returnVal ||= begin
metadata_source = JSON.load(File.read('metadata.json'))['source']
metadata_source_match = metadata_source && metadata_source.match(%r{.*\/([^\/]*?)(?:\.git)?\Z})
metadata_source_match && metadata_source_match[1]
end
raise "unable to find the changelog_project in .sync.yml or calculate it from the source in metadata.json" if returnVal.nil?
puts "GitHubChangelogGenerator project:#{returnVal}"
returnVal
end

View File

@@ -14,7 +14,9 @@ Facter.add(:java_libjvm_path) do
confine kernel: ['Linux', 'OpenBSD']
setcode do
java_default_home = Facter.value(:java_default_home)
java_libjvm_file = Dir.glob("#{java_default_home}/jre/lib/**/libjvm.so")
if java_default_home
java_libjvm_file = Dir.glob("#{java_default_home}/**/lib/**/libjvm.so")
end
if java_libjvm_file.nil? || java_libjvm_file.empty?
nil
else

View File

@@ -16,7 +16,15 @@ Facter.add(:java_major_version) do
java_major_version = nil
setcode do
java_version = Facter.value(:java_version)
java_major_version = java_version.strip.split('_')[0].split('.')[1] unless java_version.nil?
unless java_version.nil?
# First part > 1, use the first part as major version
java_version_first_number = java_version.strip.split('.')[0]
java_major_version = if java_version_first_number.to_i > 1
java_version_first_number
else
java_version.strip.split('_')[0].split('.')[1]
end
end
end
java_major_version
end

View File

@@ -14,7 +14,15 @@ Facter.add(:java_patch_level) do
java_patch_level = nil
setcode do
java_version = Facter.value(:java_version)
java_patch_level = java_version.strip.split('_')[1] unless java_version.nil?
unless java_version.nil?
# First part > 1, use . as seperator to get patch level
java_version_first_number = java_version.strip.split('.')[0]
java_patch_level = if java_version_first_number.to_i > 1
java_version.strip.split('.')[2]
else
java_version.strip.split('_')[1]
end
end
end
java_patch_level
end

View File

@@ -24,7 +24,8 @@ Facter.add(:java_version) do
unless ['darwin'].include? Facter.value(:operatingsystem).downcase
version = nil
if Facter::Util::Resolution.which('java')
Facter::Util::Resolution.exec('java -Xmx12m -version 2>&1').lines.each { |line| version = $LAST_MATCH_INFO[1] if %r{^.+ version \"(.+)\"$} =~ line }
Facter::Util::Resolution.exec('java -Xmx12m -version 2>&1').lines.each { |line| version = $LAST_MATCH_INFO[1] if %r{^.+ version \"(.+)\".*$} =~ line }
end
version
end

View File

@@ -98,7 +98,7 @@ define java::download(
# Required for CentOS systems where Java8 update number is >= 171 to ensure
# the package is visible to Puppet. This is only true for installations that
# don't use the tar.gz package type.
if $facts['os']['family'] == 'RedHat' and $2 >= '171' and $package_type != 'tar.gz' {
if $facts['os']['family'] == 'RedHat' and Numeric($2) >= 171 and $package_type != 'tar.gz' {
$install_path = "${java_se}1.${1}.0_${2}-amd64"
} else {
$install_path = "${java_se}1.${1}.0_${2}"

View File

@@ -1,6 +1,6 @@
{
"name": "puppetlabs-java",
"version": "5.0.1",
"version": "6.0.0",
"author": "puppetlabs",
"summary": "Installs the correct Java package on various platforms.",
"license": "Apache-2.0",
@@ -32,7 +32,8 @@
"operatingsystemrelease": [
"5",
"6",
"7"
"7",
"8"
]
},
{
@@ -52,13 +53,13 @@
"operatingsystem": "Debian",
"operatingsystemrelease": [
"8",
"9"
"9",
"10"
]
},
{
"operatingsystem": "Ubuntu",
"operatingsystemrelease": [
"14.04",
"16.04",
"18.04"
]
@@ -79,6 +80,6 @@
}
],
"template-url": "https://github.com/puppetlabs/pdk-templates/#master",
"template-ref": "heads/master-0-gb096033",
"pdk-version": "1.11.1"
"template-ref": "1.14.1-0-g0b5b39b",
"pdk-version": "1.14.0"
}

View File

@@ -4,10 +4,13 @@ default:
images: ['waffleimage/debian8']
travis_deb:
provisioner: docker
images: ['debian:8', 'debian:9', 'ubuntu:14.04', 'ubuntu:16.04', 'ubuntu:18.04']
images: ['debian:8', 'debian:9', 'ubuntu:16.04', 'ubuntu:18.04']
travis_el:
provisioner: docker_exp
images: ['centos:6', 'centos:7', 'oraclelinux:6', 'oraclelinux:7', 'scientificlinux/sl:6', 'scientificlinux/sl:7']
vagrant:
provisioner: vagrant
images: ['centos/7', 'generic/ubuntu1804']
release_checks:
provisioner: vmpooler
images: ['redhat-6-x86_64', 'redhat-7-x86_64', 'redhat-8-x86_64', 'centos-6-x86_64', 'centos-7-x86_64', 'oracle-6-x86_64', 'oracle-7-x86_64', 'scientific-6-x86_64', 'scientific-7-x86_64', 'debian-8-x86_64', 'debian-9-x86_64', 'ubuntu-1404-x86_64', 'ubuntu-1604-x86_64', 'ubuntu-1804-x86_64', 'sles-11-x86_64', 'sles-12-x86_64', 'sles-15-x86_64']
images: ['redhat-6-x86_64', 'redhat-7-x86_64', 'redhat-8-x86_64', 'centos-6-x86_64', 'centos-7-x86_64', 'centos-8-x86_64', 'oracle-6-x86_64', 'oracle-7-x86_64', 'scientific-6-x86_64', 'scientific-7-x86_64', 'debian-8-x86_64', 'debian-9-x86_64', 'debian-10-x86_64', 'ubuntu-1604-x86_64', 'ubuntu-1804-x86_64', 'sles-11-x86_64', 'sles-12-x86_64', 'sles-15-x86_64']

View File

@@ -71,10 +71,10 @@ context 'with failure cases' do
end
it 'fails on debian or RHEL when passed fake java_alternative and path' do
if os[:family] == 'debian' || os[:family] == 'redhat'
apply_manifest(bogus_alternative, expect_failures: true)
else
if os[:family] == 'sles'
apply_manifest(bogus_alternative, catch_failures: true)
else
apply_manifest(bogus_alternative, expect_failures: true)
end
end
end

View File

@@ -53,6 +53,22 @@ describe 'java', type: :class do
it { is_expected.not_to contain_exec('update-java-alternatives') }
end
context 'when select jdk for Debian Buster (10.0)' do
let(:facts) { { osfamily: 'Debian', operatingsystem: 'Debian', lsbdistcodename: 'buster', operatingsystemmajrelease: '10', architecture: 'amd64' } }
let(:params) { { 'distribution' => 'jdk' } }
it { is_expected.to contain_package('java').with_name('openjdk-11-jdk') }
it { is_expected.to contain_file_line('java-home-environment').with_line('JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64/') }
end
context 'when select jre for Debian Buster (10.0)' do
let(:facts) { { osfamily: 'Debian', operatingsystem: 'Debian', lsbdistcodename: 'buster', operatingsystemmajrelease: '10', architecture: 'amd64' } }
let(:params) { { 'distribution' => 'jre' } }
it { is_expected.to contain_package('java').with_name('openjdk-11-jre-headless') }
it { is_expected.to contain_file_line('java-home-environment').with_line('JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64/') }
end
context 'when select jdk for Ubuntu Trusty (14.04)' do
let(:facts) { { osfamily: 'Debian', operatingsystem: 'Ubuntu', lsbdistcodename: 'trusty', operatingsystemmajrelease: '14.04', architecture: 'amd64' } }
let(:params) { { 'distribution' => 'jdk' } }

View File

@@ -3,5 +3,6 @@
# Facts specified here will override the values provided by rspec-puppet-facts.
---
ipaddress: "172.16.254.254"
ipaddress6: "FE80:0000:0000:0000:AAAA:AAAA:AAAA"
is_pe: false
macaddress: "AA:AA:AA:AA:AA:AA"

View File

@@ -1,8 +1,8 @@
require 'spec_helper'
url = 'http://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz'
describe 'java::download', type: :define do
let(:url) { 'http://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz' }
context 'with CentOS 64-bit' do
let(:facts) { { kernel: 'Linux', os: { family: 'RedHat', architecture: 'x86_64', name: 'CentOS', release: { full: '6.0' } } } }
@@ -13,7 +13,7 @@ describe 'java::download', type: :define do
version_major: '8u201',
version_minor: 'b09',
java_se: 'jdk',
url: $url,
url: url,
}
end
let(:title) { 'jdk8' }
@@ -48,7 +48,7 @@ describe 'java::download', type: :define do
basedir: '/usr/java',
manage_symlink: true,
symlink_name: 'java_home',
url: $url,
url: url,
}
end
let(:title) { 'jdk6' }
@@ -61,12 +61,24 @@ describe 'java::download', type: :define do
let(:facts) { { kernel: 'Linux', os: { family: 'Debian', architecture: 'amd64', name: 'Ubuntu', release: { full: '16.04' } } } }
context 'when passing URL to url parameter' do
let(:params) { { ensure: 'present', version_major: '8u201', version_minor: 'b09', java_se: 'jdk', url: $url } }
let(:params) { { ensure: 'present', version_major: '8u201', version_minor: 'b09', java_se: 'jdk', url: url } }
let(:title) { 'jdk8' }
it { is_expected.to contain_archive('/tmp/jdk-8u201-linux-x64.tar.gz') }
end
end
context 'with Debian 64-bit' do
let(:facts) { { kernel: 'Linux', os: { family: 'Debian', architecture: 'amd64', name: 'Debian', release: { full: '10.0' } } } }
context 'when passing URL to url parameter' do
let(:params) { { ensure: 'present', version_major: '8u201', version_minor: 'b09', java_se: 'jdk', url: url } }
let(:title) { 'jdk8' }
it { is_expected.to contain_archive('/tmp/jdk-8u201-linux-x64.tar.gz') }
end
end
describe 'incompatible OSes' do
[
{

View File

@@ -28,7 +28,30 @@ else
options[:port] = node_config.dig('ssh', 'port') unless node_config.dig('ssh', 'port').nil?
options[:keys] = node_config.dig('ssh', 'private-key') unless node_config.dig('ssh', 'private-key').nil?
options[:password] = node_config.dig('ssh', 'password') unless node_config.dig('ssh', 'password').nil?
options[:verify_host_key] = Net::SSH::Verifiers::Null.new unless node_config.dig('ssh', 'host-key-check').nil?
# Support both net-ssh 4 and 5.
# rubocop:disable Metrics/BlockNesting
options[:verify_host_key] = if node_config.dig('ssh', 'host-key-check').nil?
# Fall back to SSH behavior. This variable will only be set in net-ssh 5.3+.
if @strict_host_key_checking.nil? || @strict_host_key_checking
Net::SSH::Verifiers::Always.new
else
# SSH's behavior with StrictHostKeyChecking=no: adds new keys to known_hosts.
# If known_hosts points to /dev/null, then equivalent to :never where it
# accepts any key beacuse they're all new.
Net::SSH::Verifiers::AcceptNewOrLocalTunnel.new
end
elsif node_config.dig('ssh', 'host-key-check')
if defined?(Net::SSH::Verifiers::Always)
Net::SSH::Verifiers::Always.new
else
Net::SSH::Verifiers::Secure.new
end
elsif defined?(Net::SSH::Verifiers::Never)
Net::SSH::Verifiers::Never.new
else
Net::SSH::Verifiers::Null.new
end
# rubocop:enable Metrics/BlockNesting
host = if ENV['TARGET_HOST'].include?(':')
ENV['TARGET_HOST'].split(':').first
else

View File

@@ -11,14 +11,14 @@ describe 'java_libjvm_path' do
context 'when libjvm exists' do
it do
allow(Dir).to receive(:glob).with("#{java_default_home}/jre/lib/**/libjvm.so").and_return(['/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/libjvm.so'])
allow(Dir).to receive(:glob).with("#{java_default_home}/**/lib/**/libjvm.so").and_return(['/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/libjvm.so'])
expect(Facter.value(:java_libjvm_path)).to eql '/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server'
end
end
context 'when libjvm does not exist' do
it do
allow(Dir).to receive(:glob).with("#{java_default_home}/jre/lib/**/libjvm.so").and_return([])
allow(Dir).to receive(:glob).with("#{java_default_home}/**/lib/**/libjvm.so").and_return([])
expect(Facter.value(:java_libjvm_path)).to be nil
end
end