Package Exports
- @ragopor/myappcenter-cli
- @ragopor/myappcenter-cli/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@ragopor/myappcenter-cli) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@ragopor/myappcenter-cli
Official CLI for MyAppCenter - Upload iOS and Android builds directly from your CI/CD pipeline.
Installation
npm install -g @ragopor/myappcenter-cliUsage
Basic Upload
myappcenter upload <file> --app-version <version> --build-number <number> --api-key <key>Examples
iOS Upload (with app token)
myappcenter upload app.ipa \
--app-version 1.0.0 \
--build-number 100 \
--api-key app_BBuJYPJcRwEx2o5VS7uvbxnEiDUsBhxLAndroid Upload (with app token)
myappcenter upload app.apk \
--app-version 1.0.0 \
--build-number 100 \
--api-key app_BBuJYPJcRwEx2o5VS7uvbxnEiDUsBhxLWith Additional Options
myappcenter upload app.ipa \
--app-version 1.2.3 \
--build-number 456 \
--api-key app_XXX \
--release-notes "Bug fixes and improvements" \
--groups "qa,beta-testers" \
--public \
--environment "staging" \
--git-commit "abc123" \
--git-branch "main"Options
| Option | Description | Default |
|---|---|---|
-v, --app-version <version> |
App version (e.g., 1.2.3) | Required |
-b, --build-number <number> |
Build number | Required |
--api-key <key> |
API key (or use MYAPPCENTER_API_KEY env var) | Required |
--api-url <url> |
API URL | https://appcenter.true-app.com |
--bundle-id <id> |
Bundle ID (required for Android with user tokens) | - |
--app-name <name> |
App name (required for Android with user tokens) | - |
--release-notes <notes> |
Release notes | - |
--groups <groups> |
Comma-separated list of groups | - |
--public |
Make build publicly accessible | false |
--environment <env> |
Environment (dev, staging, production) | - |
--git-commit <commit> |
Git commit hash | - |
--git-branch <branch> |
Git branch name | - |
--no-chunked |
Disable chunked upload | Chunked is default |
Environment Variables
MYAPPCENTER_API_KEY- API key for authentication (instead of --api-key)
Programmatic Usage
const { uploadBuild } = require('@ragopor/myappcenter-cli');
await uploadBuild({
file: './app.ipa',
apiKey: 'your-api-key',
version: '1.2.3',
buildNumber: '456',
releaseNotes: 'Bug fixes'
});Features
- 🚀 Chunked upload by default for reliability (use --no-chunked to disable)
- 📱 Automatic platform detection from file extension (.ipa, .apk, .aab)
- 🔑 App token support - No need for bundle ID when using app-specific tokens
- 📊 Progress tracking with time remaining
- 🌐 Default API URL - No need to specify unless using custom server
- 🎯 CI/CD optimized with environment variable support
CI/CD Integration
GitHub Actions
- name: Upload to MyAppCenter
run: |
npm install -g @ragopor/myappcenter-cli
myappcenter upload ${{ github.workspace }}/app.ipa \
--app-version ${{ env.VERSION }} \
--build-number ${{ github.run_number }} \
--api-key ${{ secrets.MYAPPCENTER_API_KEY }} \
--environment production \
--git-commit ${{ github.sha }} \
--git-branch ${{ github.ref_name }}GitLab CI
upload_to_myappcenter:
script:
- npm install -g @ragopor/myappcenter-cli
- myappcenter upload ./app.apk \
--app-version $CI_COMMIT_TAG \
--build-number $CI_PIPELINE_ID \
--api-key $MYAPPCENTER_API_KEY \
--environment production \
--git-commit $CI_COMMIT_SHA \
--git-branch $CI_COMMIT_REF_NAMEJenkins
sh 'npm install -g @ragopor/myappcenter-cli'
sh """
myappcenter upload app.ipa \
--app-version ${VERSION} \
--build-number ${BUILD_NUMBER} \
--api-key ${MYAPPCENTER_API_KEY} \
--environment ${ENVIRONMENT} \
--git-commit ${GIT_COMMIT} \
--git-branch ${GIT_BRANCH}
"""Minimal CI/CD Example
# Set API key as environment variable
export MYAPPCENTER_API_KEY=app_BBuJYPJcRwEx2o5VS7uvbxnEiDUsBhxL
# Simple upload command
myappcenter upload app.apk -v 1.0.0 -b 100License
MIT