Docs
Upload builds from CI
Every build your pipeline makes can land on AppForShare with release notes, and your testers get the link right away. Uploads from CI are part of Pro and Team. Create a token under Dashboard, Settings.
Any CI or your terminal
Needs Node 18 or newer. The command prints the install link.
export APPFORSHARE_TOKEN=afs_your_token
npx appforshare upload build/MyApp.ipa --notes "Fixes the login crash"GitHub Actions
Store the token as a repository secret named APPFORSHARE_TOKEN.
- name: Share build
id: afs
run: npx --yes appforshare@1 upload app/build/outputs/apk/release/app-release.apk --notes "${{ github.event.head_commit.message }}"
env:
APPFORSHARE_TOKEN: ${{ secrets.APPFORSHARE_TOKEN }}
- run: echo "Install link: ${{ steps.afs.outputs.url }}"GitLab CI
Add APPFORSHARE_TOKEN as a masked CI/CD variable.
share:
image: node:22
script:
- npx --yes appforshare upload build/MyApp.ipa --json > appforshare.json
artifacts:
paths: [appforshare.json]Fastlane
Run it after gym or gradle in your lane.
lane :beta do
gym(export_method: "ad-hoc")
sh("npx --yes appforshare upload ../#{lane_context[SharedValues::IPA_OUTPUT_PATH]}")
endOptions
--notesor--notes-file: release notes for testers--json: prints url, slug, name, version and expiry as JSON--no-wait: return as soon as the upload is queued- Big builds go up in 32 MB chunks and resume after a dropped connection.