모노레포 방식과 같이 하나의 레포지토리에 다양한 패키지나 앱들을 관리할 경우 특정 디렉토리만 Github Actions를 적용하고 싶은 경우가 있습니다. jobs에서 defaults의 working-directory를 설정하면 굉장히 쉽게 이 부분을 해결할 수 있습니다.
defaults:
run:
working-directory: "./apps/my-test-app"
실제로 아래와 같이 실무에서 활용할 수 있습니다. "apps/my-test-app/**" 폴더에서 코드가 수정되고, develop 브랜치에 병합되면 해당 워크플로우가 실행됩니다. 이때 기본 워킹 디렉토리는 아래와 같이 "./apps/my-test-app"으로 설정되고, 깃허브 액션이 동작하게 됩니다.
# .github/workflows/deploy_dev.yml
name: Deploy Development
on:
push:
branches:
- develop
paths:
- "apps/my-test-app/**"
jobs:
build_deploy_dev:
name: Build and Deploy Dev
runs-on: ubuntu-latest
defaults:
run:
working-directory: "./apps/my-test-app"
'개발 > Git' 카테고리의 다른 글
깃 특정 커밋만 가져오는 방법 (How to use the "cherry-pick" command in Git) (1) | 2022.10.03 |
---|---|
깃 특정 태그로 이동하는 방법 (How to checkout Git Tags) (1) | 2021.01.19 |
Git commit으로 issue 종료하는 방법 (close issue with commit) (2) | 2020.12.08 |
.git/index.lock file exists 문제 해결하는 방법 (0) | 2020.12.04 |
깃 커밋 메시지 컨벤션 (Git Commit Message Convention) (1) | 2020.11.20 |
이 포스팅은 쿠팡파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.