diff --git a/api_names_out.yaml b/api_names_out.yaml index 9e5324d3d29..122d530538e 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -62396,6 +62396,8 @@ "/clouddeploy:v1/AdvanceRolloutOperation/sourcePhase": source_phase "/clouddeploy:v1/AdvanceRolloutOperation/wait": wait "/clouddeploy:v1/AdvanceRolloutRequest": advance_rollout_request +"/clouddeploy:v1/AdvanceRolloutRequest/overrideDeployPolicy": override_deploy_policy +"/clouddeploy:v1/AdvanceRolloutRequest/overrideDeployPolicy/override_deploy_policy": override_deploy_policy "/clouddeploy:v1/AdvanceRolloutRequest/phaseId": phase_id "/clouddeploy:v1/AdvanceRolloutResponse": advance_rollout_response "/clouddeploy:v1/AdvanceRolloutRule": advance_rollout_rule @@ -62408,6 +62410,8 @@ "/clouddeploy:v1/AnthosCluster/membership": membership "/clouddeploy:v1/ApproveRolloutRequest": approve_rollout_request "/clouddeploy:v1/ApproveRolloutRequest/approved": approved +"/clouddeploy:v1/ApproveRolloutRequest/overrideDeployPolicy": override_deploy_policy +"/clouddeploy:v1/ApproveRolloutRequest/overrideDeployPolicy/override_deploy_policy": override_deploy_policy "/clouddeploy:v1/ApproveRolloutResponse": approve_rollout_response "/clouddeploy:v1/AuditConfig": audit_config "/clouddeploy:v1/AuditConfig/auditLogConfigs": audit_log_configs @@ -62462,6 +62466,7 @@ "/clouddeploy:v1/AutomationRun/etag": etag "/clouddeploy:v1/AutomationRun/expireTime": expire_time "/clouddeploy:v1/AutomationRun/name": name +"/clouddeploy:v1/AutomationRun/policyViolation": policy_violation "/clouddeploy:v1/AutomationRun/promoteReleaseOperation": promote_release_operation "/clouddeploy:v1/AutomationRun/repairRolloutOperation": repair_rollout_operation "/clouddeploy:v1/AutomationRun/ruleId": rule_id @@ -62501,6 +62506,8 @@ "/clouddeploy:v1/CancelAutomationRunResponse": cancel_automation_run_response "/clouddeploy:v1/CancelOperationRequest": cancel_operation_request "/clouddeploy:v1/CancelRolloutRequest": cancel_rollout_request +"/clouddeploy:v1/CancelRolloutRequest/overrideDeployPolicy": override_deploy_policy +"/clouddeploy:v1/CancelRolloutRequest/overrideDeployPolicy/override_deploy_policy": override_deploy_policy "/clouddeploy:v1/CancelRolloutResponse": cancel_rollout_response "/clouddeploy:v1/ChildRolloutJobs": child_rollout_jobs "/clouddeploy:v1/ChildRolloutJobs/advanceRolloutJobs": advance_rollout_jobs @@ -62588,6 +62595,10 @@ "/clouddeploy:v1/DeliveryPipeline/suspended": suspended "/clouddeploy:v1/DeliveryPipeline/uid": uid "/clouddeploy:v1/DeliveryPipeline/updateTime": update_time +"/clouddeploy:v1/DeliveryPipelineAttribute": delivery_pipeline_attribute +"/clouddeploy:v1/DeliveryPipelineAttribute/id": id +"/clouddeploy:v1/DeliveryPipelineAttribute/labels": labels +"/clouddeploy:v1/DeliveryPipelineAttribute/labels/label": label "/clouddeploy:v1/DeliveryPipelineNotificationEvent": delivery_pipeline_notification_event "/clouddeploy:v1/DeliveryPipelineNotificationEvent/deliveryPipeline": delivery_pipeline "/clouddeploy:v1/DeliveryPipelineNotificationEvent/message": message @@ -62613,11 +62624,45 @@ "/clouddeploy:v1/DeployParameters/matchTargetLabels/match_target_label": match_target_label "/clouddeploy:v1/DeployParameters/values": values "/clouddeploy:v1/DeployParameters/values/value": value +"/clouddeploy:v1/DeployPolicy": deploy_policy +"/clouddeploy:v1/DeployPolicy/annotations": annotations +"/clouddeploy:v1/DeployPolicy/annotations/annotation": annotation +"/clouddeploy:v1/DeployPolicy/createTime": create_time +"/clouddeploy:v1/DeployPolicy/description": description +"/clouddeploy:v1/DeployPolicy/etag": etag +"/clouddeploy:v1/DeployPolicy/labels": labels +"/clouddeploy:v1/DeployPolicy/labels/label": label +"/clouddeploy:v1/DeployPolicy/name": name +"/clouddeploy:v1/DeployPolicy/rules": rules +"/clouddeploy:v1/DeployPolicy/rules/rule": rule +"/clouddeploy:v1/DeployPolicy/selectors": selectors +"/clouddeploy:v1/DeployPolicy/selectors/selector": selector +"/clouddeploy:v1/DeployPolicy/suspended": suspended +"/clouddeploy:v1/DeployPolicy/uid": uid +"/clouddeploy:v1/DeployPolicy/updateTime": update_time +"/clouddeploy:v1/DeployPolicyEvaluationEvent": deploy_policy_evaluation_event +"/clouddeploy:v1/DeployPolicyEvaluationEvent/allowed": allowed +"/clouddeploy:v1/DeployPolicyEvaluationEvent/deliveryPipeline": delivery_pipeline +"/clouddeploy:v1/DeployPolicyEvaluationEvent/deployPolicy": deploy_policy +"/clouddeploy:v1/DeployPolicyEvaluationEvent/deployPolicyUid": deploy_policy_uid +"/clouddeploy:v1/DeployPolicyEvaluationEvent/invoker": invoker +"/clouddeploy:v1/DeployPolicyEvaluationEvent/message": message +"/clouddeploy:v1/DeployPolicyEvaluationEvent/overrides": overrides +"/clouddeploy:v1/DeployPolicyEvaluationEvent/overrides/override": override +"/clouddeploy:v1/DeployPolicyEvaluationEvent/pipelineUid": pipeline_uid +"/clouddeploy:v1/DeployPolicyEvaluationEvent/rule": rule +"/clouddeploy:v1/DeployPolicyEvaluationEvent/ruleType": rule_type +"/clouddeploy:v1/DeployPolicyEvaluationEvent/target": target +"/clouddeploy:v1/DeployPolicyEvaluationEvent/targetUid": target_uid +"/clouddeploy:v1/DeployPolicyEvaluationEvent/verdict": verdict "/clouddeploy:v1/DeployPolicyNotificationEvent": deploy_policy_notification_event "/clouddeploy:v1/DeployPolicyNotificationEvent/deployPolicy": deploy_policy "/clouddeploy:v1/DeployPolicyNotificationEvent/deployPolicyUid": deploy_policy_uid "/clouddeploy:v1/DeployPolicyNotificationEvent/message": message "/clouddeploy:v1/DeployPolicyNotificationEvent/type": type +"/clouddeploy:v1/DeployPolicyResourceSelector": deploy_policy_resource_selector +"/clouddeploy:v1/DeployPolicyResourceSelector/deliveryPipeline": delivery_pipeline +"/clouddeploy:v1/DeployPolicyResourceSelector/target": target "/clouddeploy:v1/DeploymentJobs": deployment_jobs "/clouddeploy:v1/DeploymentJobs/deployJob": deploy_job "/clouddeploy:v1/DeploymentJobs/postdeployJob": postdeploy_job @@ -62652,6 +62697,8 @@ "/clouddeploy:v1/GkeCluster/proxyUrl": proxy_url "/clouddeploy:v1/IgnoreJobRequest": ignore_job_request "/clouddeploy:v1/IgnoreJobRequest/jobId": job_id +"/clouddeploy:v1/IgnoreJobRequest/overrideDeployPolicy": override_deploy_policy +"/clouddeploy:v1/IgnoreJobRequest/overrideDeployPolicy/override_deploy_policy": override_deploy_policy "/clouddeploy:v1/IgnoreJobRequest/phaseId": phase_id "/clouddeploy:v1/IgnoreJobResponse": ignore_job_response "/clouddeploy:v1/Job": job @@ -62718,6 +62765,12 @@ "/clouddeploy:v1/ListDeliveryPipelinesResponse/nextPageToken": next_page_token "/clouddeploy:v1/ListDeliveryPipelinesResponse/unreachable": unreachable "/clouddeploy:v1/ListDeliveryPipelinesResponse/unreachable/unreachable": unreachable +"/clouddeploy:v1/ListDeployPoliciesResponse": list_deploy_policies_response +"/clouddeploy:v1/ListDeployPoliciesResponse/deployPolicies": deploy_policies +"/clouddeploy:v1/ListDeployPoliciesResponse/deployPolicies/deploy_policy": deploy_policy +"/clouddeploy:v1/ListDeployPoliciesResponse/nextPageToken": next_page_token +"/clouddeploy:v1/ListDeployPoliciesResponse/unreachable": unreachable +"/clouddeploy:v1/ListDeployPoliciesResponse/unreachable/unreachable": unreachable "/clouddeploy:v1/ListJobRunsResponse": list_job_runs_response "/clouddeploy:v1/ListJobRunsResponse/jobRuns": job_runs "/clouddeploy:v1/ListJobRunsResponse/jobRuns/job_run": job_run @@ -62765,6 +62818,11 @@ "/clouddeploy:v1/MultiTarget": multi_target "/clouddeploy:v1/MultiTarget/targetIds": target_ids "/clouddeploy:v1/MultiTarget/targetIds/target_id": target_id +"/clouddeploy:v1/OneTimeWindow": one_time_window +"/clouddeploy:v1/OneTimeWindow/endDate": end_date +"/clouddeploy:v1/OneTimeWindow/endTime": end_time +"/clouddeploy:v1/OneTimeWindow/startDate": start_date +"/clouddeploy:v1/OneTimeWindow/startTime": start_time "/clouddeploy:v1/Operation": operation "/clouddeploy:v1/Operation/done": done "/clouddeploy:v1/Operation/error": error @@ -62813,6 +62871,15 @@ "/clouddeploy:v1/Policy/bindings/binding": binding "/clouddeploy:v1/Policy/etag": etag "/clouddeploy:v1/Policy/version": version +"/clouddeploy:v1/PolicyRule": policy_rule +"/clouddeploy:v1/PolicyRule/rolloutRestriction": rollout_restriction +"/clouddeploy:v1/PolicyViolation": policy_violation +"/clouddeploy:v1/PolicyViolation/policyViolationDetails": policy_violation_details +"/clouddeploy:v1/PolicyViolation/policyViolationDetails/policy_violation_detail": policy_violation_detail +"/clouddeploy:v1/PolicyViolationDetails": policy_violation_details +"/clouddeploy:v1/PolicyViolationDetails/failureMessage": failure_message +"/clouddeploy:v1/PolicyViolationDetails/policy": policy +"/clouddeploy:v1/PolicyViolationDetails/ruleId": rule_id "/clouddeploy:v1/Postdeploy": postdeploy "/clouddeploy:v1/Postdeploy/actions": actions "/clouddeploy:v1/Postdeploy/actions/action": action @@ -62932,6 +62999,8 @@ "/clouddeploy:v1/RetryAttempt/wait": wait "/clouddeploy:v1/RetryJobRequest": retry_job_request "/clouddeploy:v1/RetryJobRequest/jobId": job_id +"/clouddeploy:v1/RetryJobRequest/overrideDeployPolicy": override_deploy_policy +"/clouddeploy:v1/RetryJobRequest/overrideDeployPolicy/override_deploy_policy": override_deploy_policy "/clouddeploy:v1/RetryJobRequest/phaseId": phase_id "/clouddeploy:v1/RetryJobResponse": retry_job_response "/clouddeploy:v1/RetryPhase": retry_phase @@ -62952,6 +63021,8 @@ "/clouddeploy:v1/RollbackTargetConfig/rollout": rollout "/clouddeploy:v1/RollbackTargetConfig/startingPhaseId": starting_phase_id "/clouddeploy:v1/RollbackTargetRequest": rollback_target_request +"/clouddeploy:v1/RollbackTargetRequest/overrideDeployPolicy": override_deploy_policy +"/clouddeploy:v1/RollbackTargetRequest/overrideDeployPolicy/override_deploy_policy": override_deploy_policy "/clouddeploy:v1/RollbackTargetRequest/releaseId": release_id "/clouddeploy:v1/RollbackTargetRequest/rollbackConfig": rollback_config "/clouddeploy:v1/RollbackTargetRequest/rolloutId": rollout_id @@ -62996,6 +63067,13 @@ "/clouddeploy:v1/RolloutNotificationEvent/rolloutUid": rollout_uid "/clouddeploy:v1/RolloutNotificationEvent/targetId": target_id "/clouddeploy:v1/RolloutNotificationEvent/type": type +"/clouddeploy:v1/RolloutRestriction": rollout_restriction +"/clouddeploy:v1/RolloutRestriction/actions": actions +"/clouddeploy:v1/RolloutRestriction/actions/action": action +"/clouddeploy:v1/RolloutRestriction/id": id +"/clouddeploy:v1/RolloutRestriction/invokers": invokers +"/clouddeploy:v1/RolloutRestriction/invokers/invoker": invoker +"/clouddeploy:v1/RolloutRestriction/timeWindows": time_windows "/clouddeploy:v1/RolloutUpdateEvent": rollout_update_event "/clouddeploy:v1/RolloutUpdateEvent/message": message "/clouddeploy:v1/RolloutUpdateEvent/pipelineUid": pipeline_uid @@ -63117,6 +63195,8 @@ "/clouddeploy:v1/TargetsTypeCondition/errorDetails": error_details "/clouddeploy:v1/TargetsTypeCondition/status": status "/clouddeploy:v1/TerminateJobRunRequest": terminate_job_run_request +"/clouddeploy:v1/TerminateJobRunRequest/overrideDeployPolicy": override_deploy_policy +"/clouddeploy:v1/TerminateJobRunRequest/overrideDeployPolicy/override_deploy_policy": override_deploy_policy "/clouddeploy:v1/TerminateJobRunResponse": terminate_job_run_response "/clouddeploy:v1/TestIamPermissionsRequest": test_iam_permissions_request "/clouddeploy:v1/TestIamPermissionsRequest/permissions": permissions @@ -63124,6 +63204,17 @@ "/clouddeploy:v1/TestIamPermissionsResponse": test_iam_permissions_response "/clouddeploy:v1/TestIamPermissionsResponse/permissions": permissions "/clouddeploy:v1/TestIamPermissionsResponse/permissions/permission": permission +"/clouddeploy:v1/TimeOfDay": time_of_day +"/clouddeploy:v1/TimeOfDay/hours": hours +"/clouddeploy:v1/TimeOfDay/minutes": minutes +"/clouddeploy:v1/TimeOfDay/nanos": nanos +"/clouddeploy:v1/TimeOfDay/seconds": seconds +"/clouddeploy:v1/TimeWindows": time_windows +"/clouddeploy:v1/TimeWindows/oneTimeWindows": one_time_windows +"/clouddeploy:v1/TimeWindows/oneTimeWindows/one_time_window": one_time_window +"/clouddeploy:v1/TimeWindows/timeZone": time_zone +"/clouddeploy:v1/TimeWindows/weeklyWindows": weekly_windows +"/clouddeploy:v1/TimeWindows/weeklyWindows/weekly_window": weekly_window "/clouddeploy:v1/VerifyJob": verify_job "/clouddeploy:v1/VerifyJobRun": verify_job_run "/clouddeploy:v1/VerifyJobRun/artifactUri": artifact_uri @@ -63131,6 +63222,11 @@ "/clouddeploy:v1/VerifyJobRun/eventLogPath": event_log_path "/clouddeploy:v1/VerifyJobRun/failureCause": failure_cause "/clouddeploy:v1/VerifyJobRun/failureMessage": failure_message +"/clouddeploy:v1/WeeklyWindow": weekly_window +"/clouddeploy:v1/WeeklyWindow/daysOfWeek": days_of_week +"/clouddeploy:v1/WeeklyWindow/daysOfWeek/days_of_week": days_of_week +"/clouddeploy:v1/WeeklyWindow/endTime": end_time +"/clouddeploy:v1/WeeklyWindow/startTime": start_time "/clouddeploy:v1/clouddeploy.projects.locations.customTargetTypes.create": create_project_location_custom_target_type "/clouddeploy:v1/clouddeploy.projects.locations.customTargetTypes.create/customTargetTypeId": custom_target_type_id "/clouddeploy:v1/clouddeploy.projects.locations.customTargetTypes.create/parent": parent @@ -63228,6 +63324,7 @@ "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.abandon": abandon_release "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.abandon/name": name "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.create": create_project_location_delivery_pipeline_release +"/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.create/overrideDeployPolicy": override_deploy_policy "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.create/parent": parent "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.create/releaseId": release_id "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.create/requestId": request_id @@ -63247,6 +63344,7 @@ "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.rollouts.cancel": cancel_rollout "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.rollouts.cancel/name": name "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.rollouts.create": create_project_location_delivery_pipeline_release_rollout +"/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.rollouts.create/overrideDeployPolicy": override_deploy_policy "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.rollouts.create/parent": parent "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.rollouts.create/requestId": request_id "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.releases.rollouts.create/rolloutId": rollout_id @@ -63280,6 +63378,31 @@ "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.setIamPolicy/resource": resource "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.testIamPermissions": test_delivery_pipeline_iam_permissions "/clouddeploy:v1/clouddeploy.projects.locations.deliveryPipelines.testIamPermissions/resource": resource +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.create": create_project_location_deploy_policy +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.create/deployPolicyId": deploy_policy_id +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.create/parent": parent +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.create/requestId": request_id +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.create/validateOnly": validate_only +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.delete": delete_project_location_deploy_policy +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.delete/allowMissing": allow_missing +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.delete/etag": etag +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.delete/name": name +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.delete/requestId": request_id +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.delete/validateOnly": validate_only +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.get": get_project_location_deploy_policy +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.get/name": name +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.list": list_project_location_deploy_policies +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.list/filter": filter +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.list/orderBy": order_by +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.list/pageSize": page_size +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.list/pageToken": page_token +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.list/parent": parent +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.patch": patch_project_location_deploy_policy +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.patch/allowMissing": allow_missing +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.patch/name": name +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.patch/requestId": request_id +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.patch/updateMask": update_mask +"/clouddeploy:v1/clouddeploy.projects.locations.deployPolicies.patch/validateOnly": validate_only "/clouddeploy:v1/clouddeploy.projects.locations.get": get_project_location "/clouddeploy:v1/clouddeploy.projects.locations.get/name": name "/clouddeploy:v1/clouddeploy.projects.locations.getConfig": get_project_location_config diff --git a/generated/google-apis-clouddeploy_v1/CHANGELOG.md b/generated/google-apis-clouddeploy_v1/CHANGELOG.md index 308475b9e1d..bc90eac6f0e 100644 --- a/generated/google-apis-clouddeploy_v1/CHANGELOG.md +++ b/generated/google-apis-clouddeploy_v1/CHANGELOG.md @@ -1,5 +1,9 @@ # Release history for google-apis-clouddeploy_v1 +### v0.50.0 (2024-09-29) + +* Regenerated from discovery document revision 20240920 + ### v0.49.0 (2024-08-18) * Regenerated from discovery document revision 20240809 diff --git a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/classes.rb b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/classes.rb index cab4c3ffd93..d2d90bf6c3e 100644 --- a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/classes.rb +++ b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/classes.rb @@ -130,6 +130,12 @@ def update!(**args) class AdvanceRolloutRequest include Google::Apis::Core::Hashable + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. + # Corresponds to the JSON property `overrideDeployPolicy` + # @return [Array] + attr_accessor :override_deploy_policy + # Required. The phase ID to advance the `Rollout` to. # Corresponds to the JSON property `phaseId` # @return [String] @@ -141,6 +147,7 @@ def initialize(**args) # Update properties of this object def update!(**args) + @override_deploy_policy = args[:override_deploy_policy] if args.key?(:override_deploy_policy) @phase_id = args[:phase_id] if args.key?(:phase_id) end end @@ -232,6 +239,12 @@ class ApproveRolloutRequest attr_accessor :approved alias_method :approved?, :approved + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. + # Corresponds to the JSON property `overrideDeployPolicy` + # @return [Array] + attr_accessor :override_deploy_policy + def initialize(**args) update!(**args) end @@ -239,6 +252,7 @@ def initialize(**args) # Update properties of this object def update!(**args) @approved = args[:approved] if args.key?(:approved) + @override_deploy_policy = args[:override_deploy_policy] if args.key?(:override_deploy_policy) end end @@ -637,6 +651,13 @@ class AutomationRun # @return [String] attr_accessor :name + # Returned from an action if one or more policies were violated, and therefore + # the action was prevented. Contains information about what policies were + # violated and why. + # Corresponds to the JSON property `policyViolation` + # @return [Google::Apis::ClouddeployV1::PolicyViolation] + attr_accessor :policy_violation + # Contains the information of an automated promote-release operation. # Corresponds to the JSON property `promoteReleaseOperation` # @return [Google::Apis::ClouddeployV1::PromoteReleaseOperation] @@ -700,6 +721,7 @@ def update!(**args) @etag = args[:etag] if args.key?(:etag) @expire_time = args[:expire_time] if args.key?(:expire_time) @name = args[:name] if args.key?(:name) + @policy_violation = args[:policy_violation] if args.key?(:policy_violation) @promote_release_operation = args[:promote_release_operation] if args.key?(:promote_release_operation) @repair_rollout_operation = args[:repair_rollout_operation] if args.key?(:repair_rollout_operation) @rule_id = args[:rule_id] if args.key?(:rule_id) @@ -1012,12 +1034,19 @@ def update!(**args) class CancelRolloutRequest include Google::Apis::Core::Hashable + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. + # Corresponds to the JSON property `overrideDeployPolicy` + # @return [Array] + attr_accessor :override_deploy_policy + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @override_deploy_policy = args[:override_deploy_policy] if args.key?(:override_deploy_policy) end end @@ -1661,6 +1690,33 @@ def update!(**args) end end + # Contains criteria for selecting DeliveryPipelines. + class DeliveryPipelineAttribute + include Google::Apis::Core::Hashable + + # ID of the `DeliveryPipeline`. The value of this field could be one of the + # following: * The last segment of a pipeline name * "*", all delivery pipelines + # in a location + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # DeliveryPipeline labels. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @labels = args[:labels] if args.key?(:labels) + end + end + # Payload proto for "clouddeploy.googleapis.com/deliverypipeline_notification" # Platform Log event that describes the failure to send delivery pipeline status # change Pub/Sub notification. @@ -1846,6 +1902,210 @@ def update!(**args) end end + # A `DeployPolicy` resource in the Cloud Deploy API. A `DeployPolicy` inhibits + # manual or automation driven actions within a Delivery Pipeline or Target. + class DeployPolicy + include Google::Apis::Core::Hashable + + # User annotations. These attributes can only be set and used by the user, and + # not by Cloud Deploy. Annotations must meet the following constraints: * + # Annotations are key/value pairs. * Valid annotation keys have two segments: an + # optional prefix and name, separated by a slash (`/`). * The name segment is + # required and must be 63 characters or less, beginning and ending with an + # alphanumeric character (`[a-z0-9A-Z]`) with dashes (`-`), underscores (`_`), + # dots (`.`), and alphanumerics between. * The prefix is optional. If specified, + # the prefix must be a DNS subdomain: a series of DNS labels separated by dots(`. + # `), not longer than 253 characters in total, followed by a slash (`/`). See + # https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/# + # syntax-and-character-set for more details. + # Corresponds to the JSON property `annotations` + # @return [Hash] + attr_accessor :annotations + + # Output only. Time at which the deploy policy was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Description of the `DeployPolicy`. Max length is 255 characters. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The weak etag of the `Automation` resource. This checksum is computed by the + # server based on the value of other fields, and may be sent on update and + # delete requests to ensure the client has an up-to-date value before proceeding. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # Labels are attributes that can be set and used by both the user and by Cloud + # Deploy. Labels must meet the following constraints: * Keys and values can + # contain only lowercase letters, numeric characters, underscores, and dashes. * + # All characters must use UTF-8 encoding, and international characters are + # allowed. * Keys must start with a lowercase letter or international character. + # * Each resource is limited to a maximum of 64 labels. Both keys and values are + # additionally constrained to be <= 128 bytes. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Output only. Name of the `DeployPolicy`. Format is `projects/`project`/ + # locations/`location`/deployPolicies/`deployPolicy``. The `deployPolicy` + # component must match `[a-z]([a-z0-9-]`0,61`[a-z0-9])?` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Required. Rules to apply. At least one rule must be present. + # Corresponds to the JSON property `rules` + # @return [Array] + attr_accessor :rules + + # Required. Selected resources to which the policy will be applied. At least one + # selector is required. If one selector matches the resource the policy applies. + # For example, if there are two selectors and the action being attempted matches + # one of them, the policy will apply to that action. + # Corresponds to the JSON property `selectors` + # @return [Array] + attr_accessor :selectors + + # When suspended, the policy will not prevent actions from occurring, even if + # the action violates the policy. + # Corresponds to the JSON property `suspended` + # @return [Boolean] + attr_accessor :suspended + alias_method :suspended?, :suspended + + # Output only. Unique identifier of the `DeployPolicy`. + # Corresponds to the JSON property `uid` + # @return [String] + attr_accessor :uid + + # Output only. Most recent time at which the deploy policy was updated. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @annotations = args[:annotations] if args.key?(:annotations) + @create_time = args[:create_time] if args.key?(:create_time) + @description = args[:description] if args.key?(:description) + @etag = args[:etag] if args.key?(:etag) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @rules = args[:rules] if args.key?(:rules) + @selectors = args[:selectors] if args.key?(:selectors) + @suspended = args[:suspended] if args.key?(:suspended) + @uid = args[:uid] if args.key?(:uid) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # Payload proto for "clouddeploy.googleapis.com/deploypolicy_evaluation" + # Platform Log event that describes the deploy policy evaluation event. + class DeployPolicyEvaluationEvent + include Google::Apis::Core::Hashable + + # Whether the request is allowed. Allowed is set as true if: (1) the request + # complies with the policy; or (2) the request doesn't comply with the policy + # but the policy was overridden; or (3) the request doesn't comply with the + # policy but the policy was suspended + # Corresponds to the JSON property `allowed` + # @return [Boolean] + attr_accessor :allowed + alias_method :allowed?, :allowed + + # The name of the `Delivery Pipeline`. + # Corresponds to the JSON property `deliveryPipeline` + # @return [String] + attr_accessor :delivery_pipeline + + # The name of the `DeployPolicy`. + # Corresponds to the JSON property `deployPolicy` + # @return [String] + attr_accessor :deploy_policy + + # Unique identifier of the `DeployPolicy`. + # Corresponds to the JSON property `deployPolicyUid` + # @return [String] + attr_accessor :deploy_policy_uid + + # What invoked the action (e.g. a user or automation). + # Corresponds to the JSON property `invoker` + # @return [String] + attr_accessor :invoker + + # Debug message for when a deploy policy event occurs. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + # Things that could have overridden the policy verdict. Overrides together with + # verdict decide whether the request is allowed. + # Corresponds to the JSON property `overrides` + # @return [Array] + attr_accessor :overrides + + # Unique identifier of the `Delivery Pipeline`. + # Corresponds to the JSON property `pipelineUid` + # @return [String] + attr_accessor :pipeline_uid + + # Rule id. + # Corresponds to the JSON property `rule` + # @return [String] + attr_accessor :rule + + # Rule type (e.g. Restrict Rollouts). + # Corresponds to the JSON property `ruleType` + # @return [String] + attr_accessor :rule_type + + # The name of the `Target`. This is an optional field, as a `Target` may not + # always be applicable to a policy. + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # Unique identifier of the `Target`. This is an optional field, as a `Target` + # may not always be applicable to a policy. + # Corresponds to the JSON property `targetUid` + # @return [String] + attr_accessor :target_uid + + # The policy verdict of the request. + # Corresponds to the JSON property `verdict` + # @return [String] + attr_accessor :verdict + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allowed = args[:allowed] if args.key?(:allowed) + @delivery_pipeline = args[:delivery_pipeline] if args.key?(:delivery_pipeline) + @deploy_policy = args[:deploy_policy] if args.key?(:deploy_policy) + @deploy_policy_uid = args[:deploy_policy_uid] if args.key?(:deploy_policy_uid) + @invoker = args[:invoker] if args.key?(:invoker) + @message = args[:message] if args.key?(:message) + @overrides = args[:overrides] if args.key?(:overrides) + @pipeline_uid = args[:pipeline_uid] if args.key?(:pipeline_uid) + @rule = args[:rule] if args.key?(:rule) + @rule_type = args[:rule_type] if args.key?(:rule_type) + @target = args[:target] if args.key?(:target) + @target_uid = args[:target_uid] if args.key?(:target_uid) + @verdict = args[:verdict] if args.key?(:verdict) + end + end + # Payload proto for "clouddeploy.googleapis.com/deploypolicy_notification". # Platform Log event that describes the failure to send a pub/sub notification # when there is a DeployPolicy status change. @@ -1885,6 +2145,35 @@ def update!(**args) end end + # Contains information on the resources to select for a deploy policy. + # Attributes provided must all match the resource in order for policy + # restrictions to apply. For example, if delivery pipelines attributes given are + # an id "prod" and labels "foo: bar", a delivery pipeline resource must match + # both that id and have that label in order to be subject to the policy. + class DeployPolicyResourceSelector + include Google::Apis::Core::Hashable + + # Contains criteria for selecting DeliveryPipelines. + # Corresponds to the JSON property `deliveryPipeline` + # @return [Google::Apis::ClouddeployV1::DeliveryPipelineAttribute] + attr_accessor :delivery_pipeline + + # Contains criteria for selecting Targets. + # Corresponds to the JSON property `target` + # @return [Google::Apis::ClouddeployV1::TargetAttribute] + attr_accessor :target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @delivery_pipeline = args[:delivery_pipeline] if args.key?(:delivery_pipeline) + @target = args[:target] if args.key?(:target) + end + end + # Deployment job composition. class DeploymentJobs include Google::Apis::Core::Hashable @@ -2168,6 +2457,12 @@ class IgnoreJobRequest # @return [String] attr_accessor :job_id + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. + # Corresponds to the JSON property `overrideDeployPolicy` + # @return [Array] + attr_accessor :override_deploy_policy + # Required. The phase ID the Job to ignore belongs to. # Corresponds to the JSON property `phaseId` # @return [String] @@ -2180,6 +2475,7 @@ def initialize(**args) # Update properties of this object def update!(**args) @job_id = args[:job_id] if args.key?(:job_id) + @override_deploy_policy = args[:override_deploy_policy] if args.key?(:override_deploy_policy) @phase_id = args[:phase_id] if args.key?(:phase_id) end end @@ -2603,6 +2899,38 @@ def update!(**args) end end + # The response object from `ListDeployPolicies`. + class ListDeployPoliciesResponse + include Google::Apis::Core::Hashable + + # The `DeployPolicy` objects. + # Corresponds to the JSON property `deployPolicies` + # @return [Array] + attr_accessor :deploy_policies + + # A token, which can be sent as `page_token` to retrieve the next page. If this + # field is omitted, there are no subsequent pages. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Locations that could not be reached. + # Corresponds to the JSON property `unreachable` + # @return [Array] + attr_accessor :unreachable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deploy_policies = args[:deploy_policies] if args.key?(:deploy_policies) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @unreachable = args[:unreachable] if args.key?(:unreachable) + end + end + # ListJobRunsResponse is the response object returned by `ListJobRuns`. class ListJobRunsResponse include Google::Apis::Core::Hashable @@ -2879,6 +3207,62 @@ def update!(**args) end end + # One-time window within which actions are restricted. For example, blocking + # actions over New Year's Eve from December 31st at 5pm to January 1st at 9am. + class OneTimeWindow + include Google::Apis::Core::Hashable + + # Represents a whole or partial calendar date, such as a birthday. The time of + # day and time zone are either specified elsewhere or are insignificant. The + # date is relative to the Gregorian Calendar. This can represent one of the + # following: * A full date, with non-zero year, month, and day values. * A month + # and day, with a zero year (for example, an anniversary). * A year on its own, + # with a zero month and a zero day. * A year and month, with a zero day (for + # example, a credit card expiration date). Related types: * google.type. + # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp + # Corresponds to the JSON property `endDate` + # @return [Google::Apis::ClouddeployV1::Date] + attr_accessor :end_date + + # Represents a time of day. The date and time zone are either not significant or + # are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `endTime` + # @return [Google::Apis::ClouddeployV1::TimeOfDay] + attr_accessor :end_time + + # Represents a whole or partial calendar date, such as a birthday. The time of + # day and time zone are either specified elsewhere or are insignificant. The + # date is relative to the Gregorian Calendar. This can represent one of the + # following: * A full date, with non-zero year, month, and day values. * A month + # and day, with a zero year (for example, an anniversary). * A year on its own, + # with a zero month and a zero day. * A year and month, with a zero day (for + # example, a credit card expiration date). Related types: * google.type. + # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp + # Corresponds to the JSON property `startDate` + # @return [Google::Apis::ClouddeployV1::Date] + attr_accessor :start_date + + # Represents a time of day. The date and time zone are either not significant or + # are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `startTime` + # @return [Google::Apis::ClouddeployV1::TimeOfDay] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_date = args[:end_date] if args.key?(:end_date) + @end_time = args[:end_time] if args.key?(:end_time) + @start_date = args[:start_date] if args.key?(:start_date) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + # This resource represents a long-running operation that is the result of a # network API call. class Operation @@ -3289,6 +3673,79 @@ def update!(**args) end end + # Deploy Policy rule. + class PolicyRule + include Google::Apis::Core::Hashable + + # Rollout restrictions. + # Corresponds to the JSON property `rolloutRestriction` + # @return [Google::Apis::ClouddeployV1::RolloutRestriction] + attr_accessor :rollout_restriction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @rollout_restriction = args[:rollout_restriction] if args.key?(:rollout_restriction) + end + end + + # Returned from an action if one or more policies were violated, and therefore + # the action was prevented. Contains information about what policies were + # violated and why. + class PolicyViolation + include Google::Apis::Core::Hashable + + # Policy violation details. + # Corresponds to the JSON property `policyViolationDetails` + # @return [Array] + attr_accessor :policy_violation_details + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy_violation_details = args[:policy_violation_details] if args.key?(:policy_violation_details) + end + end + + # Policy violation details. + class PolicyViolationDetails + include Google::Apis::Core::Hashable + + # User readable message about why the request violated a policy. This is not + # intended for machine parsing. + # Corresponds to the JSON property `failureMessage` + # @return [String] + attr_accessor :failure_message + + # Name of the policy that was violated. Policy resource will be in the format of + # `projects/`project`/locations/`location`/policies/`policy``. + # Corresponds to the JSON property `policy` + # @return [String] + attr_accessor :policy + + # Id of the rule that triggered the policy violation. + # Corresponds to the JSON property `ruleId` + # @return [String] + attr_accessor :rule_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @failure_message = args[:failure_message] if args.key?(:failure_message) + @policy = args[:policy] if args.key?(:policy) + @rule_id = args[:rule_id] if args.key?(:rule_id) + end + end + # Postdeploy contains the postdeploy job configuration information. class Postdeploy include Google::Apis::Core::Hashable @@ -4044,6 +4501,12 @@ class RetryJobRequest # @return [String] attr_accessor :job_id + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. + # Corresponds to the JSON property `overrideDeployPolicy` + # @return [Array] + attr_accessor :override_deploy_policy + # Required. The phase ID the Job to retry belongs to. # Corresponds to the JSON property `phaseId` # @return [String] @@ -4056,6 +4519,7 @@ def initialize(**args) # Update properties of this object def update!(**args) @job_id = args[:job_id] if args.key?(:job_id) + @override_deploy_policy = args[:override_deploy_policy] if args.key?(:override_deploy_policy) @phase_id = args[:phase_id] if args.key?(:phase_id) end end @@ -4174,6 +4638,12 @@ def update!(**args) class RollbackTargetRequest include Google::Apis::Core::Hashable + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deploy_policy``. + # Corresponds to the JSON property `overrideDeployPolicy` + # @return [Array] + attr_accessor :override_deploy_policy + # Optional. ID of the `Release` to roll back to. If this isn't specified, the # previous successful `Rollout` to the specified target will be used to # determine the `Release`. @@ -4215,6 +4685,7 @@ def initialize(**args) # Update properties of this object def update!(**args) + @override_deploy_policy = args[:override_deploy_policy] if args.key?(:override_deploy_policy) @release_id = args[:release_id] if args.key?(:release_id) @rollback_config = args[:rollback_config] if args.key?(:rollback_config) @rollout_id = args[:rollout_id] if args.key?(:rollout_id) @@ -4470,6 +4941,46 @@ def update!(**args) end end + # Rollout restrictions. + class RolloutRestriction + include Google::Apis::Core::Hashable + + # Optional. Rollout actions to be restricted as part of the policy. If left + # empty, all actions will be restricted. + # Corresponds to the JSON property `actions` + # @return [Array] + attr_accessor :actions + + # Required. Restriction rule ID. Required and must be unique within a + # DeployPolicy. The format is `[a-z]([a-z0-9-]`0,61`[a-z0-9])?`. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Optional. What invoked the action. If left empty, all invoker types will be + # restricted. + # Corresponds to the JSON property `invokers` + # @return [Array] + attr_accessor :invokers + + # Time windows within which actions are restricted. + # Corresponds to the JSON property `timeWindows` + # @return [Google::Apis::ClouddeployV1::TimeWindows] + attr_accessor :time_windows + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @actions = args[:actions] if args.key?(:actions) + @id = args[:id] if args.key?(:id) + @invokers = args[:invokers] if args.key?(:invokers) + @time_windows = args[:time_windows] if args.key?(:time_windows) + end + end + # Payload proto for "clouddeploy.googleapis.com/rollout_update" Platform Log # event that describes the rollout update event. class RolloutUpdateEvent @@ -5370,12 +5881,19 @@ def update!(**args) class TerminateJobRunRequest include Google::Apis::Core::Hashable + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. + # Corresponds to the JSON property `overrideDeployPolicy` + # @return [Array] + attr_accessor :override_deploy_policy + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @override_deploy_policy = args[:override_deploy_policy] if args.key?(:override_deploy_policy) end end @@ -5432,6 +5950,79 @@ def update!(**args) end end + # Represents a time of day. The date and time zone are either not significant or + # are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + class TimeOfDay + include Google::Apis::Core::Hashable + + # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to + # allow the value "24:00:00" for scenarios like business closing time. + # Corresponds to the JSON property `hours` + # @return [Fixnum] + attr_accessor :hours + + # Minutes of hour of day. Must be from 0 to 59. + # Corresponds to the JSON property `minutes` + # @return [Fixnum] + attr_accessor :minutes + + # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + # Corresponds to the JSON property `nanos` + # @return [Fixnum] + attr_accessor :nanos + + # Seconds of minutes of the time. Must normally be from 0 to 59. An API may + # allow the value 60 if it allows leap-seconds. + # Corresponds to the JSON property `seconds` + # @return [Fixnum] + attr_accessor :seconds + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hours = args[:hours] if args.key?(:hours) + @minutes = args[:minutes] if args.key?(:minutes) + @nanos = args[:nanos] if args.key?(:nanos) + @seconds = args[:seconds] if args.key?(:seconds) + end + end + + # Time windows within which actions are restricted. + class TimeWindows + include Google::Apis::Core::Hashable + + # Optional. One-time windows within which actions are restricted. + # Corresponds to the JSON property `oneTimeWindows` + # @return [Array] + attr_accessor :one_time_windows + + # Required. The time zone in IANA format [IANA Time Zone Database](https://www. + # iana.org/time-zones) (e.g. America/New_York). + # Corresponds to the JSON property `timeZone` + # @return [String] + attr_accessor :time_zone + + # Optional. Recurring weekly windows within which actions are restricted. + # Corresponds to the JSON property `weeklyWindows` + # @return [Array] + attr_accessor :weekly_windows + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @one_time_windows = args[:one_time_windows] if args.key?(:one_time_windows) + @time_zone = args[:time_zone] if args.key?(:time_zone) + @weekly_windows = args[:weekly_windows] if args.key?(:weekly_windows) + end + end + # A verify Job. class VerifyJob include Google::Apis::Core::Hashable @@ -5490,6 +6081,42 @@ def update!(**args) @failure_message = args[:failure_message] if args.key?(:failure_message) end end + + # Weekly windows. For example, blocking actions every Saturday and Sunday. + # Another example would be blocking actions every weekday from 5pm to midnight. + class WeeklyWindow + include Google::Apis::Core::Hashable + + # Optional. Days of week. If left empty, all days of the week will be included. + # Corresponds to the JSON property `daysOfWeek` + # @return [Array] + attr_accessor :days_of_week + + # Represents a time of day. The date and time zone are either not significant or + # are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `endTime` + # @return [Google::Apis::ClouddeployV1::TimeOfDay] + attr_accessor :end_time + + # Represents a time of day. The date and time zone are either not significant or + # are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `startTime` + # @return [Google::Apis::ClouddeployV1::TimeOfDay] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @days_of_week = args[:days_of_week] if args.key?(:days_of_week) + @end_time = args[:end_time] if args.key?(:end_time) + @start_time = args[:start_time] if args.key?(:start_time) + end + end end end end diff --git a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/gem_version.rb b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/gem_version.rb index 86bf3741e86..74d4062f723 100644 --- a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/gem_version.rb +++ b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/gem_version.rb @@ -16,13 +16,13 @@ module Google module Apis module ClouddeployV1 # Version of the google-apis-clouddeploy_v1 gem - GEM_VERSION = "0.49.0" + GEM_VERSION = "0.50.0" # Version of the code generator used to generate this client GENERATOR_VERSION = "0.15.1" # Revision of the discovery document this client was generated from - REVISION = "20240809" + REVISION = "20240920" end end end diff --git a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/representations.rb b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/representations.rb index 62c9443492d..a9c6e5af3f6 100644 --- a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/representations.rb +++ b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/representations.rb @@ -310,6 +310,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class DeliveryPipelineAttribute + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class DeliveryPipelineNotificationEvent class Representation < Google::Apis::Core::JsonRepresentation; end @@ -346,12 +352,30 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class DeployPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeployPolicyEvaluationEvent + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class DeployPolicyNotificationEvent class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class DeployPolicyResourceSelector + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class DeploymentJobs class Representation < Google::Apis::Core::JsonRepresentation; end @@ -448,6 +472,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class ListDeployPoliciesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ListJobRunsResponse class Representation < Google::Apis::Core::JsonRepresentation; end @@ -502,6 +532,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class OneTimeWindow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Operation class Representation < Google::Apis::Core::JsonRepresentation; end @@ -550,6 +586,24 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class PolicyRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PolicyViolation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PolicyViolationDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Postdeploy class Representation < Google::Apis::Core::JsonRepresentation; end @@ -718,6 +772,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class RolloutRestriction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class RolloutUpdateEvent class Representation < Google::Apis::Core::JsonRepresentation; end @@ -874,6 +934,18 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class TimeOfDay + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TimeWindows + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class VerifyJob class Representation < Google::Apis::Core::JsonRepresentation; end @@ -886,6 +958,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class WeeklyWindow + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class AbandonReleaseRequest # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -925,6 +1003,7 @@ class Representation < Google::Apis::Core::JsonRepresentation class AdvanceRolloutRequest # @private class Representation < Google::Apis::Core::JsonRepresentation + collection :override_deploy_policy, as: 'overrideDeployPolicy' property :phase_id, as: 'phaseId' end end @@ -957,6 +1036,7 @@ class ApproveRolloutRequest # @private class Representation < Google::Apis::Core::JsonRepresentation property :approved, as: 'approved' + collection :override_deploy_policy, as: 'overrideDeployPolicy' end end @@ -1062,6 +1142,8 @@ class Representation < Google::Apis::Core::JsonRepresentation property :etag, as: 'etag' property :expire_time, as: 'expireTime' property :name, as: 'name' + property :policy_violation, as: 'policyViolation', class: Google::Apis::ClouddeployV1::PolicyViolation, decorator: Google::Apis::ClouddeployV1::PolicyViolation::Representation + property :promote_release_operation, as: 'promoteReleaseOperation', class: Google::Apis::ClouddeployV1::PromoteReleaseOperation, decorator: Google::Apis::ClouddeployV1::PromoteReleaseOperation::Representation property :repair_rollout_operation, as: 'repairRolloutOperation', class: Google::Apis::ClouddeployV1::RepairRolloutOperation, decorator: Google::Apis::ClouddeployV1::RepairRolloutOperation::Representation @@ -1152,6 +1234,7 @@ class Representation < Google::Apis::Core::JsonRepresentation class CancelRolloutRequest # @private class Representation < Google::Apis::Core::JsonRepresentation + collection :override_deploy_policy, as: 'overrideDeployPolicy' end end @@ -1331,6 +1414,14 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class DeliveryPipelineAttribute + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :labels, as: 'labels' + end + end + class DeliveryPipelineNotificationEvent # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1388,6 +1479,44 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class DeployPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :annotations, as: 'annotations' + property :create_time, as: 'createTime' + property :description, as: 'description' + property :etag, as: 'etag' + hash :labels, as: 'labels' + property :name, as: 'name' + collection :rules, as: 'rules', class: Google::Apis::ClouddeployV1::PolicyRule, decorator: Google::Apis::ClouddeployV1::PolicyRule::Representation + + collection :selectors, as: 'selectors', class: Google::Apis::ClouddeployV1::DeployPolicyResourceSelector, decorator: Google::Apis::ClouddeployV1::DeployPolicyResourceSelector::Representation + + property :suspended, as: 'suspended' + property :uid, as: 'uid' + property :update_time, as: 'updateTime' + end + end + + class DeployPolicyEvaluationEvent + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :allowed, as: 'allowed' + property :delivery_pipeline, as: 'deliveryPipeline' + property :deploy_policy, as: 'deployPolicy' + property :deploy_policy_uid, as: 'deployPolicyUid' + property :invoker, as: 'invoker' + property :message, as: 'message' + collection :overrides, as: 'overrides' + property :pipeline_uid, as: 'pipelineUid' + property :rule, as: 'rule' + property :rule_type, as: 'ruleType' + property :target, as: 'target' + property :target_uid, as: 'targetUid' + property :verdict, as: 'verdict' + end + end + class DeployPolicyNotificationEvent # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1398,6 +1527,16 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class DeployPolicyResourceSelector + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :delivery_pipeline, as: 'deliveryPipeline', class: Google::Apis::ClouddeployV1::DeliveryPipelineAttribute, decorator: Google::Apis::ClouddeployV1::DeliveryPipelineAttribute::Representation + + property :target, as: 'target', class: Google::Apis::ClouddeployV1::TargetAttribute, decorator: Google::Apis::ClouddeployV1::TargetAttribute::Representation + + end + end + class DeploymentJobs # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1469,6 +1608,7 @@ class IgnoreJobRequest # @private class Representation < Google::Apis::Core::JsonRepresentation property :job_id, as: 'jobId' + collection :override_deploy_policy, as: 'overrideDeployPolicy' property :phase_id, as: 'phaseId' end end @@ -1593,6 +1733,16 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class ListDeployPoliciesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :deploy_policies, as: 'deployPolicies', class: Google::Apis::ClouddeployV1::DeployPolicy, decorator: Google::Apis::ClouddeployV1::DeployPolicy::Representation + + property :next_page_token, as: 'nextPageToken' + collection :unreachable, as: 'unreachable' + end + end + class ListJobRunsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1681,6 +1831,20 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class OneTimeWindow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_date, as: 'endDate', class: Google::Apis::ClouddeployV1::Date, decorator: Google::Apis::ClouddeployV1::Date::Representation + + property :end_time, as: 'endTime', class: Google::Apis::ClouddeployV1::TimeOfDay, decorator: Google::Apis::ClouddeployV1::TimeOfDay::Representation + + property :start_date, as: 'startDate', class: Google::Apis::ClouddeployV1::Date, decorator: Google::Apis::ClouddeployV1::Date::Representation + + property :start_time, as: 'startTime', class: Google::Apis::ClouddeployV1::TimeOfDay, decorator: Google::Apis::ClouddeployV1::TimeOfDay::Representation + + end + end + class Operation # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1774,6 +1938,31 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class PolicyRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :rollout_restriction, as: 'rolloutRestriction', class: Google::Apis::ClouddeployV1::RolloutRestriction, decorator: Google::Apis::ClouddeployV1::RolloutRestriction::Representation + + end + end + + class PolicyViolation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :policy_violation_details, as: 'policyViolationDetails', class: Google::Apis::ClouddeployV1::PolicyViolationDetails, decorator: Google::Apis::ClouddeployV1::PolicyViolationDetails::Representation + + end + end + + class PolicyViolationDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :failure_message, as: 'failureMessage' + property :policy, as: 'policy' + property :rule_id, as: 'ruleId' + end + end + class Postdeploy # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1980,6 +2169,7 @@ class RetryJobRequest # @private class Representation < Google::Apis::Core::JsonRepresentation property :job_id, as: 'jobId' + collection :override_deploy_policy, as: 'overrideDeployPolicy' property :phase_id, as: 'phaseId' end end @@ -2022,6 +2212,7 @@ class Representation < Google::Apis::Core::JsonRepresentation class RollbackTargetRequest # @private class Representation < Google::Apis::Core::JsonRepresentation + collection :override_deploy_policy, as: 'overrideDeployPolicy' property :release_id, as: 'releaseId' property :rollback_config, as: 'rollbackConfig', class: Google::Apis::ClouddeployV1::RollbackTargetConfig, decorator: Google::Apis::ClouddeployV1::RollbackTargetConfig::Representation @@ -2084,6 +2275,17 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class RolloutRestriction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :actions, as: 'actions' + property :id, as: 'id' + collection :invokers, as: 'invokers' + property :time_windows, as: 'timeWindows', class: Google::Apis::ClouddeployV1::TimeWindows, decorator: Google::Apis::ClouddeployV1::TimeWindows::Representation + + end + end + class RolloutUpdateEvent # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -2326,6 +2528,7 @@ class Representation < Google::Apis::Core::JsonRepresentation class TerminateJobRunRequest # @private class Representation < Google::Apis::Core::JsonRepresentation + collection :override_deploy_policy, as: 'overrideDeployPolicy' end end @@ -2349,6 +2552,27 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class TimeOfDay + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hours, as: 'hours' + property :minutes, as: 'minutes' + property :nanos, as: 'nanos' + property :seconds, as: 'seconds' + end + end + + class TimeWindows + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :one_time_windows, as: 'oneTimeWindows', class: Google::Apis::ClouddeployV1::OneTimeWindow, decorator: Google::Apis::ClouddeployV1::OneTimeWindow::Representation + + property :time_zone, as: 'timeZone' + collection :weekly_windows, as: 'weeklyWindows', class: Google::Apis::ClouddeployV1::WeeklyWindow, decorator: Google::Apis::ClouddeployV1::WeeklyWindow::Representation + + end + end + class VerifyJob # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -2365,6 +2589,17 @@ class Representation < Google::Apis::Core::JsonRepresentation property :failure_message, as: 'failureMessage' end end + + class WeeklyWindow + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :days_of_week, as: 'daysOfWeek' + property :end_time, as: 'endTime', class: Google::Apis::ClouddeployV1::TimeOfDay, decorator: Google::Apis::ClouddeployV1::TimeOfDay::Representation + + property :start_time, as: 'startTime', class: Google::Apis::ClouddeployV1::TimeOfDay, decorator: Google::Apis::ClouddeployV1::TimeOfDay::Representation + + end + end end end end diff --git a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/service.rb b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/service.rb index fd33564f548..5c86ae19423 100644 --- a/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/service.rb +++ b/generated/google-apis-clouddeploy_v1/lib/google/apis/clouddeploy_v1/service.rb @@ -1311,6 +1311,9 @@ def abandon_release(name, abandon_release_request_object = nil, fields: nil, quo # is `projects/`project_id`/locations/`location_name`/deliveryPipelines/` # pipeline_name``. # @param [Google::Apis::ClouddeployV1::Release] release_object + # @param [Array, String] override_deploy_policy + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. # @param [String] release_id # Required. ID of the `Release`. # @param [String] request_id @@ -1344,13 +1347,14 @@ def abandon_release(name, abandon_release_request_object = nil, fields: nil, quo # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def create_project_location_delivery_pipeline_release(parent, release_object = nil, release_id: nil, request_id: nil, validate_only: nil, fields: nil, quota_user: nil, options: nil, &block) + def create_project_location_delivery_pipeline_release(parent, release_object = nil, override_deploy_policy: nil, release_id: nil, request_id: nil, validate_only: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+parent}/releases', options) command.request_representation = Google::Apis::ClouddeployV1::Release::Representation command.request_object = release_object command.response_representation = Google::Apis::ClouddeployV1::Operation::Representation command.response_class = Google::Apis::ClouddeployV1::Operation command.params['parent'] = parent unless parent.nil? + command.query['overrideDeployPolicy'] = override_deploy_policy unless override_deploy_policy.nil? command.query['releaseId'] = release_id unless release_id.nil? command.query['requestId'] = request_id unless request_id.nil? command.query['validateOnly'] = validate_only unless validate_only.nil? @@ -1552,6 +1556,9 @@ def cancel_rollout(name, cancel_rollout_request_object = nil, fields: nil, quota # format is `projects/`project_id`/locations/`location_name`/deliveryPipelines/` # pipeline_name`/releases/`release_name``. # @param [Google::Apis::ClouddeployV1::Rollout] rollout_object + # @param [Array, String] override_deploy_policy + # Optional. Deploy policies to override. Format is `projects/`project`/locations/ + # `location`/deployPolicies/`deployPolicy``. # @param [String] request_id # Optional. A request ID to identify requests. Specify a unique request ID so # that if you must retry your request, the server knows to ignore the request if @@ -1588,13 +1595,14 @@ def cancel_rollout(name, cancel_rollout_request_object = nil, fields: nil, quota # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def create_project_location_delivery_pipeline_release_rollout(parent, rollout_object = nil, request_id: nil, rollout_id: nil, starting_phase_id: nil, validate_only: nil, fields: nil, quota_user: nil, options: nil, &block) + def create_project_location_delivery_pipeline_release_rollout(parent, rollout_object = nil, override_deploy_policy: nil, request_id: nil, rollout_id: nil, starting_phase_id: nil, validate_only: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+parent}/rollouts', options) command.request_representation = Google::Apis::ClouddeployV1::Rollout::Representation command.request_object = rollout_object command.response_representation = Google::Apis::ClouddeployV1::Operation::Representation command.response_class = Google::Apis::ClouddeployV1::Operation command.params['parent'] = parent unless parent.nil? + command.query['overrideDeployPolicy'] = override_deploy_policy unless override_deploy_policy.nil? command.query['requestId'] = request_id unless request_id.nil? command.query['rolloutId'] = rollout_id unless rollout_id.nil? command.query['startingPhaseId'] = starting_phase_id unless starting_phase_id.nil? @@ -1870,6 +1878,256 @@ def terminate_job_run(name, terminate_job_run_request_object = nil, fields: nil, execute_or_queue_command(command, &block) end + # Creates a new DeployPolicy in a given project and location. + # @param [String] parent + # Required. The parent collection in which the `DeployPolicy` must be created. + # The format is `projects/`project_id`/locations/`location_name``. + # @param [Google::Apis::ClouddeployV1::DeployPolicy] deploy_policy_object + # @param [String] deploy_policy_id + # Required. ID of the `DeployPolicy`. + # @param [String] request_id + # Optional. A request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server knows to ignore the request if + # it has already been completed. The server guarantees that for at least 60 + # minutes after the first request. For example, consider a situation where you + # make an initial request and the request times out. If you make the request + # again with the same request ID, the server can check if original operation + # with the same request ID was received, and if so, will ignore the second + # request. This prevents clients from accidentally creating duplicate + # commitments. The request ID must be a valid UUID with the exception that zero + # UUID is not supported (00000000-0000-0000-0000-000000000000). + # @param [Boolean] validate_only + # Optional. If set to true, the request is validated and the user is provided + # with an expected result, but no actual change is made. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouddeployV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouddeployV1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_location_deploy_policy(parent, deploy_policy_object = nil, deploy_policy_id: nil, request_id: nil, validate_only: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+parent}/deployPolicies', options) + command.request_representation = Google::Apis::ClouddeployV1::DeployPolicy::Representation + command.request_object = deploy_policy_object + command.response_representation = Google::Apis::ClouddeployV1::Operation::Representation + command.response_class = Google::Apis::ClouddeployV1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['deployPolicyId'] = deploy_policy_id unless deploy_policy_id.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['validateOnly'] = validate_only unless validate_only.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a single DeployPolicy. + # @param [String] name + # Required. The name of the `DeployPolicy` to delete. The format is `projects/` + # project_id`/locations/`location_name`/deployPolicies/`deploy_policy_name``. + # @param [Boolean] allow_missing + # Optional. If set to true, then deleting an already deleted or non-existing ` + # DeployPolicy` will succeed. + # @param [String] etag + # Optional. This checksum is computed by the server based on the value of other + # fields, and may be sent on update and delete requests to ensure the client has + # an up-to-date value before proceeding. + # @param [String] request_id + # Optional. A request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server knows to ignore the request if + # it has already been completed. The server guarantees that for at least 60 + # minutes after the first request. For example, consider a situation where you + # make an initial request and the request times out. If you make the request + # again with the same request ID, the server can check if original operation + # with the same request ID was received, and if so, will ignore the second + # request. This prevents clients from accidentally creating duplicate + # commitments. The request ID must be a valid UUID with the exception that zero + # UUID is not supported (00000000-0000-0000-0000-000000000000). + # @param [Boolean] validate_only + # Optional. If set, validate the request and preview the review, but do not + # actually post it. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouddeployV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouddeployV1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_deploy_policy(name, allow_missing: nil, etag: nil, request_id: nil, validate_only: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1/{+name}', options) + command.response_representation = Google::Apis::ClouddeployV1::Operation::Representation + command.response_class = Google::Apis::ClouddeployV1::Operation + command.params['name'] = name unless name.nil? + command.query['allowMissing'] = allow_missing unless allow_missing.nil? + command.query['etag'] = etag unless etag.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['validateOnly'] = validate_only unless validate_only.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets details of a single DeployPolicy. + # @param [String] name + # Required. Name of the `DeployPolicy`. Format must be `projects/`project_id`/ + # locations/`location_name`/deployPolicies/`deploy_policy_name``. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouddeployV1::DeployPolicy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouddeployV1::DeployPolicy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_deploy_policy(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+name}', options) + command.response_representation = Google::Apis::ClouddeployV1::DeployPolicy::Representation + command.response_class = Google::Apis::ClouddeployV1::DeployPolicy + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists DeployPolicies in a given project and location. + # @param [String] parent + # Required. The parent, which owns this collection of deploy policies. Format + # must be `projects/`project_id`/locations/`location_name``. + # @param [String] filter + # Filter deploy policies to be returned. See https://google.aip.dev/160 for more + # details. All fields can be used in the filter. + # @param [String] order_by + # Field to sort by. See https://google.aip.dev/132#ordering for more details. + # @param [Fixnum] page_size + # The maximum number of deploy policies to return. The service may return fewer + # than this value. If unspecified, at most 50 deploy policies will be returned. + # The maximum value is 1000; values above 1000 will be set to 1000. + # @param [String] page_token + # A page token, received from a previous `ListDeployPolicies` call. Provide this + # to retrieve the subsequent page. When paginating, all other provided + # parameters match the call that provided the page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouddeployV1::ListDeployPoliciesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouddeployV1::ListDeployPoliciesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_deploy_policies(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+parent}/deployPolicies', options) + command.response_representation = Google::Apis::ClouddeployV1::ListDeployPoliciesResponse::Representation + command.response_class = Google::Apis::ClouddeployV1::ListDeployPoliciesResponse + command.params['parent'] = parent unless parent.nil? + command.query['filter'] = filter unless filter.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the parameters of a single DeployPolicy. + # @param [String] name + # Output only. Name of the `DeployPolicy`. Format is `projects/`project`/ + # locations/`location`/deployPolicies/`deployPolicy``. The `deployPolicy` + # component must match `[a-z]([a-z0-9-]`0,61`[a-z0-9])?` + # @param [Google::Apis::ClouddeployV1::DeployPolicy] deploy_policy_object + # @param [Boolean] allow_missing + # Optional. If set to true, updating a `DeployPolicy` that does not exist will + # result in the creation of a new `DeployPolicy`. + # @param [String] request_id + # Optional. A request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server knows to ignore the request if + # it has already been completed. The server guarantees that for at least 60 + # minutes after the first request. For example, consider a situation where you + # make an initial request and the request times out. If you make the request + # again with the same request ID, the server can check if original operation + # with the same request ID was received, and if so, will ignore the second + # request. This prevents clients from accidentally creating duplicate + # commitments. The request ID must be a valid UUID with the exception that zero + # UUID is not supported (00000000-0000-0000-0000-000000000000). + # @param [String] update_mask + # Required. Field mask is used to specify the fields to be overwritten by the + # update in the `DeployPolicy` resource. The fields specified in the update_mask + # are relative to the resource, not the full request. A field will be + # overwritten if it's in the mask. If the user doesn't provide a mask then all + # fields are overwritten. + # @param [Boolean] validate_only + # Optional. If set to true, the request is validated and the user is provided + # with an expected result, but no actual change is made. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouddeployV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouddeployV1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_location_deploy_policy(name, deploy_policy_object = nil, allow_missing: nil, request_id: nil, update_mask: nil, validate_only: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1/{+name}', options) + command.request_representation = Google::Apis::ClouddeployV1::DeployPolicy::Representation + command.request_object = deploy_policy_object + command.response_representation = Google::Apis::ClouddeployV1::Operation::Representation + command.response_class = Google::Apis::ClouddeployV1::Operation + command.params['name'] = name unless name.nil? + command.query['allowMissing'] = allow_missing unless allow_missing.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['validateOnly'] = validate_only unless validate_only.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Starts asynchronous cancellation on a long-running operation. The server makes # a best effort to cancel the operation, but success is not guaranteed. If the # server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.