fastlane-plugin-bundletool 1.0.8 → 1.0.10

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
2
  SHA256:
3
- metadata.gz: 0df0a840288a7028a5052aba0ab6beede179d3c7f8c8151c89ee5f6223779924
4
- data.tar.gz: 472c240a4018e1a22a91f14379944c8ecb764cf65c27792d7e30b966fb083943
3
+ metadata.gz: 22cb77c485e131d1f8b9128d298c5effc344d634469d710072927fee0be584ef
4
+ data.tar.gz: f78e42917e33f53a843f40bad59e3fc981f32ee29363701fd2cf7559f191e0ab
5
5
  SHA512:
6
- metadata.gz: 4640820cc8011541892f8979ccc870de5751d4f067d5ed74cfe6219317c09565b85f94b680dbc04b6e7952ef1b908f23792f7d9c04ba023ff2248293965a090d
7
- data.tar.gz: 5f9e32338638c28d7210bfbdc2ed100cac55f7ec7d66f6283c8d75e370e005b18bb1d2ad1e0e9d07b2272ce1592c3d038a43fc26822d4a3dd1a72bdabb444c31
6
+ metadata.gz: eb1f99005373b99554168e34d71331bcf6c4ae6461357ae7b90766df85139fb128d04f6de58e97aac58ebcf85149fec03d7f3e2c1b62d9d4dce08ff3ed07b3a0
7
+ data.tar.gz: e66c62ba7e0b16a3b773479f39a445615beb5502312b634108a6c9949000efc8b4a18dadad06a4bf30e12000621ea578a51e79d0c79d178964076a954dfe2fb1
data/README.md CHANGED
@@ -44,6 +44,24 @@ bundletool(
44
44
 
45
45
  This will output the universal `.apk` in the output path you set.
46
46
 
47
+ ## Options
48
+
49
+ | Key | Description | Env Var(s) | Default |
50
+ |-----------------------|---------------------------------------------------------|---------------------------------|---------|
51
+ | ks_path | Path to .jks file | FL_BUNDLETOOL_KEYSTORE_FILE | |
52
+ | ks_password | .jks password | FL_BUNDLETOOL_KEYSTORE_PASSWORD | |
53
+ | ks_key_alias | Alias for jks | FL_BUNDLETOOL_KEY_ALIAS | |
54
+ | ks_key_alias_password | Alias password for .jks | FL_BUNDLETOOL_KEY_PASSWORD | |
55
+ | bundletool_version | Version of bundletool to use, by default 0.11.0 will | FL_BUNDLETOOL_VERSION | 0.11.0 |
56
+ | | be used | | |
57
+ | download_url | Url to download bundletool from, should point to a jar | FL_BUNDLETOOL_DOWNLOAD_URL | |
58
+ | | file | | |
59
+ | aab_path | Path where the aab file is | FL_BUNDLETOOL_AAB_PATH | |
60
+ | apk_output_path | Path where the apk file is going to be placed | FL_BUNDLETOOL_APK_OUTPUT_PATH | . |
61
+ | verbose | Show every messages of the action | FL_BUNDLETOOL_VERBOSE | false |
62
+ | cache_path | Cache downloaded bundletool binary into the cache path | FL_BUNDLETOOL_CACHE_PATH | |
63
+ |-----------------------|---------------------------------------------------------|---------------------------------|---------|
64
+
47
65
  ## Use case
48
66
 
49
67
  Here you can find a post I did explaining why I have to create this action.
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'fastlane/action'
4
+ require 'shellwords'
4
5
  require_relative '../helper/bundletool_helper'
5
6
 
6
7
  module Fastlane
@@ -93,7 +94,10 @@ module Fastlane
93
94
  keystore_params = ''
94
95
 
95
96
  unless keystore_info.empty?
96
- keystore_params = "--ks='#{keystore_info[:keystore_path]}' --ks-pass='pass:#{keystore_info[:keystore_password]}' --ks-key-alias='#{keystore_info[:alias]}' --key-pass='pass:#{keystore_info[:alias_password]}'"
97
+ key_alias_password = Shellwords.shellescape("pass:#{keystore_info[:alias_password]}")
98
+ key_store_password = Shellwords.shellescape("pass:#{keystore_info[:keystore_password]}")
99
+ key_alias = Shellwords.shellescape(keystore_info[:alias])
100
+ keystore_params = "--ks=#{keystore_info[:keystore_path]} --ks-pass=#{key_store_password} --ks-key-alias=#{key_alias} --key-pass=#{key_alias_password}"
97
101
  end
98
102
 
99
103
  cmd = "java -jar #{installation_path}/#{bundletool_filename} build-apks --bundle=\"#{aab_path}\" --output=\"#{output_path}\" --mode=universal #{keystore_params}"
@@ -158,30 +162,37 @@ module Fastlane
158
162
  def self.available_options
159
163
  [
160
164
  FastlaneCore::ConfigItem.new(key: :ks_path,
165
+ env_name: 'FL_BUNDLETOOL_KEYSTORE_FILE',
161
166
  description: 'Path to .jks file',
162
167
  is_string: true,
163
168
  optional: true),
164
169
  FastlaneCore::ConfigItem.new(key: :ks_password,
170
+ env_name: 'FL_BUNDLETOOL_KEYSTORE_PASSWORD',
165
171
  description: '.jks password',
166
172
  is_string: true,
167
173
  optional: true),
168
174
  FastlaneCore::ConfigItem.new(key: :ks_key_alias,
175
+ env_name: 'FL_BUNDLETOOL_KEY_ALIAS',
169
176
  description: 'Alias for jks',
170
177
  is_string: true,
171
178
  optional: true),
172
179
  FastlaneCore::ConfigItem.new(key: :ks_key_alias_password,
180
+ env_name: 'FL_BUNDLETOOL_KEY_PASSWORD',
173
181
  description: 'Alias password for .jks',
174
182
  is_string: true,
175
183
  optional: true),
176
184
  FastlaneCore::ConfigItem.new(key: :bundletool_version,
185
+ env_name: 'FL_BUNDLETOOL_VERSION',
177
186
  description: 'Version of bundletool to use, by default 0.11.0 will be used',
178
187
  is_string: true,
179
188
  default_value: '0.11.0'),
180
189
  FastlaneCore::ConfigItem.new(key: :download_url,
190
+ env_name: 'FL_BUNDLETOOL_DOWNLOAD_URL',
181
191
  description: 'Url to download bundletool from, should point to a jar file',
182
192
  is_string: true,
183
193
  optional: true),
184
194
  FastlaneCore::ConfigItem.new(key: :aab_path,
195
+ env_name: 'FL_BUNDLETOOL_AAB_PATH',
185
196
  description: 'Path where the aab file is',
186
197
  is_string: true,
187
198
  optional: false,
@@ -191,21 +202,23 @@ module Fastlane
191
202
  end
192
203
  end),
193
204
  FastlaneCore::ConfigItem.new(key: :apk_output_path,
205
+ env_name: 'FL_BUNDLETOOL_APK_OUTPUT_PATH',
194
206
  description: 'Path where the apk file is going to be placed',
195
207
  is_string: true,
196
208
  optional: true,
197
209
  default_value: '.'),
198
210
  FastlaneCore::ConfigItem.new(key: :verbose,
211
+ env_name: 'FL_BUNDLETOOL_VERBOSE',
199
212
  description: 'Show every messages of the action',
200
213
  is_string: false,
201
214
  type: Boolean,
202
215
  optional: true,
203
216
  default_value: false),
204
- FastlaneCore::ConfigItem.new(key: :cache_path,
217
+ FastlaneCore::ConfigItem.new(key: :cache_path,
218
+ env_name: 'FL_BUNDLETOOL_CACHE_PATH',
205
219
  description: 'Cache downloaded bundletool binary into the cache path specified',
206
- is_string: true,
220
+ is_string: true,
207
221
  optional: true)
208
-
209
222
  ]
210
223
  end
211
224
 
@@ -239,7 +252,7 @@ module Fastlane
239
252
  puts_message("Using binary cached at #{installation_path}/#{bundletool_filename}")
240
253
  return
241
254
  end
242
-
255
+
243
256
  puts_message("Downloading bundletool from #{download_url}")
244
257
 
245
258
  URI.open(download_url) do |bundletool|
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module Bundletool
3
- VERSION = "1.0.8"
3
+ VERSION = "1.0.10"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-bundletool
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Gonzalez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-08 00:00:00.000000000 Z
11
+ date: 2024-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -136,6 +136,20 @@ dependencies:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: 2.137.0
139
+ - !ruby/object:Gem::Dependency
140
+ name: shellwords
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 0.2.0
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: 0.2.0
139
153
  description:
140
154
  email: gonzalez.martin90@gmail.com
141
155
  executables: []
@@ -168,7 +182,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
168
182
  - !ruby/object:Gem::Version
169
183
  version: '0'
170
184
  requirements: []
171
- rubygems_version: 3.1.6
185
+ rubygems_version: 3.2.3
172
186
  signing_key:
173
187
  specification_version: 4
174
188
  summary: Extracts a universal apk from an .aab file