Crie um trabalho a partir de modelos AWS gerenciados usando o AWS CLI - AWS IoT Core

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Crie um trabalho a partir de modelos AWS gerenciados usando o AWS CLI

Use o AWS CLI para obter informações sobre modelos AWS gerenciados e criar um trabalho usando esses modelos. Em seguida, você pode salvar o trabalho como um modelo e criar seu próprio modelo personalizado.

Liste modelos gerenciados

O list-managed-job-templates AWS CLI comando lista todos os modelos de trabalho em seu Conta da AWS.

aws iot list-managed-job-templates

Por padrão, a execução desse comando exibe todos os modelos AWS gerenciados disponíveis e seus detalhes.

{ "managedJobTemplates": [ { "templateArn": "arn:aws:iot:region::jobtemplate/AWS-Reboot:1.0", "templateName": "AWS-Reboot", "description": "A managed job template for rebooting the device.", "environments": [ "LINUX" ], "templateVersion": "1.0" }, { "templateArn": "arn:aws:iot:region::jobtemplate/AWS-Remove-Application:1.0", "templateName": "AWS-Remove-Application", "description": "A managed job template for uninstalling one or more applications.", "environments": [ "LINUX" ], "templateVersion": "1.0" }, { "templateArn": "arn:aws:iot:region::jobtemplate/AWS-Stop-Application:1.0", "templateName": "AWS-Stop-Application", "description": "A managed job template for stopping one or more system services.", "environments": [ "LINUX" ], "templateVersion": "1.0" }, ... { "templateArn": "arn:aws:iot:us-east-1::jobtemplate/AWS-Restart-Application:1.0", "templateName": "AWS-Restart-Application", "description": "A managed job template for restarting one or more system services.", "environments": [ "LINUX" ], "templateVersion": "1.0" } ] }

Para obter mais informações, consulte ListManagedJobTemplates.

Obtenha detalhes sobre um modelo gerenciado

O describe-managed-job-template AWS CLI comando obtém detalhes sobre um modelo de trabalho especificado. Especifique o nome do modelo de trabalho e uma versão opcional do modelo. Se a versão do modelo não for especificada, a versão padrão predefinida retornará. Veja a seguir um exemplo de execução do comando para obter detalhes sobre o modelo de AWS-Download-File.

aws iot describe-managed-job-template \ --template-name AWS-Download-File

O comando exibe os detalhes do modelo e o ARN, seu documento de trabalho e o parâmetro documentParameters, que é uma lista de pares de valores-chave dos parâmetros de entrada do modelo. Para obter mais informações sobre os diferentes modelos e parâmetros de entrada, consulte Ações remotas e documentos de trabalho do modelo gerenciado.

nota

O documentParameters objeto retornado quando você usa essa API só deve ser usado ao criar trabalhos a partir de modelos AWS gerenciados. O objeto não deve ser usado para modelos de trabalho personalizados. Para obter um exemplo que mostra como usar esse parâmetro, consulte Crie um trabalho usando modelos gerenciados.

{ "templateName": "AWS-Download-File", "templateArn": "arn:aws:iot:region::jobtemplate/AWS-Download-File:1.0", "description": "A managed job template for downloading a file.", "templateVersion": "1.0", "environments": [ "LINUX" ], "documentParameters": [ { "key": "downloadUrl", "description": "URL of file to download.", "regex": "(.*?)", "example": "http://www.example.com/index.html", "optional": false }, { "key": "filePath", "description": "Path on the device where downloaded file is written.", "regex": "(.*?)", "example": "/path/to/file", "optional": false }, { "key": "runAsUser", "description": "Execute handler as another user. If not specified, then handler is executed as the same user as device client.", "regex": "(.){0,256}", "example": "user1", "optional": true }, { "key": "pathToHandler", "description": "Path to handler on the device. If not specified, then device client will use the current working directory.", "regex": "(.){0,4096}", "example": "/path/to/handler/script", "optional": true } ], "document": "{\"version\":\"1.0\",\"steps\":[{\"action\":{\"name\":\"Download-File\",\"type\":\"runHandler\",\"input\":{\"handler\":\"download-file.sh\",\"args\":[\"${aws:iot:parameter:downloadUrl}\",\"${aws:iot:parameter:filePath}\"],\"path\":\"${aws:iot:parameter:pathToHandler}\"},\"runAsUser\":\"${aws:iot:parameter:runAsUser}\"}}]}" }

Para obter mais informações, consulte DescribeManagedJobTemplate.

Crie um trabalho usando modelos gerenciados

O create-job AWS CLI comando pode ser usado para criar um trabalho a partir de um modelo de trabalho. Ele tem como destino um dispositivo chamado thingOne e especifica o nome do recurso da Amazon (ARN) do modelo gerenciado a ser usado como base para o trabalho. Você pode substituir configurações avançadas, como configurações de tempo limite e cancelamento, passando os parâmetros associados do comando create-job.

O exemplo mostra como criar um trabalho que usa o modelo AWS-Download-File. Também mostra como especificar os parâmetros de entrada do modelo usando o parâmetro document-parameters.

nota

Use o document-parameters objeto somente com modelos AWS gerenciados. Este objeto não deve ser usado com modelos de trabalho personalizados.

aws iot create-job \ --targets arn:aws:iot:region:account-id:thing/thingOne \ --job-id "new-managed-template-job" \ --job-template-arn arn:aws:iot:region::jobtemplate/AWS-Download-File:1.0 \ --document-parameters downloadUrl=https://example.com/index.html,filePath=path/to/file

onde:

  • região é Região da AWS a.

  • account-id é o número exclusivo da Conta da AWS .

  • thingOne é o nome do objeto de IoT para a qual o trabalho é direcionado.

  • AWS-Download-File:1.0 é o nome do modelo gerenciado.

  • https://example.com/index.html é o URL para fazer download do arquivo.

  • https://pathto/file/index é o caminho de arquivo local no dispositivo para armazenar o arquivo baixado.

Execute o comando a seguir para criar um trabalho para o modelo, AWS-Download-File.

{ "jobArn": "arn:aws:iot:region:account-id:job/new-managed-template-job", "jobId": "new-managed-template-job", "description": "A managed job template for downloading a file." }

Crie um modelo de trabalho personalizado a partir de modelos gerenciados

  1. Crie um trabalho usando um modelo gerenciado, conforme descrito na seção anterior.

  2. Crie um modelo de trabalho personalizado usando o ARN do trabalho que você criou. Para ter mais informações, consulte Crie um modelo de trabalho a partir de um trabalho existente.