Gestire pacchetti Python 2 in Automazione di Azure
Questo articolo illustra come importare, gestire e usare i pacchetti Python 2 in Automazione di Azure in esecuzione nell'ambiente sandbox di Azure e nei ruoli di lavoro ibridi per runbook. Per favorire la semplificazione dei runbook, è possibile importare i moduli necessari usando pacchetti Python.
Per informazioni sulla gestione dei pacchetti Python 3, vedere Gestire i pacchetti Python 3.
Importare pacchetti
Nell'account di Automazione selezionare Pacchetti Python in Risorse condivise. Selezionare + Aggiungi un pacchetto Python.
Nella pagina Aggiungi pacchetto Python selezionare un pacchetto locale da caricare. Il pacchetto può essere un file con estensione .whl.
Immettere il nome e selezionare la versione di runtime 2.x.x
Selezionare Importa.
Dopo l'importazione, il pacchetto viene elencato nella pagina dei pacchetti Python dell'account di Automazione. Per rimuovere un pacchetto, selezionarlo e fare clic su Elimina.
Importare pacchetti con dipendenze
Automazione di Azure non risolve le dipendenze per i pacchetti Python durante il processo di importazione. Esistono due modi per importare un pacchetto con tutte le relative dipendenze. Per importare i pacchetti nell'account di Automazione è necessario usare solo uno dei passaggi seguenti.
Download manuale
In un computer Windows a 64 bit con Python 2.7 e pip installato, eseguire questo comando per scaricare un pacchetto e tutte le relative dipendenze:
C:\Python27\Scripts\pip2.7.exe download -d <output dir> <package name>
Una volta scaricati i pacchetti, è possibile importarli nell'account di Automazione.
Runbook
Per ottenere un runbook, importare i pacchetti Python 2 da pypi nell'account di Automazione di Azure dal GitHub dell’organizzazione relativo ad Automazione di Azure nell’account di Automazione. Verificare che le impostazioni di esecuzione siano impostate su Azure e avviare il runbook con i parametri. È necessario assicurarsi che l'identità gestita sia abilitata per l'account di Automazione e disponga di autorizzazioni di Collaboratore Automazione per l'importazione corretta del pacchetto. Assicurarsi di avviare ogni parametro con l'opzione come illustrato nell'elenco e nell'immagine seguenti:
- -s <subscriptionId>
- -g <resourceGroup>
- -a <automationAccount>
- -m <modulePackage>
Il runbook consente di specificare il pacchetto da scaricare. Ad esempio, l'uso del parametro Azure
scarica tutti i moduli di Azure e tutte le dipendenze (circa 105). Al termine del runbook è possibile controllare Pacchetti Python in Risorse condivise nell'account di Automazione per verificare che il pacchetto sia stato importato correttamente.
Usare un pacchetto in un runbook
Un pacchetto importato può essere usato in un runbook. Aggiungere il codice seguente per elencare tutti i gruppi di risorse in una sottoscrizione di 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
Sviluppare e testare i runbook offline
Per sviluppare e testare i runbook Python 2 offline, è possibile usare il modulo Azure Automation Python emulated assets in GitHub. Questo modulo consente di fare riferimento alle risorse condivise, ad esempio credenziali, variabili, connessioni e certificati.
Passaggi successivi
Per preparare un runbook Python, vedere Creare un runbook di Python.