(from Dean)

💁🏻 Github Actions는 Workflow > Jobs > Steps의 개념이 있음

# 해당 Workflow Name 정의
name: npm-publish-package 

# 어떤 Action이 발생하면 실행될지 Trigger 설정
on:
  release:
    types: [created]

jobs:
# 해당 jobs의 이름입니다.
  publish-package:
# ubuntu 환경을 구성합니다.(운영 체제 설정)
    runs-on: ubuntu-latest

    steps:
# checkout 하겠다는 의미로 해당 레포에 있는 코드를 내려 받고 특정 브랜치로 전환하겠다는 것입니다.
			- uses: actions/checkout@v2
# Node.js 환경을 세팅입니다.
# 여기까지는 거의 default setting이에요. 우리는 Node 환경에서 Project를 Build, Install… 하니깐요.
# 참고로 uses는 이미 만들어져 있는 script를 가져다 쓰는거에요. actions/checkout,, actions/setup-node 모두 이미 만들어져 있답니다.
# 참고 : <https://github.com/actions/setup-node>
			- uses: actions/setup-node@v2 
				with: 
          node-version: 18
# .yarnrc file 생성 및 rigistry url 추가(입력하지 않으면 defualt '' 라고 합니다.)
          registry-url: <https://npm.pkg.github.com/>
          cache: 'yarn'

# install이 필요할지는 모르겠네요.. 제 생각에는 없어도 될 것 같기도..?!
      - run: yarn install —frozen-lockfile
      
# 배포 명령어. npm secret token을 발급 받아서 github secret에 추가해놓고 사용하시면 됩니다.
# 당연히 publish 되려면 version이 이전보다 높아야해요~
      - run: yarn publish
        env:
          NODE_AUTH_TOKEN: ${{secrets.NPM_ACCESS_TOKEN}}


참고자료

Node.js 패키지 게시 - GitHub Docs

https://github.com/actions/setup-node/

Using secrets in GitHub Actions - GitHub Docs