Add metadata and activate examples to the CC README

Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
This commit is contained in:
Josh Kneubuhl 2022-04-03 10:13:44 -04:00
parent b616efeaab
commit 2235c66c24
2 changed files with 42 additions and 27 deletions

View file

@ -16,20 +16,22 @@ documentation.
## [Quickstart](../../test-network-k8s#quickstart) ## [Quickstart](../../test-network-k8s#quickstart)
```shell ```
export PATH=${PWD}/../../test-network-k8s:$PATH export PATH=${PWD}/../../test-network-k8s:$PATH
network kind network kind
```
```
network up network up
network channel create network channel create
``` ```
```
```shell network chaincode deploy ${PWD}
network chaincode deploy ${PWD} ```
```
network chaincode invoke asset-transfer-basic '{"Args":["InitLedger"]}' network chaincode metadata asset-transfer-basic
network chaincode query asset-transfer-basic '{"Args":["ReadAsset","asset1"]}' | jq network chaincode invoke asset-transfer-basic '{"Args":["InitLedger"]}'
network chaincode query asset-transfer-basic '{"Args":["ReadAsset","asset1"]}' | jq
``` ```
## Detailed Guide ## Detailed Guide
@ -67,8 +69,9 @@ network chaincode commit asset-transfer-basic
```shell ```shell
# execute the smart contract by name # execute the smart contract by name
network chaincode invoke asset-transfer-basic '{"Args":["InitLedger"]}' network chaincode metadata asset-transfer-basic
network chaincode query asset-transfer-basic '{"Args":["ReadAsset","asset1"]}' network chaincode invoke asset-transfer-basic '{"Args":["InitLedger"]}'
network chaincode query asset-transfer-basic '{"Args":["ReadAsset","asset1"]}'
``` ```
```shell ```shell
@ -101,7 +104,7 @@ Set the "address" attribute in the project's [ccpackage/connection.json](ccpacka
``` ```
```shell ```shell
network chaincode package $PWD/ccpackage/ $PWD/build/asset-transfer-debug.tgz network cc package $PWD/ccpackage/ $PWD/build/asset-transfer-debug.tgz
``` ```
### Launch ### Launch
@ -138,17 +141,14 @@ After the contract main has launched, install, approve, commit, and invoke the c
```shell ```shell
# Complete the chaincode lifecycle # Complete the chaincode lifecycle
export CORE_CHAINCODE_ID_NAME=$(network chaincode id $PWD/build/asset-transfer-debug.tgz) network cc activate asset-transfer-debug $PWD/build/asset-transfer-debug.tgz
network chaincode install $PWD/build/asset-transfer-debug.tgz
network chaincode approve asset-transfer-debug $CORE_CHAINCODE_ID_NAME
network chaincode commit asset-transfer-debug
``` ```
```shell ```shell
# execute the smart contract by name # execute the smart contract by name
network chaincode invoke asset-transfer-debug '{"Args":["InitLedger"]}' network cc metadata asset-transfer-debug
network chaincode query asset-transfer-debug '{"Args":["ReadAsset","asset1"]}' network cc invoke asset-transfer-debug '{"Args":["InitLedger"]}'
network cc query asset-transfer-debug '{"Args":["ReadAsset","asset1"]}'
``` ```
## Tear Down ## Tear Down

View file

@ -20,9 +20,21 @@ function deploy_chaincode() {
extract_chaincode_name ${cc_package} extract_chaincode_name ${cc_package}
launch_chaincode ${cc_package} launch_chaincode ${cc_package}
install_chaincode ${cc_package}
approve_chaincode ${CHAINCODE_NAME} ${CHAINCODE_ID} activate_chaincode ${CHAINCODE_NAME} ${cc_package}
commit_chaincode ${CHAINCODE_NAME} }
# Convenience routine to "do everything other than package and launch" a sample CC.
# This is useful in local debugging scenarios, where
function activate_chaincode() {
local cc_name=$1
local cc_package=$2
set_chaincode_id ${cc_package}
install_chaincode ${cc_package}
approve_chaincode ${cc_name} ${CHAINCODE_ID}
commit_chaincode ${cc_name}
} }
function query_chaincode() { function query_chaincode() {
@ -202,7 +214,8 @@ function extract_chaincode_name() {
function launch_chaincode() { function launch_chaincode() {
local cc_package=$1 local cc_package=$1
id_chaincode ${cc_package} set_chaincode_id ${cc_package}
extract_chaincode_image ${cc_package} extract_chaincode_image ${cc_package}
extract_chaincode_name ${cc_package} extract_chaincode_name ${cc_package}
@ -210,7 +223,7 @@ function launch_chaincode() {
launch_chaincode_service org1 $CHAINCODE_ID $CHAINCODE_IMAGE peer2 launch_chaincode_service org1 $CHAINCODE_ID $CHAINCODE_IMAGE peer2
} }
function id_chaincode() { function set_chaincode_id() {
local cc_package=$1 local cc_package=$1
cc_sha256=$(shasum -a 256 ${cc_package} | tr -s ' ' | cut -d ' ' -f 1) cc_sha256=$(shasum -a 256 ${cc_package} | tr -s ' ' | cut -d ' ' -f 1)
@ -231,13 +244,18 @@ function chaincode_command_group() {
deploy_chaincode $@ deploy_chaincode $@
log "🏁 - Chaincode is ready." log "🏁 - Chaincode is ready."
elif [ "${COMMAND}" == "activate" ]; then
log "Activating chaincode"
activate_chaincode $@
log "🏁 - Chaincode is ready."
elif [ "${COMMAND}" == "package" ]; then elif [ "${COMMAND}" == "package" ]; then
log "Packaging chaincode" log "Packaging chaincode"
package_chaincode $@ package_chaincode $@
log "🏁 - Chaincode package is ready." log "🏁 - Chaincode package is ready."
elif [ "${COMMAND}" == "id" ]; then elif [ "${COMMAND}" == "id" ]; then
id_chaincode $@ set_chaincode_id $@
log $CHAINCODE_ID log $CHAINCODE_ID
elif [ "${COMMAND}" == "launch" ]; then elif [ "${COMMAND}" == "launch" ]; then
@ -269,9 +287,6 @@ function chaincode_command_group() {
elif [ "${COMMAND}" == "metadata" ]; then elif [ "${COMMAND}" == "metadata" ]; then
query_chaincode_metadata $@ >> ${LOG_FILE} query_chaincode_metadata $@ >> ${LOG_FILE}
# todo: maybe...
# elif [ "${COMMAND}" == "activate" ]; then
else else
print_help print_help
exit 1 exit 1