Files
libnovel/ios/LibNovel/fastlane/Fastfile
Admin e9d7293d37
Some checks failed
CI / Scraper / Lint (pull_request) Successful in 15s
CI / Scraper / Test (pull_request) Successful in 16s
CI / Scraper / Docker Push (pull_request) Has been skipped
CI / UI / Build (pull_request) Successful in 16s
CI / UI / Docker Push (pull_request) Has been skipped
iOS CI / Test (push) Has been cancelled
iOS CI / Build (push) Has been cancelled
iOS CI / Build (pull_request) Has been cancelled
iOS CI / Test (pull_request) Has been cancelled
iOS Release / Release to TestFlight (push) Failing after 57s
Switch to manual code signing for CI (automatic signing requires Apple ID)
2026-03-09 18:57:21 +05:00

47 lines
1.3 KiB
Ruby

default_platform(:ios)
platform :ios do
desc "Build and upload to TestFlight"
lane :beta do
# Generate Xcode project from project.yml (one level up from fastlane/)
sh("cd .. && xcodegen generate --spec project.yml --project .")
# Set build number from CI run number (passed as env var)
increment_build_number(
build_number: ENV["BUILD_NUMBER"] || "1",
xcodeproj: "LibNovel.xcodeproj"
)
# Enable manual code signing with specific provisioning profile
update_code_signing_settings(
use_automatic_signing: false,
team_id: "GHZXC6FVMU",
targets: ["LibNovel"],
path: "LibNovel.xcodeproj",
profile_name: ENV["PROVISIONING_PROFILE_NAME"] || "LibNovel Distribution",
code_sign_identity: "Apple Distribution"
)
# Build the app with manual signing
build_app(
scheme: "LibNovel",
export_method: "app-store",
clean: true,
configuration: "Release",
export_options: {
method: "app-store",
teamID: "GHZXC6FVMU",
provisioningProfiles: {
"com.kalekber.LibNovel" => ENV["PROVISIONING_PROFILE_NAME"] || "LibNovel Distribution"
},
signingStyle: "manual"
}
)
# Upload to TestFlight
upload_to_testflight(
skip_waiting_for_build_processing: true
)
end
end