Deploy your app with one Slack command

Post on 08-Apr-2017

287 views 0 download

Transcript of Deploy your app with one Slack command

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