mirror of
https://github.com/hyperledger/fabric-samples.git
synced 2026-06-17 23:45:10 +00:00
* seperate namespace for each organization Signed-off-by: Basil K Y <techiebasil@gmail.com> * rest server working Signed-off-by: Basil K Y <techiebasil@gmail.com> * use single namespace by default, fix k8s buider Signed-off-by: Basil K Y <techiebasil@gmail.com> * added ci test for testing k8s n/w on multiple namespaces Signed-off-by: Basil K Y <techiebasil@gmail.com> * fix: access rest server via gateway Signed-off-by: Basil K Y <techiebasil@gmail.com> Signed-off-by: Basil K Y <techiebasil@gmail.com>
114 lines
2.5 KiB
Bash
114 lines
2.5 KiB
Bash
#!/bin/bash
|
||
#
|
||
# Copyright IBM Corp All Rights Reserved
|
||
#
|
||
# SPDX-License-Identifier: Apache-2.0
|
||
#
|
||
|
||
function logging_init() {
|
||
# Reset the output and debug log files
|
||
printf '' > ${LOG_FILE} > ${DEBUG_FILE}
|
||
|
||
# Write all output to the control flow log to STDOUT
|
||
tail -f ${LOG_FILE} &
|
||
|
||
# Call the exit handler when we exit.
|
||
trap "exit_fn" EXIT
|
||
|
||
# Send stdout and stderr from child programs to the debug log file
|
||
exec 1>>${DEBUG_FILE} 2>>${DEBUG_FILE}
|
||
|
||
# There can be a race between the tail starting and the next log statement
|
||
sleep 0.5
|
||
}
|
||
|
||
function exit_fn() {
|
||
rc=$?
|
||
set +x
|
||
|
||
# Write an error icon to the current logging statement.
|
||
if [ "0" -ne $rc ]; then
|
||
pop_fn $rc
|
||
fi
|
||
|
||
# always remove the log trailer when the process exits.
|
||
pkill -P $$
|
||
}
|
||
|
||
function push_fn() {
|
||
#echo -ne " - entering ${FUNCNAME[1]} with arguments $@"
|
||
|
||
echo -ne " - $@ ..." >> ${LOG_FILE}
|
||
}
|
||
|
||
function log() {
|
||
echo -e $@ >> ${LOG_FILE}
|
||
}
|
||
|
||
function pop_fn() {
|
||
# echo exiting ${FUNCNAME[1]}
|
||
|
||
if [ $# -eq 0 ]; then
|
||
echo -ne "\r✅" >> ${LOG_FILE}
|
||
echo "" >> ${LOG_FILE}
|
||
return
|
||
fi
|
||
|
||
local res=$1
|
||
if [ $res -eq 0 ]; then
|
||
echo -ne "\r✅\n" >> ${LOG_FILE}
|
||
|
||
elif [ $res -eq 1 ]; then
|
||
echo -ne "\r⚠️\n" >> ${LOG_FILE}
|
||
|
||
elif [ $res -eq 2 ]; then
|
||
echo -ne "\r☠️\n" >> ${LOG_FILE}
|
||
|
||
elif [ $res -eq 127 ]; then
|
||
echo -ne "\r☠️\n" >> ${LOG_FILE}
|
||
|
||
else
|
||
echo -ne "\r\n" >> ${LOG_FILE}
|
||
fi
|
||
|
||
if [ $res -ne 0 ]; then
|
||
tail -${LOG_ERROR_LINES} network-debug.log >> ${LOG_FILE}
|
||
fi
|
||
|
||
#echo "" >> ${LOG_FILE}
|
||
}
|
||
|
||
# Apply the current environment to a k8s template and apply to the cluster.
|
||
function apply_template() {
|
||
|
||
echo "Applying template $1:"
|
||
cat $1 | envsubst
|
||
|
||
cat $1 | envsubst | kubectl -n $2 apply -f -
|
||
}
|
||
|
||
# Set the calling context to refer the peer binary to the correct org / peer instance
|
||
#
|
||
# todo: Expose the output of this function to a target that prints the context to STDOUT.
|
||
#
|
||
# e.g.:
|
||
# bash $ source $(network set-peer-context org1 peer2)
|
||
# bash $ peer chaincode list
|
||
# bash $ ...
|
||
function export_peer_context() {
|
||
local org=$1
|
||
local peer=$2
|
||
|
||
export FABRIC_CFG_PATH=${PWD}/config/${org}
|
||
export CORE_PEER_ADDRESS=${org}-${peer}.${DOMAIN}:${NGINX_HTTPS_PORT}
|
||
export CORE_PEER_MSPCONFIGPATH=${TEMP_DIR}/enrollments/${org}/users/${org}admin/msp
|
||
export CORE_PEER_TLS_ROOTCERT_FILE=${TEMP_DIR}/channel-msp/peerOrganizations/${org}/msp/tlscacerts/tlsca-signcert.pem
|
||
}
|
||
|
||
function absolute_path() {
|
||
local relative_path=$1
|
||
|
||
local abspath="$( cd "${relative_path}" && pwd )"
|
||
|
||
echo $abspath
|
||
}
|