이 튜토리얼은 GitHub 호스팅을 기준으로 작성되었지만, 약간의 수정만 거치면 다른 CI/CD 플랫폼에서도 활용할 수 있습니다.
머리말
Capacitor 앱을 먼저 Capgo에 등록했는지 확인하세요. 이 튜토리얼은 upload 단계에 집중합니다. Capgo에 앱을 추가해야 한다면 다음 내용을 참고하세요. 튜토리얼
커밋 컨벤션
먼저 커밋 컨벤션을 준수해야 합니다. conventional commits` 이 방식을 사용하면 툴이 버전 번호를 어떻게 업그레이드할지 이해하는 데 도움이 됩니다. 배우는 데 5분도 걸리지 않습니다.

태그를 위한 GitHub actions
그 다음, 자동 빌드 및 태그 생성을 위한 첫 번째 GitHub action을 만들어야 합니다.
다음 경로에 파일을 생성하세요: .github/workflows/bump_version.yml
내용은 다음과 같습니다:
name: Bump version
on:
push:
branches:
- main
jobs:
bump-version:
if: "!startsWith(github.event.head_commit.message, 'chore(release):')"
runs-on: ubuntu-latest
name: "Bump version and create changelog with standard version"
steps:
- name: Check out
uses: actions/checkout@v6
with:
fetch-depth: 0
filter: blob:none
token: '${{ secrets.PERSONAL_ACCESS_TOKEN }}'
- name: Git config
run: |
git config --local user.name "github-actions[bot]"
git config --local user.email "github-actions[bot]@users.noreply.github.com"
- name: Create bump and changelog
run: npx capacitor-standard-version
- name: Push to origin
run: |
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
remote_repo="https://${GITHUB_ACTOR}:${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
git pull $remote_repo $CURRENT_BRANCH
git push $remote_repo HEAD:$CURRENT_BRANCH --follow-tags --tags
이렇게 하면 main 브랜치의 모든 커밋에 대해 태그가 릴리스됩니다. 또한 main 브랜치의 각 커밋에 대한 변경 사항을 다음 항목에 추가합니다: CHANGELOG.md.
이 파일이 없어도 걱정하지 마세요. 자동으로 생성됩니다.
이를 실행하려면 다음을 생성하세요: Personal Access Token 그리고 이를 GitHub에 추가하세요 secrets 으로 PERSONAL_ACCESS_TOKEN.
CI가 changelog를 커밋할 수 있도록 반드시 필요합니다.
토큰 생성 시 만료 기간(expiration)은 never 권한 범위(scope)는 repo.
마지막으로, 다음 항목의 버전을 설정하세요. package.json 파일에 설정하고 Native 버전 번호와 동기화하세요. 그러면 다음 단계가 훨씬 수월해집니다.
이 작업은 처음 한 번만 필요하며, 이후에는 도구가 자동으로 업데이트를 유지합니다.
이제 두 파일을 커밋하면 GitHub에 첫 번째 태그가 생성되는 것을 확인할 수 있습니다!
매 커밋마다 native와 web 플랫폼 모두 버전 번호가 업데이트됩니다.
GitHub 빌드용 actions
다음 경로에 파일을 생성하세요: .github/workflows/build.yml
내용은 다음과 같습니다:
name: Build source code and send to Capgo
on:
push:
tags:
- '*'
jobs:
deploy:
runs-on: ubuntu-latest
name: "Build code and release"
steps:
- name: Check out
uses: actions/checkout@v6
- name: Install dependencies
id: install_code
run: npm i
- name: Build
id: build_code
run: npm run build
env: # Remove both lines if you don't need it
FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} # Example of env var coming from a secret
- name: Create Release
id: create_release
run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c production
이 과정은 의존성을 설치 및 빌드한 후 Capgo로 전송합니다.
빌드 명령어가 다르다면, 다음에서 변경할 수 있습니다: build_code 단계.
이를 위해 Capgo을 위한 API 키를 가져와서, GitHub repository의 secret에 추가해야 합니다. 으로 CAPGO_TOKEN.
이제 두 파일을 커밋하면 GitHub에 첫 번째 태그가 생성되는 것을 확인할 수 있습니다!
커밋을 추가하면 production 채널을 위한 새로운 빌드가 생성됩니다.
code가 제대로 작동하는지 확인하려면 빌드 단계에 테스트를 추가해야 합니다.
Capgo 대시보드로 이동하여 방금 생성된 빌드를 확인하세요. 이제 CI/CD 시스템이 구축되었습니다.
모든 사용자가 업데이트가 제공될 때마다 받게 하려면, 채널로 이동해 다음으로 설정하세요: public.
다음 튜토리얼을 따라 Ionic Capacitor JavaScript 앱의 Native Build를 추가할 수도 있습니다 👇
Github actions를 이용한 앱 자동 빌드 및 배포 계속 알아보기
사용 중인 경우 Github actions를 이용한 앱 자동 빌드 및 배포 CI/CD 자동화를 계획하려면, 이것을 연결하세요 Capgo CI/CD Capgo CI/CD의 제품 워크플로우를 위해, Capgo Native Build Capgo Native Builds의 제품 워크플로우를 위해, Capgo 연동 서비스 Capgo Integrations의 제품 워크플로우를 위해, CI/CD 통합 그리고 CI/CD Integration의 구현 세부 사항은, GitHub Actions 연동 구현 세부 사항은 GitHub Actions Integration을 참고하세요.