Hantera Python 2-paket i Azure Automation

Den här artikeln beskriver hur du importerar, hanterar och använder Python 2-paket i Azure Automation som körs i Sandbox-miljön i Azure och Hybrid Runbook Workers. För att förenkla runbooks kan du använda Python-paket för att importera de moduler du behöver.

Information om hur du hanterar Python 3-paket finns i Hantera Python 3-paket.

Importera paket

  1. I ditt Automation-konto väljer du Python-paket under Delade resurser. Klicka på + Lägg till ett Python-paket.

    Skärmbild av sidan Python-paket som visar Python-paket i den vänstra menyn och Lägg till ett Python-paket markerat.

  2. På sidan Lägg till Python-paket väljer du ett lokalt paket att ladda upp. Paketet kan vara en .whl- eller .tar.gz-fil.

  3. Ange namnet och välj Körningsversion som 2.x.x

  4. Välj Importera.

    Skärmbild som visar sidan Lägg till Python-paket med en uppladdad tar.gz-fil markerad.

När ett paket har importerats visas det på sidan Python-paket i ditt Automation-konto. Om du vill ta bort ett paket markerar du paketet och klickar på Ta bort.

Skärmbild som visar sidan Python 2.7.x-paket när ett paket har importerats.

Importera paket med beroenden

Azure Automation löser inte beroenden för Python-paket under importen. Det finns två sätt att importera ett paket med alla dess beroenden. Endast ett av följande steg måste användas för att importera paketen till ditt Automation-konto.

Ladda ned manuellt

På en Windows 64-bitars dator med Python2.7 och pip installerade kör du följande kommando för att ladda ned ett paket och alla dess beroenden:

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

När paketen har laddats ned kan du importera dem till ditt Automation-konto.

Runbook

Om du vill hämta en runbook importerar du Python 2-paket från pypi till Azure Automation-konto från Azure Automation GitHub till ditt Automation-konto. Kontrollera att Run Inställningar är inställt på Azure och starta runbooken med parametrarna. Runbooken kräver ett Kör som-konto för att Automation-kontot ska fungera. För varje parameter ser du till att starta den med växeln som visas i följande lista och bild:

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

Skärmbild som visar sidan Översikt import_py2package_from_pypi med fönstret Starta runbook till höger.

Med runbooken kan du ange vilket paket som ska laddas ned. Om du till exempel använder Azure parametern laddas alla Azure-moduler och alla beroenden ned (cirka 105).

När runbooken är klar kan du kontrollera Python-paketen under Delade resurser i ditt Automation-konto för att kontrollera att paketet har importerats korrekt.

Använda ett paket i en runbook

När du har importerat ett paket kan du använda det i en runbook. I följande exempel används Azure Automation-verktygspaketet. Det här paketet gör det enklare att använda Python med Azure Automation. Om du vill använda paketet följer du anvisningarna i GitHub lagringsplatsen och lägger till den i runbooken. Du kan till exempel använda from azure_automation_utility import get_automation_runas_credential för att importera funktionen för att hämta Kör som-kontot.

import azure.mgmt.resource
import automationassets
from azure_automation_utility import get_automation_runas_credential

# Authenticate to Azure using the Azure Automation RunAs service principal
runas_connection = automationassets.get_automation_connection("AzureRunAsConnection")
azure_credential = get_automation_runas_credential()

# Intialize the resource management client with the RunAs credential and subscription
resource_client = azure.mgmt.resource.ResourceManagementClient(
    azure_credential,
    str(runas_connection["SubscriptionId"]))

# Get list of resource groups and print them out
groups = resource_client.resource_groups.list()
for group in groups:
    print group.name

Anteckning

automationassetsPython-paketet är inte tillgängligt på pypi.org, så det är inte tillgängligt för import till en Windows dator.

Utveckla och testa runbooks offline

Om du vill utveckla och testa dina Python 2-runbooks offline kan du använda modulen Azure Automation Python-emulerade tillgångar på GitHub. I den här modulen kan du referera till dina delade resurser, till exempel autentiseringsuppgifter, variabler, anslutningar och certifikat.

Nästa steg

Information om hur du förbereder en Python-runbook finns i Skapa en Python-runbook.