fastlane-plugin-upload_dsym_to_bugly 1.1.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c6890daf60a91eca16e505063e9e6e599d79680307e9e23d21a16ede772960c7
4
- data.tar.gz: 639cd70717796f3ca31bae1da71fe45fa0fd817d0d6b1edd0833c324aaf26d8b
3
+ metadata.gz: 65de6ddc5662f5007981a2d2278f2b76202c31f02cc81fbecc63fdad691342fa
4
+ data.tar.gz: 4aacea3dc9ec749c160b0f507d5f2c34e271477e89a22456c408141ab7826693
5
5
  SHA512:
6
- metadata.gz: 1af9141f0defc121b425d75e1d31a67c04d5c653d9445d9c9b912ad34f9a945704b5008aad066c35ccf7382075b9ad1d6b0c5899eb00c047eb94fcd5e24d6585
7
- data.tar.gz: 7b5c79bfa3249f5f786b6efd77af7b9390cb59606ecdf80395ca9123ada0495ae49876eeda2ac3d462dc0ca67cea2010d5c84ba7f6e1e6ee0386a7f08752e023
6
+ metadata.gz: d4668daecd5ad5bd67bf87a4de8b50153beb44b59a85ac4cacd8453ce3d1d866ede2b123fec4be62daf4d2ebd5df68d17ba74c4daa44e87f74472433ddd5145c
7
+ data.tar.gz: c07121b824e52773f0b74e863dee3df2b1a026743296c948d07e59653028506b121d17a85a0c86766a3a303d8194519040cab5075f4f505deb3c73fa99b0e7a9
data/README.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  [![fastlane Plugin Badge](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-upload_dsym_to_bugly)
4
4
 
5
+
6
+ ## Note
7
+ 2021 年 6 月 28 日 开始,bugly 不再支持使用 openApi 的方式上传符号表,需要使用官方提供的命令行上传工具进行上传。
8
+ 本插件当前使用的工具版本为:__3.3.4__
9
+
10
+ 另外去除了上传 ipa 到 bugly 的 action。
11
+
5
12
  ## Getting Started
6
13
 
7
14
  This project is a [_fastlane_](https://github.com/fastlane/fastlane) plugin. To get started with `fastlane-plugin-upload_dsym_to_bugly`, add it to your project by running:
@@ -14,35 +21,14 @@ add the following to your `fastfile`
14
21
  ```ruby
15
22
  lane :upload_dysm do
16
23
  upload_dsym_to_bugly(
17
- file_path: "<your dSYM.zip path>/<your dSYM.zip name>",
18
- file_name: "<your dSYM.zip name>",
24
+ file_path: "<path/to/your/x.app.dSYM.zip",
19
25
  app_key: "<your app_key>",
20
26
  app_id:"<your app_id>",
21
- api_version: 1,
22
- symbol_type: 2, # iOS => 2, Android => 1
23
27
  bundle_id: '<your bundle id>',
24
- product_version: get_version_number
25
- )
26
- end
27
- ```
28
-
29
- if you want to upload your ipa to bugly, add the following to your `fastfile`
30
- ```ruby
31
- lane :upload_app do
32
- upload_app_to_bugly(
33
- file_path:"<your *.ipa filepath>",
34
- app_key:"<your app_key>",
35
- app_id:"<your app_id>",
36
- pid:"2",
37
- title:"<title>",
38
- desc:"<description>",
39
- secret:"<secret>",
40
- users:"<users>",
41
- password:"<password>",
42
- download_limit:download_limit
28
+ version: get_version_number,
29
+ raise_if_error: false
43
30
  )
44
31
  end
45
-
46
32
  ```
47
33
 
48
34
  ## About upload_dsym_to_bugly
@@ -1,5 +1,6 @@
1
1
  require "fastlane/action"
2
2
  require_relative "../helper/upload_dsym_to_bugly_helper"
3
+ require 'fileutils'
3
4
 
4
5
  module Fastlane
5
6
  module Actions
@@ -8,48 +9,47 @@ module Fastlane
8
9
  end
9
10
  class UploadDsymToBuglyAction < Action
10
11
  def self.run(params)
11
- require "json"
12
- # fastlane will take care of reading in the parameter and fetching the environment variable:
13
- UI.message "file path: #{params[:file_path]}"
14
12
 
15
- json_file = "upload_dsym_to_bugly_result.json"
13
+ jar_path = File.expand_path('../../jars/buglyqq-upload-symbol-3.3.4.jar', __FILE__)
14
+ UI.message "jar path: #{jar_path}"
16
15
 
17
- begin
18
- api_version = ""
19
- if !params[:api_version].nil? && params[:api_version] > 0
20
- api_version = " --form \"api_version=#{params[:api_version]}\" "
21
- UI.message "api_version: #{api_version}"
22
- end
23
- rescue Exception => e
24
- UI.message "error at checking api version, caused by #{e}"
16
+ file_path = File.expand_path("#{params[:file_path]}")
17
+ UI.message "file path: #{file_path}"
18
+
19
+ unzip_path = File.expand_path(".upload_dsym_to_bugly_tmp", "#{File.dirname("#{file_path}")}")
20
+ UI.message "unzip path: #{unzip_path}"
21
+
22
+ if Dir.exist?(unzip_path)
23
+ FileUtils.rm_r(unzip_path, force: true)
25
24
  end
26
25
 
27
- begin
28
- channel = ""
29
- if !params[:channel].nil? && !params[:channel].empty?
30
- channel = " --form \"channel=#{params[:channel]}\" "
31
- UI.message "channel: #{channel}"
32
- end
33
- rescue Exception => e
34
- UI.message "error at checking api version, caused by #{e}"
26
+ if !Dir.glob(file_path).empty?
27
+ sh("unzip -o #{file_path} -d #{unzip_path}")
28
+ else
29
+ UI.message "dSYM zip File don't exist"
30
+ Actions.lane_context[SharedValues::UPLOAD_DSYM_TO_BUGLY_RESULT] = false
31
+ raise if params[:raise_if_error]
35
32
  end
33
+ cmd = "java -jar #{jar_path} -appid #{params[:app_id]} -appkey #{params[:app_key]} -bundleid #{params[:bundle_id]} -version #{params[:version]} -platform #{params[:platform]} -inputSymbol #{unzip_path}"
34
+
35
+ log_file = "dSYM_upload_result.log"
36
36
 
37
- cmd = "curl -k \"https://api.bugly.qq.com/openapi/file/upload/symbol?app_key=#{params[:app_key]}&app_id=#{params[:app_id]}\"" + api_version + " --form \"app_id=#{params[:app_id]}\"" + " --form \"app_key=#{params[:app_key]}\"" + " --form \"symbolType=#{params[:symbol_type]}\"" + " --form \"bundleId=#{params[:bundle_id]}\"" + " --form \"productVersion=#{params[:product_version]}\"" + channel + " --form \"fileName=#{params[:file_name]}\"" + " --form \"file=@#{params[:file_path]}\"" + " -o " + json_file
38
37
  begin
39
- sh(cmd)
40
- obj = JSON.parse(File.read(json_file))
41
- `rm upload_dsym_to_bugly_result.json`
42
- ret = obj["rtcode"]
43
- if ret == 0
44
- UI.message "dSYM upload success"
38
+ sh("#{cmd} > #{log_file}")
39
+ last_line = sh("tail -n 1 #{log_file}")
40
+
41
+ success = last_line.include?("retCode: 200") and last_line.include?("\"msg\":\"success\"")
42
+ if success
43
+ UI.message "dSYM upload successfully 🎉 "
45
44
  Actions.lane_context[SharedValues::UPLOAD_DSYM_TO_BUGLY_RESULT] = true
46
45
  else
47
- UI.message "dSYM upload failed, result is #{obj}"
46
+ UI.message "dSYM upload failed: #{last_line}"
48
47
  Actions.lane_context[SharedValues::UPLOAD_DSYM_TO_BUGLY_RESULT] = false
49
- raise if params[:raise_if_error]
48
+ raise if params[:raise_if_error]
50
49
  end
51
- rescue
52
- UI.message "dSYM upload failed"
50
+
51
+ rescue => exception
52
+ UI.message "dSYM upload failed, See log output above"
53
53
  Actions.lane_context[SharedValues::UPLOAD_DSYM_TO_BUGLY_RESULT] = false
54
54
  raise if params[:raise_if_error]
55
55
  end
@@ -74,77 +74,60 @@ module Fastlane
74
74
 
75
75
  def self.available_options
76
76
  [
77
- FastlaneCore::ConfigItem.new(key: :api_version,
78
- env_name: "FL_UPLOAD_DSYM_TO_BUGLY_API_VERSION",
79
- description: "api version for UploadDsymToBuglyAction",
80
- is_string: false,
81
- default_value: 1),
82
77
  FastlaneCore::ConfigItem.new(key: :app_id,
83
78
  env_name: "FL_UPLOAD_DSYM_TO_BUGLY_APP_ID",
84
- description: "app id for UploadDsymToBuglyAction",
79
+ description: "app id",
85
80
  is_string: true,
86
81
  verify_block: proc do |value|
87
82
  UI.user_error!("No APP id for UploadDsymToBuglyAction given, pass using `app_id: 'app_id'`") unless (value and not value.empty?)
88
83
  end),
89
84
  FastlaneCore::ConfigItem.new(key: :app_key,
90
85
  env_name: "FL_UPLOAD_DSYM_TO_BUGLY_APP_KEY",
91
- description: "app key for UploadDsymToBuglyAction",
86
+ description: "app key",
92
87
  is_string: true,
93
88
  verify_block: proc do |value|
94
89
  UI.user_error!("No APP key for UploadDsymToBuglyAction given, pass using `api_key: 'app_key'`") unless (value and not value.empty?)
95
90
  end),
96
- FastlaneCore::ConfigItem.new(key: :symbol_type,
97
- env_name: "FL_UPLOAD_DSYM_TO_BUGLY_SYMBOL_TYPE",
98
- description: "symbol type for UploadDsymToBuglyAction",
99
- is_string: false,
100
- verify_block: proc do |value|
101
- UI.user_error!("No symbol type for UploadDsymToBuglyAction given, pass using `symbol_type: 'symbol_type'`") unless (value and not value.to_s.empty?)
102
- end),
103
91
  FastlaneCore::ConfigItem.new(key: :bundle_id,
104
92
  env_name: "FL_UPLOAD_DSYM_TO_BUGLY_BUNDLE_ID",
105
- description: "bundle id for UploadDsymToBuglyAction",
93
+ description: "bundle id",
106
94
  is_string: true,
107
95
  verify_block: proc do |value|
108
96
  UI.user_error!("No symbol type for UploadDsymToBuglyAction given, pass using `bundle_id: 'bundle_id'`") unless (value and not value.empty?)
109
97
  end),
110
- FastlaneCore::ConfigItem.new(key: :product_version,
111
- env_name: "FL_UPLOAD_DSYM_TO_BUGLY_PRODEUCT_VERSION",
112
- description: "product version for UploadDsymToBuglyAction",
98
+ FastlaneCore::ConfigItem.new(key: :version,
99
+ env_name: "FL_UPLOAD_DSYM_TO_BUGLY_VERSION",
100
+ description: "app version",
113
101
  is_string: true,
114
102
  verify_block: proc do |value|
115
- UI.user_error!("No symbol type for UploadDsymToBuglyAction given, pass using `product_version: 'product_version'`") unless (value and not value.empty?)
116
- end),
117
- FastlaneCore::ConfigItem.new(key: :channel,
118
- env_name: "FL_UPLOAD_DSYM_TO_BUGLY_CHANNEL",
119
- description: "channel for UploadDsymToBuglyAction",
120
- is_string: true,
121
- default_value: "fastlane"),
122
- FastlaneCore::ConfigItem.new(key: :file_name,
123
- env_name: "FL_UPLOAD_DSYM_TO_BUGLY_FILE_NAME",
124
- description: "file name for UploadDsymToBuglyAction",
125
- is_string: true,
126
- verify_block: proc do |value|
127
- UI.user_error!("No symbol type for UploadDsymToBuglyAction given, pass using `file_name: 'file_name'`") unless (value and not value.empty?)
103
+ UI.user_error!("No symbol type for UploadDsymToBuglyAction given, pass using `version: 'version'`") unless (value and not value.empty?)
128
104
  end),
129
105
  FastlaneCore::ConfigItem.new(key: :file_path,
130
106
  env_name: "FL_UPLOAD_DSYM_TO_BUGLY_FILE",
131
- description: "file for UploadDsymToBuglyAction",
107
+ description: "file path",
132
108
  is_string: true,
133
109
  verify_block: proc do |value|
134
110
  UI.user_error!("No symbol type for UploadDsymToBuglyAction given, pass using `file_path: 'file_path'`") unless (value and not value.empty?)
135
111
  end),
112
+ FastlaneCore::ConfigItem.new(key: :platform,
113
+ env_name: "FL_UPLOAD_DSYM_TO_BUGLY_FILE",
114
+ description: "platform",
115
+ is_string: true,
116
+ default_value: "IOS",
117
+ verify_block: proc do |value|
118
+ UI.user_error!("platform value error, available values: IOS, Android") unless (value == "IOS" or value == "Android")
119
+ end),
136
120
  FastlaneCore::ConfigItem.new(key: :raise_if_error,
137
121
  env_name: "FL_UPLOAD_DSYM_TO_BUGLY_RAISE_IF_ERROR",
138
122
  description: "Raises an error if fails, so you can fail CI/CD jobs if necessary \(true/false)",
139
123
  default_value: true,
140
124
  is_string: false,
141
125
  type: Boolean,
142
- optional: false),
126
+ optional: false)
143
127
  ]
144
128
  end
145
129
 
146
130
  def self.output
147
- # Define the shared values you are going to provide
148
131
  [
149
132
  ["UPLOAD_DSYM_TO_BUGLY_RESULT", "upload result"],
150
133
  ]
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module UploadDsymToBugly
3
- VERSION = "1.1.2"
3
+ VERSION = "2.0.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-upload_dsym_to_bugly
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - liubo
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-31 00:00:00.000000000 Z
11
+ date: 2021-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -136,7 +136,7 @@ dependencies:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: 2.108.0
139
- description:
139
+ description:
140
140
  email: liubo004@126.com
141
141
  executables: []
142
142
  extensions: []
@@ -145,15 +145,15 @@ files:
145
145
  - LICENSE
146
146
  - README.md
147
147
  - lib/fastlane/plugin/upload_dsym_to_bugly.rb
148
- - lib/fastlane/plugin/upload_dsym_to_bugly/actions/upload_app_to_bugly_action.rb
149
148
  - lib/fastlane/plugin/upload_dsym_to_bugly/actions/upload_dsym_to_bugly_action.rb
150
149
  - lib/fastlane/plugin/upload_dsym_to_bugly/helper/upload_dsym_to_bugly_helper.rb
150
+ - lib/fastlane/plugin/upload_dsym_to_bugly/jars/buglyqq-upload-symbol-3.3.4.jar
151
151
  - lib/fastlane/plugin/upload_dsym_to_bugly/version.rb
152
152
  homepage: https://github.com/srv7/fastlane-plugin-upload_dsym_to_bugly
153
153
  licenses:
154
154
  - MIT
155
155
  metadata: {}
156
- post_install_message:
156
+ post_install_message:
157
157
  rdoc_options: []
158
158
  require_paths:
159
159
  - lib
@@ -169,7 +169,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
169
169
  version: '0'
170
170
  requirements: []
171
171
  rubygems_version: 3.1.2
172
- signing_key:
172
+ signing_key:
173
173
  specification_version: 4
174
174
  summary: upload_dsym_to_bugly
175
175
  test_files: []
@@ -1,201 +0,0 @@
1
- require "fastlane/action"
2
- require_relative "../helper/upload_dsym_to_bugly_helper"
3
-
4
- module Fastlane
5
- module Actions
6
- module SharedValues
7
- UPLOAD_APP_TO_BUGLY_DOWNLOAD_URL = :UPLOAD_APP_TO_BUGLY_DOWNLOAD_URL
8
- end
9
-
10
- # To share this integration with the other fastlane users:
11
- # - Fork https://github.com/fastlane/fastlane/tree/master/fastlane
12
- # - Clone the forked repository
13
- # - Move this integration into lib/fastlane/actions
14
- # - Commit, push and submit the pull request
15
-
16
- class UploadAppToBuglyAction < Action
17
- def self.run(params)
18
- require "json"
19
- # fastlane will take care of reading in the parameter and fetching the environment variable:
20
- UI.message "file path: #{params[:file_path]}"
21
-
22
- json_file = "upload_app_to_bugly_result.json"
23
-
24
- begin
25
- secret = ""
26
- if !params[:secret].to_s.nil? && !params[:secret].empty?
27
- secret = " -F \"secret=#{params[:secret]}\" "
28
- UI.message "secret:#{secret}"
29
- end
30
- rescue Exception => e
31
- UI.message "error at checking secret,caused by #{e}"
32
- return
33
- end
34
-
35
- begin
36
- users = ""
37
- if !params[:users].nil? && !params[:users].empty?
38
- users = " -F \"users=#{params[:users]}\" "
39
- UI.message "users:#{users}"
40
- end
41
- rescue Exception => e
42
- UI.message "error at checking users,caused by #{e}"
43
- return
44
- end
45
-
46
- begin
47
- password = ""
48
- if !params[:password].nil? && !params[:password].empty?
49
- password = " -F \"password=#{params[:password]}\" "
50
- UI.message "password:#{password}"
51
- end
52
- rescue Exception => e
53
- UI.message "error at checking password,caused by #{e}"
54
- return
55
- end
56
-
57
- begin
58
- download_limit = ""
59
- if !params[:download_limit].nil? && params[:download_limit] > 0
60
- download_limit = " -F \"download_limit=#{params[:download_limit]}\" "
61
- UI.message "download_limit:#{download_limit}"
62
- end
63
- rescue Exception => e
64
- UI.message "error at checking download_limit,caused by #{e}"
65
- return
66
- end
67
-
68
- cmd = "curl --insecure -F \"file=@#{params[:file_path]}\" -F \"app_id=#{params[:app_id]}\" -F \"pid=#{params[:pid]}\" -F \"title=#{params[:title]}\" -F \"description=#{params[:desc]}\"" + secret + users + password + download_limit + " https://api.bugly.qq.com/beta/apiv1/exp?app_key=#{params[:app_key]} -o " + json_file
69
- begin
70
- sh(cmd)
71
- obj = JSON.parse(File.read(json_file))
72
- `rm upload_dsym_to_bugly_result.json`
73
- ret = obj["rtcode"]
74
- if ret == 0
75
- UI.message "upload success"
76
- url = obj["data"]["url"]
77
- Actions.lane_context[SharedValues::UPLOAD_APP_TO_BUGLY_DOWNLOAD_URL] = url
78
- UI.message "upload success, link: #{url}"
79
- else
80
- UI.message "upload failed,result is #{obj}"
81
- raise if params[:raise_if_error]
82
- end
83
- rescue
84
- UI.message "upload failed"
85
- raise if params[:raise_if_error]
86
- end
87
- end
88
-
89
- #####################################################
90
- # @!group Documentation
91
- #####################################################
92
-
93
- def self.description
94
- "upload_app_to_bugly"
95
- end
96
-
97
- def self.details
98
- # Optional:
99
- # this is your chance to provide a more detailed description of this action
100
- "You can use this action to do cool things..."
101
- end
102
-
103
- def self.available_options
104
- # Define all options your action supports.
105
-
106
- # Below a few examples
107
- [
108
- FastlaneCore::ConfigItem.new(key: :file_path,
109
- env_name: "FL_UPLOAD_APP_TO_BUGLY_FILE_PATH",
110
- description: "file path for UploadAppToBuglyAction",
111
- is_string: true,
112
- verify_block: proc do |value|
113
- UI.user_error!("No file path for UploadAppToBuglyAction given, pass using `file_path: 'path'`") unless value && !value.empty?
114
- UI.user_error!("Couldn't find file at path '#{value}'") unless File.exist?(value)
115
- end),
116
- FastlaneCore::ConfigItem.new(key: :app_key,
117
- env_name: "FL_UPLOAD_APP_TO_BUGLY_APP_KEY",
118
- description: "app key for UploadAppToBuglyAction",
119
- is_string: true,
120
- verify_block: proc do |value|
121
- UI.user_error!("NO app_key for UploadAppToBuglyAction given, pass using `app_key: 'app_key'`") unless value && !value.empty?
122
- end),
123
- FastlaneCore::ConfigItem.new(key: :app_id,
124
- env_name: "FL_UPLOAD_APP_TO_BUGLY_APP_ID",
125
- description: "app id for UploadAppToBuglyAction",
126
- is_string: true,
127
- verify_block: proc do |value|
128
- UI.user_error!("No app_id for UploadAppToBuglyAction given, pass using `app_id: 'app_id'`") unless value && !value.empty?
129
- end),
130
- FastlaneCore::ConfigItem.new(key: :pid,
131
- env_name: "FL_UPLOAD_APP_TO_BUGLY_PID",
132
- description: "pid for UploadToBuglyAction",
133
- is_string: true,
134
- verify_block: proc do |value|
135
- UI.user_error!("No pid for UploadAppToBuglyAction given, pass using `pid: 'pid'`") unless value && !value.empty?
136
- end),
137
- FastlaneCore::ConfigItem.new(key: :title,
138
- env_name: "FL_UPLOAD_APP_TO_BUGLY_TITLE",
139
- description: "title for UploadAppToBuglyAction",
140
- is_string: true,
141
- default_value: "title",
142
- verify_block: proc do |value|
143
- UI.user_error!("No title for UploadAppToBuglyAction given, pass using `title: 'title'`") unless value && !value.empty?
144
- end),
145
- FastlaneCore::ConfigItem.new(key: :desc,
146
- env_name: "FL_UPLOAD_APP_TO_BUGLY_DESC",
147
- description: "desc for UploadAppToBuglyAction",
148
- is_string: true,
149
- default_value: "desc"),
150
- FastlaneCore::ConfigItem.new(key: :secret,
151
- env_name: "FL_UPLOAD_APP_TO_BUGLY_SECRET",
152
- description: "secret for UploadAppToBuglyAction",
153
- is_string: true,
154
- default_value: ""),
155
- FastlaneCore::ConfigItem.new(key: :users,
156
- env_name: "FL_UPLOAD_APP_TO_BUGLY_USERS",
157
- description: "users for UploadAppToBuglyAction",
158
- is_string: true,
159
- default_value: ""),
160
- FastlaneCore::ConfigItem.new(key: :password,
161
- env_name: "FL_UPLOAD_APP_TO_BUGLY_PASSWORD",
162
- description: "password for UploadAppToBuglyAction",
163
- is_string: true,
164
- default_value: ""),
165
- FastlaneCore::ConfigItem.new(key: :download_limit,
166
- env_name: "FL_UPLOAD_APP_TO_BUGLY_DOWNLOAD_LIMIT",
167
- description: "download_limit for UploadAppToBuglyAction",
168
- is_string: false, # true: verifies the input is a string, false: every kind of value
169
- default_value: 10_000),
170
- FastlaneCore::ConfigItem.new(key: :raise_if_error,
171
- env_name: "FL_UPLOAD_APP_TO_BUGLY_RAISE_IF_ERROR",
172
- description: "Raises an error if fails, so you can fail CI/CD jobs if necessary \(true/false)",
173
- default_value: true,
174
- is_string: false,
175
- type: Boolean,
176
- optional: false),
177
- ]
178
- end
179
-
180
- def self.output
181
- # Define the shared values you are going to provide
182
- [
183
- ["UPLOAD_APP_TO_BUGLY_DOWNLOAD_URL", "download url"],
184
- ]
185
- end
186
-
187
- def self.return_value
188
- # If you method provides a return value, you can describe here what it does
189
- end
190
-
191
- def self.authors
192
- # So no one will ever forget your contribution to fastlane :) You are awesome btw!
193
- ["liubo"]
194
- end
195
-
196
- def self.is_supported?(platform)
197
- platform == :ios
198
- end
199
- end
200
- end
201
- end