google-apis-run_v2 0.10.0 → 0.11.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.
@@ -266,6 +266,32 @@ module Google
266
266
  end
267
267
  end
268
268
 
269
+ # ContainerStatus holds the information of container name and image digest value.
270
+ class GoogleCloudRunV2ContainerStatus
271
+ include Google::Apis::Core::Hashable
272
+
273
+ # ImageDigest holds the resolved digest for the image specified, regardless of
274
+ # whether a tag or digest was originally specified in the Container object.
275
+ # Corresponds to the JSON property `imageDigest`
276
+ # @return [String]
277
+ attr_accessor :image_digest
278
+
279
+ # The name of the container, if specified.
280
+ # Corresponds to the JSON property `name`
281
+ # @return [String]
282
+ attr_accessor :name
283
+
284
+ def initialize(**args)
285
+ update!(**args)
286
+ end
287
+
288
+ # Update properties of this object
289
+ def update!(**args)
290
+ @image_digest = args[:image_digest] if args.key?(:image_digest)
291
+ @name = args[:name] if args.key?(:name)
292
+ end
293
+ end
294
+
269
295
  # EnvVar represents an environment variable present in a Container.
270
296
  class GoogleCloudRunV2EnvVar
271
297
  include Google::Apis::Core::Hashable
@@ -323,6 +349,522 @@ module Google
323
349
  end
324
350
  end
325
351
 
352
+ # Execution represents the configuration of a single execution. A execution an
353
+ # immutable resource that references a container image which is run to
354
+ # completion.
355
+ class GoogleCloudRunV2Execution
356
+ include Google::Apis::Core::Hashable
357
+
358
+ # KRM-style annotations for the resource.
359
+ # Corresponds to the JSON property `annotations`
360
+ # @return [Hash<String,String>]
361
+ attr_accessor :annotations
362
+
363
+ # Output only. Represents time when the execution was completed. It is not
364
+ # guaranteed to be set in happens-before order across separate operations.
365
+ # Corresponds to the JSON property `completionTime`
366
+ # @return [String]
367
+ attr_accessor :completion_time
368
+
369
+ # Output only. The Condition of this Execution, containing its readiness status,
370
+ # and detailed error information in case it did not reach the desired state.
371
+ # Corresponds to the JSON property `conditions`
372
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Condition>]
373
+ attr_accessor :conditions
374
+
375
+ # Output only. Represents time when the execution was acknowledged by the
376
+ # execution controller. It is not guaranteed to be set in happens-before order
377
+ # across separate operations.
378
+ # Corresponds to the JSON property `createTime`
379
+ # @return [String]
380
+ attr_accessor :create_time
381
+
382
+ # Output only. For a deleted resource, the deletion time. It is only populated
383
+ # as a response to a Delete request.
384
+ # Corresponds to the JSON property `deleteTime`
385
+ # @return [String]
386
+ attr_accessor :delete_time
387
+
388
+ # Output only. A system-generated fingerprint for this version of the resource.
389
+ # May be used to detect modification conflict during updates.
390
+ # Corresponds to the JSON property `etag`
391
+ # @return [String]
392
+ attr_accessor :etag
393
+
394
+ # Output only. For a deleted resource, the time after which it will be
395
+ # permamently deleted. It is only populated as a response to a Delete request.
396
+ # Corresponds to the JSON property `expireTime`
397
+ # @return [String]
398
+ attr_accessor :expire_time
399
+
400
+ # Output only. The number of tasks which reached phase Failed.
401
+ # Corresponds to the JSON property `failedCount`
402
+ # @return [Fixnum]
403
+ attr_accessor :failed_count
404
+
405
+ # Output only. A number that monotonically increases every time the user
406
+ # modifies the desired state.
407
+ # Corresponds to the JSON property `generation`
408
+ # @return [Fixnum]
409
+ attr_accessor :generation
410
+
411
+ # Output only. The name of the parent Job.
412
+ # Corresponds to the JSON property `job`
413
+ # @return [String]
414
+ attr_accessor :job
415
+
416
+ # KRM-style labels for the resource. User-provided labels are shared with Google'
417
+ # s billing system, so they can be used to filter, or break down billing charges
418
+ # by team, component, environment, state, etc. For more information, visit https:
419
+ # //cloud.google.com/resource-manager/docs/creating-managing-labels or https://
420
+ # cloud.google.com/run/docs/configuring/labels Cloud Run will populate some
421
+ # labels with 'run.googleapis.com' or 'serving.knative.dev' namespaces. Those
422
+ # labels are read-only, and user changes will not be preserved.
423
+ # Corresponds to the JSON property `labels`
424
+ # @return [Hash<String,String>]
425
+ attr_accessor :labels
426
+
427
+ # Set the launch stage to a preview stage on write to allow use of preview
428
+ # features in that stage. On read, describes whether the resource uses preview
429
+ # features. Launch Stages are defined at [Google Cloud Platform Launch Stages](
430
+ # https://cloud.google.com/terms/launch-stages).
431
+ # Corresponds to the JSON property `launchStage`
432
+ # @return [String]
433
+ attr_accessor :launch_stage
434
+
435
+ # Output only. The unique name of this Execution.
436
+ # Corresponds to the JSON property `name`
437
+ # @return [String]
438
+ attr_accessor :name
439
+
440
+ # Output only. The generation of this Execution. See comments in `reconciling`
441
+ # for additional information on reconciliation process in Cloud Run.
442
+ # Corresponds to the JSON property `observedGeneration`
443
+ # @return [Fixnum]
444
+ attr_accessor :observed_generation
445
+
446
+ # Output only. Specifies the maximum desired number of tasks the execution
447
+ # should run at any given time. Must be <= task_count. The actual number of
448
+ # tasks running in steady state will be less than this number when ((.spec.
449
+ # task_count - .status.successful) < .spec.parallelism), i.e. when the work left
450
+ # to do is less than max parallelism. More info: https://kubernetes.io/docs/
451
+ # concepts/workloads/controllers/jobs-run-to-completion/
452
+ # Corresponds to the JSON property `parallelism`
453
+ # @return [Fixnum]
454
+ attr_accessor :parallelism
455
+
456
+ # Output only. Indicates whether the resource's reconciliation is still in
457
+ # progress. See comments in `Job.reconciling` for additional information on
458
+ # reconciliation process in Cloud Run.
459
+ # Corresponds to the JSON property `reconciling`
460
+ # @return [Boolean]
461
+ attr_accessor :reconciling
462
+ alias_method :reconciling?, :reconciling
463
+
464
+ # Output only. The number of actively running tasks.
465
+ # Corresponds to the JSON property `runningCount`
466
+ # @return [Fixnum]
467
+ attr_accessor :running_count
468
+
469
+ # Output only. Represents time when the execution started to run. It is not
470
+ # guaranteed to be set in happens-before order across separate operations.
471
+ # Corresponds to the JSON property `startTime`
472
+ # @return [String]
473
+ attr_accessor :start_time
474
+
475
+ # Output only. The number of tasks which reached phase Succeeded.
476
+ # Corresponds to the JSON property `succeededCount`
477
+ # @return [Fixnum]
478
+ attr_accessor :succeeded_count
479
+
480
+ # Output only. Specifies the desired number of tasks the execution should run.
481
+ # Setting to 1 means that parallelism is limited to 1 and the success of that
482
+ # task signals the success of the execution. More info: https://kubernetes.io/
483
+ # docs/concepts/workloads/controllers/jobs-run-to-completion/
484
+ # Corresponds to the JSON property `taskCount`
485
+ # @return [Fixnum]
486
+ attr_accessor :task_count
487
+
488
+ # TaskTemplate describes the data a task should have when created from a
489
+ # template.
490
+ # Corresponds to the JSON property `template`
491
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2TaskTemplate]
492
+ attr_accessor :template
493
+
494
+ # Output only. Server assigned unique identifier for the Execution. The value is
495
+ # a UUID4 string and guaranteed to remain unchanged until the resource is
496
+ # deleted.
497
+ # Corresponds to the JSON property `uid`
498
+ # @return [String]
499
+ attr_accessor :uid
500
+
501
+ # Output only. The last-modified time.
502
+ # Corresponds to the JSON property `updateTime`
503
+ # @return [String]
504
+ attr_accessor :update_time
505
+
506
+ def initialize(**args)
507
+ update!(**args)
508
+ end
509
+
510
+ # Update properties of this object
511
+ def update!(**args)
512
+ @annotations = args[:annotations] if args.key?(:annotations)
513
+ @completion_time = args[:completion_time] if args.key?(:completion_time)
514
+ @conditions = args[:conditions] if args.key?(:conditions)
515
+ @create_time = args[:create_time] if args.key?(:create_time)
516
+ @delete_time = args[:delete_time] if args.key?(:delete_time)
517
+ @etag = args[:etag] if args.key?(:etag)
518
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
519
+ @failed_count = args[:failed_count] if args.key?(:failed_count)
520
+ @generation = args[:generation] if args.key?(:generation)
521
+ @job = args[:job] if args.key?(:job)
522
+ @labels = args[:labels] if args.key?(:labels)
523
+ @launch_stage = args[:launch_stage] if args.key?(:launch_stage)
524
+ @name = args[:name] if args.key?(:name)
525
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
526
+ @parallelism = args[:parallelism] if args.key?(:parallelism)
527
+ @reconciling = args[:reconciling] if args.key?(:reconciling)
528
+ @running_count = args[:running_count] if args.key?(:running_count)
529
+ @start_time = args[:start_time] if args.key?(:start_time)
530
+ @succeeded_count = args[:succeeded_count] if args.key?(:succeeded_count)
531
+ @task_count = args[:task_count] if args.key?(:task_count)
532
+ @template = args[:template] if args.key?(:template)
533
+ @uid = args[:uid] if args.key?(:uid)
534
+ @update_time = args[:update_time] if args.key?(:update_time)
535
+ end
536
+ end
537
+
538
+ # Reference to an Execution. Use /Executions.GetExecution with the given name to
539
+ # get full execution including the latest status.
540
+ class GoogleCloudRunV2ExecutionReference
541
+ include Google::Apis::Core::Hashable
542
+
543
+ # Creation timestamp of the execution.
544
+ # Corresponds to the JSON property `createTime`
545
+ # @return [String]
546
+ attr_accessor :create_time
547
+
548
+ # Name of the execution.
549
+ # Corresponds to the JSON property `name`
550
+ # @return [String]
551
+ attr_accessor :name
552
+
553
+ def initialize(**args)
554
+ update!(**args)
555
+ end
556
+
557
+ # Update properties of this object
558
+ def update!(**args)
559
+ @create_time = args[:create_time] if args.key?(:create_time)
560
+ @name = args[:name] if args.key?(:name)
561
+ end
562
+ end
563
+
564
+ # ExecutionTemplate describes the data an execution should have when created
565
+ # from a template.
566
+ class GoogleCloudRunV2ExecutionTemplate
567
+ include Google::Apis::Core::Hashable
568
+
569
+ # KRM-style annotations for the resource.
570
+ # Corresponds to the JSON property `annotations`
571
+ # @return [Hash<String,String>]
572
+ attr_accessor :annotations
573
+
574
+ # KRM-style labels for the resource.
575
+ # Corresponds to the JSON property `labels`
576
+ # @return [Hash<String,String>]
577
+ attr_accessor :labels
578
+
579
+ # Specifies the maximum desired number of tasks the execution should run at
580
+ # given time. Must be <= task_count. When the job is run, if this field is 0 or
581
+ # unset, the maximum possible value will be used for that execution. The actual
582
+ # number of tasks running in steady state will be less than this number when
583
+ # there are fewer tasks waiting to be completed remaining, i.e. when the work
584
+ # left to do is less than max parallelism.
585
+ # Corresponds to the JSON property `parallelism`
586
+ # @return [Fixnum]
587
+ attr_accessor :parallelism
588
+
589
+ # Specifies the desired number of tasks the execution should run. Setting to 1
590
+ # means that parallelism is limited to 1 and the success of that task signals
591
+ # the success of the execution. More info: https://kubernetes.io/docs/concepts/
592
+ # workloads/controllers/jobs-run-to-completion/
593
+ # Corresponds to the JSON property `taskCount`
594
+ # @return [Fixnum]
595
+ attr_accessor :task_count
596
+
597
+ # TaskTemplate describes the data a task should have when created from a
598
+ # template.
599
+ # Corresponds to the JSON property `template`
600
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2TaskTemplate]
601
+ attr_accessor :template
602
+
603
+ def initialize(**args)
604
+ update!(**args)
605
+ end
606
+
607
+ # Update properties of this object
608
+ def update!(**args)
609
+ @annotations = args[:annotations] if args.key?(:annotations)
610
+ @labels = args[:labels] if args.key?(:labels)
611
+ @parallelism = args[:parallelism] if args.key?(:parallelism)
612
+ @task_count = args[:task_count] if args.key?(:task_count)
613
+ @template = args[:template] if args.key?(:template)
614
+ end
615
+ end
616
+
617
+ # Job represents the configuration of a single job. A job an immutable resource
618
+ # that references a container image which is run to completion.
619
+ class GoogleCloudRunV2Job
620
+ include Google::Apis::Core::Hashable
621
+
622
+ # KRM-style annotations for the resource. Unstructured key value map that may be
623
+ # set by external tools to store and arbitrary metadata. They are not queryable
624
+ # and should be preserved when modifying objects. Cloud Run will populate some
625
+ # annotations using 'run.googleapis.com' or 'serving.knative.dev' namespaces.
626
+ # This field follows Kubernetes annotations' namespacing, limits, and rules.
627
+ # More info: https://kubernetes.io/docs/user-guide/annotations
628
+ # Corresponds to the JSON property `annotations`
629
+ # @return [Hash<String,String>]
630
+ attr_accessor :annotations
631
+
632
+ # Settings for Binary Authorization feature.
633
+ # Corresponds to the JSON property `binaryAuthorization`
634
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2BinaryAuthorization]
635
+ attr_accessor :binary_authorization
636
+
637
+ # Arbitrary identifier for the API client.
638
+ # Corresponds to the JSON property `client`
639
+ # @return [String]
640
+ attr_accessor :client
641
+
642
+ # Arbitrary version identifier for the API client.
643
+ # Corresponds to the JSON property `clientVersion`
644
+ # @return [String]
645
+ attr_accessor :client_version
646
+
647
+ # Output only. The Conditions of all other associated sub-resources. They
648
+ # contain additional diagnostics information in case the Job does not reach its
649
+ # desired state. See comments in `reconciling` for additional information on
650
+ # reconciliation process in Cloud Run.
651
+ # Corresponds to the JSON property `conditions`
652
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Condition>]
653
+ attr_accessor :conditions
654
+
655
+ # Output only. Status information for each of the containers specified.
656
+ # Corresponds to the JSON property `containerStatuses`
657
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2ContainerStatus>]
658
+ attr_accessor :container_statuses
659
+
660
+ # Output only. The creation time.
661
+ # Corresponds to the JSON property `createTime`
662
+ # @return [String]
663
+ attr_accessor :create_time
664
+
665
+ # Output only. Email address of the authenticated creator.
666
+ # Corresponds to the JSON property `creator`
667
+ # @return [String]
668
+ attr_accessor :creator
669
+
670
+ # Output only. The deletion time.
671
+ # Corresponds to the JSON property `deleteTime`
672
+ # @return [String]
673
+ attr_accessor :delete_time
674
+
675
+ # Output only. A system-generated fingerprint for this version of the resource.
676
+ # May be used to detect modification conflict during updates.
677
+ # Corresponds to the JSON property `etag`
678
+ # @return [String]
679
+ attr_accessor :etag
680
+
681
+ # Output only. Number of executions created for this job.
682
+ # Corresponds to the JSON property `executionCount`
683
+ # @return [Fixnum]
684
+ attr_accessor :execution_count
685
+
686
+ # Output only. For a deleted resource, the time after which it will be
687
+ # permamently deleted.
688
+ # Corresponds to the JSON property `expireTime`
689
+ # @return [String]
690
+ attr_accessor :expire_time
691
+
692
+ # Output only. A number that monotonically increases every time the user
693
+ # modifies the desired state.
694
+ # Corresponds to the JSON property `generation`
695
+ # @return [Fixnum]
696
+ attr_accessor :generation
697
+
698
+ # KRM-style labels for the resource. User-provided labels are shared with Google'
699
+ # s billing system, so they can be used to filter, or break down billing charges
700
+ # by team, component, environment, state, etc. For more information, visit https:
701
+ # //cloud.google.com/resource-manager/docs/creating-managing-labels or https://
702
+ # cloud.google.com/run/docs/configuring/labels Cloud Run will populate some
703
+ # labels with 'run.googleapis.com' or 'serving.knative.dev' namespaces. Those
704
+ # labels are read-only, and user changes will not be preserved.
705
+ # Corresponds to the JSON property `labels`
706
+ # @return [Hash<String,String>]
707
+ attr_accessor :labels
708
+
709
+ # Output only. Email address of the last authenticated modifier.
710
+ # Corresponds to the JSON property `lastModifier`
711
+ # @return [String]
712
+ attr_accessor :last_modifier
713
+
714
+ # Reference to an Execution. Use /Executions.GetExecution with the given name to
715
+ # get full execution including the latest status.
716
+ # Corresponds to the JSON property `latestCreatedExecution`
717
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2ExecutionReference]
718
+ attr_accessor :latest_created_execution
719
+
720
+ # The launch stage as defined by [Google Cloud Platform Launch Stages](https://
721
+ # cloud.google.com/terms/launch-stages). Cloud Run supports `ALPHA`, `BETA`, and
722
+ # `GA`. If no value is specified, GA is assumed.
723
+ # Corresponds to the JSON property `launchStage`
724
+ # @return [String]
725
+ attr_accessor :launch_stage
726
+
727
+ # The fully qualified name of this Job. Format: projects/`project`/locations/`
728
+ # location`/jobs/`job`
729
+ # Corresponds to the JSON property `name`
730
+ # @return [String]
731
+ attr_accessor :name
732
+
733
+ # Output only. The generation of this Job. See comments in `reconciling` for
734
+ # additional information on reconciliation process in Cloud Run.
735
+ # Corresponds to the JSON property `observedGeneration`
736
+ # @return [Fixnum]
737
+ attr_accessor :observed_generation
738
+
739
+ # Output only. Returns true if the Job is currently being acted upon by the
740
+ # system to bring it into the desired state. When a new Job is created, or an
741
+ # existing one is updated, Cloud Run will asynchronously perform all necessary
742
+ # steps to bring the Job to the desired state. This process is called
743
+ # reconciliation. While reconciliation is in process, `observed_generation` and `
744
+ # latest_succeeded_execution`, will have transient values that might mismatch
745
+ # the intended state: Once reconciliation is over (and this field is false),
746
+ # there are two possible outcomes: reconciliation succeeded and the state
747
+ # matches the Job, or there was an error, and reconciliation failed. This state
748
+ # can be found in `terminal_condition.state`. If reconciliation succeeded, the
749
+ # following fields will match: `observed_generation` and `generation`, `
750
+ # latest_succeeded_execution` and `latest_created_execution`. If reconciliation
751
+ # failed, `observed_generation` and `latest_succeeded_execution` will have the
752
+ # state of the last succeeded execution or empty for newly created Job.
753
+ # Additional information on the failure can be found in `terminal_condition` and
754
+ # `conditions`.
755
+ # Corresponds to the JSON property `reconciling`
756
+ # @return [Boolean]
757
+ attr_accessor :reconciling
758
+ alias_method :reconciling?, :reconciling
759
+
760
+ # ExecutionTemplate describes the data an execution should have when created
761
+ # from a template.
762
+ # Corresponds to the JSON property `template`
763
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2ExecutionTemplate]
764
+ attr_accessor :template
765
+
766
+ # Defines a status condition for a resource.
767
+ # Corresponds to the JSON property `terminalCondition`
768
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2Condition]
769
+ attr_accessor :terminal_condition
770
+
771
+ # Output only. Server assigned unique identifier for the Execution. The value is
772
+ # a UUID4 string and guaranteed to remain unchanged until the resource is
773
+ # deleted.
774
+ # Corresponds to the JSON property `uid`
775
+ # @return [String]
776
+ attr_accessor :uid
777
+
778
+ # Output only. The last-modified time.
779
+ # Corresponds to the JSON property `updateTime`
780
+ # @return [String]
781
+ attr_accessor :update_time
782
+
783
+ def initialize(**args)
784
+ update!(**args)
785
+ end
786
+
787
+ # Update properties of this object
788
+ def update!(**args)
789
+ @annotations = args[:annotations] if args.key?(:annotations)
790
+ @binary_authorization = args[:binary_authorization] if args.key?(:binary_authorization)
791
+ @client = args[:client] if args.key?(:client)
792
+ @client_version = args[:client_version] if args.key?(:client_version)
793
+ @conditions = args[:conditions] if args.key?(:conditions)
794
+ @container_statuses = args[:container_statuses] if args.key?(:container_statuses)
795
+ @create_time = args[:create_time] if args.key?(:create_time)
796
+ @creator = args[:creator] if args.key?(:creator)
797
+ @delete_time = args[:delete_time] if args.key?(:delete_time)
798
+ @etag = args[:etag] if args.key?(:etag)
799
+ @execution_count = args[:execution_count] if args.key?(:execution_count)
800
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
801
+ @generation = args[:generation] if args.key?(:generation)
802
+ @labels = args[:labels] if args.key?(:labels)
803
+ @last_modifier = args[:last_modifier] if args.key?(:last_modifier)
804
+ @latest_created_execution = args[:latest_created_execution] if args.key?(:latest_created_execution)
805
+ @launch_stage = args[:launch_stage] if args.key?(:launch_stage)
806
+ @name = args[:name] if args.key?(:name)
807
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
808
+ @reconciling = args[:reconciling] if args.key?(:reconciling)
809
+ @template = args[:template] if args.key?(:template)
810
+ @terminal_condition = args[:terminal_condition] if args.key?(:terminal_condition)
811
+ @uid = args[:uid] if args.key?(:uid)
812
+ @update_time = args[:update_time] if args.key?(:update_time)
813
+ end
814
+ end
815
+
816
+ # Response message containing a list of Executions.
817
+ class GoogleCloudRunV2ListExecutionsResponse
818
+ include Google::Apis::Core::Hashable
819
+
820
+ # The resulting list of Executions.
821
+ # Corresponds to the JSON property `executions`
822
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Execution>]
823
+ attr_accessor :executions
824
+
825
+ # A token indicating there are more items than page_size. Use it in the next
826
+ # ListExecutions request to continue.
827
+ # Corresponds to the JSON property `nextPageToken`
828
+ # @return [String]
829
+ attr_accessor :next_page_token
830
+
831
+ def initialize(**args)
832
+ update!(**args)
833
+ end
834
+
835
+ # Update properties of this object
836
+ def update!(**args)
837
+ @executions = args[:executions] if args.key?(:executions)
838
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
839
+ end
840
+ end
841
+
842
+ # Response message containing a list of Jobs.
843
+ class GoogleCloudRunV2ListJobsResponse
844
+ include Google::Apis::Core::Hashable
845
+
846
+ # The resulting list of Jobs.
847
+ # Corresponds to the JSON property `jobs`
848
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Job>]
849
+ attr_accessor :jobs
850
+
851
+ # A token indicating there are more items than page_size. Use it in the next
852
+ # ListJobs request to continue.
853
+ # Corresponds to the JSON property `nextPageToken`
854
+ # @return [String]
855
+ attr_accessor :next_page_token
856
+
857
+ def initialize(**args)
858
+ update!(**args)
859
+ end
860
+
861
+ # Update properties of this object
862
+ def update!(**args)
863
+ @jobs = args[:jobs] if args.key?(:jobs)
864
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
865
+ end
866
+ end
867
+
326
868
  # Response message containing a list of Revisions.
327
869
  class GoogleCloudRunV2ListRevisionsResponse
328
870
  include Google::Apis::Core::Hashable
@@ -375,6 +917,32 @@ module Google
375
917
  end
376
918
  end
377
919
 
920
+ # Response message containing a list of Tasks.
921
+ class GoogleCloudRunV2ListTasksResponse
922
+ include Google::Apis::Core::Hashable
923
+
924
+ # A token indicating there are more items than page_size. Use it in the next
925
+ # ListTasks request to continue.
926
+ # Corresponds to the JSON property `nextPageToken`
927
+ # @return [String]
928
+ attr_accessor :next_page_token
929
+
930
+ # The resulting list of Tasks.
931
+ # Corresponds to the JSON property `tasks`
932
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Task>]
933
+ attr_accessor :tasks
934
+
935
+ def initialize(**args)
936
+ update!(**args)
937
+ end
938
+
939
+ # Update properties of this object
940
+ def update!(**args)
941
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
942
+ @tasks = args[:tasks] if args.key?(:tasks)
943
+ end
944
+ end
945
+
378
946
  # ResourceRequirements describes the compute resource requirements.
379
947
  class GoogleCloudRunV2ResourceRequirements
380
948
  include Google::Apis::Core::Hashable
@@ -718,19 +1286,47 @@ module Google
718
1286
 
719
1287
  # Update properties of this object
720
1288
  def update!(**args)
721
- @annotations = args[:annotations] if args.key?(:annotations)
722
- @confidential = args[:confidential] if args.key?(:confidential)
723
- @container_concurrency = args[:container_concurrency] if args.key?(:container_concurrency)
724
- @containers = args[:containers] if args.key?(:containers)
725
- @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
726
- @execution_environment = args[:execution_environment] if args.key?(:execution_environment)
727
- @labels = args[:labels] if args.key?(:labels)
728
- @revision = args[:revision] if args.key?(:revision)
729
- @scaling = args[:scaling] if args.key?(:scaling)
730
- @service_account = args[:service_account] if args.key?(:service_account)
731
- @timeout = args[:timeout] if args.key?(:timeout)
732
- @volumes = args[:volumes] if args.key?(:volumes)
733
- @vpc_access = args[:vpc_access] if args.key?(:vpc_access)
1289
+ @annotations = args[:annotations] if args.key?(:annotations)
1290
+ @confidential = args[:confidential] if args.key?(:confidential)
1291
+ @container_concurrency = args[:container_concurrency] if args.key?(:container_concurrency)
1292
+ @containers = args[:containers] if args.key?(:containers)
1293
+ @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
1294
+ @execution_environment = args[:execution_environment] if args.key?(:execution_environment)
1295
+ @labels = args[:labels] if args.key?(:labels)
1296
+ @revision = args[:revision] if args.key?(:revision)
1297
+ @scaling = args[:scaling] if args.key?(:scaling)
1298
+ @service_account = args[:service_account] if args.key?(:service_account)
1299
+ @timeout = args[:timeout] if args.key?(:timeout)
1300
+ @volumes = args[:volumes] if args.key?(:volumes)
1301
+ @vpc_access = args[:vpc_access] if args.key?(:vpc_access)
1302
+ end
1303
+ end
1304
+
1305
+ # Request message to create a new Execution of a Job.
1306
+ class GoogleCloudRunV2RunJobRequest
1307
+ include Google::Apis::Core::Hashable
1308
+
1309
+ # A system-generated fingerprint for this version of the resource. May be used
1310
+ # to detect modification conflict during updates.
1311
+ # Corresponds to the JSON property `etag`
1312
+ # @return [String]
1313
+ attr_accessor :etag
1314
+
1315
+ # Indicates that the request should be validated without actually deleting any
1316
+ # resources.
1317
+ # Corresponds to the JSON property `validateOnly`
1318
+ # @return [Boolean]
1319
+ attr_accessor :validate_only
1320
+ alias_method :validate_only?, :validate_only
1321
+
1322
+ def initialize(**args)
1323
+ update!(**args)
1324
+ end
1325
+
1326
+ # Update properties of this object
1327
+ def update!(**args)
1328
+ @etag = args[:etag] if args.key?(:etag)
1329
+ @validate_only = args[:validate_only] if args.key?(:validate_only)
734
1330
  end
735
1331
  end
736
1332
 
@@ -1051,6 +1647,331 @@ module Google
1051
1647
  end
1052
1648
  end
1053
1649
 
1650
+ # Task represents a single run of a container to completion.
1651
+ class GoogleCloudRunV2Task
1652
+ include Google::Apis::Core::Hashable
1653
+
1654
+ # KRM-style annotations for the resource.
1655
+ # Corresponds to the JSON property `annotations`
1656
+ # @return [Hash<String,String>]
1657
+ attr_accessor :annotations
1658
+
1659
+ # Output only. Represents time when the Task was completed. It is not guaranteed
1660
+ # to be set in happens-before order across separate operations.
1661
+ # Corresponds to the JSON property `completionTime`
1662
+ # @return [String]
1663
+ attr_accessor :completion_time
1664
+
1665
+ # Output only. The Condition of this Task, containing its readiness status, and
1666
+ # detailed error information in case it did not reach the desired state.
1667
+ # Corresponds to the JSON property `conditions`
1668
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Condition>]
1669
+ attr_accessor :conditions
1670
+
1671
+ # Holds the single container that defines the unit of execution for this task.
1672
+ # Corresponds to the JSON property `containers`
1673
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Container>]
1674
+ attr_accessor :containers
1675
+
1676
+ # Output only. Represents time when the task was created by the job controller.
1677
+ # It is not guaranteed to be set in happens-before order across separate
1678
+ # operations.
1679
+ # Corresponds to the JSON property `createTime`
1680
+ # @return [String]
1681
+ attr_accessor :create_time
1682
+
1683
+ # Output only. For a deleted resource, the deletion time. It is only populated
1684
+ # as a response to a Delete request.
1685
+ # Corresponds to the JSON property `deleteTime`
1686
+ # @return [String]
1687
+ attr_accessor :delete_time
1688
+
1689
+ # Output only. A reference to a customer managed encryption key (CMEK) to use to
1690
+ # encrypt this container image. For more information, go to https://cloud.google.
1691
+ # com/run/docs/securing/using-cmek
1692
+ # Corresponds to the JSON property `encryptionKey`
1693
+ # @return [String]
1694
+ attr_accessor :encryption_key
1695
+
1696
+ # Output only. A system-generated fingerprint for this version of the resource.
1697
+ # May be used to detect modification conflict during updates.
1698
+ # Corresponds to the JSON property `etag`
1699
+ # @return [String]
1700
+ attr_accessor :etag
1701
+
1702
+ # Output only. The name of the parent Execution.
1703
+ # Corresponds to the JSON property `execution`
1704
+ # @return [String]
1705
+ attr_accessor :execution
1706
+
1707
+ # The execution environment being used to host this Task.
1708
+ # Corresponds to the JSON property `executionEnvironment`
1709
+ # @return [String]
1710
+ attr_accessor :execution_environment
1711
+
1712
+ # Output only. For a deleted resource, the time after which it will be
1713
+ # permamently deleted. It is only populated as a response to a Delete request.
1714
+ # Corresponds to the JSON property `expireTime`
1715
+ # @return [String]
1716
+ attr_accessor :expire_time
1717
+
1718
+ # Output only. A number that monotonically increases every time the user
1719
+ # modifies the desired state.
1720
+ # Corresponds to the JSON property `generation`
1721
+ # @return [Fixnum]
1722
+ attr_accessor :generation
1723
+
1724
+ # Output only. Index of the Task, unique per execution, and beginning at 0.
1725
+ # Corresponds to the JSON property `index`
1726
+ # @return [Fixnum]
1727
+ attr_accessor :index
1728
+
1729
+ # Output only. The name of the parent Job.
1730
+ # Corresponds to the JSON property `job`
1731
+ # @return [String]
1732
+ attr_accessor :job
1733
+
1734
+ # KRM-style labels for the resource. User-provided labels are shared with Google'
1735
+ # s billing system, so they can be used to filter, or break down billing charges
1736
+ # by team, component, environment, state, etc. For more information, visit https:
1737
+ # //cloud.google.com/resource-manager/docs/creating-managing-labels or https://
1738
+ # cloud.google.com/run/docs/configuring/labels Cloud Run will populate some
1739
+ # labels with 'run.googleapis.com' or 'serving.knative.dev' namespaces. Those
1740
+ # labels are read-only, and user changes will not be preserved.
1741
+ # Corresponds to the JSON property `labels`
1742
+ # @return [Hash<String,String>]
1743
+ attr_accessor :labels
1744
+
1745
+ # Result of a task attempt.
1746
+ # Corresponds to the JSON property `lastAttemptResult`
1747
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2TaskAttemptResult]
1748
+ attr_accessor :last_attempt_result
1749
+
1750
+ # Set the launch stage to a preview stage on write to allow use of preview
1751
+ # features in that stage. On read, describes whether the resource uses preview
1752
+ # features. Launch Stages are defined at [Google Cloud Platform Launch Stages](
1753
+ # https://cloud.google.com/terms/launch-stages).
1754
+ # Corresponds to the JSON property `launchStage`
1755
+ # @return [String]
1756
+ attr_accessor :launch_stage
1757
+
1758
+ # Number of retries allowed per Task, before marking this Task failed.
1759
+ # Corresponds to the JSON property `maxRetries`
1760
+ # @return [Fixnum]
1761
+ attr_accessor :max_retries
1762
+
1763
+ # Output only. The unique name of this Task.
1764
+ # Corresponds to the JSON property `name`
1765
+ # @return [String]
1766
+ attr_accessor :name
1767
+
1768
+ # Output only. The generation of this Task. See comments in `Job.reconciling`
1769
+ # for additional information on reconciliation process in Cloud Run.
1770
+ # Corresponds to the JSON property `observedGeneration`
1771
+ # @return [Fixnum]
1772
+ attr_accessor :observed_generation
1773
+
1774
+ # Output only. Indicates whether the resource's reconciliation is still in
1775
+ # progress. See comments in `Job.reconciling` for additional information on
1776
+ # reconciliation process in Cloud Run.
1777
+ # Corresponds to the JSON property `reconciling`
1778
+ # @return [Boolean]
1779
+ attr_accessor :reconciling
1780
+ alias_method :reconciling?, :reconciling
1781
+
1782
+ # Output only. The number of times this Task was retried. Tasks are retried when
1783
+ # they fail up to the maxRetries limit.
1784
+ # Corresponds to the JSON property `retried`
1785
+ # @return [Fixnum]
1786
+ attr_accessor :retried
1787
+
1788
+ # Email address of the IAM service account associated with the Task of a Job.
1789
+ # The service account represents the identity of the running task, and
1790
+ # determines what permissions the task has. If not provided, the task will use
1791
+ # the project's default service account.
1792
+ # Corresponds to the JSON property `serviceAccount`
1793
+ # @return [String]
1794
+ attr_accessor :service_account
1795
+
1796
+ # Output only. Represents time when the task started to run. It is not
1797
+ # guaranteed to be set in happens-before order across separate operations.
1798
+ # Corresponds to the JSON property `startTime`
1799
+ # @return [String]
1800
+ attr_accessor :start_time
1801
+
1802
+ # Max allowed time duration the Task may be active before the system will
1803
+ # actively try to mark it failed and kill associated containers. This applies
1804
+ # per attempt of a task, meaning each retry can run for the full timeout.
1805
+ # Corresponds to the JSON property `timeout`
1806
+ # @return [String]
1807
+ attr_accessor :timeout
1808
+
1809
+ # Output only. Server assigned unique identifier for the Task. The value is a
1810
+ # UUID4 string and guaranteed to remain unchanged until the resource is deleted.
1811
+ # Corresponds to the JSON property `uid`
1812
+ # @return [String]
1813
+ attr_accessor :uid
1814
+
1815
+ # Output only. The last-modified time.
1816
+ # Corresponds to the JSON property `updateTime`
1817
+ # @return [String]
1818
+ attr_accessor :update_time
1819
+
1820
+ # A list of Volumes to make available to containers.
1821
+ # Corresponds to the JSON property `volumes`
1822
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Volume>]
1823
+ attr_accessor :volumes
1824
+
1825
+ # VPC Access settings. For more information on creating a VPC Connector, visit
1826
+ # https://cloud.google.com/vpc/docs/configure-serverless-vpc-access For
1827
+ # information on how to configure Cloud Run with an existing VPC Connector,
1828
+ # visit https://cloud.google.com/run/docs/configuring/connecting-vpc
1829
+ # Corresponds to the JSON property `vpcAccess`
1830
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2VpcAccess]
1831
+ attr_accessor :vpc_access
1832
+
1833
+ def initialize(**args)
1834
+ update!(**args)
1835
+ end
1836
+
1837
+ # Update properties of this object
1838
+ def update!(**args)
1839
+ @annotations = args[:annotations] if args.key?(:annotations)
1840
+ @completion_time = args[:completion_time] if args.key?(:completion_time)
1841
+ @conditions = args[:conditions] if args.key?(:conditions)
1842
+ @containers = args[:containers] if args.key?(:containers)
1843
+ @create_time = args[:create_time] if args.key?(:create_time)
1844
+ @delete_time = args[:delete_time] if args.key?(:delete_time)
1845
+ @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
1846
+ @etag = args[:etag] if args.key?(:etag)
1847
+ @execution = args[:execution] if args.key?(:execution)
1848
+ @execution_environment = args[:execution_environment] if args.key?(:execution_environment)
1849
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
1850
+ @generation = args[:generation] if args.key?(:generation)
1851
+ @index = args[:index] if args.key?(:index)
1852
+ @job = args[:job] if args.key?(:job)
1853
+ @labels = args[:labels] if args.key?(:labels)
1854
+ @last_attempt_result = args[:last_attempt_result] if args.key?(:last_attempt_result)
1855
+ @launch_stage = args[:launch_stage] if args.key?(:launch_stage)
1856
+ @max_retries = args[:max_retries] if args.key?(:max_retries)
1857
+ @name = args[:name] if args.key?(:name)
1858
+ @observed_generation = args[:observed_generation] if args.key?(:observed_generation)
1859
+ @reconciling = args[:reconciling] if args.key?(:reconciling)
1860
+ @retried = args[:retried] if args.key?(:retried)
1861
+ @service_account = args[:service_account] if args.key?(:service_account)
1862
+ @start_time = args[:start_time] if args.key?(:start_time)
1863
+ @timeout = args[:timeout] if args.key?(:timeout)
1864
+ @uid = args[:uid] if args.key?(:uid)
1865
+ @update_time = args[:update_time] if args.key?(:update_time)
1866
+ @volumes = args[:volumes] if args.key?(:volumes)
1867
+ @vpc_access = args[:vpc_access] if args.key?(:vpc_access)
1868
+ end
1869
+ end
1870
+
1871
+ # Result of a task attempt.
1872
+ class GoogleCloudRunV2TaskAttemptResult
1873
+ include Google::Apis::Core::Hashable
1874
+
1875
+ # Output only. The exit code of this attempt. This may be unset if the container
1876
+ # was unable to exit cleanly with a code due to some other failure. See status
1877
+ # field for possible failure details.
1878
+ # Corresponds to the JSON property `exitCode`
1879
+ # @return [Fixnum]
1880
+ attr_accessor :exit_code
1881
+
1882
+ # The `Status` type defines a logical error model that is suitable for different
1883
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1884
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1885
+ # data: error code, error message, and error details. You can find out more
1886
+ # about this error model and how to work with it in the [API Design Guide](https:
1887
+ # //cloud.google.com/apis/design/errors).
1888
+ # Corresponds to the JSON property `status`
1889
+ # @return [Google::Apis::RunV2::GoogleRpcStatus]
1890
+ attr_accessor :status
1891
+
1892
+ def initialize(**args)
1893
+ update!(**args)
1894
+ end
1895
+
1896
+ # Update properties of this object
1897
+ def update!(**args)
1898
+ @exit_code = args[:exit_code] if args.key?(:exit_code)
1899
+ @status = args[:status] if args.key?(:status)
1900
+ end
1901
+ end
1902
+
1903
+ # TaskTemplate describes the data a task should have when created from a
1904
+ # template.
1905
+ class GoogleCloudRunV2TaskTemplate
1906
+ include Google::Apis::Core::Hashable
1907
+
1908
+ # Holds the single container that defines the unit of execution for this task.
1909
+ # Corresponds to the JSON property `containers`
1910
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Container>]
1911
+ attr_accessor :containers
1912
+
1913
+ # A reference to a customer managed encryption key (CMEK) to use to encrypt this
1914
+ # container image. For more information, go to https://cloud.google.com/run/docs/
1915
+ # securing/using-cmek
1916
+ # Corresponds to the JSON property `encryptionKey`
1917
+ # @return [String]
1918
+ attr_accessor :encryption_key
1919
+
1920
+ # The execution environment being used to host this Task.
1921
+ # Corresponds to the JSON property `executionEnvironment`
1922
+ # @return [String]
1923
+ attr_accessor :execution_environment
1924
+
1925
+ # Number of retries allowed per Task, before marking this Task failed.
1926
+ # Corresponds to the JSON property `maxRetries`
1927
+ # @return [Fixnum]
1928
+ attr_accessor :max_retries
1929
+
1930
+ # Email address of the IAM service account associated with the Task of a Job.
1931
+ # The service account represents the identity of the running task, and
1932
+ # determines what permissions the task has. If not provided, the task will use
1933
+ # the project's default service account.
1934
+ # Corresponds to the JSON property `serviceAccount`
1935
+ # @return [String]
1936
+ attr_accessor :service_account
1937
+
1938
+ # Max allowed time duration the Task may be active before the system will
1939
+ # actively try to mark it failed and kill associated containers. This applies
1940
+ # per attempt of a task, meaning each retry can run for the full timeout.
1941
+ # Corresponds to the JSON property `timeout`
1942
+ # @return [String]
1943
+ attr_accessor :timeout
1944
+
1945
+ # A list of Volumes to make available to containers.
1946
+ # Corresponds to the JSON property `volumes`
1947
+ # @return [Array<Google::Apis::RunV2::GoogleCloudRunV2Volume>]
1948
+ attr_accessor :volumes
1949
+
1950
+ # VPC Access settings. For more information on creating a VPC Connector, visit
1951
+ # https://cloud.google.com/vpc/docs/configure-serverless-vpc-access For
1952
+ # information on how to configure Cloud Run with an existing VPC Connector,
1953
+ # visit https://cloud.google.com/run/docs/configuring/connecting-vpc
1954
+ # Corresponds to the JSON property `vpcAccess`
1955
+ # @return [Google::Apis::RunV2::GoogleCloudRunV2VpcAccess]
1956
+ attr_accessor :vpc_access
1957
+
1958
+ def initialize(**args)
1959
+ update!(**args)
1960
+ end
1961
+
1962
+ # Update properties of this object
1963
+ def update!(**args)
1964
+ @containers = args[:containers] if args.key?(:containers)
1965
+ @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
1966
+ @execution_environment = args[:execution_environment] if args.key?(:execution_environment)
1967
+ @max_retries = args[:max_retries] if args.key?(:max_retries)
1968
+ @service_account = args[:service_account] if args.key?(:service_account)
1969
+ @timeout = args[:timeout] if args.key?(:timeout)
1970
+ @volumes = args[:volumes] if args.key?(:volumes)
1971
+ @vpc_access = args[:vpc_access] if args.key?(:vpc_access)
1972
+ end
1973
+ end
1974
+
1054
1975
  # Holds a single traffic routing entry for the Service. Allocations can be done
1055
1976
  # to a specific Revision name, or pointing to the latest Ready Revision.
1056
1977
  class GoogleCloudRunV2TrafficTarget