GitHub Actions makes it easy to automate all your software workflows with world-class CI/CD. Build, test, and deploy your code right from GitHub.
Adding our GitHub Action to your repo will automatically upload the APK or IPA to TestApp.io and notify your testers.
TestApp.io GitHub Action for Linux and macOS
This action uploads artifacts (.apk or .ipa) to TestApp.io and notifies your team members.
- name: TestApp.io App Distribution uses: testappio/github-action@v5
Requirements
This action will execute on runners with Ubuntu & macOS operating systems.
β
Configuration
Key | Description | Env Var | Default |
| You can get it from portal.testapp.io/profile/tokens |
|
|
| You can get it from your app page at portal.testapp.io/apps β Integrations tab |
|
|
| It can be either |
|
|
| Path to the Android .APK or iOS .IPA file |
|
|
| Manually add the release notes to be displayed for the testers |
|
|
| Collect release notes from the latest git commit message: |
|
|
| Include the last commit ID in the release notes: |
|
|
| Send notifications to your team members about this release: |
|
|
Check ta-cli for more info
Sample Usage for Android
name: Upload APK to TestApp.ioon:
push:
branches:
- mainjobs:
android:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4 - name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17' - name: Build debug APK
run: ./gradlew assembleDebug - name: Upload to TestApp.io
uses: testappio/github-action@v5
with:
api_token: $#{{ secrets.TESTAPPIO_API_TOKEN }}
app_id: $#{{ secrets.TESTAPPIO_APP_ID }}
file: app/build/outputs/apk/debug/app-debug.apk
release_notes: ""
git_release_notes: true
include_git_commit_id: false
notify: trueIf you want a release build instead, replace:
- name: Build release APK
run: ./gradlew assembleReleasefile: app/build/outputs/apk/release/app-release.apk
Sample Usage for iOS
name: Upload IPA to TestApp.ioon:
push:
branches:
- mainjobs:
ios:
runs-on: macos-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4 - name: Build and export iOS
uses: yukiarrr/[email protected]
with:
project-path: ios/YourApp.xcodeproj
workspace-path: ios/YourApp.xcworkspace
scheme: YourApp
export-method: ad-hoc
configuration: Release
output-path: artifacts/output.ipa
p12-base64: $#{{ secrets.P12_BASE64 }}
certificate-password: $#{{ secrets.P12_PASSWORD }}
mobileprovision-base64: $#{{ secrets.ADHOC_MOBILEPROVISION_BASE64 }}
code-signing-identity: $#{{ secrets.CODE_SIGNING_IDENTITY }}
team-id: $#{{ secrets.TEAM_ID }} - name: Upload to TestApp.io
uses: testappio/github-action@v5
with:
api_token: $#{{ secrets.TESTAPPIO_API_TOKEN }}
app_id: $#{{ secrets.TESTAPPIO_APP_ID }}
file: artifacts/output.ipa
release_notes: ""
git_release_notes: true
include_git_commit_id: false
notify: trueMore info about the iOS build & export action: yukiarrr/ios-build-action
Install
- name: TestApp.io App Distribution uses: testappio/github-action@v5
Related Articles
Need help? Contact us β we're happy to assist!
