pulumi-gcp 8.19.0a1739290509__py3-none-any.whl → 8.19.1a1739444689__py3-none-any.whl
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.
- pulumi_gcp/__init__.py +80 -0
- pulumi_gcp/_utilities.py +8 -4
- pulumi_gcp/accesscontextmanager/_inputs.py +288 -78
- pulumi_gcp/accesscontextmanager/outputs.py +186 -54
- pulumi_gcp/appengine/_inputs.py +3 -0
- pulumi_gcp/appengine/outputs.py +2 -0
- pulumi_gcp/beyondcorp/__init__.py +5 -0
- pulumi_gcp/beyondcorp/_inputs.py +189 -0
- pulumi_gcp/beyondcorp/application.py +604 -0
- pulumi_gcp/beyondcorp/application_iam_binding.py +1049 -0
- pulumi_gcp/beyondcorp/application_iam_member.py +1049 -0
- pulumi_gcp/beyondcorp/application_iam_policy.py +868 -0
- pulumi_gcp/beyondcorp/get_application_iam_policy.py +174 -0
- pulumi_gcp/beyondcorp/outputs.py +111 -0
- pulumi_gcp/bigqueryanalyticshub/__init__.py +1 -0
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +318 -0
- pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +808 -0
- pulumi_gcp/bigqueryanalyticshub/outputs.py +263 -0
- pulumi_gcp/certificateauthority/_inputs.py +54 -0
- pulumi_gcp/certificateauthority/authority.py +149 -3
- pulumi_gcp/certificateauthority/get_authority.py +15 -4
- pulumi_gcp/certificateauthority/outputs.py +81 -0
- pulumi_gcp/cloudrunv2/_inputs.py +112 -0
- pulumi_gcp/cloudrunv2/outputs.py +144 -1
- pulumi_gcp/cloudrunv2/service.py +2 -0
- pulumi_gcp/colab/__init__.py +2 -0
- pulumi_gcp/colab/_inputs.py +655 -0
- pulumi_gcp/colab/notebook_execution.py +1259 -0
- pulumi_gcp/colab/outputs.py +512 -0
- pulumi_gcp/colab/runtime.py +266 -2
- pulumi_gcp/colab/runtime_template.py +79 -3
- pulumi_gcp/colab/schedule.py +1318 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +204 -0
- pulumi_gcp/compute/firewall_policy.py +54 -43
- pulumi_gcp/compute/forwarding_rule.py +103 -0
- pulumi_gcp/compute/get_forwarding_rule.py +12 -1
- pulumi_gcp/compute/interconnect_attachment.py +12 -0
- pulumi_gcp/compute/network_firewall_policy_packet_mirroring_rule.py +1011 -0
- pulumi_gcp/compute/outputs.py +187 -0
- pulumi_gcp/compute/public_advertised_prefix.py +35 -7
- pulumi_gcp/compute/public_delegated_prefix.py +171 -7
- pulumi_gcp/compute/region_resize_request.py +21 -22
- pulumi_gcp/compute/resize_request.py +22 -23
- pulumi_gcp/compute/subnetwork.py +14 -7
- pulumi_gcp/container/_inputs.py +54 -1
- pulumi_gcp/container/outputs.py +79 -1
- pulumi_gcp/datastream/connection_profile.py +120 -46
- pulumi_gcp/discoveryengine/chat_engine.py +7 -7
- pulumi_gcp/filestore/_inputs.py +222 -0
- pulumi_gcp/filestore/get_instance.py +23 -1
- pulumi_gcp/filestore/instance.py +86 -0
- pulumi_gcp/filestore/outputs.py +282 -0
- pulumi_gcp/gemini/__init__.py +2 -0
- pulumi_gcp/gemini/logging_setting.py +671 -0
- pulumi_gcp/gemini/release_channel_setting.py +639 -0
- pulumi_gcp/memorystore/_inputs.py +296 -0
- pulumi_gcp/memorystore/instance.py +32 -28
- pulumi_gcp/memorystore/outputs.py +224 -0
- pulumi_gcp/monitoring/_inputs.py +12 -9
- pulumi_gcp/monitoring/outputs.py +8 -6
- pulumi_gcp/networkservices/_inputs.py +89 -0
- pulumi_gcp/networkservices/outputs.py +75 -0
- pulumi_gcp/parametermanager/__init__.py +2 -0
- pulumi_gcp/parametermanager/get_parameter_version_render.py +199 -0
- pulumi_gcp/parametermanager/get_regional_parameter_version_render.py +220 -0
- pulumi_gcp/privilegedaccessmanager/entitlement.py +14 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/securesourcemanager/branch_rule.py +4 -0
- pulumi_gcp/securesourcemanager/repository.py +4 -0
- pulumi_gcp/storage/bucket_object.py +8 -0
- pulumi_gcp/workbench/instance.py +70 -2
- {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/RECORD +76 -63
- {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.19.0a1739290509.dist-info → pulumi_gcp-8.19.1a1739444689.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1318 @@
|
|
1
|
+
# coding=utf-8
|
2
|
+
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
4
|
+
|
5
|
+
import copy
|
6
|
+
import warnings
|
7
|
+
import sys
|
8
|
+
import pulumi
|
9
|
+
import pulumi.runtime
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
11
|
+
if sys.version_info >= (3, 11):
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
13
|
+
else:
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
15
|
+
from .. import _utilities
|
16
|
+
from . import outputs
|
17
|
+
from ._inputs import *
|
18
|
+
|
19
|
+
__all__ = ['ScheduleArgs', 'Schedule']
|
20
|
+
|
21
|
+
@pulumi.input_type
|
22
|
+
class ScheduleArgs:
|
23
|
+
def __init__(__self__, *,
|
24
|
+
create_notebook_execution_job_request: pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs'],
|
25
|
+
cron: pulumi.Input[str],
|
26
|
+
display_name: pulumi.Input[str],
|
27
|
+
location: pulumi.Input[str],
|
28
|
+
max_concurrent_run_count: pulumi.Input[str],
|
29
|
+
allow_queueing: Optional[pulumi.Input[bool]] = None,
|
30
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
31
|
+
end_time: Optional[pulumi.Input[str]] = None,
|
32
|
+
max_run_count: Optional[pulumi.Input[str]] = None,
|
33
|
+
project: Optional[pulumi.Input[str]] = None,
|
34
|
+
start_time: Optional[pulumi.Input[str]] = None):
|
35
|
+
"""
|
36
|
+
The set of arguments for constructing a Schedule resource.
|
37
|
+
:param pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs'] create_notebook_execution_job_request: Request for google_colab_notebook_execution.
|
38
|
+
Structure is documented below.
|
39
|
+
:param pulumi.Input[str] cron: Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs.
|
40
|
+
:param pulumi.Input[str] display_name: Required. The display name of the Schedule.
|
41
|
+
:param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
|
42
|
+
:param pulumi.Input[str] max_concurrent_run_count: Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the notebook execution jobs created by the requests.
|
43
|
+
:param pulumi.Input[bool] allow_queueing: Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be
|
44
|
+
queued instead of skipped. Default to false.
|
45
|
+
:param pulumi.Input[str] desired_state: Desired state of the Colab Schedule. Set this field to 'ACTIVE' to start/resume the schedule, and 'PAUSED' to pause the
|
46
|
+
schedule.
|
47
|
+
:param pulumi.Input[str] end_time: Timestamp after which no new runs can be scheduled. If specified, the schedule will be completed when either end_time is
|
48
|
+
reached or when scheduled_run_count >= max_run_count. Must be in the RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt)
|
49
|
+
format.
|
50
|
+
:param pulumi.Input[str] max_run_count: Maximum run count of the schedule. If specified, The schedule will be completed when either startedRunCount >=
|
51
|
+
maxRunCount or when endTime is reached. If not specified, new runs will keep getting scheduled until this Schedule is
|
52
|
+
paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
|
53
|
+
:param pulumi.Input[str] start_time: The timestamp after which the first run can be scheduled. Defaults to the schedule creation time. Must be in the RFC
|
54
|
+
3339 (https://www.ietf.org/rfc/rfc3339.txt) format.
|
55
|
+
"""
|
56
|
+
pulumi.set(__self__, "create_notebook_execution_job_request", create_notebook_execution_job_request)
|
57
|
+
pulumi.set(__self__, "cron", cron)
|
58
|
+
pulumi.set(__self__, "display_name", display_name)
|
59
|
+
pulumi.set(__self__, "location", location)
|
60
|
+
pulumi.set(__self__, "max_concurrent_run_count", max_concurrent_run_count)
|
61
|
+
if allow_queueing is not None:
|
62
|
+
pulumi.set(__self__, "allow_queueing", allow_queueing)
|
63
|
+
if desired_state is not None:
|
64
|
+
pulumi.set(__self__, "desired_state", desired_state)
|
65
|
+
if end_time is not None:
|
66
|
+
pulumi.set(__self__, "end_time", end_time)
|
67
|
+
if max_run_count is not None:
|
68
|
+
pulumi.set(__self__, "max_run_count", max_run_count)
|
69
|
+
if project is not None:
|
70
|
+
pulumi.set(__self__, "project", project)
|
71
|
+
if start_time is not None:
|
72
|
+
pulumi.set(__self__, "start_time", start_time)
|
73
|
+
|
74
|
+
@property
|
75
|
+
@pulumi.getter(name="createNotebookExecutionJobRequest")
|
76
|
+
def create_notebook_execution_job_request(self) -> pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs']:
|
77
|
+
"""
|
78
|
+
Request for google_colab_notebook_execution.
|
79
|
+
Structure is documented below.
|
80
|
+
"""
|
81
|
+
return pulumi.get(self, "create_notebook_execution_job_request")
|
82
|
+
|
83
|
+
@create_notebook_execution_job_request.setter
|
84
|
+
def create_notebook_execution_job_request(self, value: pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs']):
|
85
|
+
pulumi.set(self, "create_notebook_execution_job_request", value)
|
86
|
+
|
87
|
+
@property
|
88
|
+
@pulumi.getter
|
89
|
+
def cron(self) -> pulumi.Input[str]:
|
90
|
+
"""
|
91
|
+
Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs.
|
92
|
+
"""
|
93
|
+
return pulumi.get(self, "cron")
|
94
|
+
|
95
|
+
@cron.setter
|
96
|
+
def cron(self, value: pulumi.Input[str]):
|
97
|
+
pulumi.set(self, "cron", value)
|
98
|
+
|
99
|
+
@property
|
100
|
+
@pulumi.getter(name="displayName")
|
101
|
+
def display_name(self) -> pulumi.Input[str]:
|
102
|
+
"""
|
103
|
+
Required. The display name of the Schedule.
|
104
|
+
"""
|
105
|
+
return pulumi.get(self, "display_name")
|
106
|
+
|
107
|
+
@display_name.setter
|
108
|
+
def display_name(self, value: pulumi.Input[str]):
|
109
|
+
pulumi.set(self, "display_name", value)
|
110
|
+
|
111
|
+
@property
|
112
|
+
@pulumi.getter
|
113
|
+
def location(self) -> pulumi.Input[str]:
|
114
|
+
"""
|
115
|
+
The location for the resource: https://cloud.google.com/colab/docs/locations
|
116
|
+
"""
|
117
|
+
return pulumi.get(self, "location")
|
118
|
+
|
119
|
+
@location.setter
|
120
|
+
def location(self, value: pulumi.Input[str]):
|
121
|
+
pulumi.set(self, "location", value)
|
122
|
+
|
123
|
+
@property
|
124
|
+
@pulumi.getter(name="maxConcurrentRunCount")
|
125
|
+
def max_concurrent_run_count(self) -> pulumi.Input[str]:
|
126
|
+
"""
|
127
|
+
Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the notebook execution jobs created by the requests.
|
128
|
+
"""
|
129
|
+
return pulumi.get(self, "max_concurrent_run_count")
|
130
|
+
|
131
|
+
@max_concurrent_run_count.setter
|
132
|
+
def max_concurrent_run_count(self, value: pulumi.Input[str]):
|
133
|
+
pulumi.set(self, "max_concurrent_run_count", value)
|
134
|
+
|
135
|
+
@property
|
136
|
+
@pulumi.getter(name="allowQueueing")
|
137
|
+
def allow_queueing(self) -> Optional[pulumi.Input[bool]]:
|
138
|
+
"""
|
139
|
+
Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be
|
140
|
+
queued instead of skipped. Default to false.
|
141
|
+
"""
|
142
|
+
return pulumi.get(self, "allow_queueing")
|
143
|
+
|
144
|
+
@allow_queueing.setter
|
145
|
+
def allow_queueing(self, value: Optional[pulumi.Input[bool]]):
|
146
|
+
pulumi.set(self, "allow_queueing", value)
|
147
|
+
|
148
|
+
@property
|
149
|
+
@pulumi.getter(name="desiredState")
|
150
|
+
def desired_state(self) -> Optional[pulumi.Input[str]]:
|
151
|
+
"""
|
152
|
+
Desired state of the Colab Schedule. Set this field to 'ACTIVE' to start/resume the schedule, and 'PAUSED' to pause the
|
153
|
+
schedule.
|
154
|
+
"""
|
155
|
+
return pulumi.get(self, "desired_state")
|
156
|
+
|
157
|
+
@desired_state.setter
|
158
|
+
def desired_state(self, value: Optional[pulumi.Input[str]]):
|
159
|
+
pulumi.set(self, "desired_state", value)
|
160
|
+
|
161
|
+
@property
|
162
|
+
@pulumi.getter(name="endTime")
|
163
|
+
def end_time(self) -> Optional[pulumi.Input[str]]:
|
164
|
+
"""
|
165
|
+
Timestamp after which no new runs can be scheduled. If specified, the schedule will be completed when either end_time is
|
166
|
+
reached or when scheduled_run_count >= max_run_count. Must be in the RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt)
|
167
|
+
format.
|
168
|
+
"""
|
169
|
+
return pulumi.get(self, "end_time")
|
170
|
+
|
171
|
+
@end_time.setter
|
172
|
+
def end_time(self, value: Optional[pulumi.Input[str]]):
|
173
|
+
pulumi.set(self, "end_time", value)
|
174
|
+
|
175
|
+
@property
|
176
|
+
@pulumi.getter(name="maxRunCount")
|
177
|
+
def max_run_count(self) -> Optional[pulumi.Input[str]]:
|
178
|
+
"""
|
179
|
+
Maximum run count of the schedule. If specified, The schedule will be completed when either startedRunCount >=
|
180
|
+
maxRunCount or when endTime is reached. If not specified, new runs will keep getting scheduled until this Schedule is
|
181
|
+
paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
|
182
|
+
"""
|
183
|
+
return pulumi.get(self, "max_run_count")
|
184
|
+
|
185
|
+
@max_run_count.setter
|
186
|
+
def max_run_count(self, value: Optional[pulumi.Input[str]]):
|
187
|
+
pulumi.set(self, "max_run_count", value)
|
188
|
+
|
189
|
+
@property
|
190
|
+
@pulumi.getter
|
191
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
192
|
+
return pulumi.get(self, "project")
|
193
|
+
|
194
|
+
@project.setter
|
195
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
196
|
+
pulumi.set(self, "project", value)
|
197
|
+
|
198
|
+
@property
|
199
|
+
@pulumi.getter(name="startTime")
|
200
|
+
def start_time(self) -> Optional[pulumi.Input[str]]:
|
201
|
+
"""
|
202
|
+
The timestamp after which the first run can be scheduled. Defaults to the schedule creation time. Must be in the RFC
|
203
|
+
3339 (https://www.ietf.org/rfc/rfc3339.txt) format.
|
204
|
+
"""
|
205
|
+
return pulumi.get(self, "start_time")
|
206
|
+
|
207
|
+
@start_time.setter
|
208
|
+
def start_time(self, value: Optional[pulumi.Input[str]]):
|
209
|
+
pulumi.set(self, "start_time", value)
|
210
|
+
|
211
|
+
|
212
|
+
@pulumi.input_type
|
213
|
+
class _ScheduleState:
|
214
|
+
def __init__(__self__, *,
|
215
|
+
allow_queueing: Optional[pulumi.Input[bool]] = None,
|
216
|
+
create_notebook_execution_job_request: Optional[pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs']] = None,
|
217
|
+
cron: Optional[pulumi.Input[str]] = None,
|
218
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
219
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
220
|
+
end_time: Optional[pulumi.Input[str]] = None,
|
221
|
+
location: Optional[pulumi.Input[str]] = None,
|
222
|
+
max_concurrent_run_count: Optional[pulumi.Input[str]] = None,
|
223
|
+
max_run_count: Optional[pulumi.Input[str]] = None,
|
224
|
+
name: Optional[pulumi.Input[str]] = None,
|
225
|
+
project: Optional[pulumi.Input[str]] = None,
|
226
|
+
start_time: Optional[pulumi.Input[str]] = None,
|
227
|
+
state: Optional[pulumi.Input[str]] = None):
|
228
|
+
"""
|
229
|
+
Input properties used for looking up and filtering Schedule resources.
|
230
|
+
:param pulumi.Input[bool] allow_queueing: Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be
|
231
|
+
queued instead of skipped. Default to false.
|
232
|
+
:param pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs'] create_notebook_execution_job_request: Request for google_colab_notebook_execution.
|
233
|
+
Structure is documented below.
|
234
|
+
:param pulumi.Input[str] cron: Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs.
|
235
|
+
:param pulumi.Input[str] desired_state: Desired state of the Colab Schedule. Set this field to 'ACTIVE' to start/resume the schedule, and 'PAUSED' to pause the
|
236
|
+
schedule.
|
237
|
+
:param pulumi.Input[str] display_name: Required. The display name of the Schedule.
|
238
|
+
:param pulumi.Input[str] end_time: Timestamp after which no new runs can be scheduled. If specified, the schedule will be completed when either end_time is
|
239
|
+
reached or when scheduled_run_count >= max_run_count. Must be in the RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt)
|
240
|
+
format.
|
241
|
+
:param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
|
242
|
+
:param pulumi.Input[str] max_concurrent_run_count: Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the notebook execution jobs created by the requests.
|
243
|
+
:param pulumi.Input[str] max_run_count: Maximum run count of the schedule. If specified, The schedule will be completed when either startedRunCount >=
|
244
|
+
maxRunCount or when endTime is reached. If not specified, new runs will keep getting scheduled until this Schedule is
|
245
|
+
paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
|
246
|
+
:param pulumi.Input[str] name: The resource name of the Schedule
|
247
|
+
:param pulumi.Input[str] start_time: The timestamp after which the first run can be scheduled. Defaults to the schedule creation time. Must be in the RFC
|
248
|
+
3339 (https://www.ietf.org/rfc/rfc3339.txt) format.
|
249
|
+
:param pulumi.Input[str] state: Output only. The state of the schedule.
|
250
|
+
"""
|
251
|
+
if allow_queueing is not None:
|
252
|
+
pulumi.set(__self__, "allow_queueing", allow_queueing)
|
253
|
+
if create_notebook_execution_job_request is not None:
|
254
|
+
pulumi.set(__self__, "create_notebook_execution_job_request", create_notebook_execution_job_request)
|
255
|
+
if cron is not None:
|
256
|
+
pulumi.set(__self__, "cron", cron)
|
257
|
+
if desired_state is not None:
|
258
|
+
pulumi.set(__self__, "desired_state", desired_state)
|
259
|
+
if display_name is not None:
|
260
|
+
pulumi.set(__self__, "display_name", display_name)
|
261
|
+
if end_time is not None:
|
262
|
+
pulumi.set(__self__, "end_time", end_time)
|
263
|
+
if location is not None:
|
264
|
+
pulumi.set(__self__, "location", location)
|
265
|
+
if max_concurrent_run_count is not None:
|
266
|
+
pulumi.set(__self__, "max_concurrent_run_count", max_concurrent_run_count)
|
267
|
+
if max_run_count is not None:
|
268
|
+
pulumi.set(__self__, "max_run_count", max_run_count)
|
269
|
+
if name is not None:
|
270
|
+
pulumi.set(__self__, "name", name)
|
271
|
+
if project is not None:
|
272
|
+
pulumi.set(__self__, "project", project)
|
273
|
+
if start_time is not None:
|
274
|
+
pulumi.set(__self__, "start_time", start_time)
|
275
|
+
if state is not None:
|
276
|
+
pulumi.set(__self__, "state", state)
|
277
|
+
|
278
|
+
@property
|
279
|
+
@pulumi.getter(name="allowQueueing")
|
280
|
+
def allow_queueing(self) -> Optional[pulumi.Input[bool]]:
|
281
|
+
"""
|
282
|
+
Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be
|
283
|
+
queued instead of skipped. Default to false.
|
284
|
+
"""
|
285
|
+
return pulumi.get(self, "allow_queueing")
|
286
|
+
|
287
|
+
@allow_queueing.setter
|
288
|
+
def allow_queueing(self, value: Optional[pulumi.Input[bool]]):
|
289
|
+
pulumi.set(self, "allow_queueing", value)
|
290
|
+
|
291
|
+
@property
|
292
|
+
@pulumi.getter(name="createNotebookExecutionJobRequest")
|
293
|
+
def create_notebook_execution_job_request(self) -> Optional[pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs']]:
|
294
|
+
"""
|
295
|
+
Request for google_colab_notebook_execution.
|
296
|
+
Structure is documented below.
|
297
|
+
"""
|
298
|
+
return pulumi.get(self, "create_notebook_execution_job_request")
|
299
|
+
|
300
|
+
@create_notebook_execution_job_request.setter
|
301
|
+
def create_notebook_execution_job_request(self, value: Optional[pulumi.Input['ScheduleCreateNotebookExecutionJobRequestArgs']]):
|
302
|
+
pulumi.set(self, "create_notebook_execution_job_request", value)
|
303
|
+
|
304
|
+
@property
|
305
|
+
@pulumi.getter
|
306
|
+
def cron(self) -> Optional[pulumi.Input[str]]:
|
307
|
+
"""
|
308
|
+
Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs.
|
309
|
+
"""
|
310
|
+
return pulumi.get(self, "cron")
|
311
|
+
|
312
|
+
@cron.setter
|
313
|
+
def cron(self, value: Optional[pulumi.Input[str]]):
|
314
|
+
pulumi.set(self, "cron", value)
|
315
|
+
|
316
|
+
@property
|
317
|
+
@pulumi.getter(name="desiredState")
|
318
|
+
def desired_state(self) -> Optional[pulumi.Input[str]]:
|
319
|
+
"""
|
320
|
+
Desired state of the Colab Schedule. Set this field to 'ACTIVE' to start/resume the schedule, and 'PAUSED' to pause the
|
321
|
+
schedule.
|
322
|
+
"""
|
323
|
+
return pulumi.get(self, "desired_state")
|
324
|
+
|
325
|
+
@desired_state.setter
|
326
|
+
def desired_state(self, value: Optional[pulumi.Input[str]]):
|
327
|
+
pulumi.set(self, "desired_state", value)
|
328
|
+
|
329
|
+
@property
|
330
|
+
@pulumi.getter(name="displayName")
|
331
|
+
def display_name(self) -> Optional[pulumi.Input[str]]:
|
332
|
+
"""
|
333
|
+
Required. The display name of the Schedule.
|
334
|
+
"""
|
335
|
+
return pulumi.get(self, "display_name")
|
336
|
+
|
337
|
+
@display_name.setter
|
338
|
+
def display_name(self, value: Optional[pulumi.Input[str]]):
|
339
|
+
pulumi.set(self, "display_name", value)
|
340
|
+
|
341
|
+
@property
|
342
|
+
@pulumi.getter(name="endTime")
|
343
|
+
def end_time(self) -> Optional[pulumi.Input[str]]:
|
344
|
+
"""
|
345
|
+
Timestamp after which no new runs can be scheduled. If specified, the schedule will be completed when either end_time is
|
346
|
+
reached or when scheduled_run_count >= max_run_count. Must be in the RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt)
|
347
|
+
format.
|
348
|
+
"""
|
349
|
+
return pulumi.get(self, "end_time")
|
350
|
+
|
351
|
+
@end_time.setter
|
352
|
+
def end_time(self, value: Optional[pulumi.Input[str]]):
|
353
|
+
pulumi.set(self, "end_time", value)
|
354
|
+
|
355
|
+
@property
|
356
|
+
@pulumi.getter
|
357
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
358
|
+
"""
|
359
|
+
The location for the resource: https://cloud.google.com/colab/docs/locations
|
360
|
+
"""
|
361
|
+
return pulumi.get(self, "location")
|
362
|
+
|
363
|
+
@location.setter
|
364
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
365
|
+
pulumi.set(self, "location", value)
|
366
|
+
|
367
|
+
@property
|
368
|
+
@pulumi.getter(name="maxConcurrentRunCount")
|
369
|
+
def max_concurrent_run_count(self) -> Optional[pulumi.Input[str]]:
|
370
|
+
"""
|
371
|
+
Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the notebook execution jobs created by the requests.
|
372
|
+
"""
|
373
|
+
return pulumi.get(self, "max_concurrent_run_count")
|
374
|
+
|
375
|
+
@max_concurrent_run_count.setter
|
376
|
+
def max_concurrent_run_count(self, value: Optional[pulumi.Input[str]]):
|
377
|
+
pulumi.set(self, "max_concurrent_run_count", value)
|
378
|
+
|
379
|
+
@property
|
380
|
+
@pulumi.getter(name="maxRunCount")
|
381
|
+
def max_run_count(self) -> Optional[pulumi.Input[str]]:
|
382
|
+
"""
|
383
|
+
Maximum run count of the schedule. If specified, The schedule will be completed when either startedRunCount >=
|
384
|
+
maxRunCount or when endTime is reached. If not specified, new runs will keep getting scheduled until this Schedule is
|
385
|
+
paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
|
386
|
+
"""
|
387
|
+
return pulumi.get(self, "max_run_count")
|
388
|
+
|
389
|
+
@max_run_count.setter
|
390
|
+
def max_run_count(self, value: Optional[pulumi.Input[str]]):
|
391
|
+
pulumi.set(self, "max_run_count", value)
|
392
|
+
|
393
|
+
@property
|
394
|
+
@pulumi.getter
|
395
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
396
|
+
"""
|
397
|
+
The resource name of the Schedule
|
398
|
+
"""
|
399
|
+
return pulumi.get(self, "name")
|
400
|
+
|
401
|
+
@name.setter
|
402
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
403
|
+
pulumi.set(self, "name", value)
|
404
|
+
|
405
|
+
@property
|
406
|
+
@pulumi.getter
|
407
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
408
|
+
return pulumi.get(self, "project")
|
409
|
+
|
410
|
+
@project.setter
|
411
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
412
|
+
pulumi.set(self, "project", value)
|
413
|
+
|
414
|
+
@property
|
415
|
+
@pulumi.getter(name="startTime")
|
416
|
+
def start_time(self) -> Optional[pulumi.Input[str]]:
|
417
|
+
"""
|
418
|
+
The timestamp after which the first run can be scheduled. Defaults to the schedule creation time. Must be in the RFC
|
419
|
+
3339 (https://www.ietf.org/rfc/rfc3339.txt) format.
|
420
|
+
"""
|
421
|
+
return pulumi.get(self, "start_time")
|
422
|
+
|
423
|
+
@start_time.setter
|
424
|
+
def start_time(self, value: Optional[pulumi.Input[str]]):
|
425
|
+
pulumi.set(self, "start_time", value)
|
426
|
+
|
427
|
+
@property
|
428
|
+
@pulumi.getter
|
429
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
430
|
+
"""
|
431
|
+
Output only. The state of the schedule.
|
432
|
+
"""
|
433
|
+
return pulumi.get(self, "state")
|
434
|
+
|
435
|
+
@state.setter
|
436
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
437
|
+
pulumi.set(self, "state", value)
|
438
|
+
|
439
|
+
|
440
|
+
class Schedule(pulumi.CustomResource):
|
441
|
+
@overload
|
442
|
+
def __init__(__self__,
|
443
|
+
resource_name: str,
|
444
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
445
|
+
allow_queueing: Optional[pulumi.Input[bool]] = None,
|
446
|
+
create_notebook_execution_job_request: Optional[pulumi.Input[Union['ScheduleCreateNotebookExecutionJobRequestArgs', 'ScheduleCreateNotebookExecutionJobRequestArgsDict']]] = None,
|
447
|
+
cron: Optional[pulumi.Input[str]] = None,
|
448
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
449
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
450
|
+
end_time: Optional[pulumi.Input[str]] = None,
|
451
|
+
location: Optional[pulumi.Input[str]] = None,
|
452
|
+
max_concurrent_run_count: Optional[pulumi.Input[str]] = None,
|
453
|
+
max_run_count: Optional[pulumi.Input[str]] = None,
|
454
|
+
project: Optional[pulumi.Input[str]] = None,
|
455
|
+
start_time: Optional[pulumi.Input[str]] = None,
|
456
|
+
__props__=None):
|
457
|
+
"""
|
458
|
+
'Colab Enterprise Notebook Execution Schedules.'
|
459
|
+
|
460
|
+
To get more information about Schedule, see:
|
461
|
+
|
462
|
+
* [API documentation](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.schedules)
|
463
|
+
* How-to Guides
|
464
|
+
* [Schedule a notebook run](https://cloud.google.com/colab/docs/schedule-notebook-run)
|
465
|
+
|
466
|
+
## Example Usage
|
467
|
+
|
468
|
+
### Colab Schedule Basic
|
469
|
+
|
470
|
+
```python
|
471
|
+
import pulumi
|
472
|
+
import pulumi_gcp as gcp
|
473
|
+
|
474
|
+
my_runtime_template = gcp.colab.RuntimeTemplate("my_runtime_template",
|
475
|
+
name="runtime-template",
|
476
|
+
display_name="Runtime template",
|
477
|
+
location="us-central1",
|
478
|
+
machine_spec={
|
479
|
+
"machine_type": "e2-standard-4",
|
480
|
+
},
|
481
|
+
network_spec={
|
482
|
+
"enable_internet_access": True,
|
483
|
+
})
|
484
|
+
output_bucket = gcp.storage.Bucket("output_bucket",
|
485
|
+
name="my_bucket",
|
486
|
+
location="US",
|
487
|
+
force_destroy=True,
|
488
|
+
uniform_bucket_level_access=True)
|
489
|
+
notebook = gcp.storage.BucketObject("notebook",
|
490
|
+
name="hello_world.ipynb",
|
491
|
+
bucket=output_bucket.name,
|
492
|
+
content=\"\"\" {
|
493
|
+
"cells": [
|
494
|
+
{
|
495
|
+
"cell_type": "code",
|
496
|
+
"execution_count": null,
|
497
|
+
"metadata": {},
|
498
|
+
"outputs": [],
|
499
|
+
"source": [
|
500
|
+
"print(\\"Hello, World!\\")"
|
501
|
+
]
|
502
|
+
}
|
503
|
+
],
|
504
|
+
"metadata": {
|
505
|
+
"kernelspec": {
|
506
|
+
"display_name": "Python 3",
|
507
|
+
"language": "python",
|
508
|
+
"name": "python3"
|
509
|
+
},
|
510
|
+
"language_info": {
|
511
|
+
"codemirror_mode": {
|
512
|
+
"name": "ipython",
|
513
|
+
"version": 3
|
514
|
+
},
|
515
|
+
"file_extension": ".py",
|
516
|
+
"mimetype": "text/x-python",
|
517
|
+
"name": "python",
|
518
|
+
"nbconvert_exporter": "python",
|
519
|
+
"pygments_lexer": "ipython3",
|
520
|
+
"version": "3.8.5"
|
521
|
+
}
|
522
|
+
},
|
523
|
+
"nbformat": 4,
|
524
|
+
"nbformat_minor": 4
|
525
|
+
}
|
526
|
+
\"\"\")
|
527
|
+
schedule = gcp.colab.Schedule("schedule",
|
528
|
+
display_name="basic-schedule",
|
529
|
+
location="us-west1",
|
530
|
+
max_concurrent_run_count="2",
|
531
|
+
cron="TZ=America/Los_Angeles * * * * *",
|
532
|
+
create_notebook_execution_job_request={
|
533
|
+
"notebook_execution_job": {
|
534
|
+
"display_name": "Notebook execution",
|
535
|
+
"gcs_notebook_source": {
|
536
|
+
"uri": pulumi.Output.all(
|
537
|
+
bucket=notebook.bucket,
|
538
|
+
name=notebook.name
|
539
|
+
).apply(lambda resolved_outputs: f"gs://{resolved_outputs['bucket']}/{resolved_outputs['name']}")
|
540
|
+
,
|
541
|
+
"generation": notebook.generation,
|
542
|
+
},
|
543
|
+
"notebook_runtime_template_resource_name": pulumi.Output.all(
|
544
|
+
project=my_runtime_template.project,
|
545
|
+
location=my_runtime_template.location,
|
546
|
+
name=my_runtime_template.name
|
547
|
+
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/{resolved_outputs['location']}/notebookRuntimeTemplates/{resolved_outputs['name']}")
|
548
|
+
,
|
549
|
+
"gcs_output_uri": output_bucket.name.apply(lambda name: f"gs://{name}"),
|
550
|
+
"service_account": "my@service-account.com",
|
551
|
+
},
|
552
|
+
},
|
553
|
+
opts = pulumi.ResourceOptions(depends_on=[
|
554
|
+
my_runtime_template,
|
555
|
+
output_bucket,
|
556
|
+
]))
|
557
|
+
```
|
558
|
+
### Colab Schedule Paused
|
559
|
+
|
560
|
+
```python
|
561
|
+
import pulumi
|
562
|
+
import pulumi_gcp as gcp
|
563
|
+
|
564
|
+
my_runtime_template = gcp.colab.RuntimeTemplate("my_runtime_template",
|
565
|
+
name="runtime-template",
|
566
|
+
display_name="Runtime template",
|
567
|
+
location="us-central1",
|
568
|
+
machine_spec={
|
569
|
+
"machine_type": "e2-standard-4",
|
570
|
+
},
|
571
|
+
network_spec={
|
572
|
+
"enable_internet_access": True,
|
573
|
+
})
|
574
|
+
output_bucket = gcp.storage.Bucket("output_bucket",
|
575
|
+
name="my_bucket",
|
576
|
+
location="US",
|
577
|
+
force_destroy=True,
|
578
|
+
uniform_bucket_level_access=True)
|
579
|
+
notebook = gcp.storage.BucketObject("notebook",
|
580
|
+
name="hello_world.ipynb",
|
581
|
+
bucket=output_bucket.name,
|
582
|
+
content=\"\"\" {
|
583
|
+
"cells": [
|
584
|
+
{
|
585
|
+
"cell_type": "code",
|
586
|
+
"execution_count": null,
|
587
|
+
"metadata": {},
|
588
|
+
"outputs": [],
|
589
|
+
"source": [
|
590
|
+
"print(\\"Hello, World!\\")"
|
591
|
+
]
|
592
|
+
}
|
593
|
+
],
|
594
|
+
"metadata": {
|
595
|
+
"kernelspec": {
|
596
|
+
"display_name": "Python 3",
|
597
|
+
"language": "python",
|
598
|
+
"name": "python3"
|
599
|
+
},
|
600
|
+
"language_info": {
|
601
|
+
"codemirror_mode": {
|
602
|
+
"name": "ipython",
|
603
|
+
"version": 3
|
604
|
+
},
|
605
|
+
"file_extension": ".py",
|
606
|
+
"mimetype": "text/x-python",
|
607
|
+
"name": "python",
|
608
|
+
"nbconvert_exporter": "python",
|
609
|
+
"pygments_lexer": "ipython3",
|
610
|
+
"version": "3.8.5"
|
611
|
+
}
|
612
|
+
},
|
613
|
+
"nbformat": 4,
|
614
|
+
"nbformat_minor": 4
|
615
|
+
}
|
616
|
+
\"\"\")
|
617
|
+
schedule = gcp.colab.Schedule("schedule",
|
618
|
+
display_name="paused-schedule",
|
619
|
+
location="us-west1",
|
620
|
+
max_concurrent_run_count="2",
|
621
|
+
cron="TZ=America/Los_Angeles * * * * *",
|
622
|
+
desired_state="PAUSED",
|
623
|
+
create_notebook_execution_job_request={
|
624
|
+
"notebook_execution_job": {
|
625
|
+
"display_name": "Notebook execution",
|
626
|
+
"gcs_notebook_source": {
|
627
|
+
"uri": pulumi.Output.all(
|
628
|
+
bucket=notebook.bucket,
|
629
|
+
name=notebook.name
|
630
|
+
).apply(lambda resolved_outputs: f"gs://{resolved_outputs['bucket']}/{resolved_outputs['name']}")
|
631
|
+
,
|
632
|
+
"generation": notebook.generation,
|
633
|
+
},
|
634
|
+
"notebook_runtime_template_resource_name": pulumi.Output.all(
|
635
|
+
project=my_runtime_template.project,
|
636
|
+
location=my_runtime_template.location,
|
637
|
+
name=my_runtime_template.name
|
638
|
+
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/{resolved_outputs['location']}/notebookRuntimeTemplates/{resolved_outputs['name']}")
|
639
|
+
,
|
640
|
+
"gcs_output_uri": output_bucket.name.apply(lambda name: f"gs://{name}"),
|
641
|
+
"service_account": "my@service-account.com",
|
642
|
+
},
|
643
|
+
},
|
644
|
+
opts = pulumi.ResourceOptions(depends_on=[
|
645
|
+
my_runtime_template,
|
646
|
+
output_bucket,
|
647
|
+
]))
|
648
|
+
```
|
649
|
+
### Colab Schedule Full
|
650
|
+
|
651
|
+
```python
|
652
|
+
import pulumi
|
653
|
+
import pulumi_gcp as gcp
|
654
|
+
|
655
|
+
my_runtime_template = gcp.colab.RuntimeTemplate("my_runtime_template",
|
656
|
+
name="runtime-template",
|
657
|
+
display_name="Runtime template",
|
658
|
+
location="us-central1",
|
659
|
+
machine_spec={
|
660
|
+
"machine_type": "e2-standard-4",
|
661
|
+
},
|
662
|
+
network_spec={
|
663
|
+
"enable_internet_access": True,
|
664
|
+
})
|
665
|
+
output_bucket = gcp.storage.Bucket("output_bucket",
|
666
|
+
name="my_bucket",
|
667
|
+
location="US",
|
668
|
+
force_destroy=True,
|
669
|
+
uniform_bucket_level_access=True)
|
670
|
+
secret = gcp.secretmanager.Secret("secret",
|
671
|
+
secret_id="secret",
|
672
|
+
replication={
|
673
|
+
"auto": {},
|
674
|
+
})
|
675
|
+
secret_version = gcp.secretmanager.SecretVersion("secret_version",
|
676
|
+
secret=secret.id,
|
677
|
+
secret_data="secret-data")
|
678
|
+
dataform_repository = gcp.dataform.Repository("dataform_repository",
|
679
|
+
name="dataform-repository",
|
680
|
+
display_name="dataform_repository",
|
681
|
+
npmrc_environment_variables_secret_version=secret_version.id,
|
682
|
+
kms_key_name="",
|
683
|
+
labels={
|
684
|
+
"label_foo1": "label-bar1",
|
685
|
+
},
|
686
|
+
git_remote_settings={
|
687
|
+
"url": "https://github.com/OWNER/REPOSITORY.git",
|
688
|
+
"default_branch": "main",
|
689
|
+
"authentication_token_secret_version": secret_version.id,
|
690
|
+
},
|
691
|
+
workspace_compilation_overrides={
|
692
|
+
"default_database": "database",
|
693
|
+
"schema_suffix": "_suffix",
|
694
|
+
"table_prefix": "prefix_",
|
695
|
+
})
|
696
|
+
schedule = gcp.colab.Schedule("schedule",
|
697
|
+
display_name="full-schedule",
|
698
|
+
location="us-west1",
|
699
|
+
allow_queueing=True,
|
700
|
+
max_concurrent_run_count="2",
|
701
|
+
cron="TZ=America/Los_Angeles * * * * *",
|
702
|
+
max_run_count="5",
|
703
|
+
start_time="2014-10-02T15:01:23Z",
|
704
|
+
end_time="2014-10-10T15:01:23Z",
|
705
|
+
desired_state="ACTIVE",
|
706
|
+
create_notebook_execution_job_request={
|
707
|
+
"notebook_execution_job": {
|
708
|
+
"display_name": "Notebook execution",
|
709
|
+
"execution_timeout": "86400s",
|
710
|
+
"dataform_repository_source": {
|
711
|
+
"commit_sha": "randomsha123",
|
712
|
+
"dataform_repository_resource_name": dataform_repository.name.apply(lambda name: f"projects/my-project-name/locations/us-west1/repositories/{name}"),
|
713
|
+
},
|
714
|
+
"notebook_runtime_template_resource_name": pulumi.Output.all(
|
715
|
+
project=my_runtime_template.project,
|
716
|
+
location=my_runtime_template.location,
|
717
|
+
name=my_runtime_template.name
|
718
|
+
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/{resolved_outputs['location']}/notebookRuntimeTemplates/{resolved_outputs['name']}")
|
719
|
+
,
|
720
|
+
"gcs_output_uri": output_bucket.name.apply(lambda name: f"gs://{name}"),
|
721
|
+
"service_account": "my@service-account.com",
|
722
|
+
},
|
723
|
+
},
|
724
|
+
opts = pulumi.ResourceOptions(depends_on=[
|
725
|
+
my_runtime_template,
|
726
|
+
output_bucket,
|
727
|
+
secret_version,
|
728
|
+
dataform_repository,
|
729
|
+
]))
|
730
|
+
```
|
731
|
+
|
732
|
+
## Import
|
733
|
+
|
734
|
+
Schedule can be imported using any of these accepted formats:
|
735
|
+
|
736
|
+
* `projects/{{project}}/locations/{{location}}/schedules/{{name}}`
|
737
|
+
|
738
|
+
* `{{project}}/{{location}}/{{name}}`
|
739
|
+
|
740
|
+
* `{{location}}/{{name}}`
|
741
|
+
|
742
|
+
When using the `pulumi import` command, Schedule can be imported using one of the formats above. For example:
|
743
|
+
|
744
|
+
```sh
|
745
|
+
$ pulumi import gcp:colab/schedule:Schedule default projects/{{project}}/locations/{{location}}/schedules/{{name}}
|
746
|
+
```
|
747
|
+
|
748
|
+
```sh
|
749
|
+
$ pulumi import gcp:colab/schedule:Schedule default {{project}}/{{location}}/{{name}}
|
750
|
+
```
|
751
|
+
|
752
|
+
```sh
|
753
|
+
$ pulumi import gcp:colab/schedule:Schedule default {{location}}/{{name}}
|
754
|
+
```
|
755
|
+
|
756
|
+
:param str resource_name: The name of the resource.
|
757
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
758
|
+
:param pulumi.Input[bool] allow_queueing: Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be
|
759
|
+
queued instead of skipped. Default to false.
|
760
|
+
:param pulumi.Input[Union['ScheduleCreateNotebookExecutionJobRequestArgs', 'ScheduleCreateNotebookExecutionJobRequestArgsDict']] create_notebook_execution_job_request: Request for google_colab_notebook_execution.
|
761
|
+
Structure is documented below.
|
762
|
+
:param pulumi.Input[str] cron: Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs.
|
763
|
+
:param pulumi.Input[str] desired_state: Desired state of the Colab Schedule. Set this field to 'ACTIVE' to start/resume the schedule, and 'PAUSED' to pause the
|
764
|
+
schedule.
|
765
|
+
:param pulumi.Input[str] display_name: Required. The display name of the Schedule.
|
766
|
+
:param pulumi.Input[str] end_time: Timestamp after which no new runs can be scheduled. If specified, the schedule will be completed when either end_time is
|
767
|
+
reached or when scheduled_run_count >= max_run_count. Must be in the RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt)
|
768
|
+
format.
|
769
|
+
:param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
|
770
|
+
:param pulumi.Input[str] max_concurrent_run_count: Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the notebook execution jobs created by the requests.
|
771
|
+
:param pulumi.Input[str] max_run_count: Maximum run count of the schedule. If specified, The schedule will be completed when either startedRunCount >=
|
772
|
+
maxRunCount or when endTime is reached. If not specified, new runs will keep getting scheduled until this Schedule is
|
773
|
+
paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
|
774
|
+
:param pulumi.Input[str] start_time: The timestamp after which the first run can be scheduled. Defaults to the schedule creation time. Must be in the RFC
|
775
|
+
3339 (https://www.ietf.org/rfc/rfc3339.txt) format.
|
776
|
+
"""
|
777
|
+
...
|
778
|
+
@overload
|
779
|
+
def __init__(__self__,
|
780
|
+
resource_name: str,
|
781
|
+
args: ScheduleArgs,
|
782
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
783
|
+
"""
|
784
|
+
'Colab Enterprise Notebook Execution Schedules.'
|
785
|
+
|
786
|
+
To get more information about Schedule, see:
|
787
|
+
|
788
|
+
* [API documentation](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.schedules)
|
789
|
+
* How-to Guides
|
790
|
+
* [Schedule a notebook run](https://cloud.google.com/colab/docs/schedule-notebook-run)
|
791
|
+
|
792
|
+
## Example Usage
|
793
|
+
|
794
|
+
### Colab Schedule Basic
|
795
|
+
|
796
|
+
```python
|
797
|
+
import pulumi
|
798
|
+
import pulumi_gcp as gcp
|
799
|
+
|
800
|
+
my_runtime_template = gcp.colab.RuntimeTemplate("my_runtime_template",
|
801
|
+
name="runtime-template",
|
802
|
+
display_name="Runtime template",
|
803
|
+
location="us-central1",
|
804
|
+
machine_spec={
|
805
|
+
"machine_type": "e2-standard-4",
|
806
|
+
},
|
807
|
+
network_spec={
|
808
|
+
"enable_internet_access": True,
|
809
|
+
})
|
810
|
+
output_bucket = gcp.storage.Bucket("output_bucket",
|
811
|
+
name="my_bucket",
|
812
|
+
location="US",
|
813
|
+
force_destroy=True,
|
814
|
+
uniform_bucket_level_access=True)
|
815
|
+
notebook = gcp.storage.BucketObject("notebook",
|
816
|
+
name="hello_world.ipynb",
|
817
|
+
bucket=output_bucket.name,
|
818
|
+
content=\"\"\" {
|
819
|
+
"cells": [
|
820
|
+
{
|
821
|
+
"cell_type": "code",
|
822
|
+
"execution_count": null,
|
823
|
+
"metadata": {},
|
824
|
+
"outputs": [],
|
825
|
+
"source": [
|
826
|
+
"print(\\"Hello, World!\\")"
|
827
|
+
]
|
828
|
+
}
|
829
|
+
],
|
830
|
+
"metadata": {
|
831
|
+
"kernelspec": {
|
832
|
+
"display_name": "Python 3",
|
833
|
+
"language": "python",
|
834
|
+
"name": "python3"
|
835
|
+
},
|
836
|
+
"language_info": {
|
837
|
+
"codemirror_mode": {
|
838
|
+
"name": "ipython",
|
839
|
+
"version": 3
|
840
|
+
},
|
841
|
+
"file_extension": ".py",
|
842
|
+
"mimetype": "text/x-python",
|
843
|
+
"name": "python",
|
844
|
+
"nbconvert_exporter": "python",
|
845
|
+
"pygments_lexer": "ipython3",
|
846
|
+
"version": "3.8.5"
|
847
|
+
}
|
848
|
+
},
|
849
|
+
"nbformat": 4,
|
850
|
+
"nbformat_minor": 4
|
851
|
+
}
|
852
|
+
\"\"\")
|
853
|
+
schedule = gcp.colab.Schedule("schedule",
|
854
|
+
display_name="basic-schedule",
|
855
|
+
location="us-west1",
|
856
|
+
max_concurrent_run_count="2",
|
857
|
+
cron="TZ=America/Los_Angeles * * * * *",
|
858
|
+
create_notebook_execution_job_request={
|
859
|
+
"notebook_execution_job": {
|
860
|
+
"display_name": "Notebook execution",
|
861
|
+
"gcs_notebook_source": {
|
862
|
+
"uri": pulumi.Output.all(
|
863
|
+
bucket=notebook.bucket,
|
864
|
+
name=notebook.name
|
865
|
+
).apply(lambda resolved_outputs: f"gs://{resolved_outputs['bucket']}/{resolved_outputs['name']}")
|
866
|
+
,
|
867
|
+
"generation": notebook.generation,
|
868
|
+
},
|
869
|
+
"notebook_runtime_template_resource_name": pulumi.Output.all(
|
870
|
+
project=my_runtime_template.project,
|
871
|
+
location=my_runtime_template.location,
|
872
|
+
name=my_runtime_template.name
|
873
|
+
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/{resolved_outputs['location']}/notebookRuntimeTemplates/{resolved_outputs['name']}")
|
874
|
+
,
|
875
|
+
"gcs_output_uri": output_bucket.name.apply(lambda name: f"gs://{name}"),
|
876
|
+
"service_account": "my@service-account.com",
|
877
|
+
},
|
878
|
+
},
|
879
|
+
opts = pulumi.ResourceOptions(depends_on=[
|
880
|
+
my_runtime_template,
|
881
|
+
output_bucket,
|
882
|
+
]))
|
883
|
+
```
|
884
|
+
### Colab Schedule Paused
|
885
|
+
|
886
|
+
```python
|
887
|
+
import pulumi
|
888
|
+
import pulumi_gcp as gcp
|
889
|
+
|
890
|
+
my_runtime_template = gcp.colab.RuntimeTemplate("my_runtime_template",
|
891
|
+
name="runtime-template",
|
892
|
+
display_name="Runtime template",
|
893
|
+
location="us-central1",
|
894
|
+
machine_spec={
|
895
|
+
"machine_type": "e2-standard-4",
|
896
|
+
},
|
897
|
+
network_spec={
|
898
|
+
"enable_internet_access": True,
|
899
|
+
})
|
900
|
+
output_bucket = gcp.storage.Bucket("output_bucket",
|
901
|
+
name="my_bucket",
|
902
|
+
location="US",
|
903
|
+
force_destroy=True,
|
904
|
+
uniform_bucket_level_access=True)
|
905
|
+
notebook = gcp.storage.BucketObject("notebook",
|
906
|
+
name="hello_world.ipynb",
|
907
|
+
bucket=output_bucket.name,
|
908
|
+
content=\"\"\" {
|
909
|
+
"cells": [
|
910
|
+
{
|
911
|
+
"cell_type": "code",
|
912
|
+
"execution_count": null,
|
913
|
+
"metadata": {},
|
914
|
+
"outputs": [],
|
915
|
+
"source": [
|
916
|
+
"print(\\"Hello, World!\\")"
|
917
|
+
]
|
918
|
+
}
|
919
|
+
],
|
920
|
+
"metadata": {
|
921
|
+
"kernelspec": {
|
922
|
+
"display_name": "Python 3",
|
923
|
+
"language": "python",
|
924
|
+
"name": "python3"
|
925
|
+
},
|
926
|
+
"language_info": {
|
927
|
+
"codemirror_mode": {
|
928
|
+
"name": "ipython",
|
929
|
+
"version": 3
|
930
|
+
},
|
931
|
+
"file_extension": ".py",
|
932
|
+
"mimetype": "text/x-python",
|
933
|
+
"name": "python",
|
934
|
+
"nbconvert_exporter": "python",
|
935
|
+
"pygments_lexer": "ipython3",
|
936
|
+
"version": "3.8.5"
|
937
|
+
}
|
938
|
+
},
|
939
|
+
"nbformat": 4,
|
940
|
+
"nbformat_minor": 4
|
941
|
+
}
|
942
|
+
\"\"\")
|
943
|
+
schedule = gcp.colab.Schedule("schedule",
|
944
|
+
display_name="paused-schedule",
|
945
|
+
location="us-west1",
|
946
|
+
max_concurrent_run_count="2",
|
947
|
+
cron="TZ=America/Los_Angeles * * * * *",
|
948
|
+
desired_state="PAUSED",
|
949
|
+
create_notebook_execution_job_request={
|
950
|
+
"notebook_execution_job": {
|
951
|
+
"display_name": "Notebook execution",
|
952
|
+
"gcs_notebook_source": {
|
953
|
+
"uri": pulumi.Output.all(
|
954
|
+
bucket=notebook.bucket,
|
955
|
+
name=notebook.name
|
956
|
+
).apply(lambda resolved_outputs: f"gs://{resolved_outputs['bucket']}/{resolved_outputs['name']}")
|
957
|
+
,
|
958
|
+
"generation": notebook.generation,
|
959
|
+
},
|
960
|
+
"notebook_runtime_template_resource_name": pulumi.Output.all(
|
961
|
+
project=my_runtime_template.project,
|
962
|
+
location=my_runtime_template.location,
|
963
|
+
name=my_runtime_template.name
|
964
|
+
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/{resolved_outputs['location']}/notebookRuntimeTemplates/{resolved_outputs['name']}")
|
965
|
+
,
|
966
|
+
"gcs_output_uri": output_bucket.name.apply(lambda name: f"gs://{name}"),
|
967
|
+
"service_account": "my@service-account.com",
|
968
|
+
},
|
969
|
+
},
|
970
|
+
opts = pulumi.ResourceOptions(depends_on=[
|
971
|
+
my_runtime_template,
|
972
|
+
output_bucket,
|
973
|
+
]))
|
974
|
+
```
|
975
|
+
### Colab Schedule Full
|
976
|
+
|
977
|
+
```python
|
978
|
+
import pulumi
|
979
|
+
import pulumi_gcp as gcp
|
980
|
+
|
981
|
+
my_runtime_template = gcp.colab.RuntimeTemplate("my_runtime_template",
|
982
|
+
name="runtime-template",
|
983
|
+
display_name="Runtime template",
|
984
|
+
location="us-central1",
|
985
|
+
machine_spec={
|
986
|
+
"machine_type": "e2-standard-4",
|
987
|
+
},
|
988
|
+
network_spec={
|
989
|
+
"enable_internet_access": True,
|
990
|
+
})
|
991
|
+
output_bucket = gcp.storage.Bucket("output_bucket",
|
992
|
+
name="my_bucket",
|
993
|
+
location="US",
|
994
|
+
force_destroy=True,
|
995
|
+
uniform_bucket_level_access=True)
|
996
|
+
secret = gcp.secretmanager.Secret("secret",
|
997
|
+
secret_id="secret",
|
998
|
+
replication={
|
999
|
+
"auto": {},
|
1000
|
+
})
|
1001
|
+
secret_version = gcp.secretmanager.SecretVersion("secret_version",
|
1002
|
+
secret=secret.id,
|
1003
|
+
secret_data="secret-data")
|
1004
|
+
dataform_repository = gcp.dataform.Repository("dataform_repository",
|
1005
|
+
name="dataform-repository",
|
1006
|
+
display_name="dataform_repository",
|
1007
|
+
npmrc_environment_variables_secret_version=secret_version.id,
|
1008
|
+
kms_key_name="",
|
1009
|
+
labels={
|
1010
|
+
"label_foo1": "label-bar1",
|
1011
|
+
},
|
1012
|
+
git_remote_settings={
|
1013
|
+
"url": "https://github.com/OWNER/REPOSITORY.git",
|
1014
|
+
"default_branch": "main",
|
1015
|
+
"authentication_token_secret_version": secret_version.id,
|
1016
|
+
},
|
1017
|
+
workspace_compilation_overrides={
|
1018
|
+
"default_database": "database",
|
1019
|
+
"schema_suffix": "_suffix",
|
1020
|
+
"table_prefix": "prefix_",
|
1021
|
+
})
|
1022
|
+
schedule = gcp.colab.Schedule("schedule",
|
1023
|
+
display_name="full-schedule",
|
1024
|
+
location="us-west1",
|
1025
|
+
allow_queueing=True,
|
1026
|
+
max_concurrent_run_count="2",
|
1027
|
+
cron="TZ=America/Los_Angeles * * * * *",
|
1028
|
+
max_run_count="5",
|
1029
|
+
start_time="2014-10-02T15:01:23Z",
|
1030
|
+
end_time="2014-10-10T15:01:23Z",
|
1031
|
+
desired_state="ACTIVE",
|
1032
|
+
create_notebook_execution_job_request={
|
1033
|
+
"notebook_execution_job": {
|
1034
|
+
"display_name": "Notebook execution",
|
1035
|
+
"execution_timeout": "86400s",
|
1036
|
+
"dataform_repository_source": {
|
1037
|
+
"commit_sha": "randomsha123",
|
1038
|
+
"dataform_repository_resource_name": dataform_repository.name.apply(lambda name: f"projects/my-project-name/locations/us-west1/repositories/{name}"),
|
1039
|
+
},
|
1040
|
+
"notebook_runtime_template_resource_name": pulumi.Output.all(
|
1041
|
+
project=my_runtime_template.project,
|
1042
|
+
location=my_runtime_template.location,
|
1043
|
+
name=my_runtime_template.name
|
1044
|
+
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/{resolved_outputs['location']}/notebookRuntimeTemplates/{resolved_outputs['name']}")
|
1045
|
+
,
|
1046
|
+
"gcs_output_uri": output_bucket.name.apply(lambda name: f"gs://{name}"),
|
1047
|
+
"service_account": "my@service-account.com",
|
1048
|
+
},
|
1049
|
+
},
|
1050
|
+
opts = pulumi.ResourceOptions(depends_on=[
|
1051
|
+
my_runtime_template,
|
1052
|
+
output_bucket,
|
1053
|
+
secret_version,
|
1054
|
+
dataform_repository,
|
1055
|
+
]))
|
1056
|
+
```
|
1057
|
+
|
1058
|
+
## Import
|
1059
|
+
|
1060
|
+
Schedule can be imported using any of these accepted formats:
|
1061
|
+
|
1062
|
+
* `projects/{{project}}/locations/{{location}}/schedules/{{name}}`
|
1063
|
+
|
1064
|
+
* `{{project}}/{{location}}/{{name}}`
|
1065
|
+
|
1066
|
+
* `{{location}}/{{name}}`
|
1067
|
+
|
1068
|
+
When using the `pulumi import` command, Schedule can be imported using one of the formats above. For example:
|
1069
|
+
|
1070
|
+
```sh
|
1071
|
+
$ pulumi import gcp:colab/schedule:Schedule default projects/{{project}}/locations/{{location}}/schedules/{{name}}
|
1072
|
+
```
|
1073
|
+
|
1074
|
+
```sh
|
1075
|
+
$ pulumi import gcp:colab/schedule:Schedule default {{project}}/{{location}}/{{name}}
|
1076
|
+
```
|
1077
|
+
|
1078
|
+
```sh
|
1079
|
+
$ pulumi import gcp:colab/schedule:Schedule default {{location}}/{{name}}
|
1080
|
+
```
|
1081
|
+
|
1082
|
+
:param str resource_name: The name of the resource.
|
1083
|
+
:param ScheduleArgs args: The arguments to use to populate this resource's properties.
|
1084
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
1085
|
+
"""
|
1086
|
+
...
|
1087
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
1088
|
+
resource_args, opts = _utilities.get_resource_args_opts(ScheduleArgs, pulumi.ResourceOptions, *args, **kwargs)
|
1089
|
+
if resource_args is not None:
|
1090
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
1091
|
+
else:
|
1092
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
1093
|
+
|
1094
|
+
def _internal_init(__self__,
|
1095
|
+
resource_name: str,
|
1096
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
1097
|
+
allow_queueing: Optional[pulumi.Input[bool]] = None,
|
1098
|
+
create_notebook_execution_job_request: Optional[pulumi.Input[Union['ScheduleCreateNotebookExecutionJobRequestArgs', 'ScheduleCreateNotebookExecutionJobRequestArgsDict']]] = None,
|
1099
|
+
cron: Optional[pulumi.Input[str]] = None,
|
1100
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
1101
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
1102
|
+
end_time: Optional[pulumi.Input[str]] = None,
|
1103
|
+
location: Optional[pulumi.Input[str]] = None,
|
1104
|
+
max_concurrent_run_count: Optional[pulumi.Input[str]] = None,
|
1105
|
+
max_run_count: Optional[pulumi.Input[str]] = None,
|
1106
|
+
project: Optional[pulumi.Input[str]] = None,
|
1107
|
+
start_time: Optional[pulumi.Input[str]] = None,
|
1108
|
+
__props__=None):
|
1109
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
1110
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
1111
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
1112
|
+
if opts.id is None:
|
1113
|
+
if __props__ is not None:
|
1114
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
1115
|
+
__props__ = ScheduleArgs.__new__(ScheduleArgs)
|
1116
|
+
|
1117
|
+
__props__.__dict__["allow_queueing"] = allow_queueing
|
1118
|
+
if create_notebook_execution_job_request is None and not opts.urn:
|
1119
|
+
raise TypeError("Missing required property 'create_notebook_execution_job_request'")
|
1120
|
+
__props__.__dict__["create_notebook_execution_job_request"] = create_notebook_execution_job_request
|
1121
|
+
if cron is None and not opts.urn:
|
1122
|
+
raise TypeError("Missing required property 'cron'")
|
1123
|
+
__props__.__dict__["cron"] = cron
|
1124
|
+
__props__.__dict__["desired_state"] = desired_state
|
1125
|
+
if display_name is None and not opts.urn:
|
1126
|
+
raise TypeError("Missing required property 'display_name'")
|
1127
|
+
__props__.__dict__["display_name"] = display_name
|
1128
|
+
__props__.__dict__["end_time"] = end_time
|
1129
|
+
if location is None and not opts.urn:
|
1130
|
+
raise TypeError("Missing required property 'location'")
|
1131
|
+
__props__.__dict__["location"] = location
|
1132
|
+
if max_concurrent_run_count is None and not opts.urn:
|
1133
|
+
raise TypeError("Missing required property 'max_concurrent_run_count'")
|
1134
|
+
__props__.__dict__["max_concurrent_run_count"] = max_concurrent_run_count
|
1135
|
+
__props__.__dict__["max_run_count"] = max_run_count
|
1136
|
+
__props__.__dict__["project"] = project
|
1137
|
+
__props__.__dict__["start_time"] = start_time
|
1138
|
+
__props__.__dict__["name"] = None
|
1139
|
+
__props__.__dict__["state"] = None
|
1140
|
+
super(Schedule, __self__).__init__(
|
1141
|
+
'gcp:colab/schedule:Schedule',
|
1142
|
+
resource_name,
|
1143
|
+
__props__,
|
1144
|
+
opts)
|
1145
|
+
|
1146
|
+
@staticmethod
|
1147
|
+
def get(resource_name: str,
|
1148
|
+
id: pulumi.Input[str],
|
1149
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
1150
|
+
allow_queueing: Optional[pulumi.Input[bool]] = None,
|
1151
|
+
create_notebook_execution_job_request: Optional[pulumi.Input[Union['ScheduleCreateNotebookExecutionJobRequestArgs', 'ScheduleCreateNotebookExecutionJobRequestArgsDict']]] = None,
|
1152
|
+
cron: Optional[pulumi.Input[str]] = None,
|
1153
|
+
desired_state: Optional[pulumi.Input[str]] = None,
|
1154
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
1155
|
+
end_time: Optional[pulumi.Input[str]] = None,
|
1156
|
+
location: Optional[pulumi.Input[str]] = None,
|
1157
|
+
max_concurrent_run_count: Optional[pulumi.Input[str]] = None,
|
1158
|
+
max_run_count: Optional[pulumi.Input[str]] = None,
|
1159
|
+
name: Optional[pulumi.Input[str]] = None,
|
1160
|
+
project: Optional[pulumi.Input[str]] = None,
|
1161
|
+
start_time: Optional[pulumi.Input[str]] = None,
|
1162
|
+
state: Optional[pulumi.Input[str]] = None) -> 'Schedule':
|
1163
|
+
"""
|
1164
|
+
Get an existing Schedule resource's state with the given name, id, and optional extra
|
1165
|
+
properties used to qualify the lookup.
|
1166
|
+
|
1167
|
+
:param str resource_name: The unique name of the resulting resource.
|
1168
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
1169
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
1170
|
+
:param pulumi.Input[bool] allow_queueing: Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be
|
1171
|
+
queued instead of skipped. Default to false.
|
1172
|
+
:param pulumi.Input[Union['ScheduleCreateNotebookExecutionJobRequestArgs', 'ScheduleCreateNotebookExecutionJobRequestArgsDict']] create_notebook_execution_job_request: Request for google_colab_notebook_execution.
|
1173
|
+
Structure is documented below.
|
1174
|
+
:param pulumi.Input[str] cron: Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs.
|
1175
|
+
:param pulumi.Input[str] desired_state: Desired state of the Colab Schedule. Set this field to 'ACTIVE' to start/resume the schedule, and 'PAUSED' to pause the
|
1176
|
+
schedule.
|
1177
|
+
:param pulumi.Input[str] display_name: Required. The display name of the Schedule.
|
1178
|
+
:param pulumi.Input[str] end_time: Timestamp after which no new runs can be scheduled. If specified, the schedule will be completed when either end_time is
|
1179
|
+
reached or when scheduled_run_count >= max_run_count. Must be in the RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt)
|
1180
|
+
format.
|
1181
|
+
:param pulumi.Input[str] location: The location for the resource: https://cloud.google.com/colab/docs/locations
|
1182
|
+
:param pulumi.Input[str] max_concurrent_run_count: Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the notebook execution jobs created by the requests.
|
1183
|
+
:param pulumi.Input[str] max_run_count: Maximum run count of the schedule. If specified, The schedule will be completed when either startedRunCount >=
|
1184
|
+
maxRunCount or when endTime is reached. If not specified, new runs will keep getting scheduled until this Schedule is
|
1185
|
+
paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
|
1186
|
+
:param pulumi.Input[str] name: The resource name of the Schedule
|
1187
|
+
:param pulumi.Input[str] start_time: The timestamp after which the first run can be scheduled. Defaults to the schedule creation time. Must be in the RFC
|
1188
|
+
3339 (https://www.ietf.org/rfc/rfc3339.txt) format.
|
1189
|
+
:param pulumi.Input[str] state: Output only. The state of the schedule.
|
1190
|
+
"""
|
1191
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
1192
|
+
|
1193
|
+
__props__ = _ScheduleState.__new__(_ScheduleState)
|
1194
|
+
|
1195
|
+
__props__.__dict__["allow_queueing"] = allow_queueing
|
1196
|
+
__props__.__dict__["create_notebook_execution_job_request"] = create_notebook_execution_job_request
|
1197
|
+
__props__.__dict__["cron"] = cron
|
1198
|
+
__props__.__dict__["desired_state"] = desired_state
|
1199
|
+
__props__.__dict__["display_name"] = display_name
|
1200
|
+
__props__.__dict__["end_time"] = end_time
|
1201
|
+
__props__.__dict__["location"] = location
|
1202
|
+
__props__.__dict__["max_concurrent_run_count"] = max_concurrent_run_count
|
1203
|
+
__props__.__dict__["max_run_count"] = max_run_count
|
1204
|
+
__props__.__dict__["name"] = name
|
1205
|
+
__props__.__dict__["project"] = project
|
1206
|
+
__props__.__dict__["start_time"] = start_time
|
1207
|
+
__props__.__dict__["state"] = state
|
1208
|
+
return Schedule(resource_name, opts=opts, __props__=__props__)
|
1209
|
+
|
1210
|
+
@property
|
1211
|
+
@pulumi.getter(name="allowQueueing")
|
1212
|
+
def allow_queueing(self) -> pulumi.Output[Optional[bool]]:
|
1213
|
+
"""
|
1214
|
+
Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be
|
1215
|
+
queued instead of skipped. Default to false.
|
1216
|
+
"""
|
1217
|
+
return pulumi.get(self, "allow_queueing")
|
1218
|
+
|
1219
|
+
@property
|
1220
|
+
@pulumi.getter(name="createNotebookExecutionJobRequest")
|
1221
|
+
def create_notebook_execution_job_request(self) -> pulumi.Output['outputs.ScheduleCreateNotebookExecutionJobRequest']:
|
1222
|
+
"""
|
1223
|
+
Request for google_colab_notebook_execution.
|
1224
|
+
Structure is documented below.
|
1225
|
+
"""
|
1226
|
+
return pulumi.get(self, "create_notebook_execution_job_request")
|
1227
|
+
|
1228
|
+
@property
|
1229
|
+
@pulumi.getter
|
1230
|
+
def cron(self) -> pulumi.Output[str]:
|
1231
|
+
"""
|
1232
|
+
Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs.
|
1233
|
+
"""
|
1234
|
+
return pulumi.get(self, "cron")
|
1235
|
+
|
1236
|
+
@property
|
1237
|
+
@pulumi.getter(name="desiredState")
|
1238
|
+
def desired_state(self) -> pulumi.Output[Optional[str]]:
|
1239
|
+
"""
|
1240
|
+
Desired state of the Colab Schedule. Set this field to 'ACTIVE' to start/resume the schedule, and 'PAUSED' to pause the
|
1241
|
+
schedule.
|
1242
|
+
"""
|
1243
|
+
return pulumi.get(self, "desired_state")
|
1244
|
+
|
1245
|
+
@property
|
1246
|
+
@pulumi.getter(name="displayName")
|
1247
|
+
def display_name(self) -> pulumi.Output[str]:
|
1248
|
+
"""
|
1249
|
+
Required. The display name of the Schedule.
|
1250
|
+
"""
|
1251
|
+
return pulumi.get(self, "display_name")
|
1252
|
+
|
1253
|
+
@property
|
1254
|
+
@pulumi.getter(name="endTime")
|
1255
|
+
def end_time(self) -> pulumi.Output[Optional[str]]:
|
1256
|
+
"""
|
1257
|
+
Timestamp after which no new runs can be scheduled. If specified, the schedule will be completed when either end_time is
|
1258
|
+
reached or when scheduled_run_count >= max_run_count. Must be in the RFC 3339 (https://www.ietf.org/rfc/rfc3339.txt)
|
1259
|
+
format.
|
1260
|
+
"""
|
1261
|
+
return pulumi.get(self, "end_time")
|
1262
|
+
|
1263
|
+
@property
|
1264
|
+
@pulumi.getter
|
1265
|
+
def location(self) -> pulumi.Output[str]:
|
1266
|
+
"""
|
1267
|
+
The location for the resource: https://cloud.google.com/colab/docs/locations
|
1268
|
+
"""
|
1269
|
+
return pulumi.get(self, "location")
|
1270
|
+
|
1271
|
+
@property
|
1272
|
+
@pulumi.getter(name="maxConcurrentRunCount")
|
1273
|
+
def max_concurrent_run_count(self) -> pulumi.Output[str]:
|
1274
|
+
"""
|
1275
|
+
Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the notebook execution jobs created by the requests.
|
1276
|
+
"""
|
1277
|
+
return pulumi.get(self, "max_concurrent_run_count")
|
1278
|
+
|
1279
|
+
@property
|
1280
|
+
@pulumi.getter(name="maxRunCount")
|
1281
|
+
def max_run_count(self) -> pulumi.Output[Optional[str]]:
|
1282
|
+
"""
|
1283
|
+
Maximum run count of the schedule. If specified, The schedule will be completed when either startedRunCount >=
|
1284
|
+
maxRunCount or when endTime is reached. If not specified, new runs will keep getting scheduled until this Schedule is
|
1285
|
+
paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
|
1286
|
+
"""
|
1287
|
+
return pulumi.get(self, "max_run_count")
|
1288
|
+
|
1289
|
+
@property
|
1290
|
+
@pulumi.getter
|
1291
|
+
def name(self) -> pulumi.Output[str]:
|
1292
|
+
"""
|
1293
|
+
The resource name of the Schedule
|
1294
|
+
"""
|
1295
|
+
return pulumi.get(self, "name")
|
1296
|
+
|
1297
|
+
@property
|
1298
|
+
@pulumi.getter
|
1299
|
+
def project(self) -> pulumi.Output[str]:
|
1300
|
+
return pulumi.get(self, "project")
|
1301
|
+
|
1302
|
+
@property
|
1303
|
+
@pulumi.getter(name="startTime")
|
1304
|
+
def start_time(self) -> pulumi.Output[str]:
|
1305
|
+
"""
|
1306
|
+
The timestamp after which the first run can be scheduled. Defaults to the schedule creation time. Must be in the RFC
|
1307
|
+
3339 (https://www.ietf.org/rfc/rfc3339.txt) format.
|
1308
|
+
"""
|
1309
|
+
return pulumi.get(self, "start_time")
|
1310
|
+
|
1311
|
+
@property
|
1312
|
+
@pulumi.getter
|
1313
|
+
def state(self) -> pulumi.Output[str]:
|
1314
|
+
"""
|
1315
|
+
Output only. The state of the schedule.
|
1316
|
+
"""
|
1317
|
+
return pulumi.get(self, "state")
|
1318
|
+
|