2014-01-15 3 views
0

내가 이렇게 내 ENV 변수를 설정 OSX 매버릭스에서 작동하지 않습니다.파이썬의 os.getenv는() OSX 매버릭의 터미널에서

declare -x FLASK_CONF="DEV" 
... 

는 지금은 GAE에서 내 응용 프로그램을 실행할 때이 코드가

INFO  2014-01-15 23:39:41,702 __init__.py:38] Staging/Production Env found 

: dev_appserver.py src/

나는 프로덕션 환경 대신 dev에 환경의로드 된 메시지가

if os.getenv('FLASK_CONF') == 'DEV': 
    logging.info("DEV ENv found") 
    app.config.from_object('application.settings.Development') 
elif os.getenv('FLASK_CONF') == 'TEST': 
    logging.info("TEST Env found") 
    app.config.from_object('application.settings.Testing') 
else: 
    logging.info("Staging/Production Env found") 
    app.config.from_object('application.settings.Production') 

이전 Mountain Lion에서 제대로 작동했는지 100 % 확신합니다. Maverick OSX가 env 변수를 설정/사용하는 방법과 관련이 있습니까? 어떤 조언이 어떻게 해결할 수 있습니까?

+0

[여기] (http://pastebin.com/tXRAwkEe)는 환경 변수를 설정하는 것을 증명하기 위해 매버릭스와 빠른 테스트입니다 Python (Mavericks로 내장 된 것이지만, 똑같은 것은 CPython과 PyPy의 7 가지 빌드에서 작동합니다 ...)이 그들을 볼 수 있습니다. – abarnert

+0

아마도 뭔가 다른 것이있을 것입니다. 그리고 그것을 디버깅하기 위해 우리는 문제를 재현하는 완전한 예제 ([MCVE] (http://stackoverflow.com/help/mcve) 참조)가 필요합니다. 당신의 환경에서 일하십시오. – abarnert

답변

0

것은 env_variables를 사용하여 애플리케이션 제목에서 환경 변수를 정의하십시오 :

env_variables: 
    FLASK_CONF: 'DEV' 
+0

예, 작동합니다. 감사. GAE는 고립 된 환경에서 운영되고있는 것 같습니다. – Houman

+0

@Hooman - devappserver의 목표는 클라우드에서 실행될 때 앱의 환경을 재현하는 것입니다. –

관련 문제