pulumi-pulumiservice 0.28.0a1736807230__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_pulumiservice/__init__.py +76 -0
- pulumi_pulumiservice/_enums.py +228 -0
- pulumi_pulumiservice/_inputs.py +1143 -0
- pulumi_pulumiservice/_utilities.py +327 -0
- pulumi_pulumiservice/access_token.py +137 -0
- pulumi_pulumiservice/agent_pool.py +235 -0
- pulumi_pulumiservice/config/__init__.py +8 -0
- pulumi_pulumiservice/config/__init__.pyi +18 -0
- pulumi_pulumiservice/config/vars.py +26 -0
- pulumi_pulumiservice/deployment_schedule.py +284 -0
- pulumi_pulumiservice/deployment_settings.py +377 -0
- pulumi_pulumiservice/drift_schedule.py +258 -0
- pulumi_pulumiservice/environment.py +228 -0
- pulumi_pulumiservice/environment_version_tag.py +248 -0
- pulumi_pulumiservice/org_access_token.py +229 -0
- pulumi_pulumiservice/outputs.py +902 -0
- pulumi_pulumiservice/provider.py +95 -0
- pulumi_pulumiservice/pulumi-plugin.json +5 -0
- pulumi_pulumiservice/py.typed +0 -0
- pulumi_pulumiservice/stack.py +214 -0
- pulumi_pulumiservice/stack_tag.py +245 -0
- pulumi_pulumiservice/team.py +300 -0
- pulumi_pulumiservice/team_access_token.py +226 -0
- pulumi_pulumiservice/team_environment_permission.py +213 -0
- pulumi_pulumiservice/team_stack_permission.py +201 -0
- pulumi_pulumiservice/template_source.py +216 -0
- pulumi_pulumiservice/ttl_schedule.py +258 -0
- pulumi_pulumiservice/webhook.py +451 -0
- pulumi_pulumiservice-0.28.0a1736807230.dist-info/METADATA +121 -0
- pulumi_pulumiservice-0.28.0a1736807230.dist-info/RECORD +32 -0
- pulumi_pulumiservice-0.28.0a1736807230.dist-info/WHEEL +5 -0
- pulumi_pulumiservice-0.28.0a1736807230.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,451 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
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 ._enums import *
|
|
17
|
+
|
|
18
|
+
__all__ = ['WebhookArgs', 'Webhook']
|
|
19
|
+
|
|
20
|
+
@pulumi.input_type
|
|
21
|
+
class WebhookArgs:
|
|
22
|
+
def __init__(__self__, *,
|
|
23
|
+
active: pulumi.Input[bool],
|
|
24
|
+
display_name: pulumi.Input[str],
|
|
25
|
+
organization_name: pulumi.Input[str],
|
|
26
|
+
payload_url: pulumi.Input[str],
|
|
27
|
+
environment_name: Optional[pulumi.Input[str]] = None,
|
|
28
|
+
filters: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookFilters']]]] = None,
|
|
29
|
+
format: Optional[pulumi.Input['WebhookFormat']] = None,
|
|
30
|
+
groups: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookGroup']]]] = None,
|
|
31
|
+
project_name: Optional[pulumi.Input[str]] = None,
|
|
32
|
+
secret: Optional[pulumi.Input[str]] = None,
|
|
33
|
+
stack_name: Optional[pulumi.Input[str]] = None):
|
|
34
|
+
"""
|
|
35
|
+
The set of arguments for constructing a Webhook resource.
|
|
36
|
+
:param pulumi.Input[bool] active: Indicates whether this webhook is enabled or not.
|
|
37
|
+
:param pulumi.Input[str] display_name: The friendly name displayed in the Pulumi Cloud.
|
|
38
|
+
:param pulumi.Input[str] organization_name: Name of the organization.
|
|
39
|
+
:param pulumi.Input[str] payload_url: URL to send request to.
|
|
40
|
+
:param pulumi.Input[str] environment_name: Name of the environment. Only specified if this is an environment webhook.
|
|
41
|
+
:param pulumi.Input[Sequence[pulumi.Input['WebhookFilters']]] filters: Optional set of filters to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#filters) for more information.
|
|
42
|
+
:param pulumi.Input['WebhookFormat'] format: Format of the webhook payload. Can be either `raw` or `slack`. Defaults to `raw`.
|
|
43
|
+
:param pulumi.Input[Sequence[pulumi.Input['WebhookGroup']]] groups: Optional set of filter groups to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#groups) for more information.
|
|
44
|
+
:param pulumi.Input[str] project_name: Name of the project. Only specified if this is a stack or environment webhook.
|
|
45
|
+
:param pulumi.Input[str] secret: Optional. secret used as the HMAC key. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#headers) for more information.
|
|
46
|
+
:param pulumi.Input[str] stack_name: Name of the stack. Only needed if this is a stack webhook.
|
|
47
|
+
"""
|
|
48
|
+
pulumi.set(__self__, "active", active)
|
|
49
|
+
pulumi.set(__self__, "display_name", display_name)
|
|
50
|
+
pulumi.set(__self__, "organization_name", organization_name)
|
|
51
|
+
pulumi.set(__self__, "payload_url", payload_url)
|
|
52
|
+
if environment_name is not None:
|
|
53
|
+
pulumi.set(__self__, "environment_name", environment_name)
|
|
54
|
+
if filters is not None:
|
|
55
|
+
pulumi.set(__self__, "filters", filters)
|
|
56
|
+
if format is None:
|
|
57
|
+
format = 'raw'
|
|
58
|
+
if format is not None:
|
|
59
|
+
pulumi.set(__self__, "format", format)
|
|
60
|
+
if groups is not None:
|
|
61
|
+
pulumi.set(__self__, "groups", groups)
|
|
62
|
+
if project_name is not None:
|
|
63
|
+
pulumi.set(__self__, "project_name", project_name)
|
|
64
|
+
if secret is not None:
|
|
65
|
+
pulumi.set(__self__, "secret", secret)
|
|
66
|
+
if stack_name is not None:
|
|
67
|
+
pulumi.set(__self__, "stack_name", stack_name)
|
|
68
|
+
|
|
69
|
+
@property
|
|
70
|
+
@pulumi.getter
|
|
71
|
+
def active(self) -> pulumi.Input[bool]:
|
|
72
|
+
"""
|
|
73
|
+
Indicates whether this webhook is enabled or not.
|
|
74
|
+
"""
|
|
75
|
+
return pulumi.get(self, "active")
|
|
76
|
+
|
|
77
|
+
@active.setter
|
|
78
|
+
def active(self, value: pulumi.Input[bool]):
|
|
79
|
+
pulumi.set(self, "active", value)
|
|
80
|
+
|
|
81
|
+
@property
|
|
82
|
+
@pulumi.getter(name="displayName")
|
|
83
|
+
def display_name(self) -> pulumi.Input[str]:
|
|
84
|
+
"""
|
|
85
|
+
The friendly name displayed in the Pulumi Cloud.
|
|
86
|
+
"""
|
|
87
|
+
return pulumi.get(self, "display_name")
|
|
88
|
+
|
|
89
|
+
@display_name.setter
|
|
90
|
+
def display_name(self, value: pulumi.Input[str]):
|
|
91
|
+
pulumi.set(self, "display_name", value)
|
|
92
|
+
|
|
93
|
+
@property
|
|
94
|
+
@pulumi.getter(name="organizationName")
|
|
95
|
+
def organization_name(self) -> pulumi.Input[str]:
|
|
96
|
+
"""
|
|
97
|
+
Name of the organization.
|
|
98
|
+
"""
|
|
99
|
+
return pulumi.get(self, "organization_name")
|
|
100
|
+
|
|
101
|
+
@organization_name.setter
|
|
102
|
+
def organization_name(self, value: pulumi.Input[str]):
|
|
103
|
+
pulumi.set(self, "organization_name", value)
|
|
104
|
+
|
|
105
|
+
@property
|
|
106
|
+
@pulumi.getter(name="payloadUrl")
|
|
107
|
+
def payload_url(self) -> pulumi.Input[str]:
|
|
108
|
+
"""
|
|
109
|
+
URL to send request to.
|
|
110
|
+
"""
|
|
111
|
+
return pulumi.get(self, "payload_url")
|
|
112
|
+
|
|
113
|
+
@payload_url.setter
|
|
114
|
+
def payload_url(self, value: pulumi.Input[str]):
|
|
115
|
+
pulumi.set(self, "payload_url", value)
|
|
116
|
+
|
|
117
|
+
@property
|
|
118
|
+
@pulumi.getter(name="environmentName")
|
|
119
|
+
def environment_name(self) -> Optional[pulumi.Input[str]]:
|
|
120
|
+
"""
|
|
121
|
+
Name of the environment. Only specified if this is an environment webhook.
|
|
122
|
+
"""
|
|
123
|
+
return pulumi.get(self, "environment_name")
|
|
124
|
+
|
|
125
|
+
@environment_name.setter
|
|
126
|
+
def environment_name(self, value: Optional[pulumi.Input[str]]):
|
|
127
|
+
pulumi.set(self, "environment_name", value)
|
|
128
|
+
|
|
129
|
+
@property
|
|
130
|
+
@pulumi.getter
|
|
131
|
+
def filters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['WebhookFilters']]]]:
|
|
132
|
+
"""
|
|
133
|
+
Optional set of filters to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#filters) for more information.
|
|
134
|
+
"""
|
|
135
|
+
return pulumi.get(self, "filters")
|
|
136
|
+
|
|
137
|
+
@filters.setter
|
|
138
|
+
def filters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookFilters']]]]):
|
|
139
|
+
pulumi.set(self, "filters", value)
|
|
140
|
+
|
|
141
|
+
@property
|
|
142
|
+
@pulumi.getter
|
|
143
|
+
def format(self) -> Optional[pulumi.Input['WebhookFormat']]:
|
|
144
|
+
"""
|
|
145
|
+
Format of the webhook payload. Can be either `raw` or `slack`. Defaults to `raw`.
|
|
146
|
+
"""
|
|
147
|
+
return pulumi.get(self, "format")
|
|
148
|
+
|
|
149
|
+
@format.setter
|
|
150
|
+
def format(self, value: Optional[pulumi.Input['WebhookFormat']]):
|
|
151
|
+
pulumi.set(self, "format", value)
|
|
152
|
+
|
|
153
|
+
@property
|
|
154
|
+
@pulumi.getter
|
|
155
|
+
def groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['WebhookGroup']]]]:
|
|
156
|
+
"""
|
|
157
|
+
Optional set of filter groups to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#groups) for more information.
|
|
158
|
+
"""
|
|
159
|
+
return pulumi.get(self, "groups")
|
|
160
|
+
|
|
161
|
+
@groups.setter
|
|
162
|
+
def groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookGroup']]]]):
|
|
163
|
+
pulumi.set(self, "groups", value)
|
|
164
|
+
|
|
165
|
+
@property
|
|
166
|
+
@pulumi.getter(name="projectName")
|
|
167
|
+
def project_name(self) -> Optional[pulumi.Input[str]]:
|
|
168
|
+
"""
|
|
169
|
+
Name of the project. Only specified if this is a stack or environment webhook.
|
|
170
|
+
"""
|
|
171
|
+
return pulumi.get(self, "project_name")
|
|
172
|
+
|
|
173
|
+
@project_name.setter
|
|
174
|
+
def project_name(self, value: Optional[pulumi.Input[str]]):
|
|
175
|
+
pulumi.set(self, "project_name", value)
|
|
176
|
+
|
|
177
|
+
@property
|
|
178
|
+
@pulumi.getter
|
|
179
|
+
def secret(self) -> Optional[pulumi.Input[str]]:
|
|
180
|
+
"""
|
|
181
|
+
Optional. secret used as the HMAC key. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#headers) for more information.
|
|
182
|
+
"""
|
|
183
|
+
return pulumi.get(self, "secret")
|
|
184
|
+
|
|
185
|
+
@secret.setter
|
|
186
|
+
def secret(self, value: Optional[pulumi.Input[str]]):
|
|
187
|
+
pulumi.set(self, "secret", value)
|
|
188
|
+
|
|
189
|
+
@property
|
|
190
|
+
@pulumi.getter(name="stackName")
|
|
191
|
+
def stack_name(self) -> Optional[pulumi.Input[str]]:
|
|
192
|
+
"""
|
|
193
|
+
Name of the stack. Only needed if this is a stack webhook.
|
|
194
|
+
"""
|
|
195
|
+
return pulumi.get(self, "stack_name")
|
|
196
|
+
|
|
197
|
+
@stack_name.setter
|
|
198
|
+
def stack_name(self, value: Optional[pulumi.Input[str]]):
|
|
199
|
+
pulumi.set(self, "stack_name", value)
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
class Webhook(pulumi.CustomResource):
|
|
203
|
+
@overload
|
|
204
|
+
def __init__(__self__,
|
|
205
|
+
resource_name: str,
|
|
206
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
207
|
+
active: Optional[pulumi.Input[bool]] = None,
|
|
208
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
|
209
|
+
environment_name: Optional[pulumi.Input[str]] = None,
|
|
210
|
+
filters: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookFilters']]]] = None,
|
|
211
|
+
format: Optional[pulumi.Input['WebhookFormat']] = None,
|
|
212
|
+
groups: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookGroup']]]] = None,
|
|
213
|
+
organization_name: Optional[pulumi.Input[str]] = None,
|
|
214
|
+
payload_url: Optional[pulumi.Input[str]] = None,
|
|
215
|
+
project_name: Optional[pulumi.Input[str]] = None,
|
|
216
|
+
secret: Optional[pulumi.Input[str]] = None,
|
|
217
|
+
stack_name: Optional[pulumi.Input[str]] = None,
|
|
218
|
+
__props__=None):
|
|
219
|
+
"""
|
|
220
|
+
Pulumi Webhooks allow you to notify external services of events happening within your Pulumi organization or stack. For example, you can trigger a notification whenever a stack is updated. Whenever an event occurs, Pulumi will send an HTTP POST request to all registered webhooks. The webhook can then be used to emit some notification, start running integration tests, or even update additional stacks.
|
|
221
|
+
|
|
222
|
+
### Import
|
|
223
|
+
|
|
224
|
+
Pulumi webhooks can be imported using the `id`, which for webhooks is `{org}/{project}/{stack}/{webhook-name}` e.g.,
|
|
225
|
+
|
|
226
|
+
```sh
|
|
227
|
+
$ pulumi import pulumiservice:index:Webhook my_webhook my-org/my-project/my-stack/4b0d0671
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
:param str resource_name: The name of the resource.
|
|
231
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
232
|
+
:param pulumi.Input[bool] active: Indicates whether this webhook is enabled or not.
|
|
233
|
+
:param pulumi.Input[str] display_name: The friendly name displayed in the Pulumi Cloud.
|
|
234
|
+
:param pulumi.Input[str] environment_name: Name of the environment. Only specified if this is an environment webhook.
|
|
235
|
+
:param pulumi.Input[Sequence[pulumi.Input['WebhookFilters']]] filters: Optional set of filters to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#filters) for more information.
|
|
236
|
+
:param pulumi.Input['WebhookFormat'] format: Format of the webhook payload. Can be either `raw` or `slack`. Defaults to `raw`.
|
|
237
|
+
:param pulumi.Input[Sequence[pulumi.Input['WebhookGroup']]] groups: Optional set of filter groups to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#groups) for more information.
|
|
238
|
+
:param pulumi.Input[str] organization_name: Name of the organization.
|
|
239
|
+
:param pulumi.Input[str] payload_url: URL to send request to.
|
|
240
|
+
:param pulumi.Input[str] project_name: Name of the project. Only specified if this is a stack or environment webhook.
|
|
241
|
+
:param pulumi.Input[str] secret: Optional. secret used as the HMAC key. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#headers) for more information.
|
|
242
|
+
:param pulumi.Input[str] stack_name: Name of the stack. Only needed if this is a stack webhook.
|
|
243
|
+
"""
|
|
244
|
+
...
|
|
245
|
+
@overload
|
|
246
|
+
def __init__(__self__,
|
|
247
|
+
resource_name: str,
|
|
248
|
+
args: WebhookArgs,
|
|
249
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
250
|
+
"""
|
|
251
|
+
Pulumi Webhooks allow you to notify external services of events happening within your Pulumi organization or stack. For example, you can trigger a notification whenever a stack is updated. Whenever an event occurs, Pulumi will send an HTTP POST request to all registered webhooks. The webhook can then be used to emit some notification, start running integration tests, or even update additional stacks.
|
|
252
|
+
|
|
253
|
+
### Import
|
|
254
|
+
|
|
255
|
+
Pulumi webhooks can be imported using the `id`, which for webhooks is `{org}/{project}/{stack}/{webhook-name}` e.g.,
|
|
256
|
+
|
|
257
|
+
```sh
|
|
258
|
+
$ pulumi import pulumiservice:index:Webhook my_webhook my-org/my-project/my-stack/4b0d0671
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
:param str resource_name: The name of the resource.
|
|
262
|
+
:param WebhookArgs args: The arguments to use to populate this resource's properties.
|
|
263
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
264
|
+
"""
|
|
265
|
+
...
|
|
266
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
267
|
+
resource_args, opts = _utilities.get_resource_args_opts(WebhookArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
268
|
+
if resource_args is not None:
|
|
269
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
270
|
+
else:
|
|
271
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
272
|
+
|
|
273
|
+
def _internal_init(__self__,
|
|
274
|
+
resource_name: str,
|
|
275
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
276
|
+
active: Optional[pulumi.Input[bool]] = None,
|
|
277
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
|
278
|
+
environment_name: Optional[pulumi.Input[str]] = None,
|
|
279
|
+
filters: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookFilters']]]] = None,
|
|
280
|
+
format: Optional[pulumi.Input['WebhookFormat']] = None,
|
|
281
|
+
groups: Optional[pulumi.Input[Sequence[pulumi.Input['WebhookGroup']]]] = None,
|
|
282
|
+
organization_name: Optional[pulumi.Input[str]] = None,
|
|
283
|
+
payload_url: Optional[pulumi.Input[str]] = None,
|
|
284
|
+
project_name: Optional[pulumi.Input[str]] = None,
|
|
285
|
+
secret: Optional[pulumi.Input[str]] = None,
|
|
286
|
+
stack_name: Optional[pulumi.Input[str]] = None,
|
|
287
|
+
__props__=None):
|
|
288
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
289
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
290
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
291
|
+
if opts.id is None:
|
|
292
|
+
if __props__ is not None:
|
|
293
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
294
|
+
__props__ = WebhookArgs.__new__(WebhookArgs)
|
|
295
|
+
|
|
296
|
+
if active is None and not opts.urn:
|
|
297
|
+
raise TypeError("Missing required property 'active'")
|
|
298
|
+
__props__.__dict__["active"] = active
|
|
299
|
+
if display_name is None and not opts.urn:
|
|
300
|
+
raise TypeError("Missing required property 'display_name'")
|
|
301
|
+
__props__.__dict__["display_name"] = display_name
|
|
302
|
+
__props__.__dict__["environment_name"] = environment_name
|
|
303
|
+
__props__.__dict__["filters"] = filters
|
|
304
|
+
if format is None:
|
|
305
|
+
format = 'raw'
|
|
306
|
+
__props__.__dict__["format"] = format
|
|
307
|
+
__props__.__dict__["groups"] = groups
|
|
308
|
+
if organization_name is None and not opts.urn:
|
|
309
|
+
raise TypeError("Missing required property 'organization_name'")
|
|
310
|
+
__props__.__dict__["organization_name"] = organization_name
|
|
311
|
+
if payload_url is None and not opts.urn:
|
|
312
|
+
raise TypeError("Missing required property 'payload_url'")
|
|
313
|
+
__props__.__dict__["payload_url"] = payload_url
|
|
314
|
+
__props__.__dict__["project_name"] = project_name
|
|
315
|
+
__props__.__dict__["secret"] = None if secret is None else pulumi.Output.secret(secret)
|
|
316
|
+
__props__.__dict__["stack_name"] = stack_name
|
|
317
|
+
__props__.__dict__["name"] = None
|
|
318
|
+
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["secret"])
|
|
319
|
+
opts = pulumi.ResourceOptions.merge(opts, secret_opts)
|
|
320
|
+
super(Webhook, __self__).__init__(
|
|
321
|
+
'pulumiservice:index:Webhook',
|
|
322
|
+
resource_name,
|
|
323
|
+
__props__,
|
|
324
|
+
opts)
|
|
325
|
+
|
|
326
|
+
@staticmethod
|
|
327
|
+
def get(resource_name: str,
|
|
328
|
+
id: pulumi.Input[str],
|
|
329
|
+
opts: Optional[pulumi.ResourceOptions] = None) -> 'Webhook':
|
|
330
|
+
"""
|
|
331
|
+
Get an existing Webhook resource's state with the given name, id, and optional extra
|
|
332
|
+
properties used to qualify the lookup.
|
|
333
|
+
|
|
334
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
335
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
336
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
337
|
+
"""
|
|
338
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
339
|
+
|
|
340
|
+
__props__ = WebhookArgs.__new__(WebhookArgs)
|
|
341
|
+
|
|
342
|
+
__props__.__dict__["active"] = None
|
|
343
|
+
__props__.__dict__["display_name"] = None
|
|
344
|
+
__props__.__dict__["environment_name"] = None
|
|
345
|
+
__props__.__dict__["filters"] = None
|
|
346
|
+
__props__.__dict__["format"] = None
|
|
347
|
+
__props__.__dict__["groups"] = None
|
|
348
|
+
__props__.__dict__["name"] = None
|
|
349
|
+
__props__.__dict__["organization_name"] = None
|
|
350
|
+
__props__.__dict__["payload_url"] = None
|
|
351
|
+
__props__.__dict__["project_name"] = None
|
|
352
|
+
__props__.__dict__["secret"] = None
|
|
353
|
+
__props__.__dict__["stack_name"] = None
|
|
354
|
+
return Webhook(resource_name, opts=opts, __props__=__props__)
|
|
355
|
+
|
|
356
|
+
@property
|
|
357
|
+
@pulumi.getter
|
|
358
|
+
def active(self) -> pulumi.Output[bool]:
|
|
359
|
+
"""
|
|
360
|
+
Indicates whether this webhook is enabled or not.
|
|
361
|
+
"""
|
|
362
|
+
return pulumi.get(self, "active")
|
|
363
|
+
|
|
364
|
+
@property
|
|
365
|
+
@pulumi.getter(name="displayName")
|
|
366
|
+
def display_name(self) -> pulumi.Output[str]:
|
|
367
|
+
"""
|
|
368
|
+
The friendly name displayed in the Pulumi Cloud.
|
|
369
|
+
"""
|
|
370
|
+
return pulumi.get(self, "display_name")
|
|
371
|
+
|
|
372
|
+
@property
|
|
373
|
+
@pulumi.getter(name="environmentName")
|
|
374
|
+
def environment_name(self) -> pulumi.Output[Optional[str]]:
|
|
375
|
+
"""
|
|
376
|
+
Name of the environment. Only specified if this is an environment webhook.
|
|
377
|
+
"""
|
|
378
|
+
return pulumi.get(self, "environment_name")
|
|
379
|
+
|
|
380
|
+
@property
|
|
381
|
+
@pulumi.getter
|
|
382
|
+
def filters(self) -> pulumi.Output[Optional[Sequence['WebhookFilters']]]:
|
|
383
|
+
"""
|
|
384
|
+
Optional set of filters to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#filters) for more information.
|
|
385
|
+
"""
|
|
386
|
+
return pulumi.get(self, "filters")
|
|
387
|
+
|
|
388
|
+
@property
|
|
389
|
+
@pulumi.getter
|
|
390
|
+
def format(self) -> pulumi.Output['WebhookFormat']:
|
|
391
|
+
"""
|
|
392
|
+
Format of the webhook payload. Can be either `raw`, `slack`, `ms_teams` or `pulumi_deployments`. Defaults to `raw`.
|
|
393
|
+
"""
|
|
394
|
+
return pulumi.get(self, "format")
|
|
395
|
+
|
|
396
|
+
@property
|
|
397
|
+
@pulumi.getter
|
|
398
|
+
def groups(self) -> pulumi.Output[Optional[Sequence['WebhookGroup']]]:
|
|
399
|
+
"""
|
|
400
|
+
Optional set of filter groups to apply to the webhook. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#groups) for more information.
|
|
401
|
+
"""
|
|
402
|
+
return pulumi.get(self, "groups")
|
|
403
|
+
|
|
404
|
+
@property
|
|
405
|
+
@pulumi.getter
|
|
406
|
+
def name(self) -> pulumi.Output[str]:
|
|
407
|
+
"""
|
|
408
|
+
Webhook identifier generated by Pulumi Cloud.
|
|
409
|
+
"""
|
|
410
|
+
return pulumi.get(self, "name")
|
|
411
|
+
|
|
412
|
+
@property
|
|
413
|
+
@pulumi.getter(name="organizationName")
|
|
414
|
+
def organization_name(self) -> pulumi.Output[str]:
|
|
415
|
+
"""
|
|
416
|
+
Name of the organization.
|
|
417
|
+
"""
|
|
418
|
+
return pulumi.get(self, "organization_name")
|
|
419
|
+
|
|
420
|
+
@property
|
|
421
|
+
@pulumi.getter(name="payloadUrl")
|
|
422
|
+
def payload_url(self) -> pulumi.Output[str]:
|
|
423
|
+
"""
|
|
424
|
+
URL to send request to.
|
|
425
|
+
"""
|
|
426
|
+
return pulumi.get(self, "payload_url")
|
|
427
|
+
|
|
428
|
+
@property
|
|
429
|
+
@pulumi.getter(name="projectName")
|
|
430
|
+
def project_name(self) -> pulumi.Output[Optional[str]]:
|
|
431
|
+
"""
|
|
432
|
+
Name of the project. Only specified if this is a stack or environment webhook.
|
|
433
|
+
"""
|
|
434
|
+
return pulumi.get(self, "project_name")
|
|
435
|
+
|
|
436
|
+
@property
|
|
437
|
+
@pulumi.getter
|
|
438
|
+
def secret(self) -> pulumi.Output[Optional[str]]:
|
|
439
|
+
"""
|
|
440
|
+
Optional. secret used as the HMAC key. See [webhook docs](https://www.pulumi.com/docs/intro/pulumi-service/webhooks/#headers) for more information.
|
|
441
|
+
"""
|
|
442
|
+
return pulumi.get(self, "secret")
|
|
443
|
+
|
|
444
|
+
@property
|
|
445
|
+
@pulumi.getter(name="stackName")
|
|
446
|
+
def stack_name(self) -> pulumi.Output[Optional[str]]:
|
|
447
|
+
"""
|
|
448
|
+
Name of the stack. Only specified if this is a stack webhook.
|
|
449
|
+
"""
|
|
450
|
+
return pulumi.get(self, "stack_name")
|
|
451
|
+
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
|
+
Name: pulumi_pulumiservice
|
|
3
|
+
Version: 0.28.0a1736807230
|
|
4
|
+
Summary: A native Pulumi package for creating and managing Pulumi Cloud constructs
|
|
5
|
+
License: Apache-2.0
|
|
6
|
+
Project-URL: Homepage, https://pulumi.com
|
|
7
|
+
Project-URL: Repository, https://github.com/pulumi/pulumi-pulumiservice
|
|
8
|
+
Keywords: pulumi,kind/native,category/infrastructure
|
|
9
|
+
Requires-Python: >=3.8
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
Requires-Dist: parver>=0.2.1
|
|
12
|
+
Requires-Dist: pulumi<4.0.0,>=3.0.0
|
|
13
|
+
Requires-Dist: semver>=2.8.1
|
|
14
|
+
Requires-Dist: typing-extensions>=4.11; python_version < "3.11"
|
|
15
|
+
|
|
16
|
+
# Pulumi Service Provider
|
|
17
|
+
|
|
18
|
+
[](https://slack.pulumi.com)
|
|
19
|
+
[](https://www.npmjs.com/package/@pulumi/pulumiservice)
|
|
20
|
+
[](https://pypi.org/project/pulumi-pulumiservice)
|
|
21
|
+
[](https://badge.fury.io/nu/pulumi.pulumiservice)
|
|
22
|
+
[](https://pkg.go.dev/github.com/pulumi/pulumi-pulumiservice/sdk/go)
|
|
23
|
+
[](https://github.com/pulumi/pulumi-pulumiservice/blob/main/LICENSE)
|
|
24
|
+
|
|
25
|
+
Pulumi Service Provider for creating Pulumi Cloud resources.
|
|
26
|
+
|
|
27
|
+
The Pulumi Service Provider (PSP) is built on top of the [Pulumi Cloud REST API](https://www.pulumi.com/docs/pulumi-cloud/reference/cloud-rest-api/), allowing Pulumi customers to create Pulumi Cloud resources using Pulumi programs. That includes Stacks, Environments, Teams, Tokens, Webhooks, Tags, Deployment Settings, Deployment Schedules and much more! Pulumi Service Provider is especially powerful when used in combination with the [Automation API](https://pulumi.com/automation).
|
|
28
|
+
|
|
29
|
+
For a full list of supported resources, visit the [Pulumi Registry](https://www.pulumi.com/registry/packages/pulumiservice/). For the REST API reference documentation, visit [Pulumi Cloud API Documentation](https://www.pulumi.com/docs/pulumi-cloud/reference/cloud-rest-api/).
|
|
30
|
+
|
|
31
|
+
For now, PSP is in public preview, but we're working on releasing v1.0 in the near future.
|
|
32
|
+
|
|
33
|
+
## Installing
|
|
34
|
+
|
|
35
|
+
This package is available in many languages in the standard packaging formats.
|
|
36
|
+
|
|
37
|
+
### Node.js (Java/TypeScript)
|
|
38
|
+
|
|
39
|
+
To use from JavaScript or TypeScript in Node.js, install using either `npm`:
|
|
40
|
+
|
|
41
|
+
$ npm install @pulumi/pulumiservice
|
|
42
|
+
|
|
43
|
+
or `yarn`:
|
|
44
|
+
|
|
45
|
+
$ yarn add @pulumi/pulumiservice
|
|
46
|
+
|
|
47
|
+
### Python
|
|
48
|
+
|
|
49
|
+
To use from Python, install using `pip`:
|
|
50
|
+
|
|
51
|
+
$ pip install pulumi_pulumiservice
|
|
52
|
+
|
|
53
|
+
### Go
|
|
54
|
+
|
|
55
|
+
To use from Go, use `go get` to grab the latest version of the library
|
|
56
|
+
|
|
57
|
+
$ go get github.com/pulumi/pulumi-pulumiservice/sdk/go
|
|
58
|
+
|
|
59
|
+
### .NET
|
|
60
|
+
|
|
61
|
+
To use from .NET, install using `dotnet add package`:
|
|
62
|
+
|
|
63
|
+
$ dotnet add package Pulumi.PulumiService
|
|
64
|
+
|
|
65
|
+
### Java
|
|
66
|
+
|
|
67
|
+
To use from Java, add an entry to your `build.gradle` file:
|
|
68
|
+
|
|
69
|
+
$ implementation 'com.pulumi:pulumiservice:%Fill in latest version from the badge up top%'
|
|
70
|
+
|
|
71
|
+
Or to your `pom.xml` file:
|
|
72
|
+
|
|
73
|
+
$ <dependency>
|
|
74
|
+
$ <groupId>com.pulumi</groupId>
|
|
75
|
+
$ <artifactId>pulumiservice</artifactId>
|
|
76
|
+
$ <version>%Fill in latest version from the badge up top%</version>
|
|
77
|
+
$ </dependency>
|
|
78
|
+
|
|
79
|
+
## Setup
|
|
80
|
+
|
|
81
|
+
Ensure that you have ran `pulumi login`. Run `pulumi whoami` to verify that you are logged in.
|
|
82
|
+
|
|
83
|
+
### Configuration Options
|
|
84
|
+
|
|
85
|
+
Use `pulumi config set pulumiservice:<option>` or pass options to the [constructor of `new pulumiservice.Provider`][1].
|
|
86
|
+
|
|
87
|
+
| Option | Environment Variable Name | Required/Optional | Description |
|
|
88
|
+
|---------------|---------------------------|-------------------|---------------------------------------------------------------------------------------|
|
|
89
|
+
| `accessToken` | `PULUMI_ACCESS_TOKEN` | Optional | Overrides [Pulumi Service Access Tokens][2] |
|
|
90
|
+
| `apiUrl` | `PULUMI_BACKEND_URL` | Optional | Allows overriding default [Pulumi Service API URL][3] for [self hosted customers][4]. |
|
|
91
|
+
| | | | |
|
|
92
|
+
|
|
93
|
+
## Examples
|
|
94
|
+
|
|
95
|
+
```typescript
|
|
96
|
+
import * as aws from "@pulumi/awsx"
|
|
97
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
98
|
+
import * as service from "@pulumi/pulumiservice";
|
|
99
|
+
|
|
100
|
+
const team = new service.Team("team", {
|
|
101
|
+
name: "pulumi-service-team",
|
|
102
|
+
displayName: "Pulumi Service",
|
|
103
|
+
description: "The Pulumi Service Team",
|
|
104
|
+
organizationName: "pulumi",
|
|
105
|
+
teamType: "pulumi",
|
|
106
|
+
members: [
|
|
107
|
+
"piers",
|
|
108
|
+
"bryce",
|
|
109
|
+
"casey"
|
|
110
|
+
"evan",
|
|
111
|
+
"devon",
|
|
112
|
+
"meagan"
|
|
113
|
+
"myles",
|
|
114
|
+
"steve"
|
|
115
|
+
],
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
export const members = team.members;
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Check out the [examples/](examples/) directory for more examples.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
pulumi_pulumiservice/__init__.py,sha256=NsS7z22_wuOrfwpFD_ccXmgAGWRfsX4g25yCctJjQGk,2354
|
|
2
|
+
pulumi_pulumiservice/_enums.py,sha256=T8uhCHGTkHKYvwot_nJgdyKduRZT1A2oLhC7d-UfQ-A,6060
|
|
3
|
+
pulumi_pulumiservice/_inputs.py,sha256=W2WCvLNYRdDQFCEKwHl7vKY-QyyPQAJTdmUbHCGMSno,43121
|
|
4
|
+
pulumi_pulumiservice/_utilities.py,sha256=UL5vEmfNrBfiaeFQS69cz7xlHoBnPH8PY_UIVNwShcM,10486
|
|
5
|
+
pulumi_pulumiservice/access_token.py,sha256=GZ8l3PbV70QmtNs_9qPN9c5ab_43uyc-96xu8n-f4YA,5262
|
|
6
|
+
pulumi_pulumiservice/agent_pool.py,sha256=H948Op0JC5g-Qef_QGxglYeQ5u7-vTTNgHa3K-dxl20,9232
|
|
7
|
+
pulumi_pulumiservice/deployment_schedule.py,sha256=AhHHCIZPJxWbl0rU83K_ZL7uK7DsKpEn-SNObTiCgDQ,11558
|
|
8
|
+
pulumi_pulumiservice/deployment_settings.py,sha256=RSVh_r34intM43E1WYWlkHdqOOH9nmX74318LXkFb38,17088
|
|
9
|
+
pulumi_pulumiservice/drift_schedule.py,sha256=9bzmXR5yVNvUgtsUPw76Wn8slnv7fFTQfYwHOiQz8r0,9876
|
|
10
|
+
pulumi_pulumiservice/environment.py,sha256=kuFxnrryboPhVG3jY3xt9HB9wvVC9Cev4e9XsZwi8yU,8284
|
|
11
|
+
pulumi_pulumiservice/environment_version_tag.py,sha256=jc90ujWJO1-6g4Q6MPtyMtpjIxNzkvWzuVTTSnpTwZI,9170
|
|
12
|
+
pulumi_pulumiservice/org_access_token.py,sha256=Zv70yJiDMSgYUFuWpYi7z7M1_595VZykILgx2HuOKzQ,8822
|
|
13
|
+
pulumi_pulumiservice/outputs.py,sha256=Xy5LI9J3pnomJGE7eha4FRTRT1rIPex6sfxu_6Hn5L4,32565
|
|
14
|
+
pulumi_pulumiservice/provider.py,sha256=TcQDI5AIAZ7mQAMN-D7d_K9EnzJYXwe_aISK0leL98Q,3905
|
|
15
|
+
pulumi_pulumiservice/pulumi-plugin.json,sha256=W8xHVS9glHDerHkx8Mo6TLjpOmB-mFAnP0n8PedSrWU,90
|
|
16
|
+
pulumi_pulumiservice/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
+
pulumi_pulumiservice/stack.py,sha256=z1LPelB0FMO8RgZ_Y16ShMvW5av2oOYBgqB4S5-9CxU,8784
|
|
18
|
+
pulumi_pulumiservice/stack_tag.py,sha256=PT5q9v-c1BG-EmGn7LqcBLIrTm4mBIttD-6kQqcMQ6s,8989
|
|
19
|
+
pulumi_pulumiservice/team.py,sha256=9IJrRVd-lc23wzSQyabKUdqXqAg8WJKM1r3Gf3thxig,12588
|
|
20
|
+
pulumi_pulumiservice/team_access_token.py,sha256=A_DsGKa2aDgTkJBbXeGPalG3NFc5UBnuEsAlgV3JLTM,9050
|
|
21
|
+
pulumi_pulumiservice/team_environment_permission.py,sha256=fRHPZpG8Iz5UG0IayuYJ0Llo1QlEzSDP10UrMhCiUFc,8638
|
|
22
|
+
pulumi_pulumiservice/team_stack_permission.py,sha256=D4La8V-KPEEISAG8UIB1p4tgXnMd8sm-LwLtUuNatwM,8601
|
|
23
|
+
pulumi_pulumiservice/template_source.py,sha256=r_srjk2WU3rIfFvSGN8VwIXs2TXx1jOgzdCaqTaMgo0,8977
|
|
24
|
+
pulumi_pulumiservice/ttl_schedule.py,sha256=zEI7XVe0PHbmjDnaul445r98MuUKV8mM4ewoW9pPecM,10048
|
|
25
|
+
pulumi_pulumiservice/webhook.py,sha256=QmNdkVYkUI_I5O_vDtQ7iHUyqoeCIMUhaGlmY2mjsZA,20724
|
|
26
|
+
pulumi_pulumiservice/config/__init__.py,sha256=YdGLR92OvYD0CYDgt_FTaHJOb_VzW8fto_Cgx6fLd3k,267
|
|
27
|
+
pulumi_pulumiservice/config/__init__.pyi,sha256=qRgUIR7yYox1DW7UCSYsEzmeFDw7HnStKbtdiuWyFVI,529
|
|
28
|
+
pulumi_pulumiservice/config/vars.py,sha256=JKZD8lX1mO4wJ2Y-zQv-anDBGDBfR4zbmWeKf70qYSk,709
|
|
29
|
+
pulumi_pulumiservice-0.28.0a1736807230.dist-info/METADATA,sha256=WshnUaN-XRaUZYwUZf2aj2WK-HMlQeCcdFryGr4Q6Ys,4982
|
|
30
|
+
pulumi_pulumiservice-0.28.0a1736807230.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
31
|
+
pulumi_pulumiservice-0.28.0a1736807230.dist-info/top_level.txt,sha256=rfVxzwIuCwmG7k4A8OYiEMjBBYOBhH5lla--Uh0u_YI,21
|
|
32
|
+
pulumi_pulumiservice-0.28.0a1736807230.dist-info/RECORD,,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pulumi_pulumiservice
|