fastlane-plugin-lambdatest 0.1.6 → 0.1.8
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:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '0904dd72df4f837c5ed44f1e39bacacbbb10a87d191b7ea60b9fb2f84fc407d1'
|
|
4
|
+
data.tar.gz: 1f67880f158c86feb45be918c00dff96cbb8517dc0671cabf36947893855b7ed
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 02cef93a9d104f94bc69d3999be383d99cce19a45e50fc9c8c97c3afe511c329b7f771e9308de808f6fafb12ff9f0bfbd9cdd41eff87007f04a37bb18cac7e06
|
|
7
|
+
data.tar.gz: d7204a4d2edf5c9e5b0fd251aa73ffdaef7bcdad36e31e51fb25f3266b86f8d0a35be8d2a0ced2db366fcba0eb82f04dfe836058b658d1b607c5b96181260057
|
data/README.md
CHANGED
|
@@ -29,7 +29,7 @@ upload_to_lambdatest(
|
|
|
29
29
|
|---------------------|------------------------------------|----------|----------------
|
|
30
30
|
| `lt_username` | LambdaTest username (from ENV) | ✅ Yes | N/A |
|
|
31
31
|
| `lt_access_key` | LambdaTest access key (from ENV) | ✅ Yes | N/A |
|
|
32
|
-
| `file_path` | Path to the app file |
|
|
32
|
+
| `file_path` | Path to the app file | ❌ No | Output of `gym` (iOS) or `gradle` APK/AAB (Android) in the same lane |
|
|
33
33
|
| `app_name` | App Name | ❌ No | "app" |
|
|
34
34
|
| `visibility` | Visibility | ❌ No | "individual" |
|
|
35
35
|
| `is_real_device` | Real Device or Virual Device | ❌ No | true |
|
|
@@ -9,7 +9,7 @@ module Fastlane
|
|
|
9
9
|
end
|
|
10
10
|
class UploadToLambdatestAction < Action
|
|
11
11
|
|
|
12
|
-
SUPPORTED_EXTENSIONS = ["apk", "ipa", "aab"]
|
|
12
|
+
SUPPORTED_EXTENSIONS = ["apk", "ipa", "aab", "zip"]
|
|
13
13
|
|
|
14
14
|
def self.run(params)
|
|
15
15
|
lt_username = params[:lt_username] # Required
|
|
@@ -23,9 +23,9 @@ module Fastlane
|
|
|
23
23
|
|
|
24
24
|
api_endpoint = self.get_api_endpoint(is_real_device)
|
|
25
25
|
|
|
26
|
-
self.validate_file_path(file_path)
|
|
26
|
+
self.validate_file_path(file_path, is_real_device)
|
|
27
27
|
|
|
28
|
-
UI.message("Started Uploading app to Lambdatest...")
|
|
28
|
+
UI.message("Started Uploading app " + file_path + " to Lambdatest...")
|
|
29
29
|
|
|
30
30
|
lt_app_url = Helper::LambdatestHelper.upload_file(lt_username, lt_access_key, file_path, api_endpoint, custom_id, app_name, visibility, ios_keychain_enabled)
|
|
31
31
|
|
|
@@ -50,9 +50,13 @@ module Fastlane
|
|
|
50
50
|
end
|
|
51
51
|
|
|
52
52
|
# Validating file_path and extension.
|
|
53
|
-
def self.validate_file_path(file_path)
|
|
53
|
+
def self.validate_file_path(file_path, is_real_device)
|
|
54
|
+
UI.user_error!("No app file found. Pass file_path, or build the app with gradle or gym in the same lane ❌ .") if file_path.empty?
|
|
54
55
|
UI.user_error!("file not found at '#{file_path}' ❌ .") unless File.exist?(file_path)
|
|
55
56
|
file_path_parts = file_path.split(".")
|
|
57
|
+
if file_path_parts.last == "zip" && is_real_device
|
|
58
|
+
UI.user_error!("Uploading zip files is only supported for virtual devices. Please set is_real_device to false.")
|
|
59
|
+
end
|
|
56
60
|
unless file_path_parts.length > 1 && SUPPORTED_EXTENSIONS.include?(file_path_parts.last)
|
|
57
61
|
UI.user_error!("Invalid file extension, only files with extensions " + SUPPORTED_EXTENSIONS.to_s + " are allowed to be uploaded.")
|
|
58
62
|
end
|
|
@@ -67,7 +71,7 @@ module Fastlane
|
|
|
67
71
|
end
|
|
68
72
|
|
|
69
73
|
def self.details
|
|
70
|
-
"Uploads IPA and
|
|
74
|
+
"Uploads IPA, APK and AAB files to Lambdatest for test."
|
|
71
75
|
end
|
|
72
76
|
|
|
73
77
|
def self.default_file_path
|
|
@@ -76,8 +80,10 @@ module Fastlane
|
|
|
76
80
|
# Shared value for ipa path if it was generated by gym https://docs.fastlane.tools/actions/gym/.
|
|
77
81
|
return Actions.lane_context[Actions::SharedValues::IPA_OUTPUT_PATH]
|
|
78
82
|
else
|
|
79
|
-
# Shared value for apk if it was generated by gradle.
|
|
80
|
-
|
|
83
|
+
# Shared value for apk or aab if it was generated by gradle; the newer file wins, apk on a tie.
|
|
84
|
+
apk_path = Actions.lane_context[Actions::SharedValues::GRADLE_APK_OUTPUT_PATH]
|
|
85
|
+
aab_path = Actions.lane_context[Actions::SharedValues::GRADLE_AAB_OUTPUT_PATH]
|
|
86
|
+
return [apk_path, aab_path].compact.max_by { |path| File.exist?(path) ? File.mtime(path) : Time.at(0) }
|
|
81
87
|
end
|
|
82
88
|
end
|
|
83
89
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fastlane-plugin-lambdatest
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- LambdaTest
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-10-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rest-client
|
|
@@ -190,5 +190,5 @@ requirements: []
|
|
|
190
190
|
rubygems_version: 3.1.2
|
|
191
191
|
signing_key:
|
|
192
192
|
specification_version: 4
|
|
193
|
-
summary: fastlane plugin to upload app to
|
|
193
|
+
summary: fastlane plugin to upload app to TestMu AI (Formerly LambdaTest).
|
|
194
194
|
test_files: []
|