feat: Move OpenSSL output to custom logger
This commit is contained in:
parent
e37348db23
commit
dd2e11c8e8
1 changed files with 18 additions and 15 deletions
|
@ -1,6 +1,7 @@
|
||||||
package de.mlessmann.certassist.openssl;
|
package de.mlessmann.certassist.openssl;
|
||||||
|
|
||||||
import static de.mlessmann.certassist.Constants.CERTASSIST_TMP_PREFIX;
|
import static de.mlessmann.certassist.Constants.CERTASSIST_TMP_PREFIX;
|
||||||
|
import static org.slf4j.LoggerFactory.getLogger;
|
||||||
|
|
||||||
import de.mlessmann.certassist.DeleteRecursiveFileVisitor;
|
import de.mlessmann.certassist.DeleteRecursiveFileVisitor;
|
||||||
import de.mlessmann.certassist.ExecutableResolver;
|
import de.mlessmann.certassist.ExecutableResolver;
|
||||||
|
@ -25,6 +26,7 @@ import java.util.stream.Collectors;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.slf4j.Logger;
|
||||||
import org.springframework.lang.NonNull;
|
import org.springframework.lang.NonNull;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.CollectionUtils;
|
||||||
|
@ -37,6 +39,7 @@ import org.zeroturnaround.exec.stream.slf4j.Slf4jStream;
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class OpenSSLCertificateCreator {
|
public class OpenSSLCertificateCreator {
|
||||||
|
|
||||||
|
private static final Logger openSSLLogger = getLogger("OpenSSL-Logger");
|
||||||
public static final String OPENSSL_CERT_SUBJECT_TEMPLATE =
|
public static final String OPENSSL_CERT_SUBJECT_TEMPLATE =
|
||||||
"/C=ISO-COUNTRY/ST=STATE/L=LOCALITY/O=ORGANIZATION/CN=COMMON-NAME";
|
"/C=ISO-COUNTRY/ST=STATE/L=LOCALITY/O=ORGANIZATION/CN=COMMON-NAME";
|
||||||
private static final String CSR_EXT_TEMPLATE =
|
private static final String CSR_EXT_TEMPLATE =
|
||||||
|
@ -141,8 +144,8 @@ public class OpenSSLCertificateCreator {
|
||||||
Integer.toString(request.getRequestedKeyLength())
|
Integer.toString(request.getRequestedKeyLength())
|
||||||
)
|
)
|
||||||
.environment("KEY_PASS", filePassword)
|
.environment("KEY_PASS", filePassword)
|
||||||
.redirectOutput(Slf4jStream.ofCaller().asDebug())
|
.redirectOutput(Slf4jStream.of(openSSLLogger).asDebug())
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
keygenProc.getFuture().get();
|
keygenProc.getFuture().get();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -181,8 +184,8 @@ public class OpenSSLCertificateCreator {
|
||||||
certSubject
|
certSubject
|
||||||
)
|
)
|
||||||
.environment("KEY_PASS", certPassword)
|
.environment("KEY_PASS", certPassword)
|
||||||
.redirectOutput(Slf4jStream.ofCaller().asDebug())
|
.redirectOutput(Slf4jStream.of(openSSLLogger).asDebug())
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
certGenProc.getFuture().get();
|
certGenProc.getFuture().get();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -218,8 +221,8 @@ public class OpenSSLCertificateCreator {
|
||||||
certSubject
|
certSubject
|
||||||
)
|
)
|
||||||
.environment("KEY_PASS", certPassword)
|
.environment("KEY_PASS", certPassword)
|
||||||
.redirectOutput(Slf4jStream.ofCaller().asDebug())
|
.redirectOutput(Slf4jStream.of(openSSLLogger).asDebug())
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
certGenProc.getFuture().get();
|
certGenProc.getFuture().get();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -264,8 +267,8 @@ public class OpenSSLCertificateCreator {
|
||||||
|
|
||||||
StartedProcess verifyCommand = new ProcessExecutor()
|
StartedProcess verifyCommand = new ProcessExecutor()
|
||||||
.command(resolveOpenSSL(), "verify", "-CAfile", tempTrustedBundle.toString(), fullChainFile.toString())
|
.command(resolveOpenSSL(), "verify", "-CAfile", tempTrustedBundle.toString(), fullChainFile.toString())
|
||||||
.redirectOutput(Slf4jStream.ofCaller().asError())
|
.redirectOutput(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
var verifyResult = verifyCommand.getFuture().get();
|
var verifyResult = verifyCommand.getFuture().get();
|
||||||
return verifyResult.getExitValue() == 0;
|
return verifyResult.getExitValue() == 0;
|
||||||
|
@ -316,8 +319,8 @@ public class OpenSSLCertificateCreator {
|
||||||
"pass:" + passphrase,
|
"pass:" + passphrase,
|
||||||
"-noout"
|
"-noout"
|
||||||
)
|
)
|
||||||
.redirectOutput(Slf4jStream.ofCaller().asError())
|
.redirectOutput(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
var verifyResult = verifyCommand.getFuture().get();
|
var verifyResult = verifyCommand.getFuture().get();
|
||||||
return verifyResult.getExitValue() == 0;
|
return verifyResult.getExitValue() == 0;
|
||||||
|
@ -387,8 +390,8 @@ public class OpenSSLCertificateCreator {
|
||||||
"-extfile",
|
"-extfile",
|
||||||
extFile.toString()
|
extFile.toString()
|
||||||
)
|
)
|
||||||
.redirectOutput(Slf4jStream.ofCaller().asDebug())
|
.redirectOutput(Slf4jStream.of(openSSLLogger).asDebug())
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
certGenProc.getFuture().get();
|
certGenProc.getFuture().get();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -405,7 +408,7 @@ public class OpenSSLCertificateCreator {
|
||||||
StartedProcess fingerprintProc = new ProcessExecutor()
|
StartedProcess fingerprintProc = new ProcessExecutor()
|
||||||
.command(resolveOpenSSL(), "x509", "-in", certificate.toString(), "-noout", "-fingerprint")
|
.command(resolveOpenSSL(), "x509", "-in", certificate.toString(), "-noout", "-fingerprint")
|
||||||
.readOutput(true)
|
.readOutput(true)
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
var fingerprintResult = fingerprintProc.getFuture().get();
|
var fingerprintResult = fingerprintProc.getFuture().get();
|
||||||
String output = fingerprintResult.getOutput().getUTF8();
|
String output = fingerprintResult.getOutput().getUTF8();
|
||||||
|
@ -466,7 +469,7 @@ public class OpenSSLCertificateCreator {
|
||||||
"lname"
|
"lname"
|
||||||
)
|
)
|
||||||
.readOutput(true)
|
.readOutput(true)
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
var infoResult = infoProc.getFuture().get();
|
var infoResult = infoProc.getFuture().get();
|
||||||
String output = infoResult.getOutput().getUTF8();
|
String output = infoResult.getOutput().getUTF8();
|
||||||
|
@ -490,7 +493,7 @@ public class OpenSSLCertificateCreator {
|
||||||
StartedProcess versionProc = new ProcessExecutor()
|
StartedProcess versionProc = new ProcessExecutor()
|
||||||
.command(path, "version")
|
.command(path, "version")
|
||||||
.readOutput(true)
|
.readOutput(true)
|
||||||
.redirectError(Slf4jStream.ofCaller().asError())
|
.redirectError(Slf4jStream.of(openSSLLogger).asError())
|
||||||
.start();
|
.start();
|
||||||
var versionResult = versionProc.getFuture().get();
|
var versionResult = versionProc.getFuture().get();
|
||||||
if (versionResult.getExitValue() != 0) {
|
if (versionResult.getExitValue() != 0) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue