fastlane 1.95.0 → 1.96.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/.DS_Store +0 -0
- data/lib/fastlane.rb +1 -0
- data/lib/fastlane/commands_generator.rb +6 -1
- data/lib/fastlane/documentation/docs_generator.rb +7 -4
- data/lib/fastlane/features.rb +2 -0
- data/lib/fastlane/setup/crashlytics_beta.rb +89 -0
- data/lib/fastlane/version.rb +1 -1
- metadata +11 -15
- data/lib/assets/.DS_Store +0 -0
- data/lib/assets/completions/.DS_Store +0 -0
- data/lib/fastlane/.DS_Store +0 -0
- data/lib/fastlane/actions/.DS_Store +0 -0
- data/lib/fastlane/actions/device_grid/.DS_Store +0 -0
- data/lib/fastlane/plugins/.DS_Store +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7fc03884dbd96a157a1ce7678dded4d600fc208e
|
4
|
+
data.tar.gz: 2ddb998ef09e02d13130d25bc93fd518a77dbacd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 134b58780bfb3979d7769762f821af1b80efb7e114e6d8d56d1b00742a6f834a7056a22558c08cfe18682b937b292eb5dbb463163ccf35287c614870200c903d
|
7
|
+
data.tar.gz: 9e9b5af63e945489fa77e0e030b0ea3dd4898c782a38212af3476a63bd8713542787fb650c86e6f02a7089ed3a7c4a485890e5e1cf84e964e27761d826a9f6cd
|
data/lib/.DS_Store
CHANGED
Binary file
|
data/lib/fastlane.rb
CHANGED
@@ -58,7 +58,12 @@ module Fastlane
|
|
58
58
|
c.description = 'Helps you with your initial fastlane setup'
|
59
59
|
|
60
60
|
c.action do |args, options|
|
61
|
-
|
61
|
+
if args[0] == 'beta' && FastlaneCore::Feature.enabled?('FASTLANE_ENABLE_CRASHLYTICS_BETA_INITIALIZATION')
|
62
|
+
require 'fastlane/setup/crashlytics_beta'
|
63
|
+
Fastlane::CrashlyticsBeta.new.run
|
64
|
+
else
|
65
|
+
Fastlane::Setup.new.run
|
66
|
+
end
|
62
67
|
end
|
63
68
|
end
|
64
69
|
|
@@ -17,12 +17,15 @@ module Fastlane
|
|
17
17
|
all_keys.unshift(nil) # because we want root elements on top. always! They have key nil
|
18
18
|
|
19
19
|
all_keys.each do |platform|
|
20
|
-
|
20
|
+
lanes = ff.runner.lanes[platform]
|
21
|
+
|
22
|
+
if lanes.nil? || lanes.empty? || lanes.all? { |_, lane| lane.is_private }
|
23
|
+
next
|
24
|
+
end
|
21
25
|
|
22
|
-
|
23
|
-
next unless value
|
26
|
+
output << "## #{formatted_platform(platform)}" if platform
|
24
27
|
|
25
|
-
|
28
|
+
lanes.each do |lane_name, lane|
|
26
29
|
next if lane.is_private
|
27
30
|
output << render(platform, lane_name, lane.description.join("\n\n"))
|
28
31
|
end
|
@@ -0,0 +1,89 @@
|
|
1
|
+
module Fastlane
|
2
|
+
class CrashlyticsBeta
|
3
|
+
def run
|
4
|
+
UI.user_error!('Beta by Crashlytics configuration is currently only available for iOS projects.') unless Setup.new.is_ios?
|
5
|
+
config = {}
|
6
|
+
FastlaneCore::Project.detect_projects(config)
|
7
|
+
project = FastlaneCore::Project.new(config)
|
8
|
+
keys = keys_from_project(project)
|
9
|
+
|
10
|
+
if FastlaneFolder.setup?
|
11
|
+
UI.header('Copy and paste the following lane into your Fastfile to use Crashlytics Beta!')
|
12
|
+
puts lane_template(keys[:api_key], keys[:build_secret], project.schemes.first).cyan
|
13
|
+
else
|
14
|
+
fastfile = fastfile_template(keys[:api_key], keys[:build_secret], project.schemes.first)
|
15
|
+
FileUtils.mkdir_p('fastlane')
|
16
|
+
File.write('fastlane/Fastfile', fastfile)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def keys_from_project(project)
|
21
|
+
require 'xcodeproj'
|
22
|
+
target_name = project.default_build_settings(key: 'TARGETNAME')
|
23
|
+
path = project.is_workspace ? project.path.gsub('xcworkspace', 'xcodeproj') : project.path
|
24
|
+
UI.crash!("No project available at path #{path}") unless File.exist?(path)
|
25
|
+
xcode_project = Xcodeproj::Project.open(path)
|
26
|
+
target = xcode_project.targets.find { |t| t.name == target_name }
|
27
|
+
scripts = target.build_phases.select { |t| t.class == Xcodeproj::Project::Object::PBXShellScriptBuildPhase }
|
28
|
+
crash_script = scripts.find { |s| includes_run_script?(s.shell_script) }
|
29
|
+
UI.user_error!("Unable to find Crashlytics Run Script Build Phase") if crash_script.nil?
|
30
|
+
script_array = crash_script.shell_script.split('\n').find { |l| includes_run_script?(l) }.split(' ')
|
31
|
+
if script_array.count == 3 && api_key_valid?(script_array[1]) && build_secret_valid?(script_array[2])
|
32
|
+
{
|
33
|
+
api_key: script_array[1],
|
34
|
+
build_secret: script_array[2]
|
35
|
+
}
|
36
|
+
else
|
37
|
+
UI.important('Please enter your API Key and Build Secret:')
|
38
|
+
keys = {}
|
39
|
+
loop do
|
40
|
+
keys[:api_key] = UI.input('API Key:')
|
41
|
+
break if api_key_valid?(keys[:api_key])
|
42
|
+
UI.important "Invalid API Key, Please Try Again!"
|
43
|
+
end
|
44
|
+
loop do
|
45
|
+
keys[:build_secret] = UI.input('Build Secret:')
|
46
|
+
break if build_secret_valid?(keys[:build_secret])
|
47
|
+
UI.important "Invalid Build Secret, Please Try Again!"
|
48
|
+
end
|
49
|
+
keys
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
def api_key_valid?(key)
|
54
|
+
key.to_s.length == 40
|
55
|
+
end
|
56
|
+
|
57
|
+
def build_secret_valid?(secret)
|
58
|
+
secret.to_s.length == 64
|
59
|
+
end
|
60
|
+
|
61
|
+
def includes_run_script?(string)
|
62
|
+
string.include?('Fabric/run') || string.include?('Crashlytics/run') || string.include?('Fabric.framework/run') || string.include?('Crashlytics.framework/run')
|
63
|
+
end
|
64
|
+
|
65
|
+
def lane_template(api_key, build_secret, scheme)
|
66
|
+
%{
|
67
|
+
lane :beta do
|
68
|
+
gym(scheme: '#{scheme}')
|
69
|
+
crashlytics(api_token: '#{api_key}',
|
70
|
+
build_secret: '#{build_secret}')
|
71
|
+
end
|
72
|
+
}
|
73
|
+
end
|
74
|
+
|
75
|
+
def fastfile_template(api_key, build_secret, scheme)
|
76
|
+
<<-eos
|
77
|
+
fastlane_version "1.93.0"
|
78
|
+
default_platform :ios
|
79
|
+
platform :ios do
|
80
|
+
lane :beta do
|
81
|
+
gym(scheme: '#{scheme}')
|
82
|
+
crashlytics(api_token: '#{api_key}',
|
83
|
+
build_secret: '#{build_secret}')
|
84
|
+
end
|
85
|
+
end
|
86
|
+
eos
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
data/lib/fastlane/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.96.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Felix Krause
|
@@ -15,7 +15,7 @@ authors:
|
|
15
15
|
autorequire:
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
|
-
date: 2016-06-
|
18
|
+
date: 2016-06-24 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: krausefx-shenzhen
|
@@ -183,7 +183,7 @@ dependencies:
|
|
183
183
|
requirements:
|
184
184
|
- - ">="
|
185
185
|
- !ruby/object:Gem::Version
|
186
|
-
version: 0.
|
186
|
+
version: 0.48.0
|
187
187
|
- - "<"
|
188
188
|
- !ruby/object:Gem::Version
|
189
189
|
version: 1.0.0
|
@@ -193,7 +193,7 @@ dependencies:
|
|
193
193
|
requirements:
|
194
194
|
- - ">="
|
195
195
|
- !ruby/object:Gem::Version
|
196
|
-
version: 0.
|
196
|
+
version: 0.48.0
|
197
197
|
- - "<"
|
198
198
|
- !ruby/object:Gem::Version
|
199
199
|
version: 1.0.0
|
@@ -613,16 +613,16 @@ dependencies:
|
|
613
613
|
name: coveralls
|
614
614
|
requirement: !ruby/object:Gem::Requirement
|
615
615
|
requirements:
|
616
|
-
- - "
|
616
|
+
- - "~>"
|
617
617
|
- !ruby/object:Gem::Version
|
618
|
-
version:
|
618
|
+
version: 0.8.13
|
619
619
|
type: :development
|
620
620
|
prerelease: false
|
621
621
|
version_requirements: !ruby/object:Gem::Requirement
|
622
622
|
requirements:
|
623
|
-
- - "
|
623
|
+
- - "~>"
|
624
624
|
- !ruby/object:Gem::Version
|
625
|
-
version:
|
625
|
+
version: 0.8.13
|
626
626
|
- !ruby/object:Gem::Dependency
|
627
627
|
name: rubocop
|
628
628
|
requirement: !ruby/object:Gem::Requirement
|
@@ -680,13 +680,11 @@ files:
|
|
680
680
|
- bin/fastlane
|
681
681
|
- "bin/\U0001F680"
|
682
682
|
- lib/.DS_Store
|
683
|
-
- lib/assets/.DS_Store
|
684
683
|
- lib/assets/AppfileTemplate
|
685
684
|
- lib/assets/AppfileTemplateAndroid
|
686
685
|
- lib/assets/AvailablePlugins.md.erb
|
687
686
|
- lib/assets/DefaultFastfileTemplate
|
688
687
|
- lib/assets/FastfileTemplateAndroid
|
689
|
-
- lib/assets/completions/.DS_Store
|
690
688
|
- lib/assets/completions/completion.bash
|
691
689
|
- lib/assets/completions/completion.sh
|
692
690
|
- lib/assets/completions/completion.zsh
|
@@ -697,10 +695,8 @@ files:
|
|
697
695
|
- lib/assets/s3_plist_template.erb
|
698
696
|
- lib/assets/s3_version_template.erb
|
699
697
|
- lib/fastlane.rb
|
700
|
-
- lib/fastlane/.DS_Store
|
701
698
|
- lib/fastlane/action.rb
|
702
699
|
- lib/fastlane/action_collector.rb
|
703
|
-
- lib/fastlane/actions/.DS_Store
|
704
700
|
- lib/fastlane/actions/README.md
|
705
701
|
- lib/fastlane/actions/actions_helper.rb
|
706
702
|
- lib/fastlane/actions/adb.rb
|
@@ -740,7 +736,6 @@ files:
|
|
740
736
|
- lib/fastlane/actions/delete_keychain.rb
|
741
737
|
- lib/fastlane/actions/deliver.rb
|
742
738
|
- lib/fastlane/actions/deploygate.rb
|
743
|
-
- lib/fastlane/actions/device_grid/.DS_Store
|
744
739
|
- lib/fastlane/actions/device_grid/README.md
|
745
740
|
- lib/fastlane/actions/dotgpg_environment.rb
|
746
741
|
- lib/fastlane/actions/download.rb
|
@@ -886,6 +881,7 @@ files:
|
|
886
881
|
- lib/fastlane/erb_template_helper.rb
|
887
882
|
- lib/fastlane/fast_file.rb
|
888
883
|
- lib/fastlane/fastlane_folder.rb
|
884
|
+
- lib/fastlane/features.rb
|
889
885
|
- lib/fastlane/helper/README.md
|
890
886
|
- lib/fastlane/helper/adb_helper.rb
|
891
887
|
- lib/fastlane/helper/crashlytics_helper.rb
|
@@ -902,7 +898,6 @@ files:
|
|
902
898
|
- lib/fastlane/new_action.rb
|
903
899
|
- lib/fastlane/one_off.rb
|
904
900
|
- lib/fastlane/other_action.rb
|
905
|
-
- lib/fastlane/plugins/.DS_Store
|
906
901
|
- lib/fastlane/plugins/plugin_fetcher.rb
|
907
902
|
- lib/fastlane/plugins/plugin_generator.rb
|
908
903
|
- lib/fastlane/plugins/plugin_generator_ui.rb
|
@@ -931,6 +926,7 @@ files:
|
|
931
926
|
- lib/fastlane/plugins/template/spec/%plugin_name%_action_spec.rb.erb
|
932
927
|
- lib/fastlane/plugins/template/spec/spec_helper.rb.erb
|
933
928
|
- lib/fastlane/runner.rb
|
929
|
+
- lib/fastlane/setup/crashlytics_beta.rb
|
934
930
|
- lib/fastlane/setup/setup.rb
|
935
931
|
- lib/fastlane/setup/setup_android.rb
|
936
932
|
- lib/fastlane/setup/setup_ios.rb
|
@@ -957,7 +953,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
957
953
|
version: '0'
|
958
954
|
requirements: []
|
959
955
|
rubyforge_project:
|
960
|
-
rubygems_version: 2.
|
956
|
+
rubygems_version: 2.5.1
|
961
957
|
signing_key:
|
962
958
|
specification_version: 4
|
963
959
|
summary: The easiest way to automate building and releasing your iOS and Android apps
|
data/lib/assets/.DS_Store
DELETED
Binary file
|
Binary file
|
data/lib/fastlane/.DS_Store
DELETED
Binary file
|
Binary file
|
Binary file
|
Binary file
|