사람이 하는 일이 역시… AWS조차도…
Parse Server와 Parse Dashboard를 AWS EB로 옮기다가 겪은 일입니다.
Environment Properties를 셋팅하는데, heroku는 이게 무조건 string으로 저장되고 동작하는데,
AWS는 여기에 json형태를 넣으면 object로 처리되더라구요.
그래서 제대로 처리가 되면 또 모르겠지만 엉뚱하게 되어가지고…
process.env. 형태로 쓸때 제대로 되지를 않습니다.
JSON.parse를 해도 에러나고, toString이나 JSON.stringify도 에러나고, object로 그대로 써도 에러나고… 아오 빡…
이런 문제는…
- https://forums.aws.amazon.com/thread.jspa?messageID=678712
- http://stackoverflow.com/questions/26553553/json-stored-in-aws-eb-envrionment-variables-is-retrieved-without-quotes
-
http://stackoverflow.com/questions/34761577/how-to-config-meteor-on-aws-ebs-using-meteor-settings-environment-variable
등으로 리포트 되고 있지만 해결되지 않아서…
꼼수를 써야 하는구만요…
Environment Properties를 저장할 때 object로 인식되지 않도록 홑따옴표로 저장하구요…
{ 'apps': [ { 'appId': 'Vb489H....
불러서 쓸때 쌍따옴표로 치환해서 JSON.parse 해야 합니다…
configFromCLI = {
data: JSON.parse((process.env.PARSE_DASHBOARD_CONFIG).replace(/'/gi, "\""))
};
이거 때문에 한나절 내내 삽질 했네요…