pulumi-checkly 2.2.0a1744026052__py3-none-any.whl → 2.3.0a1745306337__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.
@@ -17,6 +17,8 @@ from .maintenance_window import *
17
17
  from .private_location import *
18
18
  from .provider import *
19
19
  from .snippet import *
20
+ from .status_page import *
21
+ from .status_page_service import *
20
22
  from .tcp_check import *
21
23
  from .trigger_check import *
22
24
  from .trigger_check_group import *
@@ -113,6 +115,22 @@ _utilities.register(
113
115
  "checkly:index/snippet:Snippet": "Snippet"
114
116
  }
115
117
  },
118
+ {
119
+ "pkg": "checkly",
120
+ "mod": "index/statusPage",
121
+ "fqn": "pulumi_checkly",
122
+ "classes": {
123
+ "checkly:index/statusPage:StatusPage": "StatusPage"
124
+ }
125
+ },
126
+ {
127
+ "pkg": "checkly",
128
+ "mod": "index/statusPageService",
129
+ "fqn": "pulumi_checkly",
130
+ "classes": {
131
+ "checkly:index/statusPageService:StatusPageService": "StatusPageService"
132
+ }
133
+ },
116
134
  {
117
135
  "pkg": "checkly",
118
136
  "mod": "index/tcpCheck",
pulumi_checkly/_inputs.py CHANGED
@@ -93,6 +93,10 @@ __all__ = [
93
93
  'HeartbeatCheckAlertSettingsTimeBasedEscalationArgsDict',
94
94
  'HeartbeatCheckHeartbeatArgs',
95
95
  'HeartbeatCheckHeartbeatArgsDict',
96
+ 'StatusPageCardArgs',
97
+ 'StatusPageCardArgsDict',
98
+ 'StatusPageCardServiceAttachmentArgs',
99
+ 'StatusPageCardServiceAttachmentArgsDict',
96
100
  'TcpCheckAlertChannelSubscriptionArgs',
97
101
  'TcpCheckAlertChannelSubscriptionArgsDict',
98
102
  'TcpCheckAlertSettingsArgs',
@@ -2546,6 +2550,87 @@ class HeartbeatCheckHeartbeatArgs:
2546
2550
  pulumi.set(self, "ping_token", value)
2547
2551
 
2548
2552
 
2553
+ if not MYPY:
2554
+ class StatusPageCardArgsDict(TypedDict):
2555
+ name: pulumi.Input[str]
2556
+ """
2557
+ The name of the card.
2558
+ """
2559
+ service_attachments: pulumi.Input[Sequence[pulumi.Input['StatusPageCardServiceAttachmentArgsDict']]]
2560
+ """
2561
+ A list of services to attach to the card.
2562
+ """
2563
+ elif False:
2564
+ StatusPageCardArgsDict: TypeAlias = Mapping[str, Any]
2565
+
2566
+ @pulumi.input_type
2567
+ class StatusPageCardArgs:
2568
+ def __init__(__self__, *,
2569
+ name: pulumi.Input[str],
2570
+ service_attachments: pulumi.Input[Sequence[pulumi.Input['StatusPageCardServiceAttachmentArgs']]]):
2571
+ """
2572
+ :param pulumi.Input[str] name: The name of the card.
2573
+ :param pulumi.Input[Sequence[pulumi.Input['StatusPageCardServiceAttachmentArgs']]] service_attachments: A list of services to attach to the card.
2574
+ """
2575
+ pulumi.set(__self__, "name", name)
2576
+ pulumi.set(__self__, "service_attachments", service_attachments)
2577
+
2578
+ @property
2579
+ @pulumi.getter
2580
+ def name(self) -> pulumi.Input[str]:
2581
+ """
2582
+ The name of the card.
2583
+ """
2584
+ return pulumi.get(self, "name")
2585
+
2586
+ @name.setter
2587
+ def name(self, value: pulumi.Input[str]):
2588
+ pulumi.set(self, "name", value)
2589
+
2590
+ @property
2591
+ @pulumi.getter(name="serviceAttachments")
2592
+ def service_attachments(self) -> pulumi.Input[Sequence[pulumi.Input['StatusPageCardServiceAttachmentArgs']]]:
2593
+ """
2594
+ A list of services to attach to the card.
2595
+ """
2596
+ return pulumi.get(self, "service_attachments")
2597
+
2598
+ @service_attachments.setter
2599
+ def service_attachments(self, value: pulumi.Input[Sequence[pulumi.Input['StatusPageCardServiceAttachmentArgs']]]):
2600
+ pulumi.set(self, "service_attachments", value)
2601
+
2602
+
2603
+ if not MYPY:
2604
+ class StatusPageCardServiceAttachmentArgsDict(TypedDict):
2605
+ service_id: pulumi.Input[str]
2606
+ """
2607
+ The ID of the service.
2608
+ """
2609
+ elif False:
2610
+ StatusPageCardServiceAttachmentArgsDict: TypeAlias = Mapping[str, Any]
2611
+
2612
+ @pulumi.input_type
2613
+ class StatusPageCardServiceAttachmentArgs:
2614
+ def __init__(__self__, *,
2615
+ service_id: pulumi.Input[str]):
2616
+ """
2617
+ :param pulumi.Input[str] service_id: The ID of the service.
2618
+ """
2619
+ pulumi.set(__self__, "service_id", service_id)
2620
+
2621
+ @property
2622
+ @pulumi.getter(name="serviceId")
2623
+ def service_id(self) -> pulumi.Input[str]:
2624
+ """
2625
+ The ID of the service.
2626
+ """
2627
+ return pulumi.get(self, "service_id")
2628
+
2629
+ @service_id.setter
2630
+ def service_id(self, value: pulumi.Input[str]):
2631
+ pulumi.set(self, "service_id", value)
2632
+
2633
+
2549
2634
  if not MYPY:
2550
2635
  class TcpCheckAlertChannelSubscriptionArgsDict(TypedDict):
2551
2636
  activated: pulumi.Input[bool]
pulumi_checkly/outputs.py CHANGED
@@ -55,6 +55,8 @@ __all__ = [
55
55
  'HeartbeatCheckAlertSettingsSslCertificate',
56
56
  'HeartbeatCheckAlertSettingsTimeBasedEscalation',
57
57
  'HeartbeatCheckHeartbeat',
58
+ 'StatusPageCard',
59
+ 'StatusPageCardServiceAttachment',
58
60
  'TcpCheckAlertChannelSubscription',
59
61
  'TcpCheckAlertSettings',
60
62
  'TcpCheckAlertSettingsParallelRunFailureThreshold',
@@ -1951,6 +1953,87 @@ class HeartbeatCheckHeartbeat(dict):
1951
1953
  return pulumi.get(self, "ping_token")
1952
1954
 
1953
1955
 
1956
+ @pulumi.output_type
1957
+ class StatusPageCard(dict):
1958
+ @staticmethod
1959
+ def __key_warning(key: str):
1960
+ suggest = None
1961
+ if key == "serviceAttachments":
1962
+ suggest = "service_attachments"
1963
+
1964
+ if suggest:
1965
+ pulumi.log.warn(f"Key '{key}' not found in StatusPageCard. Access the value via the '{suggest}' property getter instead.")
1966
+
1967
+ def __getitem__(self, key: str) -> Any:
1968
+ StatusPageCard.__key_warning(key)
1969
+ return super().__getitem__(key)
1970
+
1971
+ def get(self, key: str, default = None) -> Any:
1972
+ StatusPageCard.__key_warning(key)
1973
+ return super().get(key, default)
1974
+
1975
+ def __init__(__self__, *,
1976
+ name: str,
1977
+ service_attachments: Sequence['outputs.StatusPageCardServiceAttachment']):
1978
+ """
1979
+ :param str name: The name of the card.
1980
+ :param Sequence['StatusPageCardServiceAttachmentArgs'] service_attachments: A list of services to attach to the card.
1981
+ """
1982
+ pulumi.set(__self__, "name", name)
1983
+ pulumi.set(__self__, "service_attachments", service_attachments)
1984
+
1985
+ @property
1986
+ @pulumi.getter
1987
+ def name(self) -> str:
1988
+ """
1989
+ The name of the card.
1990
+ """
1991
+ return pulumi.get(self, "name")
1992
+
1993
+ @property
1994
+ @pulumi.getter(name="serviceAttachments")
1995
+ def service_attachments(self) -> Sequence['outputs.StatusPageCardServiceAttachment']:
1996
+ """
1997
+ A list of services to attach to the card.
1998
+ """
1999
+ return pulumi.get(self, "service_attachments")
2000
+
2001
+
2002
+ @pulumi.output_type
2003
+ class StatusPageCardServiceAttachment(dict):
2004
+ @staticmethod
2005
+ def __key_warning(key: str):
2006
+ suggest = None
2007
+ if key == "serviceId":
2008
+ suggest = "service_id"
2009
+
2010
+ if suggest:
2011
+ pulumi.log.warn(f"Key '{key}' not found in StatusPageCardServiceAttachment. Access the value via the '{suggest}' property getter instead.")
2012
+
2013
+ def __getitem__(self, key: str) -> Any:
2014
+ StatusPageCardServiceAttachment.__key_warning(key)
2015
+ return super().__getitem__(key)
2016
+
2017
+ def get(self, key: str, default = None) -> Any:
2018
+ StatusPageCardServiceAttachment.__key_warning(key)
2019
+ return super().get(key, default)
2020
+
2021
+ def __init__(__self__, *,
2022
+ service_id: str):
2023
+ """
2024
+ :param str service_id: The ID of the service.
2025
+ """
2026
+ pulumi.set(__self__, "service_id", service_id)
2027
+
2028
+ @property
2029
+ @pulumi.getter(name="serviceId")
2030
+ def service_id(self) -> str:
2031
+ """
2032
+ The ID of the service.
2033
+ """
2034
+ return pulumi.get(self, "service_id")
2035
+
2036
+
1954
2037
  @pulumi.output_type
1955
2038
  class TcpCheckAlertChannelSubscription(dict):
1956
2039
  @staticmethod
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "checkly",
4
- "version": "2.2.0-alpha.1744026052",
4
+ "version": "2.3.0-alpha.1745306337",
5
5
  "server": "github://api.github.com/checkly"
6
6
  }
@@ -0,0 +1,533 @@
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__ = ['StatusPageArgs', 'StatusPage']
20
+
21
+ @pulumi.input_type
22
+ class StatusPageArgs:
23
+ def __init__(__self__, *,
24
+ cards: pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]],
25
+ url: pulumi.Input[str],
26
+ custom_domain: Optional[pulumi.Input[str]] = None,
27
+ default_theme: Optional[pulumi.Input[str]] = None,
28
+ favicon: Optional[pulumi.Input[str]] = None,
29
+ logo: Optional[pulumi.Input[str]] = None,
30
+ name: Optional[pulumi.Input[str]] = None,
31
+ redirect_to: Optional[pulumi.Input[str]] = None):
32
+ """
33
+ The set of arguments for constructing a StatusPage resource.
34
+ :param pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]] cards: A list of cards to include on the status page.
35
+ :param pulumi.Input[str] url: The URL of the status page.
36
+ :param pulumi.Input[str] custom_domain: A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
37
+ :param pulumi.Input[str] default_theme: Possible values are `AUTO`, `DARK`, and `LIGHT`. (Default `AUTO`).
38
+ :param pulumi.Input[str] favicon: A URL to an image file to use as the favicon of the status page.
39
+ :param pulumi.Input[str] logo: A URL to an image file to use as the logo for the status page.
40
+ :param pulumi.Input[str] name: The name of the status page.
41
+ :param pulumi.Input[str] redirect_to: The URL the user should be redirected to when clicking the logo.
42
+ """
43
+ pulumi.set(__self__, "cards", cards)
44
+ pulumi.set(__self__, "url", url)
45
+ if custom_domain is not None:
46
+ pulumi.set(__self__, "custom_domain", custom_domain)
47
+ if default_theme is not None:
48
+ pulumi.set(__self__, "default_theme", default_theme)
49
+ if favicon is not None:
50
+ pulumi.set(__self__, "favicon", favicon)
51
+ if logo is not None:
52
+ pulumi.set(__self__, "logo", logo)
53
+ if name is not None:
54
+ pulumi.set(__self__, "name", name)
55
+ if redirect_to is not None:
56
+ pulumi.set(__self__, "redirect_to", redirect_to)
57
+
58
+ @property
59
+ @pulumi.getter
60
+ def cards(self) -> pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]]:
61
+ """
62
+ A list of cards to include on the status page.
63
+ """
64
+ return pulumi.get(self, "cards")
65
+
66
+ @cards.setter
67
+ def cards(self, value: pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]]):
68
+ pulumi.set(self, "cards", value)
69
+
70
+ @property
71
+ @pulumi.getter
72
+ def url(self) -> pulumi.Input[str]:
73
+ """
74
+ The URL of the status page.
75
+ """
76
+ return pulumi.get(self, "url")
77
+
78
+ @url.setter
79
+ def url(self, value: pulumi.Input[str]):
80
+ pulumi.set(self, "url", value)
81
+
82
+ @property
83
+ @pulumi.getter(name="customDomain")
84
+ def custom_domain(self) -> Optional[pulumi.Input[str]]:
85
+ """
86
+ A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
87
+ """
88
+ return pulumi.get(self, "custom_domain")
89
+
90
+ @custom_domain.setter
91
+ def custom_domain(self, value: Optional[pulumi.Input[str]]):
92
+ pulumi.set(self, "custom_domain", value)
93
+
94
+ @property
95
+ @pulumi.getter(name="defaultTheme")
96
+ def default_theme(self) -> Optional[pulumi.Input[str]]:
97
+ """
98
+ Possible values are `AUTO`, `DARK`, and `LIGHT`. (Default `AUTO`).
99
+ """
100
+ return pulumi.get(self, "default_theme")
101
+
102
+ @default_theme.setter
103
+ def default_theme(self, value: Optional[pulumi.Input[str]]):
104
+ pulumi.set(self, "default_theme", value)
105
+
106
+ @property
107
+ @pulumi.getter
108
+ def favicon(self) -> Optional[pulumi.Input[str]]:
109
+ """
110
+ A URL to an image file to use as the favicon of the status page.
111
+ """
112
+ return pulumi.get(self, "favicon")
113
+
114
+ @favicon.setter
115
+ def favicon(self, value: Optional[pulumi.Input[str]]):
116
+ pulumi.set(self, "favicon", value)
117
+
118
+ @property
119
+ @pulumi.getter
120
+ def logo(self) -> Optional[pulumi.Input[str]]:
121
+ """
122
+ A URL to an image file to use as the logo for the status page.
123
+ """
124
+ return pulumi.get(self, "logo")
125
+
126
+ @logo.setter
127
+ def logo(self, value: Optional[pulumi.Input[str]]):
128
+ pulumi.set(self, "logo", value)
129
+
130
+ @property
131
+ @pulumi.getter
132
+ def name(self) -> Optional[pulumi.Input[str]]:
133
+ """
134
+ The name of the status page.
135
+ """
136
+ return pulumi.get(self, "name")
137
+
138
+ @name.setter
139
+ def name(self, value: Optional[pulumi.Input[str]]):
140
+ pulumi.set(self, "name", value)
141
+
142
+ @property
143
+ @pulumi.getter(name="redirectTo")
144
+ def redirect_to(self) -> Optional[pulumi.Input[str]]:
145
+ """
146
+ The URL the user should be redirected to when clicking the logo.
147
+ """
148
+ return pulumi.get(self, "redirect_to")
149
+
150
+ @redirect_to.setter
151
+ def redirect_to(self, value: Optional[pulumi.Input[str]]):
152
+ pulumi.set(self, "redirect_to", value)
153
+
154
+
155
+ @pulumi.input_type
156
+ class _StatusPageState:
157
+ def __init__(__self__, *,
158
+ cards: Optional[pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]]] = None,
159
+ custom_domain: Optional[pulumi.Input[str]] = None,
160
+ default_theme: Optional[pulumi.Input[str]] = None,
161
+ favicon: Optional[pulumi.Input[str]] = None,
162
+ logo: Optional[pulumi.Input[str]] = None,
163
+ name: Optional[pulumi.Input[str]] = None,
164
+ redirect_to: Optional[pulumi.Input[str]] = None,
165
+ url: Optional[pulumi.Input[str]] = None):
166
+ """
167
+ Input properties used for looking up and filtering StatusPage resources.
168
+ :param pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]] cards: A list of cards to include on the status page.
169
+ :param pulumi.Input[str] custom_domain: A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
170
+ :param pulumi.Input[str] default_theme: Possible values are `AUTO`, `DARK`, and `LIGHT`. (Default `AUTO`).
171
+ :param pulumi.Input[str] favicon: A URL to an image file to use as the favicon of the status page.
172
+ :param pulumi.Input[str] logo: A URL to an image file to use as the logo for the status page.
173
+ :param pulumi.Input[str] name: The name of the status page.
174
+ :param pulumi.Input[str] redirect_to: The URL the user should be redirected to when clicking the logo.
175
+ :param pulumi.Input[str] url: The URL of the status page.
176
+ """
177
+ if cards is not None:
178
+ pulumi.set(__self__, "cards", cards)
179
+ if custom_domain is not None:
180
+ pulumi.set(__self__, "custom_domain", custom_domain)
181
+ if default_theme is not None:
182
+ pulumi.set(__self__, "default_theme", default_theme)
183
+ if favicon is not None:
184
+ pulumi.set(__self__, "favicon", favicon)
185
+ if logo is not None:
186
+ pulumi.set(__self__, "logo", logo)
187
+ if name is not None:
188
+ pulumi.set(__self__, "name", name)
189
+ if redirect_to is not None:
190
+ pulumi.set(__self__, "redirect_to", redirect_to)
191
+ if url is not None:
192
+ pulumi.set(__self__, "url", url)
193
+
194
+ @property
195
+ @pulumi.getter
196
+ def cards(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]]]:
197
+ """
198
+ A list of cards to include on the status page.
199
+ """
200
+ return pulumi.get(self, "cards")
201
+
202
+ @cards.setter
203
+ def cards(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['StatusPageCardArgs']]]]):
204
+ pulumi.set(self, "cards", value)
205
+
206
+ @property
207
+ @pulumi.getter(name="customDomain")
208
+ def custom_domain(self) -> Optional[pulumi.Input[str]]:
209
+ """
210
+ A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
211
+ """
212
+ return pulumi.get(self, "custom_domain")
213
+
214
+ @custom_domain.setter
215
+ def custom_domain(self, value: Optional[pulumi.Input[str]]):
216
+ pulumi.set(self, "custom_domain", value)
217
+
218
+ @property
219
+ @pulumi.getter(name="defaultTheme")
220
+ def default_theme(self) -> Optional[pulumi.Input[str]]:
221
+ """
222
+ Possible values are `AUTO`, `DARK`, and `LIGHT`. (Default `AUTO`).
223
+ """
224
+ return pulumi.get(self, "default_theme")
225
+
226
+ @default_theme.setter
227
+ def default_theme(self, value: Optional[pulumi.Input[str]]):
228
+ pulumi.set(self, "default_theme", value)
229
+
230
+ @property
231
+ @pulumi.getter
232
+ def favicon(self) -> Optional[pulumi.Input[str]]:
233
+ """
234
+ A URL to an image file to use as the favicon of the status page.
235
+ """
236
+ return pulumi.get(self, "favicon")
237
+
238
+ @favicon.setter
239
+ def favicon(self, value: Optional[pulumi.Input[str]]):
240
+ pulumi.set(self, "favicon", value)
241
+
242
+ @property
243
+ @pulumi.getter
244
+ def logo(self) -> Optional[pulumi.Input[str]]:
245
+ """
246
+ A URL to an image file to use as the logo for the status page.
247
+ """
248
+ return pulumi.get(self, "logo")
249
+
250
+ @logo.setter
251
+ def logo(self, value: Optional[pulumi.Input[str]]):
252
+ pulumi.set(self, "logo", value)
253
+
254
+ @property
255
+ @pulumi.getter
256
+ def name(self) -> Optional[pulumi.Input[str]]:
257
+ """
258
+ The name of the status page.
259
+ """
260
+ return pulumi.get(self, "name")
261
+
262
+ @name.setter
263
+ def name(self, value: Optional[pulumi.Input[str]]):
264
+ pulumi.set(self, "name", value)
265
+
266
+ @property
267
+ @pulumi.getter(name="redirectTo")
268
+ def redirect_to(self) -> Optional[pulumi.Input[str]]:
269
+ """
270
+ The URL the user should be redirected to when clicking the logo.
271
+ """
272
+ return pulumi.get(self, "redirect_to")
273
+
274
+ @redirect_to.setter
275
+ def redirect_to(self, value: Optional[pulumi.Input[str]]):
276
+ pulumi.set(self, "redirect_to", value)
277
+
278
+ @property
279
+ @pulumi.getter
280
+ def url(self) -> Optional[pulumi.Input[str]]:
281
+ """
282
+ The URL of the status page.
283
+ """
284
+ return pulumi.get(self, "url")
285
+
286
+ @url.setter
287
+ def url(self, value: Optional[pulumi.Input[str]]):
288
+ pulumi.set(self, "url", value)
289
+
290
+
291
+ class StatusPage(pulumi.CustomResource):
292
+ @overload
293
+ def __init__(__self__,
294
+ resource_name: str,
295
+ opts: Optional[pulumi.ResourceOptions] = None,
296
+ cards: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StatusPageCardArgs', 'StatusPageCardArgsDict']]]]] = None,
297
+ custom_domain: Optional[pulumi.Input[str]] = None,
298
+ default_theme: Optional[pulumi.Input[str]] = None,
299
+ favicon: Optional[pulumi.Input[str]] = None,
300
+ logo: Optional[pulumi.Input[str]] = None,
301
+ name: Optional[pulumi.Input[str]] = None,
302
+ redirect_to: Optional[pulumi.Input[str]] = None,
303
+ url: Optional[pulumi.Input[str]] = None,
304
+ __props__=None):
305
+ """
306
+ Checkly status pages allow you to easily communicate the uptime and health of your applications and services to your customers.
307
+
308
+ ## Example Usage
309
+
310
+ ```python
311
+ import pulumi
312
+ import pulumi_checkly as checkly
313
+
314
+ api = checkly.StatusPageService("api", name="API")
315
+ database = checkly.StatusPageService("database", name="Database")
316
+ example = checkly.StatusPage("example",
317
+ name="Example Application",
318
+ url="my-example-status-page",
319
+ default_theme="DARK",
320
+ cards=[{
321
+ "name": "Services",
322
+ "service_attachments": [
323
+ {
324
+ "service_id": api.id,
325
+ },
326
+ {
327
+ "service_id": database.id,
328
+ },
329
+ ],
330
+ }])
331
+ ```
332
+
333
+ :param str resource_name: The name of the resource.
334
+ :param pulumi.ResourceOptions opts: Options for the resource.
335
+ :param pulumi.Input[Sequence[pulumi.Input[Union['StatusPageCardArgs', 'StatusPageCardArgsDict']]]] cards: A list of cards to include on the status page.
336
+ :param pulumi.Input[str] custom_domain: A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
337
+ :param pulumi.Input[str] default_theme: Possible values are `AUTO`, `DARK`, and `LIGHT`. (Default `AUTO`).
338
+ :param pulumi.Input[str] favicon: A URL to an image file to use as the favicon of the status page.
339
+ :param pulumi.Input[str] logo: A URL to an image file to use as the logo for the status page.
340
+ :param pulumi.Input[str] name: The name of the status page.
341
+ :param pulumi.Input[str] redirect_to: The URL the user should be redirected to when clicking the logo.
342
+ :param pulumi.Input[str] url: The URL of the status page.
343
+ """
344
+ ...
345
+ @overload
346
+ def __init__(__self__,
347
+ resource_name: str,
348
+ args: StatusPageArgs,
349
+ opts: Optional[pulumi.ResourceOptions] = None):
350
+ """
351
+ Checkly status pages allow you to easily communicate the uptime and health of your applications and services to your customers.
352
+
353
+ ## Example Usage
354
+
355
+ ```python
356
+ import pulumi
357
+ import pulumi_checkly as checkly
358
+
359
+ api = checkly.StatusPageService("api", name="API")
360
+ database = checkly.StatusPageService("database", name="Database")
361
+ example = checkly.StatusPage("example",
362
+ name="Example Application",
363
+ url="my-example-status-page",
364
+ default_theme="DARK",
365
+ cards=[{
366
+ "name": "Services",
367
+ "service_attachments": [
368
+ {
369
+ "service_id": api.id,
370
+ },
371
+ {
372
+ "service_id": database.id,
373
+ },
374
+ ],
375
+ }])
376
+ ```
377
+
378
+ :param str resource_name: The name of the resource.
379
+ :param StatusPageArgs args: The arguments to use to populate this resource's properties.
380
+ :param pulumi.ResourceOptions opts: Options for the resource.
381
+ """
382
+ ...
383
+ def __init__(__self__, resource_name: str, *args, **kwargs):
384
+ resource_args, opts = _utilities.get_resource_args_opts(StatusPageArgs, pulumi.ResourceOptions, *args, **kwargs)
385
+ if resource_args is not None:
386
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
387
+ else:
388
+ __self__._internal_init(resource_name, *args, **kwargs)
389
+
390
+ def _internal_init(__self__,
391
+ resource_name: str,
392
+ opts: Optional[pulumi.ResourceOptions] = None,
393
+ cards: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StatusPageCardArgs', 'StatusPageCardArgsDict']]]]] = None,
394
+ custom_domain: Optional[pulumi.Input[str]] = None,
395
+ default_theme: Optional[pulumi.Input[str]] = None,
396
+ favicon: Optional[pulumi.Input[str]] = None,
397
+ logo: Optional[pulumi.Input[str]] = None,
398
+ name: Optional[pulumi.Input[str]] = None,
399
+ redirect_to: Optional[pulumi.Input[str]] = None,
400
+ url: Optional[pulumi.Input[str]] = None,
401
+ __props__=None):
402
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
403
+ if not isinstance(opts, pulumi.ResourceOptions):
404
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
405
+ if opts.id is None:
406
+ if __props__ is not None:
407
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
408
+ __props__ = StatusPageArgs.__new__(StatusPageArgs)
409
+
410
+ if cards is None and not opts.urn:
411
+ raise TypeError("Missing required property 'cards'")
412
+ __props__.__dict__["cards"] = cards
413
+ __props__.__dict__["custom_domain"] = custom_domain
414
+ __props__.__dict__["default_theme"] = default_theme
415
+ __props__.__dict__["favicon"] = favicon
416
+ __props__.__dict__["logo"] = logo
417
+ __props__.__dict__["name"] = name
418
+ __props__.__dict__["redirect_to"] = redirect_to
419
+ if url is None and not opts.urn:
420
+ raise TypeError("Missing required property 'url'")
421
+ __props__.__dict__["url"] = url
422
+ super(StatusPage, __self__).__init__(
423
+ 'checkly:index/statusPage:StatusPage',
424
+ resource_name,
425
+ __props__,
426
+ opts)
427
+
428
+ @staticmethod
429
+ def get(resource_name: str,
430
+ id: pulumi.Input[str],
431
+ opts: Optional[pulumi.ResourceOptions] = None,
432
+ cards: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StatusPageCardArgs', 'StatusPageCardArgsDict']]]]] = None,
433
+ custom_domain: Optional[pulumi.Input[str]] = None,
434
+ default_theme: Optional[pulumi.Input[str]] = None,
435
+ favicon: Optional[pulumi.Input[str]] = None,
436
+ logo: Optional[pulumi.Input[str]] = None,
437
+ name: Optional[pulumi.Input[str]] = None,
438
+ redirect_to: Optional[pulumi.Input[str]] = None,
439
+ url: Optional[pulumi.Input[str]] = None) -> 'StatusPage':
440
+ """
441
+ Get an existing StatusPage resource's state with the given name, id, and optional extra
442
+ properties used to qualify the lookup.
443
+
444
+ :param str resource_name: The unique name of the resulting resource.
445
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
446
+ :param pulumi.ResourceOptions opts: Options for the resource.
447
+ :param pulumi.Input[Sequence[pulumi.Input[Union['StatusPageCardArgs', 'StatusPageCardArgsDict']]]] cards: A list of cards to include on the status page.
448
+ :param pulumi.Input[str] custom_domain: A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
449
+ :param pulumi.Input[str] default_theme: Possible values are `AUTO`, `DARK`, and `LIGHT`. (Default `AUTO`).
450
+ :param pulumi.Input[str] favicon: A URL to an image file to use as the favicon of the status page.
451
+ :param pulumi.Input[str] logo: A URL to an image file to use as the logo for the status page.
452
+ :param pulumi.Input[str] name: The name of the status page.
453
+ :param pulumi.Input[str] redirect_to: The URL the user should be redirected to when clicking the logo.
454
+ :param pulumi.Input[str] url: The URL of the status page.
455
+ """
456
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
457
+
458
+ __props__ = _StatusPageState.__new__(_StatusPageState)
459
+
460
+ __props__.__dict__["cards"] = cards
461
+ __props__.__dict__["custom_domain"] = custom_domain
462
+ __props__.__dict__["default_theme"] = default_theme
463
+ __props__.__dict__["favicon"] = favicon
464
+ __props__.__dict__["logo"] = logo
465
+ __props__.__dict__["name"] = name
466
+ __props__.__dict__["redirect_to"] = redirect_to
467
+ __props__.__dict__["url"] = url
468
+ return StatusPage(resource_name, opts=opts, __props__=__props__)
469
+
470
+ @property
471
+ @pulumi.getter
472
+ def cards(self) -> pulumi.Output[Sequence['outputs.StatusPageCard']]:
473
+ """
474
+ A list of cards to include on the status page.
475
+ """
476
+ return pulumi.get(self, "cards")
477
+
478
+ @property
479
+ @pulumi.getter(name="customDomain")
480
+ def custom_domain(self) -> pulumi.Output[Optional[str]]:
481
+ """
482
+ A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
483
+ """
484
+ return pulumi.get(self, "custom_domain")
485
+
486
+ @property
487
+ @pulumi.getter(name="defaultTheme")
488
+ def default_theme(self) -> pulumi.Output[Optional[str]]:
489
+ """
490
+ Possible values are `AUTO`, `DARK`, and `LIGHT`. (Default `AUTO`).
491
+ """
492
+ return pulumi.get(self, "default_theme")
493
+
494
+ @property
495
+ @pulumi.getter
496
+ def favicon(self) -> pulumi.Output[Optional[str]]:
497
+ """
498
+ A URL to an image file to use as the favicon of the status page.
499
+ """
500
+ return pulumi.get(self, "favicon")
501
+
502
+ @property
503
+ @pulumi.getter
504
+ def logo(self) -> pulumi.Output[Optional[str]]:
505
+ """
506
+ A URL to an image file to use as the logo for the status page.
507
+ """
508
+ return pulumi.get(self, "logo")
509
+
510
+ @property
511
+ @pulumi.getter
512
+ def name(self) -> pulumi.Output[str]:
513
+ """
514
+ The name of the status page.
515
+ """
516
+ return pulumi.get(self, "name")
517
+
518
+ @property
519
+ @pulumi.getter(name="redirectTo")
520
+ def redirect_to(self) -> pulumi.Output[Optional[str]]:
521
+ """
522
+ The URL the user should be redirected to when clicking the logo.
523
+ """
524
+ return pulumi.get(self, "redirect_to")
525
+
526
+ @property
527
+ @pulumi.getter
528
+ def url(self) -> pulumi.Output[str]:
529
+ """
530
+ The URL of the status page.
531
+ """
532
+ return pulumi.get(self, "url")
533
+
@@ -0,0 +1,170 @@
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
+
17
+ __all__ = ['StatusPageServiceArgs', 'StatusPageService']
18
+
19
+ @pulumi.input_type
20
+ class StatusPageServiceArgs:
21
+ def __init__(__self__, *,
22
+ name: Optional[pulumi.Input[str]] = None):
23
+ """
24
+ The set of arguments for constructing a StatusPageService resource.
25
+ :param pulumi.Input[str] name: The name of the service.
26
+ """
27
+ if name is not None:
28
+ pulumi.set(__self__, "name", name)
29
+
30
+ @property
31
+ @pulumi.getter
32
+ def name(self) -> Optional[pulumi.Input[str]]:
33
+ """
34
+ The name of the service.
35
+ """
36
+ return pulumi.get(self, "name")
37
+
38
+ @name.setter
39
+ def name(self, value: Optional[pulumi.Input[str]]):
40
+ pulumi.set(self, "name", value)
41
+
42
+
43
+ @pulumi.input_type
44
+ class _StatusPageServiceState:
45
+ def __init__(__self__, *,
46
+ name: Optional[pulumi.Input[str]] = None):
47
+ """
48
+ Input properties used for looking up and filtering StatusPageService resources.
49
+ :param pulumi.Input[str] name: The name of the service.
50
+ """
51
+ if name is not None:
52
+ pulumi.set(__self__, "name", name)
53
+
54
+ @property
55
+ @pulumi.getter
56
+ def name(self) -> Optional[pulumi.Input[str]]:
57
+ """
58
+ The name of the service.
59
+ """
60
+ return pulumi.get(self, "name")
61
+
62
+ @name.setter
63
+ def name(self, value: Optional[pulumi.Input[str]]):
64
+ pulumi.set(self, "name", value)
65
+
66
+
67
+ class StatusPageService(pulumi.CustomResource):
68
+ @overload
69
+ def __init__(__self__,
70
+ resource_name: str,
71
+ opts: Optional[pulumi.ResourceOptions] = None,
72
+ name: Optional[pulumi.Input[str]] = None,
73
+ __props__=None):
74
+ """
75
+ Status page services represent functional pieces of your application or website, such as landing page, API, support portal etc.
76
+
77
+ ## Example Usage
78
+
79
+ ```python
80
+ import pulumi
81
+ import pulumi_checkly as checkly
82
+
83
+ backend = checkly.StatusPageService("backend", name="Backend")
84
+ frontend = checkly.StatusPageService("frontend", name="Frontend")
85
+ ```
86
+
87
+ :param str resource_name: The name of the resource.
88
+ :param pulumi.ResourceOptions opts: Options for the resource.
89
+ :param pulumi.Input[str] name: The name of the service.
90
+ """
91
+ ...
92
+ @overload
93
+ def __init__(__self__,
94
+ resource_name: str,
95
+ args: Optional[StatusPageServiceArgs] = None,
96
+ opts: Optional[pulumi.ResourceOptions] = None):
97
+ """
98
+ Status page services represent functional pieces of your application or website, such as landing page, API, support portal etc.
99
+
100
+ ## Example Usage
101
+
102
+ ```python
103
+ import pulumi
104
+ import pulumi_checkly as checkly
105
+
106
+ backend = checkly.StatusPageService("backend", name="Backend")
107
+ frontend = checkly.StatusPageService("frontend", name="Frontend")
108
+ ```
109
+
110
+ :param str resource_name: The name of the resource.
111
+ :param StatusPageServiceArgs args: The arguments to use to populate this resource's properties.
112
+ :param pulumi.ResourceOptions opts: Options for the resource.
113
+ """
114
+ ...
115
+ def __init__(__self__, resource_name: str, *args, **kwargs):
116
+ resource_args, opts = _utilities.get_resource_args_opts(StatusPageServiceArgs, pulumi.ResourceOptions, *args, **kwargs)
117
+ if resource_args is not None:
118
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
119
+ else:
120
+ __self__._internal_init(resource_name, *args, **kwargs)
121
+
122
+ def _internal_init(__self__,
123
+ resource_name: str,
124
+ opts: Optional[pulumi.ResourceOptions] = None,
125
+ name: Optional[pulumi.Input[str]] = None,
126
+ __props__=None):
127
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
128
+ if not isinstance(opts, pulumi.ResourceOptions):
129
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
130
+ if opts.id is None:
131
+ if __props__ is not None:
132
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
133
+ __props__ = StatusPageServiceArgs.__new__(StatusPageServiceArgs)
134
+
135
+ __props__.__dict__["name"] = name
136
+ super(StatusPageService, __self__).__init__(
137
+ 'checkly:index/statusPageService:StatusPageService',
138
+ resource_name,
139
+ __props__,
140
+ opts)
141
+
142
+ @staticmethod
143
+ def get(resource_name: str,
144
+ id: pulumi.Input[str],
145
+ opts: Optional[pulumi.ResourceOptions] = None,
146
+ name: Optional[pulumi.Input[str]] = None) -> 'StatusPageService':
147
+ """
148
+ Get an existing StatusPageService resource's state with the given name, id, and optional extra
149
+ properties used to qualify the lookup.
150
+
151
+ :param str resource_name: The unique name of the resulting resource.
152
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
153
+ :param pulumi.ResourceOptions opts: Options for the resource.
154
+ :param pulumi.Input[str] name: The name of the service.
155
+ """
156
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
157
+
158
+ __props__ = _StatusPageServiceState.__new__(_StatusPageServiceState)
159
+
160
+ __props__.__dict__["name"] = name
161
+ return StatusPageService(resource_name, opts=opts, __props__=__props__)
162
+
163
+ @property
164
+ @pulumi.getter
165
+ def name(self) -> pulumi.Output[str]:
166
+ """
167
+ The name of the service.
168
+ """
169
+ return pulumi.get(self, "name")
170
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_checkly
3
- Version: 2.2.0a1744026052
3
+ Version: 2.3.0a1745306337
4
4
  Summary: A Pulumi package for creating and managing Checkly monitoring resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://www.pulumi.com/registry/packages/checkly
@@ -1,5 +1,5 @@
1
- pulumi_checkly/__init__.py,sha256=0QB82FPdcTXyKMkuu6E6mhOV2o8YI_xbxDCl0AW-4Dg,3312
2
- pulumi_checkly/_inputs.py,sha256=Xf2QZYg2oQTqtvFvZklnoDw1Te7lkXKn2Auz1jzil-E,128369
1
+ pulumi_checkly/__init__.py,sha256=pgDRZHkjr9_28XUBcTRqf_pgehy8p3V9KcYaCROsHEc,3716
2
+ pulumi_checkly/_inputs.py,sha256=n74HWLOdkoWZz1GFEj1wNPXYvOEt8uu64XdpvB9rq74,131155
3
3
  pulumi_checkly/_utilities.py,sha256=GxpBUMlXYTk7YrVGFAGjHfL-BVibLeIvwRfmSiVbIpY,10533
4
4
  pulumi_checkly/alert_channel.py,sha256=3zoTr0x0k8RaVJ-bl0bi_rPwsTUTFNuYXpBrj80ESSo,29910
5
5
  pulumi_checkly/check.py,sha256=1RKemc45tO13RcwKDTiNHPCV_cAWgnIIHvFVmGbG1C0,87656
@@ -10,19 +10,21 @@ pulumi_checkly/environment_variable.py,sha256=bvFEMIHoNlAIN4fHLbOCoLtv_zId34VUgR
10
10
  pulumi_checkly/get_static_ips.py,sha256=dyNQ2dCQaDClMJOIG_d-IMoj2_aPLx3-v4urKFVnbWo,5026
11
11
  pulumi_checkly/heartbeat_check.py,sha256=CSX9mwxH26t04guhv10v3qVTs8fd6pxflociojsQCXs,22033
12
12
  pulumi_checkly/maintenance_window.py,sha256=LWrPK7ZBtj8paG8K5aS7hZCxVUgZX9MOVOO29eFcz1A,19198
13
- pulumi_checkly/outputs.py,sha256=9-U4YpWu7HhtE9_nGtEP74CxGplzDB3xX0hOH9tQMao,91797
13
+ pulumi_checkly/outputs.py,sha256=Td9rNL_dNhFumMa1YyYPJ0b-VxqjBKtuHLET-t-l3y8,94446
14
14
  pulumi_checkly/private_location.py,sha256=RqBW5lQbvmKlL3gQL0DqR_nYkhhZ9nE1ADf8q0dWQ6w,10528
15
15
  pulumi_checkly/provider.py,sha256=t8RlYsceAV-_DMVTbtdyr6SQyQ462L_8ni1mNXhZvGw,5875
16
- pulumi_checkly/pulumi-plugin.json,sha256=3NLUNQbEaJ0aA4lpsFzWr90xvcZobll5ssE4V8NVVfY,130
16
+ pulumi_checkly/pulumi-plugin.json,sha256=r9G_xRhMTfGvC55OdjN6YfodED_T7SdDIFO7zXxCnAU,130
17
17
  pulumi_checkly/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
18
  pulumi_checkly/snippet.py,sha256=xQCa0HQeoGljCRg2hs8yfuWI-TcDOE6cRv0_hszQVLw,8431
19
+ pulumi_checkly/status_page.py,sha256=GblU7bFpmtNugVsXO9CKHgZ_scONdaPTBk9mV3RxBw4,21703
20
+ pulumi_checkly/status_page_service.py,sha256=4BIyNtEmZmuSpKyo-NintxQkjdA67ibHzCMyVZEMYBI,6262
19
21
  pulumi_checkly/tcp_check.py,sha256=ENvTMngSA68LSRMD429nNGJJMO5kJQ8uq-VwGmLHyUA,57575
20
22
  pulumi_checkly/trigger_check.py,sha256=cnozFnPJS30arFqCEmI4m6UeOy5bCW3QfLJFC8f3swg,9787
21
23
  pulumi_checkly/trigger_check_group.py,sha256=wJkACfvIh-xzcPNekcil0WgQtA8DpQGyjevTOh7zPg0,9827
22
24
  pulumi_checkly/config/__init__.py,sha256=cfY0smRZD3fDVc93ZIAxEl_IM2pynmXB52n3Ahzi030,285
23
25
  pulumi_checkly/config/__init__.pyi,sha256=Fpk-O56lUiCTFequ30t3iJiEmChj_bG4iJMrQ-x0wp0,591
24
26
  pulumi_checkly/config/vars.py,sha256=lv8NkDSQLIvNDzktM9EO-XFf39KPqFhim4nvCHQd8wE,907
25
- pulumi_checkly-2.2.0a1744026052.dist-info/METADATA,sha256=gHzchdAF2t_Sjwg0VNAs575jusf0NoKm1BEtdHXve0k,2887
26
- pulumi_checkly-2.2.0a1744026052.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
27
- pulumi_checkly-2.2.0a1744026052.dist-info/top_level.txt,sha256=qWgkLdBIceubF5gJGeOwoEFK1XXVtmkd6AKHMl9Qnk4,15
28
- pulumi_checkly-2.2.0a1744026052.dist-info/RECORD,,
27
+ pulumi_checkly-2.3.0a1745306337.dist-info/METADATA,sha256=bWv9Cg0-ftuz7tiHiTQeO9PlPYPZfJWlrIMjd3ls-G4,2887
28
+ pulumi_checkly-2.3.0a1745306337.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
29
+ pulumi_checkly-2.3.0a1745306337.dist-info/top_level.txt,sha256=qWgkLdBIceubF5gJGeOwoEFK1XXVtmkd6AKHMl9Qnk4,15
30
+ pulumi_checkly-2.3.0a1745306337.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.1.0)
2
+ Generator: setuptools (79.0.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5