mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-15 18:06:09 +00:00
App Store metadata (Fastlane deliver)
This directory is used by fastlane deliver for App Store Connect text metadata.
Upload public metadata and App Review attachment
cd apps/ios
APP_STORE_CONNECT_APP_ID=YOUR_APP_STORE_CONNECT_APP_ID \
DELIVER_METADATA=1 fastlane ios metadata release_version:2026.6.11
Release notes and App Review attachment
pnpm ios:release:upload uses this mode before archiving so the editable App Store version has current release notes and the App Review PDF attachment without rewriting all metadata:
cd apps/ios
DELIVER_RELEASE_NOTES=1 fastlane ios metadata release_version:2026.6.11
Optional: include screenshots
cd apps/ios
DELIVER_METADATA=1 DELIVER_SCREENSHOTS=1 fastlane ios metadata release_version:2026.6.11
Auth
The ios metadata lane uses App Store Connect API key auth from apps/ios/fastlane/.env:
- Keychain-backed (recommended on macOS):
APP_STORE_CONNECT_KEY_IDAPP_STORE_CONNECT_ISSUER_IDAPP_STORE_CONNECT_KEYCHAIN_SERVICE(default:openclaw-app-store-connect-key)APP_STORE_CONNECT_KEYCHAIN_ACCOUNT(default: current user)
- File/path fallback:
APP_STORE_CONNECT_KEY_IDAPP_STORE_CONNECT_ISSUER_IDAPP_STORE_CONNECT_KEY_PATH
Or set APP_STORE_CONNECT_API_KEY_PATH.
Notes
- Locale files live under
metadata/<locale>/, for examplemetadata/en-US/andmetadata/sv-SE/. Each locale directory should use the public metadata filenames consumed by theios metadatalane. - Release notes are generated from
apps/ios/CHANGELOG.mdinto temporary Fastlane metadata during upload; after changelog updates, runpnpm ios:version:check -- --version <release-version>. - Do not check in
release_notes.txtunder locale metadata directories; the lane strips copied release-note files and writes the current generated en-US release notes when requested. apps/ios/APP-REVIEW-NOTES.mdis rendered toapps/ios/build/app-review/APP-REVIEW-NOTES.pdfand uploaded as the App Review attachment when metadata is uploaded.- Release notes resolve from
## <release version>first, then fall back to## Unreleasedwhile an App Store Connect build train is still in progress. - When starting a new production release train, validate metadata with
pnpm ios:version:check -- --version <release-version>. - The release upload flow uploads release notes, screenshots, and the App Review PDF attachment before the IPA, and never submits for App Review.
privacy_url.txtis set tohttps://openclaw.ai/privacy.- If app lookup fails in
deliver, set one of:APP_STORE_CONNECT_APP_IDENTIFIER(bundle ID)APP_STORE_CONNECT_APP_ID(numeric App Store Connect app ID, e.g. from/apps/<id>/...URL)
- App Review submission is manual. Keep review contact, demo account, and the App Store Connect
Notesfield outside this repo and enter them directly in App Store Connect when submitting for review. Do not addmetadata/review_information/notes.txt; the lane refuses to upload that field.