mirror of
https://github.com/corda/corda.git
synced 2025-02-20 09:26:41 +00:00
CORDA-2786 - Certificates directory is only required for node startup. This was causing problems with initial registration. (#4926)
Addressed review comments - removed nested if and added parameter name for the usage of requiresCertificates. Removed unnecessary import and white space.
This commit is contained in:
parent
f89c565312
commit
07031ae0fe
@ -6,7 +6,6 @@ import net.corda.cliutils.CliWrapperBase
|
||||
import net.corda.cliutils.CordaCliWrapper
|
||||
import net.corda.cliutils.CordaVersionProvider
|
||||
import net.corda.cliutils.ExitCodes
|
||||
import net.corda.cliutils.ShellConstants
|
||||
import net.corda.core.contracts.HashAttachmentConstraint
|
||||
import net.corda.core.crypto.Crypto
|
||||
import net.corda.core.internal.*
|
||||
@ -111,7 +110,7 @@ open class NodeStartupCli : CordaCliWrapper("corda", "Runs a Corda Node") {
|
||||
else -> startup.initialiseAndRun(cmdLineOptions, object : RunAfterNodeInitialisation {
|
||||
val startupTime = System.currentTimeMillis()
|
||||
override fun run(node: Node) = startup.startNode(node, startupTime)
|
||||
})
|
||||
}, requireCertificates = true)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -126,7 +125,7 @@ open class NodeStartup : NodeStartupLogging {
|
||||
|
||||
lateinit var cmdLineOptions: SharedNodeCmdLineOptions
|
||||
|
||||
fun initialiseAndRun(cmdLineOptions: SharedNodeCmdLineOptions, afterNodeInitialisation: RunAfterNodeInitialisation): Int {
|
||||
fun initialiseAndRun(cmdLineOptions: SharedNodeCmdLineOptions, afterNodeInitialisation: RunAfterNodeInitialisation, requireCertificates: Boolean = false): Int {
|
||||
this.cmdLineOptions = cmdLineOptions
|
||||
|
||||
// Step 1. Check for supported Java version.
|
||||
@ -149,9 +148,9 @@ open class NodeStartup : NodeStartupLogging {
|
||||
// Step 5. Load and validate node configuration.
|
||||
val rawConfig = cmdLineOptions.rawConfiguration().doOnErrors(cmdLineOptions::logRawConfigurationErrors).optional ?: return ExitCodes.FAILURE
|
||||
val configuration = cmdLineOptions.parseConfiguration(rawConfig).doIfValid { logRawConfig(rawConfig) }.doOnErrors(::logConfigurationErrors).optional ?: return ExitCodes.FAILURE
|
||||
|
||||
|
||||
// Step 6. Check if we can access the certificates directory
|
||||
if (!canReadCertificatesDirectory(configuration.certificatesDirectory, configuration.devMode)) return ExitCodes.FAILURE
|
||||
if (requireCertificates && !canReadCertificatesDirectory(configuration.certificatesDirectory, configuration.devMode)) return ExitCodes.FAILURE
|
||||
|
||||
// Step 7. Configuring special serialisation requirements, i.e., bft-smart relies on Java serialization.
|
||||
if (attempt { banJavaSerialisation(configuration) }.doOnFailure(Consumer { error -> error.logAsUnexpected("Exception while configuring serialisation") }) !is Try.Success) return ExitCodes.FAILURE
|
||||
|
Loading…
x
Reference in New Issue
Block a user