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 l'interfaccia a riga di AWS Serverless Application Model comando (AWS SAM CLI) sam sync comando.

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

URIPer l'immagine del contenitore che desideri utilizzare durante la creazione dell'applicazione. Per impostazione predefinita, AWS SAM utilizza l'archivio di immagini del contenitore URI di Amazon Elastic Container Registry (AmazonECR) 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'immagine URI 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'immagine del contenitore URI da utilizzare con quella risorsa come valore. Utilizzate questo formato per specificare un'immagine del contenitore diversa URI 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

  • CAPABILITY_RESOURCE_POLICY

  • CAPABILITY_AUTO_EXPAND

Predefinito: CAPABILITY_NAMED_IAM e 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 APIs direttamente il AWS servizio, anziché distribuirle tramite AWS CloudFormation. Per aggiornare il tuo AWS CloudFormation stack, sam sync --watch esegui o. 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 SAM CLI file 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 SAM CLI file 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 (AmazonECR) in cui questo comando carica l'immagine della funzione. Obbligatorio per le funzioni dichiarate con il tipo di Image pacchetto.

--image-repositories TEXT

Una mappatura delle funzioni nel loro ECR repository URI Amazon. 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 tuo modello.

--notification-arns LIST

Un elenco di argomenti ARNs di Amazon Simple Notification Service (AmazonSNS) AWS CloudFormation associati allo stack.

--parameter-overrides

Una stringa che contiene le sostituzioni AWS CloudFormation dei parametri codificate come coppie chiave-valore. Utilizzate lo stesso formato di (). AWS Command Line Interface AWS CLI La AWS SAM CLI il formato è costituito da parole chiave e valori esplicite, ogni override è separata da uno spazio. Di seguito, sono riportati due esempi:

  • --parameter-overrides ParameterKey=hello,ParameterValue=world

  • --parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana

--resource TEXT

Specifica il tipo di risorsa da sincronizzare. Per sincronizzare più risorse, è possibile specificare questa opzione più volte. Questa opzione è supportata con l'--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 con l'--codeopzione. Ad esempio --resource-id Function1 --resource-id Function2.

--role-arn TEXT

L'Amazon Resource Name (ARN) di un IAM ruolo 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. Il AWS SAM CLI confronterà 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, consulta 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 CloudFormation propaga 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 -like AWS LambdaDocker contenitore.

Nota

Attualmente, questa opzione non è compatibile con--dependency-layer. Se si utilizza --use-container con--dependency-layer, AWS SAM CLI ti 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 man mano che le si aggiorna. Con questa opzione, AWS SAM esegue una AWS CloudFormation distribuzione iniziale. Quindi, AWS SAM utilizza il AWS servizio APIs per aggiornare le risorse del codice. AWS SAM utilizza 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 non avvierà una sincronizzazione. 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.

Esempi

Per esempi sull'utilizzo di questo comando, fare riferimento aOpzioni per il comando sam sync.