Skip to content
This repository was archived by the owner on Apr 25, 2025. It is now read-only.

Commit e067020

Browse files
committed
[FAB-10417] endpointconfig return type refactoring
- endpointConfig.NetworkConfig to return only entity since it is always preloaded and it is not a search function -endpointConfig.OrderersConfig() to return only entity since it is always preloaded and it is not a search function -endpointConfig.NetworkPeers to return preloaded network peers -endpointConfig.PeerConfigs by orgname to do dictionary based search. -endpointConfig.ChannelConfig logic optimized -endpointConfig.ChannelPeers to do dictionary based search. -endpointConfig.ChannelOrderers to do dictionary based search. - FIXED DEVSTABLE ISSUES: changed tages from 'latest' to 'stable' Change-Id: I3474fdfc47db8409e2031c672faef0905d017ccd Signed-off-by: Sudesh Shetty <sudesh.shetty@securekey.com>
1 parent 9bae250 commit e067020

File tree

26 files changed

+357
-392
lines changed

26 files changed

+357
-392
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ endif
125125
FABRIC_TOOLS_STABLE_TAG := $(ARCH)-$(FABRIC_STABLE_VERSION)
126126
FABRIC_TOOLS_PREV_TAG := $(ARCH)-$(FABRIC_PREV_VERSION)
127127
FABRIC_TOOLS_PRERELEASE_TAG := $(ARCH)-$(FABRIC_PRERELEASE_VERSION)
128-
FABRIC_TOOLS_DEVSTABLE_TAG := latest
128+
FABRIC_TOOLS_DEVSTABLE_TAG := stable
129129

130130
# The version of dep that will be installed by depend-install (or in the CI)
131131
GO_DEP_COMMIT := v0.4.1

pkg/client/common/discovery/dynamicdiscovery/localservice.go

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,10 +84,7 @@ func (s *LocalService) queryPeers() ([]fab.Peer, error) {
8484
}
8585

8686
func (s *LocalService) getTarget(ctx contextAPI.Client) (*fab.PeerConfig, error) {
87-
peers, ok := ctx.EndpointConfig().NetworkPeers()
88-
if !ok {
89-
return nil, errors.New("failed to get network peers")
90-
}
87+
peers := ctx.EndpointConfig().NetworkPeers()
9188
mspID := ctx.Identifier().MSPID
9289
for _, p := range peers {
9390
// Need to go to a peer with the local MSPID, otherwise the request will be rejected

pkg/client/common/discovery/staticdiscovery/localprovider.go

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,7 @@ func (dp *LocalProvider) Initialize(fabPvdr contextAPI.Providers) error {
4444
// CreateLocalDiscoveryService return a local discovery service
4545
func (dp *LocalProvider) CreateLocalDiscoveryService(mspID string) (fab.DiscoveryService, error) {
4646
peers := []fab.Peer{}
47-
48-
netPeers, ok := dp.config.NetworkPeers()
49-
if !ok {
50-
return nil, errors.New("unable to read configuration for network peers")
51-
}
47+
netPeers := dp.config.NetworkPeers()
5248

5349
logger.Debugf("Found %d peers", len(netPeers))
5450

pkg/client/msp/client.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,8 @@ func New(clientProvider context.ClientProvider, opts ...ClientOption) (*Client,
8989
if msp.orgName == "" {
9090
return nil, errors.New("organization is not provided")
9191
}
92-
networkConfig, ok := ctx.EndpointConfig().NetworkConfig()
93-
if !ok {
94-
return nil, errors.New("failed to get NetworkConfig")
95-
}
96-
_, ok = networkConfig.Organizations[strings.ToLower(msp.orgName)]
92+
networkConfig := ctx.EndpointConfig().NetworkConfig()
93+
_, ok := networkConfig.Organizations[strings.ToLower(msp.orgName)]
9794
if !ok {
9895
return nil, fmt.Errorf("non-existent organization: '%s'", msp.orgName)
9996
}

pkg/client/resmgmt/resmgmt_test.go

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -343,20 +343,11 @@ func TestJoinChannelNoOrdererConfig(t *testing.T) {
343343

344344
// Misconfigured channel orderer
345345
configBackend = getInvalidChannelOrdererBackend(backend...)
346-
invalidChOrdererConfig, err := fabImpl.ConfigFromBackend(configBackend)
346+
_, err = fabImpl.ConfigFromBackend(configBackend)
347347

348-
if err != nil {
348+
if err == nil || !strings.Contains(err.Error(), "failed to load channel orderers: Could not find Orderer Config for channel orderer") {
349349
t.Fatal(err)
350350
}
351-
ctx.SetEndpointConfig(invalidChOrdererConfig)
352-
353-
rc = setupResMgmtClient(t, ctx)
354-
355-
err = rc.JoinChannel("mychannel", WithTargets(peer1))
356-
357-
if err == nil || !strings.Contains(err.Error(), "failed to find orderer for request: orderer not found: orderers lookup failed") {
358-
t.Fatalf("Should have failed to join channel since channel orderer has been misconfigured")
359-
}
360351

361352
// Misconfigured global orderer (cert cannot be loaded)
362353
configBackend = getInvalidOrdererBackend(backend...)

pkg/common/providers/fab/provider.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,12 +70,12 @@ type CommManager interface {
7070
//EndpointConfig contains endpoint network configurations
7171
type EndpointConfig interface {
7272
Timeout(TimeoutType) time.Duration
73-
OrderersConfig() ([]OrdererConfig, bool)
73+
OrderersConfig() []OrdererConfig
7474
OrdererConfig(nameOrURL string) (*OrdererConfig, bool)
7575
PeersConfig(org string) ([]PeerConfig, bool)
7676
PeerConfig(nameOrURL string) (*PeerConfig, bool)
77-
NetworkConfig() (*NetworkConfig, bool)
78-
NetworkPeers() ([]NetworkPeer, bool)
77+
NetworkConfig() *NetworkConfig
78+
NetworkPeers() []NetworkPeer
7979
ChannelConfig(name string) (*ChannelNetworkConfig, bool)
8080
ChannelPeers(name string) ([]ChannelPeer, bool)
8181
ChannelOrderers(name string) ([]OrdererConfig, bool)

pkg/common/providers/test/mockfab/mockfab.gen.go

Lines changed: 6 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/fab/channel/transactor.go

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,10 +139,7 @@ func orderersFromChannel(ctx context.Client, channelID string) ([]fab.Orderer, e
139139

140140
func orderersByTarget(ctx context.Client) (map[string]fab.OrdererConfig, error) {
141141
ordererDict := map[string]fab.OrdererConfig{}
142-
orderersConfig, ok := ctx.EndpointConfig().OrderersConfig()
143-
if !ok {
144-
return nil, errors.New("loading orderers config failed")
145-
}
142+
orderersConfig := ctx.EndpointConfig().OrderersConfig()
146143

147144
for _, oc := range orderersConfig {
148145
address := endpoint.ToAddress(oc.URL)

pkg/fab/comm/network.go

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,7 @@ func NetworkPeerConfig(cfg fab.EndpointConfig, key string) (*fab.NetworkPeer, er
2121
}
2222

2323
// find MSP ID
24-
networkPeers, ok := cfg.NetworkPeers()
25-
if !ok {
26-
return nil, errors.New("unable to load network peer config")
27-
}
24+
networkPeers := cfg.NetworkPeers()
2825

2926
var mspID string
3027
for _, peer := range networkPeers {
@@ -52,11 +49,7 @@ func SearchPeerConfigFromURL(cfg fab.EndpointConfig, url string) (*fab.PeerConfi
5249

5350
//If the given url is already parsed URL through entity matcher, then 'cfg.PeerConfig()'
5451
//may return NoMatchingPeerEntity error. So retry with network peer URLs
55-
networkPeers, ok := cfg.NetworkPeers()
56-
if !ok {
57-
return nil, errors.New("unable to load network peer config")
58-
}
59-
52+
networkPeers := cfg.NetworkPeers()
6053
for _, peer := range networkPeers {
6154
if peer.URL == url {
6255
return &peer.PeerConfig, nil
@@ -68,8 +61,8 @@ func SearchPeerConfigFromURL(cfg fab.EndpointConfig, url string) (*fab.PeerConfi
6861

6962
// MSPID returns the MSP ID for the requested organization
7063
func MSPID(cfg fab.EndpointConfig, org string) (string, bool) {
71-
networkConfig, ok := cfg.NetworkConfig()
72-
if !ok {
64+
networkConfig := cfg.NetworkConfig()
65+
if networkConfig == nil {
7366
return "", false
7467
}
7568
// viper lowercases all key maps, org is lower case

0 commit comments

Comments
 (0)