797ae7894e
* Use env key instead of value when adding modules * Add CLI entrypoint * Call iotedgedev addmodule when create solution * Add default routes when adding modules * Update template * Update test * Revert changes to monitor timeout * Add temp sensor route when adding module * Add copy_template function * Add default ToIoTHub route when creating solution * Update system module images to GA version * Fix incorrect string escape * Replace image placeholder with real image URL when building images * Enable Node.js module creation * Refind the logic to parse image placeholder * Won't add tempsensor route when adding modules * Minor refinement * Add nested_set utility method * Add default route from temp sensor when solution creation * Rename var_dict to replacement * Use name in env as default when new solution * WIP support for BYPASS_MODULES * WIP support for BYPASS_MODULES * WIP support for BYPASS_MODULES * Update utility methods * Update image_tag_map key type to tuple * Update Docker SDK version and remove iotedgeruntime from requirements.txt * Disable outdated test cases temporarily * Add unit test for deploymentmanifest.py * Add unit test for utility.py * Fix error on Py27 * Compare lists order-insensitively * Fix PyTest failure on Python 3 |
||
---|---|---|
.vscode | ||
assets | ||
docker | ||
iotedgedev | ||
scripts | ||
tests | ||
.env.tmp | ||
.gitignore | ||
.travis.yml | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
HISTORY.rst | ||
LICENSE | ||
MANIFEST.in | ||
Makefile | ||
README.md | ||
package-lock.json | ||
package.json | ||
pytest.ini | ||
requirements.txt | ||
requirements_dev.txt | ||
requirements_nodeps.txt | ||
requirements_travis.txt | ||
setup.cfg | ||
setup.py | ||
tox.ini | ||
travis_pypi_setup.py |
README.md
Azure IoT Edge Dev Tool
IOTEDGEDEV DOES NOT WORK WITH IOT EDGE GA BITS. UPDATE COMING SOON. PLEASE WATCH THIS REPO FOR NOTIFICATIONS
The Azure IoT Edge Dev Tool greatly simplifies Azure IoT Edge development down to simple commands driven by Environment Variables.
- It gets you started with IoT Edge development with the IoT Edge Dev Container and IoT Edge Solution Scaffolding that contains a sample module and all the required configuration files.
- It speeds up your inner-loop dev (dev, debug, test) by reducing multi-step build & deploy processes into one-line CLI commands and well as drive your outer-loop CI/CD pipeline. You can use all the same commands in both stages of your development life-cycle.
Overview
For the absolute fastest way to get started with IoT Edge Dev, please see the Quickstart section below.
For a more detailed overview of IoT Edge Dev Tool including setup and commands, please see the Wiki.
Quickstart
This quickstart will run a container, create a solution, setup Azure resources, build and deploy modules to your device, setup and start the Edge Runtime and then monitor messages flowing into IoT Hub.
Here's a 3 minute video walk-through of this Quickstart:
The only thing you need to install is Docker. All of the other dev dependencies are included in the container.
-
Install Docker
- Open Docker Settings and setup a Shared Drive that you'll use to store your IoT Edge Solution files.
-
Run the Azure IoT Edge Dev Container
Before you run the container, you will need to create a local folder to store your IoT Edge solution files.
Windows
mkdir c:\temp\iotedge docker run -ti -v /var/run/docker.sock:/var/run/docker.sock -v c:/temp/iotedge:/home/iotedge microsoft/iotedgedev
Linux
sudo mkdir /home/iotedge docker run -ti -v /var/run/docker.sock:/var/run/docker.sock -v /home/iotedge:/home/iotedge microsoft/iotedgedev
-
Initialize Edge Solution and Setup Azure Resources
iotedgedev init
'iotedgedev init' will run both 'iotedgedev solution .' and 'iotedgedev azure', which will create a solution and setup your Azure resource in a single comamnd.
-
Build & Push IoT Edge Modules
iotedgedev push
You can also combine build, push and deploy with
iotedgedev push --deploy
-
Deploy Modules to IoT Edge Device
iotedgedev deploy
-
Start the IoT Edge Runtime
iotedgedev start
-
Monitor Messages sent from IoT Edge to IoT Hub
iotedgedev monitor
Resources
Please refer to the Wiki for details on setup, usage, and troubleshooting.
Please refer to the Contributing file for details on contributing changes.