Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion docs/schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,8 @@
"type": "string",
"enum": [
"sqlite",
"postgres"
"postgres",
"mysql"
]
}
}
Expand Down
2 changes: 1 addition & 1 deletion e2e-network/docker/test-04-v3-snapshot-ccaas.sh
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ networkUp

# check if all nodes are ready
waitForContainer "orderer0.group1.orderer.example.com" "Starting Raft node channel=my-channel1"
waitForContainer "db.ca.org1.example.com" "database system is ready to accept connections"
waitForContainer "db.ca.org1.example.com" "ready for connections"
waitForContainer "ca.org1.example.com" "Listening on https://0.0.0.0:7054"
waitForContainer "couchdb.peer0.org1.example.com" "Apache CouchDB has started. Time to relax."
waitForContainer "peer0.org1.example.com" "Joining gossip network of channel my-channel1 with 1 organizations"
Expand Down
44 changes: 22 additions & 22 deletions e2e/__snapshots__/extendConfig.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -9216,7 +9216,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -9358,7 +9358,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -9447,7 +9447,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -9547,7 +9547,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -9689,7 +9689,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -9778,7 +9778,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -9877,7 +9877,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -10019,7 +10019,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -10105,7 +10105,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -10247,7 +10247,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -10490,7 +10490,7 @@ exports[`extend config samples/fablo-config-hlf3-1org-2chaincode-raft-ccaas.json
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -12505,7 +12505,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -12647,7 +12647,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -12736,7 +12736,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -12836,7 +12836,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -12978,7 +12978,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -13067,7 +13067,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -13166,7 +13166,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -13308,7 +13308,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -13394,7 +13394,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -13536,7 +13536,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down Expand Up @@ -13779,7 +13779,7 @@ exports[`extend config samples/invalid-fablo-config.json 1`] = `
"address": "ca.org1.example.com",
"caAdminNameVar": "ORG1_CA_ADMIN_NAME",
"caAdminPassVar": "ORG1_CA_ADMIN_PASSWORD",
"db": "postgres",
"db": "mysql",
"exposePort": 7040,
"fullAddress": "ca.org1.example.com:7054",
"port": 7054,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3433,6 +3433,11 @@ __getCAPostgresNodes() {
"
}

__getCAMySQLNodes() {
echo "
"
}

__createSnapshot() {
cd "$FABLO_NETWORK_ROOT/.."
backup_dir="\${1:-"snapshot-$(date -u +"%Y%m%d%H%M%S")"}"
Expand All @@ -3452,11 +3457,17 @@ __createSnapshot() {
done

for node in $(__getCAPostgresNodes); do
echo "Saving state of $node..."
echo "Saving state of $node (PostgreSQL)..."
mkdir -p "$backup_dir/$node/pg-data"
docker exec "$node" pg_dump -c --if-exists -U postgres fabriccaserver >"$backup_dir/$node/fabriccaserver.sql"
done

for node in $(__getCAMySQLNodes); do
echo "Saving state of $node (MySQL)..."
mkdir -p "$backup_dir/$node/mysql-data"
docker exec -e MYSQL_PWD=caDbPass12345 "$node" mysqldump -u root --add-drop-database --databases fabriccaserver >"$backup_dir/$node/fabriccaserver.sql"
done

for node in $(__getOrdererAndPeerNodes); do
echo "Saving state of $node..."
docker cp "$node:/var/hyperledger/production/" "$backup_dir/$node/"
Expand Down Expand Up @@ -3492,7 +3503,16 @@ __cloneSnapshot() {
done

for node in $(__getCAPostgresNodes); do
echo "Restoring $node..."
echo "Restoring $node (PostgreSQL)..."
if [ ! -d "$node" ]; then
echo "Warning: Cannot restore '$node', directory does not exist!"
else
docker cp "./$node/fabriccaserver.sql" "$node:/docker-entrypoint-initdb.d/fabriccaserver.sql"
fi
done

for node in $(__getCAMySQLNodes); do
echo "Restoring $node (MySQL)..."
if [ ! -d "$node" ]; then
echo "Warning: Cannot restore '$node', directory does not exist!"
else
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3494,6 +3494,11 @@ __getCAPostgresNodes() {
"
}

__getCAMySQLNodes() {
echo "
"
}

__createSnapshot() {
cd "$FABLO_NETWORK_ROOT/.."
backup_dir="\${1:-"snapshot-$(date -u +"%Y%m%d%H%M%S")"}"
Expand All @@ -3513,11 +3518,17 @@ __createSnapshot() {
done

for node in $(__getCAPostgresNodes); do
echo "Saving state of $node..."
echo "Saving state of $node (PostgreSQL)..."
mkdir -p "$backup_dir/$node/pg-data"
docker exec "$node" pg_dump -c --if-exists -U postgres fabriccaserver >"$backup_dir/$node/fabriccaserver.sql"
done

for node in $(__getCAMySQLNodes); do
echo "Saving state of $node (MySQL)..."
mkdir -p "$backup_dir/$node/mysql-data"
docker exec -e MYSQL_PWD=caDbPass12345 "$node" mysqldump -u root --add-drop-database --databases fabriccaserver >"$backup_dir/$node/fabriccaserver.sql"
done

for node in $(__getOrdererAndPeerNodes); do
echo "Saving state of $node..."
docker cp "$node:/var/hyperledger/production/" "$backup_dir/$node/"
Expand Down Expand Up @@ -3553,7 +3564,16 @@ __cloneSnapshot() {
done

for node in $(__getCAPostgresNodes); do
echo "Restoring $node..."
echo "Restoring $node (PostgreSQL)..."
if [ ! -d "$node" ]; then
echo "Warning: Cannot restore '$node', directory does not exist!"
else
docker cp "./$node/fabriccaserver.sql" "$node:/docker-entrypoint-initdb.d/fabriccaserver.sql"
fi
done

for node in $(__getCAMySQLNodes); do
echo "Restoring $node (MySQL)..."
if [ ! -d "$node" ]; then
echo "Warning: Cannot restore '$node', directory does not exist!"
else
Expand Down
Loading
Loading