Skip Navigation

Top feature requests added with Azure Blockchain Workbench 1.2.0

Posted on July 24, 2018

Principal Program Manager, Azure Blockchain Engineering

We’re excited to see a ton of engagement and positive feedback on Azure Blockchain Workbench since our initial public preview release in May. Last month, we made our first major update to the public preview release based on your feedback and feature requests. Today, we’re releasing our next update to Workbench, which we’re calling version 1.2.0. You can either deploy a new instance of Workbench through the Azure portal or upgrade your existing deployment to 1.2.0 using our upgrade script.

This update includes the following improvements:

Enable/disable apps

Many of you have started to iterate and create multiple blockchain apps using Workbench. One of the most requested features we’ve heard is the ability to disable unused blockchain apps within the Workbench Web app. With 1.2.0, you will be able to enable or disable applications. In addition, the UI will allow you to filter the list of applications to only show enabled or disabled applications.

image

image

BYOB – Bring Your Own Blockchain

As part of the Workbench deployment, we deploy a set of Ethereum Proof-of Authority (PoA) nodes within a single member’s subscription. This topology works great for situations where it’s OK to have one member manage all the blockchain nodes. With version 1.2.0 customers will have the choice to deploy Workbench and point that deployment to an existing Ethereum PoA network. The topology of the network can be anything you want, including a multi-member blockchain network. The network can exist anywhere, which means the network can be on prem, a hybrid deployment, or even on another cloud. The requirements are:

  • The endpoint must be an Ethereum Proof-of-Authority (PoA) blockchain network. Coming soon will be a new standalone Ethereum PoA solution, which can be used across members within a consortium.
  • The endpoint must be publicly accessible over the network.
  • The PoA blockchain network should be configured to have gas price set to zero (note, Workbench accounts are not funded, so if funds are required, transactions will fail).

The interface that allows connecting to an existing network is shown below.

image

image

Note that we have only tested Workbench against a PoA network and while other protocols may work, we cannot provide support for them at this time. We plan to release a PoA single/multi-member solution template similar to our Proof-of-Work solution template in the Azure Marketplace soon and that will be compatible with BYOB.

New supported datatype – Enum

Workbench supports several basic datatypes, such as strings and integers. With 1.2.0, we now support a the enum datatype. Enums will allow you to create blockchain apps where you can narrow selection for certain fields to a specific list. The Workbench Web app UI will show enums as a dropdown list of single-select options. The enum type is specified via the configuration file as follows:
         {
           "Name": "PropertyType",
           "DisplayName": "Property Type",
           "Description": "The type of the property",
           "Type": {
             "Name": "enum",
             "EnumValues": ["House", "Townhouse", "Condo", "Land"]
           }
         }

This configuration corresponds to the code within the smart contract. For example:

         enum PropertyTypeEnum {House, Townhouse, Condo, Land}
         PropertyTypeEnum public PropertyType;

In the Web app, you will see the following dropdown UI:

image

You can reference how to use the enum type in the Room Thermostat sample application.

Better visibility into Workbench application deployment errors

To make it easier to deploy a working Workbench application, we will show solidity warnings. These warnings don’t necessarily mean you have bugs, which need to be fixed. Instead, warnings indicate potential errors you might encounter when running your application.

image

Improvements and bug fixes

We also made several other improvements to Workbench, including:

  • The Workbench frontend and backend now fully works with more than 100 provisioned users. You will be able to connect to Azure Active Directories with more than 100 users and the Workbench client allows you to search and add users within large directories.
  • Deployment of Workbench is more reliable as we’ve addressed the top failure cases, such as database initialization and naming conflicts. 
  • Performance of the Workbench REST API has been improved by moving App Service plan to Premium V2. The higher end CPU will result in better overall performance. Note, there is no change in cost from moving to this plan.

Please use our Blockchain User Voice to provide feedback and suggest features/ideas for Workbench. Your input is helping make this a great service.  We look forward to hearing from you.