참고
고급활용
워크플로우 캐시
NOTE
워크플로우는 Job단위로 Runner를 실행하며, 매번 새로운 Runner를 구동
이전 작업의 정보가 남아있지 않아서, 매번 빌드작업을 반복할경우 패키지를 다시 다운받는 비효율발생
•
캐시 영역에 저장 후, 캐시 히트시 저장된 파일을 바로 사용하게끔 구성
•
매번 다운로드 받는 패키지 설치과정을 최소화
name: PART7 - CH1 - Caching Dependencies
on: workflow_dispatch
jobs:
build-using-cache:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Move JS Sample code
run: |
mv cache_sample/* ./
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org/'
- id: node-cache
name: Cache node modules
uses: actions/cache@v3
env:
cache-name: cache-node-modules
with:
path: node_modules
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Install dependencies
if: steps.node-cache.outputs.cache-hit != 'true'
run: npm install
- name: List packages from node modules
continue-on-error: true
run: npm list
YAML
복사
name: PART7 - CH1 - No Caching Dependencies
on: workflow_dispatch
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Move JS Sample code
run: |
mv cache_sample/* ./
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org/'
- name: Install dependencies
run: npm install
YAML
복사
Github CLI 활용
NOTE
name: PART7 - CH2 - GitHub CLI
on:
issues:
types:
- opened
permissions:
issues: write
jobs:
comment:
runs-on: ubuntu-latest
steps:
- run: gh issue comment $ISSUE --body "Thank you for opening this issue!"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ISSUE: ${{ github.event.issue.html_url }}
YAML
복사
•
Marketplace 활용
NOTE
•
•
Marketplace 활용
NOTE
•
•