microsoft-cdktfconstructs 0.0.3.dev11__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.
- microsoft_cdktfconstructs/__init__.py +217 -0
- microsoft_cdktfconstructs/_jsii/__init__.py +31 -0
- microsoft_cdktfconstructs/_jsii/terraform-cdk-constructs@0.0.3-pre.11.jsii.tgz +0 -0
- microsoft_cdktfconstructs/azure_applicationgateway/__init__.py +823 -0
- microsoft_cdktfconstructs/azure_applicationinsights/__init__.py +397 -0
- microsoft_cdktfconstructs/azure_containerregistry/__init__.py +320 -0
- microsoft_cdktfconstructs/azure_eventhub/__init__.py +2213 -0
- microsoft_cdktfconstructs/azure_functionapp/__init__.py +908 -0
- microsoft_cdktfconstructs/azure_keyvault/__init__.py +1982 -0
- microsoft_cdktfconstructs/azure_kubernetes/__init__.py +400 -0
- microsoft_cdktfconstructs/azure_kusto/__init__.py +2485 -0
- microsoft_cdktfconstructs/azure_loganalytics/__init__.py +652 -0
- microsoft_cdktfconstructs/azure_metricalert/__init__.py +1260 -0
- microsoft_cdktfconstructs/azure_networksecuritygroup/__init__.py +1742 -0
- microsoft_cdktfconstructs/azure_queryrulealert/__init__.py +1189 -0
- microsoft_cdktfconstructs/azure_resourcegroup/__init__.py +320 -0
- microsoft_cdktfconstructs/azure_storageaccount/__init__.py +1910 -0
- microsoft_cdktfconstructs/azure_virtualmachine/__init__.py +1460 -0
- microsoft_cdktfconstructs/azure_virtualmachinescaleset/__init__.py +1185 -0
- microsoft_cdktfconstructs/azure_virtualnetwork/__init__.py +707 -0
- microsoft_cdktfconstructs/core_azure/__init__.py +931 -0
- microsoft_cdktfconstructs/py.typed +1 -0
- microsoft_cdktfconstructs-0.0.3.dev11.dist-info/LICENSE +19 -0
- microsoft_cdktfconstructs-0.0.3.dev11.dist-info/METADATA +188 -0
- microsoft_cdktfconstructs-0.0.3.dev11.dist-info/RECORD +27 -0
- microsoft_cdktfconstructs-0.0.3.dev11.dist-info/WHEEL +5 -0
- microsoft_cdktfconstructs-0.0.3.dev11.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
'''
|
|
2
|
+
# Azure Resource Group Construct
|
|
3
|
+
|
|
4
|
+
This Construct represents a Resource Group in Azure. It provides a convenient way to manage Azure resources within a single group.
|
|
5
|
+
|
|
6
|
+
## What is a Resource Group?
|
|
7
|
+
|
|
8
|
+
In Azure, a Resource Group is a container that holds related resources for an Azure solution. It's a logical group for resources deployed on Azure. All the resources in a group should have the same lifecycle and the same permissions, which makes it easier to manage, monitor, and analyze collectively.
|
|
9
|
+
|
|
10
|
+
You can learn more about Resource Groups in the [official Azure documentation](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-portal).
|
|
11
|
+
|
|
12
|
+
## Resource Group Best Practices
|
|
13
|
+
|
|
14
|
+
* Use a consistent naming convention for your resource groups and other Azure resources.
|
|
15
|
+
* Group resources that share the same lifecycle and permissions.
|
|
16
|
+
* Avoid putting too many resources in a single group. If one resource experiences an issue, it may be harder to diagnose the problem if it's in a group with many other resources.
|
|
17
|
+
* Use resource groups to separate resources that are managed by different teams.
|
|
18
|
+
|
|
19
|
+
## Azure Resource Group Construct Properties
|
|
20
|
+
|
|
21
|
+
This Construct has several properties that control the Resource Group's behaviour:
|
|
22
|
+
|
|
23
|
+
* `location`: The Azure Region where the Resource Group will be deployed.
|
|
24
|
+
* `name`: The name of the Azure Resource Group.
|
|
25
|
+
* `rbacGroups`: The RBAC groups to assign to the Resource Group.
|
|
26
|
+
* `tags`: The tags to assign to the Resource Group.
|
|
27
|
+
* `ignoreChanges`: The lifecycle rules to ignore changes.
|
|
28
|
+
|
|
29
|
+
## Deploying the Resource Group
|
|
30
|
+
|
|
31
|
+
You can deploy a Resource Group using this Construct like so:
|
|
32
|
+
|
|
33
|
+
```python
|
|
34
|
+
const azureResourceGroup = new AzureResourceGroup(this, 'myResourceGroup', {
|
|
35
|
+
location: 'West US',
|
|
36
|
+
name: 'myResourceGroup',
|
|
37
|
+
tags: {
|
|
38
|
+
'env': 'production',
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
```
|
|
42
|
+
'''
|
|
43
|
+
from pkgutil import extend_path
|
|
44
|
+
__path__ = extend_path(__path__, __name__)
|
|
45
|
+
|
|
46
|
+
import abc
|
|
47
|
+
import builtins
|
|
48
|
+
import datetime
|
|
49
|
+
import enum
|
|
50
|
+
import typing
|
|
51
|
+
|
|
52
|
+
import jsii
|
|
53
|
+
import publication
|
|
54
|
+
import typing_extensions
|
|
55
|
+
|
|
56
|
+
from typeguard import check_type
|
|
57
|
+
|
|
58
|
+
from .._jsii import *
|
|
59
|
+
|
|
60
|
+
import cdktf as _cdktf_9a9027ec
|
|
61
|
+
import cdktf_cdktf_provider_azurerm.resource_group as _cdktf_cdktf_provider_azurerm_resource_group_92bbcedf
|
|
62
|
+
import constructs as _constructs_77d1e7e8
|
|
63
|
+
from ..core_azure import AzureResource as _AzureResource_74eec1c4
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
class Group(
|
|
67
|
+
_AzureResource_74eec1c4,
|
|
68
|
+
metaclass=jsii.JSIIMeta,
|
|
69
|
+
jsii_type="@microsoft/terraform-cdk-constructs.azure_resourcegroup.Group",
|
|
70
|
+
):
|
|
71
|
+
def __init__(
|
|
72
|
+
self,
|
|
73
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
74
|
+
id: builtins.str,
|
|
75
|
+
*,
|
|
76
|
+
ignore_changes: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
77
|
+
location: typing.Optional[builtins.str] = None,
|
|
78
|
+
name: typing.Optional[builtins.str] = None,
|
|
79
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
80
|
+
) -> None:
|
|
81
|
+
'''Represents an Azure Resource Group.
|
|
82
|
+
|
|
83
|
+
This class is responsible for the creation and management of an Azure Resource Group, which is a container that holds
|
|
84
|
+
related resources for an Azure solution. A resource group includes those resources that you want to manage as a group.
|
|
85
|
+
You decide how to allocate resources to resource groups based on what makes the most sense for your organization.
|
|
86
|
+
|
|
87
|
+
:param scope: - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
|
|
88
|
+
:param id: - The unique identifier for this instance of the Resource Group.
|
|
89
|
+
:param ignore_changes: The lifecycle rules to ignore changes.
|
|
90
|
+
:param location: The Azure Region to deploy.
|
|
91
|
+
:param name: The name of the Azure Resource Group.
|
|
92
|
+
:param tags: The tags to assign to the Resource Group.
|
|
93
|
+
'''
|
|
94
|
+
if __debug__:
|
|
95
|
+
type_hints = typing.get_type_hints(_typecheckingstub__28366b9cbb85cc322b3ef2755d7f96dae164903b33f2dcc65ba007c860e5b4d1)
|
|
96
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
97
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
98
|
+
props = GroupProps(
|
|
99
|
+
ignore_changes=ignore_changes, location=location, name=name, tags=tags
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
jsii.create(self.__class__, self, [scope, id, props])
|
|
103
|
+
|
|
104
|
+
@builtins.property
|
|
105
|
+
@jsii.member(jsii_name="location")
|
|
106
|
+
def location(self) -> builtins.str:
|
|
107
|
+
return typing.cast(builtins.str, jsii.get(self, "location"))
|
|
108
|
+
|
|
109
|
+
@builtins.property
|
|
110
|
+
@jsii.member(jsii_name="name")
|
|
111
|
+
def name(self) -> builtins.str:
|
|
112
|
+
return typing.cast(builtins.str, jsii.get(self, "name"))
|
|
113
|
+
|
|
114
|
+
@builtins.property
|
|
115
|
+
@jsii.member(jsii_name="props")
|
|
116
|
+
def props(self) -> "GroupProps":
|
|
117
|
+
return typing.cast("GroupProps", jsii.get(self, "props"))
|
|
118
|
+
|
|
119
|
+
@builtins.property
|
|
120
|
+
@jsii.member(jsii_name="id")
|
|
121
|
+
def id(self) -> builtins.str:
|
|
122
|
+
return typing.cast(builtins.str, jsii.get(self, "id"))
|
|
123
|
+
|
|
124
|
+
@id.setter
|
|
125
|
+
def id(self, value: builtins.str) -> None:
|
|
126
|
+
if __debug__:
|
|
127
|
+
type_hints = typing.get_type_hints(_typecheckingstub__863a91908c470e9a72b0c809f3d8826895c52dfe6ccf6a11ecbea4984575fb57)
|
|
128
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
129
|
+
jsii.set(self, "id", value)
|
|
130
|
+
|
|
131
|
+
@builtins.property
|
|
132
|
+
@jsii.member(jsii_name="idOutput")
|
|
133
|
+
def id_output(self) -> _cdktf_9a9027ec.TerraformOutput:
|
|
134
|
+
return typing.cast(_cdktf_9a9027ec.TerraformOutput, jsii.get(self, "idOutput"))
|
|
135
|
+
|
|
136
|
+
@id_output.setter
|
|
137
|
+
def id_output(self, value: _cdktf_9a9027ec.TerraformOutput) -> None:
|
|
138
|
+
if __debug__:
|
|
139
|
+
type_hints = typing.get_type_hints(_typecheckingstub__8be16f4160ff2bf3fd5b0cde5c96a5dff9cfa2ecda217c5398e648ff6ec0a5e9)
|
|
140
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
141
|
+
jsii.set(self, "idOutput", value)
|
|
142
|
+
|
|
143
|
+
@builtins.property
|
|
144
|
+
@jsii.member(jsii_name="locationOutput")
|
|
145
|
+
def location_output(self) -> _cdktf_9a9027ec.TerraformOutput:
|
|
146
|
+
return typing.cast(_cdktf_9a9027ec.TerraformOutput, jsii.get(self, "locationOutput"))
|
|
147
|
+
|
|
148
|
+
@location_output.setter
|
|
149
|
+
def location_output(self, value: _cdktf_9a9027ec.TerraformOutput) -> None:
|
|
150
|
+
if __debug__:
|
|
151
|
+
type_hints = typing.get_type_hints(_typecheckingstub__757de5ae0a79f96e9ff422bf2771a4bfd85b5557abcd73d71e0d4697dc320d1e)
|
|
152
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
153
|
+
jsii.set(self, "locationOutput", value)
|
|
154
|
+
|
|
155
|
+
@builtins.property
|
|
156
|
+
@jsii.member(jsii_name="nameOutput")
|
|
157
|
+
def name_output(self) -> _cdktf_9a9027ec.TerraformOutput:
|
|
158
|
+
return typing.cast(_cdktf_9a9027ec.TerraformOutput, jsii.get(self, "nameOutput"))
|
|
159
|
+
|
|
160
|
+
@name_output.setter
|
|
161
|
+
def name_output(self, value: _cdktf_9a9027ec.TerraformOutput) -> None:
|
|
162
|
+
if __debug__:
|
|
163
|
+
type_hints = typing.get_type_hints(_typecheckingstub__d26b71fe6df2495c6c302da681e1f6f0f2812cd859898a81a37b18f19a45878a)
|
|
164
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
165
|
+
jsii.set(self, "nameOutput", value)
|
|
166
|
+
|
|
167
|
+
@builtins.property
|
|
168
|
+
@jsii.member(jsii_name="resourceGroup")
|
|
169
|
+
def resource_group(
|
|
170
|
+
self,
|
|
171
|
+
) -> _cdktf_cdktf_provider_azurerm_resource_group_92bbcedf.ResourceGroup:
|
|
172
|
+
return typing.cast(_cdktf_cdktf_provider_azurerm_resource_group_92bbcedf.ResourceGroup, jsii.get(self, "resourceGroup"))
|
|
173
|
+
|
|
174
|
+
@resource_group.setter
|
|
175
|
+
def resource_group(
|
|
176
|
+
self,
|
|
177
|
+
value: _cdktf_cdktf_provider_azurerm_resource_group_92bbcedf.ResourceGroup,
|
|
178
|
+
) -> None:
|
|
179
|
+
if __debug__:
|
|
180
|
+
type_hints = typing.get_type_hints(_typecheckingstub__57416344b94a6578833c6453e4ec9c1939e1182fbd79e966a4bdb6477a07512e)
|
|
181
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
182
|
+
jsii.set(self, "resourceGroup", value)
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
@jsii.data_type(
|
|
186
|
+
jsii_type="@microsoft/terraform-cdk-constructs.azure_resourcegroup.GroupProps",
|
|
187
|
+
jsii_struct_bases=[],
|
|
188
|
+
name_mapping={
|
|
189
|
+
"ignore_changes": "ignoreChanges",
|
|
190
|
+
"location": "location",
|
|
191
|
+
"name": "name",
|
|
192
|
+
"tags": "tags",
|
|
193
|
+
},
|
|
194
|
+
)
|
|
195
|
+
class GroupProps:
|
|
196
|
+
def __init__(
|
|
197
|
+
self,
|
|
198
|
+
*,
|
|
199
|
+
ignore_changes: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
200
|
+
location: typing.Optional[builtins.str] = None,
|
|
201
|
+
name: typing.Optional[builtins.str] = None,
|
|
202
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
203
|
+
) -> None:
|
|
204
|
+
'''Properties for the resource group.
|
|
205
|
+
|
|
206
|
+
:param ignore_changes: The lifecycle rules to ignore changes.
|
|
207
|
+
:param location: The Azure Region to deploy.
|
|
208
|
+
:param name: The name of the Azure Resource Group.
|
|
209
|
+
:param tags: The tags to assign to the Resource Group.
|
|
210
|
+
'''
|
|
211
|
+
if __debug__:
|
|
212
|
+
type_hints = typing.get_type_hints(_typecheckingstub__7cf28a39ce41ce37b370b8d109f1e2b60b50663e19393f14d4459cd453d5bb4d)
|
|
213
|
+
check_type(argname="argument ignore_changes", value=ignore_changes, expected_type=type_hints["ignore_changes"])
|
|
214
|
+
check_type(argname="argument location", value=location, expected_type=type_hints["location"])
|
|
215
|
+
check_type(argname="argument name", value=name, expected_type=type_hints["name"])
|
|
216
|
+
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
217
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
218
|
+
if ignore_changes is not None:
|
|
219
|
+
self._values["ignore_changes"] = ignore_changes
|
|
220
|
+
if location is not None:
|
|
221
|
+
self._values["location"] = location
|
|
222
|
+
if name is not None:
|
|
223
|
+
self._values["name"] = name
|
|
224
|
+
if tags is not None:
|
|
225
|
+
self._values["tags"] = tags
|
|
226
|
+
|
|
227
|
+
@builtins.property
|
|
228
|
+
def ignore_changes(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
229
|
+
'''The lifecycle rules to ignore changes.'''
|
|
230
|
+
result = self._values.get("ignore_changes")
|
|
231
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
232
|
+
|
|
233
|
+
@builtins.property
|
|
234
|
+
def location(self) -> typing.Optional[builtins.str]:
|
|
235
|
+
'''The Azure Region to deploy.'''
|
|
236
|
+
result = self._values.get("location")
|
|
237
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
238
|
+
|
|
239
|
+
@builtins.property
|
|
240
|
+
def name(self) -> typing.Optional[builtins.str]:
|
|
241
|
+
'''The name of the Azure Resource Group.'''
|
|
242
|
+
result = self._values.get("name")
|
|
243
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
244
|
+
|
|
245
|
+
@builtins.property
|
|
246
|
+
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
247
|
+
'''The tags to assign to the Resource Group.'''
|
|
248
|
+
result = self._values.get("tags")
|
|
249
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
250
|
+
|
|
251
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
252
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
253
|
+
|
|
254
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
255
|
+
return not (rhs == self)
|
|
256
|
+
|
|
257
|
+
def __repr__(self) -> str:
|
|
258
|
+
return "GroupProps(%s)" % ", ".join(
|
|
259
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
260
|
+
)
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
__all__ = [
|
|
264
|
+
"Group",
|
|
265
|
+
"GroupProps",
|
|
266
|
+
]
|
|
267
|
+
|
|
268
|
+
publication.publish()
|
|
269
|
+
|
|
270
|
+
def _typecheckingstub__28366b9cbb85cc322b3ef2755d7f96dae164903b33f2dcc65ba007c860e5b4d1(
|
|
271
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
272
|
+
id: builtins.str,
|
|
273
|
+
*,
|
|
274
|
+
ignore_changes: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
275
|
+
location: typing.Optional[builtins.str] = None,
|
|
276
|
+
name: typing.Optional[builtins.str] = None,
|
|
277
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
278
|
+
) -> None:
|
|
279
|
+
"""Type checking stubs"""
|
|
280
|
+
pass
|
|
281
|
+
|
|
282
|
+
def _typecheckingstub__863a91908c470e9a72b0c809f3d8826895c52dfe6ccf6a11ecbea4984575fb57(
|
|
283
|
+
value: builtins.str,
|
|
284
|
+
) -> None:
|
|
285
|
+
"""Type checking stubs"""
|
|
286
|
+
pass
|
|
287
|
+
|
|
288
|
+
def _typecheckingstub__8be16f4160ff2bf3fd5b0cde5c96a5dff9cfa2ecda217c5398e648ff6ec0a5e9(
|
|
289
|
+
value: _cdktf_9a9027ec.TerraformOutput,
|
|
290
|
+
) -> None:
|
|
291
|
+
"""Type checking stubs"""
|
|
292
|
+
pass
|
|
293
|
+
|
|
294
|
+
def _typecheckingstub__757de5ae0a79f96e9ff422bf2771a4bfd85b5557abcd73d71e0d4697dc320d1e(
|
|
295
|
+
value: _cdktf_9a9027ec.TerraformOutput,
|
|
296
|
+
) -> None:
|
|
297
|
+
"""Type checking stubs"""
|
|
298
|
+
pass
|
|
299
|
+
|
|
300
|
+
def _typecheckingstub__d26b71fe6df2495c6c302da681e1f6f0f2812cd859898a81a37b18f19a45878a(
|
|
301
|
+
value: _cdktf_9a9027ec.TerraformOutput,
|
|
302
|
+
) -> None:
|
|
303
|
+
"""Type checking stubs"""
|
|
304
|
+
pass
|
|
305
|
+
|
|
306
|
+
def _typecheckingstub__57416344b94a6578833c6453e4ec9c1939e1182fbd79e966a4bdb6477a07512e(
|
|
307
|
+
value: _cdktf_cdktf_provider_azurerm_resource_group_92bbcedf.ResourceGroup,
|
|
308
|
+
) -> None:
|
|
309
|
+
"""Type checking stubs"""
|
|
310
|
+
pass
|
|
311
|
+
|
|
312
|
+
def _typecheckingstub__7cf28a39ce41ce37b370b8d109f1e2b60b50663e19393f14d4459cd453d5bb4d(
|
|
313
|
+
*,
|
|
314
|
+
ignore_changes: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
315
|
+
location: typing.Optional[builtins.str] = None,
|
|
316
|
+
name: typing.Optional[builtins.str] = None,
|
|
317
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
318
|
+
) -> None:
|
|
319
|
+
"""Type checking stubs"""
|
|
320
|
+
pass
|