如何为我的应用程序传递启动args?

时间:2016-04-25 18:31:37

标签: heroku go

我想在我的应用程序中传递启动参数,以便我可以告诉应用程序加载DEV或PROD设置。

如何在heroku上执行此操作?

1 个答案:

答案 0 :(得分:1)

首先在Heroku中声明ENV变量,即: heroku config:set APPMODE=PROD 然后在你的应用程序中,导入os包并调用Getenv。 例如:

package main

import 'os'

var appmode string
func init () {
   appmode = os.Getenv("APPMODE") // PROD
}

其他选项,使用flag包。 例如:

// flagsoverflow
package main

import "flag"

var AppMode string 

func init () {
   AppMode = flag.String("appmode", "DEV", "help message for flagname") // Defaul Value DEV
}

Then when u build u application u can run with flag options:

./flagsoverflow -appmode=PROD // Set the Value to PROD

参考:https://devcenter.heroku.com/articles/config-vars

os:https://golang.org/pkg/os/#Getenv

标志:https://golang.org/pkg/flag/