2012-10-27 52 views
2

是否可以在应用程序环境中检索应用程序标识([email protected])?应用程序环境中的Heroku应用程序ID

我知道,我可以手动设置一个配置var,但我想这样的信息可能会被Heroku公开?

+0

不,你不可能。如果你告诉我们你实际想要做的事情,那么可能有一种方法。 – hgmnz

+1

我问这个问题,因为应用程序ID是不变的,名字可以改变。所以我想为heroku api编写可重用的代码,其中没有设置(需要使用应用程序ID设置配置变量)。 – Jacob

回答

1

如果您安装了像SendGrid或Memcache之类的附加组件,则可以访问其中一个附加组件的用户名的环境变量。例如,如果您使用的是Ruby,则可以登录到控制台并输出ENV ['SENDGRID_USERNAME']或ENV ['MEMCACHE_USERNAME']的值。很容易从那里提取应用程序ID。我不确定哪些其他附加组件也在环境变量中公开该值,但是可以输出整个ENV全局散列并找出可用的值。

0

我在Jared的解决方案中使用了一年多。 今天我碰到一个问题,ENV['SENDGRID_USERNAME']还没有(部署期间)。

Heroku的建议设置一个配置var来达到这个自己,所以我设置:

heroku config:add APP_NAME=<myappname> --app <myappname> 

而且使lab feature,使您可以在编译

heroku labs:enable user-env-compile -a myapp 

使用它们,现在我有我的应用程序名称可在这里:

ENV["APP_NAME"] # '<myappname>' 

所以我不会遇到问题agai ñ,但我想从Heroku获取这种信息集。