메인 콘텐츠로 건너뛰기
CI/CD

GitHub을 사용하여 개발 및 프로덕션 빌드를 관리하세요.

Use Capgo to release your devbuild to specific channel, and let your team try your Capacitor Ionic app, without waiting Apple and Google review

마틴 도나디우

마틴 도나디우

콘텐츠 마케터

GitHub을 사용하여 개발 및 프로덕션 빌드를 관리하세요.

이 튜토리얼은 GitHub 호스팅에 중점을 두고 있지만, 다른 CI/CD 플랫폼에适용할 수 있도록 약간의 조정을 통해 사용할 수 있습니다.

소개

Capacitor 앱을 Capgo에 먼저 추가하십시오. 이 튜토리얼은 업로드 단계만 다룹니다.

커밋 규칙

첫 번째로 커밋 규칙을 따라야 합니다. 기존 커밋 규칙`이것은 도구가 버전 번호를 업그레이드하는 방법을 이해하는 데 도움이 됩니다. 5분 만에 배울 수 있습니다.

기존 커밋 규칙

`GitHub 태그 액션

그 다음으로 첫 번째 GitHub 액션을 만들어서 자동으로 빌드하고 태그를 생성해야 합니다.

파일을 만들 위치: .github/workflows/bump_version.yml

이 내용으로:

name: Bump version

on:
  push:
    branches:
      - main
      - development

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
        if: github.ref == 'refs/heads/main'
        run: npx capacitor-standard-version
      - name: Create bump and changelog
        if: github.ref != 'refs/heads/main'
        run: npx capacitor-standard-version --prerelease alpha
      - 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

이것은 메인 branch의 모든 커밋에 대해 태그를 릴리즈하고, alpha 릴리즈 development, 그리고 마지막으로 커밋의 각 항목에 대한 변경 로그 항목을 생성합니다. CHANGELOG.md.

이 파일이 없다고 걱정하지 마세요. 이 파일은 자동으로 생성됩니다.

To make this work, you need to create a 개인 접근 토큰 그리고 GitHub secret 으로 PERSONAL_ACCESS_TOKEN.

이것은 CI가 변경 로그와 버전 업데이트를 제출할 수 있도록 하기 위해 필요합니다.

토큰을 생성할 때 만료 기간을 never 으로 선택하고 범위는 repo.

설정하세요. version 키를 package.json 파일에 설정하세요. 그곳에서 The store에서 마지막으로 출시된 버전을 사용하세요.

처음에는 반드시 필요하지만, 이후에는 도구가 자동으로 유지합니다.

GitHub에 첫 번째 태그가 나타날 수 있습니다.

capacitor-standard-version 이 패키지는 마법을 일으키며, 기본적으로 안드로이드와 IOS의 버전 번호도 자동으로 업데이트합니다.

GitHub 빌드 액션

다음 경로에 파일을 생성하세요: .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 build
        env:
          MY_ENV_VAR: ${{ secrets.MY_ENV_VAR }}
      - name: Create Release Alpha
        if: "contains(github.ref, '-alpha.')"
        id: create_release_prepro
        run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c development
      - name: Create Release Production
        if: "!contains(github.ref, '-alpha.')"
        id: create_release_prod
        run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c production

이것은 의존성을 설치하고 빌드한 후 Capgo로 전송합니다.

빌드 명령이 다르다면, __CAPGO_KEEP_0__의 단계에서 변경할 수 있습니다. build_code 환경 변수가 필요하다면, __CAPGO_KEEP_0__에서 사용하고 __CAPGO_KEEP_1__ 액션에서 __CAPGO_KEEP_1__를 설정하세요.

__CAPGO_KEEP_0__ 프로젝트 설정에서 __CAPGO_KEEP_1__를 secret로 설정하세요. MY_ENV_VAR __CAPGO_KEEP_1__ 액션 secret in your GitHub project setting, then secret then GitHub Action.

Capgo 업로드를 하기 위해서는 Capgo의 API 키를 Capgo에서 가져와 Capgo 저장소의 비밀을 추가해야 합니다. GitHub 저장소의 비밀을 추가해야 합니다. 그리고 CAPGO_TOKEN.

이 두 파일을 커밋하고 Capgo에 첫 번째 버전이 나타날 수 있습니다.

Capacitor에 커밋하면 새로운 Capacitor 빌드가 프로덕션 및 개발 채널에 생성됩니다.

테스트를 Ionic 빌드 단계에 추가하여 code이 작동하는지 확인해야 합니다.

Capgo 대시보드로 가서 생성된 빌드를 확인하고 CI/CD 시스템을 구축했습니다.

Manage development and production build with GitHub actions에서 계속 진행하세요.

관리 개발 및 프로덕션 빌드와 __CAPGO_KEEP_0__ 액션을 사용하여 채널 라우팅과 스테이지드 롤아웃을 계획하고 있습니다. 그것을 GitHub 채널과 연결하세요. 채널 Capgo 릴리스 채널 기능 이름. 페이지/영역: Capgo 솔루션 마케팅 페이지. 역할: 짧은 UI 레이블 또는 네비게이션 아이템. 본문 키 `solutions_white_label_visual_cell2_value` (Solutions White Label Visual Cell2 Value). Capgo의 구현 세부 사항에 대해 Channels에서, 채널 Capgo의 구현 세부 사항에 대해 Channels에서, 채널 Capgo의 구현 세부 사항에 대해 Channels에서, Beta 테스트 솔루션 Capgo의 Beta 테스트 솔루션의 제품 워크플로에 대해, 버전 목표 솔루션 Capgo의 버전 목표 솔루션의 제품 워크플로에 대해,

Capacitor 앱에 대한 실시간 업데이트

웹层 버그가 활성화된 경우, 앱 스토어 승인 대기 없이 Capgo를 통해 패치를 배포하세요. 사용자는 배경에서 업데이트를 받으며 네이티브 변경 사항은 일반적인 검토 경로를 따릅니다.

마틴의 인간 지원

시작하기

최신 뉴스

Capgo은 최고의 통찰력을 제공하여 완벽한 전문가 모바일 앱을 만들 수 있도록 도와줍니다.