Skip to content

Commit

Permalink
[FAB-15316] Shellcheck improvements
Browse files Browse the repository at this point in the history
 - double quote variables to avoid splitting
 - use heredoc to generate changelog
 - This commit also adds back changes that were reverted in
 commit d73c344
 and fixes the issue in bootstrap.sh that was introduced in
 commit c322e83.

 Change-Id: I2ac5c41f93b8a663d2f0d3edb066c65cc4db4e1c

Change-Id: Id7a30329cdd1064ea79f9f5ee5fa882179fc3cda
Signed-off-by: Swetha Repakula <[email protected]>
  • Loading branch information
swetharepakula committed May 25, 2019
1 parent a115763 commit c1685c7
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 46 deletions.
72 changes: 36 additions & 36 deletions scripts/bootstrap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
#

# if version not passed in, default to latest released version
export VERSION=1.4.1
VERSION=1.4.1
# if ca version not passed in, default to latest released version
export CA_VERSION=1.4.1
CA_VERSION=1.4.1
# current version of thirdparty images (couchdb, kafka and zookeeper) released
export THIRDPARTY_IMAGE_VERSION=0.4.15
export ARCH=$(echo "$(uname -s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(uname -m | sed 's/x86_64/amd64/g')")
export MARCH=$(uname -m)
THIRDPARTY_IMAGE_VERSION=0.4.15
ARCH=$(echo "$(uname -s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(uname -m | sed 's/x86_64/amd64/g')")
MARCH=$(uname -m)

printHelp() {
echo "Usage: bootstrap.sh [version [ca_version [thirdparty_version]]] [options]"
Expand All @@ -35,8 +35,8 @@ dockerFabricPull() {
for IMAGES in peer orderer ccenv tools baseos nodeenv javaenv; do
echo "==> FABRIC IMAGE: $IMAGES"
echo
docker pull hyperledger/fabric-$IMAGES:$FABRIC_TAG
docker tag hyperledger/fabric-$IMAGES:$FABRIC_TAG hyperledger/fabric-$IMAGES
docker pull "hyperledger/fabric-$IMAGES:$FABRIC_TAG"
docker tag "hyperledger/fabric-$IMAGES:$FABRIC_TAG hyperledger/fabric-$IMAGES"
done
}

Expand All @@ -45,17 +45,17 @@ dockerThirdPartyImagesPull() {
for IMAGES in couchdb kafka zookeeper; do
echo "==> THIRDPARTY DOCKER IMAGE: $IMAGES"
echo
docker pull hyperledger/fabric-$IMAGES:$THIRDPARTY_TAG
docker tag hyperledger/fabric-$IMAGES:$THIRDPARTY_TAG hyperledger/fabric-$IMAGES
docker pull "hyperledger/fabric-$IMAGES:$THIRDPARTY_TAG"
docker tag "hyperledger/fabric-$IMAGES:$THIRDPARTY_TAG hyperledger/fabric-$IMAGES"
done
}

dockerCaPull() {
local CA_TAG=$1
echo "==> FABRIC CA IMAGE"
echo
docker pull hyperledger/fabric-ca:$CA_TAG
docker tag hyperledger/fabric-ca:$CA_TAG hyperledger/fabric-ca
docker pull "hyperledger/fabric-ca:$CA_TAG"
docker tag "hyperledger/fabric-ca:$CA_TAG hyperledger/fabric-ca"
}

samplesInstall() {
Expand All @@ -82,7 +82,7 @@ samplesInstall() {
binaryIncrementalDownload() {
local BINARY_FILE=$1
local URL=$2
curl -f -s -C - ${URL} -o ${BINARY_FILE} || rc=$?
curl -f -s -C - "${URL}" -o "${BINARY_FILE}" || rc=$?
# Due to limitations in the current Nexus repo:
# curl returns 33 when there's a resume attempt with no more bytes to download
# curl returns 2 after finishing a resumed download
Expand All @@ -94,16 +94,16 @@ binaryIncrementalDownload() {
if [ -z "$rc" ] || [ $rc -eq 33 ] || [ $rc -eq 2 ]; then
# The checksum validates that RC 33 or 2 are not real failures
echo "==> File downloaded. Verifying the md5sum..."
localMd5sum=$(md5sum ${BINARY_FILE} | awk '{print $1}')
remoteMd5sum=$(curl -s ${URL}.md5)
localMd5sum=$(md5sum "${BINARY_FILE}" | awk '{print $1}')
remoteMd5sum=$(curl -s "${URL}".md5)
if [ "$localMd5sum" == "$remoteMd5sum" ]; then
echo "==> Extracting ${BINARY_FILE}..."
tar xzf ./${BINARY_FILE} --overwrite
tar xzf ./"${BINARY_FILE}" --overwrite
echo "==> Done."
rm -f ${BINARY_FILE} ${BINARY_FILE}.md5
rm -f $"{BINARY_FILE}" "${BINARY_FILE}".md5
else
echo "Download failed: the local md5sum is different from the remote md5sum. Please try again."
rm -f ${BINARY_FILE} ${BINARY_FILE}.md5
rm -f "${BINARY_FILE}" "${BINARY_FILE}".md5
exit 1
fi
else
Expand All @@ -118,17 +118,17 @@ binaryIncrementalDownload() {
binaryDownload() {
local BINARY_FILE=$1
local URL=$2
echo "===> Downloading: " ${URL}
echo "===> Downloading: " "${URL}"
# Check if a previous failure occurred and the file was partially downloaded
if [ -e ${BINARY_FILE} ]; then
if [ -e "${BINARY_FILE}" ]; then
echo "==> Partial binary file found. Resuming download..."
binaryIncrementalDownload ${BINARY_FILE} ${URL}
binaryIncrementalDownload "${BINARY_FILE}" "${URL}"
else
curl ${URL} | tar xz || rc=$?
if [ ! -z "$rc" ]; then
curl "${URL}" | tar xz || rc=$?
if [ -n "$rc" ]; then
echo "==> There was an error downloading the binary file. Switching to incremental download."
echo "==> Downloading file..."
binaryIncrementalDownload ${BINARY_FILE} ${URL}
binaryIncrementalDownload "${BINARY_FILE}" "${URL}"
else
echo "==> Done."
fi
Expand All @@ -137,15 +137,15 @@ binaryDownload() {

binariesInstall() {
echo "===> Downloading version ${FABRIC_TAG} platform specific fabric binaries"
binaryDownload ${BINARY_FILE} https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/${ARCH}-${VERSION}/${BINARY_FILE}
binaryDownload "${BINARY_FILE}" "https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric/${ARCH}-${VERSION}/${BINARY_FILE}"
if [ $? -eq 22 ]; then
echo
echo "------> ${FABRIC_TAG} platform specific fabric binary is not available to download <----"
echo
fi

echo "===> Downloading version ${CA_TAG} platform specific fabric-ca-client binary"
binaryDownload ${CA_BINARY_FILE} https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric-ca/hyperledger-fabric-ca/${ARCH}-${CA_VERSION}/${CA_BINARY_FILE}
binaryDownload "${CA_BINARY_FILE}" "https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric-ca/hyperledger-fabric-ca/${ARCH}-${CA_VERSION}/${CA_BINARY_FILE}"
if [ $? -eq 22 ]; then
echo
echo "------> ${CA_TAG} fabric-ca-client binary is not available to download (Available from 1.1.0-rc1) <----"
Expand All @@ -154,18 +154,18 @@ binariesInstall() {
}

dockerInstall() {
which docker >& /dev/null
command -v docker >& /dev/null
NODOCKER=$?
if [ "${NODOCKER}" == 0 ]; then
echo "===> Pulling fabric Images"
dockerFabricPull ${FABRIC_TAG}
dockerFabricPull "${FABRIC_TAG}"
echo "===> Pulling fabric ca Image"
dockerCaPull ${CA_TAG}
dockerCaPull "${CA_TAG}"
echo "===> Pulling thirdparty docker images"
dockerThirdPartyImagesPull ${THIRDPARTY_TAG}
dockerThirdPartyImagesPull "${THIRDPARTY_TAG}"
echo
echo "===> List out hyperledger docker images"
docker images | grep hyperledger*
docker images | grep hyperledger
else
echo "========================================================="
echo "Docker not installed, bypassing download of Fabric images"
Expand All @@ -179,11 +179,11 @@ BINARIES=true

# Parse commandline args pull out
# version and/or ca-version strings first
if [ ! -z "$1" -a "${1:0:1}" != "-" ]; then
if [ -n "$1" ] && [ "${1:0:1}" != "-" ]; then
VERSION=$1;shift
if [ ! -z "$1" -a "${1:0:1}" != "-" ]; then
if [ -n "$1" ] && [ "${1:0:1}" != "-" ]; then
CA_VERSION=$1;shift
if [ ! -z "$1" -a "${1:0:1}" != "-" ]; then
if [ -n "$1" ] && [ "${1:0:1}" != "-" ]; then
THIRDPARTY_IMAGE_VERSION=$1;shift
fi
fi
Expand All @@ -196,9 +196,9 @@ if [[ $VERSION =~ ^1\.[0-1]\.* ]]; then
export THIRDPARTY_TAG=${MARCH}-${THIRDPARTY_IMAGE_VERSION}
else
# starting with 1.2.0, multi-arch images will be default
: ${CA_TAG:="$CA_VERSION"}
: ${FABRIC_TAG:="$VERSION"}
: ${THIRDPARTY_TAG:="$THIRDPARTY_IMAGE_VERSION"}
: "${CA_TAG:="$CA_VERSION"}"
: "${FABRIC_TAG:="$VERSION"}"
: "${THIRDPARTY_TAG:="$THIRDPARTY_IMAGE_VERSION"}"
fi

BINARY_FILE=hyperledger-fabric-${ARCH}-${VERSION}.tar.gz
Expand Down
9 changes: 5 additions & 4 deletions scripts/changelog.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,11 @@
# SPDX-License-Identifier: Apache-2.0
#

cat > CHANGELOG.new << EOF
## "${2}"
echo "## $2\n$(date)" >> CHANGELOG.new
echo "" >> CHANGELOG.new
git log $1..HEAD --oneline | grep -v Merge | sed -e "s/\[\(FAB-[0-9]*\)\]/\[\1\](https:\/\/jira.hyperledger.org\/browse\/\1\)/" -e "s/ \(FAB-[0-9]*\)/ \[\1\](https:\/\/jira.hyperledger.org\/browse\/\1\)/" -e "s/\([0-9|a-z]*\)/* \[\1\](https:\/\/github.com\/hyperledger\/fabric\/commit\/\1)/" >> CHANGELOG.new
echo "" >> CHANGELOG.new
$(git log "$1..HEAD" --oneline | grep -v Merge | sed -e "s/\[\(FAB-[0-9]*\)\]/\[\1\](https:\/\/jira.hyperledger.org\/browse\/\1\)/" -e "s/ \(FAB-[0-9]*\)/ \[\1\](https:\/\/jira.hyperledger.org\/browse\/\1\)/" -e "s/\([0-9|a-z]*\)/* \[\1\](https:\/\/github.com\/hyperledger\/fabric\/commit\/\1)/")
EOF
cat CHANGELOG.md >> CHANGELOG.new
mv -f CHANGELOG.new CHANGELOG.md
12 changes: 6 additions & 6 deletions scripts/check_trailingspaces.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@
# Copyright Hitachi, Ltd. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0

COMMIT_FILES=`git diff --name-only --diff-filter=ACMRTUXB HEAD | grep -Ev '(^|/)vendor/'`
COMMIT_FILES=$(git diff --name-only --diff-filter=ACMRTUXB HEAD | grep -Ev '(^|/)vendor/')

echo "Checking trailing spaces ..."
for filename in `echo $COMMIT_FILES`; do
if [[ `file $filename` == *"ASCII text"* ]]; then
if [ ! -z "`egrep -l " +$" $filename`" ]; then
for filename in $COMMIT_FILES; do
if [[ $(file "$filename") == *"ASCII text"* ]]; then
if grep -El " +$" "$filename"; then
FOUND_TRAILING='yes'
echo "Error: Trailing spaces found in file:$filename, lines:"
egrep -n " +$" $filename
grep -En " +$" "$filename"
fi
fi
done

if [ ! -z ${FOUND_TRAILING+x} ]; then
if [[ -n ${FOUND_TRAILING+x} ]]; then
echo "Please omit trailing spaces and make again."
exit 1
fi

0 comments on commit c1685c7

Please sign in to comment.