AWS Proton Parameter - AWS Proton

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.

AWS Proton Parameter

Sie können Parameter in Ihrer Infrastruktur als Codedateien (IaC) definieren und verwenden, um sie flexibel und wiederverwendbar zu machen. Sie lesen einen Parameterwert in Ihren IaC-Dateien, indem Sie auf den Namen des Parameters im Parameter-Namespace verweisen. AWS Proton AWS Proton fügt Parameterwerte in die gerenderten IaC-Dateien ein, die es bei der Ressourcenbereitstellung generiert. Verwendet Jinja, um AWS CloudFormation IaC-Parameter zu verarbeiten. AWS Proton AWS Proton Generiert zur Verarbeitung von Terraform-IaC-Parametern eine Terraform-Parameterwertdatei und stützt sich dabei auf die in HCL integrierte Parametrisierungsfunktion.

Mit AWS Proton generiert eine CodeBuild Bereitstellung Eingabedatei, die Ihr Code importieren kann. Die Datei ist eine JSON- oder HCL-Datei, abhängig von einer Eigenschaft im Manifest Ihrer Vorlage. Weitere Informationen finden Sie unter CodeBuild Details und Beispiele für Bereitstellungsparameter.

Sie können auf Parameter in Ihren Umgebungs-, Service- und Komponenten-IaC-Dateien oder im Bereitstellungscode mit den folgenden Anforderungen verweisen:

  • Die Länge der einzelnen Parameternamen darf 100 Zeichen nicht überschreiten.

  • Die Länge des Parameter-Namespaces und des Ressourcennamens zusammen überschreitet nicht die Zeichenbeschränkung für den Ressourcennamen.

AWS Proton Die Bereitstellung schlägt fehl, wenn diese Kontingente überschritten werden.

Parametertypen

Die folgenden Parametertypen stehen Ihnen als Referenz in AWS Proton IaC-Dateien zur Verfügung:

Eingabeparameter

Umgebungen und Dienstinstanzen können Eingabeparameter verwenden, die Sie in einer Schemadatei definieren, die Sie der Umgebung oder Dienstvorlage zuordnen. Sie können auf die Eingabeparameter einer Ressource in der IaC-Datei der Ressource verweisen. Komponenten-IaC-Dateien können sich auf Eingabeparameter der Dienstinstanz beziehen, an die die Komponente angehängt ist.

AWS Proton überprüft die Namen der Eingabeparameter anhand Ihrer Schemadatei und ordnet sie den Parametern zu, auf die in Ihren IaC-Dateien verwiesen wird, um die Eingabewerte einzufügen, die Sie bei der Ressourcenbereitstellung in eine Spezifikationsdatei eingeben.

Ausgabeparameter

Sie können Ausgaben in jeder Ihrer IaC-Dateien definieren. Eine Ausgabe kann beispielsweise ein Name, eine ID oder ein ARN einer der Ressourcen sein, die die Vorlage bereitstellt, oder sie kann eine Möglichkeit sein, eine der Eingaben der Vorlage zu übergeben. Sie können in IaC-Dateien anderer Ressourcen auf diese Ausgaben verweisen.

Definieren Sie in CloudFormation IaC-Dateien die Ausgabeparameter im Outputs: Block. Definieren Sie in einer Terraform-IaC-Datei jeden Ausgabeparameter mit einer Anweisung. output

Ressourcenparameter

AWS Proton erstellt automatisch AWS Proton Ressourcenparameter. Diese Parameter machen die Eigenschaften des AWS Proton Ressourcenobjekts verfügbar. Ein Beispiel für einen Ressourcenparameter istenvironment.name.

Verwenden von AWS Proton Parametern in Ihren IaC-Dateien

Um einen Parameterwert in einer IaC-Datei zu lesen, verweisen Sie auf den Namen des Parameters im AWS Proton Parameter-Namespace. Für AWS CloudFormation IaC-Dateien verwenden Sie die Jinja-Syntax und umgeben den Parameter mit Paaren aus geschweiften Klammern und Anführungszeichen.

Die folgende Tabelle zeigt die Referenzsyntax für jede unterstützte Vorlagensprache mit einem Beispiel.

Sprache der Vorlage Syntax Beispiel: Umgebungseingabe mit dem Namen „VPC“

CloudFormation

"{{ parameter-name }}"

"{{ environment.inputs.VPC }}"

Terraform

var.parameter-name

var.environment.inputs.VPC

Generierte Terraform-Variablendefinitionen

Anmerkung

Wenn Sie CloudFormation dynamische Parameter in Ihrer IaC-Datei verwenden, müssen Sie sie maskieren, um Fehlinterpretationsfehler durch Jinja zu vermeiden. Weitere Informationen finden Sie unter Problembehebung AWS Proton.

In der folgenden Tabelle sind die Namespace-Namen für alle Ressourcenparameter aufgeführt. AWS Proton Jeder Vorlagendateityp kann eine andere Teilmenge des Parameter-Namespaces verwenden.

Vorlagendatei Parametertyp Parametername Beschreibung

Umgebung

Ressource

environment.name

Environment name

input

environment.inputs.input-name

Schemadefinierte Umgebungseingaben

Service

Ressource

environment.name

environment.account_id

Name und ID der Umgebung AWS-Konto

output

environment.outputs.output-name

Umgebungs-IaC-Dateiausgaben

Ressource

service.branch_name

service.name

service.repository_connection_arn

service.repository_id

Dienstname und Code-Repository

Ressource

service_instance.name

Name der Dienstinstanz

input

service_instance.inputs.input-name

Schemadifizierte Eingaben für die Dienstinstanz

Ressource

service_instance.components.default.name

Name der angehängten Standardkomponente

output

service_instance.components.default.outputs.output-name

IaC-Dateiausgaben für angehängte Standardkomponenten

Pipeline

Ressource

service_instance.environment.name

service_instance.environment.account_id

Name und AWS-Konto ID der Dienstinstanzumgebung

output

service_instance.environment.outputs.output-name

IaC-Dateiausgaben der Service-Instanzumgebung

input

pipeline.inputs.input-name

Schemadefinierte Pipeline-Eingaben

Ressource

service.branch_name

service.name

service.repository_connection_arn

service.repository_id

Dienstname und Code-Repository

input

service_instance.inputs.input-name

Schemadifizierte Eingaben für Dienstinstanzen

collection

{% for service_instance in service_instances %}...{% endfor %}

Eine Sammlung von Dienstinstanzen, die Sie in einer Schleife durchgehen können

Komponente

Ressource

environment.name

environment.account_id

Umgebungsname und AWS-Konto Konto-ID

output

environment.outputs.output-name

Umgebungs-IaC-Dateiausgaben

Ressource

service.branch_name

service.name

service.repository_connection_arn

service.repository_id

Dienstname und Code-Repository (angehängte Komponenten)

Ressource

service_instance.name

Name der Dienstinstanz (angehängte Komponenten)

input

service_instance.inputs.input-name

Schemadefinierte Eingaben für Dienstinstanzen (angehängte Komponenten)

Ressource

component.name

Name der Komponente

Weitere Informationen und Beispiele finden Sie in den Unterthemen zu Parametern in IaC-Vorlagendateien für verschiedene Ressourcentypen und Vorlagensprachen.