2017-11-03 6 views
4

uWSGI 구성 로직을 이해하도록 도와주십시오. 환경 변수가 ENVIRONMENT입니다. 값이 dev 또는 prod 일 수 있다고 가정 해 보겠습니다. 나는 ENVIRONMENT가 할당 prod 없음 또는 if-opt 블록이 실행됩니다 내부 print 제표에 설정되어있는 경우 내가 생각할 겁니다 ENVIRONMENT환경 변수에 따라 uWSGI 설정을 구성하십시오.

# always executes print statement, doesn't matter what ENVIRONMENT is set to 
if-env= ENVIRONMENT 
if-opt: %(_)=dev 
print = RUNNING %(_) 
endif: 
endif = 

# always executes print statement, doesn't matter what ENVIRONMENT is set to 
running = ENVIRONMENT 
if-opt: running=dev 
print = RUNNING %(_) 
endif: 

의 값에 따라 구성 옵션을 설정합니다. 그러나 이것은 사실이 아닙니다.

답변

3

이 작동합니다 : 당신은 INI 구성에서 YAML 구문을 사용하고

[uwsgi] 
if-env = ENVIRONMENT 
env = %(_) 
endif = 
if-not-env = ENVIRONMENT 
env = none 
endif = 
print = RUNNING %(env) 
if-opt = env=dev 
print = running dev yay 
endif = 

. 또한 재귀에 대해 불평했기 때문에 if-optif-env 밖으로 가져 가야했습니다. 그것을 더 짧게 만들 수있는 방법이있을 수 있지만 이것은 효과적입니다.

+0

실제로 작동합니다. 시간 내 줘서 고마워! – zzart