The test-network peer configuration specifies $(TWO_DIGIT_VERSION) as
the tag for the Node and Java chaincode containers. For Fabric v3.0,
this requests fabric-nodeenv:3.0 and fabric-javaenv:3.0 Docker images to
host Node and Java chaincode respectively. These images do not exist,
which causes deployment of Node and Java chaincode to fail when using
Fabric v3.0. Fabric v3.0 continues to use fabric-nodeenv:2.5 and
fabric-javaenv:2.5.
This change updates the test-network peer configuration to explicitly
specify `2.5` as the Node and Java chaincode Docker image tags. This is
(currently) the correct version for both Fabric v2.5 and Fabric v3.0.
Signed-off-by: Mark S. Lewis <Mark.S.Lewis@outlook.com>
This patch aims to refactor the test-network in several aspects,
following the decoupling of the fabric-tools image from fabric-samples.
- Rename 'test_network_home' env var to 'TEST_NETWORK_HOME'
- Dedicate the intermediate artifacts related to configtx to
channel-artifacts
- Refer to core.yaml in fabric-samples/config, similar to org1 and 2,
instead of adding a new core file
- Remove unnecessary functions and comments for CLI container
- Other minor modifications
Signed-off-by: Tatsuya Sato <tatsuya.sato.so@hitachi.com>
* add support for docker compose v2 (fix#730)
Signed-off-by: uniform64 <jiny2048@gmail.com>
* add support for docker compose v2 (fix#730)
some missing places in the previous commit
Signed-off-by: uniform64 <jiny2048@gmail.com>
---------
Signed-off-by: uniform64 <jiny2048@gmail.com>
Flag --csr.hosts is only relevant for tls enrollments, it adds the SAN to the TLS cert.
For msp enrollments, the cert is only used for identity, therefore there is no need for SAN and no need to pass --csr.hosts.
Having --csr.hosts for msp enrollments is misleading, this commit removes it.
Signed-off-by: David Enyeart <enyeart@us.ibm.com>
* Experimental Support for using podman with the test-network
Signed-off-by: Matthew B White <whitemat@uk.ibm.com>
* supplement podman with nerdctl
Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
* adds experimental support for nerdctl compose
Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
* install fabric images to containerd with 'nerdctl' pull
Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
* Podman Support
Use a core set of compose files, with overlays for specific details.
In the case of podman, the overlays refer to a specific core.yaml for the peer that distables the use of teh
docker daemon
In the case of docker, the overlays add enable the docker daemon accesss for the peer to create chaincode
containers
Signed-off-by: Matthew B White <whitemat@uk.ibm.com>
Co-authored-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
* change docker-compose version from 2 to 2.4 on folder addOrg3/docker
Signed-off-by: Saliou <boomse@hotmail.fr>
* changing all docker-compose version from 2 to 2.4 under addOrg3/docker
Signed-off-by: Saliou <boomse@hotmail.fr>
Co-authored-by: Saliou <admin@example.com>
Docker version 20.10 support rootless mode. That features
changes a mount path of docker.sock.
This PR loads a mount path from DOCKER_HOST environment,
and if not set, a mount path will be /var/run/docker.sock
FAB-18481
Signed-off-by: Nao Nishijima <nao.nishijima.xt@hitachi.com>
The `-i` flag was originally added to support an
upgrade sample. Since that sample is no longer available
remove the `-i` flag to clean up the network.sh options
and avoid confusion as it's possible now to specify
an image version that is no longer backwards compatible
with the new test-network with osnadmin.
Signed-off-by: Brett Logan <lindluni@github.com>
Add a service label to all containers launch by compose.
This allows us to filter on the label for removing running
containers.
Use filtering for querying running containers and
images to make sure we only target the containers
and images we want to remove.
Signed-off-by: Brett Logan <lindluni@github.com>
There have been lots of changes and quirks with the
docker-compose .env file, this change removes the file
and explicitly creates and assigns the networks in the
compose yaml files.
Signed-off-by: Brett Logan <lindluni@github.com>
* Fix creating channel when ${PWD} contains space.
If the path of the project contains spaces, the "test-network/scripts/envVar.sh" script sets the value of "$ORDERER_CA" to a value containg "${PWD}" which, in turn, contains space(s).
When the variable used in "test-network/scripts/createChannel.sh", The first part of the value (before the first space) is handled as the whole value for "--cafile". Other parts are considered to be part of the command!
I tried putting (escaped) quotes in the "test-network/scripts/envVar.sh" definition for the variable "$ORDERER_CA" to make the fix more general, but the quotation marks were sometime interpreted to be part of the path that consisted of concatenated parts somewhere and it did not work.
While this edit will fix this issue, I belive this is just a work around. I expect that there is a better way to solve the root cause of the problem instead of just fixing it in one place. Moreover, All variables/paths that may include spaces should be properly handled as well.
Thanks
Signed-off-by: Waleed Mortaja <waleedmortaja@protonmail.com>
* Double quote variables evaluations that depends on $PWD
I tried to handle most (if not all) of the variables evaluations in the project that depends on $PWD by wrapping them in double-quotations to avoid values that contains white spaces.
Some lines I was not sure if they are Okay or not but I left them as they are. Samples (not all lines) as follows:
- commercial-paper/network-clean.sh:15:DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
- commercial-paper/network-starter.sh:15:DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
- asset-transfer-basic/chaincode-javascript/node_modules/fabric-shim/coverage/fabric-shim/lib/chaincode.js.html:997: optsCpy.pem = fs.readFileSync(process.env.CORE_PEER_TLS_ROOTCERT_FILE).toString();
- commercial-paper/organization/digibank/digibank.sh:29:export PEER_PARMS="${PEER_CONN_PARMS##*( )}"
The next sample I was not really sure, but still edited it:
- test-network/addOrg3/fabric-ca/registerEnroll.sh:68: cp ${PWD}/../organizations/peerOrganizations/org3.example.com/peers/peer0.org3.example.com/tls/tlscacerts/* ${PWD}/../organizations/peerOrganizations/org3.example.com/peers/peer0.org3.example.com/tls/ca.crt
I deliberately ignored some lines because I think they are not problem. These lines include:
- `export` sentences
- assignment sentences like: test-network/scripts/createChannel.sh:48: FABRIC_CFG_PATH=$PWD/../config/
- gradlew files: the line SAVED="`pwd`"
- gradlew files: the line APP_HOME="`pwd -P`"
- gradlew files: the line CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
Signed-off-by: Waleed Mortaja <waleedmortaja@protonmail.com>
* remove unnecessary leading space trimming
Signed-off-by: Waleed Mortaja <waleedmortaja@protonmail.com>
* resolved conflict with master
Co-authored-by: Arnaud J Le Hors <lehors@us.ibm.com>
* Remove Org3cli from test-network
FAB-18381
Signed-off-by: Will Lahti <wtlahti@us.ibm.com>
* Remove configtx.yaml anchor peers from test-network
These values were only used by configtxgen's --outputAnchorPeerUpdate
function and should not be set in a channel genesis block This is because
a peer cannot be an anchor peer for a channel until it has joined that
channel and it can't join a channel until the genesis block has been
created.
FAB-18381
Signed-off-by: Will Lahti <wtlahti@us.ibm.com>
* Stop using deprecated outputAnchorPeersUpdate in test-network
FAB-18381
Signed-off-by: Will Lahti <wtlahti@us.ibm.com>
* Improve consistency of test-network output
Signed-off-by: Will Lahti <wtlahti@us.ibm.com>
Instead of mounted the entire /var/run directory
explicitly mount the unix socket. Mounting the entire
directory causes issues with future versions of Docker
on some platforms.
Signed-off-by: Brett Logan <brett.t.logan@ibm.com>
In Fabric v2.2, the gossip defaults are changed to make
peers org leaders instead of using leader election.
This change removes the config from the samples, so that
the samples simply inherit the new peer defaults.
This will simplify the sample configuration.
Signed-off-by: David Enyeart <enyeart@us.ibm.com>
Fabric 2.2 removes official support for CouchDB 2.x.
The migration to 3.1 was to address fsync issues
in the underlying storage implementation in Couch.
This change moves to CouchDB 3.1 which requires the
user to now set an admin identity at startup.
Signed-off-by: Brett Logan <brett.t.logan@ibm.com>
This patch adds missing config.yaml to msp folder for user1 in test-network
to make user1 work properly when using FabricCA.
Signed-off-by: Tatsuya Sato <Tatsuya.Sato@hal.hitachi.com>
To get rid of hard-coded versioning and use the latest version of fabric-ca
in test-network, this patch modifies the existence check logic of
the fabric-ca-client binary in the same way as peer and orderer.
Also, this patch updates addOrg3.sh to use cai <ca_imagetag> option.
Signed-off-by: Tatsuya Sato <Tatsuya.Sato@hal.hitachi.com>