iotedgedev 3.3.4__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (356) hide show
  1. s/.devcontainer/Dockerfile +75 -0
  2. s/.devcontainer/devcontainer.json +40 -0
  3. s/.devcontainer/library-scripts/docker-in-docker-debian.sh +236 -0
  4. s/.env.tmp +108 -0
  5. s/.git/FETCH_HEAD +61 -0
  6. s/.git/HEAD +1 -0
  7. s/.git/config +12 -0
  8. s/.git/description +1 -0
  9. s/.git/hooks/applypatch-msg.sample +15 -0
  10. s/.git/hooks/commit-msg.sample +24 -0
  11. s/.git/hooks/fsmonitor-watchman.sample +173 -0
  12. s/.git/hooks/post-update.sample +8 -0
  13. s/.git/hooks/pre-applypatch.sample +14 -0
  14. s/.git/hooks/pre-commit.sample +49 -0
  15. s/.git/hooks/pre-merge-commit.sample +13 -0
  16. s/.git/hooks/pre-push.sample +53 -0
  17. s/.git/hooks/pre-rebase.sample +169 -0
  18. s/.git/hooks/pre-receive.sample +24 -0
  19. s/.git/hooks/prepare-commit-msg.sample +42 -0
  20. s/.git/hooks/push-to-checkout.sample +78 -0
  21. s/.git/hooks/update.sample +128 -0
  22. s/.git/index +0 -0
  23. s/.git/info/exclude +6 -0
  24. s/.git/logs/HEAD +1 -0
  25. s/.git/logs/refs/remotes/origin/EO +1 -0
  26. s/.git/logs/refs/remotes/origin/avagraw/security_fix +1 -0
  27. s/.git/logs/refs/remotes/origin/cherry-pick-rename +1 -0
  28. s/.git/logs/refs/remotes/origin/chyuan/fix-validation-not-fail-test +1 -0
  29. s/.git/logs/refs/remotes/origin/chyuan/update-linux-agent +1 -0
  30. s/.git/logs/refs/remotes/origin/dependabot/pip/pyyaml-5.4 +1 -0
  31. s/.git/logs/refs/remotes/origin/eliises/add-device-tagging-docs +1 -0
  32. s/.git/logs/refs/remotes/origin/main +1 -0
  33. s/.git/logs/refs/remotes/origin/ray-deps +1 -0
  34. s/.git/logs/refs/remotes/origin/ray-dev-setup +1 -0
  35. s/.git/logs/refs/remotes/origin/ray-tox +1 -0
  36. s/.git/logs/refs/remotes/origin/release-pipeline-automation +1 -0
  37. s/.git/logs/refs/remotes/origin/spmcdono/fix-pipeline-test-install +1 -0
  38. s/.git/logs/refs/remotes/origin/spmcdono/layered-deployments +1 -0
  39. s/.git/logs/refs/remotes/origin/spmcdono/pypi-package-test-pipeline +1 -0
  40. s/.git/logs/refs/remotes/origin/spmcdono/remove-py2 +1 -0
  41. s/.git/logs/refs/remotes/origin/spmcdono/remove-py2-dev +1 -0
  42. s/.git/logs/refs/remotes/origin/spmcdono/test-native-runtime-install +1 -0
  43. s/.git/logs/refs/remotes/origin/spmcdono/update-pipeline +1 -0
  44. s/.git/logs/refs/remotes/origin/user/marine/EliiseS/devcontainer +1 -0
  45. s/.git/logs/refs/remotes/origin/user/marine/fixsimver +1 -0
  46. s/.git/logs/refs/remotes/origin/user/marine/layereddeploymentsbuildtest +1 -0
  47. s/.git/logs/refs/remotes/origin/user/marine/master-to-main +1 -0
  48. s/.git/logs/refs/remotes/origin/user/marine/pipeline +1 -0
  49. s/.git/logs/refs/remotes/origin/user/vikas +1 -0
  50. s/.git/logs/refs/remotes/origin/user/vikas0212/verify-tests +1 -0
  51. s/.git/logs/refs/remotes/origin/user/vikas2 +1 -0
  52. s/.git/logs/refs/remotes/origin/user/vikas_pypi +1 -0
  53. s/.git/logs/refs/remotes/origin/user/vikas_pypi-1 +1 -0
  54. s/.git/logs/refs/remotes/origin/user/vikas_testing +1 -0
  55. s/.git/logs/refs/remotes/origin/user/xinzed/dps_conn_str +1 -0
  56. s/.git/logs/refs/remotes/origin/user/xinzed/update-python-docker +1 -0
  57. s/.git/logs/refs/remotes/origin/vikas/azure +1 -0
  58. s/.git/logs/refs/remotes/origin/vikas/dependebot +1 -0
  59. s/.git/logs/refs/remotes/origin/xinzed/3_1_0rc1 +1 -0
  60. s/.git/logs/refs/remotes/origin/xinzed/update-runtime +1 -0
  61. s/.git/objects/pack/pack-a8179feb7da51d11a42c37c5b3c8593cffe17075.idx +0 -0
  62. s/.git/objects/pack/pack-a8179feb7da51d11a42c37c5b3c8593cffe17075.pack +0 -0
  63. s/.git/refs/remotes/origin/EO +1 -0
  64. s/.git/refs/remotes/origin/avagraw/security_fix +1 -0
  65. s/.git/refs/remotes/origin/cherry-pick-rename +1 -0
  66. s/.git/refs/remotes/origin/chyuan/fix-validation-not-fail-test +1 -0
  67. s/.git/refs/remotes/origin/chyuan/update-linux-agent +1 -0
  68. s/.git/refs/remotes/origin/dependabot/pip/pyyaml-5.4 +1 -0
  69. s/.git/refs/remotes/origin/eliises/add-device-tagging-docs +1 -0
  70. s/.git/refs/remotes/origin/main +1 -0
  71. s/.git/refs/remotes/origin/ray-deps +1 -0
  72. s/.git/refs/remotes/origin/ray-dev-setup +1 -0
  73. s/.git/refs/remotes/origin/ray-tox +1 -0
  74. s/.git/refs/remotes/origin/release-pipeline-automation +1 -0
  75. s/.git/refs/remotes/origin/spmcdono/fix-pipeline-test-install +1 -0
  76. s/.git/refs/remotes/origin/spmcdono/layered-deployments +1 -0
  77. s/.git/refs/remotes/origin/spmcdono/pypi-package-test-pipeline +1 -0
  78. s/.git/refs/remotes/origin/spmcdono/remove-py2 +1 -0
  79. s/.git/refs/remotes/origin/spmcdono/remove-py2-dev +1 -0
  80. s/.git/refs/remotes/origin/spmcdono/test-native-runtime-install +1 -0
  81. s/.git/refs/remotes/origin/spmcdono/update-pipeline +1 -0
  82. s/.git/refs/remotes/origin/user/marine/EliiseS/devcontainer +1 -0
  83. s/.git/refs/remotes/origin/user/marine/fixsimver +1 -0
  84. s/.git/refs/remotes/origin/user/marine/layereddeploymentsbuildtest +1 -0
  85. s/.git/refs/remotes/origin/user/marine/master-to-main +1 -0
  86. s/.git/refs/remotes/origin/user/marine/pipeline +1 -0
  87. s/.git/refs/remotes/origin/user/vikas +1 -0
  88. s/.git/refs/remotes/origin/user/vikas0212/verify-tests +1 -0
  89. s/.git/refs/remotes/origin/user/vikas2 +1 -0
  90. s/.git/refs/remotes/origin/user/vikas_pypi +1 -0
  91. s/.git/refs/remotes/origin/user/vikas_pypi-1 +1 -0
  92. s/.git/refs/remotes/origin/user/vikas_testing +1 -0
  93. s/.git/refs/remotes/origin/user/xinzed/dps_conn_str +1 -0
  94. s/.git/refs/remotes/origin/user/xinzed/update-python-docker +1 -0
  95. s/.git/refs/remotes/origin/vikas/azure +1 -0
  96. s/.git/refs/remotes/origin/vikas/dependebot +1 -0
  97. s/.git/refs/remotes/origin/xinzed/3_1_0rc1 +1 -0
  98. s/.git/refs/remotes/origin/xinzed/update-runtime +1 -0
  99. s/.git/refs/tags/v0.49.0 +1 -0
  100. s/.git/refs/tags/v0.50.0 +1 -0
  101. s/.git/refs/tags/v0.51.0 +1 -0
  102. s/.git/refs/tags/v0.52.0 +1 -0
  103. s/.git/refs/tags/v0.53.0 +1 -0
  104. s/.git/refs/tags/v0.54.0 +1 -0
  105. s/.git/refs/tags/v0.55.0 +1 -0
  106. s/.git/refs/tags/v0.56.0 +1 -0
  107. s/.git/refs/tags/v0.57.0 +1 -0
  108. s/.git/refs/tags/v0.58.0 +1 -0
  109. s/.git/refs/tags/v0.59.0 +1 -0
  110. s/.git/refs/tags/v0.60.0 +1 -0
  111. s/.git/refs/tags/v0.61.0 +1 -0
  112. s/.git/refs/tags/v0.62.0 +1 -0
  113. s/.git/refs/tags/v0.63.0 +1 -0
  114. s/.git/refs/tags/v0.64.0 +1 -0
  115. s/.git/refs/tags/v0.65.0 +1 -0
  116. s/.git/refs/tags/v0.66.0 +1 -0
  117. s/.git/refs/tags/v0.67.0 +1 -0
  118. s/.git/refs/tags/v0.68.0 +1 -0
  119. s/.git/refs/tags/v0.69.0 +1 -0
  120. s/.git/refs/tags/v0.70.0 +1 -0
  121. s/.git/refs/tags/v0.71.0 +1 -0
  122. s/.git/refs/tags/v0.72.0 +1 -0
  123. s/.git/refs/tags/v0.73.0 +1 -0
  124. s/.git/refs/tags/v0.74.0 +1 -0
  125. s/.git/refs/tags/v0.75.0 +1 -0
  126. s/.git/refs/tags/v0.76.0 +1 -0
  127. s/.git/refs/tags/v0.77.0 +1 -0
  128. s/.git/refs/tags/v0.78.0 +1 -0
  129. s/.git/refs/tags/v0.79.0 +1 -0
  130. s/.git/refs/tags/v0.82.0 +1 -0
  131. s/.git/refs/tags/v0.82.0-container +1 -0
  132. s/.git/refs/tags/v1.0.0 +1 -0
  133. s/.git/refs/tags/v1.1.0 +1 -0
  134. s/.git/refs/tags/v1.2.0 +1 -0
  135. s/.git/refs/tags/v1.3.0 +1 -0
  136. s/.git/refs/tags/v2.0.0 +1 -0
  137. s/.git/refs/tags/v2.0.1 +1 -0
  138. s/.git/refs/tags/v2.0.2 +1 -0
  139. s/.git/refs/tags/v2.1.0 +1 -0
  140. s/.git/refs/tags/v2.1.1 +1 -0
  141. s/.git/refs/tags/v2.1.2 +1 -0
  142. s/.git/refs/tags/v2.1.3 +1 -0
  143. s/.git/refs/tags/v2.1.4 +1 -0
  144. s/.git/refs/tags/v2.1.6 +1 -0
  145. s/.git/refs/tags/v2.2.0 +1 -0
  146. s/.git/refs/tags/v3.0.0 +1 -0
  147. s/.git/refs/tags/v3.0.0-rc +1 -0
  148. s/.git/refs/tags/v3.1.0 +1 -0
  149. s/.git/refs/tags/v3.1.1 +1 -0
  150. s/.git/refs/tags/v3.1.2 +1 -0
  151. s/.git/refs/tags/v3.2.0 +1 -0
  152. s/.git/refs/tags/v3.2.0rc0 +1 -0
  153. s/.git/refs/tags/v3.3.0 +1 -0
  154. s/.git/refs/tags/v3.3.1 +1 -0
  155. s/.git/refs/tags/v3.3.2 +1 -0
  156. s/.git/refs/tags/v3.3.3 +1 -0
  157. s/.git/refs/tags/v3.3.3-rc0 +1 -0
  158. s/.git/refs/tags/v3.3.4 +1 -0
  159. s/.github/ISSUE_TEMPLATE/bug_report.md +16 -0
  160. s/.github/ISSUE_TEMPLATE/feature_request.md +7 -0
  161. s/.github/workflows/wiki.yml +54 -0
  162. s/.gitignore +103 -0
  163. s/.vscode/launch.json +26 -0
  164. s/.vscode/settings.json +30 -0
  165. s/CHANGELOG.md +156 -0
  166. s/CODE_OF_CONDUCT.md +1 -0
  167. s/CONTRIBUTING.md +122 -0
  168. s/LICENSE +14 -0
  169. s/MANIFEST.in +7 -0
  170. s/Makefile +87 -0
  171. s/README.md +204 -0
  172. s/assets/armdeployment.png +0 -0
  173. s/assets/armoutputs.png +0 -0
  174. s/assets/deploy/ARMDeployment/ARMDeployment.deployproj +36 -0
  175. s/assets/deploy/ARMDeployment/Deploy-AzureResourceGroup.ps1 +118 -0
  176. s/assets/deploy/ARMDeployment/azuredeploy.json +145 -0
  177. s/assets/deploy/ARMDeployment/azuredeploy.parameters.json +6 -0
  178. s/assets/deploy/ARMDeployment.sln +25 -0
  179. s/assets/edgedevtool2mins.png +0 -0
  180. s/assets/edgedevtoolintro.png +0 -0
  181. s/assets/edgedevtoolquickstartlarge.png +0 -0
  182. s/assets/edgedevtoolquickstartsmall.png +0 -0
  183. s/assets/edgedevtoolwsl.png +0 -0
  184. s/azure-pipelines.yml +144 -0
  185. s/build/lib/iotedgedev/__init__.py +6 -0
  186. s/build/lib/iotedgedev/args.py +18 -0
  187. s/build/lib/iotedgedev/azurecli.py +542 -0
  188. s/build/lib/iotedgedev/buildoptionsparser.py +151 -0
  189. s/build/lib/iotedgedev/buildprofile.py +5 -0
  190. s/build/lib/iotedgedev/cli.py +830 -0
  191. s/build/lib/iotedgedev/connectionstring.py +58 -0
  192. s/build/lib/iotedgedev/constants.py +12 -0
  193. s/build/lib/iotedgedev/containerregistry.py +5 -0
  194. s/build/lib/iotedgedev/decorators.py +116 -0
  195. s/build/lib/iotedgedev/deploymentmanifest.py +313 -0
  196. s/build/lib/iotedgedev/dockercls.py +255 -0
  197. s/build/lib/iotedgedev/dotnet.py +31 -0
  198. s/build/lib/iotedgedev/edge.py +33 -0
  199. s/build/lib/iotedgedev/envvars.py +240 -0
  200. s/build/lib/iotedgedev/iothub.py +65 -0
  201. s/build/lib/iotedgedev/module.py +62 -0
  202. s/build/lib/iotedgedev/modules.py +332 -0
  203. s/build/lib/iotedgedev/organizedgroup.py +48 -0
  204. s/build/lib/iotedgedev/output.py +57 -0
  205. s/build/lib/iotedgedev/simulator.py +58 -0
  206. s/build/lib/iotedgedev/solution.py +48 -0
  207. s/build/lib/iotedgedev/telemetry.py +155 -0
  208. s/build/lib/iotedgedev/telemetryconfig.py +85 -0
  209. s/build/lib/iotedgedev/telemetryuploader.py +53 -0
  210. s/build/lib/iotedgedev/template/.env.tmp +87 -0
  211. s/build/lib/iotedgedev/template/.gitignore +10 -0
  212. s/build/lib/iotedgedev/template/deployment.template.json +79 -0
  213. s/build/lib/iotedgedev/template/launch_c.json +50 -0
  214. s/build/lib/iotedgedev/template/launch_csharp.json +43 -0
  215. s/build/lib/iotedgedev/template/launch_java.json +27 -0
  216. s/build/lib/iotedgedev/template/launch_node.json +36 -0
  217. s/build/lib/iotedgedev/template/launch_python.json +22 -0
  218. s/build/lib/iotedgedev/utility.py +179 -0
  219. s/build/lib/iotedgedev/version.py +4 -0
  220. s/build.sh +150 -0
  221. s/cleanup.sh +7 -0
  222. s/dist/iotedgedev-3.3.4-py3-none-any.whl +0 -0
  223. s/docker/tool/build-docker.sh +168 -0
  224. s/docker/tool/deps.txt +7 -0
  225. s/docker/tool/linux/Dockerfile +7 -0
  226. s/docker/tool/linux/Dockerfile.base +61 -0
  227. s/docker/tool/linux/install-dev.sh +8 -0
  228. s/docker/tool/linux/run.ps1 +5 -0
  229. s/docker/tool/linux/run.sh +5 -0
  230. s/docker/tool/push-docker.sh +35 -0
  231. s/docker/tool/windows/Dockerfile +4 -0
  232. s/docker/tool/windows/Dockerfile.base +63 -0
  233. s/docker/tool/windows/install-dev.bat +4 -0
  234. s/docker/tool/windows/run.ps1 +30 -0
  235. s/docs/Azure-Setup.md +102 -0
  236. s/docs/Command-List.md +564 -0
  237. s/docs/Command-Tips.md +51 -0
  238. s/docs/Edge-Device-Setup.md +23 -0
  239. s/docs/Home.md +10 -0
  240. s/docs/Manual-Dev-Machine-Setup.md +77 -0
  241. s/docs/Migration-Guides.md +131 -0
  242. s/docs/Overview.md +66 -0
  243. s/docs/Python-Virtual-Environment-Setup.md +35 -0
  244. s/docs/Quickstart-with-IoT-Edge-Dev-Container.md +145 -0
  245. s/docs/Test-Coverage.md +7 -0
  246. s/docs/Troubleshooting.md +21 -0
  247. s/docs/Usage.md +123 -0
  248. s/docs/_Sidebar.md +13 -0
  249. s/iotedgedev/__init__.py +6 -0
  250. s/iotedgedev/args.py +18 -0
  251. s/iotedgedev/azurecli.py +542 -0
  252. s/iotedgedev/buildoptionsparser.py +151 -0
  253. s/iotedgedev/buildprofile.py +5 -0
  254. s/iotedgedev/cli.py +830 -0
  255. s/iotedgedev/connectionstring.py +58 -0
  256. s/iotedgedev/constants.py +12 -0
  257. s/iotedgedev/containerregistry.py +5 -0
  258. s/iotedgedev/decorators.py +116 -0
  259. s/iotedgedev/deploymentmanifest.py +313 -0
  260. s/iotedgedev/dockercls.py +255 -0
  261. s/iotedgedev/dotnet.py +31 -0
  262. s/iotedgedev/edge.py +33 -0
  263. s/iotedgedev/envvars.py +240 -0
  264. s/iotedgedev/iothub.py +65 -0
  265. s/iotedgedev/module.py +62 -0
  266. s/iotedgedev/modules.py +332 -0
  267. s/iotedgedev/organizedgroup.py +48 -0
  268. s/iotedgedev/output.py +57 -0
  269. s/iotedgedev/simulator.py +58 -0
  270. s/iotedgedev/solution.py +48 -0
  271. s/iotedgedev/telemetry.py +155 -0
  272. s/iotedgedev/telemetryconfig.py +85 -0
  273. s/iotedgedev/telemetryuploader.py +53 -0
  274. s/iotedgedev/template/.env.tmp +87 -0
  275. s/iotedgedev/template/.gitignore +10 -0
  276. s/iotedgedev/template/deployment.template.json +79 -0
  277. s/iotedgedev/template/launch_c.json +50 -0
  278. s/iotedgedev/template/launch_csharp.json +43 -0
  279. s/iotedgedev/template/launch_java.json +27 -0
  280. s/iotedgedev/template/launch_node.json +36 -0
  281. s/iotedgedev/template/launch_python.json +22 -0
  282. s/iotedgedev/utility.py +179 -0
  283. s/iotedgedev/version.py +4 -0
  284. s/iotedgedev.egg-info/PKG-INFO +21 -0
  285. s/iotedgedev.egg-info/SOURCES.txt +100 -0
  286. s/iotedgedev.egg-info/dependency_links.txt +1 -0
  287. s/iotedgedev.egg-info/entry_points.txt +3 -0
  288. s/iotedgedev.egg-info/not-zip-safe +1 -0
  289. s/iotedgedev.egg-info/requires.txt +18 -0
  290. s/iotedgedev.egg-info/top_level.txt +1 -0
  291. s/pull_request_template.md +9 -0
  292. s/pytest.ini +4 -0
  293. s/requirements.txt +12 -0
  294. s/requirements_dev.txt +17 -0
  295. s/scripts/gen-help-markdown.bat +177 -0
  296. s/scripts/install-pip.sh +1 -0
  297. s/scripts/setup-wsl.sh +7 -0
  298. s/setup.cfg +18 -0
  299. s/setup.py +66 -0
  300. s/tests/__init__.py +5 -0
  301. s/tests/assets/deployment.manifest_invalid.json +106 -0
  302. s/tests/assets/deployment.manifest_invalid_createoptions.json +102 -0
  303. s/tests/assets/deployment.manifest_invalid_schema.json +69 -0
  304. s/tests/assets/deployment.template.non_str_placeholder.json +79 -0
  305. s/tests/assets/deployment.template_1.json +163 -0
  306. s/tests/assets/deployment.template_2.json +163 -0
  307. s/tests/assets/deployment.template_3.json +174 -0
  308. s/tests/assets/deployment.template_4.json +79 -0
  309. s/tests/assets/deployment.template_invalidresult.json +183 -0
  310. s/tests/assets/deployment.template_without_schema_template.json +99 -0
  311. s/tests/assets/launch.json +225 -0
  312. s/tests/assets/launch_without_nodejs.json +194 -0
  313. s/tests/assets/test_solution_shared_lib/.gitignore +2 -0
  314. s/tests/assets/test_solution_shared_lib/.vscode/launch.json +43 -0
  315. s/tests/assets/test_solution_shared_lib/deployment.debug.template.json +100 -0
  316. s/tests/assets/test_solution_shared_lib/deployment.escapedpath.template.json +90 -0
  317. s/tests/assets/test_solution_shared_lib/deployment.template.json +106 -0
  318. s/tests/assets/test_solution_shared_lib/layered_deployment.flattened_props.template.json +21 -0
  319. s/tests/assets/test_solution_shared_lib/layered_deployment.no_modules.template.json +12 -0
  320. s/tests/assets/test_solution_shared_lib/libs/sharedlib/Class1.cs +12 -0
  321. s/tests/assets/test_solution_shared_lib/libs/sharedlib/sharedlib.csproj +7 -0
  322. s/tests/assets/test_solution_shared_lib/modules/non_module_project/placeholder.txt +0 -0
  323. s/tests/assets/test_solution_shared_lib/modules/sample_module/.gitignore +34 -0
  324. s/tests/assets/test_solution_shared_lib/modules/sample_module/Dockerfile.amd64 +18 -0
  325. s/tests/assets/test_solution_shared_lib/modules/sample_module/Dockerfile.amd64.debug +25 -0
  326. s/tests/assets/test_solution_shared_lib/modules/sample_module/Dockerfile.windows-amd64 +15 -0
  327. s/tests/assets/test_solution_shared_lib/modules/sample_module/Program.cs +91 -0
  328. s/tests/assets/test_solution_shared_lib/modules/sample_module/module.json +18 -0
  329. s/tests/assets/test_solution_shared_lib/modules/sample_module/sample_module.csproj +26 -0
  330. s/tests/assets/test_solution_shared_lib/sample_module_2/.gitignore +34 -0
  331. s/tests/assets/test_solution_shared_lib/sample_module_2/Dockerfile.amd64 +18 -0
  332. s/tests/assets/test_solution_shared_lib/sample_module_2/Dockerfile.amd64.debug +25 -0
  333. s/tests/assets/test_solution_shared_lib/sample_module_2/Dockerfile.windows-amd64 +15 -0
  334. s/tests/assets/test_solution_shared_lib/sample_module_2/Program.cs +91 -0
  335. s/tests/assets/test_solution_shared_lib/sample_module_2/module.json +18 -0
  336. s/tests/assets/test_solution_shared_lib/sample_module_2/sample_module_2.csproj +26 -0
  337. s/tests/test_azurecli.py +33 -0
  338. s/tests/test_buildoptionsparser.py +155 -0
  339. s/tests/test_cli.py +55 -0
  340. s/tests/test_config.py +28 -0
  341. s/tests/test_connectionstring.py +87 -0
  342. s/tests/test_decorators.py +44 -0
  343. s/tests/test_deploymentmanifest.py +106 -0
  344. s/tests/test_envvars.py +169 -0
  345. s/tests/test_iotedgedev_iothub_deploy.py +199 -0
  346. s/tests/test_iotedgedev_simulator.py +133 -0
  347. s/tests/test_iotedgedev_solution.py +457 -0
  348. s/tests/test_iotedgedev_solution_build.py +246 -0
  349. s/tests/test_iotedgedev_solution_tag.py +99 -0
  350. s/tests/test_utility.py +132 -0
  351. s/tests/utility.py +132 -0
  352. s/tox.ini +29 -0
  353. s/vsts_ci/.vsts-ci.yml +93 -0
  354. s/vsts_ci/darwin/continuous-build-darwin.yml +54 -0
  355. s/vsts_ci/linux/continuous-build-linux.yml +28 -0
  356. s/vsts_ci/win32/continuous-build-win32.yml +26 -0
@@ -0,0 +1,99 @@
1
+ {
2
+ "modulesContent": {
3
+ "$edgeAgent": {
4
+ "properties.desired": {
5
+ "schemaVersion": "${EDGEAGENT_SCHEMA_VERSION}",
6
+ "runtime": {
7
+ "type": "docker",
8
+ "settings": {
9
+ "minDockerVersion": "v1.25",
10
+ "loggingOptions": "",
11
+ "registryCredentials": {}
12
+ }
13
+ },
14
+ "systemModules": {
15
+ "edgeAgent": {
16
+ "type": "docker",
17
+ "settings": {
18
+ "image": "mcr.microsoft.com/azureiotedge-agent:${EDGE_RUNTIME_VERSION}",
19
+ "createOptions": {}
20
+ }
21
+ },
22
+ "edgeHub": {
23
+ "type": "docker",
24
+ "status": "running",
25
+ "restartPolicy": "always",
26
+ "settings": {
27
+ "image": "mcr.microsoft.com/azureiotedge-hub:${EDGE_RUNTIME_VERSION}",
28
+ "createOptions": {
29
+ "HostConfig": {
30
+ "PortBindings": {
31
+ "5671/tcp": [
32
+ {
33
+ "HostPort": "5671"
34
+ }
35
+ ],
36
+ "8883/tcp": [
37
+ {
38
+ "HostPort": "8883"
39
+ }
40
+ ],
41
+ "443/tcp": [
42
+ {
43
+ "HostPort": "443"
44
+ }
45
+ ]
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
51
+ },
52
+ "modules": {
53
+ "tempSensor": {
54
+ "version": "1.0",
55
+ "type": "docker",
56
+ "status": "running",
57
+ "restartPolicy": "always",
58
+ "settings": {
59
+ "image": "mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.0",
60
+ "createOptions": {}
61
+ }
62
+ },
63
+ "sample_module": {
64
+ "version": "1.0",
65
+ "type": "docker",
66
+ "status": "running",
67
+ "restartPolicy": "always",
68
+ "settings": {
69
+ "image": "${MODULES.sample_module}",
70
+ "createOptions": {}
71
+ }
72
+ },
73
+ "sample_module_2": {
74
+ "version": "1.0",
75
+ "type": "docker",
76
+ "status": "running",
77
+ "restartPolicy": "always",
78
+ "settings": {
79
+ "image": "${MODULEDIR<./sample_module_2>}",
80
+ "createOptions": {}
81
+ }
82
+ }
83
+ }
84
+ }
85
+ },
86
+ "$edgeHub": {
87
+ "properties.desired": {
88
+ "schemaVersion": "${EDGEHUB_SCHEMA_VERSION}",
89
+ "routes": {
90
+ "sample_moduleToIoTHub": "FROM /messages/modules/sample_module/outputs/* INTO $upstream",
91
+ "sensorTosample_module": "FROM /messages/modules/tempSensor/outputs/temperatureOutput INTO BrokeredEndpoint(\"/modules/sample_module/inputs/input1\")"
92
+ },
93
+ "storeAndForwardConfiguration": {
94
+ "timeToLiveSecs": 7200
95
+ }
96
+ }
97
+ }
98
+ }
99
+ }
@@ -0,0 +1,225 @@
1
+ {
2
+ "version": "0.2.0",
3
+ "configurations": [
4
+ {
5
+ "name": "filtermodule Remote Debug (.NET Core)",
6
+ "type": "coreclr",
7
+ "request": "attach",
8
+ "processId": "${command:pickRemoteProcess}",
9
+ "pipeTransport": {
10
+ "pipeProgram": "docker",
11
+ "pipeArgs": [
12
+ "exec",
13
+ "-i",
14
+ "filtermodule",
15
+ "sh",
16
+ "-c"
17
+ ],
18
+ "debuggerPath": "~/vsdbg/vsdbg",
19
+ "pipeCwd": "${workspaceFolder}",
20
+ "quoteArgs": true
21
+ },
22
+ "sourceFileMap": {
23
+ "/app": "${workspaceFolder}/modules/filtermodule"
24
+ },
25
+ "justMyCode": true
26
+ },
27
+ {
28
+ "name": "filtermodule Local Debug (.NET Core)",
29
+ "type": "coreclr",
30
+ "request": "launch",
31
+ "program": "${workspaceRoot}/modules/filtermodule/bin/Debug/netcoreapp2.1/filtermodule.dll",
32
+ "args": [],
33
+ "cwd": "${workspaceRoot}/modules/filtermodule",
34
+ "internalConsoleOptions": "openOnSessionStart",
35
+ "stopAtEntry": false,
36
+ "console": "internalConsole",
37
+ "env": {
38
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
39
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
40
+ }
41
+ },
42
+ {
43
+ "name": "cmodule Remote Debug (C)",
44
+ "type": "cppdbg",
45
+ "request": "attach",
46
+ "program": "./main",
47
+ "processId": "${command:pickRemoteProcess}",
48
+ "pipeTransport": {
49
+ "pipeCwd": "${workspaceFolder}",
50
+ "pipeProgram": "docker",
51
+ "pipeArgs": [
52
+ "exec",
53
+ "-i",
54
+ "cmodule",
55
+ "sh",
56
+ "-c"
57
+ ],
58
+ "debuggerPath": "/usr/bin/gdb"
59
+ },
60
+ "sourceFileMap": {
61
+ "/app": "${workspaceFolder}/modules/cmodule"
62
+ },
63
+ "linux": {
64
+ "MIMode": "gdb",
65
+ "setupCommands": [
66
+ {
67
+ "description": "Enable pretty-printing for gdb",
68
+ "text": "-enable-pretty-printing",
69
+ "ignoreFailures": true
70
+ }
71
+ ]
72
+ },
73
+ "osx": {
74
+ "MIMode": "lldb"
75
+ },
76
+ "windows": {
77
+ "MIMode": "gdb",
78
+ "setupCommands": [
79
+ {
80
+ "description": "Enable pretty-printing for gdb",
81
+ "text": "-enable-pretty-printing",
82
+ "ignoreFailures": true
83
+ }
84
+ ]
85
+ }
86
+ },
87
+ {
88
+ "name": "csharpmodule Remote Debug (.NET Core)",
89
+ "type": "coreclr",
90
+ "request": "attach",
91
+ "processId": "${command:pickRemoteProcess}",
92
+ "pipeTransport": {
93
+ "pipeProgram": "docker",
94
+ "pipeArgs": [
95
+ "exec",
96
+ "-i",
97
+ "csharpmodule",
98
+ "sh",
99
+ "-c"
100
+ ],
101
+ "debuggerPath": "~/vsdbg/vsdbg",
102
+ "pipeCwd": "${workspaceFolder}",
103
+ "quoteArgs": true
104
+ },
105
+ "sourceFileMap": {
106
+ "/app": "${workspaceFolder}/modules/csharpmodule"
107
+ },
108
+ "justMyCode": true
109
+ },
110
+ {
111
+ "name": "csharpmodule Local Debug (.NET Core)",
112
+ "type": "coreclr",
113
+ "request": "launch",
114
+ "program": "${workspaceRoot}/modules/csharpmodule/bin/Debug/netcoreapp2.1/csharpmodule.dll",
115
+ "args": [],
116
+ "cwd": "${workspaceRoot}/modules/csharpmodule",
117
+ "internalConsoleOptions": "openOnSessionStart",
118
+ "stopAtEntry": false,
119
+ "console": "internalConsole",
120
+ "env": {
121
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
122
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
123
+ }
124
+ },
125
+ {
126
+ "type": "java",
127
+ "name": "javamodule Local Debug (java)",
128
+ "request": "launch",
129
+ "cwd": "${workspaceRoot}/modules/javamodule",
130
+ "console": "internalConsole",
131
+ "stopOnEntry": false,
132
+ "mainClass": "com.edgemodule.App",
133
+ "args": "",
134
+ "projectName": "javamodule",
135
+ "env": {
136
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
137
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
138
+ }
139
+ },
140
+ {
141
+ "type": "java",
142
+ "name": "javamodule Remote Debug (java)",
143
+ "request": "attach",
144
+ "hostName": "localhost",
145
+ "port": 5005
146
+ },
147
+ {
148
+ "name": "nodejsmodule Remote Debug (Node.js)",
149
+ "type": "node",
150
+ "request": "attach",
151
+ "port": 9229,
152
+ "address": "localhost",
153
+ "localRoot": "${workspaceRoot}/modules/nodejsmodule",
154
+ "remoteRoot": "/app",
155
+ "protocol": "inspector"
156
+ },
157
+ {
158
+ "name": "nodejsmodule Remote Debug (Node.js in Windows Container)",
159
+ "type": "node",
160
+ "request": "attach",
161
+ "port": 9229,
162
+ "address": "localhost",
163
+ "localRoot": "${workspaceRoot}/modules/nodejsmodule",
164
+ "remoteRoot": "C:\\app",
165
+ "protocol": "inspector"
166
+ },
167
+ {
168
+ "name": "nodejsmodule Local Debug (Node.js)",
169
+ "type": "node",
170
+ "request": "launch",
171
+ "program": "${workspaceRoot}/modules/nodejsmodule/app.js",
172
+ "console": "integratedTerminal",
173
+ "env": {
174
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
175
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
176
+ }
177
+ },
178
+ {
179
+ "name": "pythonmodule Remote Debug (Python)",
180
+ "type": "python",
181
+ "request": "attach",
182
+ "port": 5678,
183
+ "host": "localhost",
184
+ "logToFile": true,
185
+ "redirectOutput": true,
186
+ "pathMappings": [
187
+ {
188
+ "localRoot": "${workspaceFolder}/modules/pythonmodule",
189
+ "remoteRoot": "/app"
190
+ }
191
+ ],
192
+ "windows": {
193
+ "pathMappings": [
194
+ {
195
+ "localRoot": "${workspaceFolder}\\modules\\pythonmodule",
196
+ "remoteRoot": "/app"
197
+ }
198
+ ]
199
+ }
200
+ },
201
+ {
202
+ "name": "csharpfunctionmodule Remote Debug (.NET Core)",
203
+ "type": "coreclr",
204
+ "request": "attach",
205
+ "processId": "${command:pickRemoteProcess}",
206
+ "pipeTransport": {
207
+ "pipeProgram": "docker",
208
+ "pipeArgs": [
209
+ "exec",
210
+ "-i",
211
+ "csharpfunctionmodule",
212
+ "sh",
213
+ "-c"
214
+ ],
215
+ "debuggerPath": "~/vsdbg/vsdbg",
216
+ "pipeCwd": "${workspaceFolder}",
217
+ "quoteArgs": true
218
+ },
219
+ "sourceFileMap": {
220
+ "/app": "${workspaceFolder}/modules/csharpfunctionmodule"
221
+ },
222
+ "justMyCode": true
223
+ }
224
+ ]
225
+ }
@@ -0,0 +1,194 @@
1
+ {
2
+ "version": "0.2.0",
3
+ "configurations": [
4
+ {
5
+ "processId": "${command:pickRemoteProcess}",
6
+ "name": "filtermodule Remote Debug (.NET Core)",
7
+ "sourceFileMap": {
8
+ "/app": "${workspaceFolder}/modules/filtermodule"
9
+ },
10
+ "request": "attach",
11
+ "pipeTransport": {
12
+ "quoteArgs": true,
13
+ "pipeArgs": [
14
+ "exec",
15
+ "-i",
16
+ "filtermodule",
17
+ "sh",
18
+ "-c"
19
+ ],
20
+ "debuggerPath": "~/vsdbg/vsdbg",
21
+ "pipeCwd": "${workspaceFolder}",
22
+ "pipeProgram": "docker"
23
+ },
24
+ "type": "coreclr",
25
+ "justMyCode": true
26
+ },
27
+ {
28
+ "console": "internalConsole",
29
+ "name": "filtermodule Local Debug (.NET Core)",
30
+ "args": [],
31
+ "request": "launch",
32
+ "internalConsoleOptions": "openOnSessionStart",
33
+ "stopAtEntry": false,
34
+ "program": "${workspaceRoot}/modules/filtermodule/bin/Debug/netcoreapp2.1/filtermodule.dll",
35
+ "env": {
36
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
37
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
38
+ },
39
+ "type": "coreclr",
40
+ "cwd": "${workspaceRoot}/modules/filtermodule"
41
+ },
42
+ {
43
+ "processId": "${command:pickRemoteProcess}",
44
+ "name": "cmodule Remote Debug (C)",
45
+ "osx": {
46
+ "MIMode": "lldb"
47
+ },
48
+ "windows": {
49
+ "setupCommands": [
50
+ {
51
+ "text": "-enable-pretty-printing",
52
+ "description": "Enable pretty-printing for gdb",
53
+ "ignoreFailures": true
54
+ }
55
+ ],
56
+ "MIMode": "gdb"
57
+ },
58
+ "sourceFileMap": {
59
+ "/app": "${workspaceFolder}/modules/cmodule"
60
+ },
61
+ "request": "attach",
62
+ "pipeTransport": {
63
+ "pipeArgs": [
64
+ "exec",
65
+ "-i",
66
+ "cmodule",
67
+ "sh",
68
+ "-c"
69
+ ],
70
+ "debuggerPath": "/usr/bin/gdb",
71
+ "pipeCwd": "${workspaceFolder}",
72
+ "pipeProgram": "docker"
73
+ },
74
+ "program": "./main",
75
+ "linux": {
76
+ "setupCommands": [
77
+ {
78
+ "text": "-enable-pretty-printing",
79
+ "description": "Enable pretty-printing for gdb",
80
+ "ignoreFailures": true
81
+ }
82
+ ],
83
+ "MIMode": "gdb"
84
+ },
85
+ "type": "cppdbg"
86
+ },
87
+ {
88
+ "processId": "${command:pickRemoteProcess}",
89
+ "name": "csharpmodule Remote Debug (.NET Core)",
90
+ "sourceFileMap": {
91
+ "/app": "${workspaceFolder}/modules/csharpmodule"
92
+ },
93
+ "request": "attach",
94
+ "pipeTransport": {
95
+ "quoteArgs": true,
96
+ "pipeArgs": [
97
+ "exec",
98
+ "-i",
99
+ "csharpmodule",
100
+ "sh",
101
+ "-c"
102
+ ],
103
+ "debuggerPath": "~/vsdbg/vsdbg",
104
+ "pipeCwd": "${workspaceFolder}",
105
+ "pipeProgram": "docker"
106
+ },
107
+ "type": "coreclr",
108
+ "justMyCode": true
109
+ },
110
+ {
111
+ "console": "internalConsole",
112
+ "name": "csharpmodule Local Debug (.NET Core)",
113
+ "args": [],
114
+ "request": "launch",
115
+ "internalConsoleOptions": "openOnSessionStart",
116
+ "stopAtEntry": false,
117
+ "program": "${workspaceRoot}/modules/csharpmodule/bin/Debug/netcoreapp2.1/csharpmodule.dll",
118
+ "env": {
119
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
120
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
121
+ },
122
+ "type": "coreclr",
123
+ "cwd": "${workspaceRoot}/modules/csharpmodule"
124
+ },
125
+ {
126
+ "console": "internalConsole",
127
+ "name": "javamodule Local Debug (java)",
128
+ "projectName": "javamodule",
129
+ "args": "",
130
+ "request": "launch",
131
+ "mainClass": "com.edgemodule.App",
132
+ "env": {
133
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
134
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
135
+ },
136
+ "type": "java",
137
+ "cwd": "${workspaceRoot}/modules/javamodule",
138
+ "stopOnEntry": false
139
+ },
140
+ {
141
+ "request": "attach",
142
+ "hostName": "localhost",
143
+ "type": "java",
144
+ "name": "javamodule Remote Debug (java)",
145
+ "port": 5005
146
+ },
147
+ {
148
+ "pathMappings": [
149
+ {
150
+ "localRoot": "${workspaceFolder}/modules/pythonmodule",
151
+ "remoteRoot": "/app"
152
+ }
153
+ ],
154
+ "name": "pythonmodule Remote Debug (Python)",
155
+ "windows": {
156
+ "pathMappings": [
157
+ {
158
+ "localRoot": "${workspaceFolder}\\modules\\pythonmodule",
159
+ "remoteRoot": "/app"
160
+ }
161
+ ]
162
+ },
163
+ "logToFile": true,
164
+ "request": "attach",
165
+ "host": "localhost",
166
+ "redirectOutput": true,
167
+ "type": "python",
168
+ "port": 5678
169
+ },
170
+ {
171
+ "processId": "${command:pickRemoteProcess}",
172
+ "name": "csharpfunctionmodule Remote Debug (.NET Core)",
173
+ "type": "coreclr",
174
+ "request": "attach",
175
+ "pipeTransport": {
176
+ "pipeArgs": [
177
+ "exec",
178
+ "-i",
179
+ "csharpfunctionmodule",
180
+ "sh",
181
+ "-c"
182
+ ],
183
+ "quoteArgs": true,
184
+ "pipeProgram": "docker",
185
+ "debuggerPath": "~/vsdbg/vsdbg",
186
+ "pipeCwd": "${workspaceFolder}"
187
+ },
188
+ "sourceFileMap": {
189
+ "/app": "${workspaceFolder}/modules/csharpfunctionmodule"
190
+ },
191
+ "justMyCode": true
192
+ }
193
+ ]
194
+ }
@@ -0,0 +1,2 @@
1
+ config/
2
+ .env
@@ -0,0 +1,43 @@
1
+ {
2
+ "version": "0.2.0",
3
+ "configurations": [
4
+ {
5
+ "name": "sample_module Remote Debug (.NET Core)",
6
+ "type": "coreclr",
7
+ "request": "attach",
8
+ "processId": "${command:pickRemoteProcess}",
9
+ "pipeTransport": {
10
+ "pipeProgram": "docker",
11
+ "pipeArgs": [
12
+ "exec",
13
+ "-i",
14
+ "sample_module",
15
+ "sh",
16
+ "-c"
17
+ ],
18
+ "debuggerPath": "~/vsdbg/vsdbg",
19
+ "pipeCwd": "${workspaceFolder}",
20
+ "quoteArgs": true
21
+ },
22
+ "sourceFileMap": {
23
+ "/app": "${workspaceFolder}/modules/sample_module"
24
+ },
25
+ "justMyCode": true
26
+ },
27
+ {
28
+ "name": "sample_module Local Debug (.NET Core)",
29
+ "type": "coreclr",
30
+ "request": "launch",
31
+ "program": "${workspaceRoot}/modules/sample_module/bin/Debug/netcoreapp2.1/sample_module.dll",
32
+ "args": [],
33
+ "cwd": "${workspaceRoot}/modules/sample_module",
34
+ "internalConsoleOptions": "openOnSessionStart",
35
+ "stopAtEntry": false,
36
+ "console": "internalConsole",
37
+ "env": {
38
+ "EdgeHubConnectionString": "${config:azure-iot-edge.EdgeHubConnectionString}",
39
+ "EdgeModuleCACertificateFile": "${config:azure-iot-edge.EdgeModuleCACertificateFile}"
40
+ }
41
+ }
42
+ ]
43
+ }
@@ -0,0 +1,100 @@
1
+ {
2
+ "$schema-template": "4.0.0",
3
+ "modulesContent": {
4
+ "$edgeAgent": {
5
+ "properties.desired": {
6
+ "schemaVersion": "${EDGEAGENT_SCHEMA_VERSION}",
7
+ "runtime": {
8
+ "type": "docker",
9
+ "settings": {
10
+ "minDockerVersion": "v1.25",
11
+ "loggingOptions": "",
12
+ "registryCredentials": {}
13
+ }
14
+ },
15
+ "systemModules": {
16
+ "edgeAgent": {
17
+ "type": "docker",
18
+ "settings": {
19
+ "image": "mcr.microsoft.com/azureiotedge-agent:${EDGE_RUNTIME_VERSION}",
20
+ "createOptions": {}
21
+ }
22
+ },
23
+ "edgeHub": {
24
+ "type": "docker",
25
+ "status": "running",
26
+ "restartPolicy": "always",
27
+ "settings": {
28
+ "image": "mcr.microsoft.com/azureiotedge-hub:${EDGE_RUNTIME_VERSION}",
29
+ "createOptions": {
30
+ "HostConfig": {
31
+ "PortBindings": {
32
+ "5671/tcp": [
33
+ {
34
+ "HostPort": "5671"
35
+ }
36
+ ],
37
+ "8883/tcp": [
38
+ {
39
+ "HostPort": "8883"
40
+ }
41
+ ],
42
+ "443/tcp": [
43
+ {
44
+ "HostPort": "443"
45
+ }
46
+ ]
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
52
+ },
53
+ "modules": {
54
+ "tempSensor": {
55
+ "version": "1.0",
56
+ "type": "docker",
57
+ "status": "running",
58
+ "restartPolicy": "always",
59
+ "settings": {
60
+ "image": "mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.0",
61
+ "createOptions": {}
62
+ }
63
+ },
64
+ "sample_module": {
65
+ "version": "1.0",
66
+ "type": "docker",
67
+ "status": "running",
68
+ "restartPolicy": "always",
69
+ "settings": {
70
+ "image": "${MODULES.sample_module.debug}",
71
+ "createOptions": {}
72
+ }
73
+ },
74
+ "sample_module_2": {
75
+ "version": "1.0",
76
+ "type": "docker",
77
+ "status": "running",
78
+ "restartPolicy": "always",
79
+ "settings": {
80
+ "image": "${MODULEDIR<./sample_module_2>.debug}",
81
+ "createOptions": {}
82
+ }
83
+ }
84
+ }
85
+ }
86
+ },
87
+ "$edgeHub": {
88
+ "properties.desired": {
89
+ "schemaVersion": "${EDGEHUB_SCHEMA_VERSION}",
90
+ "routes": {
91
+ "sample_moduleToIoTHub": "FROM /messages/modules/sample_module/outputs/* INTO $upstream",
92
+ "sensorTosample_module": "FROM /messages/modules/tempSensor/outputs/temperatureOutput INTO BrokeredEndpoint(\"/modules/sample_module/inputs/input1\")"
93
+ },
94
+ "storeAndForwardConfiguration": {
95
+ "timeToLiveSecs": 7200
96
+ }
97
+ }
98
+ }
99
+ }
100
+ }