본문 바로가기

당신이 감동할 때.

(355)
AWS lambda function 배포 자동화 하기 배경 사내에서 AWS 를 위주로 인프라가 구성되어 있긴 하지만, 거의 대부분 갖춰져있는 구성이 많기도 하고 내가 AWS 자체에 아직 익숙하지 않은 상황이었다. 업무를 보다보면 가~끔 aws lambda function 으로 구성해놓은 부분에 코드 수정이 필요한 경우가 생겼는데, 그 때마다 AWS web console 에서 inline edit 기능을 이용하여 직접 수정했었다. 불편하긴 하지만 다른 방법에 대해 딱히 생각해보지 못했다. 수정할 일이 자주 있는 것도 아니기도 하다는 합리화를 하면서. 이 lambda 코드를 어찌됐든 형상관리를 하긴 해야겠기에 git repo 에다가 똑같은 코드로 관리하고 있긴 했었는데, 이 과정이 많이 번거롭기도 하고 사람이 실수하기 딱 좋았다. 양 쪽(git repo, la..
AWS CodePipeline 을 이용한 배포에서 ApplicationStop 조차 시작하지 않고 보류중(pending) 상태일때는? 배포 생성 후에 ApplicationStop 조차 실행되지 않을 때에는 Target EC2 machine 에 가서 codedeploy-agent 가 제대로 실행되고 있는지 확인을 가장 먼저 하자. 다른 단계에서 hang 이 됐다면 그 문제를 찾아봐야할텐데, 가장 먼저 실행이 돼야하는 ApplicationStop 도 시작조차 안 되고 pending 인 상태가 오랫동안 보이면, codedeploy-agent 가 제대로 실행되고 있는지를 가장 먼저 의심해봐야 한다. 특히, 이미 (다른 사람들이) 갖춰놓은 Infrastructure 가 있고, 거기에서 다른 건 안 건드리고 배포만 하려고 했을 때 대부분 인스턴스는 배포가 잘 되는데 특정 인스턴스에만 배포가 실패하는 경우가 있다. 이 때 codedeploy 자체를..
Win10 에서 프린터 출력 이상하게 될 때 (@PJL COMMENT) 집에서 쓰는 레이저 프린터가 출력이 잘 되다가 가끔 종이 트레이에 있는 모든 종이를 빨아당기며 무서운 글자들을 출력하는 경우가 꽤 있었다. .... @PJL COMMENT "C2=32323232323232320000001602C" .... // 보고 있으면 웬지 무서워지기까지 한다. 그럴때마다 매번 프린터를 껐다 켜서 임시로 그 상황을 넘어가긴 했는데, 애초에 프린터가 그렇게 작동하는 게 말이 안 되는 것 같아서, 조금 찾아보니 문제는 프린터의 포트가 WSD 포트로 설정이 되어있었던 것이 원인이었던 것 같다. 네트워크 포트(a.k.a. 랜선)를 지원하는 레이저 프린터라 표준 TCP/IP 포트로 잡혀있었어야 했는데, 윈10이 알아서 잡아준 포트를 나도 모르게 쓰고 있었던 것이다. 심지어 드라이버는 삼성에서..
2020년 회고 - 오픈서베이를 떠나 드라마앤컴퍼니에서의 1년 이렇게 시간을 갖고 천천히 생각해보며 글을 쓰는 게 오랜만이다. 작년(2019년) 11월 즈음 오픈서베이에서의 마지막 퇴근 후 몇몇 동료들과 풋살을 한 게 엊그제 같은데 벌써 1년이 넘게 지났다. 2019-11-29 새로운 시작을 위한 한 걸음 2019-11-29 새로운 시작을 위한 한 걸음 스타벅스, 오픈서베이. 두 회사의 공통점은? 서로를 닉네임으로 부른다. "테리"라는 이름으로 살아온 세월이 합쳐서 5년은 넘네. (스타벅스 3년, 오픈서베이 2년 3개월) 퇴사날을 정한 이후에도 사 lhb0517.tistory.com 오픈서베이에서 2년 남짓한 시간을 보내며 개발자로서, 직장인으로서 큰 성장을 했다고 스스로 느낀다. 오픈서베이에서 많은 분들이 도와주셨기 때문에 그렇게 큰 성장을 할 수 있었다. 아직까..
Docker For mac - mutagen "unable to ensure path does not exist: path exists" 최근 Docker for mac 을 이용하여 개발환경을 만드는 과정에서 소스 코드 동기화를 volume 을 이용해서 하다보니, 속도가 너무 느려서 mutagen 을 내장한 버전인 Docker for mac 2.3.4.0 를 이용하게 됐다. 근데 개발하다보니 mutagen 에서 양방향(host container) sync 가 잘 안 되서 Ready 가 아니라 Error 라고 뜨길래 Troubleshoot 에서 Run Diagnostics 를 실행하여 진단해보니, sync 될 필요 없는 디렉토리도 sync 되고 있는데 해당 디렉토리에 파일이 이미 존재하고 있는 것으로 인식이 되는 것이 문제였다. "unable to ensure path does not exist: path exists" 그래서 .docker..
Mac 에서 cmd + y 로 Redo 하기 (karabiner-element) 윈도우에서 control + y 로 redo 하는 것이 습관이 되서 그런가, 맥에서 cmd + shift + z 를 눌러서 redo 를 하는게 이 글을 쓰게 할 정도로 너무나 귀찮았다. Rubymine 이나 일부 프로그램에서는 자체적으로 새로 key binding 을 해서 cmd + shift + z 와 cmd + y 모두 redo 로 동작하도록 되어있긴 하지만, 슬랙이나 기타 다른 OSX native app 들에서 redo 를 하려면 cmd + shift + z 를 눌러야만 했다. 너무나 귀찮은 것. 계속 귀찮음을 느끼다가 도저히 안 되겠어서, Capslock 을 왼쪽 클릭으로 바인딩해서 쓰는데 사용하고 있는 karabiner-element 를 이용해 내 맥북의 osx 전역에서 cmd + y 로 red..
갑자기 git 명령이 timeout 날 때 오늘 갑자기 git fetch, git pull, git push 등 명령어를 실행할 때, timeout 이 발생하는 현상이 생겼다. 주말동안 특별히 git 과 관련하여 변경한 건 아무것도 없는데 왜 이러지? 그러다 다음의 포스트를 보게 됐고 bengsfort.github.io/articles/fixing-git-push-pull-timeout/ Developmental Pixels Words and thoughts about app development, indie game development, and pixel art. bengsfort.github.io 다음의 SO 도 보게 됐다. stackoverflow.com/a/52817036/7548600 ssh: connect to host github...
좋은 넛지(nudge)의 예 : 티맵 운전을 처음 시작한 8년전부터 줄곧 김기사가 전신인 카카오내비를 써왔다. 현재 나의 위치를 기준으로 동서남북이 반영된 벌집 모양의 저장장소 목록이 마음에 들었다. 주행중 UI도 군더더기 없이 필요한 것만 보이는 정도의 간단함이 마음에 들었다. 그러나 새로 가는 장소로 갈 때 아주 잦은 빈도로 해당 장소(건물)의 주차장 입구를 못찾아주고 목적지가 해제되고 안전주행모드로 바뀐다. 새로 가는 장소이니 만큼 주변의 교통 상황, 일방통행 여부 등 잘 모르는데 말이다. 이에 불편함을 느끼는 와중 지인이 티맵을 쓰면 주차장 입구까지 잘 안내해준다는 말을 전해주었다. 이를 계기로 속는 셈 치고 설치해서 약 2달 정도 쓰고 있다. 새로 가는 장소의 주차장을 잘 찾아주기도 하지만 재밌는 요소가 하나 있다. 바로 운전 점수..