コード例 #1
0
def step_impl(context, userName, certAlias, genisisBlockName,
              joinChannelResult):
    timeout = 10
    directory = bootstrap_util.getDirectory(context)
    user = directory.getUser(userName)
    # Find the cert using the cert tuple information saved for the user under certAlias
    signersCert = directory.findCertForNodeAdminTuple(user.tags[certAlias])

    # Retrieve the genesis block from the returned value of deliver (Will be list with first block as genesis block)
    genesisBlock = user.tags[genisisBlockName][0]
    ccSpec = endorser_util.getChaincodeSpec(
        "GOLANG", "", "cscc",
        ["JoinChain", genesisBlock.SerializeToString()])
    proposal = endorser_util.createInvokeProposalForBDD(
        context,
        ccSpec=ccSpec,
        chainID="",
        signersCert=signersCert,
        Mspid=user.tags[certAlias].organization,
        type="CONFIG")
    signedProposal = endorser_util.signProposal(proposal=proposal,
                                                entity=user,
                                                signersCert=signersCert)

    # Send proposal to each specified endorser, waiting 'timeout' seconds for response/error
    endorsers = [row['Peer'] for row in context.table.rows]
    proposalResponseFutures = [
        endorserStub.ProcessProposal.future(signedProposal, int(timeout))
        for endorserStub in endorser_util.getEndorserStubs(context, endorsers)
    ]
    resultsDict = dict(
        zip(endorsers,
            [respFuture.result() for respFuture in proposalResponseFutures]))
    user.setTagValue(joinChannelResult, resultsDict)
コード例 #2
0
def step_impl(context, userName, genisisBlockName, composeService,
              joinChannelResult):
    timeout = 10
    directory = bootstrap_util.getDirectory(context)
    user = directory.getUser(userName)
    # Collect the cert tuple information
    row = context.table.rows[0]
    signersCert = directory.findCertByTuple(row['Developer'],
                                            row['ChainCreationPolicyName'],
                                            row['Organization'])

    # Retrieve the genesis block from the returned value of deliver (Will be list with first block as genesis block)
    genesisBlock = user.tags[genisisBlockName][0]
    ccSpec = endorser_util.getChaincodeSpec(
        "GOLANG", "", "cscc",
        ["JoinChain", genesisBlock.SerializeToString()])
    proposal = endorser_util.createInvokeProposalForBDD(
        ccSpec=ccSpec, chainID="", signersCert=signersCert, Mspid="DEFAULT")
    signedProposal = endorser_util.signProposal(proposal=proposal,
                                                entity=user,
                                                signersCert=signersCert)

    # Send proposal to each specified endorser, waiting 'timeout' seconds for response/error
    endorsers = [composeService]
    proposalResponseFutures = [
        endorserStub.ProcessProposal.future(signedProposal, int(timeout))
        for endorserStub in endorser_util.getEndorserStubs(context, endorsers)
    ]
    resultsDict = dict(
        zip(endorsers,
            [respFuture.result() for respFuture in proposalResponseFutures]))
    user.tags[joinChannelResult] = resultsDict
コード例 #3
0
ファイル: endorser_impl.py プロジェクト: conseweb/fabric
def step_impl(context, userName, ccType, chaincodeName, chaincodePath, ccSpecAlias):
	directory = bootstrap_util.getDirectory(context=context)
	user = directory.getUser(userName)
	args =  bootstrap_util.getArgsFromContextForUser(context, userName)
	ccSpec = endorser_util.getChaincodeSpec(ccType=ccType, path=chaincodePath, name=chaincodeName, args=bdd_grpc_util.toStringArray(args))
	print("ccSpec = {0}".format(ccSpec))
	user.tags[ccSpecAlias] = ccSpec
コード例 #4
0
def step_impl(context, enrollId, ccType, chaincodePath, ccSpecAlias):
    userRegistration = bdd_test_util.getUserRegistration(context, enrollId)
    args = bdd_grpc_util.getArgsFromContextForUser(context, enrollId)
    ccSpec = endorser_util.getChaincodeSpec(ccType, chaincodePath,
                                            bdd_grpc_util.toStringArray(args))
    print("ccSpec = {0}".format(ccSpec))
    userRegistration.tags[ccSpecAlias] = ccSpec
コード例 #5
0
def step_impl(context, userName, ccType, chaincodeName, chaincodePath,
              ccSpecAlias):
    directory = bootstrap_util.getDirectory(context=context)
    user = directory.getUser(userName)
    args = bootstrap_util.getArgsFromContextForUser(context, userName)
    ccSpec = endorser_util.getChaincodeSpec(
        ccType=ccType,
        path=chaincodePath,
        name=chaincodeName,
        args=bdd_grpc_util.toStringArray(args))
    print("ccSpec = {0}".format(ccSpec))
    user.setTagValue(ccSpecAlias, ccSpec)
コード例 #6
0
ファイル: bootstrap_impl.py プロジェクト: conseweb/fabric
def step_impl(context, userName, certAlias, genisisBlockName, joinChannelResult):
    timeout = 10
    directory = bootstrap_util.getDirectory(context)
    user = directory.getUser(userName)
    # Find the cert using the cert tuple information saved for the user under certAlias
    signersCert = directory.findCertForNodeAdminTuple(user.tags[certAlias])

    # Retrieve the genesis block from the returned value of deliver (Will be list with first block as genesis block)
    genesisBlock = user.tags[genisisBlockName][0]
    ccSpec = endorser_util.getChaincodeSpec("GOLANG", "", "cscc", ["JoinChain", genesisBlock.SerializeToString()])
    proposal = endorser_util.createInvokeProposalForBDD(ccSpec=ccSpec, chainID="",signersCert=signersCert, Mspid="DEFAULT", type="CONFIGURATION_TRANSACTION")
    signedProposal = endorser_util.signProposal(proposal=proposal, entity=user, signersCert=signersCert)

    # Send proposal to each specified endorser, waiting 'timeout' seconds for response/error
    endorsers = [row['Peer'] for row in context.table.rows]
    proposalResponseFutures = [endorserStub.ProcessProposal.future(signedProposal, int(timeout)) for endorserStub in endorser_util.getEndorserStubs(context, endorsers)]
    resultsDict =  dict(zip(endorsers, [respFuture.result() for respFuture in proposalResponseFutures]))
    user.tags[joinChannelResult] = resultsDict
コード例 #7
0
ファイル: endorser_impl.py プロジェクト: 0yukikaze0/fabric
def step_impl(context, enrollId, ccType, chaincodePath, ccSpecAlias):
	userRegistration = bdd_test_util.getUserRegistration(context, enrollId)
	args =  bdd_grpc_util.getArgsFromContextForUser(context, enrollId)
	ccSpec = endorser_util.getChaincodeSpec(ccType, chaincodePath, bdd_grpc_util.toStringArray(args))
	print("ccSpec = {0}".format(ccSpec))
	userRegistration.tags[ccSpecAlias] = ccSpec