From 38e641a082ff574f815a85f5ac8a025fac02cfa8 Mon Sep 17 00:00:00 2001 From: Daniel Arantes Loverde Date: Thu, 9 Jul 2026 13:46:49 -0300 Subject: [PATCH] [ci-bitrise] Add Bitrise pipeline for TestFlight and App Store deploys Modeled on LC Wallet's bitrise.yml. Push-only trigger map (develop->beta, main->release), no PR-triggered checks. Reuses the existing Skip fastlane lanes directly instead of a generic xcode-archive step, since build_app already carries the Skip-specific xcconfig and build flags. Adds a beta lane (TestFlight) to match release, which was the only lane wired before. --- Darwin/fastlane/Fastfile | 13 ++++++ bitrise.yml | 98 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+) create mode 100644 bitrise.yml diff --git a/Darwin/fastlane/Fastfile b/Darwin/fastlane/Fastfile index bb778d9..b46138e 100644 --- a/Darwin/fastlane/Fastfile +++ b/Darwin/fastlane/Fastfile @@ -19,6 +19,19 @@ lane :assemble do |options| ) end +lane :beta do |options| + desc "Build and upload to TestFlight" + + get_provisioning_profile(api_key_path: "fastlane/apikey.json") + + assemble + + upload_to_testflight( + api_key_path: "fastlane/apikey.json", + skip_waiting_for_build_processing: true + ) +end + lane :release do |options| desc "Build and release app" diff --git a/bitrise.yml b/bitrise.yml new file mode 100644 index 0000000..68d07a7 --- /dev/null +++ b/bitrise.yml @@ -0,0 +1,98 @@ +format_version: '26' +default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git +project_type: ios + +meta: + bitrise.io: + stack: osx-xcode-26.0.x + machine_type_id: g2-m1.8core + +app: + envs: + - BITRISE_PROJECT_PATH: Darwin/PediFoods.xcodeproj + opts: + is_expand: false + - BITRISE_SCHEME: PediFoods App + opts: + is_expand: false + - BITRISE_DISTRIBUTION_METHOD: app-store + opts: + is_expand: false + - APPLE_ID: developer@loverde.com.br + # MANUAL (Bitrise Secrets tab — never commit these): + # ASC_KEY_ID → App Store Connect API Key ID + # ASC_ISSUER_ID → App Store Connect Issuer ID + # ASC_KEY_CONTENT → .p8 file content (raw, not base64 — written verbatim into apikey.json) + # ITC_TEAM_ID → iTunes Connect Team ID (numeric) + +# ─── WORKFLOWS ──────────────────────────────────────────────────────────────── +workflows: + + # ── Beta → TestFlight ────────────────────────────────────────────────────── + beta: + description: Build, sign, and upload to TestFlight + steps: + - git-clone@8: {} + - script@1: + title: Set build number + inputs: + - content: | + cd $BITRISE_SOURCE_DIR + agvtool new-version -all $BITRISE_BUILD_NUMBER + - script@1: + title: Write App Store Connect API key + inputs: + - content: | + cat > "$BITRISE_SOURCE_DIR/Darwin/fastlane/apikey.json" < "$BITRISE_SOURCE_DIR/Darwin/fastlane/apikey.json" <