pulumi-null 0.0.3a1710157610__tar.gz → 0.1.0a1736849544__tar.gz
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.
Potentially problematic release.
This version of pulumi-null might be problematic. Click here for more details.
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/PKG-INFO +5 -4
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null/_utilities.py +41 -5
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null/get_data_source.py +18 -8
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null/provider.py +5 -0
- pulumi_null-0.1.0a1736849544/pulumi_null/pulumi-plugin.json +5 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null/resource.py +55 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null.egg-info/PKG-INFO +5 -4
- pulumi_null-0.1.0a1736849544/pulumi_null.egg-info/requires.txt +6 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pyproject.toml +3 -3
- pulumi_null-0.0.3a1710157610/pulumi_null/pulumi-plugin.json +0 -4
- pulumi_null-0.0.3a1710157610/pulumi_null.egg-info/requires.txt +0 -3
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/README.md +0 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null/__init__.py +0 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null/py.typed +0 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null.egg-info/SOURCES.txt +0 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null.egg-info/dependency_links.txt +0 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null.egg-info/top_level.txt +0 -0
- {pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/setup.cfg +0 -0
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: pulumi_null
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.1.0a1736849544
|
|
4
4
|
Summary: A Pulumi package for creating and managing Null cloud resources.
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Project-URL: Homepage, https://www.pulumi.com/
|
|
7
7
|
Project-URL: Repository, https://github.com/pulumi/pulumi-null
|
|
8
8
|
Keywords: pulumi,category/cloud
|
|
9
|
-
Requires-Python: >=3.
|
|
9
|
+
Requires-Python: >=3.9
|
|
10
10
|
Description-Content-Type: text/markdown
|
|
11
11
|
Requires-Dist: parver>=0.2.1
|
|
12
|
-
Requires-Dist: pulumi<4.0.0,>=3.
|
|
12
|
+
Requires-Dist: pulumi<4.0.0,>=3.142.0
|
|
13
13
|
Requires-Dist: semver>=2.8.1
|
|
14
|
+
Requires-Dist: typing-extensions>=4.11; python_version < "3.11"
|
|
14
15
|
|
|
15
16
|
[](https://github.com/pulumi/pulumi-null/actions)
|
|
16
17
|
[](https://www.npmjs.com/package/@pulumi/null)
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
import asyncio
|
|
7
|
+
import functools
|
|
7
8
|
import importlib.metadata
|
|
8
9
|
import importlib.util
|
|
9
10
|
import inspect
|
|
@@ -11,14 +12,19 @@ import json
|
|
|
11
12
|
import os
|
|
12
13
|
import sys
|
|
13
14
|
import typing
|
|
15
|
+
import warnings
|
|
16
|
+
import base64
|
|
14
17
|
|
|
15
18
|
import pulumi
|
|
16
19
|
import pulumi.runtime
|
|
17
20
|
from pulumi.runtime.sync_await import _sync_await
|
|
21
|
+
from pulumi.runtime.proto import resource_pb2
|
|
18
22
|
|
|
19
23
|
from semver import VersionInfo as SemverVersion
|
|
20
24
|
from parver import Version as PEP440Version
|
|
21
25
|
|
|
26
|
+
C = typing.TypeVar("C", bound=typing.Callable)
|
|
27
|
+
|
|
22
28
|
|
|
23
29
|
def get_env(*args):
|
|
24
30
|
for v in args:
|
|
@@ -96,10 +102,6 @@ def _get_semver_version():
|
|
|
96
102
|
_version = _get_semver_version()
|
|
97
103
|
_version_str = str(_version)
|
|
98
104
|
|
|
99
|
-
|
|
100
|
-
def get_version():
|
|
101
|
-
return _version_str
|
|
102
|
-
|
|
103
105
|
def get_resource_opts_defaults() -> pulumi.ResourceOptions:
|
|
104
106
|
return pulumi.ResourceOptions(
|
|
105
107
|
version=get_version(),
|
|
@@ -262,7 +264,7 @@ def call_plain(
|
|
|
262
264
|
output = pulumi.runtime.call(tok, props, res, typ)
|
|
263
265
|
|
|
264
266
|
# Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency.
|
|
265
|
-
result, known, secret, _ = _sync_await(asyncio.
|
|
267
|
+
result, known, secret, _ = _sync_await(asyncio.create_task(_await_output(output)))
|
|
266
268
|
|
|
267
269
|
problem = None
|
|
268
270
|
if not known:
|
|
@@ -287,5 +289,39 @@ async def _await_output(o: pulumi.Output[typing.Any]) -> typing.Tuple[object, bo
|
|
|
287
289
|
await o._resources,
|
|
288
290
|
)
|
|
289
291
|
|
|
292
|
+
|
|
293
|
+
# This is included to provide an upgrade path for users who are using a version
|
|
294
|
+
# of the Pulumi SDK (<3.121.0) that does not include the `deprecated` decorator.
|
|
295
|
+
def deprecated(message: str) -> typing.Callable[[C], C]:
|
|
296
|
+
"""
|
|
297
|
+
Decorator to indicate a function is deprecated.
|
|
298
|
+
|
|
299
|
+
As well as inserting appropriate statements to indicate that the function is
|
|
300
|
+
deprecated, this decorator also tags the function with a special attribute
|
|
301
|
+
so that Pulumi code can detect that it is deprecated and react appropriately
|
|
302
|
+
in certain situations.
|
|
303
|
+
|
|
304
|
+
message is the deprecation message that should be printed if the function is called.
|
|
305
|
+
"""
|
|
306
|
+
|
|
307
|
+
def decorator(fn: C) -> C:
|
|
308
|
+
if not callable(fn):
|
|
309
|
+
raise TypeError("Expected fn to be callable")
|
|
310
|
+
|
|
311
|
+
@functools.wraps(fn)
|
|
312
|
+
def deprecated_fn(*args, **kwargs):
|
|
313
|
+
warnings.warn(message)
|
|
314
|
+
pulumi.warn(f"{fn.__name__} is deprecated: {message}")
|
|
315
|
+
|
|
316
|
+
return fn(*args, **kwargs)
|
|
317
|
+
|
|
318
|
+
deprecated_fn.__dict__["_pulumi_deprecated_callable"] = fn
|
|
319
|
+
return typing.cast(C, deprecated_fn)
|
|
320
|
+
|
|
321
|
+
return decorator
|
|
322
|
+
|
|
290
323
|
def get_plugin_download_url():
|
|
291
324
|
return None
|
|
325
|
+
|
|
326
|
+
def get_version():
|
|
327
|
+
return _version_str
|
{pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null/get_data_source.py
RENAMED
|
@@ -4,9 +4,14 @@
|
|
|
4
4
|
|
|
5
5
|
import copy
|
|
6
6
|
import warnings
|
|
7
|
+
import sys
|
|
7
8
|
import pulumi
|
|
8
9
|
import pulumi.runtime
|
|
9
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
|
|
10
15
|
from . import _utilities
|
|
11
16
|
|
|
12
17
|
__all__ = [
|
|
@@ -48,13 +53,11 @@ class GetDataSourceResult:
|
|
|
48
53
|
|
|
49
54
|
@property
|
|
50
55
|
@pulumi.getter
|
|
56
|
+
@_utilities.deprecated("""This attribute is only present for some legacy compatibility issues and should not be used. It will be removed in a future version.""")
|
|
51
57
|
def id(self) -> str:
|
|
52
58
|
"""
|
|
53
59
|
This attribute is only present for some legacy compatibility issues and should not be used. It will be removed in a future version.
|
|
54
60
|
"""
|
|
55
|
-
warnings.warn("""This attribute is only present for some legacy compatibility issues and should not be used. It will be removed in a future version.""", DeprecationWarning)
|
|
56
|
-
pulumi.log.warn("""id is deprecated: This attribute is only present for some legacy compatibility issues and should not be used. It will be removed in a future version.""")
|
|
57
|
-
|
|
58
61
|
return pulumi.get(self, "id")
|
|
59
62
|
|
|
60
63
|
@property
|
|
@@ -114,12 +117,9 @@ def get_data_source(has_computed_default: Optional[str] = None,
|
|
|
114
117
|
inputs=pulumi.get(__ret__, 'inputs'),
|
|
115
118
|
outputs=pulumi.get(__ret__, 'outputs'),
|
|
116
119
|
random=pulumi.get(__ret__, 'random'))
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
@_utilities.lift_output_func(get_data_source)
|
|
120
120
|
def get_data_source_output(has_computed_default: Optional[pulumi.Input[Optional[str]]] = None,
|
|
121
121
|
inputs: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None,
|
|
122
|
-
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDataSourceResult]:
|
|
122
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDataSourceResult]:
|
|
123
123
|
"""
|
|
124
124
|
## Example Usage
|
|
125
125
|
|
|
@@ -127,4 +127,14 @@ def get_data_source_output(has_computed_default: Optional[pulumi.Input[Optional[
|
|
|
127
127
|
:param str has_computed_default: If set, its literal value will be stored and returned. If not, its value defaults to `"default"`. This argument exists primarily for testing and has little practical use.
|
|
128
128
|
:param Mapping[str, str] inputs: A map of arbitrary strings that is copied into the `outputs` attribute, and accessible directly for interpolation.
|
|
129
129
|
"""
|
|
130
|
-
|
|
130
|
+
__args__ = dict()
|
|
131
|
+
__args__['hasComputedDefault'] = has_computed_default
|
|
132
|
+
__args__['inputs'] = inputs
|
|
133
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
134
|
+
__ret__ = pulumi.runtime.invoke_output('null:index/getDataSource:getDataSource', __args__, opts=opts, typ=GetDataSourceResult)
|
|
135
|
+
return __ret__.apply(lambda __response__: GetDataSourceResult(
|
|
136
|
+
has_computed_default=pulumi.get(__response__, 'has_computed_default'),
|
|
137
|
+
id=pulumi.get(__response__, 'id'),
|
|
138
|
+
inputs=pulumi.get(__response__, 'inputs'),
|
|
139
|
+
outputs=pulumi.get(__response__, 'outputs'),
|
|
140
|
+
random=pulumi.get(__response__, 'random')))
|
|
@@ -4,9 +4,14 @@
|
|
|
4
4
|
|
|
5
5
|
import copy
|
|
6
6
|
import warnings
|
|
7
|
+
import sys
|
|
7
8
|
import pulumi
|
|
8
9
|
import pulumi.runtime
|
|
9
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
|
|
10
15
|
from . import _utilities
|
|
11
16
|
|
|
12
17
|
__all__ = ['ProviderArgs', 'Provider']
|
|
@@ -4,9 +4,14 @@
|
|
|
4
4
|
|
|
5
5
|
import copy
|
|
6
6
|
import warnings
|
|
7
|
+
import sys
|
|
7
8
|
import pulumi
|
|
8
9
|
import pulumi.runtime
|
|
9
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
|
|
10
15
|
from . import _utilities
|
|
11
16
|
|
|
12
17
|
__all__ = ['ResourceArgs', 'Resource']
|
|
@@ -69,6 +74,31 @@ class Resource(pulumi.CustomResource):
|
|
|
69
74
|
"""
|
|
70
75
|
## Example Usage
|
|
71
76
|
|
|
77
|
+
```python
|
|
78
|
+
import pulumi
|
|
79
|
+
import pulumi_aws as aws
|
|
80
|
+
import pulumi_null as null
|
|
81
|
+
import pulumi_std as std
|
|
82
|
+
|
|
83
|
+
cluster = []
|
|
84
|
+
for range in [{"value": i} for i in range(0, 3)]:
|
|
85
|
+
cluster.append(aws.index.Instance(f"cluster-{range['value']}",
|
|
86
|
+
ami=ami-0dcc1e21636832c5d,
|
|
87
|
+
instance_type=m5.large))
|
|
88
|
+
# The primary use-case for the null resource is as a do-nothing container
|
|
89
|
+
# for arbitrary actions taken by a provisioner.
|
|
90
|
+
#
|
|
91
|
+
# In this example, three EC2 instances are created and then a
|
|
92
|
+
# null_resource instance is used to gather data about all three
|
|
93
|
+
# and execute a single action that affects them all. Due to the triggers
|
|
94
|
+
# map, the null_resource will be replaced each time the instance ids
|
|
95
|
+
# change, and thus the remote-exec provisioner will be re-run.
|
|
96
|
+
cluster_resource = null.Resource("cluster", triggers={
|
|
97
|
+
"cluster_instance_ids": std.join(separator=",",
|
|
98
|
+
input=[__item["id"] for __item in cluster]).result,
|
|
99
|
+
})
|
|
100
|
+
```
|
|
101
|
+
|
|
72
102
|
:param str resource_name: The name of the resource.
|
|
73
103
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
74
104
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] triggers: A map of arbitrary strings that, when changed, will force the null resource to be replaced, re-running any associated provisioners.
|
|
@@ -82,6 +112,31 @@ class Resource(pulumi.CustomResource):
|
|
|
82
112
|
"""
|
|
83
113
|
## Example Usage
|
|
84
114
|
|
|
115
|
+
```python
|
|
116
|
+
import pulumi
|
|
117
|
+
import pulumi_aws as aws
|
|
118
|
+
import pulumi_null as null
|
|
119
|
+
import pulumi_std as std
|
|
120
|
+
|
|
121
|
+
cluster = []
|
|
122
|
+
for range in [{"value": i} for i in range(0, 3)]:
|
|
123
|
+
cluster.append(aws.index.Instance(f"cluster-{range['value']}",
|
|
124
|
+
ami=ami-0dcc1e21636832c5d,
|
|
125
|
+
instance_type=m5.large))
|
|
126
|
+
# The primary use-case for the null resource is as a do-nothing container
|
|
127
|
+
# for arbitrary actions taken by a provisioner.
|
|
128
|
+
#
|
|
129
|
+
# In this example, three EC2 instances are created and then a
|
|
130
|
+
# null_resource instance is used to gather data about all three
|
|
131
|
+
# and execute a single action that affects them all. Due to the triggers
|
|
132
|
+
# map, the null_resource will be replaced each time the instance ids
|
|
133
|
+
# change, and thus the remote-exec provisioner will be re-run.
|
|
134
|
+
cluster_resource = null.Resource("cluster", triggers={
|
|
135
|
+
"cluster_instance_ids": std.join(separator=",",
|
|
136
|
+
input=[__item["id"] for __item in cluster]).result,
|
|
137
|
+
})
|
|
138
|
+
```
|
|
139
|
+
|
|
85
140
|
:param str resource_name: The name of the resource.
|
|
86
141
|
:param ResourceArgs args: The arguments to use to populate this resource's properties.
|
|
87
142
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: pulumi_null
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.1.0a1736849544
|
|
4
4
|
Summary: A Pulumi package for creating and managing Null cloud resources.
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Project-URL: Homepage, https://www.pulumi.com/
|
|
7
7
|
Project-URL: Repository, https://github.com/pulumi/pulumi-null
|
|
8
8
|
Keywords: pulumi,category/cloud
|
|
9
|
-
Requires-Python: >=3.
|
|
9
|
+
Requires-Python: >=3.9
|
|
10
10
|
Description-Content-Type: text/markdown
|
|
11
11
|
Requires-Dist: parver>=0.2.1
|
|
12
|
-
Requires-Dist: pulumi<4.0.0,>=3.
|
|
12
|
+
Requires-Dist: pulumi<4.0.0,>=3.142.0
|
|
13
13
|
Requires-Dist: semver>=2.8.1
|
|
14
|
+
Requires-Dist: typing-extensions>=4.11; python_version < "3.11"
|
|
14
15
|
|
|
15
16
|
[](https://github.com/pulumi/pulumi-null/actions)
|
|
16
17
|
[](https://www.npmjs.com/package/@pulumi/null)
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "pulumi_null"
|
|
3
3
|
description = "A Pulumi package for creating and managing Null cloud resources."
|
|
4
|
-
dependencies = ["parver>=0.2.1", "pulumi>=3.
|
|
4
|
+
dependencies = ["parver>=0.2.1", "pulumi>=3.142.0,<4.0.0", "semver>=2.8.1", "typing-extensions>=4.11; python_version < \"3.11\""]
|
|
5
5
|
keywords = ["pulumi", "category/cloud"]
|
|
6
6
|
readme = "README.md"
|
|
7
|
-
requires-python = ">=3.
|
|
8
|
-
version = "0.
|
|
7
|
+
requires-python = ">=3.9"
|
|
8
|
+
version = "0.1.0a1736849544"
|
|
9
9
|
[project.license]
|
|
10
10
|
text = "Apache-2.0"
|
|
11
11
|
[project.urls]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{pulumi_null-0.0.3a1710157610 → pulumi_null-0.1.0a1736849544}/pulumi_null.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|