From e3e26ce977c53b2d7808502ce07653893d302ea4 Mon Sep 17 00:00:00 2001 From: Arnaud J Le Hors Date: Fri, 19 May 2017 16:45:41 +0200 Subject: [PATCH] [FAB-4032] Fix Getting Started kit for Windows Patches bootstrap.sh and generateArtifacts.sh to get the right ARCH Patches generateArtifacts.sh and docker-compose-base.yaml to use the filename "genesis.block" instead of "orderer.genesis.block" which for some unknown reason makes the orderer fail to launch (weird!!) Patches the doc to refer to the new filename. See [FAB-4032] for additional info. Change-Id: Ifde065aba7ddd7c23d20e2ee9e6498c7a3230e4d Signed-off-by: Arnaud J Le Hors --- docs/source/getting_started.rst | 8 ++++++-- examples/e2e_cli/base/docker-compose-base.yaml | 2 +- examples/e2e_cli/bootstrap.sh | 2 +- examples/e2e_cli/end-to-end.rst | 8 ++++++-- examples/e2e_cli/generateArtifacts.sh | 6 ++++-- 5 files changed, 18 insertions(+), 8 deletions(-) diff --git a/docs/source/getting_started.rst b/docs/source/getting_started.rst index 4bef44aae73..fb5551dac9a 100644 --- a/docs/source/getting_started.rst +++ b/docs/source/getting_started.rst @@ -32,7 +32,11 @@ Prerequisites and setup - `Docker Compose `__ - v1.8 or higher - `Docker Toolbox `__ - Windows users only - `Go `__ - 1.7 or higher -- `Git Bash `__ - Windows users only; provides a better alternative to the Windows command prompt + +On Windows machines you will also need the following which provides a better alternative to the Windows command prompt: + +- `Git Bash `__ +- `make for MinGW `__ to be added to Git Bash Curl the artifacts and binaries & pull the docker images ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -206,7 +210,7 @@ Create the orderer genesis block: .. code:: bash - ./bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/orderer.genesis.block + ./bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block You can ignore the logs regarding intermediate certs, we are not using them in this crypto implementation. diff --git a/examples/e2e_cli/base/docker-compose-base.yaml b/examples/e2e_cli/base/docker-compose-base.yaml index f988ba3d745..d433b1a4fb6 100644 --- a/examples/e2e_cli/base/docker-compose-base.yaml +++ b/examples/e2e_cli/base/docker-compose-base.yaml @@ -20,7 +20,7 @@ services: working_dir: /opt/gopath/src/github.com/hyperledger/fabric command: orderer volumes: - - ../channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + - ../channel-artifacts/genesis.block:/var/hyperledger/orderer/orderer.genesis.block - ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp - ../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls ports: diff --git a/examples/e2e_cli/bootstrap.sh b/examples/e2e_cli/bootstrap.sh index 1ceedb430ba..a1d1d8b0a55 100755 --- a/examples/e2e_cli/bootstrap.sh +++ b/examples/e2e_cli/bootstrap.sh @@ -1,6 +1,6 @@ #!/bin/bash -export ARCH=$(uname -s | tr '[:upper:]' '[:lower:]')-$(go env GOARCH) +export ARCH=$(uname -s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(go env GOARCH) curl https://nexus.hyperledger.org/content/repositories/logs/sandbox/fabric-binary/${ARCH}-1.0.0-alpha2.tar.gz | tar xz cd release/${ARCH} diff --git a/examples/e2e_cli/end-to-end.rst b/examples/e2e_cli/end-to-end.rst index af101aa9a3d..131860bffaa 100644 --- a/examples/e2e_cli/end-to-end.rst +++ b/examples/e2e_cli/end-to-end.rst @@ -27,7 +27,11 @@ Prerequisites - `Xcode `__ - OSX only (this can take upwards of an hour) - `Docker Toolbox `__ - Windows users only - `Go `__ - 1.7 or higher -- `Git Bash `__ - Windows users only; provides a better alternative to the Windows command prompt + +On Windows machines you will also need the following which provides a better alternative to the Windows command prompt: + +- `Git Bash `__ +- `make for MinGW `__ to be added to Git Bash Setting the $GOPATH ^^^^^^^^^^^^^^^^^^^ @@ -281,7 +285,7 @@ Create the orderer genesis block: .. code:: bash - ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/orderer.genesis.block + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block You can ignore the logs regarding intermediate certs, we are not using them in this crypto implementation. diff --git a/examples/e2e_cli/generateArtifacts.sh b/examples/e2e_cli/generateArtifacts.sh index 1d3f26863f7..bfb65775ec4 100755 --- a/examples/e2e_cli/generateArtifacts.sh +++ b/examples/e2e_cli/generateArtifacts.sh @@ -10,7 +10,7 @@ export FABRIC_ROOT=$PWD/../.. export FABRIC_CFG_PATH=$PWD echo -OS_ARCH=$(echo "$(uname -s)-$(uname -m | sed 's/x86_64/amd64/g')" | awk '{print tolower($0)}') +OS_ARCH=$(echo "$(uname -s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(uname -m | sed 's/x86_64/amd64/g')" | awk '{print tolower($0)}') ## Using docker-compose template replace private key file names with constants function replacePrivateKey () { @@ -67,7 +67,9 @@ function generateChannelArtifacts() { echo "##########################################################" echo "######### Generating Orderer Genesis block ##############" echo "##########################################################" - $CONFIGTXGEN -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/orderer.genesis.block + # Note: For some unknown reason (at least for now) the block file can't be + # named orderer.genesis.block or the orderer will fail to launch! + $CONFIGTXGEN -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block echo echo "#################################################################"