sam sync - AWS Serverless Application Model

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à.

sam sync

Questa pagina fornisce informazioni di riferimento per il AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)sam sync.

Il sam sync comando sincronizza le modifiche dell'applicazione locale con. Cloud AWS

Utilizzo

$ sam sync <options>

Opzioni

--base-dir, -s DIRECTORY

Risolve i percorsi relativi al codice sorgente della funzione o del livello rispetto a questa directory. Utilizzate questa opzione per modificare il modo in cui vengono risolti i percorsi relativi alle cartelle del codice sorgente. Per impostazione predefinita, i percorsi relativi vengono risolti rispetto alla posizione del AWS SAM modello.

Oltre alle risorse nell'applicazione root o nello stack che stai creando, questa opzione si applica anche alle applicazioni o agli stack annidati. Inoltre, questa opzione si applica ai seguenti tipi e proprietà di risorse:

  • Tipo di risorsa: AWS::Serverless::Function Proprietà: CodeUri

  • Tipo di risorsa: Attributo della AWS::Serverless::Function risorsa: Metadata Voce: DockerContext

  • Tipo di risorsa: AWS::Serverless::LayerVersion Proprietà: ContentUri

  • Tipo di risorsa: AWS::Lambda::Function Proprietà: Code

  • Tipo di risorsa: AWS::Lambda::LayerVersion Proprietà: Content

--build-image TEXT

L'URI per l'immagine del contenitore che desideri utilizzare durante la creazione dell'applicazione. Per impostazione predefinita, AWS SAM utilizza l'URI del repository di immagini del contenitore di Amazon Elastic Container Registry (Amazon ECR) Public. Specificate questa opzione per utilizzare un'immagine diversa.

È possibile utilizzare questa opzione più volte in un unico comando. Ogni opzione accetta una stringa o una coppia chiave-valore.

  • Stringa: specifica l'URI dell'immagine del contenitore che verranno utilizzate da tutte le risorse dell'applicazione. Di seguito è riportato un esempio:

    $ sam sync --build-image amazon/aws-sam-cli-build-image-python3.8
  • Coppia chiave-valore: specifica il nome della risorsa come chiave e l'URI dell'immagine del contenitore da utilizzare con quella risorsa come valore. Utilizzate questo formato per specificare un URI di immagine del contenitore diverso per ogni risorsa dell'applicazione. Di seguito è riportato un esempio:

    $ sam sync --build-image Function1=amazon/aws-sam-cli-build-image-python3.8

Questa opzione si applica solo se l'--use-containeropzione è specificata, altrimenti si verificherà un errore.

--build-in-source | --no-build-in-source

Fornisce --build-in-source la possibilità di creare il progetto direttamente nella cartella dei sorgenti.

L'--build-in-sourceopzione supporta i seguenti runtime e metodi di compilazione:

  • Runtime: qualsiasi Node.js runtime supportato dall'sam init --runtimeopzione.

  • Metodi di compilazione:Makefile,esbuild.

L'--build-in-sourceopzione non è compatibile con le seguenti opzioni:

  • --use-container

Default: --no-build-in-source

--capabilities LIST

Un elenco di funzionalità specificate per consentire la creazione AWS CloudFormation di determinati stack. Alcuni modelli di stack potrebbero includere risorse che possono influire sulle autorizzazioni del tuo. Account AWS Ad esempio, creando nuovi utenti AWS Identity and Access Management (IAM). Specificate questa opzione per sovrascrivere i valori predefiniti. I valori validi includono i seguenti:

  • CAPABILITY_IAM

  • CAPABILITY_NAMED_IAM

  • POLITICA DELLE RISORSE IN MATERIA DI CAPACITÀ

  • CAPABILITY_AUTO_EXPAND

Predefinito: e CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND

--code

Per impostazione predefinita, AWS SAM sincronizza tutte le risorse dell'applicazione. Specificate questa opzione per sincronizzare solo le risorse di codice, che includono quanto segue:

  • AWS::Serverless::Function

  • AWS::Lambda::Function

  • AWS::Serverless::LayerVersion

  • AWS::Lambda::LayerVersion

  • AWS::Serverless::Api

  • AWS::ApiGateway::RestApi

  • AWS::Serverless::HttpApi

  • AWS::ApiGatewayV2::Api

  • AWS::Serverless::StateMachine

  • AWS::StepFunctions::StateMachine

Per sincronizzare le risorse di codice, AWS SAM utilizza direttamente le API di AWS servizio, anziché distribuirle tramite. AWS CloudFormation Per aggiornare il tuo AWS CloudFormation stack, esegui o. sam sync --watch sam deploy

--config-env TEXT

Il nome dell'ambiente che specifica i valori dei parametri predefiniti nel file di configurazione da utilizzare. Il valore predefinito è «default». Per ulteriori informazioni sui file di configurazione, consulta AWS SAMCLIfile di configurazione.

--config-file PATH

Il percorso e il nome del file di configurazione contenente i valori dei parametri predefiniti da utilizzare. Il valore predefinito è "samconfig.toml" nella radice della directory del progetto. Per ulteriori informazioni sui file di configurazione, consulta AWS SAMCLIfile di configurazione.

--dependency-layer | --no-dependency-layer

Speciifica se separare le dipendenze delle singole funzioni in un altro livello per accelerare il processo di sincronizzazione.

Default: --dependency-layer

--image-repository TEXT

Il nome del repository Amazon Elastic Container Registry (Amazon ECR) in cui questo comando carica l'immagine della funzione. Obbligatorio per le funzioni dichiarate con il Image tipo di pacchetto.

--image-repositories TEXT

Una mappatura delle funzioni sull'URI del loro repository Amazon ECR. Funzioni di riferimento in base al relativo ID logico. Di seguito è riportato un esempio:

$ sam sync --image-repositories Function1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repo

È possibile specificare questa opzione più volte in un unico comando.

--kms-key-id TEXT

L'ID di una chiave AWS Key Management Service (AWS KMS) utilizzata per crittografare gli artefatti che sono a riposo nel bucket Amazon S3. Se non specifichi questa opzione, AWS SAM utilizza le chiavi di crittografia gestite da Amazon S3.

--metadata

Una mappa di metadati da allegare a tutti gli artefatti a cui fai riferimento nel modello.

--notification-arns LIST

Un elenco di ARN tematici di Amazon Simple Notification Service (Amazon SNS) associati allo stackAWS CloudFormation.

--parameter-overrides

Una stringa che contiene sostituzioni di AWS CloudFormation parametri codificate come coppie chiave-valore. Utilizzate lo stesso formato di (). AWS Command Line Interface AWS CLI Ad esempio, ParameterKey=ParameterValue InstanceType=t1.micro.

--resource TEXT

Speciifica il tipo di risorsa da sincronizzare. Per sincronizzare più risorse, è possibile specificare questa opzione più volte. Questa opzione è supportata dall'--codeopzione. Il valore deve essere una delle risorse elencate sotto--code. Ad esempio, --resource AWS::Serverless::Function --resource AWS::Serverless::LayerVersion.

--resource-id TEXT

Speciifica l'ID della risorsa da sincronizzare. Per sincronizzare più risorse, è possibile specificare questa opzione più volte. Questa opzione è supportata dall'--codeopzione. Ad esempio, --resource-id Function1 --resource-id Function2.

--role-arn TEXT

L'Amazon Resource Name (ARN) di un ruolo IAM che AWS CloudFormation assume quando si applica il changeset.

--s3-bucket TEXT

Il nome del bucket Amazon Simple Storage Service (Amazon S3) in cui questo comando carica il modello. AWS CloudFormation Se il modello è più grande di 51.200 byte, è richiesta l'opzione o l'--s3-bucketopzione. --resolve-s3 Se si specificano entrambe le --resolve-s3 opzioni --s3-bucket e, si verifica un errore.

--s3-prefix TEXT

Il prefisso aggiunto ai nomi degli artefatti caricati nel bucket Amazon S3. Il nome del prefisso è un nome di percorso (nome della cartella) per il bucket Amazon S3. Questo vale solo per le funzioni dichiarate con il Zip tipo di pacchetto.

--save-params

Salva i parametri forniti dalla riga di comando nel file AWS SAM di configurazione.

--skip-deploy-sync | --no-skip-deploy-sync

Specifica --skip-deploy-sync di saltare la sincronizzazione iniziale dell'infrastruttura se non è richiesta. AWS SAMCLIConfronterà il AWS SAM modello locale con il AWS CloudFormation modello distribuito ed eseguirà una distribuzione solo se viene rilevata una modifica.

Specifica --no-skip-deploy-sync di eseguire una AWS CloudFormation distribuzione ogni volta che sam sync viene eseguita.

Per ulteriori informazioni, vedi Salta la distribuzione iniziale AWS CloudFormation.

Default: --skip-deploy-sync

--stack-name TEXT

Il nome dello AWS CloudFormation stack per l'applicazione.

Questa opzione è obbligatoria.

--tags LIST

Un elenco di tag da associare allo stack creato o aggiornato. AWS CloudFormationpropaga inoltre questi tag alle risorse dello stack che li supportano.

--template-file, --template, -t PATH

Il percorso e il nome del file in cui si trova il AWS SAM modello.

Nota

Se si specifica questa opzione, AWS SAM distribuisce solo il modello e le risorse locali a cui punta.

--use-container, -u

Se le tue funzioni dipendono da pacchetti che hanno dipendenze compilate in modo nativo, usa questa opzione per creare la tua funzione all'interno di un AWS Lambda contenitore simile a -like. Docker

Nota

Attualmente, questa opzione non è compatibile con. --dependency-layer Se usi --use-container con--dependency-layer, ti AWS SAM CLI informa e continua con--no-dependency-layer.

--watch

Avvia un processo che controlla le modifiche apportate all'applicazione locale e le sincronizza automaticamente con. Cloud AWS Per impostazione predefinita, quando si specifica questa opzione, AWS SAM sincronizza tutte le risorse dell'applicazione durante l'aggiornamento. Con questa opzione, AWS SAM esegue una AWS CloudFormation distribuzione iniziale. Quindi, AWS SAM utilizza le API AWS di servizio per aggiornare le risorse del codice. AWS SAMutilizza AWS CloudFormation per aggiornare le risorse dell'infrastruttura quando si aggiorna il AWS SAM modello.

--watch-exclude TEXT

Esclude un file o una cartella dall'osservazione delle modifiche apportate ai file. Per utilizzare questa opzione, è --watch necessario fornire anche questa opzione.

Questa opzione riceve una coppia chiave-valore:

  • Chiave: l'ID logico di una funzione Lambda nell'applicazione.

  • Valore: il nome o la cartella del file associato da escludere.

Quando si aggiornano i file o le cartelle specificati con l'--watch-excludeopzione, AWS SAM CLI la sincronizzazione non viene avviata. Tuttavia, quando un aggiornamento ad altri file o cartelle avvia una sincronizzazione, tali file o cartelle verranno inclusi in tale sincronizzazione.

È possibile fornire questa opzione più volte in un unico comando.