Documentation ¶
Overview ¶
Package resmgmt enables creation and update of resources on a Fabric network. It allows administrators to create and/or update channnels, and for peers to join channels. Administrators can also perform chaincode related operations on a peer, such as installing, instantiating, and upgrading chaincode.
Basic Flow: 1) Prepare client context 2) Create resource managememt client 3) Create new channel 4) Peer(s) join channel 5) Install chaincode onto peer(s) filesystem 6) Instantiate chaincode on channel 7) Query peer for channels, installed/instantiated chaincodes etc.
Index ¶
- Constants
- func CalculateConfigUpdate(channelID string, currentConfig, newConfig *common.Config) (*common.ConfigUpdate, error)
- func MarshalConfigSignature(signature *common.ConfigSignature) ([]byte, error)
- func UnmarshalConfigSignature(reader io.Reader) (*common.ConfigSignature, error)
- type CCReference
- type Client
- func (rc *Client) CreateConfigSignature(signer msp.SigningIdentity, channelConfigPath string) (*common.ConfigSignature, error)
- func (rc *Client) CreateConfigSignatureData(signer msp.SigningIdentity, channelConfigPath string) (signatureHeaderData resource.ConfigSignatureData, e error)
- func (rc *Client) CreateConfigSignatureDataFromReader(signer msp.SigningIdentity, channelConfig io.Reader) (signatureHeaderData resource.ConfigSignatureData, e error)
- func (rc *Client) CreateConfigSignatureFromReader(signer msp.SigningIdentity, channelConfig io.Reader) (*common.ConfigSignature, error)
- func (rc *Client) InstallCC(req InstallCCRequest, options ...RequestOption) ([]InstallCCResponse, error)
- func (rc *Client) InstantiateCC(channelID string, req InstantiateCCRequest, options ...RequestOption) (InstantiateCCResponse, error)
- func (rc *Client) JoinChannel(channelID string, options ...RequestOption) error
- func (rc *Client) LifecycleApproveCC(channelID string, req LifecycleApproveCCRequest, options ...RequestOption) (fab.TransactionID, error)
- func (rc *Client) LifecycleCheckCCCommitReadiness(channelID string, req LifecycleCheckCCCommitReadinessRequest, ...) (LifecycleCheckCCCommitReadinessResponse, error)
- func (rc *Client) LifecycleCommitCC(channelID string, req LifecycleCommitCCRequest, options ...RequestOption) (fab.TransactionID, error)
- func (rc *Client) LifecycleGetInstalledCCPackage(packageID string, options ...RequestOption) ([]byte, error)
- func (rc *Client) LifecycleInstallCC(req LifecycleInstallCCRequest, options ...RequestOption) ([]LifecycleInstallCCResponse, error)
- func (rc *Client) LifecycleQueryApprovedCC(channelID string, req LifecycleQueryApprovedCCRequest, ...) (LifecycleApprovedChaincodeDefinition, error)
- func (rc *Client) LifecycleQueryCommittedCC(channelID string, req LifecycleQueryCommittedCCRequest, ...) ([]LifecycleChaincodeDefinition, error)
- func (rc *Client) LifecycleQueryInstalledCC(options ...RequestOption) ([]LifecycleInstalledCC, error)
- func (rc *Client) QueryChannels(options ...RequestOption) (*pb.ChannelQueryResponse, error)
- func (rc *Client) QueryCollectionsConfig(channelID string, chaincodeName string, options ...RequestOption) (*pb.CollectionConfigPackage, error)
- func (rc *Client) QueryConfigBlockFromOrderer(channelID string, options ...RequestOption) (*common.Block, error)
- func (rc *Client) QueryConfigFromOrderer(channelID string, options ...RequestOption) (fab.ChannelCfg, error)
- func (rc *Client) QueryInstalledChaincodes(options ...RequestOption) (*pb.ChaincodeQueryResponse, error)
- func (rc *Client) QueryInstantiatedChaincodes(channelID string, options ...RequestOption) (*pb.ChaincodeQueryResponse, error)
- func (rc *Client) SaveChannel(req SaveChannelRequest, options ...RequestOption) (SaveChannelResponse, error)
- func (rc *Client) UpgradeCC(channelID string, req UpgradeCCRequest, options ...RequestOption) (UpgradeCCResponse, error)
- type ClientOption
- type InstallCCRequest
- type InstallCCResponse
- type InstantiateCCRequest
- type InstantiateCCResponse
- type LifecycleApproveCCRequest
- type LifecycleApprovedChaincodeDefinition
- type LifecycleChaincodeDefinition
- type LifecycleCheckCCCommitReadinessRequest
- type LifecycleCheckCCCommitReadinessResponse
- type LifecycleCommitCCRequest
- type LifecycleInstallCCRequest
- type LifecycleInstallCCResponse
- type LifecycleInstalledCC
- type LifecycleQueryApprovedCCRequest
- type LifecycleQueryCommittedCCRequest
- type RequestOption
- func WithConfigSignatures(signatures ...*common.ConfigSignature) RequestOption
- func WithOrderer(orderer fab.Orderer) RequestOption
- func WithOrdererEndpoint(key string) RequestOption
- func WithParentContext(parentContext reqContext.Context) RequestOption
- func WithRetry(retryOpt retry.Opts) RequestOption
- func WithTargetEndpoints(keys ...string) RequestOption
- func WithTargetFilter(targetFilter fab.TargetFilter) RequestOption
- func WithTargets(targets ...fab.Peer) RequestOption
- func WithTimeout(timeoutType fab.TimeoutType, timeout time.Duration) RequestOption
- type SaveChannelRequest
- type SaveChannelResponse
- type UpgradeCCRequest
- type UpgradeCCResponse
Constants ¶
const ( InstantiateChaincode chaincodeProposalType = iota UpgradeChaincode )
Define chaincode proposal types
Variables ¶
This section is empty.
Functions ¶
func CalculateConfigUpdate ¶
func CalculateConfigUpdate(channelID string, currentConfig, newConfig *common.Config) (*common.ConfigUpdate, error)
CalculateConfigUpdate calculates channel config update based on the difference between provided current channel config and proposed new channel config.
func MarshalConfigSignature ¶
func MarshalConfigSignature(signature *common.ConfigSignature) ([]byte, error)
MarshalConfigSignature marshals 1 ConfigSignature for the given client concatenated as []byte
func UnmarshalConfigSignature ¶
func UnmarshalConfigSignature(reader io.Reader) (*common.ConfigSignature, error)
UnmarshalConfigSignature reads 1 ConfigSignature as []byte from reader and unmarshals it
Types ¶
type CCReference ¶
type CCReference struct { Name string `json:"name,omitempty"` Version string `json:"version,omitempty"` }
CCReference contains the name and version of an instantiated chaincode that references the installed chaincode package.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client enables managing resources in Fabric network.
func New ¶
func New(ctxProvider context.ClientProvider, opts ...ClientOption) (*Client, error)
New returns a resource management client instance.
func (*Client) CreateConfigSignature ¶
func (rc *Client) CreateConfigSignature(signer msp.SigningIdentity, channelConfigPath string) (*common.ConfigSignature, error)
CreateConfigSignature creates a signature for the given client, custom signers and chConfig from channelConfigPath argument
return ConfigSignature will be signed internally by the SDK. It can be passed to WithConfigSignatures() option
Deprecated: this method is deprecated in order to use CreateConfigSignatureFromReader
func (*Client) CreateConfigSignatureData ¶
func (rc *Client) CreateConfigSignatureData(signer msp.SigningIdentity, channelConfigPath string) (signatureHeaderData resource.ConfigSignatureData, e error)
CreateConfigSignatureData will prepare a SignatureHeader and the full signing []byte (signingBytes) to be used for signing a Channel Config Deprecated: this method is deprecated in order to use CreateConfigSignatureDataFromReader
func (*Client) CreateConfigSignatureDataFromReader ¶
func (rc *Client) CreateConfigSignatureDataFromReader(signer msp.SigningIdentity, channelConfig io.Reader) (signatureHeaderData resource.ConfigSignatureData, e error)
CreateConfigSignatureDataFromReader will prepare a SignatureHeader and the full signing []byte (signingBytes) to be used for signing a Channel Config
Once SigningBytes have been signed externally (signing signatureHeaderData.SigningBytes using an external tool like OpenSSL), do the following: 1. create a common.ConfigSignature{} instance 2. assign its SignatureHeader field with the returned field 'signatureHeaderData.signatureHeader' 3. assign its Signature field with the generated signature of 'signatureHeaderData.signingBytes' from the external tool Then use WithConfigSignatures() option to pass this new instance for channel updates
func (*Client) CreateConfigSignatureFromReader ¶
func (rc *Client) CreateConfigSignatureFromReader(signer msp.SigningIdentity, channelConfig io.Reader) (*common.ConfigSignature, error)
CreateConfigSignatureFromReader creates a signature for the given client, custom signers and chConfig from io.Reader argument
return ConfigSignature will be signed internally by the SDK. It can be passed to WithConfigSignatures() option
func (*Client) InstallCC ¶
func (rc *Client) InstallCC(req InstallCCRequest, options ...RequestOption) ([]InstallCCResponse, error)
InstallCC allows administrators to install chaincode onto the filesystem of a peer. If peer(s) are not specified in options it will default to all peers that belong to admin's MSP.
Parameters: req holds info about mandatory chaincode name, path, version and policy options holds optional request options Returns: install chaincode proposal responses from peer(s)
func (*Client) InstantiateCC ¶
func (rc *Client) InstantiateCC(channelID string, req InstantiateCCRequest, options ...RequestOption) (InstantiateCCResponse, error)
InstantiateCC instantiates chaincode with optional custom options (specific peers, filtered peers, timeout). If peer(s) are not specified in options it will default to all channel peers.
Parameters: channel is manadatory channel name req holds info about mandatory chaincode name, path, version and policy options holds optional request options Returns: instantiate chaincode response with transaction ID
func (*Client) JoinChannel ¶
func (rc *Client) JoinChannel(channelID string, options ...RequestOption) error
JoinChannel allows for peers to join existing channel with optional custom options (specific peers, filtered peers). If peer(s) are not specified in options it will default to all peers that belong to client's MSP.
Parameters: channel is manadatory channel name options holds optional request options Returns: an error if join fails
func (*Client) LifecycleApproveCC ¶
func (rc *Client) LifecycleApproveCC(channelID string, req LifecycleApproveCCRequest, options ...RequestOption) (fab.TransactionID, error)
LifecycleApproveCC approves a chaincode for an organization.
func (*Client) LifecycleCheckCCCommitReadiness ¶
func (rc *Client) LifecycleCheckCCCommitReadiness(channelID string, req LifecycleCheckCCCommitReadinessRequest, options ...RequestOption) (LifecycleCheckCCCommitReadinessResponse, error)
LifecycleCheckCCCommitReadiness checks the 'commit readiness' of a chaincode. Returned are the org approvals.
func (*Client) LifecycleCommitCC ¶
func (rc *Client) LifecycleCommitCC(channelID string, req LifecycleCommitCCRequest, options ...RequestOption) (fab.TransactionID, error)
LifecycleCommitCC commits the chaincode to the given channel
func (*Client) LifecycleGetInstalledCCPackage ¶
func (rc *Client) LifecycleGetInstalledCCPackage(packageID string, options ...RequestOption) ([]byte, error)
LifecycleGetInstalledCCPackage retrieves the installed chaincode package for the given package ID. NOTE: The package ID may be computed with fab/ccpackager/lifecycle.ComputePackageID.
func (*Client) LifecycleInstallCC ¶
func (rc *Client) LifecycleInstallCC(req LifecycleInstallCCRequest, options ...RequestOption) ([]LifecycleInstallCCResponse, error)
LifecycleInstallCC installs a chaincode package using Fabric 2.0 chaincode lifecycle.
func (*Client) LifecycleQueryApprovedCC ¶
func (rc *Client) LifecycleQueryApprovedCC(channelID string, req LifecycleQueryApprovedCCRequest, options ...RequestOption) (LifecycleApprovedChaincodeDefinition, error)
LifecycleQueryApprovedCC returns information about the approved chaincode definition
func (*Client) LifecycleQueryCommittedCC ¶
func (rc *Client) LifecycleQueryCommittedCC(channelID string, req LifecycleQueryCommittedCCRequest, options ...RequestOption) ([]LifecycleChaincodeDefinition, error)
LifecycleQueryCommittedCC queries for committed chaincodes on a given channel
func (*Client) LifecycleQueryInstalledCC ¶
func (rc *Client) LifecycleQueryInstalledCC(options ...RequestOption) ([]LifecycleInstalledCC, error)
LifecycleQueryInstalledCC returns the chaincodes that were installed on a given peer with Fabric 2.0 chaincode lifecycle.
func (*Client) QueryChannels ¶
func (rc *Client) QueryChannels(options ...RequestOption) (*pb.ChannelQueryResponse, error)
QueryChannels queries the names of all the channels that a peer has joined.
Parameters: options hold optional request options Note: One target(peer) has to be specified using either WithTargetURLs or WithTargets request option Returns: all channels that peer has joined
func (*Client) QueryCollectionsConfig ¶
func (rc *Client) QueryCollectionsConfig(channelID string, chaincodeName string, options ...RequestOption) (*pb.CollectionConfigPackage, error)
QueryCollectionsConfig queries the collections config on a peer for specific channel. If peer is not specified in options it will query random peer on this channel. Parameters: channel is mandatory channel name chaincode is mandatory chaincode name options hold optional request options
Returns: list of collections config
func (*Client) QueryConfigBlockFromOrderer ¶
func (rc *Client) QueryConfigBlockFromOrderer(channelID string, options ...RequestOption) (*common.Block, error)
QueryConfigBlockFromOrderer config returns channel configuration block from orderer. If orderer is not provided using options it will be defaulted to channel orderer (if configured) or random orderer from configuration.
Parameters: channelID is mandatory channel ID options holds optional request options Returns: channel configuration block
func (*Client) QueryConfigFromOrderer ¶
func (rc *Client) QueryConfigFromOrderer(channelID string, options ...RequestOption) (fab.ChannelCfg, error)
QueryConfigFromOrderer config returns channel configuration from orderer. If orderer is not provided using options it will be defaulted to channel orderer (if configured) or random orderer from configuration.
Parameters: channelID is mandatory channel ID options holds optional request options Returns: channel configuration
func (*Client) QueryInstalledChaincodes ¶
func (rc *Client) QueryInstalledChaincodes(options ...RequestOption) (*pb.ChaincodeQueryResponse, error)
QueryInstalledChaincodes queries the installed chaincodes on a peer.
Parameters: options hold optional request options Note: One target(peer) has to be specified using either WithTargetURLs or WithTargets request option Returns: list of installed chaincodes on specified peer
func (*Client) QueryInstantiatedChaincodes ¶
func (rc *Client) QueryInstantiatedChaincodes(channelID string, options ...RequestOption) (*pb.ChaincodeQueryResponse, error)
QueryInstantiatedChaincodes queries the instantiated chaincodes on a peer for specific channel. If peer is not specified in options it will query random peer on this channel.
Parameters: channel is manadatory channel name options hold optional request options Returns: list of instantiated chaincodes
func (*Client) SaveChannel ¶
func (rc *Client) SaveChannel(req SaveChannelRequest, options ...RequestOption) (SaveChannelResponse, error)
SaveChannel creates or updates channel.
Parameters: req holds info about mandatory channel name and configuration options holds optional request options if options have signatures (WithConfigSignatures() or 1 or more WithConfigSignature() calls), then SaveChannel will use these signatures instead of creating ones for the SigningIdentities found in req. Make sure that req.ChannelConfigPath/req.ChannelConfig have the channel config matching these signatures. Returns: save channel response with transaction ID
func (*Client) UpgradeCC ¶
func (rc *Client) UpgradeCC(channelID string, req UpgradeCCRequest, options ...RequestOption) (UpgradeCCResponse, error)
UpgradeCC upgrades chaincode with optional custom options (specific peers, filtered peers, timeout). If peer(s) are not specified in options it will default to all channel peers.
Parameters: channel is manadatory channel name req holds info about mandatory chaincode name, path, version and policy options holds optional request options Returns: upgrade chaincode response with transaction ID
type ClientOption ¶
ClientOption describes a functional parameter for the New constructor
func WithDefaultTargetFilter ¶
func WithDefaultTargetFilter(filter fab.TargetFilter) ClientOption
WithDefaultTargetFilter option to configure default target filter per client
type InstallCCRequest ¶
InstallCCRequest contains install chaincode request parameters
type InstallCCResponse ¶
InstallCCResponse contains install chaincode response status
type InstantiateCCRequest ¶
type InstantiateCCRequest struct { Name string Path string Version string Lang pb.ChaincodeSpec_Type Args [][]byte Policy *common.SignaturePolicyEnvelope CollConfig []*pb.CollectionConfig }
InstantiateCCRequest contains instantiate chaincode request parameters
type InstantiateCCResponse ¶
type InstantiateCCResponse struct {
TransactionID fab.TransactionID
}
InstantiateCCResponse contains response parameters for instantiate chaincode
type LifecycleApproveCCRequest ¶
type LifecycleApproveCCRequest struct { Name string `json:"name,omitempty"` Version string `json:"version,omitempty"` PackageID string `json:"packageID,omitempty"` Sequence int64 `json:"sequence,omitempty"` EndorsementPlugin string `json:"endorsementPlugin,omitempty"` ValidationPlugin string `json:"validationPlugin,omitempty"` SignaturePolicy *common.SignaturePolicyEnvelope `json:"signaturePolicy,omitempty"` ChannelConfigPolicy string `json:"channelConfigPolicy,omitempty"` CollectionConfig []*pb.CollectionConfig `json:"collectionConfig,omitempty"` InitRequired bool `json:"initRequired,omitempty"` }
LifecycleApproveCCRequest contains the parameters for approving a chaincode for an org.
type LifecycleApprovedChaincodeDefinition ¶
type LifecycleApprovedChaincodeDefinition struct { Name string `json:"name,omitempty"` Version string `json:"version,omitempty"` Sequence int64 `json:"sequence,omitempty"` EndorsementPlugin string `json:"endorsementPlugin,omitempty"` ValidationPlugin string `json:"validationPlugin,omitempty"` SignaturePolicy *common.SignaturePolicyEnvelope `json:"signaturePolicy,omitempty"` ChannelConfigPolicy string `json:"channelConfigPolicy,omitempty"` CollectionConfig []*pb.CollectionConfig `json:"collectionConfig,omitempty"` InitRequired bool `json:"initRequired,omitempty"` PackageID string `json:"packageID,omitempty"` }
LifecycleApprovedChaincodeDefinition contains information about the approved chaincode
type LifecycleChaincodeDefinition ¶
type LifecycleChaincodeDefinition struct { Name string `json:"name,omitempty"` Version string `json:"version,omitempty"` Sequence int64 `json:"sequence,omitempty"` EndorsementPlugin string `json:"endorsementPlugin,omitempty"` ValidationPlugin string `json:"validationPlugin,omitempty"` SignaturePolicy *common.SignaturePolicyEnvelope `json:"signaturePolicy,omitempty"` ChannelConfigPolicy string `json:"channelConfigPolicy,omitempty"` CollectionConfig []*pb.CollectionConfig `json:"collectionConfig,omitempty"` InitRequired bool `json:"initRequired,omitempty"` Approvals map[string]bool `json:"approvals,omitempty"` }
LifecycleChaincodeDefinition contains information about a committed chaincode. Note that approvals are only returned if a chaincode name is provided in the request.
type LifecycleCheckCCCommitReadinessRequest ¶
type LifecycleCheckCCCommitReadinessRequest struct { Name string `json:"name,omitempty"` Version string `json:"version,omitempty"` Sequence int64 `json:"sequence,omitempty"` EndorsementPlugin string `json:"endorsementPlugin,omitempty"` ValidationPlugin string `json:"validationPlugin,omitempty"` SignaturePolicy *common.SignaturePolicyEnvelope `json:"signaturePolicy,omitempty"` ChannelConfigPolicy string `json:"channelConfigPolicy,omitempty"` CollectionConfig []*pb.CollectionConfig `json:"collectionConfig,omitempty"` InitRequired bool `json:"initRequired,omitempty"` }
LifecycleCheckCCCommitReadinessRequest contains the parameters for checking the 'commit readiness' of a chaincode
type LifecycleCheckCCCommitReadinessResponse ¶
type LifecycleCheckCCCommitReadinessResponse struct {
Approvals map[string]bool `json:"approvals,omitempty"`
}
LifecycleCheckCCCommitReadinessResponse contains the org approvals for the chaincode
type LifecycleCommitCCRequest ¶
type LifecycleCommitCCRequest struct { Name string `json:"name,omitempty"` Version string `json:"version,omitempty"` Sequence int64 `json:"sequence,omitempty"` EndorsementPlugin string `json:"endorsementPlugin,omitempty"` ValidationPlugin string `json:"validationPlugin,omitempty"` SignaturePolicy *common.SignaturePolicyEnvelope `json:"signaturePolicy,omitempty"` ChannelConfigPolicy string `json:"channelConfigPolicy,omitempty"` CollectionConfig []*pb.CollectionConfig `json:"collectionConfig,omitempty"` InitRequired bool `json:"initRequired,omitempty"` }
LifecycleCommitCCRequest contains the parameters for committing a chaincode
type LifecycleInstallCCRequest ¶
type LifecycleInstallCCRequest struct { Label string `json:"label,omitempty"` Package []byte `json:"package,omitempty"` }
LifecycleInstallCCRequest contains the parameters for installing chaincode
type LifecycleInstallCCResponse ¶
type LifecycleInstallCCResponse struct { Target string `json:"target,omitempty"` Status int32 `json:"status,omitempty"` PackageID string `json:"packageID,omitempty"` }
LifecycleInstallCCResponse contains the response from a chaincode installation
type LifecycleInstalledCC ¶
type LifecycleInstalledCC struct { PackageID string `json:"packageID,omitempty"` Label string `json:"label,omitempty"` References map[string][]CCReference `json:"references,omitempty"` }
LifecycleInstalledCC contains the package ID and label of the installed chaincode, including a map of channel name to chaincode name and version pairs of chaincode definitions that reference this chaincode package.
type LifecycleQueryApprovedCCRequest ¶
type LifecycleQueryApprovedCCRequest struct { Name string `json:"name,omitempty"` Sequence int64 `json:"sequence,omitempty"` }
LifecycleQueryApprovedCCRequest contains the parameters for querying approved chaincodes
type LifecycleQueryCommittedCCRequest ¶
type LifecycleQueryCommittedCCRequest struct {
Name string `json:"name,omitempty"`
}
LifecycleQueryCommittedCCRequest contains the parameters to query committed chaincodes. If name is not provided then all committed chaincodes on the given channel are returned, otherwise only the chaincode with the given name is returned.
type RequestOption ¶
RequestOption func for each Opts argument
func WithConfigSignatures ¶
func WithConfigSignatures(signatures ...*common.ConfigSignature) RequestOption
WithConfigSignatures allows to provide pre defined signatures for resmgmt client's SaveChannel call
func WithOrderer ¶
func WithOrderer(orderer fab.Orderer) RequestOption
WithOrderer allows an orderer to be specified for the request.
func WithOrdererEndpoint ¶
func WithOrdererEndpoint(key string) RequestOption
WithOrdererEndpoint allows an orderer to be specified for the request. The orderer will be looked-up based on the key argument. key argument can be a name or url
func WithParentContext ¶
func WithParentContext(parentContext reqContext.Context) RequestOption
WithParentContext encapsulates grpc parent context.
func WithTargetEndpoints ¶
func WithTargetEndpoints(keys ...string) RequestOption
WithTargetEndpoints allows overriding of the target peers for the request. Targets are specified by name or URL, and the SDK will create the underlying peer objects.
func WithTargetFilter ¶
func WithTargetFilter(targetFilter fab.TargetFilter) RequestOption
WithTargetFilter enables a target filter for the request.
func WithTargets ¶
func WithTargets(targets ...fab.Peer) RequestOption
WithTargets allows overriding of the target peers for the request.
func WithTimeout ¶
func WithTimeout(timeoutType fab.TimeoutType, timeout time.Duration) RequestOption
WithTimeout encapsulates key value pairs of timeout type, timeout duration to Options if not provided, default timeout configuration from config will be used
type SaveChannelRequest ¶
type SaveChannelRequest struct { ChannelID string ChannelConfig io.Reader // ChannelConfig data source ChannelConfigPath string // Convenience option to use the named file as ChannelConfig reader // Users that sign channel configuration // deprecated - one entity shouldn't have access to another entities' keys to sign on their behalf SigningIdentities []msp.SigningIdentity }
SaveChannelRequest holds parameters for save channel request
type SaveChannelResponse ¶
type SaveChannelResponse struct {
TransactionID fab.TransactionID
}
SaveChannelResponse contains response parameters for save channel
type UpgradeCCRequest ¶
type UpgradeCCRequest struct { Name string Path string Version string Lang pb.ChaincodeSpec_Type Args [][]byte Policy *common.SignaturePolicyEnvelope CollConfig []*pb.CollectionConfig }
UpgradeCCRequest contains upgrade chaincode request parameters
type UpgradeCCResponse ¶
type UpgradeCCResponse struct {
TransactionID fab.TransactionID
}
UpgradeCCResponse contains response parameters for upgrade chaincode