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à.
Consente di eseguire una funzione Lambda come azione nella pipeline. Utilizzando l'oggetto evento che è un input per questa funzione, la funzione ha accesso alla configurazione dell'operazione, alle posizioni degli artefatti di input, alle posizioni degli artefatti di output e ad altre informazioni necessarie per accedere agli artefatti. Per un esempio di evento passato a una funzione di invoke Lambda, vedere. JSONEvento di esempio Come parte dell'implementazione della funzione Lambda, deve esserci una chiamata a PutJobSuccessResult
API
o PutJobFailureResult API
. In caso contrario, l'esecuzione di questa operazione si blocca fino a che l'operazione non scade. Se specifichi artefatti di output per l'operazione, questi devono essere caricati nel bucket S3 come parte dell'implementazione della funzione.
Importante
Non registrare l'JSONevento CodePipeline inviato a Lambda perché ciò può comportare la registrazione delle credenziali utente nei registri. CloudWatch Il CodePipeline ruolo utilizza un JSON evento per passare credenziali temporanee a Lambda sul campoartifactCredentials
. Per un evento di esempio, consultare Evento JSON di esempio.
Tipo di operazione
-
Categoria:
Invoke
-
Proprietario:
AWS
-
Provider:
Lambda
-
Versione:
1
Parametri di configurazione
- FunctionName
-
Campo obbligatorio: sì
FunctionName
è il nome della funzione creata in Lambda. - UserParameters
-
Campo obbligatorio: no
Una stringa che può essere elaborata come input dalla funzione Lambda.
Input artifact (Artefatti di input)
-
Numero di artefatti:
0 to 5
-
Descrizione: il set di artefatti da rendere disponibili per la funzione Lambda.
Artefatti di output
-
Numero di artefatti:
0 to 5
-
Descrizione: l'insieme di artefatti prodotti come output dalla funzione Lambda.
Variabili di output
Questa azione produrrà come variabili tutte le coppie chiave-valore incluse nella sezione della outputVariables
richiesta. PutJobSuccessResult API
Per ulteriori informazioni sulle variabili in CodePipeline, vedere. Riferimento alle variabili
Esempio di configurazione dell'operazione
Name: Lambda
Actions:
- Name: Lambda
ActionTypeId:
Category: Invoke
Owner: AWS
Provider: Lambda
Version: '1'
RunOrder: 1
Configuration:
FunctionName: myLambdaFunction
UserParameters: 'http://192.0.2.4'
OutputArtifacts: []
InputArtifacts: []
Region: us-west-2
JSONEvento di esempio
L'azione Lambda invia un JSON evento che contiene l'ID del lavoro, la configurazione dell'azione della pipeline, le posizioni degli artefatti di input e output e qualsiasi informazione di crittografia per gli artefatti. Il job worker accede a questi dettagli per completare l'azione Lambda. Per ulteriori informazioni, consulta Dettagli del processo. Di seguito è riportato un esempio di evento.
{ "CodePipeline.job": { "id": "
11111111-abcd-1111-abcd-111111abcdef
", "accountId": "111111111111
", "data": { "actionConfiguration": { "configuration": { "FunctionName": "MyLambdaFunction
", "UserParameters": "input_parameter
" } }, "inputArtifacts": [ { "location": { "s3Location": { "bucketName": "bucket_name
", "objectKey": "filename
" }, "type": "S3" }, "revision": null, "name": "ArtifactName
" } ], "outputArtifacts": [], "artifactCredentials": { "secretAccessKey": "secret_key
", "sessionToken": "session_token
", "accessKeyId": "access_key_ID
" }, "continuationToken": "token_ID
", "encryptionKey": { "id": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "type": "KMS" } } } }
L'JSONevento fornisce i seguenti dettagli del lavoro per l'azione Lambda in: CodePipeline
-
id
: l'ID univoco generato dal sistema del processo. -
accountId
: L'ID AWS dell'account associato al lavoro. -
data
: altre informazioni richieste da un esecutore del processo per completare il processo.-
actionConfiguration
: i parametri di operazione per l'operazione Lambda. Per le definizioni, consulta Parametri di configurazione . -
inputArtifacts
: l'artefatto fornito all'operazione.-
location
: la posizione dello store degli artefatti.-
s3Location
: le informazioni sulla posizione dell'artefatto di input per l'operazione.-
bucketName
: il nome dell'archivio di artefatti della pipeline per l'azione (ad esempio, un bucket Amazon S3 denominato -2-1234567890). codepipeline-us-east -
objectKey
: il nome dell'applicazione (ad esempio,CodePipelineDemoApplication.zip
).
-
-
type
: il tipo di artefatto nella posizione. Al momento,S3
è l'unico tipo di artefatto valido.
-
-
revision
: l'ID revisione dell'artefatto. A seconda del tipo di oggetto, può essere un ID di commit (GitHub) o un ID di revisione (Amazon Simple Storage Service). Per ulteriori informazioni, consulta ArtifactRevision. -
name
: il nome dell'artefatto da utilizzare, ad esempioMyApp
.
-
-
outputArtifacts
: l'output dell'operazione.-
location
: la posizione dello store degli artefatti.-
s3Location
: le informazioni sulla posizione dell'artefatto di output per l'operazione.-
bucketName
: il nome dell'archivio di artefatti della pipeline per l'azione (ad esempio, un bucket Amazon S3 denominato -2-1234567890). codepipeline-us-east -
objectKey
: il nome dell'applicazione (ad esempio,CodePipelineDemoApplication.zip
).
-
-
type
: il tipo di artefatto nella posizione. Al momento,S3
è l'unico tipo di artefatto valido.
-
-
revision
: l'ID revisione dell'artefatto. A seconda del tipo di oggetto, può essere un ID di commit (GitHub) o un ID di revisione (Amazon Simple Storage Service). Per ulteriori informazioni, consulta ArtifactRevision. -
name
: il nome dell'output di un artefatto, ad esempioMyApp
.
-
-
artifactCredentials
: le credenziali di AWS sessione utilizzate per accedere agli artefatti di input e output nel bucket Amazon S3. Queste credenziali sono credenziali temporanee emesse da AWS Security Token Service (AWS STS).-
secretAccessKey
: la chiave di accesso segreta per la sessione. -
sessionToken
: il token per la sessione. -
accessKeyId
: la chiave di accesso segreta per la sessione.
-
-
continuationToken
: un token generato dall'operazione. Le operazioni future utilizzano questo token per identificare l'istanza in esecuzione dell'operazione. Al termine dell'operazione, non è necessario fornire alcun token di continuazione. -
encryptionKey
: La chiave di crittografia utilizzata per crittografare i dati nell'archivio degli artefatti, ad esempio una chiave. AWS KMS Se non è definito, viene utilizzata la chiave predefinita per Amazon Simple Storage Service.-
id
: l'ID utilizzato per identificare la chiave. Per ogni AWS KMS chiave, puoi utilizzare l'ID della chiave, la chiave ARN o l'aliasARN. -
type
: il tipo di chiave di crittografia, ad esempio una chiave AWS KMS .
-
-
Consulta anche
Le risorse correlate seguenti possono essere utili durante l'utilizzo di questa operazione.
-
AWS CloudFormation Guida per l'utente: per ulteriori informazioni sulle azioni e gli AWS CloudFormation artefatti Lambda per le pipeline, vedere Utilizzo delle funzioni di sostituzione dei parametri con CodePipeline le pipeline, Automazione della distribuzione di applicazioni basate su Lambda e Artifacts.AWS CloudFormation
-
Invoca una AWS Lambda funzione in una pipeline in CodePipeline— Questa procedura fornisce una funzione Lambda di esempio e mostra come utilizzare la console per creare una pipeline con un'azione di richiamo Lambda.