Exemples d’utilisation de l’AWS CLI avec AWS IoT Greengrass V2 - AWS Command Line Interface

Exemples d’utilisation de l’AWS CLI avec AWS IoT Greengrass V2

Les exemples de code suivants montrent comment réaliser des actions et mettre en œuvre des scénarios courants en utilisant l’AWS Command Line Interface avec AWS IoT Greengrass V2.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.

Rubriques

Actions

L’exemple de code suivant montre comment utiliser associate-service-role-to-account.

AWS CLI

Pour associer le rôle de service Greengrass à votre compte AWS

L’exemple associate-service-role-to-account suivant associe un rôle de service à AWS IoT Greengrass pour votre compte AWS.

aws greengrassv2 associate-service-role-to-account \ --role-arn arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole

Sortie :

{ "associatedAt": "2022-01-19T19:21:53Z" }

Pour plus d’informations, consultez Rôle de service Greengrass dans le Manuel du développeur AWS IoT Greengrass V2.

L’exemple de code suivant montre comment utiliser batch-associate-client-device-with-core-device.

AWS CLI

Pour associer des appareils client à un appareil principal

L’exemple batch-associate-client-device-with-core-device suivant associe deux appareils client à un appareil principal.

aws greengrassv2 batch-associate-client-device-with-core-device \ --core-device-thing-name MyGreengrassCore \ --entries thingName=MyClientDevice1 thingName=MyClientDevice2

Sortie :

{ "errorEntries": [] }

Pour plus d’informations, consultez Interact with local IoT devices dans le Manuel du développeur AWS IoT Greengrass V2.

L’exemple de code suivant montre comment utiliser batch-disassociate-client-device-from-core-device.

AWS CLI

Pour dissocier des appareils client d’un appareil principal

L’exemple batch-disassociate-client-device-from-core-device suivant dissocie deux appareils client d’un appareil principal.

aws greengrassv2 batch-disassociate-client-device-from-core-device \ --core-device-thing-name MyGreengrassCore \ --entries thingName=MyClientDevice1 thingName=MyClientDevice2

Sortie :

{ "errorEntries": [] }

Pour plus d’informations, consultez Interact with local IoT devices dans le Manuel du développeur AWS IoT Greengrass V2.

L’exemple de code suivant montre comment utiliser cancel-deployment.

AWS CLI

Pour annuler une tâche de déploiement

L’exemple cancel-deployment suivant arrête un déploiement continu vers un groupe d’objets.

aws greengrassv2 cancel-deployment \ --deployment-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Sortie :

{ "message": "SUCCESS" }

Pour plus d’informations, consultez Annulation de déploiements dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez CancelDeployment dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-component-version.

AWS CLI

Exemple 1 : pour créer une version de composant à partir d’une recette

L’exemple create-component-version suivant crée une version d’un composant Hello World à partir d’un fichier de recette.

aws greengrassv2 create-component-version \ --inline-recipe fileb://com.example.HelloWorld-1.0.0.json

Contenu de com.example.HelloWorld-1.0.0.json :

{ "RecipeFormatVersion": "2020-01-25", "ComponentName": "com.example.HelloWorld", "ComponentVersion": "1.0.0", "ComponentDescription": "My first AWS IoT Greengrass component.", "ComponentPublisher": "Amazon", "ComponentConfiguration": { "DefaultConfiguration": { "Message": "world" } }, "Manifests": [ { "Platform": { "os": "linux" }, "Lifecycle": { "Run": "echo 'Hello {configuration:/Message}'" } } ] }

Sortie :

{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T16:24:33.650000-08:00", "status": { "componentState": "REQUESTED", "message": "NONE", "errors": {} } }

Pour plus d’informations, consultez Create custom components et Upload components to deploy dans le Manuel du développeur AWS IoT Greengrass V2.

Exemple 2 : pour créer une version de composant à partir d’une fonction AWS Lambda

L’exemple create-component-version suivant crée une version d’un composant Hello World à partir d’une fonction AWS Lambda.

aws greengrassv2 create-component-version \ --cli-input-json file://lambda-function-component.json

Contenu de lambda-function-component.json :

{ "lambdaFunction": { "lambdaArn": "arn:aws:lambda:us-west-2:123456789012:function:HelloWorldPythonLambda:1", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "componentLambdaParameters": { "eventSources": [ { "topic": "hello/world/+", "type": "IOT_CORE" } ] } } }

Sortie :

{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T17:05:27.347000-08:00", "status": { "componentState": "REQUESTED", "message": "NONE", "errors": {} } }

Pour plus d’informations, consultez Exécution de fonctions AWS Lambda dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez CreateComponentVersion dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-deployment.

AWS CLI

Exemple 1 : pour créer un déploiement

L’exemple create-deployment suivant déploie l’interface de ligne de commande AWS IoT Greengrass sur un appareil principal.

aws greengrassv2 create-deployment \ --cli-input-json file://cli-deployment.json

Contenu de cli-deployment.json :

{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "deploymentName": "Deployment for MyGreengrassCore", "components": { "aws.greengrass.Cli": { "componentVersion": "2.0.3" } }, "deploymentPolicies": { "failureHandlingPolicy": "DO_NOTHING", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {} }

Sortie :

{ "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Pour plus d’informations, consultez Create deployments dans le Manuel du développeur AWS IoT Greengrass V2.

Exemple 2 : pour créer un déploiement qui met à jour les configurations des composants

L’exemple create-deployment suivant déploie le composant du noyau AWS IoT Greengrass sur un groupe d’appareils principaux. Ce déploiement applique les mises à jour de configuration suivantes pour le composant du noyau :

Réinitialisez les paramètres proxy des machines cibles afin de rétablir leurs paramètres par défaut sans proxy. Réinitialisez les paramètres MQTT des machines cibles pour rétablir leurs valeurs par défaut. Définit les options de la JVM du noyau. Définit le niveau de journalisation du noyau.

aws greengrassv2 create-deployment \ --cli-input-json file://nucleus-deployment.json

Contenu de nucleus-deployment.json :

{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "deploymentName": "Deployment for MyGreengrassCoreGroup", "components": { "aws.greengrass.Nucleus": { "componentVersion": "2.0.3", "configurationUpdate": { "reset": [ "/networkProxy", "/mqtt" ], "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}" } } }, "deploymentPolicies": { "failureHandlingPolicy": "ROLLBACK", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {} }

Sortie :

{ "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" }

Pour plus d’informations, consultez Create deployments et Update component configurations dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez CreateDeployment dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-component.

AWS CLI

Pour supprimer la version d’un composant

L’exemple delete-component suivant supprime un composant Hello World.

aws greengrassv2 delete-component \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez DeleteComponent dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-core-device.

AWS CLI

Pour supprimer un appareil principal

L’exemple delete-core-device suivant supprime un appareil principal AWS IoT Greengrass.

aws greengrassv2 delete-core-device \ --core-device-thing-name MyGreengrassCore

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Uninstall the AWS IoT Greengrass Core software dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez DeleteCoreDevice dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-component.

AWS CLI

Pour décrire la version d’un composant

L’exemple describe-component suivant décrit un composant Hello World.

aws greengrassv2 describe-component \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0

Sortie :

{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T17:12:11.133000-08:00", "publisher": "Amazon", "description": "My first AWS IoT Greengrass component.", "status": { "componentState": "DEPLOYABLE", "message": "NONE", "errors": {} }, "platforms": [ { "attributes": { "os": "linux" } } ] }

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez DescribeComponent dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser disassociate-service-role-from-account.

AWS CLI

Pour dissocier le rôle de service Greengrass de votre compte AWS

L’exemple disassociate-service-role-from-account suivant dissocie le rôle de service Greengrass d’AWS IoT Greengrass pour votre compte AWS.

aws greengrassv2 disassociate-service-role-from-account

Sortie :

{ "disassociatedAt": "2022-01-19T19:26:09Z" }

Pour plus d’informations, consultez Rôle de service Greengrass dans le Manuel du développeur AWS IoT Greengrass V2.

L’exemple de code suivant montre comment utiliser get-component-version-artifact.

AWS CLI

Pour obtenir une URL permettant de télécharger un artefact de composant

L’exemple get-component-version-artifact suivant obtient une URL permettant de télécharger le fichier JAR d’un composant de console de débogage local.

aws greengrassv2 get-component-version-artifact \ --arn arn:aws:greengrass:us-west-2:aws:components:aws.greengrass.LocalDebugConsole:versions:2.0.3 \ --artifact-name "Uvt6ZEzQ9TKiAuLbfXBX_APdY0TWks3uc46tHFHTzBM=/aws.greengrass.LocalDebugConsole.jar"

Sortie :

{ "preSignedUrl": "https://evergreencomponentmanageme-artifactbucket7410c9ef-g18n1iya8kwr.s3.us-west-2.amazonaws.com/public/aws.greengrass.LocalDebugConsole/2.0.3/s3/ggv2-component-releases-prod-pdx/EvergreenHttpDebugView/2ffc496ba41b39568968b22c582b4714a937193ee7687a45527238e696672521/aws.greengrass.LocalDebugConsole/aws.greengrass.LocalDebugConsole.jar?X-Amz-Security-Token=KwfLKSdEXAMPLE..." }

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

L’exemple de code suivant montre comment utiliser get-component.

AWS CLI

Exemple 1 : pour télécharger la recette d’un composant au format YAML (Linux, macOS ou Unix)

L’exemple get-component suivant télécharge la recette d’un composant Hello World dans un fichier au format YAML. Cette commande exécute les opérations suivantes :

Utilise les paramètres --output et --query pour contrôler la sortie de la commande. Ces paramètres extraient le blob de recettes de la sortie de la commande. Pour plus d’informations, consultez Contrôle de la sortie de commande dans le Guide de l’utilisateur de l’interface de ligne de commande AWS. Utilise l’utilitaire base64. Cet utilitaire décode le blob extrait selon le texte d’origine. Le blob renvoyé par une commande get-component ayant abouti est un texte encodé en base64. Vous devez décoder ce blob pour obtenir le texte original. Enregistre le texte décodé dans un fichier. La dernière section de la commande (> com.example.HelloWorld-1.0.0.json) enregistre le texte décodé dans un fichier.

aws greengrassv2 get-component \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0 \ --recipe-output-format YAML \ --query recipe \ --output text | base64 --decode > com.example.HelloWorld-1.0.0.json

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

Exemple 2 : pour télécharger la recette d’un composant au format YAML (Windows CMD)

L’exemple get-component suivant télécharge la recette d’un composant Hello World dans un fichier au format YAML. Cette commande utilise l’utilitaire certutil.

aws greengrassv2 get-component ^ --arn arn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0 ^ --recipe-output-format YAML ^ --query recipe ^ --output text > com.example.HelloWorld-1.0.0.yaml.b64 certutil -decode com.example.HelloWorld-1.0.0.yaml.b64 com.example.HelloWorld-1.0.0.yaml

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

Exemple 3 : pour télécharger la recette d’un composant au format YAML (Windows PowerShell)

L’exemple get-component suivant télécharge la recette d’un composant Hello World dans un fichier au format YAML. Cette commande utilise l’utilitaire certutil.

aws greengrassv2 get-component ` --arn arn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0 ` --recipe-output-format YAML ` --query recipe ` --output text > com.example.HelloWorld-1.0.0.yaml.b64 certutil -decode com.example.HelloWorld-1.0.0.yaml.b64 com.example.HelloWorld-1.0.0.yaml

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez GetComponent dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-connectivity-info.

AWS CLI

Pour obtenir les informations de connectivité d’un appareil principal Greengrass

L’exemple get-connectivity-info suivant obtient les informations de connectivité d’un appareil principal Greengrass. Les appareils client utilisent ces informations pour se connecter à l’agent MQTT qui s’exécute sur cet appareil principal.

aws greengrassv2 get-connectivity-info \ --thing-name MyGreengrassCore

Sortie :

{ "connectivityInfo": [ { "id": "localIP_192.0.2.0", "hostAddress": "192.0.2.0", "portNumber": 8883 } ] }

Pour plus d’informations, consultez Gérer les points de terminaison des appareils principaux dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez GetConnectivityInfo dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-core-device.

AWS CLI

Pour obtenir un appareil principal

L’exemple get-core-device suivant obtient les informations sur un appareil principal AWS IoT Greengrass.

aws greengrassv2 get-core-device \ --core-device-thing-name MyGreengrassCore

Sortie :

{ "coreDeviceThingName": "MyGreengrassCore", "coreVersion": "2.0.3", "platform": "linux", "architecture": "amd64", "status": "HEALTHY", "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00", "tags": {} }

Pour plus d’informations, consultez Check core device status dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez GetCoreDevice dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-deployment.

AWS CLI

Pour obtenir un déploiement

L’exemple get-deployment suivant obtient les informations sur le déploiement du composant de noyau AWS IoT Greengrass sur un groupe d’appareils principaux.

aws greengrassv2 get-deployment \ --deployment-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Sortie :

{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "revisionId": "14", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCoreGroup", "deploymentStatus": "ACTIVE", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "components": { "aws.greengrass.Nucleus": { "componentVersion": "2.0.3", "configurationUpdate": { "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}", "reset": [ "/networkProxy", "/mqtt" ] } } }, "deploymentPolicies": { "failureHandlingPolicy": "ROLLBACK", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {}, "creationTimestamp": "2021-01-07T17:21:20.691000-08:00", "isLatestForTarget": false, "tags": {} }

Pour plus d’informations, consultez Deploy components to devices dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez GetDeployment dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-service-role-for-account.

AWS CLI

Pour obtenir le rôle de service Greengrass associé à votre compte AWS

L’exemple get-service-role-for-account suivant obtient le rôle de service associé à AWS IoT Greengrass pour votre compte AWS.

aws greengrassv2 get-service-role-for-account

Sortie :

{ "associatedAt": "2022-01-19T19:21:53Z", "roleArn": "arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole" }

Pour plus d’informations, consultez Rôle de service Greengrass dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez GetServiceRoleForAccount dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-client-devices-associated-with-core-device.

AWS CLI

Pour répertorier les appareils client associés à un appareil principal

L’exemple list-client-devices-associated-with-core-device suivant répertorie tous les appareils client associés à un appareil principal.

aws greengrassv2 list-client-devices-associated-with-core-device \ --core-device-thing-name MyTestGreengrassCore

Sortie :

{ "associatedClientDevices": [ { "thingName": "MyClientDevice2", "associationTimestamp": "2021-07-12T16:33:55.843000-07:00" }, { "thingName": "MyClientDevice1", "associationTimestamp": "2021-07-12T16:33:55.843000-07:00" } ] }

Pour plus d’informations, consultez Interact with local IoT devices dans le Manuel du développeur AWS IoT Greengrass V2.

L’exemple de code suivant montre comment utiliser list-component-versions.

AWS CLI

Pour répertorier les versions d’un composant

L’exemple list-component-versions suivant répertorie toutes les versions d’un composant Hello World.

aws greengrassv2 list-component-versions \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld

Sortie :

{ "componentVersions": [ { "componentName": "com.example.HelloWorld", "componentVersion": "1.0.1", "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1" }, { "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0" } ] }

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez ListComponentVersions dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-components.

AWS CLI

Pour répertorier les composants

L’exemple list-components suivant répertorie chaque composant et sa dernière version définis dans votre compte AWS dans la région actuelle.

aws greengrassv2 list-components

Sortie :

{ "components": [ { "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld", "componentName": "com.example.HelloWorld", "latestVersion": { "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1", "componentVersion": "1.0.1", "creationTimestamp": "2021-01-08T16:51:07.352000-08:00", "description": "My first AWS IoT Greengrass component.", "publisher": "Amazon", "platforms": [ { "attributes": { "os": "linux" } } ] } } ] }

Pour plus d’informations, consultez Manage components dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez ListComponents dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-core-devices.

AWS CLI

Pour répertorier les appareils principaux

L’exemple list-core-devices suivant répertorie les appareils principaux AWS IoT Greengrass de votre compte AWS dans la région actuelle.

aws greengrassv2 list-core-devices

Sortie :

{ "coreDevices": [ { "coreDeviceThingName": "MyGreengrassCore", "status": "HEALTHY", "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00" } ] }

Pour plus d’informations, consultez Check core device status dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez ListCoreDevices dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-deployments.

AWS CLI

Pour répertorier les déploiements

L’exemple list-deployments suivant répertorie la dernière révision de chaque déploiement défini dans votre compte AWS dans la région actuelle.

aws greengrassv2 list-deployments

Sortie :

{ "deployments": [ { "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "revisionId": "14", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCoreGroup", "creationTimestamp": "2021-01-07T17:21:20.691000-08:00", "deploymentStatus": "ACTIVE", "isLatestForTarget": false }, { "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "revisionId": "1", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "deploymentName": "Deployment for MyGreengrassCore", "creationTimestamp": "2021-01-06T16:10:42.407000-08:00", "deploymentStatus": "COMPLETED", "isLatestForTarget": false } ] }

Pour plus d’informations, consultez Deploy components to devices dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez ListDeployments dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-effective-deployments.

AWS CLI

Pour répertorier les tâches de déploiement

L’exemple list-effective-deployments suivant répertorie les déploiements qui s’appliquent à un appareil principal AWS IoT Greengrass.

aws greengrassv2 list-effective-deployments \ --core-device-thing-name MyGreengrassCore

Sortie :

{ "effectiveDeployments": [ { "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCore", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "coreDeviceExecutionStatus": "COMPLETED", "reason": "SUCCESSFUL", "creationTimestamp": "2021-01-06T16:10:42.442000-08:00", "modifiedTimestamp": "2021-01-08T17:21:27.830000-08:00" }, { "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "deploymentName": "Deployment for MyGreengrassCoreGroup", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE44444", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE44444", "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "coreDeviceExecutionStatus": "SUCCEEDED", "reason": "SUCCESSFUL", "creationTimestamp": "2021-01-07T17:19:20.394000-08:00", "modifiedTimestamp": "2021-01-07T17:21:20.721000-08:00" } ] }

Pour plus d’informations, consultez Check core device status dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez ListEffectiveDeployments dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-installed-components.

AWS CLI

Pour répertorier les composants installés sur un appareil principal

L’exemple list-installed-components suivant répertorie les composants installés sur un appareil principal AWS IoT Greengrass.

aws greengrassv2 list-installed-components \ --core-device-thing-name MyGreengrassCore

Sortie :

{ "installedComponents": [ { "componentName": "aws.greengrass.Cli", "componentVersion": "2.0.3", "lifecycleState": "RUNNING", "isRoot": true }, { "componentName": "aws.greengrass.Nucleus", "componentVersion": "2.0.3", "lifecycleState": "FINISHED", "isRoot": true } ] }

Pour plus d’informations, consultez Check core device status dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez ListInstalledComponents dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-tags-for-resource.

AWS CLI

Pour répertorier les balises d’une ressource

L’exemple list-tags-for-resource suivant répertorie toutes les balises d’un appareil principal AWS IoT Greengrass.

aws greengrassv2 list-tags-for-resource \ --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore

Sortie :

{ "tags": { "Owner": "richard-roe" } }

Pour plus d’informations, consultez Tag your resources dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez ListTagsForResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser tag-resource.

AWS CLI

Ajout d’une balise à une ressource

L’exemple tag-resource suivant ajoute une balise de propriétaire à un appareil principal AWS IoT Greengrass. Vous pouvez utiliser cette balise pour contrôler l’accès à l’appareil principal en fonction de son propriétaire.

aws greengrassv2 tag-resource \ --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore \ --tags Owner=richard-roe

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Tag your resources dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez TagResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser untag-resource.

AWS CLI

Pour supprimer une balise d’une ressource

L’exemple untag-resource suivant supprime une balise de propriétaire d’un appareil principal AWS IoT Greengrass.

aws iotsitewise untag-resource \ --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore \ --tag-keys Owner

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Tag your resources dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez UntagResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser update-connectivity-info.

AWS CLI

Pour mettre à jour les informations de connectivité d’un appareil principal Greengrass

L’exemple update-connectivity-info suivant obtient les informations de connectivité d’un appareil principal Greengrass. Les appareils client utilisent ces informations pour se connecter à l’agent MQTT qui s’exécute sur cet appareil principal.

aws greengrassv2 update-connectivity-info \ --thing-name MyGreengrassCore \ --cli-input-json file://core-device-connectivity-info.json

Contenu de core-device-connectivity-info.json :

{ "connectivityInfo": [ { "hostAddress": "192.0.2.0", "portNumber": 8883, "id": "localIP_192.0.2.0" } ] }

Sortie :

{ "version": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Pour plus d’informations, consultez Gérer les points de terminaison des appareils principaux dans le Manuel du développeur AWS IoT Greengrass V2.

  • Pour plus de détails sur l’API, consultez UpdateConnectivityInfo dans la Référence des commandes de l’AWS CLI.