Upload
fabio-milano
View
285
Download
0
Embed Size (px)
Citation preview
Deploy your app with one Slack command
Fabio Milano - @iamfabiomilano
iOS Project
FastfileiOS Project Fastlane
Fastfile“There is a lane for that”
– Fastlane docs
“There are multiple ways of doing code signing right. Letting Xcode automatically choose the provisioning profile is not one of them.”
Demo
FastfileiOS Project Fastlane
😰
The configuration filexcode_select: '/Applications/Xcode-beta.app' # Choose the xcode version to use
sdk: iphoneos9.0 # SDK to use when building
scheme: Awesome app # Project scheme name
# Per lane settings
tests:
remote_branch: develop # Project's reference branch to checkout
configuration: Development # Project's configuration to use when "build"
notifications: NO # Enable/disable an notifications
team_id: APPLE_TEAM_ID # Team id to use
targets: # A collection of all project's targets. This is useful when fetching provisioning profiles for each of them
- target_identifier: PROJECT # Convenience identifier. You can this reused in your Fastfile.
app_identifier: com.touchwonders.awesomeapp.development # Bundle identifier for current target
- targetidentifier: WATCHKIT_EXTENSION
app_identifier: com.touchwonders.awesomeapp.development.watchkitextension
- targetidentifier: WATCH_APP
app_identifier: com.touchwonders.awesomeapp.development.watchapp
Fastfile
FastfileiOS Project Fastlane
import_from_git
import_from_git(url:"twgitlab:library/fastlane.git", path:"Fastfile")
fastlane_version "1.14.0"
default_platform :ios
platform :ios do
end
platform :ios do
desc "Submit a new daily build" lane :development do |options| # Prepare current environment prepare
# Download all required provisioning profiles get_provisioning_profile
# Last step before ‘build&archive’ # (i.e. increment build number,check debug code) project_warm_up
# "Build and archive" treatment build_and_archive
# Publish the result publish(service: options[:service]) end
end
😫
RESTFul API
Fastfile
FastfileiOS Fastlane
/deploy {project_name} {lane_name}
– Nick Arnott
“A provisioning profile walks into a Xcode’s bar and orders a drink. Xcode turns to a different profile, hands him the drink and tells him
that it’s not his drink.”
Demo
Thank youwww.touchwonders.com