StudySmarter - 학교 & 대학
교육 앱에서 수업, 강의, 구독 변경이 이해 당사자 검토가 필요합니다.
- 구글 플레이 설치
- 6,500,000
- 스토어 평점
- 4.8
CI는 각 pull request의 웹 빌드를 Capgo 채널에 업로드합니다. 검토자는 QR code 코드를 스캔하거나 앱에서 채널을-switch하여 기기에서 시도하고 채널은 PR가 닫히면 삭제됩니다. 네이티브 code 변경 사항은 새로운 빌드가 필요합니다.
마틴의 인간 지원
문제
개발자는 PR를 열었습니다.
변경이 검토를 위해 준비되었지만, 아직 모바일에서 시도할 수 없습니다.
빌드, 서명, 업로드
브랜치에 대한 네이티브 바이너리를 빌드하고 서명한 다음 테스트 플라이트 또는 플레이 테스트 트랙에 업로드하고 처리를 기다립니다.
리뷰어에게 초대하고 설치
리뷰어는 정확한 빌드를 설치해야 합니다.
fix를 위해 반복
리뷰 댓글이 code을 변경하면 빌드, 업로드, 설치가 다시 필요합니다.
JavaScript만 변경되었음에도 불구하고, 각 리뷰 라운드가 네이티브 빌드에 의존합니다.
매 빌드
스토어 처리 대기
테스트 플라이트나 플레이 테스트 트랙에 업로드한 각 빌드는 테스터가 설치하기 전에 처리됩니다. 그건 매 빌드에 대해 일어납니다.
매 PR
자체 네이티브 빌드를 테스트하기 위해
라이브 업데이트가 없으면 리뷰어는 웹 전용 변경도 포함하여 alguien이 빌드, 서명, 새로운 바이너리를 업로드한 후에야 branch를 시도할 수 있습니다.
늦은 feedback
리뷰가 author가 다른 작업에移った 후에 일어납니다
리뷰가 빌드에 의존하면 feedback가 늦게 도착하고 author는 다른 작업에 있고 branch는 main과 멀어집니다.
이것은 어떻게 작동하는가
네 가지 CI 단계: scoped key를 한 번만 설정하고, push마다 업로드하고, 미리보기 공유하고, 닫을 때 청소합니다. 아래의 모든 명령어는 Capgo 문서에서 가져온 것입니다.
관리자로, CI에서 앱 미리보기 API 키를 생성합니다. 이 키는 미리보기 채널을 생성하고 업로드할 수 있지만 기본 또는 프로덕션 채널을 변경할 수 없습니다. 미리보기는 앱당 한 번만 활성화됩니다.
# once, run by an admin (not the preview key)
npx @capgo/cli@latest app set com.example.app --preview
앱 미리보기 API 키
push마다 CI는 웹 앱을 빌드하고 유니크한 버전의 배포본을 업로드합니다. bundle upload --channel은 pr-<number> 채널이 없으면 채널을 생성하고 배포본을 연결합니다.
npx @capgo/cli@latest bundle upload com.example.app \
--apikey "$CAPGO_PREVIEW_KEY" \
--path ./dist \
--channel "pr-$PR_NUMBER" \
--bundle "1.2.3-pr.$PR_NUMBER.$GITHUB_RUN_NUMBER"
PR 미리보기에 대한 채널 문서
get-qr은 채널에 대한 QR code를 출력하거나 --url 옵션을 사용하여 미리보기 URL을 출력하여 CI가 PR 댓글에 추가할 수 있도록 합니다.
npx @capgo/cli@latest get-qr com.example.app \
--channel "pr-$PR_NUMBER" \
--apikey "$CAPGO_PREVIEW_KEY" \
--url
QR 참조
PR 닫힐 때 이 명령어를 실행합니다. App Preview 키가 있는 경우 채널과 연결된 배포본만 삭제합니다.
npx @capgo/cli@latest channel delete \
"pr-$PR_NUMBER" com.example.app \
--apikey "$CAPGO_PREVIEW_KEY" \
--delete-bundle \
--success-if-not-found
채널 CLI 참조
App Preview 키는 채널을 설정하지 않으므로, QR 미리보기를 공유하거나 콘솔에서 장치 오버라이드 설정을 하세요.
내부 빌드에서 메뉴 흔들기 기능을 켜고 테스터는 장치에 흔들어 Capgo의 테스트 메뉴를 열 수 있고, 흔들기 채널 선택기를 통해 채널을 선택할 수 있습니다.
// capacitor.config.ts (internal builds)
CapacitorUpdater: {
shakeMenu: true,
}
개발자 설정 화면에 채널 필드를 추가하고 setChannel() 함수에 PR 채널 이름을 전달합니다.
import { CapacitorUpdater } from '@capgo/capacitor-updater'
await CapacitorUpdater.setChannel({
channel: 'pr-123',
triggerAutoUpdate: true,
})
setChannel() 참조
Pull Request를 검토하는 누구나 휴대폰에서 확인할 수 있습니다. 단, 작성자만이 아닙니다.
팀의 요구에 맞는 솔루션을 찾으세요
Capacitor로 빌드된 앱
학습, 행사 및 커뮤니티 앱은 온보딩, 연습, 라이브 세션 및 구독 변경을 검토할 수 있습니다. PR 전시를 통해 제품, QA 및 지원은 병합되기 전에 모바일 준비가 된 빌드를 검토할 수 있습니다.
교육 앱에서 수업, 강의, 구독 변경이 이해 당사자 검토가 필요합니다.
라이브 참여 앱에서 이벤트 흐름이 병합 전에 테스트되어야 합니다.
사용자들이 토너먼트 및 분석 화면에서 장치 미리보기가 이점을 제공하는 커뮤니티 앱입니다.
CEO, 사설
“설치가 1일 이내에 완료되었습니다. 채널 기반 롤아웃을 통해 내 장치에서 테스트할 수 있어 프로덕션 사용자에게 배포되기 전에 테스트할 수 있었습니다.”
넷헤드 에메리터스
업데이터 플러그인에 대한 훌륭한 일입니다. 업데이터 플러그인이 제대로 작동하고, 실시간 업데이트 기능은 빠른 테스트 회전 속도에 큰 도움이 됩니다.
no-tone @ Webincode
5 out of 5 stars
FAQ
PR 전시를 위한 질문
Not when the PR only changes the web layer. Reviewers install the app once, and each PR's JavaScript, HTML, CSS, and assets go to its own channel. If the PR adds a plugin or changes native code, it needs a native build. Run build needed in CI to detect that.
FAQ앱 프리뷰 API 키와 함께 사용하지 마세요. 앱 프리뷰 키는 미리보기 채널을 만들 수 있고, 업로드할 수 있고, 채널과 관련된 번들을 삭제할 수 있습니다. 그러나 기본 채널이나 메인 채널을 변경할 수 없습니다. GitHub 액션에서, pull_request 이벤트가 발생할 때만 작업을 실행하고, pull_request_target 이벤트가 발생하지 않도록 하세요. 그리고 같은 저장소에서만 PR를 제한하세요.
앱 프리뷰 API 키관리자만 앱을 미리보기 모드로 설정할 수 있습니다. --preview 옵션을 사용하여 앱을 미리보기 모드로 설정한 후, get-qr 명령어를 사용하여 QR code 코드를 출력하고, --url 옵션을 사용하여 웹 미리보기 URL과 깊이 링크를 출력하세요. 그리고 PR 댓글에 첨부하세요.
get-qr 참조App Preview 키를 사용하여, PR 채널과 관련된 번들을 삭제할 수 있습니다. 이전에 푸시한 번들을 삭제하려면, bundle cleanup 명령어를 사용하세요. 이 명령어는 delete 권한이 있는 키가 필요합니다.
채널 CLI 참조예. CI/CD 통합을 위해 Capgo CLI 명령어를 사용하세요. 따라서, GitLab CI, Bitbucket Pipelines, Azure DevOps와 같은 CI/CD 도구에서 작동합니다. GitHub Actions에 대한 통합 가이드는 문서에 있습니다.
CI/CD 통합