CI/CD 통합
이 플러그인의 설치 단계와 전체 마크다운 가이드를 포함한 설정 프롬프트를 복사하세요.
Capgo을 CI/CD pipeline에 통합하면 앱에 대한 업데이트를 빌드하고 배포하는 프로세스를 완전히 자동화할 수 있습니다. Capgo 및 CLI를 사용하여 semantic-release를 활용하여, 신뢰할 수 있는, 일관된 배포를 보장하고 빠른 반복을 가능하게 할 수 있습니다.
CI/CD 통합의 이점
CI/CD 통합의 이점-
자동화: 자동화된 빌드, 테스트 및 배포 프로세스를 끝까지 자동화할 수 있습니다.
-
일관성: 모든 배포가 동일한 단계를 따르므로 예측 가능하고 반복 가능한 프로세스를 보장합니다. 특히 여러 팀원이 code에 기여할 때 이점이 있습니다.
-
Faster iterations: __targetLanguage__에서 자동 배포를 통해 업데이트를 더 자주 신뢰할 수 있게 배포할 수 있습니다. 더 이상 수동 QA 또는 릴리즈 승인 기다릴 필요가 없습니다.
Capgo CLI
Capgo CLICapgo CLI는 CI/CD 워크플로에 Capgo을 통합하는 데 중요한 키입니다. 새로운 번들 버전을 푸시하는 명령, 채널 관리, 등과 같은 명령을 제공합니다.
CI/CD 통합에서 가장 중요한 명령은 bundle upload:
npx @capgo/cli@latest bundle upload --channel Production --apikey YOUR_API_KEY암호화를 사용하는 경우 다음 중 하나에서 제공해야 합니다.
개인 키 파일 경로를 사용하여:
npx @capgo/cli@latest bundle upload --channel Production --apikey YOUR_API_KEY --key-v2 PRIVATE_KEY_PATHCI/CD 환경에서 개인 키를 파일 대신 환경 변수로 저장하는 것이 권장됩니다. 방법은 다음과 같습니다.
npx @capgo/cli@latest bundle upload --channel Production --apikey YOUR_API_KEY --key-data-v2 PRIVATE_KEY_CONTENTCI/CD 환경에서 개인 키를 파일 대신 환경 변수로 저장하는 것이 권장되는 방법입니다.
npx @capgo/cli@latest bundle upload --channel Production --apikey YOUR_API_KEY --key-data-v2 "$CAPGO_PRIVATE_KEY"환경 변수를 사용하여 암호화 설정
환경 변수를 사용하여 암호화 설정CI/CD 환경에서 개인 키를 파일 대신 환경 변수로 저장하는 것이 권장됩니다. 방법은 다음과 같습니다.
-
개인 키 내용을 가져오기:
터미널 창 cat .capgo_key_v2 | pbcopy이 키 내용을 클립보드에 복사합니다.
-
CI/CD 환경에 추가하세요.
- GitHub Actions: 추가
CAPGO_PRIVATE_KEYrepository 비밀번호로 추가하세요 - GitLab CI: 프로젝트 설정에서 마스킹 변수로 추가하세요
- CircleCI: 프로젝트 설정에서 환경 변수로 추가하세요
- Jenkins: 프로젝트 설정에서 비밀 텍스트 인증서로 추가하세요
- GitHub Actions: 추가
-
pipeline에서 사용하세요.
- run: npx @capgo/cli@latest bundle upload --channel=production --apikey=${{ secrets.CAPGO_API_KEY }} --key-data-v2 "${{ secrets.CAPGO_PRIVATE_KEY }}"
주의: --key-data-v2 기호는 개인 키 내용을 문자열로 직접 전달할 수 있게 해주며, CI/CD PIPELINE에서 임시 파일을 생성하지 않고 환경 변수를 사용하고 싶을 때 완벽합니다.
이 명령어는 현재 웹 빌드를 지정된 채널에 업로드합니다. 일반적으로 CI/CD PIPELINE의 마지막 단계로 실행하며, 웹 빌드가 성공적으로 완료된 후에 실행합니다.
Capgo을 CI/CD PIPELINE에 설정하는 방법
CI/CD TOOL을 선택하지 않은 경우 Capgo을 통합하는 일반적인 프로세스는 다음과 같습니다.Capgo 키 생성
-
: API 대시보드에 로그인하여 새로운 __CAPGO_KEEP_1__ 키를 생성합니다. 이 키는 CI/CD 환경에서 __CAPGO_KEEP_2__을 인증하기 위해 사용됩니다. 비밀로 유지하고 NEVER COMMIT을 NEVER COMMIT하지 마세요!: Log in to the Capgo dashboard and create a new API key. This key will be used to authenticate the CLI in your CI/CD environment. Keep it secret and never commit it to your repository!
-
__CAPGO_KEEP_0__
bundle upload__CAPGO_KEEP_0__: CI/CD 설정에 업로드 명령어를 추가하세요.bundle upload명령어와 필요한 인자를 입력하세요:\n 업로드할 채널을 입력하세요.업로드.yml - run: npx @capgo/cli@latest bundle upload --channel=production --apikey=${{ secrets.CAPGO_API_KEY }}Production\n __CAPGO_KEEP_0__ 키를 저장한 환경 변수를 입력하세요.${{ secrets.CAPGO_API_KEY }}with the environment variable holding your API key, and add--key-data-v2 "${{ secrets.CAPGO_PRIVATE_KEY }}"업로드 -
: 웹 빌드가 성공적으로 완료된 후에 업로드를 진행하세요.
upload: 업로드 명령어는 웹 빌드가 성공적으로 완료된 후에 실행되어야 합니다.이렇게 하면 항상 최신 __CAPGO_KEEP_0__ 버전이 업로드됩니다.uploadstep comes after your web build has completed successfully. This ensures you’re always deploying your latest code.\n Here’s an example configuration for GitHub Actions:\n업로드.yml name: Deploy to Capgoon:push:branches: [main]jobs:deploy:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v6- uses: actions/setup-node@v6with:node-version: '24'- run: npm ci- run: npm run build- run: npm install -g @capgo/cli- run: npx @capgo/cli@latest bundle upload --channel=production --apikey=${{ secrets.CAPGO_API_KEY }} --key-data-v2 "${{ secrets.CAPGO_PRIVATE_KEY }}"
Semantic-release를 사용한 버전 관리
Semantic-release를 사용한 버전 관리 제목Capgo의 권장 방법은 버전을 설정하는 것입니다. Capgo의 버전을 capacitor.config.ts 파일에서 가져오기 package.json:
import pkg from './package.json'
const config: CapacitorConfig = { // ... other config plugins: { CapacitorUpdater: { version: pkg.version, } }}이 방법을 사용하면 다음을 수행할 수 있습니다.
- semantic-release (또는 다른 도구)를 사용하여 버전을 업데이트할 수 있습니다.
package.json업데이트된 버전을 자동으로 포함하는 앱을 빌드할 수 있습니다. - 올바른 버전을 포함하는 번들을 업로드할 수 있습니다.
- Semantic-release를 사용한 버전 관리
Your CI/CD workflow would look like this:
- run: npm ci- run: npx semantic-release # Updates package.json version- run: npm run build # Builds with new version from capacitor.config- run: npx @capgo/cli@latest bundle upload --channel=production --apikey=${{ secrets.CAPGO_API_KEY }}이것이 __CAPGO_KEEP_0__의 샘플 .releaserc configuration file for semantic-release입니다.
{ "branches": [ "main", { "name": "beta", "prerelease": true } ], "plugins": [ "@semantic-release/commit-analyzer", "@semantic-release/release-notes-generator", "@semantic-release/changelog", [ "@semantic-release/git", { "assets": ["CHANGELOG.md", "package.json"], "message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}" } ] ]}이것이 하는 일은 다음과 같습니다.
- 커밋 메시지를 분석하여 다음 버전 번호를 결정합니다. Conventional Commits spec을 따릅니다.
- 최근 릴리스 이후의 커밋에 따라 릴리스 노트를 생성합니다.
- 릴리스 노트를 새로 업데이트한
CHANGELOG.md파일을 업데이트합니다. - 릴리스 노트를 새로 업데이트한
package.json버전을 업데이트합니다. 이 버전은 capacitor.config에서 사용됩니다. - 업데이트된
CHANGELOG.md,package.json, 그리고 다른 변경된 파일을 저장소로 다시 커밋합니다.
앱을 빌드하기 전에 semantic-release를 실행하여 업데이트된 버전이 __CAPGO_KEEP_0__.config에서 __CAPGO_KEEP_0__.config에 포함되도록 하세요. package.json is included in your build through the capacitor.config.
Capgo 키
-
: API 키가 유효하고 필요한 권한이 있는지 확인하세요. 환경 변수를 사용하는 경우, 올바르게 설정되었는지 다시 확인하세요.API 버전
-
: CLI __CAPGO_KEEP_1__의 최신 버전을 사용하여야 합니다. 이전 버전은 호환성 문제 또는 특정 기능이 누락된 문제가 있을 수 있습니다.: Make sure you’re using the latest version of the Capgo CLI. Older versions may have compatibility issues or lack certain features.
-
Troubleshooting: Capgo CLI이 생성하는 웹 빌드의 예상 출력 파일이 맞는지 확인하세요. Capgo CLI는 유효한 웹 빌드를 만들기 위해 Capgo CLI가 필요합니다.
-
네트워크 연결성: CI/CD 환경이 Capgo 서버에 네트워크 접근 권한이 있는지 확인하세요. 방화벽 또는 프록시 문제가 때로는 네트워크 연결성에 영향을 미칠 수 있습니다.
upload명령어.
문제가 해결되지 않으면, Capgo 지원팀에 문의하세요. 그들은 당신의 특정 설정과 관련된 문제를 해결할 수 있습니다.
Capgo을 CI/CD pipeline에 통합하고 적절한 버전 관리를 수행하면 개발 워크플로우가 크게streamlined됩니다. 배포를 자동화하고 버전을 capacitor.config 방법을 통해 관리함으로써, 업데이트를 더 빠르고 더 자신감 있게 배포할 수 있습니다.
버전을 설정하는 __CAPGO_KEEP_0__ 방법은 __CAPGO_KEEP_1__ 파일에 버전을 설정하고 semantic-release를 사용하여 업데이트하는 것을 추천합니다. capacitor.config.ts 버전을 설정하는 __CAPGO_KEEP_0__ 방법은 __CAPGO_KEEP_1__ 파일에 버전을 설정하고 semantic-release를 사용하여 업데이트하는 것을 추천합니다. package.json __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ 명령어와 옵션에 대한 자세한 내용은 __CAPGO_KEEP_0__ __CAPGO_KEEP_1__을 참조하세요.
Capgo CLI 명령어와 옵션에 대한 자세한 내용은 Capgo CLI을 참조하세요. CLI reference. And for a deeper dive into semantic-release configuration, see the semantic-release docs.
Happy deploying!
CI/CD 통합에서 계속 진행하세요.
CI/CD 통합CI/CD 자동화 계획을 하는 경우 CI/CD 통합 CI/CD 통합에서 Capgo CI/CD for the product workflow in Capgo CI/CD, Capgo Native Builds 제품 워크플로우에서 Capgo 네이티브 빌드를 Capgo 통합 Capgo 통합에서 제품 워크플로우를 GitHub 액션 통합 GitHub 액션 통합의 구현 세부 사항, 그리고 GitLab CI/CD 통합 GitLab CI/CD 통합의 구현 세부 사항을