From f9c29542d729a15036eaebfa5b42453e1f024393 Mon Sep 17 00:00:00 2001 From: Gari Singh Date: Fri, 30 Jun 2017 08:47:38 -0400 Subject: [PATCH] [FAB-5038] Generate artifacts if they don't exist If you run ./byfn -m up prior to running ./byfn -m generate, things will fail - which would normally be OK except in the case where you are running the Docker daemon as root - which is the default on Linux systems. The issue is that the Docker daemon will automatically generate host paths for volumes if they don't exist and they will be owned by whoever is running the Docker process resulting in the error reported in FAB-5038. To fix this, simply check for the existence of the crypto-config folder and if it does not exist run the equivalent commands as the generate option Change-Id: Ic5b48682a527951ac6eab5b5cf2d0fc6dbdaad56 Signed-off-by: Gari Singh --- first-network/byfn.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/first-network/byfn.sh b/first-network/byfn.sh index 6f46c95afb..64eabb5a51 100755 --- a/first-network/byfn.sh +++ b/first-network/byfn.sh @@ -95,6 +95,12 @@ function removeUnwantedImages() { # Generate the needed certificates, the genesis block and start the network. function networkUp () { + # generate artifacts if they don't exist + if [ ! -d "crypto-config" ]; then + generateCerts + replacePrivateKey + generateChannelArtifacts + fi CHANNEL_NAME=$CHANNEL_NAME TIMEOUT=$CLI_TIMEOUT docker-compose -f $COMPOSE_FILE up -d 2>&1 if [ $? -ne 0 ]; then echo "ERROR !!!! Unable to start network"