shinhancard / dev-portal

Shinhancard developer portal public github repository
Apache License 2.0
9 stars 2 forks source link

feat: 개발 / 운영 빌드 환경 분리 #69

Closed seowjin1060 closed 1 year ago

seowjin1060 commented 1 year ago

Description

로컬 빌드시 app-config.yaml을, EKS로 배포시 app-config.production.yaml을 참조해야함

seowjin1060 commented 1 year ago

image docker파일에 production으로 분기된것으로 확인되어 종료 반영 여부 테스트 진행중 +) 로컬에서 docker build 하고 싶으면...? -> django , flask는 application 실행시 옵션값으로 구별했음

seowjin1060 commented 1 year ago

yarn build:all시 Backstage cli를 통해 전체 패키지를 빌드하는데, 이 CLI에서 --config 옵션을 지원하지 않음 ;;; (개발자 말로는 build:all 자체가 로컬 개발환경을 위해 만들었다함) https://github.com/backstage/backstage/issues/14329

해당 이슈에서 제시된 솔루션대로 package json에 정의된 yarn backend build에서 --config 옵션으로 운영 config를 로딩할수도 있으나,

이러면 개발환경에서도 yarn build:all시 운영 config가 로드됨

따라서 yarn script를 변경하지 않고, github action에서 build:all등의 backstage cli를 사용하지 않고 yarn cmd에 --config 옵션을 직접 사용하는 방법을 적용해보겠음

hellices commented 1 year ago

Dockerfile에서 빌드전에 app.production.config.yaml을 app.config.yaml로 복사하면?

seowjin1060 commented 1 year ago

Dockerfile에서 빌드전에 app.production.config.yaml을 app.config.yaml로 복사하면?

로컬에서 docker build를 사용하지 않는 조건하에 동작할것 같습니다. 우선 현재 버전은 아예 dockerfile에서 app.production.config.yaml을 로딩하도록 하였습니다 CMD ["node", "packages/backend", "--config", "app-config.production.yaml"]