Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
aws:executeScript
: esecuzione di uno script
Esegue il Python o PowerShell lo script fornito utilizzando il runtime e il gestore specificati. Ogni operazione aws:executeScript
può durare al massimo 600 secondi (10 minuti). Puoi limitare il timeout specificando il parametro timeoutSeconds
per una fase aws:executeScript
.
Usa le istruzioni return nella funzione per aggiungere output al payload di output. Per esempi di definizione degli output per l'operazione aws:executeScript
, consulta Esempio 2: Runbook con script. Puoi anche inviare l'output aws:executeScript
delle azioni nei tuoi runbook al gruppo di log Amazon CloudWatch Logs da te specificato. Per ulteriori informazioni, consulta Output dell'azione automazione del logging con CloudWatch Logs.
Se desideri inviare l'output aws:executeScript
delle azioni ai CloudWatch log o se gli script che specifichi per aws:executeScript
le azioni richiamano le operazioni AWS API, è sempre necessario un ruolo di servizio AWS Identity and Access Management (IAM) (o assumi un ruolo) per eseguire il runbook.
L'aws:executeScript
azione contiene i seguenti moduli Core PowerShell preinstallati:
-
Microsoft. PowerShell.Host
-
Microsoft. PowerShell.Gestione
-
Microsoft. PowerShell.Sicurezza
-
Microsoft. PowerShell.Utilità
-
PackageManagement
-
PowerShellGet
Per utilizzare i moduli PowerShell Core che non sono preinstallati, lo script deve installare il modulo con il -Force
flag, come mostrato nel comando seguente. Il modulo AWSPowerShell.NetCore
non è supportato. Sostituiscilo ModuleName
con il modulo che desideri installare.
Install-Module
ModuleName
-Force
Per utilizzare i cmdlet PowerShell Core nello script, è consigliabile utilizzare i AWS.Tools
moduli, come illustrato nei comandi seguenti. Sostituisci ciascun segnaposto delle risorse di esempio
con le tue informazioni.
-
Cmdlet Amazon S3
Install-Module AWS.Tools.S3 -Force Get-S3Bucket -BucketName
bucketname
-
Cmdlet Amazon EC2
Install-Module AWS.Tools.EC2 -Force Get-EC2InstanceStatus -InstanceId
instanceId
-
Cmdlet comuni o indipendenti dal AWS Tools for Windows PowerShell servizio.
Install-Module AWS.Tools.Common -Force Get-AWSRegion
Se lo script inizializza nuovi oggetti oltre a utilizzare i cmdlet PowerShell Core, è necessario importare anche il modulo come illustrato nel comando seguente.
Install-Module AWS.Tools.EC2 -Force Import-Module AWS.Tools.EC2 $tag = New-Object Amazon.EC2.Model.Tag $tag.Key = "Tag" $tag.Value = "TagValue" New-EC2Tag -Resource i-02573cafcfEXAMPLE -Tag $tag
Per esempi di installazione e importazione di AWS.Tools
moduli e utilizzo dei cmdlet PowerShell Core nei runbook, vedere. Utilizzo di Document Builder (Generatore documenti) per la creazione di runbook
Input
Fornisci le informazioni necessarie per eseguire lo script. Sostituisci ciascun segnaposto delle risorse di esempio
con le tue informazioni.
Nota
L'allegato per uno script Python può essere un file.py o un file.zip che contiene lo script. PowerShell gli script devono essere archiviati in file.zip.
- Runtime
-
Il linguaggio di runtime da utilizzare per eseguire lo script fornito.
aws:executeScript
supporta Python 3.7 (python3.7), Python 3.8 (python3.8), Python 3.9 (python3.9) Python 3.10 (python3.10), Python 3.10 (python3.10), Python 3.11 (python3.11) Core 6.0 (dotnetcore2.1) e script 7.0 (dotnetcore3.1). PowerShell PowerShellpython3.7
python3.8
Valoripython3.9
supportatiPowerShell Core 6.0
: | | | | |python3.10
python3.11
PowerShell 7.0
Tipo: stringa
Campo obbligatorio: sì
- Gestore
-
Il nome della funzione. È necessario assicurarsi che la funzione definita nel gestore abbia due parametri,
events
econtext
. Il PowerShell runtime non supporta questo parametro.▬Tipo: stringa
Obbligatorio: Sì (Python) | Non supportato () PowerShell
- InputPayload
-
Un oggetto JSON o YAML che verrà passato al primo parametro del gestore. Questo può essere usato per passare i dati di input allo script.
▬Tipo: stringa
Campo obbligatorio: no
- Script
-
Uno script incorporato che si desidera eseguire durante l'automazione.
▬Tipo: stringa
Obbligatorio: No (Python) | Sì () PowerShell
- Allegato
-
Il nome di un file di script standalone o di un file .zip che può essere richiamato dall'operazione. Specifica lo stesso valore del
Name
del file allegato del documento che specifichi nel parametro della richiestaAttachments
. Per ulteriori informazioni, consulta la sezione Allegati nella documentazione di riferimento dell'API AWS Systems Manager . Se stai fornendo uno script utilizzando un allegato, devi anche definire una sezionefiles
negli elementi di primo livello del runbook. Per ulteriori informazioni, consulta Versione dello schema 0.3.Per richiamare un file per python, utilizzare il formato
filename.method_name
inHandler
.Nota
L'allegato per uno script Python può essere un file.py o un file.zip che contiene lo script. PowerShell gli script devono essere archiviati in file.zip.
Quando si includono librerie Python nell'allegato, si consiglia di aggiungere un file
__init__.py
vuoto in ogni directory del modulo. Ciò consente di importare i moduli dalla libreria nell'allegato all'interno del contenuto dello script. Ad esempio:from library import module
▬Tipo: stringa
Campo obbligatorio: no
Output
- Payload
-
Rappresentazione JSON dell'oggetto restituito dalla funzione. Vengono restituiti fino a 100 KB. Se si genera un elenco, viene restituito un massimo di 100 elementi.