Bauen Sie einenAWS CodeBuild-Projekt (CodeBuild, Amazon SNS) - AWS Step Functions

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.

Bauen Sie einenAWS CodeBuild-Projekt (CodeBuild, Amazon SNS)

Dieses Beispielprojekt veranschaulicht die Verwendung vonAWS Step FunctionsSo erstellen Sie einenAWS CodeBuild-Projekt durchführen, Tests ausführen und dann eine Amazon SNS SNS-Benachrichtigung senden.

Erstellen des Zustandsautomaten und Bereitstellen von Ressourcen

  1. Öffnen SieStep Functions -KonsoleKlicken Sie auf und danach aufErstellen eines Zustandsautomatenaus.

  2. Klicken Sie aufBeispielprojekteKlicken Sie auf und danach aufStarten vonCodeBuildbauenaus.

    Der Code und der Visual Workflow des Zustandsautomaten werden angezeigt.

    
                        Starten Sie einen Workflow.
  3. Wählen Sie Next (Weiter) aus.

    Die Seite Deploy resources (Ressourcen bereitstellen) wird angezeigt und listet die Ressourcen auf, die erstellt werden. Die Ressourcen für dieses Beispielprojekt:

    • Ein CodeBuild Projekt

    • Amazon-SNS-Thema

  4. Wählen Sie Deploy Resources (Ressourcen bereitstellen) aus.

    Anmerkung

    Es kann bis zu 10 Minuten dauern, bis diese Ressourcen und dazu gehörende IAM-Berechtigungen erstellt werden. Wenn die Seite Deploy resources (Ressourcen bereitstellen) anzeigt wird, können Sie den Link Stack ID (Stack-ID) öffnen, um zu sehen, welche Ressourcen bereitgestellt werden.

Starten einer neuen Ausführung

  1. Geben Sie auf der Seite New execution (Neue Ausführung) einen Namen für die Ausführung (optional) ein und wählen Sie Start Execution (Ausführung starten).

  2. (Optional) Um Ihre Ausführung zu identifizieren, können Sie imNameaus. Standardmäßig generiert Step Functions automatisch einen eindeutigen Ausführungsnamen.

    Anmerkung

    Mit Step Functions können Sie Statuscomputer-, Ausführungs- und Aktivitätsnamen erstellen, die Nicht-ASCII-Zeichen enthalten. Diese Nicht-ASCII-Namen funktionieren nicht mit AmazonCloudWatchaus. Um sicherzustellen, dass Sie nachverfolgen könnenCloudWatchMetriken, wählen Sie einen Namen, der nur ASCII-Zeichen verwendet.

  3. (Optional) Wechseln Sie in den Step Functions zum neu erstellten ZustandsautomatenDashboardKlicken Sie auf und danach aufStarten Sie die Ausführungaus.

  4. Wenn eine Ausführung abgeschlossen ist, wählen Sie Zustände auf derVisueller Workflowund stöbern Sie imEingabeundAusgabeunterSchritt-Detailsaus.

Code des Zustandsautomaten aus diesem Beispiel

Der Zustandsautomat in diesem Beispielprojekt wird in integriertCodeBuildund Amazon SNS.

Durchsuchen Sie diesen Beispielzustandsautomaten, um zu sehen, wie Step Functions einen Zustandsautomat verwendet, um einenCodeBuild-Projekt und sendet dann ein Amazon SNS SNS-Thema mit einer Meldung, ob der Auftrag erfolgreich abgeschlossen wurde oder fehlgeschlagen ist.

Weitere Informationen darüber, wie Step Functions andere steuern könnenAWSDienstleistungen, sieheVerwenden von AWS Step Functions mit sonstigen Servicesaus.

{ "Comment": "An example of using CodeBuild to run tests, get test results and send a notification.", "StartAt": "Trigger CodeBuild Build", "States": { "Trigger CodeBuild Build": { "Type": "Task", "Resource": "arn:aws:states:::codebuild:startBuild.sync", "Parameters": { "ProjectName": "CodeBuildProject-Dtw1jBhEYGDf" }, "Next": "Get Test Results" }, "Get Test Results": { "Type": "Task", "Resource": "arn:aws:states:::codebuild:batchGetReports", "Parameters": { "ReportArns.$": "$.Build.ReportArns" }, "Next": "All Tests Passed?" }, "All Tests Passed?": { "Type": "Choice", "Choices": [ { "Variable": "$.Reports[0].Status", "StringEquals": "SUCCEEDED", "Next": "Notify Success" } ], "Default": "Notify Failure" }, "Notify Success": { "Type": "Task", "Resource": "arn:aws:states:::sns:publish", "Parameters": { "Message": "CodeBuild build tests succeeded", "TopicArn": "arn:aws:sns:sa-east-1:123456789012:StepFunctionsSample-CodeBuildExecution3da9ead6-bc1f-4441-99ac-591c140019c4-SNSTopic-EVYLVNGW85JP" }, "End": true }, "Notify Failure": { "Type": "Task", "Resource": "arn:aws:states:::sns:publish", "Parameters": { "Message": "CodeBuild build tests failed", "TopicArn": "arn:aws:sns:sa-east-1:123456789012:StepFunctionsSample-CodeBuildExecution3da9ead6-bc1f-4441-99ac-591c140019c4-SNSTopic-EVYLVNGW85JP" }, "End": true } } }

Weitere Informationen zur Konfiguration von IAM bei Verwendung von Step Functions mit anderenAWSDienstleistungen, sieheIAM-Richtlinien für integrierte Diensteaus.