오일. S4-unit7 블로깅 과제1

d_shunny·2023년 6월 5일
0

6월 log

목록 보기
1/1
post-thumbnail

CI는 지속적인 통합
CD는 지속적인 배포

=> 지속적인 서비스 제공을 해야하는데 거기에는 CI와 CD가 모두 포함 된다.

오늘 과제는 이미 만들어진 파일을 Github action으로 커밋만 하면 자동화 되는 것을 구현해 내는 것이었다..

Source: Github reference 브랜치에 코드가 커밋되면
Build: github acitons의 YAML 파일에 적힌 명령어를 토대로 Webpack을 이용해 빌드를 하고
Deploy: github acitons의 YAML 파일에 적힌 명령어를 토대로 s3로 빌드 결과를 업로드

위의 과정으로 진행되는 데 나는 처음부터 막혔다..그 이유는 yaml 파일에서 하드코딩 하면 안되는 부분을 하드코딩했기때문이다..(굿모닝세션,,열심히 안들은 죄..내일부턴 꼼꼼히 들을게요,,,ㅠㅠㅠ) 그래서 그 하드코딩하면 안되는 부분이 어디냐하면

"AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}"

여기 부분이다. 나는 여기에 직접 key id와 access_key를 넣었는데 그 결과 잘 연결되던 aws의 버킷이 권한이 없다는 경고창이 뜨며 어떤 버킷도 검색되지 않았다(이때까지만 해도? 내 잘못이라고는 생각 못함..) 알고보니 key_id와 access_key가 하드 코딩되어 aws에서 내 것을 잘못된 경로(?)같은 걸로 파악해 접근을 막은 것이다ㅠㅠ 그래서 나의 key_id와 access_key는 사용 하지 못하게 되구 다시 만들어주신 새로운 id와 key를 이용해서 문제를 풀어가야했다.

그렇다면 하드 코딩하지 않고 할 수 있는 방법이 무엇이냐하면(이 부분을 모닝세션에서 언급하셨다고 한다...ㅎㅎ)
레포지토리 셋팅에서 secrets and variables -> actions에 들어가

여기에 접근하여 key_id와 access_key를 사용할 수 있게 해주어야한다.

등록 방법은 위의 사진에서 new repository secret을 눌러 name에는 변수명을 secret에는 고유 키 값을 넣어주면 된다! 이렇게 하면 하드 코딩 하지 않고 key_id 와 access_key를 사용할 수 있게 된다...이게 가장 큰 고비 였다..교육 매니저님께 가서 여쭤봤을때 내 잘못인걸 알고 등골이 오싹함을 느꼈다..하하...

그리고 다음은 짜잘한 오류들이였는데 프로젝트 안의 폴더 입력을 제대로 입력하지 않았다던가.. 내 맘대로 \를 삭제했다던가.. 브랜치의 이름을 main이라고 보지도 않고 그냥 입력했다던가.. 여러가지들을 제대로 입력하고 나니

빨간 동그라미로 뜬던 것이 초록색으로 떴고 aws에 들어가 정적호스팅 웹을 눌러보니 제대로 된 페이지가 떴다!

이제부터 이 프로젝트를 고쳐서 커밋만 하면 자동으로 그것이 빌드 되어 배포까지 된다는 점이 신기했다! 이론으로 읽는 거보다 실습하면서 진행되는 과정이 머릿속으로 더 잘 이해되는 내용이었던 거 같다.

profile
코딩장

0개의 댓글

관련 채용 정보