google-apis-firebaseappdistribution_v1alpha 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,925 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module FirebaseappdistributionV1alpha
24
+
25
+ # A release of a Firebase app.
26
+ class GoogleFirebaseAppdistroV1Release
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Output only. A signed link (which expires in one hour) to directly download
30
+ # the app binary (IPA/APK/AAB) file.
31
+ # Corresponds to the JSON property `binaryDownloadUri`
32
+ # @return [String]
33
+ attr_accessor :binary_download_uri
34
+
35
+ # Output only. Build version of the release. For an Android release, the build
36
+ # version is the `versionCode`. For an iOS release, the build version is the `
37
+ # CFBundleVersion`.
38
+ # Corresponds to the JSON property `buildVersion`
39
+ # @return [String]
40
+ attr_accessor :build_version
41
+
42
+ # Output only. The time the release was created.
43
+ # Corresponds to the JSON property `createTime`
44
+ # @return [String]
45
+ attr_accessor :create_time
46
+
47
+ # Output only. Display version of the release. For an Android release, the
48
+ # display version is the `versionName`. For an iOS release, the display version
49
+ # is the `CFBundleShortVersionString`.
50
+ # Corresponds to the JSON property `displayVersion`
51
+ # @return [String]
52
+ attr_accessor :display_version
53
+
54
+ # Output only. A link to the Firebase console displaying a single release.
55
+ # Corresponds to the JSON property `firebaseConsoleUri`
56
+ # @return [String]
57
+ attr_accessor :firebase_console_uri
58
+
59
+ # The name of the release resource. Format: `projects/`project_number`/apps/`
60
+ # app_id`/releases/`release_id``
61
+ # Corresponds to the JSON property `name`
62
+ # @return [String]
63
+ attr_accessor :name
64
+
65
+ # Notes that belong to a release.
66
+ # Corresponds to the JSON property `releaseNotes`
67
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1ReleaseNotes]
68
+ attr_accessor :release_notes
69
+
70
+ # Output only. A link to the release in the tester web clip or Android app that
71
+ # lets testers (which were granted access to the app) view release notes and
72
+ # install the app onto their devices.
73
+ # Corresponds to the JSON property `testingUri`
74
+ # @return [String]
75
+ attr_accessor :testing_uri
76
+
77
+ def initialize(**args)
78
+ update!(**args)
79
+ end
80
+
81
+ # Update properties of this object
82
+ def update!(**args)
83
+ @binary_download_uri = args[:binary_download_uri] if args.key?(:binary_download_uri)
84
+ @build_version = args[:build_version] if args.key?(:build_version)
85
+ @create_time = args[:create_time] if args.key?(:create_time)
86
+ @display_version = args[:display_version] if args.key?(:display_version)
87
+ @firebase_console_uri = args[:firebase_console_uri] if args.key?(:firebase_console_uri)
88
+ @name = args[:name] if args.key?(:name)
89
+ @release_notes = args[:release_notes] if args.key?(:release_notes)
90
+ @testing_uri = args[:testing_uri] if args.key?(:testing_uri)
91
+ end
92
+ end
93
+
94
+ # Notes that belong to a release.
95
+ class GoogleFirebaseAppdistroV1ReleaseNotes
96
+ include Google::Apis::Core::Hashable
97
+
98
+ # The text of the release notes.
99
+ # Corresponds to the JSON property `text`
100
+ # @return [String]
101
+ attr_accessor :text
102
+
103
+ def initialize(**args)
104
+ update!(**args)
105
+ end
106
+
107
+ # Update properties of this object
108
+ def update!(**args)
109
+ @text = args[:text] if args.key?(:text)
110
+ end
111
+ end
112
+
113
+ # Operation metadata for `UploadRelease`.
114
+ class GoogleFirebaseAppdistroV1UploadReleaseMetadata
115
+ include Google::Apis::Core::Hashable
116
+
117
+ def initialize(**args)
118
+ update!(**args)
119
+ end
120
+
121
+ # Update properties of this object
122
+ def update!(**args)
123
+ end
124
+ end
125
+
126
+ # Response message for `UploadRelease`.
127
+ class GoogleFirebaseAppdistroV1UploadReleaseResponse
128
+ include Google::Apis::Core::Hashable
129
+
130
+ # A release of a Firebase app.
131
+ # Corresponds to the JSON property `release`
132
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1Release]
133
+ attr_accessor :release
134
+
135
+ # Result of upload release.
136
+ # Corresponds to the JSON property `result`
137
+ # @return [String]
138
+ attr_accessor :result
139
+
140
+ def initialize(**args)
141
+ update!(**args)
142
+ end
143
+
144
+ # Update properties of this object
145
+ def update!(**args)
146
+ @release = args[:release] if args.key?(:release)
147
+ @result = args[:result] if args.key?(:result)
148
+ end
149
+ end
150
+
151
+ # App bundle test certificate
152
+ class GoogleFirebaseAppdistroV1alphaAabCertificate
153
+ include Google::Apis::Core::Hashable
154
+
155
+ # MD5 hash of the certificate used to resign the AAB
156
+ # Corresponds to the JSON property `certificateHashMd5`
157
+ # @return [String]
158
+ attr_accessor :certificate_hash_md5
159
+
160
+ # SHA1 hash of the certificate used to resign the AAB
161
+ # Corresponds to the JSON property `certificateHashSha1`
162
+ # @return [String]
163
+ attr_accessor :certificate_hash_sha1
164
+
165
+ # SHA256 hash of the certificate used to resign the AAB
166
+ # Corresponds to the JSON property `certificateHashSha256`
167
+ # @return [String]
168
+ attr_accessor :certificate_hash_sha256
169
+
170
+ def initialize(**args)
171
+ update!(**args)
172
+ end
173
+
174
+ # Update properties of this object
175
+ def update!(**args)
176
+ @certificate_hash_md5 = args[:certificate_hash_md5] if args.key?(:certificate_hash_md5)
177
+ @certificate_hash_sha1 = args[:certificate_hash_sha1] if args.key?(:certificate_hash_sha1)
178
+ @certificate_hash_sha256 = args[:certificate_hash_sha256] if args.key?(:certificate_hash_sha256)
179
+ end
180
+ end
181
+
182
+ #
183
+ class GoogleFirebaseAppdistroV1alphaApp
184
+ include Google::Apis::Core::Hashable
185
+
186
+ # App bundle test certificate
187
+ # Corresponds to the JSON property `aabCertificate`
188
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaAabCertificate]
189
+ attr_accessor :aab_certificate
190
+
191
+ # App bundle state. Only valid for android apps. The app_view field in the
192
+ # request must be set to FULL in order for this to be populated.
193
+ # Corresponds to the JSON property `aabState`
194
+ # @return [String]
195
+ attr_accessor :aab_state
196
+
197
+ # Firebase gmp app id
198
+ # Corresponds to the JSON property `appId`
199
+ # @return [String]
200
+ attr_accessor :app_id
201
+
202
+ # Bundle identifier
203
+ # Corresponds to the JSON property `bundleId`
204
+ # @return [String]
205
+ attr_accessor :bundle_id
206
+
207
+ # Developer contact email for testers to reach out to about privacy or support
208
+ # issues.
209
+ # Corresponds to the JSON property `contactEmail`
210
+ # @return [String]
211
+ attr_accessor :contact_email
212
+
213
+ # iOS or Android
214
+ # Corresponds to the JSON property `platform`
215
+ # @return [String]
216
+ attr_accessor :platform
217
+
218
+ # Project number of the Firebase project, for example 300830567303.
219
+ # Corresponds to the JSON property `projectNumber`
220
+ # @return [String]
221
+ attr_accessor :project_number
222
+
223
+ def initialize(**args)
224
+ update!(**args)
225
+ end
226
+
227
+ # Update properties of this object
228
+ def update!(**args)
229
+ @aab_certificate = args[:aab_certificate] if args.key?(:aab_certificate)
230
+ @aab_state = args[:aab_state] if args.key?(:aab_state)
231
+ @app_id = args[:app_id] if args.key?(:app_id)
232
+ @bundle_id = args[:bundle_id] if args.key?(:bundle_id)
233
+ @contact_email = args[:contact_email] if args.key?(:contact_email)
234
+ @platform = args[:platform] if args.key?(:platform)
235
+ @project_number = args[:project_number] if args.key?(:project_number)
236
+ end
237
+ end
238
+
239
+ # An app crash that occurred during an automated test.
240
+ class GoogleFirebaseAppdistroV1alphaAppCrash
241
+ include Google::Apis::Core::Hashable
242
+
243
+ # Output only. The message associated with the crash.
244
+ # Corresponds to the JSON property `message`
245
+ # @return [String]
246
+ attr_accessor :message
247
+
248
+ # Output only. The raw stack trace.
249
+ # Corresponds to the JSON property `stackTrace`
250
+ # @return [String]
251
+ attr_accessor :stack_trace
252
+
253
+ def initialize(**args)
254
+ update!(**args)
255
+ end
256
+
257
+ # Update properties of this object
258
+ def update!(**args)
259
+ @message = args[:message] if args.key?(:message)
260
+ @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
261
+ end
262
+ end
263
+
264
+ #
265
+ class GoogleFirebaseAppdistroV1alphaCreateReleaseNotesRequest
266
+ include Google::Apis::Core::Hashable
267
+
268
+ # The actual release notes body from the user
269
+ # Corresponds to the JSON property `releaseNotes`
270
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaReleaseNotes]
271
+ attr_accessor :release_notes
272
+
273
+ def initialize(**args)
274
+ update!(**args)
275
+ end
276
+
277
+ # Update properties of this object
278
+ def update!(**args)
279
+ @release_notes = args[:release_notes] if args.key?(:release_notes)
280
+ end
281
+ end
282
+
283
+ #
284
+ class GoogleFirebaseAppdistroV1alphaCreateReleaseNotesResponse
285
+ include Google::Apis::Core::Hashable
286
+
287
+ def initialize(**args)
288
+ update!(**args)
289
+ end
290
+
291
+ # Update properties of this object
292
+ def update!(**args)
293
+ end
294
+ end
295
+
296
+ # The results of running an automated test on a particular device.
297
+ class GoogleFirebaseAppdistroV1alphaDeviceExecution
298
+ include Google::Apis::Core::Hashable
299
+
300
+ # An app crash that occurred during an automated test.
301
+ # Corresponds to the JSON property `appCrash`
302
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaAppCrash]
303
+ attr_accessor :app_crash
304
+
305
+ # Output only. A URI to an image of the Robo crawl graph.
306
+ # Corresponds to the JSON property `crawlGraphUri`
307
+ # @return [String]
308
+ attr_accessor :crawl_graph_uri
309
+
310
+ # A device on which automated tests can be run.
311
+ # Corresponds to the JSON property `device`
312
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaTestDevice]
313
+ attr_accessor :device
314
+
315
+ # Output only. The reason why the test failed.
316
+ # Corresponds to the JSON property `failedReason`
317
+ # @return [String]
318
+ attr_accessor :failed_reason
319
+
320
+ # Output only. The reason why the test was inconclusive.
321
+ # Corresponds to the JSON property `inconclusiveReason`
322
+ # @return [String]
323
+ attr_accessor :inconclusive_reason
324
+
325
+ # Output only. The path to a directory in Cloud Storage that will eventually
326
+ # contain the results for this execution. For example, gs://bucket/Nexus5-18-en-
327
+ # portrait.
328
+ # Corresponds to the JSON property `resultsStoragePath`
329
+ # @return [String]
330
+ attr_accessor :results_storage_path
331
+
332
+ # Statistics collected during a Robo test.
333
+ # Corresponds to the JSON property `roboStats`
334
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaRoboStats]
335
+ attr_accessor :robo_stats
336
+
337
+ # Output only. A list of screenshot image URIs taken from the Robo crawl. The
338
+ # file names are numbered by the order in which they were taken.
339
+ # Corresponds to the JSON property `screenshotUris`
340
+ # @return [Array<String>]
341
+ attr_accessor :screenshot_uris
342
+
343
+ # Output only. The state of the test.
344
+ # Corresponds to the JSON property `state`
345
+ # @return [String]
346
+ attr_accessor :state
347
+
348
+ # Output only. A URI to a video of the test run.
349
+ # Corresponds to the JSON property `videoUri`
350
+ # @return [String]
351
+ attr_accessor :video_uri
352
+
353
+ def initialize(**args)
354
+ update!(**args)
355
+ end
356
+
357
+ # Update properties of this object
358
+ def update!(**args)
359
+ @app_crash = args[:app_crash] if args.key?(:app_crash)
360
+ @crawl_graph_uri = args[:crawl_graph_uri] if args.key?(:crawl_graph_uri)
361
+ @device = args[:device] if args.key?(:device)
362
+ @failed_reason = args[:failed_reason] if args.key?(:failed_reason)
363
+ @inconclusive_reason = args[:inconclusive_reason] if args.key?(:inconclusive_reason)
364
+ @results_storage_path = args[:results_storage_path] if args.key?(:results_storage_path)
365
+ @robo_stats = args[:robo_stats] if args.key?(:robo_stats)
366
+ @screenshot_uris = args[:screenshot_uris] if args.key?(:screenshot_uris)
367
+ @state = args[:state] if args.key?(:state)
368
+ @video_uri = args[:video_uri] if args.key?(:video_uri)
369
+ end
370
+ end
371
+
372
+ #
373
+ class GoogleFirebaseAppdistroV1alphaEnableAccessOnReleaseRequest
374
+ include Google::Apis::Core::Hashable
375
+
376
+ # Optional. Ignored. Used to be build version of the app release if an instance
377
+ # identifier was provided for the release_id.
378
+ # Corresponds to the JSON property `buildVersion`
379
+ # @return [String]
380
+ attr_accessor :build_version
381
+
382
+ # Optional. Ignored. Used to be display version of the app release if an
383
+ # instance identifier was provided for the release_id.
384
+ # Corresponds to the JSON property `displayVersion`
385
+ # @return [String]
386
+ attr_accessor :display_version
387
+
388
+ # Optional. An email address which should get access to this release, for
389
+ # example rebeccahe@google.com
390
+ # Corresponds to the JSON property `emails`
391
+ # @return [Array<String>]
392
+ attr_accessor :emails
393
+
394
+ # Optional. A repeated list of group aliases to enable access to a release for
395
+ # Note: This field is misnamed, but can't be changed because we need to maintain
396
+ # compatibility with old build tools
397
+ # Corresponds to the JSON property `groupIds`
398
+ # @return [Array<String>]
399
+ attr_accessor :group_ids
400
+
401
+ def initialize(**args)
402
+ update!(**args)
403
+ end
404
+
405
+ # Update properties of this object
406
+ def update!(**args)
407
+ @build_version = args[:build_version] if args.key?(:build_version)
408
+ @display_version = args[:display_version] if args.key?(:display_version)
409
+ @emails = args[:emails] if args.key?(:emails)
410
+ @group_ids = args[:group_ids] if args.key?(:group_ids)
411
+ end
412
+ end
413
+
414
+ #
415
+ class GoogleFirebaseAppdistroV1alphaEnableAccessOnReleaseResponse
416
+ include Google::Apis::Core::Hashable
417
+
418
+ def initialize(**args)
419
+ update!(**args)
420
+ end
421
+
422
+ # Update properties of this object
423
+ def update!(**args)
424
+ end
425
+ end
426
+
427
+ # Response object to get the release given a upload hash
428
+ class GoogleFirebaseAppdistroV1alphaGetReleaseByUploadHashResponse
429
+ include Google::Apis::Core::Hashable
430
+
431
+ # Proto defining a release object
432
+ # Corresponds to the JSON property `release`
433
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaRelease]
434
+ attr_accessor :release
435
+
436
+ def initialize(**args)
437
+ update!(**args)
438
+ end
439
+
440
+ # Update properties of this object
441
+ def update!(**args)
442
+ @release = args[:release] if args.key?(:release)
443
+ end
444
+ end
445
+
446
+ # Response containing the UDIDs of tester iOS devices in a project
447
+ class GoogleFirebaseAppdistroV1alphaGetTesterUdidsResponse
448
+ include Google::Apis::Core::Hashable
449
+
450
+ # The UDIDs of tester iOS devices in a project
451
+ # Corresponds to the JSON property `testerUdids`
452
+ # @return [Array<Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaTesterUdid>]
453
+ attr_accessor :tester_udids
454
+
455
+ def initialize(**args)
456
+ update!(**args)
457
+ end
458
+
459
+ # Update properties of this object
460
+ def update!(**args)
461
+ @tester_udids = args[:tester_udids] if args.key?(:tester_udids)
462
+ end
463
+ end
464
+
465
+ #
466
+ class GoogleFirebaseAppdistroV1alphaGetUploadStatusResponse
467
+ include Google::Apis::Core::Hashable
468
+
469
+ # The error code associated with (only set on "FAILURE")
470
+ # Corresponds to the JSON property `errorCode`
471
+ # @return [String]
472
+ attr_accessor :error_code
473
+
474
+ # Any additional context for the given upload status (e.g. error message) Meant
475
+ # to be displayed to the client
476
+ # Corresponds to the JSON property `message`
477
+ # @return [String]
478
+ attr_accessor :message
479
+
480
+ # Proto defining a release object
481
+ # Corresponds to the JSON property `release`
482
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaRelease]
483
+ attr_accessor :release
484
+
485
+ # The status of the upload
486
+ # Corresponds to the JSON property `status`
487
+ # @return [String]
488
+ attr_accessor :status
489
+
490
+ def initialize(**args)
491
+ update!(**args)
492
+ end
493
+
494
+ # Update properties of this object
495
+ def update!(**args)
496
+ @error_code = args[:error_code] if args.key?(:error_code)
497
+ @message = args[:message] if args.key?(:message)
498
+ @release = args[:release] if args.key?(:release)
499
+ @status = args[:status] if args.key?(:status)
500
+ end
501
+ end
502
+
503
+ #
504
+ class GoogleFirebaseAppdistroV1alphaJwt
505
+ include Google::Apis::Core::Hashable
506
+
507
+ #
508
+ # Corresponds to the JSON property `token`
509
+ # @return [String]
510
+ attr_accessor :token
511
+
512
+ def initialize(**args)
513
+ update!(**args)
514
+ end
515
+
516
+ # Update properties of this object
517
+ def update!(**args)
518
+ @token = args[:token] if args.key?(:token)
519
+ end
520
+ end
521
+
522
+ # The response message for `ListReleaseTests`.
523
+ class GoogleFirebaseAppdistroV1alphaListReleaseTestsResponse
524
+ include Google::Apis::Core::Hashable
525
+
526
+ # A short-lived token, which can be sent as `pageToken` to retrieve the next
527
+ # page. If this field is omitted, there are no subsequent pages.
528
+ # Corresponds to the JSON property `nextPageToken`
529
+ # @return [String]
530
+ attr_accessor :next_page_token
531
+
532
+ # The tests listed.
533
+ # Corresponds to the JSON property `releaseTests`
534
+ # @return [Array<Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaReleaseTest>]
535
+ attr_accessor :release_tests
536
+
537
+ def initialize(**args)
538
+ update!(**args)
539
+ end
540
+
541
+ # Update properties of this object
542
+ def update!(**args)
543
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
544
+ @release_tests = args[:release_tests] if args.key?(:release_tests)
545
+ end
546
+ end
547
+
548
+ # Login credential for automated tests
549
+ class GoogleFirebaseAppdistroV1alphaLoginCredential
550
+ include Google::Apis::Core::Hashable
551
+
552
+ # Hints to the crawler for identifying input fields
553
+ # Corresponds to the JSON property `fieldHints`
554
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaLoginCredentialFieldHints]
555
+ attr_accessor :field_hints
556
+
557
+ # Optional. Are these credentials for Google?
558
+ # Corresponds to the JSON property `google`
559
+ # @return [Boolean]
560
+ attr_accessor :google
561
+ alias_method :google?, :google
562
+
563
+ # Optional. Password for automated tests
564
+ # Corresponds to the JSON property `password`
565
+ # @return [String]
566
+ attr_accessor :password
567
+
568
+ # Optional. Username for automated tests
569
+ # Corresponds to the JSON property `username`
570
+ # @return [String]
571
+ attr_accessor :username
572
+
573
+ def initialize(**args)
574
+ update!(**args)
575
+ end
576
+
577
+ # Update properties of this object
578
+ def update!(**args)
579
+ @field_hints = args[:field_hints] if args.key?(:field_hints)
580
+ @google = args[:google] if args.key?(:google)
581
+ @password = args[:password] if args.key?(:password)
582
+ @username = args[:username] if args.key?(:username)
583
+ end
584
+ end
585
+
586
+ # Hints to the crawler for identifying input fields
587
+ class GoogleFirebaseAppdistroV1alphaLoginCredentialFieldHints
588
+ include Google::Apis::Core::Hashable
589
+
590
+ # Required. The Android resource name of the password UI element. For example,
591
+ # in Java: R.string.foo in xml: @string/foo Only the "foo" part is needed.
592
+ # Reference doc: https://developer.android.com/guide/topics/resources/accessing-
593
+ # resources.html
594
+ # Corresponds to the JSON property `passwordResourceName`
595
+ # @return [String]
596
+ attr_accessor :password_resource_name
597
+
598
+ # Required. The Android resource name of the username UI element. For example,
599
+ # in Java: R.string.foo in xml: @string/foo Only the "foo" part is needed.
600
+ # Reference doc: https://developer.android.com/guide/topics/resources/accessing-
601
+ # resources.html
602
+ # Corresponds to the JSON property `usernameResourceName`
603
+ # @return [String]
604
+ attr_accessor :username_resource_name
605
+
606
+ def initialize(**args)
607
+ update!(**args)
608
+ end
609
+
610
+ # Update properties of this object
611
+ def update!(**args)
612
+ @password_resource_name = args[:password_resource_name] if args.key?(:password_resource_name)
613
+ @username_resource_name = args[:username_resource_name] if args.key?(:username_resource_name)
614
+ end
615
+ end
616
+
617
+ #
618
+ class GoogleFirebaseAppdistroV1alphaProvisionAppResponse
619
+ include Google::Apis::Core::Hashable
620
+
621
+ def initialize(**args)
622
+ update!(**args)
623
+ end
624
+
625
+ # Update properties of this object
626
+ def update!(**args)
627
+ end
628
+ end
629
+
630
+ # Proto defining a release object
631
+ class GoogleFirebaseAppdistroV1alphaRelease
632
+ include Google::Apis::Core::Hashable
633
+
634
+ # Release build version
635
+ # Corresponds to the JSON property `buildVersion`
636
+ # @return [String]
637
+ attr_accessor :build_version
638
+
639
+ # Release version
640
+ # Corresponds to the JSON property `displayVersion`
641
+ # @return [String]
642
+ attr_accessor :display_version
643
+
644
+ # Timestamp when the release was created
645
+ # Corresponds to the JSON property `distributedAt`
646
+ # @return [String]
647
+ attr_accessor :distributed_at
648
+
649
+ # Release Id
650
+ # Corresponds to the JSON property `id`
651
+ # @return [String]
652
+ attr_accessor :id
653
+
654
+ # Instance id of the release
655
+ # Corresponds to the JSON property `instanceId`
656
+ # @return [String]
657
+ attr_accessor :instance_id
658
+
659
+ # Last activity timestamp
660
+ # Corresponds to the JSON property `lastActivityAt`
661
+ # @return [String]
662
+ attr_accessor :last_activity_at
663
+
664
+ # Number of testers who have open invitations for the release
665
+ # Corresponds to the JSON property `openInvitationCount`
666
+ # @return [Fixnum]
667
+ attr_accessor :open_invitation_count
668
+
669
+ # unused.
670
+ # Corresponds to the JSON property `receivedAt`
671
+ # @return [String]
672
+ attr_accessor :received_at
673
+
674
+ # Release notes summary
675
+ # Corresponds to the JSON property `releaseNotesSummary`
676
+ # @return [String]
677
+ attr_accessor :release_notes_summary
678
+
679
+ # Count of testers added to the release
680
+ # Corresponds to the JSON property `testerCount`
681
+ # @return [Fixnum]
682
+ attr_accessor :tester_count
683
+
684
+ # Number of testers who have installed the release
685
+ # Corresponds to the JSON property `testerWithInstallCount`
686
+ # @return [Fixnum]
687
+ attr_accessor :tester_with_install_count
688
+
689
+ def initialize(**args)
690
+ update!(**args)
691
+ end
692
+
693
+ # Update properties of this object
694
+ def update!(**args)
695
+ @build_version = args[:build_version] if args.key?(:build_version)
696
+ @display_version = args[:display_version] if args.key?(:display_version)
697
+ @distributed_at = args[:distributed_at] if args.key?(:distributed_at)
698
+ @id = args[:id] if args.key?(:id)
699
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
700
+ @last_activity_at = args[:last_activity_at] if args.key?(:last_activity_at)
701
+ @open_invitation_count = args[:open_invitation_count] if args.key?(:open_invitation_count)
702
+ @received_at = args[:received_at] if args.key?(:received_at)
703
+ @release_notes_summary = args[:release_notes_summary] if args.key?(:release_notes_summary)
704
+ @tester_count = args[:tester_count] if args.key?(:tester_count)
705
+ @tester_with_install_count = args[:tester_with_install_count] if args.key?(:tester_with_install_count)
706
+ end
707
+ end
708
+
709
+ #
710
+ class GoogleFirebaseAppdistroV1alphaReleaseNotes
711
+ include Google::Apis::Core::Hashable
712
+
713
+ #
714
+ # Corresponds to the JSON property `releaseNotes`
715
+ # @return [String]
716
+ attr_accessor :release_notes
717
+
718
+ def initialize(**args)
719
+ update!(**args)
720
+ end
721
+
722
+ # Update properties of this object
723
+ def update!(**args)
724
+ @release_notes = args[:release_notes] if args.key?(:release_notes)
725
+ end
726
+ end
727
+
728
+ # The results of running an automated test on a release.
729
+ class GoogleFirebaseAppdistroV1alphaReleaseTest
730
+ include Google::Apis::Core::Hashable
731
+
732
+ # Output only. Timestamp when the test was run.
733
+ # Corresponds to the JSON property `createTime`
734
+ # @return [String]
735
+ attr_accessor :create_time
736
+
737
+ # Required. The results of the test on each device.
738
+ # Corresponds to the JSON property `deviceExecutions`
739
+ # @return [Array<Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaDeviceExecution>]
740
+ attr_accessor :device_executions
741
+
742
+ # Login credential for automated tests
743
+ # Corresponds to the JSON property `loginCredential`
744
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaLoginCredential]
745
+ attr_accessor :login_credential
746
+
747
+ # The name of the release test resource. Format: `projects/`project_number`/apps/
748
+ # `app_id`/releases/`release_id`/tests/`test_id``
749
+ # Corresponds to the JSON property `name`
750
+ # @return [String]
751
+ attr_accessor :name
752
+
753
+ def initialize(**args)
754
+ update!(**args)
755
+ end
756
+
757
+ # Update properties of this object
758
+ def update!(**args)
759
+ @create_time = args[:create_time] if args.key?(:create_time)
760
+ @device_executions = args[:device_executions] if args.key?(:device_executions)
761
+ @login_credential = args[:login_credential] if args.key?(:login_credential)
762
+ @name = args[:name] if args.key?(:name)
763
+ end
764
+ end
765
+
766
+ # Configuration for Robo crawler
767
+ class GoogleFirebaseAppdistroV1alphaRoboCrawler
768
+ include Google::Apis::Core::Hashable
769
+
770
+ # Login credential for automated tests
771
+ # Corresponds to the JSON property `loginCredential`
772
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaLoginCredential]
773
+ attr_accessor :login_credential
774
+
775
+ def initialize(**args)
776
+ update!(**args)
777
+ end
778
+
779
+ # Update properties of this object
780
+ def update!(**args)
781
+ @login_credential = args[:login_credential] if args.key?(:login_credential)
782
+ end
783
+ end
784
+
785
+ # Statistics collected during a Robo test.
786
+ class GoogleFirebaseAppdistroV1alphaRoboStats
787
+ include Google::Apis::Core::Hashable
788
+
789
+ # Output only. Number of actions that crawler performed.
790
+ # Corresponds to the JSON property `actionsPerformed`
791
+ # @return [Fixnum]
792
+ attr_accessor :actions_performed
793
+
794
+ # Output only. Duration of crawl.
795
+ # Corresponds to the JSON property `crawlDuration`
796
+ # @return [String]
797
+ attr_accessor :crawl_duration
798
+
799
+ # Output only. Number of distinct screens visited.
800
+ # Corresponds to the JSON property `distinctVisitedScreens`
801
+ # @return [Fixnum]
802
+ attr_accessor :distinct_visited_screens
803
+
804
+ # Output only. Whether the main activity crawl timed out.
805
+ # Corresponds to the JSON property `mainActivityCrawlTimedOut`
806
+ # @return [Boolean]
807
+ attr_accessor :main_activity_crawl_timed_out
808
+ alias_method :main_activity_crawl_timed_out?, :main_activity_crawl_timed_out
809
+
810
+ def initialize(**args)
811
+ update!(**args)
812
+ end
813
+
814
+ # Update properties of this object
815
+ def update!(**args)
816
+ @actions_performed = args[:actions_performed] if args.key?(:actions_performed)
817
+ @crawl_duration = args[:crawl_duration] if args.key?(:crawl_duration)
818
+ @distinct_visited_screens = args[:distinct_visited_screens] if args.key?(:distinct_visited_screens)
819
+ @main_activity_crawl_timed_out = args[:main_activity_crawl_timed_out] if args.key?(:main_activity_crawl_timed_out)
820
+ end
821
+ end
822
+
823
+ # Configuration for automated tests
824
+ class GoogleFirebaseAppdistroV1alphaTestConfig
825
+ include Google::Apis::Core::Hashable
826
+
827
+ # Identifier. The name of the test configuration resource. Format: `projects/`
828
+ # project_number`/apps/`app_id`/testConfig`
829
+ # Corresponds to the JSON property `name`
830
+ # @return [String]
831
+ attr_accessor :name
832
+
833
+ # Configuration for Robo crawler
834
+ # Corresponds to the JSON property `roboCrawler`
835
+ # @return [Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaRoboCrawler]
836
+ attr_accessor :robo_crawler
837
+
838
+ # Optional. Tests will be run on this list of devices
839
+ # Corresponds to the JSON property `testDevices`
840
+ # @return [Array<Google::Apis::FirebaseappdistributionV1alpha::GoogleFirebaseAppdistroV1alphaTestDevice>]
841
+ attr_accessor :test_devices
842
+
843
+ def initialize(**args)
844
+ update!(**args)
845
+ end
846
+
847
+ # Update properties of this object
848
+ def update!(**args)
849
+ @name = args[:name] if args.key?(:name)
850
+ @robo_crawler = args[:robo_crawler] if args.key?(:robo_crawler)
851
+ @test_devices = args[:test_devices] if args.key?(:test_devices)
852
+ end
853
+ end
854
+
855
+ # A device on which automated tests can be run.
856
+ class GoogleFirebaseAppdistroV1alphaTestDevice
857
+ include Google::Apis::Core::Hashable
858
+
859
+ # Optional. The locale of the device (e.g. "en_US" for US English) during the
860
+ # test.
861
+ # Corresponds to the JSON property `locale`
862
+ # @return [String]
863
+ attr_accessor :locale
864
+
865
+ # Required. The device model.
866
+ # Corresponds to the JSON property `model`
867
+ # @return [String]
868
+ attr_accessor :model
869
+
870
+ # Optional. The orientation of the device during the test.
871
+ # Corresponds to the JSON property `orientation`
872
+ # @return [String]
873
+ attr_accessor :orientation
874
+
875
+ # Required. The version of the device (API level on Android).
876
+ # Corresponds to the JSON property `version`
877
+ # @return [String]
878
+ attr_accessor :version
879
+
880
+ def initialize(**args)
881
+ update!(**args)
882
+ end
883
+
884
+ # Update properties of this object
885
+ def update!(**args)
886
+ @locale = args[:locale] if args.key?(:locale)
887
+ @model = args[:model] if args.key?(:model)
888
+ @orientation = args[:orientation] if args.key?(:orientation)
889
+ @version = args[:version] if args.key?(:version)
890
+ end
891
+ end
892
+
893
+ # The UDIDs of a tester's iOS device
894
+ class GoogleFirebaseAppdistroV1alphaTesterUdid
895
+ include Google::Apis::Core::Hashable
896
+
897
+ # The name of the tester's device
898
+ # Corresponds to the JSON property `name`
899
+ # @return [String]
900
+ attr_accessor :name
901
+
902
+ # The platform of the tester's device
903
+ # Corresponds to the JSON property `platform`
904
+ # @return [String]
905
+ attr_accessor :platform
906
+
907
+ # The UDID of the tester's device
908
+ # Corresponds to the JSON property `udid`
909
+ # @return [String]
910
+ attr_accessor :udid
911
+
912
+ def initialize(**args)
913
+ update!(**args)
914
+ end
915
+
916
+ # Update properties of this object
917
+ def update!(**args)
918
+ @name = args[:name] if args.key?(:name)
919
+ @platform = args[:platform] if args.key?(:platform)
920
+ @udid = args[:udid] if args.key?(:udid)
921
+ end
922
+ end
923
+ end
924
+ end
925
+ end