From 3633b10cefd161c6ce7b9f983e46c3ef7342c6a2 Mon Sep 17 00:00:00 2001 From: Pavel Gonchukov Date: Wed, 9 Jun 2021 13:39:44 +0300 Subject: [PATCH] Add cacert rule for java 8 Need to add cacerts also for java 8 --- dist/setup/index.js | 9 +++++++-- src/maven.ts | 8 +++++++- src/setup-java.ts | 3 ++- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/dist/setup/index.js b/dist/setup/index.js index 9d03de27..a190a3b1 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -11093,10 +11093,14 @@ function setupMaven(opts) { const p12Path = path.join(certDir, 'certificate.p12'); fs.writeFileSync(p12Path, Buffer.from(opts.keystore, 'base64')); core.exportVariable('MAVEN_OPTS', `-Djavax.net.ssl.keyStore=${p12Path} -Djavax.net.ssl.keyStoreType=pkcs12 -Djavax.net.ssl.keyStorePassword=${opts.password}`); + var caCertsParam = '-cacerts'; + if (opts.javaVersion === '8') { + caCertsParam = '-trustcacerts'; + } try { yield exec.exec(path.join(opts.javaPath, 'bin/keytool'), [ '-importcert', - '-cacerts', + caCertsParam, '-storepass', 'changeit', '-noprompt', @@ -33373,7 +33377,8 @@ function run() { password: core.getInput(constants.INPUT_MAVEN_KEYSTORE_PASSWORD), settings: core.getInput(constants.INPUT_MAVEN_SETTINGS_B64), securitySettings: core.getInput(constants.INPUT_MAVEN_SECURITY_SETTINGS_B64), - javaPath: '' + javaPath: '', + javaVersion: version }; const mvnVersion = core.getInput(constants.INPUT_MAVEN_VERSION); const arch = core.getInput(constants.INPUT_ARCHITECTURE, { required: true }); diff --git a/src/maven.ts b/src/maven.ts index 18dac659..05aa577b 100644 --- a/src/maven.ts +++ b/src/maven.ts @@ -13,6 +13,7 @@ export interface MavenOpts { settings: string; securitySettings: string; javaPath: string; + javaVersion: string; } export function isValidOptions(mvnOpts: MavenOpts): boolean { @@ -65,10 +66,15 @@ export async function setupMaven(opts: MavenOpts): Promise { `-Djavax.net.ssl.keyStore=${p12Path} -Djavax.net.ssl.keyStoreType=pkcs12 -Djavax.net.ssl.keyStorePassword=${opts.password}` ); + var caCertsParam = '-cacerts'; + if (opts.javaVersion === '8') { + caCertsParam = '-trustcacerts'; + } + try { await exec.exec(path.join(opts.javaPath, 'bin/keytool'), [ '-importcert', - '-cacerts', + caCertsParam, '-storepass', 'changeit', '-noprompt', diff --git a/src/setup-java.ts b/src/setup-java.ts index 082137ab..dfa7f3a7 100644 --- a/src/setup-java.ts +++ b/src/setup-java.ts @@ -21,7 +21,8 @@ async function run() { securitySettings: core.getInput( constants.INPUT_MAVEN_SECURITY_SETTINGS_B64 ), - javaPath: '' + javaPath: '', + javaVersion: version }; const mvnVersion = core.getInput(constants.INPUT_MAVEN_VERSION);