👉 실행 후 GitHub Actions 탭에서 워크플로우 성공 여부 확인 가능.
env:
PROJECT_NAME: githubactions-demo
COURSE: LLMOps-by-Manifold-AI-Learning👉 커밋 메시지가 워크플로우 실행명으로 표시됨.
문항 1) GitHub Actions는 어떤 목적으로 사용되는 플랫폼인가?
① 데이터베이스 백업 자동화 플랫폼
② CI/CD(지속적 통합 및 배포) 플랫폼
③ IDE 통합 개발 환경
④ 컨테이너 오케스트레이션 플랫폼
➡ 정답: ②
해설: GitHub Actions는 Continuous Integration & Continuous Delivery를 위한 자동화 플랫폼으로, 코드 빌드·테스트·배포 등을 자동화한다 .
문항 2) GitHub Actions의 워크플로우 파일은 반드시 어디에 위치해야 하는가?
① 프로젝트 루트 디렉토리
② .github/workflows/ 디렉토리
③ docs/ 디렉토리
④ /etc/config/ 디렉토리
➡ 정답: ②
해설: 워크플로우는 .github/workflows/ 경로 내에 있어야 GitHub에서 자동으로 인식한다 .
문항 3) 다음 중 GitHub Actions의 구성 요소 설명으로 옳지 않은 것은?
① Event: 워크플로우를 트리거하는 행동(예: push, PR 생성).
② Job: 병렬로 실행될 수 있는 작업 단위.
③ Step: Job을 이루는 실행 단계, 쉘 명령어나 액션 실행 가능.
④ Runner: YAML 문법을 검증하는 유효성 검사기.
➡ 정답: ④
해설: Runner는 GitHub에서 제공하는 실행 환경(서버)으로 워크플로우를 실행한다. YAML 문법 검증기가 아니다 .
문항 4) 다음은 GitHub Actions YAML 파일 일부이다. 빈칸 (A), (B)에 들어갈 알맞은 값은?
name: My Github workflow
on:
(A):
branches:
- main
jobs:
myexamplejob:
runs-on: (B)
① (A) push, (B) ubuntu-latest
② (A) commit, (B) docker
③ (A) trigger, (B) github-runner
④ (A) action, (B) kubernetes
➡ 정답: ①
해설: 이벤트 트리거는 push, 실행 환경은 ubuntu-latest로 지정해야 한다 .
문항 5) 다음 시나리오를 고려하시오.
“ML 모델을 배포하기 위해 GitHub Actions를 활용하고자 한다. main 브랜치에 push될 때마다 Docker 이미지를 빌드하고, 이를 Google Container Registry에 업로드 후 GKE(Google Kubernetes Engine)에 자동 배포하려고 한다.”
이를 구현하기 위해 필요한 추가 조건으로 올바르지 않은 것은?
① GKE 배포를 위한 deploy.yaml 등의 Kubernetes 매니페스트 파일
② GitHub ↔ Google Cloud 인증(Workload Identity Provider 등)
③ 환경 변수(GKE_ZONE, GCR_LOCATION 등) 설정
④ GitHub Marketplace에서 “Python Unit Test” 액션 설치
➡ 정답: ④
해설: Python Unit Test 액션은 ML 배포와 직접적인 관련이 없다. 실제로는 매니페스트 파일, 인증 구성, 환경변수 설정이 필수 .
문항 6) GitHub Actions에서 환경변수(env)를 활용해 "PROJECT_NAME=githubactions-demo"를 선언하였다. 이를 echo 명령어에서 출력하기 위한 올바른 문법은?
① echo $PROJECT_NAME
② echo ${{ PROJECT_NAME }}
③ echo ${{ env.PROJECT_NAME }}
④ echo env.PROJECT_NAME
➡ 정답: ③
해설: GitHub Actions에서는 ${{ env.VARIABLE_NAME }} 구문으로 환경변수를 참조한다 .