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à.
Distribuisci una funzione Lambda usando AWS SAM con Lambda Java CodeBuild
AWS Serverless Application Model (AWS SAM) è un framework open source per la creazione di applicazioni serverless. Per ulteriori informazioni, consulta il AWS Serverless Application Model repository
Configura il tuo AWS SAM repository
Crea un AWS SAM Hello World progetto usando la AWS SAM CLI.
Per creare il tuo AWS SAM Progetto
-
Segui le istruzioni nella Guida per gli AWS Serverless Application Model sviluppatori per l'installazione della AWS SAM CLI sul tuo computer locale.
-
Esegui
sam inite seleziona la seguente configurazione del progetto.Which template source would you like to use?: 1 - AWS Quick Start Templates Choose an AWS Quick Start application template: 1 - Hello World Example Use the most popular runtime and package type? (Python and zip) [y/N]: N Which runtime would you like to use?: 8 - java21 What package type would you like to use?: 1 - Zip Which dependency manager would you like to use?: 1 - gradle Would you like to enable X-Ray tracing on the function(s) in your application? [y/N]: N Would you like to enable monitoring using CloudWatch Application Insights? [y/N]: N Would you like to set Structured Logging in JSON format on your Lambda functions? [y/N]: N Project name [sam-app]: <insert project name> -
Carica la cartella AWS SAM del progetto in un repository di origine supportato. Per un elenco dei tipi di sorgenti supportati, consulta ProjectSource.
Crea un progetto CodeBuild Lambda Java
Crea un progetto AWS CodeBuild Lambda Java e imposta le autorizzazioni IAM necessarie per la compilazione.
Per creare il tuo progetto CodeBuild Lambda Java
-
Apri la AWS CodeBuild console all'indirizzo. https://console.aws.amazon.com/codesuite/codebuild/home
-
Se viene visualizzata una pagina di CodeBuild informazioni, scegli Crea progetto di compilazione. Altrimenti, nel riquadro di navigazione, espandi Build, scegli Build projects, quindi scegli Create build project.
In Project name (Nome progetto) immettere un nome per questo progetto di compilazione. I nomi dei progetti di compilazione devono essere univoci per ogni AWS account. Puoi anche includere una descrizione opzionale del progetto di compilazione per aiutare gli altri utenti a capire a cosa serve questo progetto.
-
In Source, seleziona il repository di origine in cui si trova il AWS SAM progetto.
-
In Environment (Ambiente):
-
Per Compute, seleziona Lambda.
-
Per Runtime (s), seleziona Java.
-
Per Image, seleziona aws/codebuild /amazonlinux-x86_64-lambda-standard:corretto21.
-
Per Ruolo di servizio, lascia selezionato Nuovo ruolo di servizio. Prendi nota del nome del ruolo. Ne avrai bisogno quando aggiorni le autorizzazioni IAM del progetto più avanti in questo esempio.
-
-
Scegliere Create build project (Crea progetto di compilazione).
-
Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel pannello di navigazione, scegli Ruoli e seleziona il ruolo di servizio associato al tuo progetto. Puoi trovare il ruolo del tuo progetto CodeBuild selezionando il tuo progetto di compilazione, scegliendo Modifica , Ambiente e quindi Ruolo di servizio.
-
Scegli la scheda Relazioni di attendibilità e quindi Modifica policy di attendibilità.
-
Aggiungi la seguente policy in linea al tuo ruolo IAM. Questa verrà utilizzata per implementare l' AWS SAM infrastruttura in un secondo momento. Per ulteriori informazioni, consulta Aggiunta e rimozione di autorizzazioni per identità IAM nella Guida per l’utente di IAM .
Configura il progetto buildspec
Per creare, testare e distribuire la tua funzione Lambda, CodeBuild legge ed esegue i comandi di compilazione da un buildspec.
Per configurare il tuo progetto: buildspec
-
Nella CodeBuild console, seleziona il tuo progetto di build, quindi scegli Modifica e Buildspec.
-
In Buildspec, scegli Inserisci comandi di compilazione e poi Passa all'editor.
-
Elimina i comandi di compilazione precompilati e incollali nel seguente buildspec.
version: 0.2 env: variables: GRADLE_DIR: "HelloWorldFunction" phases: build: commands: - echo "Running unit tests..." - cd $GRADLE_DIR; gradle test; cd .. - echo "Running build..." - sam build --template-file template.yaml - echo "Running deploy..." - sam package --output-template-file packaged.yaml --resolve-s3 --template-file template.yaml - yes | sam deploy -
Selezionare Update buildspec (Aggiorna buildspec).
Distribuisci il tuo AWS SAM Infrastruttura Lambda
Usa CodeBuild Lambda per implementare automaticamente la tua infrastruttura Lambda
Per implementare la tua infrastruttura Lambda
-
Selezionare Start build (Avvia compilazione). Questo creerà, testerà e distribuirà automaticamente AWS SAM l'applicazione all'uso. AWS Lambda CloudFormation
-
Una volta terminata la compilazione, accedi alla AWS Lambda console e cerca la tua nuova funzione Lambda sotto il nome del AWS SAM progetto.
-
Testa la tua funzione Lambda selezionando API Gateway nella panoramica delle funzioni, quindi facendo clic sull'URL dell'endpoint API. Dovresti vedere una pagina aperta con il messaggio.
"message": "hello world"
Pulisci la tua infrastruttura
Per evitare ulteriori addebiti per le risorse utilizzate durante questo tutorial, elimina le risorse create dal AWS SAM modello e CodeBuild.
Per ripulire la tua infrastruttura
-
Accedi alla CloudFormation console e seleziona
aws-sam-cli-managed-default. -
In Risorse, svuota il
SamCliSourceBucketbucket di distribuzione. -
Elimina lo stack.
aws-sam-cli-managed-default -
Elimina lo CloudFormation stack associato al tuo AWS SAM progetto. Questo stack dovrebbe avere lo stesso nome del tuo AWS SAM progetto.
-
Accedi alla CloudWatch console ed elimina i gruppi di CloudWatch log associati al tuo CodeBuild progetto.
-
Accedi alla CodeBuild console ed elimina il CodeBuild progetto scegliendo Elimina progetto di compilazione.