Comprendre la structure du projet
Nous allons maintenant nous intéresser aux sections du projet qui sont mises en évidence ci-dessous et qui sont disponibles dans le dépôt GitHub.
Vous avez deux modules :
- CameraCaptureOpenCV
- ImageClassifierService
Le fichier module.json définit le processus de génération Docker, la version du module et votre registre Docker. La mise à jour du numéro de version, la poussée (push) du module mis à jour vers un registre d’images et la mise à jour du manifeste de déploiement pour un appareil périphérique déclenchent le runtime Azure IoT Edge qui tire (pull) puis envoie le nouveau module vers l’appareil périphérique.
Le processus de génération utilise le fichier deployment.template.json. Il définit les modules à générer, les routes de messages à configurer et la version du runtime IoT Edge à exécuter.
Le fichier deployment.json est généré à partir du fichier deployment.template.json et correspond au manifeste de déploiement.
Le fichier version.py situé dans le dossier racine du projet est une application d’assistance que vous pouvez exécuter sur votre ordinateur de développement pour mettre à jour le numéro de version de chaque module. C’est utile parce que la modification du numéro de version indique au runtime Azure IoT Edge de tirer (pull) le module mis à jour et parce qu’il est facile d’oublier de modifier les numéros de version du module.