fastlane-plugin-saucectl 0.1.4 → 0.1.5
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: 637b1e3c3ccf3d188af05d598d348dff048e3877d5ac2ae1a16cf1829c299a3b
|
4
|
+
data.tar.gz: 4db08970b9bd2638bae2aabfda7eddbc753e0820fcbebdf4357676affb172f1b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da201db10c50520c11c47eaf262c6e31cc7d62deb51d3e66e0abd740fb691f46b9ab28d8cc2afc2e480621d537403fef298f2f1080398054a7bbabc8bb070c1b
|
7
|
+
data.tar.gz: 556f168359742f5243d45a98af0ee7c4770172f7df174a17e43ba7824a3b8b0978ce26978f47c558e9f4afd65aa2cb5f749e40b1224a83907aa5deb912689fb7
|
data/README.md
CHANGED
@@ -14,16 +14,16 @@ fastlane add_plugin saucectl
|
|
14
14
|
|
15
15
|
## About fastlane-plugin-saucectl
|
16
16
|
|
17
|
-
The purpose of this plugin is to simplify the set
|
17
|
+
The purpose of this plugin is to simplify the set-up, configuration, upload, and execution of espresso and XCUITest on the Sauce Labs platform by utilizing fastlane which will enable you to test your iOS and Android apps at scale.
|
18
18
|
|
19
|
-
**IMPORTANT:** To use this plugin to execute UI tests on Sauce Labs, your test class names must proceed with `Spec`, `Specs`, `Tests`, or `Test`, for example `ExampleSpec`, `ExampleSpecs`, `ExampleTest`, or `ExampleTests`. Your test case names must also begin with `test`, for example `testIDoSomething`, `testIDoSomethingElse`. This is so that the
|
19
|
+
**IMPORTANT:** To use this plugin to execute UI tests on Sauce Labs, your test class names must proceed with `Spec`, `Specs`, `Tests`, or `Test`, for example `ExampleSpec`, `ExampleSpecs`, `ExampleTest`, or `ExampleTests`. Your test case names must also begin with `test`, for example `testIDoSomething`, `testIDoSomethingElse`. This is so that the plugin can search for test classes and their included test cases.
|
20
20
|
|
21
21
|
Failure to do this will result in missing test classes and test cases from your test run.
|
22
22
|
|
23
23
|
**For a detailed introduction to each of the actions available within this plugin, please see the [documentation](https://ianrhamilton.github.io/fastlane-plugin-saucectl/#fastlane-plugin-saucectl)**.
|
24
24
|
|
25
|
-
| Available Actions
|
26
|
-
|
25
|
+
| Available Actions | Description |
|
26
|
+
|-----------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
27
27
|
| `install_saucectl` | Downloads the Sauce Labs saucectl cli binary for test execution. Optionally specify the [version](https://github.com/saucelabs/saucectl/releases/) you wish to install or automatically download the latest. |
|
28
28
|
| `sauce_upload` | Upload test artifacts to sauce labs storage |
|
29
29
|
| `sauce_config` | Create SauceLabs configuration file for test execution based on given parameters |
|
@@ -79,6 +79,14 @@ module Fastlane
|
|
79
79
|
type: String,
|
80
80
|
verify_block: proc do |value|
|
81
81
|
UI.user_error!(@messages['sauce_api_key_error']) unless value && !value.empty?
|
82
|
+
end),
|
83
|
+
FastlaneCore::ConfigItem.new(key: :app_description,
|
84
|
+
description: "A description of the artifact (optional, 1-255 chars)",
|
85
|
+
optional: true,
|
86
|
+
is_string: true,
|
87
|
+
type: String,
|
88
|
+
verify_block: proc do |value|
|
89
|
+
UI.user_error!(@messages['description_malformed']) unless value && !value.empty? && value.to_s.length < 256
|
82
90
|
end)
|
83
91
|
]
|
84
92
|
end
|
@@ -67,12 +67,15 @@ module Fastlane
|
|
67
67
|
end
|
68
68
|
|
69
69
|
def upload
|
70
|
-
UI.message("⏳ Uploading \"#{@config[:app]}\"
|
70
|
+
UI.message("⏳ Uploading \"#{@config[:app]}\" to Sauce Labs.")
|
71
71
|
path = 'v1/storage/upload'
|
72
72
|
https, url = build_http_request_for(path)
|
73
73
|
request = Net::HTTP::Post.new(url)
|
74
74
|
request['Authorization'] = "Basic #{@encoded_auth_string}"
|
75
75
|
form_data = [['payload', File.open(@config[:file])], ['name', @config[:app]]]
|
76
|
+
unless @config[:app_description].nil?
|
77
|
+
form_data.append(['description', @config[:app_description]])
|
78
|
+
end
|
76
79
|
request.set_form(form_data, 'multipart/form-data')
|
77
80
|
response = https.request(request)
|
78
81
|
UI.success("✅ Successfully uploaded app to sauce labs: \n #{response.body}") if response.code.eql?('201')
|
@@ -10,3 +10,4 @@ sauce_api_key_error: "No sauce labs access key provided, set using: sauce_access
|
|
10
10
|
supported_regions: ['us', 'eu']
|
11
11
|
accepted_file_types: ['.apk', '.aab', '.ipa', '.zip']
|
12
12
|
missing_file_name: "Please specify the name of the app that you wish to query on sauce storage"
|
13
|
+
description_malformed: "Description was empty or > 255 characters. Do not set app_description or set using app_description: 'Foo'"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane-plugin-saucectl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ian Hamilton
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -196,8 +196,7 @@ files:
|
|
196
196
|
homepage: https://github.com/ianrhamilton/fastlane-plugin-saucectl
|
197
197
|
licenses:
|
198
198
|
- MIT
|
199
|
-
metadata:
|
200
|
-
rubygems_mfa_required: 'true'
|
199
|
+
metadata: {}
|
201
200
|
post_install_message:
|
202
201
|
rdoc_options: []
|
203
202
|
require_paths:
|
@@ -206,14 +205,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
206
205
|
requirements:
|
207
206
|
- - ">="
|
208
207
|
- !ruby/object:Gem::Version
|
209
|
-
version: '
|
208
|
+
version: '3.0'
|
210
209
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
211
210
|
requirements:
|
212
211
|
- - ">="
|
213
212
|
- !ruby/object:Gem::Version
|
214
213
|
version: '0'
|
215
214
|
requirements: []
|
216
|
-
rubygems_version: 3.3
|
215
|
+
rubygems_version: 3.2.3
|
217
216
|
signing_key:
|
218
217
|
specification_version: 4
|
219
218
|
summary: Simplify the set up, configuration, upload, and execution of espresso and
|