Gerir pacotes Python 2 na Automatização do Azure

Este artigo descreve como importar, gerenciar e usar pacotes Python 2 na Automação do Azure em execução no ambiente de área restrita do Azure e no Hybrid Runbook Workers. Para ajudar a simplificar os runbooks, pode utilizar pacotes Python para importar os módulos de que precisa.

Para obter informações sobre como gerenciar pacotes Python 3, consulte Gerenciar pacotes Python 3.

Importar pacotes

  1. Na sua Conta de Automatização, selecione Pacotes Python em Recursos Partilhados. Selecione + Adicionar um pacote Python.

    Screenshot of the Python packages page shows Python packages in the left menu and Add a Python package highlighted.

  2. Na página Adicionar Pacote Python , selecione um pacote local para carregar. O pacote pode ser um ficheiro .whl ou .tar.gz .

  3. Digite o nome e selecione a versão do Runtime como 2.x.x

  4. Selecione Import (Importar).

    Screenshot shows the Add Python Package page with an uploaded tar.gz file selected.

Depois que um pacote é importado, ele é listado na página de pacotes Python na sua conta de automação. Para remover um pacote, selecione o pacote e selecione Eliminar.

Screenshot shows the Python 2.7.x packages page after a package has been imported.

Importar pacotes com dependências

A Automação do Azure não resolve dependências para pacotes Python durante o processo de importação. Existem duas formas de importar um pacote com todas as suas dependências. Apenas um dos seguintes passos tem de ser utilizado para importar os pacotes para a sua conta de Automatização.

Transferir manualmente

Em uma máquina Windows de 64 bits com Python2.7 e pip instalado, execute o seguinte comando para baixar um pacote e todas as suas dependências:

C:\Python27\Scripts\pip2.7.exe download -d <output dir> <package name>

Depois que os pacotes forem baixados, você poderá importá-los para sua conta de automação.

Runbook

Para obter um runbook, importe pacotes do Python 2 do pypi para a conta de Automatização do Azure da organização do Gitbhub de Automatização do Azure para a sua conta de Automatização. Certifique-se de que as Definições de Execução estão definidas para o Azure e inicie o runbook com os parâmetros. Certifique-se de que a Identidade gerida está ativada para a sua conta de Automatização e tem acesso de Contribuidor de Automatização para uma importação bem-sucedida do pacote. Para cada parâmetro, certifique-se de que o inicia com o comutador, conforme se vê na seguinte lista e imagem:

  • -s <subscriptionId>
  • -g <resourceGroup>
  • -a <automationAccount>
  • -m <modulePackage>

Screenshot shows the Overview page for import_py2package_from_pypi with the Start Runbook pane on the right side.

O runbook permite-lhe especificar o pacote a transferir. Por exemplo, o Azure uso do parâmetro baixa todos os módulos do Azure e todas as dependências (cerca de 105). Após a conclusão do runbook, pode verificar os pacotes do Python em Recursos Partilhados na sua conta de Automatização para verificar se o pacote foi importado corretamente.

Usar um pacote em um runbook

Com um pacote importado, você pode usá-lo em um runbook. Adicione o seguinte código para listar todos os grupos de recursos em uma assinatura do Azure:

#!/usr/bin/env python 
import os 
import requests 
# printing environment variables 
endPoint = os.getenv('IDENTITY_ENDPOINT') + "?resource=https://management.azure.com/" 
identityHeader = os.getenv('IDENTITY_HEADER') 
payload = {} 
headers = { 
    'X-IDENTITY-HEADER': identityHeader, 
    'Metadata': 'True' 
} 
response = requests.request("GET", endPoint, headers=headers, data=payload) 
print response.text 

Desenvolver e testar runbooks offline

Para desenvolver e testar seus runbooks Python 2 offline, você pode usar o módulo de ativos emulados Python da Automação do Azure no GitHub. Este módulo permite que você faça referência aos recursos compartilhados, como credenciais, variáveis, conexões e certificados.

Próximos passos

Para preparar um runbook do Python, consulte Criar um runbook do Python.