如何在弹性beantalk config.yml中注入环境变量

问题描述 投票:0回答:1

在下面的链接中

http://docs.shippable.com/deploy/aws-elastic-beanstalk/

似乎在config.yml中使用了环境变量。我们如何实现这一目标?似乎aws的官方文档没有关于在config.yml中使用变量的详细信息。

任何建议都会有很大帮助。

我想设置类似使用env变量而不是单独使用应用程序变量的default_platform。

amazon-web-services amazon-elastic-beanstalk
1个回答
0
投票

是的,您不会在AWS文档中找到任何内容,因为使用环境变量来模板化config.yml是可运输功能,而不是AWS功能。

可交付商品详细说明如何在documentation you posted中添加额外的ENV(环境变量):

读为(以粗体突出显示):


  1. 定义deploy-eb-basic-params

描述:deploy-eb-basic-params是一个params资源,它定义了我们想要使其易于配置的变量。 这些变量定义替换Dockerrun.aws.jsonconfig.yml文件中的占位符

步骤:将以下yml块添加到resources文件中的shippable.yml部分。

# shippable.yml
resources:

  - name: deploy-eb-basic-params
    type: params
    version:
      params:
        ENVIRONMENT: "sample"
        PORT: 80
        AWS_EB_ENVIRONMENT_SINGLE: "Sample-env"
        AWS_EB_APPLICATION: "deploy-eb-basic"
        CUSTOM_ENV_HERE: "some value" # <------------ your custom value here.

然后您应该能够在CUSTOM_ENV_HERE中引用该ENV config.yml

# config.yml
branch-defaults:
  default:
    environment: ${AWS_EB_ENVIRONMENT_SINGLE}
environment-defaults:
  ${AWS_EB_ENVIRONMENT_SINGLE}:
    branch: null
    repository: null
global:
  application_name: ${AWS_EB_APPLICATION}
  default_ec2_keyname: null
  default_platform: ${CUSTOM_ENV_HERE} # <------------ you reference ENV here.
  default_region: ${DEPLOYEBBASICCONFIG_POINTER_REGION}
  instance_profile: null
  platform_name: null
  platform_version: null
  profile: null
  sc: null
  workspace_type: Application

祝你好运。

© www.soinside.com 2019 - 2024. All rights reserved.