본문 바로가기
반응형

전체글586

Github Pull Request시 Jest & Docker Test Code 수행하기 테스트 코드를 작성과 함께 항상 해주어야하는 기반 작업중 하나가 Pull Request와 Develop & Master 브랜치 Push시에 전체 테스트 코드가 수행되도록 테스트 자동화 환경을 구축 하는 것입니다. 그래야만, Pull Request의 코드리뷰를 진행할때 기존 기능이 정상작동하는 것을 믿고 리뷰만 진행할 수 있기 때문입니다. 이를 위해 젠킨스와 같은 설치형 CI를 써도 되지만, 배포용도가 아닌 코드리뷰로 요청온 Pull Request는 무조건 전체 테스트를 수행한다로 본다면 Github Action은 꽤나 좋은 선택지입니다. 그래서 이번 시간에는 Jest & Docker 환경에서 Pull Reqeust 발생시 Github Action으로 테스트 수행과 결과를 알려주는 환경을 구성해보겠습니다... 2021. 10. 1.
Atom을 마크다운 에디터로 사용하기 (feat. Mac OS) Visual Studio Code 를 업데이트하다보면 간혹 한글 입력이 누락되는 버그 현상이 발생할때가 있습니다.(마치 페이스북 에디터처럼) 폰트 관련 설정을 리셋하고 재설정하면 문제가 없으나, 종종 한번 이럴때마다 꽤나 귀찮은 작업인지라 한번 다른 에디터를 마크다운 에디터로 전환해보려고 합니다. 한달정도 사용해보고, 괜찮으면 정착하고 아니다싶으면 다시 VS Code를 사용할 것 같습니다. 이번에 선택한 에디터는 Atom입니다. Sublime Text는 IntelliJ Keymap 플러그인이 없어서, 단축키 하나하나를 다 변경해야만 되서 선택지에서 제외되었습니다. 플러그인 마크다운 에디터로 사용할 수 있도록 아래 플러그인들을 설치해봅니다. 플러그인 설치는 다음과 같이 할 수 있습니다. 추천 플러그인 in.. 2021. 9. 25.
js-joda 로 TypeORM Date 타입 대체하기 (with NestJS) JavaScript 의 Date Type은 JavaScript의 단점을 이야기할때 항상 거론되는 점인데요. javascript-date-type-is-horribly-broken 위 글에서 언급한 연산에 관한 문제도 있지만, 단순히 +1 Day를 해야하는데도 아래와 같이 직관적이지 못한 잘못된 인터페이스의 코드를 사용해야하는 것도 문제인데요. // Local time var tomorrow = new Date(); tomorrow.setDate(tomorrow.getDate() + 1); // UTC var tomorrow = new Date(); tomorrow.setUTCDate(tomorrow.getUTCDate() + 1); 연산 코드 자체가 깔끔하지 못하기 때문에 TypeORM에서 날짜 Type.. 2021. 9. 22.
망했을때 어떻게 할 것인가 한참 리그오브레전드 (a.k.a LOL)에 빠진적이 있었다. 그때 Top 신지드에 꽂혀서 주구장창 그것만 했다. 잘 풀리는 판에서는 하드 캐리하는 내 모습에 골드까지는 그냥 갈 줄 알았다. 근데 수백판을 해도 실버를 못벗어 났다. (다 정글탓이다….) 그러다가 갑자기 다음 시즌부터 실버에서 플레티넘까지 티어가 급 상승하게 되었다. 이렇게 된 계기는 모 커뮤니티의 베스트 공략글 때문이였는데, 그 글에서는 망했을때 어떻게 1인분 할 것인가를 아주 중요하게 다루고 있었다. 모든 라인전에서 항상 이길 수는 없다. 그럼 라인전을 지면 게임도 지는 건가? 라고 하면 그건 아니라는 것이다. 망한 판에서 어떻게 복구할 것인가를 아주 상세하게 다룬 그 글을 보고 난 뒤부터 티어가 급 상승하게 되었다. 0/7/0 으로 쫄.. 2021. 9. 12.
gitbook CLI 실행시 cb.apply 발생할 경우 외부 강의를 위해 gitbook을 처음 사용해보았습니다. 설치나 사용법 자체는 워낙 다른 블로그들에서 소개를 많이 해주기 때문에 여기서 소개하지는 않겠습니다. 간단하게 다음과 같이 설치와 프로젝트를 구성할 수 있습니다. npm install -g gitbook-cli 문제 설치가 잘되었는지 확인을 해보면 gitbook -h 다음의 에러를 만나게 됩니다. Installing GitBook 3.2.3 /usr/local/lib/node_modules/gitbook-cli/node_modules/npm/node_modules/graceful-fs/polyfills.js:287 if (cb) cb.apply(this, arguments) TypeError: cb.apply is not a function at .. 2021. 9. 9.
2. NestJS & TypeORM 환경에서 Monorepo 구성하기 - TypeORM 추가하기 지난 시간 에 이어, Monorepo로 구성된 프로젝트에 TypeORM을 추가해보겠습니다. 1. 환경 설정 저 같은 경우 PostgreSQL을 사용할 예정이라 pg 를 기반으로 진행하겠습니다. 필요한 패키지들을 먼저 추가합니다. yarn add @nestjs/typeorm typeorm pg typeorm-naming-strategies class-transformer typeorm-naming-strategies TypeORM에서 Camelcase 필드를 Snake 컬럼에 매핑하기 를 위해 사용됩니다. class-transformer Entity Json을 Dto Instance으로 편하게 변환하기 위해 사용합니다. 그리고 TypeORM과 연동되어 로컬에서 실행할 PostgreSQL DB를 위해 doc.. 2021. 9. 3.

728x90
반응형