Hinzufügen von Workflow-Komponenten zu einem Blueprint - Amazon CodeCatalyst

Amazon CodeCatalyst wird ab dem 7. November 2025 nicht mehr für Neukunden geöffnet sein. Wenn Sie den Service nutzen möchten, melden Sie sich bitte vor dem 7. November 2025 an. Weitere Informationen finden Sie unter Wie migriert man von CodeCatalyst.

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.

Hinzufügen von Workflow-Komponenten zu einem Blueprint

Ein Workflow wird von CodeCatalyst Amazon-Projekten verwendet, um Aktionen auf der Grundlage von Triggern auszuführen. Sie können Workflow-Komponenten verwenden, um Workflow-YAML-Dateien zu erstellen und zusammenzustellen. Weitere Informationen finden Sie unter YAML-Workflow-Definition.

So importieren Sie Workflow-Komponenten von Amazon CodeCatalyst Blueprints

Fügen Sie in Ihrer blueprint.ts Datei Folgendes hinzu:

import { WorkflowBuilder, Workflow } from '@amazon-codecatalyst/codecatalyst-workflows'

Beispiele für Workflow-Komponenten

WorkflowBuilder Komponente

Sie können eine Klasse verwenden, um eine Workflow-Definition zu erstellen. Die Definition kann einer Workflow-Komponente zum Rendern in einem Repository zugewiesen werden.

import { WorkflowBuilder } from '@amazon-codecatalyst/codecatalyst-workflows' const workflowBuilder = new WorkflowBuilder({} as Blueprint, { Name: 'my_workflow', }); // trigger the workflow on pushes to branch 'main' workflowBuilder.addBranchTrigger(['main']); // add a build action workflowBuilder.addBuildAction({ // give the action a name actionName: 'build_and_do_some_other_stuff', // the action pulls from source code input: { Sources: ['WorkflowSource'], }, // the output attempts to autodiscover test reports, but not in the node modules output: { AutoDiscoverReports: { Enabled: true, ReportNamePrefix: AutoDiscovered, IncludePaths: ['**/*'], ExcludePaths: ['*/node_modules/**/*'], }, }, // execute some arbitrary steps steps: [ 'npm install', 'npm run myscript', 'echo hello-world', ], // add an account connection to the workflow environment: convertToWorkflowEnvironment(myEnv), });

Workflow-bewährte Komponente

Das folgende Beispiel zeigt, wie eine Projen-Komponente verwendet werden kann, um ein Workflow-YAML in ein Repository zu schreiben:

import { Workflow } from '@amazon-codecatalyst/codecatalyst-workflows' ... const repo = new SourceRepository const blueprint = this; const workflowDef = workflowBuilder.getDefinition() // creates a workflow.yaml at .aws/workflows/${workflowDef.name}.yaml new Workflow(blueprint, repo, workflowDef); // can also pass in any object and have it rendered as a yaml. This is unsafe and may not produce a valid workflow new Workflow(blueprint, repo, {... some object ...});

Verbindung zu einer Umgebung herstellen

Viele Workflows müssen in einer AWS-Kontoverbindung ausgeführt werden. Workflows bewältigen dies, indem sie es Aktionen ermöglichen, eine Verbindung zu Umgebungen mit Konto- und Rollennamenspezifikationen herzustellen.

import { convertToWorkflowEnvironment } from '@amazon-codecatalyst/codecatalyst-workflows' const myEnv = new Environment(...); // can be passed into a workflow constructor const workflowEnvironment = convertToWorkflowEnvironment(myEnv); // add a build action workflowBuilder.addBuildAction({ ... // add an account connection to the workflow environment: convertToWorkflowEnvironment(myEnv), });