
2..github/workflows/deploy.yml 만들기
.github 디렉토리는 프로젝트의 최상단에 있어야하고, yml파일의 이름은 자유지만 강의에서는 deploy.yml로 정했으므로 따라간다.
내용은 다음과 같다.
# Workflow의 이름
# Workflow : 하나의 yml 파일을 하나의 Workflow라고 부른다.
name: Github Actions 실행시켜보기
# Event : 실행되는 시점을 설정
# main이라는 브랜치에 push 될 때 아래 Workflow를 실행
on:
push:
branches:
- main
# 하나의 Workflow는 1개 이상의 Job으로 구성된다.
# 여러 Job은 기본적으로 병렬적으로 수행된다.
jobs:
# Job을 식별하기 위한 id
My-Deploy-Job:
# Github Actions를 실행시킬 서버 종류 선택
runs-on: ubuntu-latest
# Step : 특정 작업을 수행하는 가장 작은 단위
# Job은 여러 Step들로 구성되어 있다.
steps:
- name: Hello World 찍기 # Step에 이름 붙이는 기능
run: echo "Hello World" # 실행시킬 명령어 작성
- name: 여러 명령어 문장 작성하기
run: |
echo "Good"
echo "Morning"
# 참고: https://docs.github.com/en/actions/learn-github-actions/variables
- name: Github Actions 자체에 저장되어 있는 변수 사용해보기
run: |
echo $GITHUB_SHA
echo $GITHUB_REPOSITORY
- name: Github Actions Secret 변수 사용해보기
run: |
echo ${{ secrets.MY_NAME }}
echo ${{ secrets.MY_HOBBY }}
Github Actions를 실행시키기 위해서는 반드시 .github/workflows라는 디렉터리에 .yml 또는 .yaml의 확장자로 파일을 작성해야 한다. 그리고 .github/workflows는 프로젝트 폴더의 최상단에 만들어야 한다.
Github Repository를 만들어서 업로드한다.

Actions에서 확인하기.

원래 초록색 체크표시와 함께 성공해야하는데, 나는 실패했다!
오타문제였다..lastest를 latest로 수정하자.
그리고 steps:는 runs-on:과 같은 깊이이어야 한다.
수정하고 다시 push
다 고쳤는데도 에러가 나온다..
알고보니깐 들여쓰기 할때, tab (4칸)이 아니라 2칸으로 해야하는 거였다!!
yml 파일은 들여쓰기가 매우 중요하다!


드디어 성공했다!
[Fix GitHub Actions workflow2]를 클릭
[my-deploy-job]클릭


이때 $GITHUB_SHA와 $GITHUB_REPOSITORY는 각각 커밋 id와, 깃허브 리파지토리다.
${{ secrets.MY_PASSWD }}와 ${{ secrets.MY_ID }}는 Github Ations의 시크릿 변수 기능이다.

[Setting]로 이동
[Secrets and Variables] - [Actions]로 이동
[New repository secret] 클릭
이런식으로 시크릿 변수를 만들 수 있다.
실행해보면, 시크릿 변수는 이렇게 필터링되어서 적용되는 것을 확인할 수 있다.
