Wir versuchen, Umgebungsspezifische Anwendungskonfigurationsdateien in s3 zu speichern. Die Dateien werden in verschiedenen Unterverzeichnissen gespeichert, die nach der Umgebung benannt sind und die Umgebung als Teil des Dateinamens enthalten.AWS Elastic Beanstalk: Wie werden Umgebungsvariablen in Ebextensions verwendet?
Beispiele sind
dev/application-dev.properties
stg/application-stg.properties
prd/application-prd.properties
Die Elastic Beanstalk-Umgebungen namens dev, stg, prd und alternativ in Elastic Beanstalk genannt Umgebung definiert eine Umgebungsvariable, die dev sein kann, stg oder prd Ich habe auch .
Meine Frage ist jetzt, wie referenziere ich den Umgebungsnamen oder die Variable ENVIRONMENT beim Herunterladen der Konfigurationsdatei aus einer Konfigurationsdatei in .extensions?
Ich habe versucht, eine {"Ref": "AWSEBEnvironmentName" }
Referenz in .exextensions/myapp.config verwenden, aber einen Syntaxfehler beim Deployment erhalten.
Der Inhalt .ebextensions/myapp.config ist:
files:
/config/application-`{"Ref": "AWSEBEnvironmentName" }`.properties:
mode: "000666"
owner: webapp
group: webapp
source: https://s3.amazonaws.com/com.mycompany.mybucket/`{"Ref": "AWSEBEnvironmentName" }`/application-`{"Ref": "AWSEBEnvironmentName" }`.properties
authentication: S3Access
Resources:
AWSEBAutoScalingGroup:
Metadata:
AWS::CloudFormation::Authentication:
S3Access:
type: S3
roleName: aws-elasticbeanstalk-ec2-role
buckets: com.mycompany.api.config
Der Fehler, den ich bekommen ist:
The configuration file .ebextensions/myapp.config in application version
manualtest-18 contains invalid YAML or JSON. YAML exception: Invalid Yaml:
mapping values are not allowed here in "<reader>", line 6, column 85:
... .config/stg/application-`{"Ref": "AWSEBEnvironmentName" }`.prop ...^,
JSON exception: Invalid JSON: Unexpected character (f) at position 0..
Update the configuration file.
Was die Referenzierung eine Umgebungsvariable in einem .ebextensions der richtige Weg ist Config Datei in AWS Elastic Beanstalk?