google-cloud-spanner-admin-database-v1 0.19.0 → 0.20.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.
@@ -0,0 +1,213 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Spanner
23
+ module Admin
24
+ module Database
25
+ module V1
26
+ # Defines specifications of the backup schedule.
27
+ # @!attribute [rw] cron_spec
28
+ # @return [::Google::Cloud::Spanner::Admin::Database::V1::CrontabSpec]
29
+ # Cron style schedule specification.
30
+ class BackupScheduleSpec
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+
35
+ # BackupSchedule expresses the automated backup creation specification for a
36
+ # Spanner database.
37
+ # Next ID: 10
38
+ # @!attribute [rw] name
39
+ # @return [::String]
40
+ # Identifier. Output only for the
41
+ # [CreateBackupSchedule][DatabaseAdmin.CreateBackupSchededule] operation.
42
+ # Required for the
43
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#update_backup_schedule UpdateBackupSchedule}
44
+ # operation. A globally unique identifier for the backup schedule which
45
+ # cannot be changed. Values are of the form
46
+ # `projects/<project>/instances/<instance>/databases/<database>/backupSchedules/[a-z][a-z0-9_\-]*[a-z0-9]`
47
+ # The final segment of the name must be between 2 and 60 characters in
48
+ # length.
49
+ # @!attribute [rw] spec
50
+ # @return [::Google::Cloud::Spanner::Admin::Database::V1::BackupScheduleSpec]
51
+ # Optional. The schedule specification based on which the backup creations
52
+ # are triggered.
53
+ # @!attribute [rw] retention_duration
54
+ # @return [::Google::Protobuf::Duration]
55
+ # Optional. The retention duration of a backup that must be at least 6 hours
56
+ # and at most 366 days. The backup is eligible to be automatically deleted
57
+ # once the retention period has elapsed.
58
+ # @!attribute [rw] encryption_config
59
+ # @return [::Google::Cloud::Spanner::Admin::Database::V1::CreateBackupEncryptionConfig]
60
+ # Optional. The encryption configuration that will be used to encrypt the
61
+ # backup. If this field is not specified, the backup will use the same
62
+ # encryption configuration as the database.
63
+ # @!attribute [rw] full_backup_spec
64
+ # @return [::Google::Cloud::Spanner::Admin::Database::V1::FullBackupSpec]
65
+ # The schedule creates only full backups.
66
+ # @!attribute [r] update_time
67
+ # @return [::Google::Protobuf::Timestamp]
68
+ # Output only. The timestamp at which the schedule was last updated.
69
+ # If the schedule has never been updated, this field contains the timestamp
70
+ # when the schedule was first created.
71
+ class BackupSchedule
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+ end
75
+
76
+ # CrontabSpec can be used to specify the version time and frequency at
77
+ # which the backup should be created.
78
+ # @!attribute [rw] text
79
+ # @return [::String]
80
+ # Required. Textual representation of the crontab. User can customize the
81
+ # backup frequency and the backup version time using the cron
82
+ # expression. The version time must be in UTC timzeone.
83
+ #
84
+ # The backup will contain an externally consistent copy of the
85
+ # database at the version time. Allowed frequencies are 12 hour, 1 day,
86
+ # 1 week and 1 month. Examples of valid cron specifications:
87
+ # * `0 2/12 * * * ` : every 12 hours at (2, 14) hours past midnight in UTC.
88
+ # * `0 2,14 * * * ` : every 12 hours at (2,14) hours past midnight in UTC.
89
+ # * `0 2 * * * ` : once a day at 2 past midnight in UTC.
90
+ # * `0 2 * * 0 ` : once a week every Sunday at 2 past midnight in UTC.
91
+ # * `0 2 8 * * ` : once a month on 8th day at 2 past midnight in UTC.
92
+ # @!attribute [r] time_zone
93
+ # @return [::String]
94
+ # Output only. The time zone of the times in `CrontabSpec.text`. Currently
95
+ # only UTC is supported.
96
+ # @!attribute [r] creation_window
97
+ # @return [::Google::Protobuf::Duration]
98
+ # Output only. Schedule backups will contain an externally consistent copy
99
+ # of the database at the version time specified in
100
+ # `schedule_spec.cron_spec`. However, Spanner may not initiate the creation
101
+ # of the scheduled backups at that version time. Spanner will initiate
102
+ # the creation of scheduled backups within the time window bounded by the
103
+ # version_time specified in `schedule_spec.cron_spec` and version_time +
104
+ # `creation_window`.
105
+ class CrontabSpec
106
+ include ::Google::Protobuf::MessageExts
107
+ extend ::Google::Protobuf::MessageExts::ClassMethods
108
+ end
109
+
110
+ # The request for
111
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#create_backup_schedule CreateBackupSchedule}.
112
+ # @!attribute [rw] parent
113
+ # @return [::String]
114
+ # Required. The name of the database that this backup schedule applies to.
115
+ # @!attribute [rw] backup_schedule_id
116
+ # @return [::String]
117
+ # Required. The Id to use for the backup schedule. The `backup_schedule_id`
118
+ # appended to `parent` forms the full backup schedule name of the form
119
+ # `projects/<project>/instances/<instance>/databases/<database>/backupSchedules/<backup_schedule_id>`.
120
+ # @!attribute [rw] backup_schedule
121
+ # @return [::Google::Cloud::Spanner::Admin::Database::V1::BackupSchedule]
122
+ # Required. The backup schedule to create.
123
+ class CreateBackupScheduleRequest
124
+ include ::Google::Protobuf::MessageExts
125
+ extend ::Google::Protobuf::MessageExts::ClassMethods
126
+ end
127
+
128
+ # The request for
129
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#get_backup_schedule GetBackupSchedule}.
130
+ # @!attribute [rw] name
131
+ # @return [::String]
132
+ # Required. The name of the schedule to retrieve.
133
+ # Values are of the form
134
+ # `projects/<project>/instances/<instance>/databases/<database>/backupSchedules/<backup_schedule_id>`.
135
+ class GetBackupScheduleRequest
136
+ include ::Google::Protobuf::MessageExts
137
+ extend ::Google::Protobuf::MessageExts::ClassMethods
138
+ end
139
+
140
+ # The request for
141
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#delete_backup_schedule DeleteBackupSchedule}.
142
+ # @!attribute [rw] name
143
+ # @return [::String]
144
+ # Required. The name of the schedule to delete.
145
+ # Values are of the form
146
+ # `projects/<project>/instances/<instance>/databases/<database>/backupSchedules/<backup_schedule_id>`.
147
+ class DeleteBackupScheduleRequest
148
+ include ::Google::Protobuf::MessageExts
149
+ extend ::Google::Protobuf::MessageExts::ClassMethods
150
+ end
151
+
152
+ # The request for
153
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#list_backup_schedules ListBackupSchedules}.
154
+ # @!attribute [rw] parent
155
+ # @return [::String]
156
+ # Required. Database is the parent resource whose backup schedules should be
157
+ # listed. Values are of the form
158
+ # projects/<project>/instances/<instance>/databases/<database>
159
+ # @!attribute [rw] page_size
160
+ # @return [::Integer]
161
+ # Optional. Number of backup schedules to be returned in the response. If 0
162
+ # or less, defaults to the server's maximum allowed page size.
163
+ # @!attribute [rw] page_token
164
+ # @return [::String]
165
+ # Optional. If non-empty, `page_token` should contain a
166
+ # {::Google::Cloud::Spanner::Admin::Database::V1::ListBackupSchedulesResponse#next_page_token next_page_token}
167
+ # from a previous
168
+ # {::Google::Cloud::Spanner::Admin::Database::V1::ListBackupSchedulesResponse ListBackupSchedulesResponse}
169
+ # to the same `parent`.
170
+ class ListBackupSchedulesRequest
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
175
+ # The response for
176
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#list_backup_schedules ListBackupSchedules}.
177
+ # @!attribute [rw] backup_schedules
178
+ # @return [::Array<::Google::Cloud::Spanner::Admin::Database::V1::BackupSchedule>]
179
+ # The list of backup schedules for a database.
180
+ # @!attribute [rw] next_page_token
181
+ # @return [::String]
182
+ # `next_page_token` can be sent in a subsequent
183
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#list_backup_schedules ListBackupSchedules}
184
+ # call to fetch more of the schedules.
185
+ class ListBackupSchedulesResponse
186
+ include ::Google::Protobuf::MessageExts
187
+ extend ::Google::Protobuf::MessageExts::ClassMethods
188
+ end
189
+
190
+ # The request for
191
+ # {::Google::Cloud::Spanner::Admin::Database::V1::DatabaseAdmin::Client#update_backup_schedule UpdateBackupScheduleRequest}.
192
+ # @!attribute [rw] backup_schedule
193
+ # @return [::Google::Cloud::Spanner::Admin::Database::V1::BackupSchedule]
194
+ # Required. The backup schedule to update. `backup_schedule.name`, and the
195
+ # fields to be updated as specified by `update_mask` are required. Other
196
+ # fields are ignored.
197
+ # @!attribute [rw] update_mask
198
+ # @return [::Google::Protobuf::FieldMask]
199
+ # Required. A mask specifying which fields in the BackupSchedule resource
200
+ # should be updated. This mask is relative to the BackupSchedule resource,
201
+ # not to the request message. The field mask must always be
202
+ # specified; this prevents any future fields from being erased
203
+ # accidentally.
204
+ class UpdateBackupScheduleRequest
205
+ include ::Google::Protobuf::MessageExts
206
+ extend ::Google::Protobuf::MessageExts::ClassMethods
207
+ end
208
+ end
209
+ end
210
+ end
211
+ end
212
+ end
213
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-spanner-admin-database-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0
4
+ version: 0.20.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-15 00:00:00.000000000 Z
11
+ date: 2024-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -85,6 +85,7 @@ files:
85
85
  - lib/google/cloud/spanner/admin/database/v1/rest.rb
86
86
  - lib/google/cloud/spanner/admin/database/v1/version.rb
87
87
  - lib/google/spanner/admin/database/v1/backup_pb.rb
88
+ - lib/google/spanner/admin/database/v1/backup_schedule_pb.rb
88
89
  - lib/google/spanner/admin/database/v1/common_pb.rb
89
90
  - lib/google/spanner/admin/database/v1/spanner_database_admin_pb.rb
90
91
  - lib/google/spanner/admin/database/v1/spanner_database_admin_services_pb.rb
@@ -104,6 +105,7 @@ files:
104
105
  - proto_docs/google/protobuf/timestamp.rb
105
106
  - proto_docs/google/rpc/status.rb
106
107
  - proto_docs/google/spanner/admin/database/v1/backup.rb
108
+ - proto_docs/google/spanner/admin/database/v1/backup_schedule.rb
107
109
  - proto_docs/google/spanner/admin/database/v1/common.rb
108
110
  - proto_docs/google/spanner/admin/database/v1/spanner_database_admin.rb
109
111
  - proto_docs/google/type/expr.rb