summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/license/management/tool_box.rb7
-rw-r--r--spec/integration/java/maven_spec.rb36
2 files changed, 23 insertions, 20 deletions
diff --git a/lib/license/management/tool_box.rb b/lib/license/management/tool_box.rb
index 0e39a61..4c41b36 100644
--- a/lib/license/management/tool_box.rb
+++ b/lib/license/management/tool_box.rb
@@ -26,7 +26,7 @@ module License
shell.execute([:asdf, :reshim], env: env)
end
install_common_libraries(env: env) if C_BASED_TOOLS.include?(tool.to_sym)
- install_certificates_into_java_keystore(env) if tool == :java
+ install_certificates_into_java_keystore(env, version) if tool == :java
end
def install_common_libraries(env: {})
@@ -116,10 +116,11 @@ module License
asdf_detected_version_of(:java)
end
- def install_certificates_into_java_keystore(env)
+ def install_certificates_into_java_keystore(env, version)
Dir.chdir shell.custom_certificate_path.dirname do
Dir.glob('custom.*.crt').each do |path|
- keystore_path = "#{env['JAVA_HOME']}/jre/lib/security/cacerts"
+ java_home = Pathname.new(env['JAVA_HOME'])
+ keystore_path = "8" == version ? java_home.join("jre/lib/security/cacerts") : java_home.join("lib/security/cacerts")
shell.execute([:keytool, '-importcert', '-alias', Time.now.to_i, '-file', File.expand_path(path), '-trustcacerts', '-noprompt', '-storepass', 'changeit', '-keystore', keystore_path], env: env)
shell.execute([:keytool, '-list', '-v', '-storepass changeit', '-keystore', keystore_path], env: env)
end
diff --git a/spec/integration/java/maven_spec.rb b/spec/integration/java/maven_spec.rb
index 671243e..ca26d28 100644
--- a/spec/integration/java/maven_spec.rb
+++ b/spec/integration/java/maven_spec.rb
@@ -90,25 +90,27 @@ RSpec.describe "maven" do
end
end
- context "when connecting to a custom package registry with a self signed certificate" do
- let(:env) { { 'ADDITIONAL_CA_CERT_BUNDLE' => x509_certificate.read } }
-
- before do
- runner.add_file('pom.xml') do
- fixture_file_content('java/maven/pom-single.xml.erb', {
- group_id: 'com.fasterxml.jackson.core',
- artifact_id: 'jackson-core',
- version: '2.10.0',
- repository_id: 'custom',
- repository_url: "https://maven.test/maven2"
- })
+ [8, 11].each do |java_version|
+ context "when connecting to a custom package registry with a self signed certificate using JAVA #{java_version}" do
+ let(:env) { { 'ADDITIONAL_CA_CERT_BUNDLE' => x509_certificate.read, 'LM_JAVA_VERSION' => java_version.to_s } }
+
+ before do
+ runner.add_file('pom.xml') do
+ fixture_file_content('java/maven/pom-single.xml.erb', {
+ group_id: 'com.fasterxml.jackson.core',
+ artifact_id: 'jackson-core',
+ version: '2.10.0',
+ repository_id: 'custom',
+ repository_url: "https://maven.test/maven2"
+ })
+ end
end
- end
- specify do
- expect(subject).to match_schema
- expect(subject.dependency_names).to match_array(['jackson-core'])
- expect(subject.licenses_for('jackson-core')).to match_array(['Apache-2.0'])
+ specify do
+ expect(subject).to match_schema
+ expect(subject.dependency_names).to match_array(['jackson-core'])
+ expect(subject.licenses_for('jackson-core')).to match_array(['Apache-2.0'])
+ end
end
end