fastlane-plugin-get_product_bundle_id 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: f9d7bd1c545bb78f26d5019f89beb9db68973c7c
4
- data.tar.gz: 8b8ddf10dd65734269109dd2fe6d5d5070c8f8ef
2
+ SHA256:
3
+ metadata.gz: dca2632f38f39debc967aaaaa0cdb27e046a84b9540839b60f7814f353a8bd56
4
+ data.tar.gz: 5dbb17053dba865a1137bf8bf0e50f08b45b6b274afb63f7e25c09dc977df1d4
5
5
  SHA512:
6
- metadata.gz: 76b956ef645ffea0b36e48d4bab9e0b875d6300e68bfa0bd9fb2b0b0407ea4844578fb4281b3864594a2c2e17c5ffb2644c0f46a77a3250be48ef8c916b06286
7
- data.tar.gz: 573f46b8bbdffa4387aef55e4894761e9b19fcd24b011745b215429c14e1da89d37806d1b391bbf826c3502f78e94a327265b9e091e730720bb53b4a3b400ee3
6
+ metadata.gz: bdf658403aec57899556e26053c4018ba698dd40c72146ddce9bdc47f0320ddd6fe8bb58d3449135b1a5c50a2911b7f46a7d9e41093ea6f51ddf423d676d7010
7
+ data.tar.gz: 875ddcc966a322154272f0e9147de2c6d4c23b27651e978bb816b0a4fbda2b18a36ddc58a562b90ed49ef9b1822c1eb0f7156a612f7a4065d5aebb48827dc84e
@@ -5,21 +5,36 @@ module Fastlane
5
5
 
6
6
  def self.run(params)
7
7
  projectpath = params[:project_filepath]
8
- project = Xcodeproj::Project.open(projectpath)
9
- scheme = project.native_targets.find { |target| target.name == params[:scheme] }
10
-
11
- UI.user_error!("Scheme '#{params[:scheme]}' does not exist in the given project") if scheme.nil?
8
+ scheme = xcscheme(params)
9
+ target_uuids = scheme.build_action.entries.first.buildable_references.map(&:target_uuid)
12
10
 
11
+ project = Xcodeproj::Project.open(projectpath)
12
+ targets = project.targets.find_all { |t| target_uuids.include?(t.uuid) }
13
13
  if params[:target].nil?
14
- build_configuration = scheme.build_configurations.first
14
+ build_configuration = targets.first.build_configurations.first
15
15
  else
16
- build_configuration = scheme.build_configurations.find { |target| target.name == params[:target] }
16
+ target = targets.find { |t| t.name == params[:target] }
17
17
 
18
- UI.user_error!("Target '#{params[:target]}' does not exist in the given scheme") if build_configuration.nil?
18
+ UI.user_error!("Target '#{params[:target]}' does not exist in the given scheme") if target.nil?
19
+
20
+ build_configuration = target.build_configurations.first
19
21
  end
20
22
  build_configuration.build_settings['PRODUCT_BUNDLE_IDENTIFIER']
21
23
  end
22
24
 
25
+ def self.xcscheme(params)
26
+ projectpath = params[:project_filepath]
27
+
28
+ scheme_paths = Dir.glob("#{projectpath}/xcshareddata/xcschemes/#{params[:scheme]}.xcscheme")
29
+ if scheme_paths.empty?
30
+ scheme_paths = Dir.glob("#{projectpath}/xcuserdata/xcschemes/#{params[:scheme]}.xcscheme")
31
+ end
32
+ UI.user_error!("Scheme '#{params[:scheme]}' does not exist in the given project") if scheme_paths.empty?
33
+
34
+ scheme_path = scheme_paths.first
35
+ Xcodeproj::XCScheme.new(scheme_path)
36
+ end
37
+
23
38
  def self.description
24
39
  "Gets PRODUCT_BUNDLE_IDENTIFIER from a buildable target in an Xcode project using a provided scheme"
25
40
  end
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module GetProductBundleId
3
- VERSION = "0.1.2"
3
+ VERSION = "0.1.3"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-get_product_bundle_id
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lyndsey Ferguson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-27 00:00:00.000000000 Z
11
+ date: 2019-08-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xcodeproj
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: pry-byebug
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: bundler
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -109,7 +123,7 @@ dependencies:
109
123
  - !ruby/object:Gem::Version
110
124
  version: 2.18.3
111
125
  description:
112
- email: lyndsey.ferguson@gmail.com
126
+ email: ldf.public+github@outlook.com
113
127
  executables: []
114
128
  extensions: []
115
129
  extra_rdoc_files: []
@@ -139,8 +153,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
139
153
  - !ruby/object:Gem::Version
140
154
  version: '0'
141
155
  requirements: []
142
- rubyforge_project:
143
- rubygems_version: 2.5.2
156
+ rubygems_version: 3.0.2
144
157
  signing_key:
145
158
  specification_version: 4
146
159
  summary: Gets PRODUCT_BUNDLE_IDENTIFIER from the first buildable target in a given