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 syncBefehl.
-
Für eine Einführung in die AWS SAM CLI, siehe Was ist das? AWS SAMCLI
-
Eine Dokumentation zur Verwendung des AWS SAM CLI, finden Sie unter AWS SAM CLI.
Der sam sync Befehl synchronisiert lokale Anwendungsänderungen mit dem AWS Cloud.
Verwendung
$sam sync<options>
Optionen
--base-dir, -sDIRECTORY-
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 Quellcodeordnern 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::FunctionEigenschaft:CodeUri -
Ressourcentyp:
AWS::Serverless::FunctionRessourcenattribut:MetadataEintrag:DockerContext -
Ressourcentyp:
AWS::Serverless::LayerVersionImmobilie:ContentUri -
Ressourcentyp:
AWS::Lambda::FunctionImmobilie:Code -
Ressourcentyp:
AWS::Lambda::LayerVersionImmobilie:Content
-
--build-imageTEXT-
Der URI für das Container-Image, das Sie beim Erstellen Ihrer Anwendung verwenden möchten. AWS SAM Verwendet standardmäßig den Container-Image-Repository-URI von Amazon Elastic Container Registry (Amazon ECR) Public. Geben Sie diese Option an, um ein anderes Bild 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 den URI des Container-Images an, das alle Ressourcen in Ihrer Anwendung verwenden werden. Im Folgenden wird ein Beispiel gezeigt:
$sam sync --build-imageamazon/aws-sam-cli-build-image-python3.8 -
Schlüssel-Wert-Paar — Geben Sie den Ressourcennamen als Schlüssel und den Container-Image-URI an, der mit dieser Ressource als Wert verwendet werden soll. Verwenden Sie dieses Format, um für jede Ressource in Ihrer Anwendung einen anderen Container-Image-URI anzugeben. Im Folgenden wird ein Beispiel gezeigt:
$sam sync --build-imageFunction1=amazon/aws-sam-cli-build-image-python3.8
Diese Option gilt nur, wenn die
--use-containerOption angegeben ist, andernfalls tritt ein Fehler auf. -
--build-in-source | --no-build-in-source-
Ermöglicht
--build-in-sourcees, Ihr Projekt direkt im Quellordner zu erstellen.Die
--build-in-sourceOption unterstützt die folgenden Laufzeiten und Build-Methoden:-
Laufzeiten — Beliebig Node.js Laufzeit, die von der
sam init --runtimeOption unterstützt wird. -
Methoden erstellen —
Makefile,esbuild.
Die
--build-in-sourceOption ist mit den folgenden Optionen nicht kompatibel:-
--use-container
Standardwert:
--no-build-in-source -
--capabilitiesLIST-
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 durch das Erstellen neuer AWS Identity and Access Management (IAM-) Benutzer. 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: und
CAPABILITY_NAMED_IAMCAPABILITY_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-envTEXT-
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-filePATH-
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-repositoryTEXT-
Der Name des Amazon Elastic Container Registry (Amazon ECR) -Repositorys, in das dieser Befehl das Image Ihrer Funktion hochlädt. Erforderlich für Funktionen, die mit dem
ImagePakettyp deklariert wurden. --image-repositoriesTEXT-
Eine Zuordnung von Funktionen zu ihrer Amazon ECR-Repository-URI. Referenzfunktionen anhand ihrer logischen ID. Im Folgenden wird ein Beispiel gezeigt:
$sam sync --image-repositoriesFunction1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repoSie können diese Option in einem einzigen Befehl mehrfach angeben.
--kms-key-idTEXT-
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-arnsLIST-
Eine Liste der Amazon Simple Notification Service (Amazon SNS) -Themen ARNs , die mit dem Stack AWS CloudFormation verknüpft sind.
--no-use-container-
Eine Option, mit der Sie das IDE-Toolkit verwenden können, um das Standardverhalten festzulegen.
--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
--resourceTEXT-
Gibt den zu synchronisierenden Ressourcentyp an. Um mehrere Ressourcen zu synchronisieren, können Sie diese Option mehrmals angeben. Diese Option wird zusammen mit der
--codeOption 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-idTEXT-
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
--codeOption unterstützt. Beispiel,--resource-id Function1 --resource-id Function2. --role-arnTEXT-
Der Amazon-Ressourcenname (ARN) einer IAM-Rolle, der beim Anwenden des Changesets übernommen AWS CloudFormation wird.
--s3-bucketTEXT-
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-bucketoder die--resolve-s3Option erforderlich. Wenn Sie sowohl die--s3-bucket--resolve-s3Optionen als auch angeben, tritt ein Fehler auf. --s3-prefixTEXT-
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
ZipPakettyp 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-syncan, 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-syncan, dass bei jeder Ausführung eine AWS CloudFormation Bereitstellung durchgeführt werdensam syncsoll.Weitere Informationen hierzu finden Sie unter Überspringen Sie die erste AWS CloudFormation Bereitstellung.
Standardwert:
--skip-deploy-sync --stack-nameTEXT-
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, -tPATH-
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-containermit 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-excludeTEXT-
Schließt eine Datei oder einen Ordner von der Überwachung auf Dateiänderungen aus. Um diese Option verwenden zu können,
--watchmuss 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-excludeOption angegeben wurden, wird 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.