Fix already existing cert

Fix situation of already exsiting cacert in java
trustore. It can happen with cached tooling
This commit is contained in:
Pavel Gonchukov 2021-04-13 11:50:18 +02:00
parent c310a8b469
commit e092c3bf26
No known key found for this signature in database
GPG Key ID: AA78DD4317B862F7
2 changed files with 35 additions and 22 deletions

7
dist/setup/index.js generated vendored
View File

@ -11093,6 +11093,7 @@ 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}`);
try {
yield exec.exec(path.join(opts.javaPath, 'bin/keytool'), [
'-importcert',
'-cacerts',
@ -11104,6 +11105,12 @@ function setupMaven(opts) {
'-file',
rooCaPath
]);
}
catch (e) {
if (!e.message.includes('already exists')) {
throw e;
}
}
core.debug(`added maven opts for MTLS access`);
});
}

View File

@ -65,6 +65,7 @@ export async function setupMaven(opts: MavenOpts): Promise<void> {
`-Djavax.net.ssl.keyStore=${p12Path} -Djavax.net.ssl.keyStoreType=pkcs12 -Djavax.net.ssl.keyStorePassword=${opts.password}`
);
try {
await exec.exec(path.join(opts.javaPath, 'bin/keytool'), [
'-importcert',
'-cacerts',
@ -76,6 +77,11 @@ export async function setupMaven(opts: MavenOpts): Promise<void> {
'-file',
rooCaPath
]);
} catch (e) {
if (!(e as Error).message.includes('already exists')) {
throw e;
}
}
core.debug(`added maven opts for MTLS access`);
}