업무 효율화의 기본은 `자동화(automation)`이다.

 

S/W개발 과정에서의 자동화 요소는 자로 `빌드 자동화(Build Automation)`이고,

DevOps 관점에서 자주 언급되는 `CI(Continuous Integration)`라는 단어를

한글로 번역하면 `지속적 통합`이고, 이 역시 빌드와 관련이 되어있다.

 

그렇다보니 GitHub에서 제공하는 Actions를 `빌드 도구`라고만 생각하는 경우가 많다.

하지만, 사실 Actions는 빌드보다 훨씬 더 큰 의미의 `자동화 도구`이다!

  - https://github.com/features/actions

 

최근 AI Agent 만능 시대가 된 김에

이를 이용해서 뭔가 만들어보려고 하다가 GitHub-Actions를 이용해 자동화 도구를 만들어보자고 생각하게 되었다.

그래서, 기본부터 하나씩 확인해보려고 ... ^^

 

 

빠르게 변화하는 세상에서 가장 믿을만한 것은 공식 문서이다 !!!

  - https://docs.github.com/en/actions

 

 

여기에서는 `Quickstart for GitHub Actions`를 통해 빠르게 맛보기를 해보도록 하겠다.

공식 문서를 바탕으로 내 입맛대로 적당히 변형해서 살펴보겠다.

 

① 실습 저장소 만들기

Actions 실습을 하기 위한 저장소를 하나 준비하자.

GitHub-Actions 사용을 위해서는 public으로 설정해주어야 한다(그래야 Free runner 사용 가능!).

 

 

 

② 작업 공간(workspace) 준비

개인적인 취향으로 S/W개발 공부는 언제나 Ubuntu 환경에서 하고 있다.

여러분은 여러분 나름대로의 환경에서 진행해도 좋다.

 

 

 

③ workflow yaml 파일 작성

공식 가이드에 있는 workflow yaml 파일을 그냥 일단 반영해보자.

  - https://docs.github.com/ko/actions/get-started/quickstart

 

 

Actions workflow yaml 파일은 `.github/workflows`라는 디렉토리 밑에 위치해야 한다.

yaml 파일 이름은 확장자만 지키면 되고 자유롭게 해도 된다.

 

 

개인적인 취향으로 nano 에디터를 사용했다. (여러분은 여러분의 취향대로 ^^)

 

 

 

④ commit & push

지금은 고민할 때가 아니다 😁.

일단 commit, push 해버리자.

 

 

GitHub에 가서 잘 반영되었는지 확인해보자.

 

 

 

⑤ Actions 메뉴

놀랍게도 이렇게만 했는데도, 벌써 Actions가 실행되었다.

`Actions` 메뉴를 클릭하면 보안다 !!!

 

 

 

⑥ 실행 내역 확인

어떻게 실행되었는지 내역을 확인하고 싶으면 해당 부분을 클릭해주면 된다.

 

 

YAML 파일에 작성한 내용이 하나 하나 잘 실행된 것을 볼 수 있다.

 

 

 

 

여기까지가 실습 내용이고,

이제는 YAML 파일 내용과 실행 결과를 가지고 하나씩 비교하면서 익히면 된다.

 

각 항목이 실제 결과에 어떻게 나오는지 비교하면서 살펴보자 !!

 

 

실행 환경이 되는 docker image에 대해서는 조금 더 신경쓸 필요가 있다.

 

 

보통 ubuntu-latest 이미지를 많이 사용할텐데,

일반적인 환경이긴하지만 생각보다 상당히 무거운 환경이다.

 

 

이미 설치되어 있는 것들이 상당히 많아서 편할 수는 있지만,

사용하지 않는 것들도 엄청 많이 있는 상당히 무거운 환경이다.

 

 

좀더 가볍게 사용할 수 있는 이미지를 찾는 것도 중요하고,

설치되어 있는 도구들 목록을 잘 확인하고 버전 관리도 잘 살펴보는 것도 중요하다.

 

환경변수 처럼 사용되는 요소들도 한 번씩 살펴보면 좋다.

 

 

`actions/checkout@v5`같이 이미 만들어져서 제공되는 라이브러리들도 주의깊게 살펴보면 좋다.

 

 

여기에서 언급되지 않은 훨씬 더 많은 요소들이 있으니

하나씩 하나씩 차근 차근 공부해보자 !!!

반응형

혼자 개발하면 외롭다.

특히, 코드 리뷰를 받고 싶은데 내 마음 같은 사람 만나기도 어렵고 ...

 

우리의 구글님은 이런 외로운 개발자를 위해서

공짜로 Gemini를 제공해주신다 !!! 경배하라 !!!

 

의외로 모르시는 분들이 많은데,

GitHub.com 왼쪽 메뉴를 살펴보면 `Marketplace`가 있다.

- https://github.com/ 

 

 

Marketplace에서는 여러 유형의 상품(?)을 제공해주고 있는데, `Apps` 항목을 살펴보자.

좀 더 편하게 살펴보기 위해 `AI Assisted` 카테고리를 선택하면 `Gemini Code Assist`를 발견할 수 있다.

 

 

오해를 줄이기 위해서는 `Gemini Code Assist for GitHub`이라고 해야할 것 같은데...

https://github.com/marketplace/gemini-code-assist 

 

 

생각보다 설치 수가 좀 적어서 깜짝 놀랐다 !!

 

GitHub PR(Pull-Request)과 관련된 몇 가지 명령어를 제공해주고 있다.

 

 

우리의 구글님은 이런 아름다운 기능을 `Free`로 제공해주고 계신다 !! 경배하라 !!

하지만, 나중에는 십일조라도 받아가시겠지!? ^^

 

 

지금은 Free Tier 이지만,

나중에 얼마든지 십일조를 걷어가기 위해 `결제 정보`는 요구하고 있다.

 

 

개인 계정을 기준으로 설치할 수도 있고, Organization 단위로 설치할 수도 있다.

 

화끈하게 All repositorues를 선택해도 좋지만,

처음에는 조심스럽게(소심하게?) `Only select repositories`를 선택해보자.

 

 

이제서야 `Gemini Code Assis for GitHub`라고 자백하는구나 !!

 

 

우리의 구글님께 모든 권한을 바칩니다 !!! 

 

 

개인 계정 또는 Organization을 선택해야 한다.

 

 

리뷰의 정도를 선택할 수 있는 것 같은데, 일단은 Medium !

 

 

이 정도의 설정만 해주면 된다.

 

 

지정한 Repository의 Settings를 보면 잘 설치되어 있는 것을 확인할 수 있다.

 

 

이렇게 해놓은 상태에서, PR을 신규로 올리면 자동으로 코드 리뷰를 진행해준다.

그리고, 직접 명령을 내릴 수도 있다.

 

 

이렇게 명령을 내리면, gemini가 지켜보는 이모지가 등장한다 !! 귀엽다 !!

 

 

그렇게 시간이 좀 지나면, Gemini가 리뷰를 준다.

 

 

Summary는 기다림 없이 바로 이루어진다.

 

 

리소스 할당에 따라 지켜보는 이모지가 선택적으로 나오는 것일까?

 

 

코멘트 중간에 Gemini 홍보(광고? 안내? 공지?)도 들어있다.

 

무료인데 안쓸 이유는 없을 것 같다 !! 고고씽 !!

반응형

+ Recent posts