본문 바로가기
WIL

230102~230108 WIL

by 미노킴 2023. 1. 8.

이번 주 한 일, 배운 것 

CI/CD

실전 프로젝트에서 내가 CI/CD 부분을 맡게 되었다.

 

처음 CI/CD를 적용할 땐 Git Actions를 사용하는 게 가장 쉬울 듯 하여 Git Actions로 CI/CD를 적용하였다.

 

그런데 한 오류에서 막힌 채로 진행이 안되고 있다..!

 

 

오류에 적혀 있는 내용은 현재 쓰는 커맨드가 옛날 것이니 최신 상태로 업데이트 하라는 내용이다.

 

구글링을 해보면 workflows에 있는 내용을 다음처럼 바꾸라고 나온다.

 

run: echo "::set-output name=KEY::VALUE"

Change them into:

run: echo "KEY=VALUE" >>$GITHUB_OUTPUT

 

오류가 아니라 warning이어서 상관이 없었다..! 진짜 오류는 properties 파일을 깃허브에서 따로 만들어주지 않아서 생겼었다..!

 

secret key 같은 외부에 숨겨야 하는 정보는 github에서 따로 만들어줘야 한다.

 

Settings-Secrets-Actions에서 Secret 파일을 만들어서 깃허브에 올리지 못하는 approperties 내용을 저장할 수 있다. 그 후 CI 파일에 해당 정보를 담으면 된다.

 

 

위 사진처럼 touch 명령어로 properties 파일을 만들고, echo 명령어로 secret에 담은 내용을 properties 파일에 담을 수 있다.

 

객체 생성 방식 (Builder, 정적 팩토리 메소드)

코드 컨벤션을 짜면서 객체를 어떤 방식으로 생성할 것인가에 대해 고민이 많았다. 실은 아직까지 고민중이다..

 

원래는 모든 객체 생성을 Builder로 진행하려 했다. Builder는 매개 변수가 많아야 의미가 있는 패턴이지만, 단점보다는 장점이 많다고 생각하여 통일성을 위해 컨벤션을 그렇게 정하였었다. 

 

그런데 토요일에 멘토님께 피드백을 받을 때 기존에 알지 못했던 Builder의 단점들을 이야기 해주셨다. (아직 단점들을 제대로 이해하지 못해서 그 부분은 다시 여쭤보고 따로 글로 정리하려 한다.)

 

그래서 Builder를 사용하는 대신 이펙티브 자바에서 나온 정적 팩토리 메소드를 사용하려 했는데, 어설프게 사용하려 하니 제대로 사용하는 방법을 몰라서 헤매고 있다..

 

답을 찾게 된다면 위 내용들에 관해서 글로 정리해보려 한다.

'WIL' 카테고리의 다른 글

221226~230101 WIL  (0) 2023.01.01
221219~221225 WIL  (0) 2022.12.26
221212~221218 WIL  (0) 2022.12.18
221205~221211 WIL  (0) 2022.12.11
221128~221204 WIL  (0) 2022.12.04