Skip to content

Commit 459ff72

Browse files
authored
Merge branch 'main' into hardcodeed-fablo-config
2 parents 90e3cdd + 365ba4b commit 459ff72

21 files changed

+887
-222
lines changed

.github/workflows/release-on-tag.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Release on tag
33
on:
44
push:
55
tags:
6-
- 'v*.*.*'
6+
- '*.*.*'
77

88
jobs:
99
release:
@@ -53,7 +53,7 @@ jobs:
5353
5454
- name: Create next development version PR
5555
run: |
56-
./bump_version.sh unstable
56+
sh ./bump_version.sh unstable
5757
NEW_VERSION=$(jq -r '.version' <"$GITHUB_WORKSPACE/package.json")
5858
BRANCH_NAME="bump-version-to-$NEW_VERSION"
5959
git checkout -b $BRANCH_NAME

.github/workflows/test-on-push.yml

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ jobs:
4040
- name: Lint
4141
run: npm run lint && ./lint.sh
4242

43+
4344
# test-k8:
4445
# needs: test-main
4546
# runs-on: ubuntu-latest
@@ -172,10 +173,32 @@ jobs:
172173
173174
test-05-v3:
174175
needs: test-main
175-
runs-on: ubuntu-latest
176+
runs-on: macos-15
176177
steps:
177178
- name: Check out repository code
178179
uses: actions/checkout@v2
180+
181+
- name: Install Docker + Colima
182+
run: |
183+
brew update
184+
brew install qemu colima docker
185+
brew uninstall --ignore-dependencies lima
186+
curl https://raw.githubusercontent.com/Homebrew/homebrew-core/45464b6c4788a80be3f131ab5e2a4468cdfa960c/Formula/l/lima.rb > lima.rb
187+
brew install lima.rb
188+
LIMACTL_PATH=$(brew --prefix)/bin/limactl
189+
sudo curl -L -o $LIMACTL_PATH https://github.com/mikekazakov/lima-nohvf/raw/master/limactl
190+
sudo chmod +x $LIMACTL_PATH
191+
colima start --network-address --arch arm64 --vm-type=qemu
192+
mkdir -p ~/.docker/cli-plugins
193+
brew install docker-compose
194+
ln -sfn $(brew --prefix)/opt/docker-compose/bin/docker-compose ~/.docker/cli-plugins/docker-compose
195+
196+
- name: Install dependencies
197+
run: |
198+
brew install shellcheck yamllint
199+
npm install -g npm@latest
200+
npm install
201+
179202
180203
- name: Build Fablo
181204
run: |

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ node_modules
77
.idea
88
.vscode
99
samples/invalid-fablo-config.json
10+
.DS_Store

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ See `git help commit`:
3939
- **Ent-to-End network tests**: Execute relevant shell scripts from `e2e-network` directory with E2E network tests.
4040
3. **Update snapshots**: If you've made changes that affect snapshots (esp. any template changes), update them using `npm run test:e2e-update`.
4141

42-
## ## Running Fablo locally
42+
## Running Fablo locally
4343

4444
You may want to verify some changes by running Fablo locally. To do so:
4545
1. Execute `./fablo-build.sh` script to create a Fablo Docker image locally.

e2e-network/docker/test-03-private-data.sh

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -89,18 +89,11 @@ expectInvoke "peer0.org2.example.com" "my-channel1" "or-policy-chaincode" \
8989
'tx creator does not have write access permission on privatedata in chaincodeName:or-policy-chaincode collectionName: org1-collection' \
9090
'{"message":"Q29ycnVwdGVkIG1lc3NhZ2U="}'
9191

92-
# TODO to be added in https://github.com/hyperledger-labs/fablo/issues/466
93-
#expectInvoke "peer0.org1.example.com,peer0.org2.example.com" "my-channel1" "and-policy-chaincode" \
94-
# '{"Args":["KVContract:putPrivateMessage", "both-orgs-collection"]}' \
95-
# '{\"success\":\"OK\"}' \
96-
# '{"message":"RG9udCBjaGFuZ2UgbWUgcGx6"}'
97-
#expectInvoke "peer0.org2.example.com,peer0.org1.example.com" "my-channel1" "and-policy-chaincode" \
98-
# '{"Args":["KVContract:getPrivateMessage", "both-orgs-collection"]}' \
99-
# 'tx creator does not have read access permission on privatedata in chaincodeName:and-policy-chaincode collectionName: org1-collection'
100-
#expectInvoke "peer0.org2.example.com,peer0.org1.example.com" "my-channel1" "and-policy-chaincode" \
101-
# '{"Args":["KVContract:putPrivateMessage", "both-orgs-collection"]}' \
102-
# '{\"success\":\"OK\"}' \
103-
# '{"message":"QW5kIGFub3RoZXIgb25l"}'
104-
#expectInvoke "peer0.org1.example.com,peer0.org2.example.com" "my-channel1" "and-policy-chaincode" \
105-
# '{"Args":["KVContract:getPrivateMessage", "both-orgs-collection"]}' \
106-
# 'Error: could not assemble transaction: ProposalResponsePayloads do not match'
92+
# Org1 and Org2: Test chaincode with AND endorsement policy
93+
expectInvoke "peer0.org2.example.com,peer0.org1.example.com" "my-channel1" "and-policy-chaincode" \
94+
'{"Args":["KVContract:putPrivateMessage", "both-orgs-collection"]}' \
95+
'{\"success\":\"OK\"}' \
96+
'{"message":"QW5kIGFub3RoZXIgb25l"}'
97+
expectInvoke "peer0.org1.example.com,peer0.org2.example.com" "my-channel1" "and-policy-chaincode" \
98+
'{"Args":["KVContract:getPrivateMessage", "both-orgs-collection"]}' \
99+
'{\"success\":\"And another one\"}'

e2e/__snapshots__/fablo-config-hlf2-1org-1chaincode-raft-explorer.json.test.ts.snap

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1592,29 +1592,22 @@ chaincodeInvoke() {
15921592
echo "Usage: fablo chaincode invoke <peer_domains_comma_separated> <channel_name> <chaincode_name> <command> [transient]"
15931593
exit 1
15941594
fi
1595-
cli=""
1596-
peer_addresses=""
15971595
1598-
peer_certs=""
1599-
1600-
if [[ "$1" == *"peer0.org1.example.com"* ]]; then
1596+
# Cli needs to be from the same org as the first peer
1597+
if [[ "$1" == "peer0.org1.example.com"* ]]; then
16011598
cli="cli.org1.example.com"
1602-
peer_addresses="$peer_addresses,peer0.org1.example.com:7041"
1599+
fi
16031600
1604-
peer_certs="$peer_certs,crypto/peers/peer0.org1.example.com/tls/ca.crt"
1601+
peer_addresses="$1"
1602+
peer_addresses="\${peer_addresses//peer0.org1.example.com/peer0.org1.example.com:7041}"
16051603
1606-
fi
1607-
if [ -z "$peer_addresses" ]; then
1608-
echo "Unknown peers: $1"
1609-
exit 1
1610-
fi
1604+
peer_certs="$1"
1605+
peer_certs="\${peer_certs//peer0.org1.example.com/crypto/peers/peer0.org1.example.com/tls/ca.crt}"
16111606
16121607
if [ "$2" = "my-channel1" ]; then
16131608
ca_cert="crypto-orderer/tlsca.orderer.example.com-cert.pem"
16141609
fi
1615-
1616-
peerChaincodeInvokeTls "$cli" "\${peer_addresses:1}" "$2" "$3" "$4" "$5" "\${peer_certs:1}" "$ca_cert"
1617-
1610+
peerChaincodeInvokeTls "$cli" "$peer_addresses" "$2" "$3" "$4" "$5" "$peer_certs" "$ca_cert"
16181611
}
16191612
"
16201613
`;
@@ -1627,8 +1620,6 @@ source "$FABLO_NETWORK_ROOT/fabric-docker/scripts/channel-query-functions.sh"
16271620
set -eu
16281621
16291622
channelQuery() {
1630-
echo "-> Channel query: " + "$@"
1631-
16321623
if [ "$#" -eq 1 ]; then
16331624
printChannelsHelp
16341625

e2e/__snapshots__/fablo-config-hlf2-1org-1chaincode.json.test.ts.snap

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1509,26 +1509,20 @@ chaincodeInvoke() {
15091509
echo "Usage: fablo chaincode invoke <peer_domains_comma_separated> <channel_name> <chaincode_name> <command> [transient]"
15101510
exit 1
15111511
fi
1512-
cli=""
1513-
peer_addresses=""
15141512
1515-
if [[ "$1" == *"peer0.org1.example.com"* ]]; then
1513+
# Cli needs to be from the same org as the first peer
1514+
if [[ "$1" == "peer0.org1.example.com"* ]]; then
15161515
cli="cli.org1.example.com"
1517-
peer_addresses="$peer_addresses,peer0.org1.example.com:7041"
1518-
15191516
fi
1520-
if [[ "$1" == *"peer1.org1.example.com"* ]]; then
1517+
if [[ "$1" == "peer1.org1.example.com"* ]]; then
15211518
cli="cli.org1.example.com"
1522-
peer_addresses="$peer_addresses,peer1.org1.example.com:7042"
1523-
1524-
fi
1525-
if [ -z "$peer_addresses" ]; then
1526-
echo "Unknown peers: $1"
1527-
exit 1
15281519
fi
15291520
1530-
peerChaincodeInvoke "$cli" "\${peer_addresses:1}" "$2" "$3" "$4" "$5"
1521+
peer_addresses="$1"
1522+
peer_addresses="\${peer_addresses//peer0.org1.example.com/peer0.org1.example.com:7041}"
1523+
peer_addresses="\${peer_addresses//peer1.org1.example.com/peer1.org1.example.com:7042}"
15311524
1525+
peerChaincodeInvoke "$cli" "$peer_addresses" "$2" "$3" "$4" "$5"
15321526
}
15331527
"
15341528
`;
@@ -1541,8 +1535,6 @@ source "$FABLO_NETWORK_ROOT/fabric-docker/scripts/channel-query-functions.sh"
15411535
set -eu
15421536
15431537
channelQuery() {
1544-
echo "-> Channel query: " + "$@"
1545-
15461538
if [ "$#" -eq 1 ]; then
15471539
printChannelsHelp
15481540

e2e/__snapshots__/fablo-config-hlf2-2orgs-2chaincodes-private-data.yaml.test.ts.snap

Lines changed: 9 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2179,31 +2179,24 @@ chaincodeInvoke() {
21792179
echo "Usage: fablo chaincode invoke <peer_domains_comma_separated> <channel_name> <chaincode_name> <command> [transient]"
21802180
exit 1
21812181
fi
2182-
cli=""
2183-
peer_addresses=""
21842182
2185-
if [[ "$1" == *"peer0.org1.example.com"* ]]; then
2183+
# Cli needs to be from the same org as the first peer
2184+
if [[ "$1" == "peer0.org1.example.com"* ]]; then
21862185
cli="cli.org1.example.com"
2187-
peer_addresses="$peer_addresses,peer0.org1.example.com:7041"
2188-
21892186
fi
2190-
if [[ "$1" == *"peer1.org1.example.com"* ]]; then
2187+
if [[ "$1" == "peer1.org1.example.com"* ]]; then
21912188
cli="cli.org1.example.com"
2192-
peer_addresses="$peer_addresses,peer1.org1.example.com:7042"
2193-
21942189
fi
2195-
if [[ "$1" == *"peer0.org2.example.com"* ]]; then
2190+
if [[ "$1" == "peer0.org2.example.com"* ]]; then
21962191
cli="cli.org2.example.com"
2197-
peer_addresses="$peer_addresses,peer0.org2.example.com:7061"
2198-
2199-
fi
2200-
if [ -z "$peer_addresses" ]; then
2201-
echo "Unknown peers: $1"
2202-
exit 1
22032192
fi
22042193
2205-
peerChaincodeInvoke "$cli" "\${peer_addresses:1}" "$2" "$3" "$4" "$5"
2194+
peer_addresses="$1"
2195+
peer_addresses="\${peer_addresses//peer0.org1.example.com/peer0.org1.example.com:7041}"
2196+
peer_addresses="\${peer_addresses//peer1.org1.example.com/peer1.org1.example.com:7042}"
2197+
peer_addresses="\${peer_addresses//peer0.org2.example.com/peer0.org2.example.com:7061}"
22062198
2199+
peerChaincodeInvoke "$cli" "$peer_addresses" "$2" "$3" "$4" "$5"
22072200
}
22082201
"
22092202
`;
@@ -2216,8 +2209,6 @@ source "$FABLO_NETWORK_ROOT/fabric-docker/scripts/channel-query-functions.sh"
22162209
set -eu
22172210
22182211
channelQuery() {
2219-
echo "-> Channel query: " + "$@"
2220-
22212212
if [ "$#" -eq 1 ]; then
22222213
printChannelsHelp
22232214

e2e/__snapshots__/fablo-config-hlf2-2orgs-2chaincodes-raft.yaml.test.ts.snap

Lines changed: 17 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -3111,58 +3111,43 @@ chaincodeInvoke() {
31113111
echo "Usage: fablo chaincode invoke <peer_domains_comma_separated> <channel_name> <chaincode_name> <command> [transient]"
31123112
exit 1
31133113
fi
3114-
cli=""
3115-
peer_addresses=""
31163114
3117-
peer_certs=""
3118-
3119-
if [[ "$1" == *"peer0.org1.example.com"* ]]; then
3115+
# Cli needs to be from the same org as the first peer
3116+
if [[ "$1" == "peer0.org1.example.com"* ]]; then
31203117
cli="cli.org1.example.com"
3121-
peer_addresses="$peer_addresses,peer0.org1.example.com:7061"
3122-
3123-
peer_certs="$peer_certs,crypto/peers/peer0.org1.example.com/tls/ca.crt"
3124-
31253118
fi
3126-
if [[ "$1" == *"peer1.org1.example.com"* ]]; then
3119+
if [[ "$1" == "peer1.org1.example.com"* ]]; then
31273120
cli="cli.org1.example.com"
3128-
peer_addresses="$peer_addresses,peer1.org1.example.com:7062"
3129-
3130-
peer_certs="$peer_certs,crypto/peers/peer1.org1.example.com/tls/ca.crt"
3131-
31323121
fi
3133-
if [[ "$1" == *"peer0.org2.example.com"* ]]; then
3122+
if [[ "$1" == "peer0.org2.example.com"* ]]; then
31343123
cli="cli.org2.example.com"
3135-
peer_addresses="$peer_addresses,peer0.org2.example.com:7081"
3136-
3137-
peer_certs="$peer_certs,crypto/peers/peer0.org2.example.com/tls/ca.crt"
3138-
31393124
fi
3140-
if [[ "$1" == *"peer1.org2.example.com"* ]]; then
3125+
if [[ "$1" == "peer1.org2.example.com"* ]]; then
31413126
cli="cli.org2.example.com"
3142-
peer_addresses="$peer_addresses,peer1.org2.example.com:7082"
3127+
fi
31433128
3144-
peer_certs="$peer_certs,crypto/peers/peer1.org2.example.com/tls/ca.crt"
3129+
peer_addresses="$1"
3130+
peer_addresses="\${peer_addresses//peer0.org1.example.com/peer0.org1.example.com:7061}"
3131+
peer_addresses="\${peer_addresses//peer1.org1.example.com/peer1.org1.example.com:7062}"
3132+
peer_addresses="\${peer_addresses//peer0.org2.example.com/peer0.org2.example.com:7081}"
3133+
peer_addresses="\${peer_addresses//peer1.org2.example.com/peer1.org2.example.com:7082}"
31453134
3146-
fi
3147-
if [ -z "$peer_addresses" ]; then
3148-
echo "Unknown peers: $1"
3149-
exit 1
3150-
fi
3135+
peer_certs="$1"
3136+
peer_certs="\${peer_certs//peer0.org1.example.com/crypto/peers/peer0.org1.example.com/tls/ca.crt}"
3137+
peer_certs="\${peer_certs//peer1.org1.example.com/crypto/peers/peer1.org1.example.com/tls/ca.crt}"
3138+
peer_certs="\${peer_certs//peer0.org2.example.com/crypto/peers/peer0.org2.example.com/tls/ca.crt}"
3139+
peer_certs="\${peer_certs//peer1.org2.example.com/crypto/peers/peer1.org2.example.com/tls/ca.crt}"
31513140
31523141
if [ "$2" = "my-channel1" ]; then
31533142
ca_cert="crypto-orderer/tlsca.orderer1.com-cert.pem"
31543143
fi
3155-
31563144
if [ "$2" = "my-channel2" ]; then
31573145
ca_cert="crypto-orderer/tlsca.orderer1.com-cert.pem"
31583146
fi
3159-
31603147
if [ "$2" = "my-channel3" ]; then
31613148
ca_cert="crypto-orderer/tlsca.orderer1.com-cert.pem"
31623149
fi
3163-
3164-
peerChaincodeInvokeTls "$cli" "\${peer_addresses:1}" "$2" "$3" "$4" "$5" "\${peer_certs:1}" "$ca_cert"
3165-
3150+
peerChaincodeInvokeTls "$cli" "$peer_addresses" "$2" "$3" "$4" "$5" "$peer_certs" "$ca_cert"
31663151
}
31673152
"
31683153
`;
@@ -3175,8 +3160,6 @@ source "$FABLO_NETWORK_ROOT/fabric-docker/scripts/channel-query-functions.sh"
31753160
set -eu
31763161
31773162
channelQuery() {
3178-
echo "-> Channel query: " + "$@"
3179-
31803163
if [ "$#" -eq 1 ]; then
31813164
printChannelsHelp
31823165

0 commit comments

Comments
 (0)