# TestFlight Release CI Gitea Actions publishes iOS releases from tags that match: ```sh release/vN.N.N ``` For example: ```sh git tag release/v1.10.0 git push origin release/v1.10.0 ``` The release job runs on the `xcode` runner label, imports the signing p12 with `Apple-Actions/import-codesign-certs`, builds and uploads the app with fastlane, then creates or updates the matching Gitea release with the generated IPA as an asset. Required repository secrets: ```text APPSTORE_CERTIFICATES_FILE_BASE64 APPSTORE_CERTIFICATES_PASSWORD FASTLANE_USER FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD ``` The workflow uses Gitea's built-in `GITEA_TOKEN` for release creation and asset upload, with `contents: write` permissions. In Gitea this covers release asset publication.