View a markdown version of this page

Referenz zur Amazon S3-Quellaktion - AWS CodePipeline

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.

Referenz zur Amazon S3-Quellaktion

Eine Quellaktion löst die Pipeline aus, wenn ein neues Objekt in den konfigurierten Bucket und Objektschlüssel hochgeladen wird.

In diesem Referenzthema wird die Amazon S3-Quellaktion beschrieben, bei CodePipeline der der Quellspeicherort ein Amazon S3-Bucket ist, der für die Versionierung konfiguriert ist. Referenzinformationen zur Amazon S3-Bereitstellungsaktion in finden Sie CodePipeline unterReferenz zur Amazon S3-Bereitstellungsaktion.

Bevor Sie die Pipeline verbinden, erstellen Sie einen Amazon S3-Quell-Bucket, aktivieren Sie die Versionierung und laden Sie Ihre Quelldateien als einzelne ZIP-Datei hoch.

Sie können einen neuen Bucket in Amazon S3 erstellen oder einen vorhandenen Amazon S3-Bucket auswählen, der als Quellspeicherort für Ihre Anwendungsdateien verwendet werden soll. Weitere Informationen zum Aktivieren der Versionierung finden Sie unter Verwenden der Versionierung im Amazon S3-Benutzerhandbuch.

Wenn Amazon S3 der Quellanbieter für Ihre Pipeline ist, können Sie Ihre Quelldatei (en) in eine einzige ZIP-Datei komprimieren und die ZIP-Datei in Ihren Quell-Bucket hochladen. Sie können auch eine einzelne entpackte Datei hochladen. Downstream-Aktionen, die eine ZIP-Datei erwarten, schlagen jedoch fehl.

Wenn Sie die Konsole verwenden, um Ihre Pipeline zu erstellen oder zu bearbeiten, CodePipeline erstellt eine EventBridge Regel, die Ihre Pipeline startet, wenn eine Änderung im Amazon S3-Quell-Bucket erfolgt.

Sie können auch eine Quellüberschreibung mithilfe eines Eingabe-Transformationseintrags erstellen, um das revisionValue In EventBridge für Ihr Pipeline-Ereignis zu verwenden, wobei revisionValue das von der Quellereignisvariablen für Ihren Objektschlüssel, Ihren Commit oder Ihre Bild-ID abgeleitet wird. Weitere Informationen finden Sie in dem optionalen Schritt für die Eingabe der Eingabetransformation, der in den nachfolgenden Verfahren enthalten istHerstellen einer Verbindung zu Amazon S3-Quellaktionen mit einer für Ereignisse aktivierten Quelle.

Aktionstyp

  • Kategorie: Source

  • Eigentümer: AWS

  • Anbieter: S3

  • Version: 1

Konfigurationsparameter

S3 Bucket

Erforderlich: Ja

Der Name des Amazon S3-Buckets, in dem Quelländerungen erkannt werden sollen.

S3ObjectKey

Erforderlich: Ja

Der Name des Amazon S3-Objektschlüssels, in dem Quelländerungen erkannt werden sollen.

AllowOverrideForS3ObjectKey

Erforderlich: Nein

AllowOverrideForS3ObjectKeysteuert, ob Quellüberschreibungen von die bereits S3ObjectKey in der Quelle konfigurierte Aktion überschreiben StartPipelineExecution können. Weitere Informationen zu Quellüberschreibungen mit dem S3-Objektschlüssel finden Sie unter. Starten Sie eine Pipeline mit einer Quellrevisionsüberschreibung

Wichtig

Wenn Sie diesen Parameter weglassenAllowOverrideForS3ObjectKey, können Sie den S3 ObjectKey in der Quellaktion CodePipeline standardmäßig überschreiben, indem Sie diesen Parameter auf setzen. false

Gültige Werte für diesen Parameter sind:

  • true: Falls gesetzt, kann der vorkonfigurierte S3-Objektschlüssel während einer Pipeline-Ausführung durch Quellrevisionsüberschreibungen außer Kraft gesetzt werden.

    Anmerkung

    Wenn Sie beabsichtigen, allen CodePipeline Benutzern die Möglichkeit zu geben, den vorkonfigurierten S3-Objektschlüssel zu überschreiben, wenn Sie eine neue Pipeline-Ausführung starten, müssen Sie auf setzen. AllowOverrideForS3ObjectKey true

  • false:

    Wenn diese Option gesetzt ist, CodePipeline kann der S3-Objektschlüssel nicht mithilfe von Quellrevisionsüberschreibungen überschrieben werden. Dies ist auch der Standardwert für diesen Parameter.

PollForSourceChanges

Erforderlich: Nein

PollForSourceChangessteuert, ob der Amazon S3-Quell-Bucket nach Quelländerungen CodePipeline abgefragt wird. Wir empfehlen, stattdessen CloudWatch Events und CloudTrail to detect source changes zu verwenden. Weitere Informationen zur Konfiguration von CloudWatch Ereignissen finden Sie unter Migrieren Sie Polling-Pipelines mit einer S3-Quelle und einem CloudTrail S3-Trail (CLI) oderMigrieren Sie Polling-Pipelines mit einer S3-Quelle und einem S3-Trail CloudTrail (CloudFormation Vorlage).

Wichtig

Wenn Sie CloudWatch Ereignisse konfigurieren möchten, müssen Sie auf setzen, PollForSourceChanges false um doppelte Pipelineausführungen zu vermeiden.

Gültige Werte für diesen Parameter sind:

  • true: Wenn diese Option gesetzt ist, wird Ihr Quellstandort nach Quellenänderungen CodePipeline abgefragt.

    Anmerkung

    Wenn Sie es weglassenPollForSourceChanges, CodePipeline wird standardmäßig Ihr Quellstandort nach Quellenänderungen abgefragt. Dieses Verhalten ist das gleiche, als ob PollForSourceChanges enthalten wäre und auf true festgelegt würde.

  • false: Wenn diese Option gesetzt ist, CodePipeline wird Ihr Quellstandort nicht nach Quellenänderungen abgefragt. Verwenden Sie diese Einstellung, wenn Sie beabsichtigen, eine CloudWatch Event-Regel zu konfigurieren, um Änderungen an der Quelle zu erkennen.

Input artifacts (Eingabeartefakte)

  • Anzahl der Artefakte: 0

  • Beschreibung: Eingabe-Artefakte sind für diesen Aktionstyp nicht gültig.

Ausgabeartefakte

  • Anzahl der Artefakte: 1

  • Beschreibung: Stellt die Artefakte bereit, die in dem Quell-Bucket verfügbar sind, der für die Verbindung mit der Pipeline konfiguriert wurde. Die aus dem Bucket generierten Artefakte sind die Ausgabeartefakte für die Amazon S3-Aktion. Die Amazon S3-Objektmetadaten (ETag und Versions-ID) werden CodePipeline als Quellrevision für die ausgelöste Pipeline-Ausführung angezeigt.

Ausgabevariablen

Wenn dies konfiguriert ist, werden durch diese Aktion Variablen erzeugt, die von der Aktionskonfiguration einer nachgeschalteten Aktion in der Pipeline referenziert werden können. Diese Aktion erzeugt Variablen, die als Ausgabevariablen angezeigt werden können, auch wenn die Aktion keinen Namespace hat. Sie konfigurieren eine Aktion mit einem Namespace, um diese Variablen für die Konfiguration nachgeschalteter Aktionen zur Verfügung zu stellen.

Weitere Informationen zu Variablen in CodePipeline finden Sie unterVariablenreferenz.

BucketName

Der Name des Amazon S3-Buckets bezieht sich auf die Quelländerung, die die Pipeline ausgelöst hat.

ETag

Das Entitäts-Tag für das Objekt, das sich auf die Quelländerung bezieht, von der die Pipeline ausgelöst wurde. Der ETag ist ein MD5-Hash des Objekts. Das ETag gibt nur Änderungen des Inhalt eines Objekts wieder, nicht der Metadaten eines Objekts.

ObjectKey

Der Name des Amazon S3-Objektschlüssels, der sich auf die Quelländerung bezieht, die die Pipeline ausgelöst hat.

VersionId

Die Versions-ID für die Version des Objekts, die sich auf die Quelländerung bezieht, von der die Pipeline ausgelöst wurde.

Berechtigungen für Servicerollen: S3-Quellaktion

Für die Unterstützung von S3-Quellaktionen fügen Sie Ihrer Grundsatzerklärung Folgendes hinzu:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetBucketVersioning", "s3:GetBucketAcl", "s3:GetBucketLocation", "s3:GetObjectTagging", "s3:GetObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::[[S3Bucket]]", "arn:aws:s3:::[[S3Bucket]]/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } } ] }

Aktionsdeklaration

YAML
Name: Source Actions: - RunOrder: 1 OutputArtifacts: - Name: SourceArtifact ActionTypeId: Provider: S3 Owner: AWS Version: '1' Category: Source Region: us-west-2 Name: Source Configuration: S3Bucket: amzn-s3-demo-source-bucket S3ObjectKey: my-application.zip PollForSourceChanges: 'false' InputArtifacts: []
JSON
{ "Name": "Source", "Actions": [ { "RunOrder": 1, "OutputArtifacts": [ { "Name": "SourceArtifact" } ], "ActionTypeId": { "Provider": "S3", "Owner": "AWS", "Version": "1", "Category": "Source" }, "Region": "us-west-2", "Name": "Source", "Configuration": { "S3Bucket": "amzn-s3-demo-source-bucket", "S3ObjectKey": "my-application.zip", "PollForSourceChanges": "false" }, "InputArtifacts": [] } ] },

Die folgenden verwandten Ressourcen bieten Ihnen nützliche Informationen für die Arbeit mit dieser Aktion.

  • Tutorial: Erstellen einer einfachen Pipeline (S3-Bucket)— Dieses Tutorial enthält eine AppSpec Beispieldatei sowie eine CodeDeploy Beispielanwendung und eine Bereitstellungsgruppe. Verwenden Sie dieses Tutorial, um eine Pipeline mit einer Amazon S3-Quelle zu erstellen, die auf Amazon EC2-Instances bereitgestellt wird.