Use Advanced Deployment

(Hyperledger Fabric v2.2.4) Use the advanced deployment option to specify the parameters required to deploy a chaincode into a production environment. For example, you’ll specify which peers to install the chaincode on and the endorsement policy to use.

Note the following information:
  • The process to deploy sample chaincodes is different than the process described in this topic. See Explore Oracle Blockchain Platform Using Samples (Hyperledger Fabric v2.2.4).
  • You can use the quick deployment option for chaincode testing. Quick deployment is a one-step deployment that uses default settings, installs the chaincode on all peers in the channel, and deploys the chaincode using a default endorsement policy. See Use Quick Deployment.
  • You can’t delete a chaincode from the network.
You must be an administrator to perform this task.
  1. Go to the console and select the Chaincodes tab.
  2. In the Chaincodes tab, click Deploy a New Chaincode.
    The Deploy Chaincode page is displayed.
  3. Click Advanced Deployment.
    The Deploy Chaincode (Advanced) Step 1 of 2: Install page is displayed.
  4. In the Package Label field, enter a description of the chaincode package.
    Use the following guidelines when labeling the chaincode:
    • Use ASCII alphanumeric characters, dashes (-), and underscores (_).
    • The label must start and end only with ASCII alphanumeric characters. For example, you can't use labels such as _mychaincode or mychaincode_.
    • Dashes (-) and underscores (_) must be followed by ASCII alphanumeric characters. For example, you can't use names like my--chaincode or my-_chaincode.
    • The package label can be up to 50 characters long.
  5. Select the languange that the chaincode is written in, and select one or more network peers to install the chaincode onto. To provide high availability, choose the appropriate number of peers from each partition. The peers you choose must be joined to the channel that you’ll instantiate the chaincode on.
  6. Click Upload Chaincode File and browse for the chaincode ZIP file to upload and deploy. Click Next.
    The chaincode is installed and the Deploy Chaincode (Advanced) Step 2 of 2: Deploy page is displayed.
  7. Decide if you want to deploy the chaincode now or later.
    • Click Close to close the wizard and deploy later.
    • To deploy now, select the channel to deploy the chaincode on.
  8. In the Chaincode Name field, enter a unique name for the chaincode. In the Version field enter a string value to specify the chaincode’s version number.
    Use these guidelines when naming the chaincode:
    • Use ASCII alphanumeric characters, dashes (-), and underscores (_).
    • The name must start and end only with ASCII alphanumeric characters.
    • Dashes (-) and underscores (_) must be followed with ASCII alphanumeric characters.
    • The name and version can each be up to 64 characters long.
    • The chaincode version can also contain periods (.) and plus signs (+).
  9. If the chaincode requires initialization, select Init-required.
    If Init-required is selected, the client application must invoke the Init function explicitly, by specifying the isInit flag, before calling any other function.
  10. If required, enter an endorsement policy and private data collections, and then click Next. For more information about endorsement policies, see Specify an Endorsement Policy. For more information about private data collections, see Add Private Data Collections.
    Note the following information:
    • Deployment approves, commits, and initializes the chaincode on the channel.
    • If you do not change the endorsement policy, Oracle Blockchain Platform uses the default endorsement policy. The default endorsement policy is defined in the /Channel/Application/Endorsement policy of the channel where you are deploying the chaincode. The default endorsement policy gets an endorsement from any peer from any organization on the network.
    • When deployment is complete, the peers are able to accept chaincode invocations and can endorse transactions.
    The chaincode is deployed.