Skip to content

Commit db7a41f

Browse files
committed
Remove code which uses membersrvcs package
Membership services has been moved to it own repository and we need to remove it from fabric master. This change set starts that process by removing any code which interacted directly / indirectly with the membersrvc package. This includes: - removing a majority of core/crypto (FAB-934) - removing security related code from the peer - peer - endorser - devops - rest - removing security code from chaincode - removed membersrvc from Makefile Was going to break it into smaller tasks, but turns out it is easier to do it this way Fixes FAB-1001,FAB-1002,FAB-1003,FAB-1004,FAB-1005 Change-Id: I88f70d4d1bee87a241f74b2e9580e2b4d4e40a4d Signed-off-by: Gari Singh <[email protected]>
1 parent c28bd05 commit db7a41f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+55
-18339
lines changed

Makefile

+7-11
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# - checks - runs all tests/checks
2323
# - peer - builds the fabric peer binary
2424
# - orderer - builds the fabric orderer binary
25-
# - membersrvc - builds the membersrvc binary
2625
# - unit-test - runs the go-test based unit tests
2726
# - behave - runs the behave test
2827
# - behave-deps - ensures pre-requisites are availble for running behave manually
@@ -31,7 +30,6 @@
3130
# - images[-clean] - ensures all docker images are available[/cleaned]
3231
# - peer-image[-clean] - ensures the peer-image is available[/cleaned] (for behave, etc)
3332
# - orderer-image[-clean] - ensures the orderer-image is available[/cleaned] (for behave, etc)
34-
# - membersrvc-image[-clean] - ensures the membersrvc-image is available[/cleaned] (for behave, etc)
3533
# - protos - generate all protobuf artifacts based on .proto files
3634
# - clean - cleans the build area
3735
# - dist-clean - superset of 'clean' that also removes persistent state
@@ -69,17 +67,20 @@ SUBDIRS:=$(strip $(SUBDIRS))
6967
GOSHIM_DEPS = $(shell ./scripts/goListFiles.sh github.com/hyperledger/fabric/core/chaincode/shim | sort | uniq)
7068
JAVASHIM_DEPS = $(shell git ls-files core/chaincode/shim/java)
7169
PROJECT_FILES = $(shell git ls-files)
72-
IMAGES = src ccenv peer membersrvc javaenv orderer
70+
IMAGES = src ccenv peer javaenv orderer
7371

7472

75-
all: peer orderer membersrvc checks
73+
all: peer orderer checks
7674

7775
checks: linter unit-test behave
7876

7977
.PHONY: $(SUBDIRS)
8078
$(SUBDIRS):
8179
cd $@ && $(MAKE)
8280

81+
membersrvc-image:
82+
@echo "membersrvc has been removed from this build"
83+
8384
.PHONY: peer
8485
peer: build/bin/peer
8586
peer-image: build/image/peer/.dummy
@@ -88,10 +89,6 @@ peer-image: build/image/peer/.dummy
8889
orderer: build/bin/orderer
8990
orderer-image: build/image/orderer/.dummy
9091

91-
.PHONY: membersrvc
92-
membersrvc: build/bin/membersrvc
93-
membersrvc-image: build/image/membersrvc/.dummy
94-
9592
unit-test: peer-image gotools
9693
@./scripts/goUnitTests.sh $(DOCKER_TAG) "$(GO_LDFLAGS)"
9794

@@ -111,7 +108,6 @@ linter: gotools
111108
go vet ./core/...
112109
go vet ./events/...
113110
go vet ./examples/...
114-
go vet ./membersrvc/...
115111
go vet ./peer/...
116112
go vet ./protos/...
117113
go vet ./orderer/...
@@ -144,7 +140,7 @@ build/bin/chaintool: Makefile
144140
# JIRA FAB-243 - Mark build/docker/bin artifacts explicitly as secondary
145141
# since they are never referred to directly. This prevents
146142
# the makefile from deleting them inadvertently.
147-
.SECONDARY: build/docker/bin/peer build/docker/bin/orderer build/docker/bin/membersrvc
143+
.SECONDARY: build/docker/bin/peer build/docker/bin/orderer
148144

149145
# We (re)build a package within a docker context but persist the $GOPATH/pkg
150146
# directory so that subsequent builds are faster
@@ -247,7 +243,7 @@ build/image/%/.dummy: build/image/src/.dummy build/docker/bin/%
247243
protos: gotools
248244
./devenv/compile_protos.sh
249245

250-
src-image-clean: ccenv-image-clean peer-image-clean orderer-image-clean membersrvc-image-clean
246+
src-image-clean: ccenv-image-clean peer-image-clean orderer-image-clean
251247

252248
%-image-clean:
253249
$(eval TARGET = ${patsubst %-image-clean,%,${@}})

core/chaincode/exectransaction_test.go

+17-129
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ import (
3434
"github.com/hyperledger/fabric/core/ledger"
3535
"github.com/hyperledger/fabric/core/ledger/kvledger"
3636
"github.com/hyperledger/fabric/core/util"
37-
"github.com/hyperledger/fabric/membersrvc/ca"
3837
pb "github.com/hyperledger/fabric/protos"
3938
putils "github.com/hyperledger/fabric/protos/utils"
4039

@@ -53,42 +52,6 @@ func getNowMillis() int64 {
5352
return nanos / 1000000
5453
}
5554

56-
//initialize memberservices and startup
57-
func initMemSrvc() (net.Listener, error) {
58-
//start clean
59-
finitMemSrvc(nil)
60-
61-
ca.CacheConfiguration() // Cache configuration
62-
63-
aca := ca.NewACA()
64-
eca := ca.NewECA(aca)
65-
tca := ca.NewTCA(eca)
66-
tlsca := ca.NewTLSCA(eca)
67-
68-
sockp, err := net.Listen("tcp", viper.GetString("server.port"))
69-
if err != nil {
70-
return nil, err
71-
}
72-
73-
var opts []grpc.ServerOption
74-
server := grpc.NewServer(opts...)
75-
76-
aca.Start(server)
77-
eca.Start(server)
78-
tca.Start(server)
79-
tlsca.Start(server)
80-
81-
go server.Serve(sockp)
82-
83-
return sockp, nil
84-
}
85-
86-
//cleanup memberservice debris
87-
func finitMemSrvc(lis net.Listener) {
88-
closeListenerAndSleep(lis)
89-
os.RemoveAll(filepath.Join(os.TempDir(), "ca"))
90-
}
91-
9255
//initialize peer and start up. If security==enabled, login as vp
9356
func initPeer() (net.Listener, error) {
9457
//start clean
@@ -120,15 +83,7 @@ func initPeer() (net.Listener, error) {
12083
// Install security object for peer
12184
var secHelper crypto.Peer
12285
if viper.GetBool("security.enabled") {
123-
enrollID := viper.GetString("security.enrollID")
124-
enrollSecret := viper.GetString("security.enrollSecret")
125-
if err = crypto.RegisterValidator(enrollID, nil, enrollID, enrollSecret); nil != err {
126-
return nil, err
127-
}
128-
secHelper, err = crypto.InitValidator(enrollID, nil)
129-
if nil != err {
130-
return nil, err
131-
}
86+
//TODO: Integrate new crypto / idp code
13287
}
13388

13489
ccStartupTimeout := time.Duration(chaincodeStartupTimeoutDefault) * time.Millisecond
@@ -216,57 +171,31 @@ func getDeploymentSpec(context context.Context, spec *pb.ChaincodeSpec) (*pb.Cha
216171
func createDeployTransaction(dspec *pb.ChaincodeDeploymentSpec, uuid string) (*pb.Transaction, error) {
217172
var tx *pb.Transaction
218173
var err error
219-
var sec crypto.Client
220-
if dspec.ChaincodeSpec.SecureContext != "" {
221-
sec, err = crypto.InitClient(dspec.ChaincodeSpec.SecureContext, nil)
222-
defer crypto.CloseClient(sec)
223174

224-
if nil != err {
225-
return nil, err
226-
}
175+
//TODO: integrate new crypto / idp code if applicable
227176

228-
tx, err = sec.NewChaincodeDeployTransaction(dspec, uuid, attributes...)
229-
if nil != err {
230-
return nil, err
231-
}
232-
} else {
233-
tx, err = pb.NewChaincodeDeployTransaction(dspec, uuid)
234-
if err != nil {
235-
return nil, fmt.Errorf("Error deploying chaincode: %s ", err)
236-
}
177+
tx, err = pb.NewChaincodeDeployTransaction(dspec, uuid)
178+
if err != nil {
179+
return nil, fmt.Errorf("Error deploying chaincode: %s ", err)
237180
}
238181
return tx, nil
239182
}
240183

241184
func createTransaction(invokeTx bool, spec *pb.ChaincodeInvocationSpec, uuid string) (*pb.Transaction, error) {
242185
var tx *pb.Transaction
243186
var err error
244-
var sec crypto.Client
245-
if nil != sec {
246-
sec, err = crypto.InitClient(spec.ChaincodeSpec.SecureContext, nil)
247-
defer crypto.CloseClient(sec)
248-
if nil != err {
249-
return nil, err
250-
}
251-
if invokeTx {
252-
tx, err = sec.NewChaincodeExecute(spec, uuid, attributes...)
253-
} else {
254-
tx, err = sec.NewChaincodeQuery(spec, uuid, attributes...)
255-
}
256-
if nil != err {
257-
return nil, err
258-
}
187+
188+
//TODO: integrate new crypto / idp code if applicable
189+
190+
var t pb.Transaction_Type
191+
if invokeTx {
192+
t = pb.Transaction_CHAINCODE_INVOKE
259193
} else {
260-
var t pb.Transaction_Type
261-
if invokeTx {
262-
t = pb.Transaction_CHAINCODE_INVOKE
263-
} else {
264-
t = pb.Transaction_CHAINCODE_QUERY
265-
}
266-
tx, err = pb.NewChaincodeExecute(spec, uuid, t)
267-
if nil != err {
268-
return nil, err
269-
}
194+
t = pb.Transaction_CHAINCODE_QUERY
195+
}
196+
tx, err = pb.NewChaincodeExecute(spec, uuid, t)
197+
if nil != err {
198+
return nil, err
270199
}
271200
return tx, nil
272201
}
@@ -1069,48 +998,7 @@ func TestChaincodeQueryChaincodeWithSec(t *testing.T) {
1069998

1070999
viper.Set("security.enabled", "true")
10711000

1072-
//Initialize crypto
1073-
if err := crypto.Init(); err != nil {
1074-
panic(fmt.Errorf("Failed initializing the crypto layer [%s]", err))
1075-
}
1076-
1077-
//set paths for memberservice to pick up
1078-
viper.Set("peer.fileSystemPath", filepath.Join(os.TempDir(), "hyperledger", "production"))
1079-
viper.Set("server.rootpath", filepath.Join(os.TempDir(), "ca"))
1080-
1081-
var err error
1082-
var memSrvcLis net.Listener
1083-
if memSrvcLis, err = initMemSrvc(); err != nil {
1084-
t.Fail()
1085-
t.Logf("Error registering user %s", err)
1086-
return
1087-
}
1088-
1089-
defer finitMemSrvc(memSrvcLis)
1090-
1091-
time.Sleep(2 * time.Second)
1092-
1093-
var peerLis net.Listener
1094-
if peerLis, err = initPeer(); err != nil {
1095-
t.Fail()
1096-
t.Logf("Error registering user %s", err)
1097-
return
1098-
}
1099-
1100-
defer finitPeer(peerLis)
1101-
1102-
if err = crypto.RegisterClient("jim", nil, "jim", "6avZQLwcUe9b"); err != nil {
1103-
t.Fail()
1104-
t.Logf("Error registering user %s", err)
1105-
return
1106-
}
1107-
1108-
//login as jim and test chaincode-chaincode interaction with security
1109-
if err = chaincodeQueryChaincode("jim"); err != nil {
1110-
t.Fail()
1111-
t.Logf("Error executing test %s", err)
1112-
return
1113-
}
1001+
//TODO: integrate new crypto / idp code if applicable
11141002
}
11151003

11161004
// Test the invocation of a transaction.

0 commit comments

Comments
 (0)