Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
sam sync
Diese Seite enthält Referenzinformationen für die AWS Serverless Application Model Befehlszeilenschnittstelle (AWS SAM CLIsam sync
Befehl.
-
Für eine Einführung in die AWS SAM CLI, siehe Was ist der AWS SAM CLI?
-
Eine Dokumentation zur Verwendung des AWS SAM CLI, finden Sie unter Die AWS SAMCLI.
Der sam sync
Befehl synchronisiert lokale Anwendungsänderungen mit dem AWS Cloud.
Verwendung
$
sam sync
<options>
Optionen
--base-dir, -s
DIRECTORY
-
Löst relative Pfade zum Quellcode der Funktion oder Ebene in Bezug auf dieses Verzeichnis auf. Verwenden Sie diese Option, um zu ändern, wie relative Pfade zu Quellcode-Ordnern aufgelöst werden. Standardmäßig werden relative Pfade in Bezug auf den Speicherort der AWS SAM Vorlage aufgelöst.
Zusätzlich zu den Ressourcen in der Root-Anwendung oder dem Root-Stack, den Sie erstellen, gilt diese Option auch für verschachtelte Anwendungen oder Stacks. Darüber hinaus gilt diese Option für die folgenden Ressourcentypen und Eigenschaften:
-
Ressourcentyp:
AWS::Serverless::Function
Eigenschaft:CodeUri
-
Ressourcentyp:
AWS::Serverless::Function
Ressourcenattribut:Metadata
Eintrag:DockerContext
-
Ressourcentyp:
AWS::Serverless::LayerVersion
Immobilie:ContentUri
-
Ressourcentyp:
AWS::Lambda::Function
Immobilie:Code
-
Ressourcentyp:
AWS::Lambda::LayerVersion
Immobilie:Content
-
--build-image
TEXT
-
Das URI für das Container-Image, das Sie beim Erstellen Ihrer Anwendung verwenden möchten. AWS SAM Verwendet standardmäßig das Container-Image-Repository URI von Amazon Elastic Container Registry (AmazonECR) Public. Geben Sie diese Option an, um ein anderes Image zu verwenden.
Sie können diese Option in einem einzigen Befehl mehrfach verwenden. Jede Option akzeptiert eine Zeichenfolge oder ein Schlüssel-Wert-Paar.
-
Zeichenfolge — Geben Sie das URI Container-Image an, das alle Ressourcen in Ihrer Anwendung verwenden werden. Im Folgenden wird ein Beispiel gezeigt:
$
sam sync --build-image
amazon/aws-sam-cli-build-image-python3.8
-
Schlüssel-Wert-Paar — Geben Sie den Ressourcennamen als Schlüssel und das Container-Image URI an, das mit dieser Ressource als Wert verwendet werden soll. Verwenden Sie dieses Format, um URI für jede Ressource in Ihrer Anwendung ein anderes Container-Image anzugeben. Im Folgenden wird ein Beispiel gezeigt:
$
sam sync --build-image
Function1=amazon/aws-sam-cli-build-image-python3.8
Diese Option gilt nur, wenn die
--use-container
Option angegeben ist, andernfalls tritt ein Fehler auf. -
--build-in-source | --no-build-in-source
-
Ermöglicht
--build-in-source
es, Ihr Projekt direkt im Quellordner zu erstellen.Die
--build-in-source
Option unterstützt die folgenden Laufzeiten und Build-Methoden:-
Laufzeiten — Beliebig Node.js Laufzeit, die von der
sam init --runtime
Option unterstützt wird. -
Methoden erstellen —
Makefile
,esbuild
.
Die
--build-in-source
Option ist mit den folgenden Optionen nicht kompatibel:-
--use-container
Standardwert:
--no-build-in-source
-
--capabilities
LIST
-
Eine Liste von Funktionen, die Sie angeben, um die Erstellung bestimmter Stapel AWS CloudFormation zu ermöglichen. Einige Stack-Vorlagen können Ressourcen enthalten, die sich auf Ihre AWS-Konto Berechtigungen auswirken können. Zum Beispiel, indem Sie neue AWS Identity and Access Management (IAM) Benutzer erstellen. Geben Sie diese Option an, um die Standardwerte zu überschreiben. Gültige Werte sind unter anderem:
-
CAPABILITY_IAM
-
CAPABILITY_NAMED_IAM
-
CAPABILITY_RESOURCE_POLICY
-
CAPABILITY_AUTO_EXPAND
Standard:
CAPABILITY_NAMED_IAM
undCAPABILITY_AUTO_EXPAND
-
--code
-
AWS SAM Synchronisiert standardmäßig alle Ressourcen in Ihrer Anwendung. Geben Sie diese Option an, um nur Coderessourcen zu synchronisieren, die Folgendes beinhalten:
-
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
Zum Synchronisieren von Coderessourcen wird der AWS Dienst APIs direkt AWS SAM verwendet, anstatt sie über bereitzustellen AWS CloudFormation. Um Ihren AWS CloudFormation Stack zu aktualisieren, führen Sie sam sync --watch oder aussam deploy.
-
--config-env
TEXT
-
Der Umgebungsname, der die Standardparameterwerte in der zu verwendenden Konfigurationsdatei angibt. Der Standardwert ist „default“. Weitere Informationen zu Konfigurationsdateien finden Sie unter AWS SAM CLI Konfigurationsdatei.
--config-file
PATH
-
Der Pfad und der Dateiname der Konfigurationsdatei, die die zu verwendenden Standardparameterwerte enthält. Der Standardwert ist "
samconfig.toml
" im Stammverzeichnis des Projektverzeichnisses. Weitere Informationen zu Konfigurationsdateien finden Sie unter AWS SAM CLI Konfigurationsdatei. --dependency-layer | --no-dependency-layer
-
Gibt an, ob die Abhängigkeiten einzelner Funktionen in eine weitere Ebene aufgeteilt werden sollen, um den Synchronisierungsvorgang zu beschleunigen.
Standardwert:
--dependency-layer
--image-repository
TEXT
-
Der Name des Amazon Elastic Container Registry (AmazonECR) -Repositorys, in das dieser Befehl das Image Ihrer Funktion hochlädt. Erforderlich für Funktionen, die mit dem
Image
Pakettyp deklariert wurden. --image-repositories
TEXT
-
Eine Zuordnung von Funktionen zu ihrem ECR Amazon-RepositoryURI. Referenzfunktionen anhand ihrer logischen ID. Im Folgenden wird ein Beispiel gezeigt:
$
sam sync --image-repositories
Function1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repo
Sie können diese Option in einem einzigen Befehl mehrfach angeben.
--kms-key-id
TEXT
-
Die ID eines AWS Key Management Service (AWS KMS) -Schlüssels, der zum Verschlüsseln von Artefakten verwendet wird, die sich im Amazon S3 S3-Bucket befinden. Wenn Sie diese Option nicht angeben, werden von Amazon S3 verwaltete Verschlüsselungsschlüssel AWS SAM verwendet.
--metadata
-
Eine Metadatenübersicht, die an alle Artefakte angehängt werden kann, auf die Sie in Ihrer Vorlage verweisen.
--notification-arns
LIST
-
Eine Liste der Amazon Simple Notification Service (AmazonSNS) -ThemenARNs, die mit dem Stack AWS CloudFormation verknüpft sind.
--parameter-overrides
-
Eine Zeichenfolge, die AWS CloudFormation Parameterüberschreibungen enthält, die als Schlüssel-Wert-Paare kodiert sind. Verwenden Sie dasselbe Format wie (). AWS Command Line Interface AWS CLI Das AWS SAM CLI Das Format besteht aus expliziten Schlüsselwörtern und Werten, wobei jede Überschreibung durch ein Leerzeichen getrennt ist. Nachfolgend finden Sie zwei Beispiele:
--parameter-overrides ParameterKey=hello,ParameterValue=world
--parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana
--resource
TEXT
-
Gibt den zu synchronisierenden Ressourcentyp an. Um mehrere Ressourcen zu synchronisieren, können Sie diese Option mehrmals angeben. Diese Option wird zusammen mit der
--code
Option unterstützt. Bei dem Wert muss es sich um eine der unten aufgeführten Ressourcen handeln--code
. Beispiel,--resource AWS::Serverless::Function --resource AWS::Serverless::LayerVersion
. --resource-id
TEXT
-
Gibt die Ressourcen-ID an, die synchronisiert werden soll. Um mehrere Ressourcen zu synchronisieren, können Sie diese Option mehrmals angeben. Diese Option wird zusammen mit der
--code
Option unterstützt. Beispiel,--resource-id Function1 --resource-id Function2
. --role-arn
TEXT
-
Der Amazon-Ressourcenname (ARN) einer IAM Rolle, die beim Anwenden des Changesets übernommen AWS CloudFormation wird.
--s3-bucket
TEXT
-
Der Name des Amazon Simple Storage Service (Amazon S3) -Buckets, in den dieser Befehl Ihre AWS CloudFormation Vorlage hochlädt. Wenn Ihre Vorlage größer als 51.200 Byte ist, ist entweder die Option
--s3-bucket
oder die--resolve-s3
Option erforderlich. Wenn Sie sowohl die--s3-bucket
--resolve-s3
Optionen als auch angeben, tritt ein Fehler auf. --s3-prefix
TEXT
-
Das Präfix, das den Namen der Artefakte hinzugefügt wurde, die Sie in den Amazon S3 S3-Bucket hochladen. Der Präfixname ist ein Pfadname (Ordnername) für den Amazon S3 S3-Bucket. Dies gilt nur für Funktionen, die mit dem
Zip
Pakettyp deklariert wurden. --save-params
-
Speichert die Parameter, die Sie in der Befehlszeile angeben, in der AWS SAM Konfigurationsdatei.
--skip-deploy-sync | --no-skip-deploy-sync
-
Gibt
--skip-deploy-sync
an, dass die anfängliche Infrastruktursynchronisierung übersprungen werden soll, wenn sie nicht erforderlich ist. Die AWS SAM CLI vergleicht Ihre lokale AWS SAM Vorlage mit der bereitgestellten AWS CloudFormation Vorlage und führt nur dann eine Bereitstellung durch, wenn eine Änderung erkannt wird.Gibt
--no-skip-deploy-sync
an, dass bei jeder Ausführung eine AWS CloudFormation Bereitstellung durchgeführt werdensam sync
soll.Weitere Informationen hierzu finden Sie unter Überspringen Sie die erste AWS CloudFormation Bereitstellung.
Standardwert:
--skip-deploy-sync
--stack-name
TEXT
-
Der Name des AWS CloudFormation Stacks für Ihre Anwendung.
Diese Option ist erforderlich.
-
Eine Liste von Tags, die dem Stack zugeordnet werden sollen, der erstellt oder aktualisiert wird. AWS CloudFormation leitet diese Tags auch an Ressourcen im Stack weiter, die sie unterstützen.
--template-file, --template, -t
PATH
-
Der Pfad und der Dateiname, in dem sich Ihre AWS SAM Vorlage befindet.
Anmerkung
Wenn Sie diese Option angeben, werden AWS SAM nur die Vorlage und die lokalen Ressourcen bereitgestellt, auf die sie verweist.
--use-container, -u
-
Wenn Ihre Funktionen von Paketen abhängen, die nativ kompilierte Abhängigkeiten haben, verwenden Sie diese Option, um Ihre Funktion in einem like zu erstellen AWS LambdaDocker Behälter.
Anmerkung
Derzeit ist diese Option nicht kompatibel mit
--dependency-layer
. Wenn Sie--use-container
mit verwenden--dependency-layer
, AWS SAM CLI informiert Sie und fährt fort mit--no-dependency-layer
. --watch
-
Startet einen Prozess, der Ihre lokale Anwendung auf Änderungen überwacht und diese automatisch mit der AWS Cloud synchronisiert. Wenn Sie diese Option angeben, werden standardmäßig alle Ressourcen in Ihrer Anwendung AWS SAM synchronisiert, wenn Sie sie aktualisieren. AWS SAM Führt mit dieser Option eine erste AWS CloudFormation Bereitstellung durch. AWS SAM Verwendet dann den AWS Dienst, APIs um die Coderessourcen zu aktualisieren. AWS SAM verwendet AWS CloudFormation , um Infrastrukturressourcen zu aktualisieren, wenn Sie Ihre AWS SAM Vorlage aktualisieren.
--watch-exclude
TEXT
-
Schließt eine Datei oder einen Ordner von der Überwachung auf Dateiänderungen aus. Um diese Option verwenden zu können,
--watch
muss sie ebenfalls angegeben werden.Diese Option erhält ein Schlüssel-Wert-Paar:
-
Schlüssel — Die logische ID einer Lambda-Funktion in Ihrer Anwendung.
-
Wert — Der zugehörige Dateiname oder Ordner, der ausgeschlossen werden soll.
Wenn Sie Dateien oder Ordner aktualisieren, die mit der
--watch-exclude
Option angegeben wurden, AWS SAM CLI initiiert keine Synchronisierung. Wenn jedoch eine Aktualisierung anderer Dateien oder Ordner eine Synchronisierung einleitet, werden diese Dateien oder Ordner in diese Synchronisation aufgenommen.Sie können diese Option in einem einzigen Befehl mehrfach angeben.
-
Beispiele
Beispiele zur Verwendung dieses Befehls finden Sie unterOptionen für den Befehl sam sync.