Skip to content

Commit

Permalink
Reduce the number of peers in test networks
Browse files Browse the repository at this point in the history
Try to slightly reduce the resource requirements of our tests by
reducing the number of server processes we launch by default by removing
the second peer in each org in our "basic" networks.

Change-Id: I1ddc109ce4c69fe52c7fec6db4a029211bd4989c
Signed-off-by: Matthew Sykes <sykesmat@us.ibm.com>
  • Loading branch information
sykesm authored and mastersingh24 committed Jan 10, 2020
1 parent d80c5f5 commit 8318470
Show file tree
Hide file tree
Showing 14 changed files with 123 additions and 110 deletions.
29 changes: 14 additions & 15 deletions integration/e2e/e2e_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -141,11 +141,11 @@ var _ = Describe("EndToEnd", func() {

CheckPeerStatsdStreamMetrics(datagramReader.String())
CheckPeerStatsdMetrics(datagramReader.String(), "org1_peer0")
CheckPeerStatsdMetrics(datagramReader.String(), "org2_peer1")
CheckPeerStatsdMetrics(datagramReader.String(), "org2_peer0")
CheckOrdererStatsdMetrics(datagramReader.String(), "ordererorg_orderer")

By("setting up a channel from a base profile")
additionalPeer := network.Peer("Org2", "peer1")
additionalPeer := network.Peer("Org2", "peer0")
network.CreateChannel("baseprofilechannel", orderer, peer, additionalPeer)
})
})
Expand Down Expand Up @@ -195,25 +195,24 @@ var _ = Describe("EndToEnd", func() {
}

orderer := network.Orderer("orderer")
peer := network.Peer("Org1", "peer1")

network.CreateAndJoinChannel(orderer, "testchannel")
nwo.EnableCapabilities(network, "testchannel", "Application", "V2_0", orderer, network.Peer("Org1", "peer0"), network.Peer("Org2", "peer0"))

// package, install, and approve by org1 - module chaincode
packageInstallApproveChaincode(network, "testchannel", orderer, chaincode, network.Peer("Org1", "peer0"), network.Peer("Org1", "peer1"))
packageInstallApproveChaincode(network, "testchannel", orderer, chaincode, network.Peer("Org1", "peer0"))

// package, install, and approve by org2 - gopath chaincode, same logic
packageInstallApproveChaincode(network, "testchannel", orderer, gopathChaincode, network.Peer("Org2", "peer0"), network.Peer("Org2", "peer1"))
packageInstallApproveChaincode(network, "testchannel", orderer, gopathChaincode, network.Peer("Org2", "peer0"))

testPeers := network.PeersWithChannel("testchannel")
nwo.CheckCommitReadinessUntilReady(network, "testchannel", chaincode, network.PeerOrgs(), testPeers...)
nwo.CommitChaincode(network, "testchannel", orderer, chaincode, testPeers[0], testPeers...)
nwo.InitChaincode(network, "testchannel", orderer, chaincode, testPeers...)

RunQueryInvokeQuery(network, orderer, peer, "testchannel")
RunQueryInvokeQuery(network, orderer, network.Peer("Org1", "peer0"), "testchannel")

CheckPeerOperationEndpoints(network, network.Peer("Org2", "peer1"))
CheckPeerOperationEndpoints(network, network.Peer("Org2", "peer0"))
CheckOrdererOperationEndpoints(network, orderer)
})
})
Expand All @@ -231,7 +230,7 @@ var _ = Describe("EndToEnd", func() {

It("creates two channels with two orgs trying to reconfigure and update metadata", func() {
orderer := network.Orderer("orderer")
peer := network.Peer("Org1", "peer1")
peer := network.Peer("Org1", "peer0")

By("Create first channel and deploy the chaincode")
network.CreateAndJoinChannel(orderer, "testchannel")
Expand Down Expand Up @@ -361,7 +360,7 @@ var _ = Describe("EndToEnd", func() {

Describe("basic solo network with containers being interrupted", func() {
BeforeEach(func() {
network = nwo.New(nwo.BasicSolo(), testDir, client, StartPort(), components)
network = nwo.New(nwo.FullSolo(), testDir, client, StartPort(), components)

network.GenerateConfigTree()
network.Bootstrap()
Expand Down Expand Up @@ -392,7 +391,7 @@ var _ = Describe("EndToEnd", func() {
network.CreateAndJoinChannels(orderer)

By("enabling new lifecycle capabilities")
nwo.EnableCapabilities(network, "testchannel", "Application", "V2_0", orderer, network.Peer("Org1", "peer1"), network.Peer("Org2", "peer1"))
nwo.EnableCapabilities(network, "testchannel", "Application", "V2_0", orderer, network.Peer("Org1", "peer0"), network.Peer("Org2", "peer0"))
By("deploying the chaincode")
nwo.DeployChaincode(network, "testchannel", orderer, chaincode)

Expand Down Expand Up @@ -465,7 +464,7 @@ func RunQueryInvokeQuery(n *nwo.Network, orderer *nwo.Orderer, peer *nwo.Peer, c
Ctor: `{"Args":["invoke","a","b","10"]}`,
PeerAddresses: []string{
n.PeerAddress(n.Peer("Org1", "peer0"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer0"), nwo.ListenPort),
},
WaitForEvent: true,
})
Expand All @@ -491,8 +490,8 @@ func RunRespondWith(n *nwo.Network, orderer *nwo.Orderer, peer *nwo.Peer, channe
Name: "mycc",
Ctor: `{"Args":["respond","300","response-message","response-payload"]}`,
PeerAddresses: []string{
n.PeerAddress(n.Peer("Org1", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org1", "peer0"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer0"), nwo.ListenPort),
},
WaitForEvent: true,
})
Expand All @@ -507,8 +506,8 @@ func RunRespondWith(n *nwo.Network, orderer *nwo.Orderer, peer *nwo.Peer, channe
Name: "mycc",
Ctor: `{"Args":["respond","400","response-message","response-payload"]}`,
PeerAddresses: []string{
n.PeerAddress(n.Peer("Org1", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org1", "peer0"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer0"), nwo.ListenPort),
},
WaitForEvent: true,
})
Expand Down
2 changes: 1 addition & 1 deletion integration/gossip/gossip_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ var _ = Describe("Gossip Test", func() {
)

BeforeEach(func() {
network = nwo.New(nwo.BasicSolo(), testDir, client, StartPort(), components)
network = nwo.New(nwo.FullSolo(), testDir, client, StartPort(), components)

network.GenerateConfigTree()
// modify peer config
Expand Down
6 changes: 3 additions & 3 deletions integration/idemix/idemix_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ var _ = Describe("EndToEnd", func() {
nwo.DeployChaincode(network, "testchannel", orderer, chaincode)

By("getting the client peer by name")
peer := network.Peer("Org1", "peer1")
peer := network.Peer("Org1", "peer0")

Query(network, peer, "testchannel", "100")
Invoke(network, orderer, peer, "testchannel")
Expand Down Expand Up @@ -136,7 +136,7 @@ func Invoke(n *nwo.Network, orderer *nwo.Orderer, peer *nwo.Peer, channel string
Ctor: `{"Args":["invoke","a","b","10"]}`,
PeerAddresses: []string{
n.PeerAddress(n.Peer("Org1", "peer0"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer0"), nwo.ListenPort),
},
WaitForEvent: true,
})
Expand All @@ -153,7 +153,7 @@ func InvokeWithIdemix(n *nwo.Network, orderer *nwo.Orderer, peer *nwo.Peer, idem
Ctor: `{"Args":["invoke","a","b","10"]}`,
PeerAddresses: []string{
n.PeerAddress(n.Peer("Org1", "peer0"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer0"), nwo.ListenPort),
},
WaitForEvent: true,
})
Expand Down
2 changes: 1 addition & 1 deletion integration/ledger/couchdb_indexes_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ var _ = Describe("CouchDB indexes", func() {
client, err = docker.NewClientFromEnv()
Expect(err).NotTo(HaveOccurred())

network = nwo.New(nwo.BasicSolo(), testDir, client, StartPort(), components)
network = nwo.New(nwo.FullSolo(), testDir, client, StartPort(), components)

cwd, err := os.Getwd()
Expect(err).NotTo(HaveOccurred())
Expand Down
2 changes: 1 addition & 1 deletion integration/lifecycle/ccenv14_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ var _ = Describe("solo network using ccenv-1.4", func() {
orderer := network.Orderer("orderer")
endorsers := []*nwo.Peer{
network.Peer("Org1", "peer0"),
network.Peer("Org2", "peer1"),
network.Peer("Org2", "peer0"),
}

cwd, err := os.Getwd()
Expand Down
2 changes: 1 addition & 1 deletion integration/lifecycle/interop_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ var _ = Describe("Release interoperability", func() {
orderer = network.Orderer("orderer")
endorsers = []*nwo.Peer{
network.Peer("Org1", "peer0"),
network.Peer("Org2", "peer1"),
network.Peer("Org2", "peer0"),
}
})

Expand Down
38 changes: 15 additions & 23 deletions integration/lifecycle/lifecycle_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ var _ = Describe("Lifecycle", func() {
Eventually(couchProcess.Ready(), runner.DefaultStartTimeout).Should(BeClosed())
Consistently(couchProcess.Wait()).ShouldNot(Receive())
couchAddr := couchDB.Address()
peer := network.Peer("Org1", "peer1")
peer := network.Peer("Org1", "peer0")
core := network.ReadPeerConfig(peer)
core.Ledger.State.StateDatabase = "CouchDB"
core.Ledger.State.CouchDBConfig.CouchDBAddress = couchAddr
Expand Down Expand Up @@ -118,7 +118,7 @@ var _ = Describe("Lifecycle", func() {
network.CreateAndJoinChannels(orderer)
network.UpdateChannelAnchors(orderer, "testchannel")
network.VerifyMembership(network.PeersWithChannel("testchannel"), "testchannel")
nwo.EnableCapabilities(network, "testchannel", "Application", "V2_0", orderer, network.Peer("Org1", "peer1"), network.Peer("Org2", "peer1"))
nwo.EnableCapabilities(network, "testchannel", "Application", "V2_0", orderer, network.Peer("Org1", "peer0"), network.Peer("Org2", "peer0"))

By("deploying the chaincode")
nwo.PackageChaincodeBinary(chaincode)
Expand Down Expand Up @@ -148,7 +148,7 @@ var _ = Describe("Lifecycle", func() {
By("ensuring the chaincode can be invoked and queried")
endorsers := []*nwo.Peer{
network.Peer("Org1", "peer0"),
network.Peer("Org2", "peer1"),
network.Peer("Org2", "peer0"),
}
RunQueryInvokeQuery(network, orderer, "My_1st-Chaincode", 100, endorsers...)

Expand Down Expand Up @@ -212,7 +212,7 @@ var _ = Describe("Lifecycle", func() {
})

By("listing the installed chaincodes and verifying the channel/chaincode definitions that are using the chaincode package")
nwo.QueryInstalledReferences(network, "testchannel", chaincode.Label, chaincode.PackageID, network.Peer("Org2", "peer1"), []string{"My_1st-Chaincode", "Version-0.0"}, []string{"Your_Chaincode", "Version+0_0"})
nwo.QueryInstalledReferences(network, "testchannel", chaincode.Label, chaincode.PackageID, network.Peer("Org2", "peer0"), []string{"My_1st-Chaincode", "Version-0.0"}, []string{"Your_Chaincode", "Version+0_0"})

By("adding a new org")
org3 := &nwo.Organization{
Expand All @@ -231,23 +231,15 @@ var _ = Describe("Lifecycle", func() {
Organization: "Org3",
Channels: testPeers[0].Channels,
}
org3peer1 := &nwo.Peer{
Name: "peer1",
Organization: "Org3",
Channels: testPeers[0].Channels,
}
org3Peers := []*nwo.Peer{org3peer0, org3peer1}

network.AddOrg(org3, org3peer0, org3peer1)
GenerateOrgUpdateMaterials(network, org3peer0, org3peer1)
network.AddOrg(org3, org3peer0)
GenerateOrgUpdateMaterials(network, org3peer0)

By("starting the org3 peers")
for _, peer := range org3Peers {
pr := network.PeerRunner(peer)
p := ifrit.Invoke(pr)
processes[peer.ID()] = p
Eventually(p.Ready(), network.EventuallyTimeout).Should(BeClosed())
}
By("starting the org3 peer")
pr := network.PeerRunner(org3peer0)
org3Process := ifrit.Invoke(pr)
processes[org3peer0.ID()] = org3Process
Eventually(org3Process.Ready(), network.EventuallyTimeout).Should(BeClosed())

By("updating the channel config to include org3")
// get the current channel config
Expand All @@ -270,7 +262,7 @@ var _ = Describe("Lifecycle", func() {
nwo.UpdateConfig(network, orderer, "testchannel", currentConfig, updatedConfig, true, testPeers[0], testPeers...)

By("joining the org3 peers to the channel")
network.JoinChannel("testchannel", orderer, org3peer0, org3peer1)
network.JoinChannel("testchannel", orderer, org3peer0)

// update testPeers now that org3 has joined
testPeers = network.PeersWithChannel("testchannel")
Expand All @@ -281,14 +273,14 @@ var _ = Describe("Lifecycle", func() {
nwo.WaitUntilEqualLedgerHeight(network, "testchannel", maxLedgerHeight, testPeers...)

By("querying definitions by org3 before performing any chaincode actions")
sess, err = network.PeerAdminSession(network.Peer("Org2", "peer1"), commands.ChaincodeListCommitted{
sess, err = network.PeerAdminSession(network.Peer("Org2", "peer0"), commands.ChaincodeListCommitted{
ChannelID: "testchannel",
})
Expect(err).NotTo(HaveOccurred())
Eventually(sess, network.EventuallyTimeout).Should(gexec.Exit(0))

By("installing the chaincode to the org3 peers")
nwo.InstallChaincode(network, chaincode, org3peer0, org3peer1)
nwo.InstallChaincode(network, chaincode, org3peer0)

By("ensuring org3 peers do not execute the chaincode before approving the definition")
org3AndOrg1PeerAddresses := []string{
Expand All @@ -315,7 +307,7 @@ var _ = Describe("Lifecycle", func() {
By("ensuring chaincode can be invoked and queried by org3")
org3andOrg1Endorsers := []*nwo.Peer{
network.Peer("Org3", "peer0"),
network.Peer("Org1", "peer1"),
network.Peer("Org1", "peer0"),
}
RunQueryInvokeQuery(network, orderer, "My_1st-Chaincode", 80, org3andOrg1Endorsers...)

Expand Down
8 changes: 4 additions & 4 deletions integration/msp/msp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ var _ = Describe("MSP identity test on a network with mutual TLS required", func
By("creating and joining channels")
network.CreateAndJoinChannels(orderer)
By("enabling new lifecycle capabilities")
nwo.EnableCapabilities(network, "testchannel", "Application", "V2_0", orderer, network.Peer("Org1", "peer1"), network.Peer("Org2", "peer1"))
nwo.EnableCapabilities(network, "testchannel", "Application", "V2_0", orderer, network.Peer("Org1", "peer0"), network.Peer("Org2", "peer0"))

chaincode := nwo.Chaincode{
Name: "mycc",
Expand Down Expand Up @@ -119,7 +119,7 @@ var _ = Describe("MSP identity test on a network with mutual TLS required", func
Name: "mycc",
Ctor: `{"Args":["invoke","a","b","10"]}`,
PeerAddresses: []string{
network.PeerAddress(network.Peer("Org2", "peer1"), nwo.ListenPort),
network.PeerAddress(network.Peer("Org2", "peer0"), nwo.ListenPort),
},
WaitForEvent: true,
ClientAuth: network.ClientAuthRequired,
Expand Down Expand Up @@ -203,8 +203,8 @@ func RunQueryInvokeQuery(n *nwo.Network, orderer *nwo.Orderer, peer *nwo.Peer, i
Name: "mycc",
Ctor: `{"Args":["invoke","a","b","10"]}`,
PeerAddresses: []string{
n.PeerAddress(n.Peer("Org1", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer1"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org1", "peer0"), nwo.ListenPort),
n.PeerAddress(n.Peer("Org2", "peer0"), nwo.ListenPort),
},
WaitForEvent: true,
ClientAuth: n.ClientAuthRequired,
Expand Down
Loading

0 comments on commit 8318470

Please sign in to comment.