Compare commits

..

No commits in common. "main" and "feat/ios-increment-logic" have entirely different histories.

View File

@ -61,6 +61,15 @@ module Fastlane
) )
UI.message("🍺 API Key formated") UI.message("🍺 API Key formated")
# Install Cocoapods
other_action.cocoapods(
clean_install: true,
clean: true,
integrate: true,
podfile: "./Podfile"
)
UI.message("🍺 Pod got")
# Set up code signing using match # Set up code signing using match
# Configures and runs `match` which manages code signing certificates and provisioning profiles for the project. # Configures and runs `match` which manages code signing certificates and provisioning profiles for the project.
# The function takes the app's bundle identifier, an authorization token for the project's Git repository, and the name and password for a temporary keychain used to store the signing certificate. # The function takes the app's bundle identifier, an authorization token for the project's Git repository, and the name and password for a temporary keychain used to store the signing certificate.
@ -79,30 +88,19 @@ module Fastlane
git_url: creds['git_url'].to_s, git_url: creds['git_url'].to_s,
storage_mode: "git" storage_mode: "git"
) )
UI.message("🍺 Signing environment ready") UI.message("🍺 App signed")
archive_path = "../build/ios/archive/Runner.xcarchive"
if File.exist?(archive_path)
UI.message("🍺 Archive built")
else
raise ArgumentError, "❌ Cannot build XCode archive"
end
# Build and export app using Gym # Build and export app using Gym
# Packages an iOS app or framework for distribution to the App Store, TestFlight, or Enterprise distribution. # Builds and packages an iOS app or framework for distribution to the App Store, TestFlight, or Enterprise distribution.
other_action.gym( other_action.gym(
configuration: "Release", configuration: "Release",
workspace: "Runner.xcworkspace", workspace: "Runner.xcworkspace",
archive_path: archive_path,
skip_build_archive: true,
export_method: "app-store", export_method: "app-store",
export_team_id: creds['team_id'].to_s,
export_options: { export_options: {
provisioningProfiles: creds['provisioning_profiles'], provisioningProfiles: creds['provisioning_profiles']
signingCertificate: "Apple Distribution: Jagger & Lewis (8547YCHLVR)"
} }
) )
UI.message("🍺 App built")
# Upload build to App Store Connect using Pilot # Upload build to App Store Connect using Pilot
other_action.pilot( other_action.pilot(
@ -113,7 +111,7 @@ module Fastlane
skip_submission: true, skip_submission: true,
distribute_external: false, distribute_external: false,
notify_external_testers: false, notify_external_testers: false,
ipa: "./Runner.ipa", ipa: "./Runner.ipa"
) )
# Delete keychain if existing # Delete keychain if existing
@ -148,7 +146,7 @@ module Fastlane
FastlaneCore::ConfigItem.new(key: :beta_type, FastlaneCore::ConfigItem.new(key: :beta_type,
env_name: "IOS_CD_TEST_TYPE", env_name: "IOS_CD_TEST_TYPE",
optional: false, optional: false,
description: "Type of test (internal, external, production)"), description: "Type of test (internal, external, production)")
] ]
end end