duanbeng8872 2014-07-05 10:23
浏览 68
已采纳

如何设置GAE环境特定的环境变量?

I've got a GAE application in Go using martini. I need to be able to set the MARTINI_ENV environment variable to tell martini that it should initialize with production settings. According to the Python docs you can set environment variables in the app.yaml. I didn't see any mention of this in the Go docs, but I'm guessing it should work the same.

I need to be able to set the MARTINI_ENV environment variable to production, but I only want to do that when I'm actually in production (i.e. !appengine.IsDevAppServer()). Is there any way to tell app.yaml to only do this in running on the non-dev server?

  • 写回答

2条回答 默认 最新

  • dongyi1215 2014-07-05 13:30
    关注

    GAE in Go has no concept for setting environment variables since these won't be shared across your GAE instances.

    Since martini.Env is an exported variable though you are able to set it using your own logic. There are multiple ways to do this:

    1. Default setting martini.Env to production when MARTINI_ENV is not present
    2. Add your own config.yaml to your repo, parse it and set martini.Env from there
    3. Use a library like godotenv with its Read function, which will read your dotfile instead of loading it into the env.
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 多尺度特征图提取和融合
  • ¥15 微信小程序:渲染收货地址时页面不显示
  • ¥20 win7 64位DirectShow提示初始化失败如何解决?
  • ¥20 小规模孤立词识别系统设计
  • ¥15 关于Java对接海康威视车牌识别一体机SDK是否需要固定外网的IP?
  • ¥15 Linux扩容时,格式化卡住了:vgdispaly查看卷组信息,没有输出
  • ¥18 关于#ubuntu#的问题:使用背景-工作职责内有七八台ubuntu系统的电脑,平时需要互相调取资料,想实现把这几台电脑用交换机组成一个局域网,来实现指定文件夹的互相调取和写入
  • ¥20 求一个简易射频信号综测仪
  • ¥15 esp8266 tally灯 接收端改为发射端
  • ¥30 Labview代码调用access 数据库,相同代码其中一个调用不出来是为什么