• 3 min read

Developer tooling improvements for Azure IoT Edge

Today we are excited to announce and highlight several tooling improvements for developers building solutions that are using Azure IoT Edge.

Today we are excited to announce and highlight several tooling improvements for developers building solutions that are using Azure IoT Edge. For your IoT solutions, Azure IoT Edge moves cloud analytics and custom business logic to devices so that your organization can focus on business insights instead of data management. Learn more about Azure IoT Edge in this overview article. In this blog post I will highlight the latest improvements in our developer tooling.

Azure IoT Edge extension for Visual Studio 2017 (preview)

With this new extension developers in Visual Studio 2017 will be able to easily create, debug, and deploy solutions using Azure IoT Edge. This first preview build supports C# modules for Azure IoT Edge. Here is how you get started:

  1. Install the new extension and the required prerequisites.
  2. Open Visual Studio 2017 and go to File > New > Project.
  3. Under the C# category, select “Azure IoT Edge Project”.

azure-iot-edge-vs

Now you are ready to run your first Edge module and see data flowing through the solution thanks to the simulator that comes with the extension. To see this in action set a breakpoint in file Program.cs in method PipeMessage() and hit F5.

Azure IoT Edge Extension for Visual Studio 2017 (2)

When you are ready to deploy your Azure IoT Edge modules to an actual device, you can easily deploy from Visual Studio 2017 thanks to the integration with the Cloud Explorer. First, make sure you right-click on the project and select “Build and Push IoT Edge Solution”. Then, find your Azure IoT Hub service and the Edge device to deploy to in the Cloud Explorer view and select “Create Deployment”:

Search for resources

Learn more about the new Visual Studio 2017 extension for Azure IoT Edge.

Azure IoT Edge Jenkins plugin

We are also happy to share that the Azure IoT Edge Jenkins plugin has been released. This release provides native Jenkins capabilities to continuously build IoT Edge solutions and deploy to Azure IoT Edge devices. You can choose to use Azure DevOps Services together with Jenkins, or leverage this plugin to deliver your Intelligent Edge solutions including:

  • Build Azure IoT Edge modules in C#, Python, Node.js, C or Java, or C# Functions.
  • Push modules to Azure Container Registry or other registries of your choice.
  • Build Linux containers or Windows containers.
  • Deploy to individual IoT Edge devices or deploy to multiple devices at scale.

azure-iot-edge-jenkins

Learn more about the new Azure IoT Edge Jenkins plugin.

Updates for Azure IoT Edge extension for Visual Studio Code

For developers who are using the existing Azure IoT extensions for Visual Code for their Edge solution development, we have also recently released several important improvements including the following highlights:

Select Module Template

Learn more about the recent Azure IoT Edge Extension improvements for Visual Studio Code.

CLI for Azure IoT Edge developers: iotedgedev

Last but not least, the open source IoT Edge Dev Tool simplifies inner-loop development tasks (code, debug, test) as well as CI/CD tasks with an easy to use command line interface:

Usage: iotedgedev [OPTIONS] COMMAND [ARGS]...

Options:
   --version   Show the version and exit.
   -h, --help  Show this message and exit.

Commands:
   add        Add a new module to the solution
   build      Build the solution
   deploy     Deploy solution to IoT Edge device
   genconfig  Expand environment variables and placeholders in *.template.json
              and copy to config folder
   init       Create a new IoT Edge solution and provision Azure resources
   log        Open a new terminal window for EdgeAgent, EdgeHub and each Edge
              module and save to LOGS_PATH
   monitor    Monitor messages from IoT Edge device to IoT Hub
   new        Create a new IoT Edge solution
   push       Push module images to container registry
   setup      Setup IoT Edge simulator. This must be done before starting
   start      Start IoT Edge simulator
   stop       Stop IoT Edge simulator
   docker     Manage Docker
   iothub     Manage IoT Hub and IoT Edge devices
   simulator  Manage IoT Edge simulator
   solution   Manage IoT Edge solutions

To get started with the CLI, please follow this quickstart. For additional details visit the iotedgedev wiki and see this post.