Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Risoluzione dei problemi AWS Proton
Ulteriori informazioni su come risolvere i problemi conAWS Proton.
Errori di distribuzione che fanno riferimento a parametriAWS CloudFormation dinamici
Se vedi errori di distribuzione che fanno riferimento alle tue variabiliCloudFormation dinamiche, verifica che siano Jinja escape
Esempio di sintassi delle variabili CloudFormation dinamiche:
'{{resolve:secretsmanager:MySecret:SecretString:password:EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE}}'
.
Esempio di sintassi delAWS Proton parametro Jinja:
'{{ service_instance.environment.outputs.env-outputs }}'
.
Per evitare questi errori di interpretazione errata, Jinja evita i parametri CloudFormation dinamici come mostrato nei seguenti esempi.
Questo esempio è tratto dalla Guida per l'AWS CloudFormationutente. IAWS Secrets Manager segmenti secret-name e json-key possono essere utilizzati per recuperare le credenziali di accesso archiviate nel segreto.
MyRDSInstance: Type: AWS::RDS::DBInstance Properties: DBName: 'MyRDSInstance' AllocatedStorage: '20' DBInstanceClass: db.t2.micro Engine: mysql MasterUsername: '{{resolve:secretsmanager:MyRDSSecret:SecretString:username}}' MasterUserPassword: '{{resolve:secretsmanager:MyRDSSecret:SecretString:password}}'
Per sfuggire ai parametri CloudFormation dinamici puoi usare due metodi diversi:
-
Racchiudere un blocco tra
{% raw %} and {% endraw %}
:'{% raw %}' MyRDSInstance: Type: AWS::RDS::DBInstance Properties: DBName: 'MyRDSInstance' AllocatedStorage: '20' DBInstanceClass: db.t2.micro Engine: mysql MasterUsername: '{{resolve:secretsmanager:MyRDSSecret:SecretString:username}}' MasterUserPassword: '{{resolve:secretsmanager:MyRDSSecret:SecretString:password}}' '{% endraw %}'
-
Racchiudere un parametro tra
"{{ }}"
:MyRDSInstance: Type: AWS::RDS::DBInstance Properties: DBName: 'MyRDSInstance' AllocatedStorage: '20' DBInstanceClass: db.t2.micro Engine: mysql MasterUsername: "{{ '{{resolve:secretsmanager:MyRDSSecret:SecretString:username}}' }}" MasterUserPassword: "{{ '{{resolve:secretsmanager:MyRDSSecret:SecretString:password}}' }}"
Per informazioni, vedi Jinja in fuga