Skip to content

Commit

Permalink
[FAB-8445] Adding IMAGE_TAG option to byfn
Browse files Browse the repository at this point in the history
Adding IMAGE_TAG option to byfn script to launch specific
version of fabric network

Usage: ./byfn.sh up -i 1.1.0-alpha

Change-Id: I67a1d01257abd7021ea344c354c6e1c97eebf4f7
Signed-off-by: Surya <suryalnvs@gmail.com>
Signed-off-by: Jason Yellick <jyellick@us.ibm.com>
  • Loading branch information
suryalnvs authored and Jason Yellick committed Feb 23, 2018
1 parent e4a0666 commit 4f2cd8d
Show file tree
Hide file tree
Showing 8 changed files with 28 additions and 16 deletions.
1 change: 1 addition & 0 deletions first-network/.env
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
COMPOSE_PROJECT_NAME=net
IMAGE_TAG=latest
2 changes: 1 addition & 1 deletion first-network/base/docker-compose-base.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ services:

orderer.example.com:
container_name: orderer.example.com
image: hyperledger/fabric-orderer
image: hyperledger/fabric-orderer:$IMAGE_TAG
environment:
- ORDERER_GENERAL_LOGLEVEL=debug
- ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
Expand Down
2 changes: 1 addition & 1 deletion first-network/base/peer-base.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ version: '2'

services:
peer-base:
image: hyperledger/fabric-peer
image: hyperledger/fabric-peer:$IMAGE_TAG
environment:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
# the following setting starts chaincode containers on the same
Expand Down
14 changes: 10 additions & 4 deletions first-network/byfn.sh
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ export FABRIC_CFG_PATH=${PWD}
# Print the usage message
function printHelp () {
echo "Usage: "
echo " byfn.sh up|down|restart|generate [-c <channel name>] [-t <timeout>] [-d <delay>] [-f <docker-compose-file>] [-s <dbtype>]"
echo " byfn.sh up|down|restart|generate [-c <channel name>] [-t <timeout>] [-d <delay>] [-f <docker-compose-file>] [-s <dbtype>] [-i <imagetag>]"
echo " byfn.sh -h|--help (print this message)"
echo " <mode> - one of 'up', 'down', 'restart' or 'generate'"
echo " - 'up' - bring up the network with docker-compose up"
Expand All @@ -47,12 +47,14 @@ function printHelp () {
echo " -f <docker-compose-file> - specify which docker-compose file use (defaults to docker-compose-cli.yaml)"
echo " -s <dbtype> - the database backend to use: goleveldb (default) or couchdb"
echo " -l <language> - the chaincode language: golang (default) or node"
echo " -i <imagetag> - the tag to be used to launch the network (defaults to \"latest\")"
echo
echo "Typically, one would first generate the required certificates and "
echo "genesis block, then bring up the network. e.g.:"
echo
echo " byfn.sh generate -c mychannel"
echo " byfn.sh up -c mychannel -s couchdb"
echo " byfn.sh up -c mychannel -s couchdb -i 1.1.0-alpha"
echo " byfn.sh up -l node"
echo " byfn.sh down -c mychannel"
echo
Expand Down Expand Up @@ -112,9 +114,9 @@ function networkUp () {
generateChannelArtifacts
fi
if [ "${IF_COUCHDB}" == "couchdb" ]; then
docker-compose -f $COMPOSE_FILE -f $COMPOSE_FILE_COUCH up -d 2>&1
IMAGE_TAG=$IMAGETAG docker-compose -f $COMPOSE_FILE -f $COMPOSE_FILE_COUCH up -d 2>&1
else
docker-compose -f $COMPOSE_FILE up -d 2>&1
IMAGE_TAG=$IMAGETAG docker-compose -f $COMPOSE_FILE up -d 2>&1
fi
if [ $? -ne 0 ]; then
echo "ERROR !!!! Unable to start network"
Expand Down Expand Up @@ -322,6 +324,8 @@ COMPOSE_FILE=docker-compose-cli.yaml
COMPOSE_FILE_COUCH=docker-compose-couch.yaml
# use golang as the default language for chaincode
LANGUAGE=golang
# default image tag
IMAGETAG="latest"
# Parse commandline args
if [ "$1" = "-m" ];then # supports old usage, muscle memory is powerful!
shift
Expand All @@ -341,7 +345,7 @@ else
exit 1
fi

while getopts "h?c:t:d:f:s:l:" opt; do
while getopts "h?c:t:d:f:s:l:i:" opt; do
case "$opt" in
h|\?)
printHelp
Expand All @@ -359,6 +363,8 @@ while getopts "h?c:t:d:f:s:l:" opt; do
;;
l) LANGUAGE=$OPTARG
;;
i) IMAGETAG=`uname -m`"-"$OPTARG
;;
esac
done

Expand Down
2 changes: 1 addition & 1 deletion first-network/docker-compose-cli.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ services:

cli:
container_name: cli
image: hyperledger/fabric-tools
image: hyperledger/fabric-tools:$IMAGE_TAG
tty: true
environment:
- GOPATH=/opt/gopath
Expand Down
8 changes: 4 additions & 4 deletions first-network/docker-compose-couch.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ networks:
services:
couchdb0:
container_name: couchdb0
image: hyperledger/fabric-couchdb
image: hyperledger/fabric-couchdb:$IMAGE_TAG
# Populate the COUCHDB_USER and COUCHDB_PASSWORD to set an admin user and password
# for CouchDB. This will prevent CouchDB from operating in an "Admin Party" mode.
environment:
Expand All @@ -38,7 +38,7 @@ services:

couchdb1:
container_name: couchdb1
image: hyperledger/fabric-couchdb
image: hyperledger/fabric-couchdb:$IMAGE_TAG
# Populate the COUCHDB_USER and COUCHDB_PASSWORD to set an admin user and password
# for CouchDB. This will prevent CouchDB from operating in an "Admin Party" mode.
environment:
Expand All @@ -65,7 +65,7 @@ services:

couchdb2:
container_name: couchdb2
image: hyperledger/fabric-couchdb
image: hyperledger/fabric-couchdb:$IMAGE_TAG
# Populate the COUCHDB_USER and COUCHDB_PASSWORD to set an admin user and password
# for CouchDB. This will prevent CouchDB from operating in an "Admin Party" mode.
environment:
Expand All @@ -92,7 +92,7 @@ services:

couchdb3:
container_name: couchdb3
image: hyperledger/fabric-couchdb
image: hyperledger/fabric-couchdb:$IMAGE_TAG
# Populate the COUCHDB_USER and COUCHDB_PASSWORD to set an admin user and password
# for CouchDB. This will prevent CouchDB from operating in an "Admin Party" mode.
environment:
Expand Down
4 changes: 2 additions & 2 deletions first-network/docker-compose-e2e-template.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ networks:
byfn:
services:
ca0:
image: hyperledger/fabric-ca
image: hyperledger/fabric-ca:$IMAGE_TAG
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca-org1
Expand All @@ -26,7 +26,7 @@ services:
- byfn

ca1:
image: hyperledger/fabric-ca
image: hyperledger/fabric-ca:$IMAGE_TAG
environment:
- FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
- FABRIC_CA_SERVER_CA_NAME=ca-org2
Expand Down
11 changes: 8 additions & 3 deletions first-network/eyfn.sh
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ function printHelp () {
echo " -f <docker-compose-file> - specify which docker-compose file use (defaults to docker-compose-cli.yaml)"
echo " -s <dbtype> - the database backend to use: goleveldb (default) or couchdb"
echo " -l <language> - the chaincode language: golang (default) or node"
echo " -i <imagetag> - the tag to be used to launch the network (defaults to \"latest\")"
echo
echo "Typically, one would first generate the required certificates and "
echo "genesis block, then bring up the network. e.g.:"
Expand Down Expand Up @@ -97,9 +98,9 @@ function networkUp () {
fi
# start org3 peers
if [ "${IF_COUCHDB}" == "couchdb" ]; then
docker-compose -f $COMPOSE_FILE_ORG3 -f $COMPOSE_FILE_COUCH_ORG3 up -d 2>&1
IMAGE_TAG=${IMAGETAG} docker-compose -f $COMPOSE_FILE_ORG3 -f $COMPOSE_FILE_COUCH_ORG3 up -d 2>&1
else
docker-compose -f $COMPOSE_FILE_ORG3 up -d 2>&1
IMAGE_TAG=$IMAGETAG docker-compose -f $COMPOSE_FILE_ORG3 up -d 2>&1
fi
if [ $? -ne 0 ]; then
echo "ERROR !!!! Unable to start Org3 network"
Expand Down Expand Up @@ -241,6 +242,8 @@ COMPOSE_FILE_ORG3=docker-compose-org3.yaml
COMPOSE_FILE_COUCH_ORG3=docker-compose-couch-org3.yaml
# use golang as the default language for chaincode
LANGUAGE=golang
# default image tag
IMAGETAG="latest"

# Parse commandline args
if [ "$1" = "-m" ];then # supports old usage, muscle memory is powerful!
Expand All @@ -260,7 +263,7 @@ else
printHelp
exit 1
fi
while getopts "h?c:t:d:f:s:l:" opt; do
while getopts "h?c:t:d:f:s:l:i:" opt; do
case "$opt" in
h|\?)
printHelp
Expand All @@ -278,6 +281,8 @@ while getopts "h?c:t:d:f:s:l:" opt; do
;;
l) LANGUAGE=$OPTARG
;;
i) IMAGETAG=$OPTARG
;;
esac
done

Expand Down

0 comments on commit 4f2cd8d

Please sign in to comment.