메인 콘텐츠로 바로가기
CI/CD

자동으로 Github 액션으로 앱을 빌드하고 릴리즈하세요.

자신만의 CI/CD pipeline을 Github 액션으로 무료로 만들고 Ionic Capacitor JS 앱을 매번 메인으로 푸시할 때마다 배포하세요.

마틴 도나디유

마틴 도나디유

콘텐츠 마케터

Github 앱을 자동으로 빌드 및 릴리즈하는 방법

이 튜토리얼은 GitHub 호스팅에 중점을 두고 있지만, 다른 CI/CD 플랫폼에 적응하기 위해 약간의 조정을 하면 다른 CI/CD 플랫폼에 적용할 수 있습니다.

소개

Capacitor 앱을 Capgo에 먼저 추가하십시오. 이 튜토리얼은 업로드 단계만 다룹니다. Capgo에 앱을 추가해야 하는 경우, 이에 대한 방법은 튜토리얼

커밋 규칙

커밋 규칙을 따라야 합니다. conventional commits이것은 5분만에 배울 수 있는 것이며, 버전 번호를 업그레이드하는 데 도움이 됩니다.

Conventional commits

GitHub 액션들

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

이 경로에 파일을 만들세요: .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

이것은 메인 브랜치의 모든 커밋에 대해 태그를 릴리즈하고 메인 브랜치의 모든 커밋에 대한 변경 로그 항목을 추가합니다. CHANGELOG.md.

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

이것이 작동하려면 __CAPGO_KEEP_0__에 PERSONAL ACCESS TOKEN GitHub의 비밀 비밀 PERSONAL_ACCESS_TOKEN.

CI가 변경 로그를 제출할 수 있도록 하기 위해 필요합니다.

토큰을 생성할 때 만료 기간을 선택하고 범위는 never 마지막으로, Native 버전 번호와 일치하는 버전을 repo.

파일에 설정하고 Native 버전 번호와 일치하는 버전을 package.json 이 파일을 Sync하고 Native 버전 번호가 업데이트될 때 다음 단계를 수행합니다.

이것은 처음 한 번만 필요합니다. 그 다음에는 도구가 자동으로 유지됩니다.

이제 두 개의 파일을 커밋하고 GitHub에서 첫 번째 태그를 볼 수 있습니다!

native 및 웹 플랫폼 모두 각 커밋 후 버전 번호가 업데이트됩니다.

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 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로 전송하기 전에 빌드합니다.

빌드 명령어가 다르다면, __CAPGO_KEEP_0__에서 변경할 수 있습니다. build_code 이것을 작동시키기 위해, __CAPGO_KEEP_0__의 __CAPGO_KEEP_1__에 대한 __CAPGO_KEEP_0__ 키를 얻어야 합니다. 그리고 __CAPGO_KEEP_0__ 저장소의 __CAPGO_KEEP_0__ 비밀을 추가해야 합니다.

To make this work, you need to get your API key for Capgo, add it in the GitHub에 커밋을 추가하면 프로덕션 채널에 새로운 빌드를 생성합니다. __CAPGO_KEEP_0__ 테스트를 빌드 단계에 추가하여 __CAPGO_KEEP_0__이 작동하는지 확인해야 합니다. CAPGO_TOKEN.

빌드가 나타난 GitHub 대시보드로 이동하여 빌드를 확인하세요. 이제 CI/CD 시스템이 준비되었습니다.

모든 사용자가 업데이트를 받을 수 있도록 하려면, 채널로 이동하여 __CAPGO_KEEP_0__을 __CAPGO_KEEP_0__으로 설정하세요.

Ionic code JavaScript 앱의 네이티브 빌드를 추가하려면 이 튜토리얼 👇을 따라하세요.

Go To your Capgo dashboard and check your build who just appeared, you now have your CI/CD system.

If your command for build is different, you can change it in the public.

You can also add the native build of your Ionic Capacitor JavaScript app by following this tutorial 👇

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

웹 레이어 버그가 활성화되면 앱 스토어 승인 대기 없이 Capgo를 통해 픽스를 배포합니다. 사용자는 배경에서 업데이트를 받으면서 네이티브 변경 사항은 일반적인 검토 경로를 유지합니다.

시작하기

최신 블로그 게시물

Capgo은 당신이 완벽한 전문가 모바일 앱을 만들기 위해 필요한 모든 통찰력을 제공합니다.