3

は私がAWS Elastic Beanstalkでのソフトウェアの設定]タブでMY_ENVIRONMENT_VARIABLEという環境変数を定義しました。 .ebextensions設定ファイルのセクション:のEnv変数「ファイル:」セクション

今私は、「ファイル」でこの環境変数を使用したいと思います。 「container_commands:」

Resources: 
    AWSEBAutoScalingGroup: 
    Metadata: 
     AWS::CloudFormation::Authentication: 
     S3Auth: 
      type: S3 
      buckets: arn:aws:s3:::SomeS3Bucket 
      roleName: aws-elasticbeanstalk-ec2-role 

files: 
    "/tmp/application.properties" : 
    mode: "000644" 
    owner: root 
    group: root 
    source: { "Ref" : "MY_ENVIRONMENT_VARIABLE" } 
    authentication: S3Auth 

container_commands: 
    01-apply-configuration: 
    command: mv /tmp/application.properties . 

環境変数を参照することは可能であると思われる部分を(bashのスクリプトを使用して)私はそれが「ファイル:」の内側に可能であることをすべての参照を見つけることができなかったセクション。セクション:

誰もが「ファイル」内の環境変数を使用する方法の例がありますか?

答えて

0

環境変数を盗んしFn::GetOptionSettingを使用してください。環境変数はaws:elasticbeanstalk:application:environmentnamespace

files: 
    "/tmp/application.properties" : 
    mode: "000644" 
    owner: root 
    group: root 
    source: '`{"Fn::GetOptionSetting": {"Namespace": "aws:elasticbeanstalk:application:environment", "OptionName": "MY_ENVIRONMENT_VARIABLE", "DefaultValue": "file_path"}}`' 
    authentication: S3Auth 

注コマンド置換を行うbacktickです。 DefaultValue属性はオプションです。環境変数が見つからない場合に使用されます。

設定上記のファイルは、環境変数MY_ENVIRONMENT_VARIABLEで参照されるファイルの内容をファイル/tmp/application.propertiesを作成します。

関連する問題