pulumi-azure-native 2.68.0a1729544032__py3-none-any.whl → 2.68.0a1729615467__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.

Potentially problematic release.


This version of pulumi-azure-native might be problematic. Click here for more details.

Files changed (167) hide show
  1. pulumi_azure_native/__init__.py +29 -0
  2. pulumi_azure_native/awsconnector/_inputs.py +132 -96
  3. pulumi_azure_native/awsconnector/outputs.py +120 -66
  4. pulumi_azure_native/awsconnector/v20241201/_inputs.py +132 -96
  5. pulumi_azure_native/awsconnector/v20241201/outputs.py +120 -66
  6. pulumi_azure_native/cache/__init__.py +3 -0
  7. pulumi_azure_native/cache/access_policy.py +3 -3
  8. pulumi_azure_native/cache/access_policy_assignment.py +3 -3
  9. pulumi_azure_native/cache/firewall_rule.py +3 -3
  10. pulumi_azure_native/cache/get_access_policy.py +2 -2
  11. pulumi_azure_native/cache/get_access_policy_assignment.py +2 -2
  12. pulumi_azure_native/cache/get_firewall_rule.py +2 -2
  13. pulumi_azure_native/cache/get_linked_server.py +2 -2
  14. pulumi_azure_native/cache/get_patch_schedule.py +2 -2
  15. pulumi_azure_native/cache/get_private_endpoint_connection.py +2 -2
  16. pulumi_azure_native/cache/get_redis.py +2 -2
  17. pulumi_azure_native/cache/linked_server.py +3 -3
  18. pulumi_azure_native/cache/list_redis_keys.py +2 -2
  19. pulumi_azure_native/cache/patch_schedule.py +3 -3
  20. pulumi_azure_native/cache/private_endpoint_connection.py +3 -3
  21. pulumi_azure_native/cache/redis.py +3 -3
  22. pulumi_azure_native/cache/v20200601/redis.py +1 -1
  23. pulumi_azure_native/cache/v20230401/firewall_rule.py +1 -1
  24. pulumi_azure_native/cache/v20230401/linked_server.py +1 -1
  25. pulumi_azure_native/cache/v20230401/patch_schedule.py +1 -1
  26. pulumi_azure_native/cache/v20230401/private_endpoint_connection.py +1 -1
  27. pulumi_azure_native/cache/v20230401/redis.py +1 -1
  28. pulumi_azure_native/cache/v20230501preview/access_policy.py +1 -1
  29. pulumi_azure_native/cache/v20230501preview/access_policy_assignment.py +1 -1
  30. pulumi_azure_native/cache/v20230501preview/firewall_rule.py +1 -1
  31. pulumi_azure_native/cache/v20230501preview/linked_server.py +1 -1
  32. pulumi_azure_native/cache/v20230501preview/patch_schedule.py +1 -1
  33. pulumi_azure_native/cache/v20230501preview/private_endpoint_connection.py +1 -1
  34. pulumi_azure_native/cache/v20230501preview/redis.py +1 -1
  35. pulumi_azure_native/cache/v20230801/access_policy.py +1 -1
  36. pulumi_azure_native/cache/v20230801/access_policy_assignment.py +1 -1
  37. pulumi_azure_native/cache/v20230801/firewall_rule.py +1 -1
  38. pulumi_azure_native/cache/v20230801/linked_server.py +1 -1
  39. pulumi_azure_native/cache/v20230801/patch_schedule.py +1 -1
  40. pulumi_azure_native/cache/v20230801/private_endpoint_connection.py +1 -1
  41. pulumi_azure_native/cache/v20230801/redis.py +1 -1
  42. pulumi_azure_native/cache/v20240301/access_policy.py +1 -1
  43. pulumi_azure_native/cache/v20240301/access_policy_assignment.py +1 -1
  44. pulumi_azure_native/cache/v20240301/firewall_rule.py +1 -1
  45. pulumi_azure_native/cache/v20240301/linked_server.py +1 -1
  46. pulumi_azure_native/cache/v20240301/patch_schedule.py +1 -1
  47. pulumi_azure_native/cache/v20240301/private_endpoint_connection.py +1 -1
  48. pulumi_azure_native/cache/v20240301/redis.py +1 -1
  49. pulumi_azure_native/cache/v20240401preview/access_policy.py +1 -1
  50. pulumi_azure_native/cache/v20240401preview/access_policy_assignment.py +1 -1
  51. pulumi_azure_native/cache/v20240401preview/firewall_rule.py +1 -1
  52. pulumi_azure_native/cache/v20240401preview/linked_server.py +1 -1
  53. pulumi_azure_native/cache/v20240401preview/patch_schedule.py +1 -1
  54. pulumi_azure_native/cache/v20240401preview/private_endpoint_connection.py +1 -1
  55. pulumi_azure_native/cache/v20240401preview/redis.py +1 -1
  56. pulumi_azure_native/cache/v20241101/__init__.py +25 -0
  57. pulumi_azure_native/cache/v20241101/_enums.py +111 -0
  58. pulumi_azure_native/cache/v20241101/_inputs.py +646 -0
  59. pulumi_azure_native/cache/v20241101/access_policy.py +219 -0
  60. pulumi_azure_native/cache/v20241101/access_policy_assignment.py +279 -0
  61. pulumi_azure_native/cache/v20241101/firewall_rule.py +239 -0
  62. pulumi_azure_native/cache/v20241101/get_access_policy.py +148 -0
  63. pulumi_azure_native/cache/v20241101/get_access_policy_assignment.py +176 -0
  64. pulumi_azure_native/cache/v20241101/get_firewall_rule.py +148 -0
  65. pulumi_azure_native/cache/v20241101/get_linked_server.py +204 -0
  66. pulumi_azure_native/cache/v20241101/get_patch_schedule.py +149 -0
  67. pulumi_azure_native/cache/v20241101/get_private_endpoint_connection.py +163 -0
  68. pulumi_azure_native/cache/v20241101/get_redis.py +493 -0
  69. pulumi_azure_native/cache/v20241101/linked_server.py +299 -0
  70. pulumi_azure_native/cache/v20241101/list_redis_keys.py +100 -0
  71. pulumi_azure_native/cache/v20241101/outputs.py +917 -0
  72. pulumi_azure_native/cache/v20241101/patch_schedule.py +221 -0
  73. pulumi_azure_native/cache/v20241101/private_endpoint_connection.py +232 -0
  74. pulumi_azure_native/cache/v20241101/redis.py +804 -0
  75. pulumi_azure_native/costmanagement/__init__.py +3 -0
  76. pulumi_azure_native/costmanagement/budget.py +3 -3
  77. pulumi_azure_native/costmanagement/cost_allocation_rule.py +3 -3
  78. pulumi_azure_native/costmanagement/export.py +3 -3
  79. pulumi_azure_native/costmanagement/get_budget.py +2 -2
  80. pulumi_azure_native/costmanagement/get_cost_allocation_rule.py +2 -2
  81. pulumi_azure_native/costmanagement/get_export.py +2 -2
  82. pulumi_azure_native/costmanagement/get_scheduled_action.py +2 -2
  83. pulumi_azure_native/costmanagement/get_scheduled_action_by_scope.py +2 -2
  84. pulumi_azure_native/costmanagement/get_view.py +2 -2
  85. pulumi_azure_native/costmanagement/get_view_by_scope.py +2 -2
  86. pulumi_azure_native/costmanagement/scheduled_action.py +3 -3
  87. pulumi_azure_native/costmanagement/scheduled_action_by_scope.py +3 -3
  88. pulumi_azure_native/costmanagement/tag_inheritance_setting.py +1 -1
  89. pulumi_azure_native/costmanagement/v20190401preview/budget.py +1 -1
  90. pulumi_azure_native/costmanagement/v20191001/export.py +1 -1
  91. pulumi_azure_native/costmanagement/v20191101/view.py +1 -1
  92. pulumi_azure_native/costmanagement/v20191101/view_by_scope.py +1 -1
  93. pulumi_azure_native/costmanagement/v20200301preview/cost_allocation_rule.py +1 -1
  94. pulumi_azure_native/costmanagement/v20200601/view.py +1 -1
  95. pulumi_azure_native/costmanagement/v20200601/view_by_scope.py +1 -1
  96. pulumi_azure_native/costmanagement/v20221001/view.py +1 -1
  97. pulumi_azure_native/costmanagement/v20221001/view_by_scope.py +1 -1
  98. pulumi_azure_native/costmanagement/v20221005preview/tag_inheritance_setting.py +1 -1
  99. pulumi_azure_native/costmanagement/v20221005preview/view.py +1 -1
  100. pulumi_azure_native/costmanagement/v20221005preview/view_by_scope.py +1 -1
  101. pulumi_azure_native/costmanagement/v20230301/export.py +1 -1
  102. pulumi_azure_native/costmanagement/v20230301/scheduled_action.py +1 -1
  103. pulumi_azure_native/costmanagement/v20230301/scheduled_action_by_scope.py +1 -1
  104. pulumi_azure_native/costmanagement/v20230301/view.py +1 -1
  105. pulumi_azure_native/costmanagement/v20230301/view_by_scope.py +1 -1
  106. pulumi_azure_native/costmanagement/v20230401preview/budget.py +1 -1
  107. pulumi_azure_native/costmanagement/v20230401preview/export.py +1 -1
  108. pulumi_azure_native/costmanagement/v20230401preview/scheduled_action.py +1 -1
  109. pulumi_azure_native/costmanagement/v20230401preview/scheduled_action_by_scope.py +1 -1
  110. pulumi_azure_native/costmanagement/v20230401preview/view.py +1 -1
  111. pulumi_azure_native/costmanagement/v20230401preview/view_by_scope.py +1 -1
  112. pulumi_azure_native/costmanagement/v20230701preview/export.py +1 -1
  113. pulumi_azure_native/costmanagement/v20230701preview/scheduled_action.py +1 -1
  114. pulumi_azure_native/costmanagement/v20230701preview/scheduled_action_by_scope.py +1 -1
  115. pulumi_azure_native/costmanagement/v20230701preview/view.py +1 -1
  116. pulumi_azure_native/costmanagement/v20230701preview/view_by_scope.py +1 -1
  117. pulumi_azure_native/costmanagement/v20230801/budget.py +1 -1
  118. pulumi_azure_native/costmanagement/v20230801/cost_allocation_rule.py +1 -1
  119. pulumi_azure_native/costmanagement/v20230801/export.py +1 -1
  120. pulumi_azure_native/costmanagement/v20230801/scheduled_action.py +1 -1
  121. pulumi_azure_native/costmanagement/v20230801/scheduled_action_by_scope.py +1 -1
  122. pulumi_azure_native/costmanagement/v20230801/tag_inheritance_setting.py +1 -1
  123. pulumi_azure_native/costmanagement/v20230801/view.py +1 -1
  124. pulumi_azure_native/costmanagement/v20230801/view_by_scope.py +1 -1
  125. pulumi_azure_native/costmanagement/v20230901/budget.py +1 -1
  126. pulumi_azure_native/costmanagement/v20230901/cost_allocation_rule.py +1 -1
  127. pulumi_azure_native/costmanagement/v20230901/export.py +1 -1
  128. pulumi_azure_native/costmanagement/v20230901/scheduled_action.py +1 -1
  129. pulumi_azure_native/costmanagement/v20230901/scheduled_action_by_scope.py +1 -1
  130. pulumi_azure_native/costmanagement/v20230901/tag_inheritance_setting.py +1 -1
  131. pulumi_azure_native/costmanagement/v20230901/view.py +1 -1
  132. pulumi_azure_native/costmanagement/v20230901/view_by_scope.py +1 -1
  133. pulumi_azure_native/costmanagement/v20231101/budget.py +1 -1
  134. pulumi_azure_native/costmanagement/v20231101/cost_allocation_rule.py +1 -1
  135. pulumi_azure_native/costmanagement/v20231101/export.py +1 -1
  136. pulumi_azure_native/costmanagement/v20231101/scheduled_action.py +1 -1
  137. pulumi_azure_native/costmanagement/v20231101/scheduled_action_by_scope.py +1 -1
  138. pulumi_azure_native/costmanagement/v20231101/tag_inheritance_setting.py +1 -1
  139. pulumi_azure_native/costmanagement/v20231101/view.py +1 -1
  140. pulumi_azure_native/costmanagement/v20231101/view_by_scope.py +1 -1
  141. pulumi_azure_native/costmanagement/v20240801/__init__.py +26 -0
  142. pulumi_azure_native/costmanagement/v20240801/_enums.py +538 -0
  143. pulumi_azure_native/costmanagement/v20240801/_inputs.py +2660 -0
  144. pulumi_azure_native/costmanagement/v20240801/budget.py +619 -0
  145. pulumi_azure_native/costmanagement/v20240801/cost_allocation_rule.py +190 -0
  146. pulumi_azure_native/costmanagement/v20240801/export.py +415 -0
  147. pulumi_azure_native/costmanagement/v20240801/get_budget.py +337 -0
  148. pulumi_azure_native/costmanagement/v20240801/get_cost_allocation_rule.py +129 -0
  149. pulumi_azure_native/costmanagement/v20240801/get_export.py +261 -0
  150. pulumi_azure_native/costmanagement/v20240801/get_scheduled_action.py +263 -0
  151. pulumi_azure_native/costmanagement/v20240801/get_scheduled_action_by_scope.py +269 -0
  152. pulumi_azure_native/costmanagement/v20240801/get_tag_inheritance_setting.py +144 -0
  153. pulumi_azure_native/costmanagement/v20240801/get_view.py +333 -0
  154. pulumi_azure_native/costmanagement/v20240801/get_view_by_scope.py +339 -0
  155. pulumi_azure_native/costmanagement/v20240801/outputs.py +2593 -0
  156. pulumi_azure_native/costmanagement/v20240801/scheduled_action.py +425 -0
  157. pulumi_azure_native/costmanagement/v20240801/scheduled_action_by_scope.py +426 -0
  158. pulumi_azure_native/costmanagement/v20240801/tag_inheritance_setting.py +222 -0
  159. pulumi_azure_native/costmanagement/v20240801/view.py +587 -0
  160. pulumi_azure_native/costmanagement/v20240801/view_by_scope.py +588 -0
  161. pulumi_azure_native/costmanagement/view.py +3 -3
  162. pulumi_azure_native/costmanagement/view_by_scope.py +3 -3
  163. pulumi_azure_native/pulumi-plugin.json +1 -1
  164. {pulumi_azure_native-2.68.0a1729544032.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/METADATA +1 -1
  165. {pulumi_azure_native-2.68.0a1729544032.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/RECORD +167 -128
  166. {pulumi_azure_native-2.68.0a1729544032.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/WHEEL +0 -0
  167. {pulumi_azure_native-2.68.0a1729544032.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,190 @@
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 . import outputs
17
+ from ._enums import *
18
+ from ._inputs import *
19
+
20
+ __all__ = ['CostAllocationRuleArgs', 'CostAllocationRule']
21
+
22
+ @pulumi.input_type
23
+ class CostAllocationRuleArgs:
24
+ def __init__(__self__, *,
25
+ billing_account_id: pulumi.Input[str],
26
+ properties: Optional[pulumi.Input['CostAllocationRulePropertiesArgs']] = None,
27
+ rule_name: Optional[pulumi.Input[str]] = None):
28
+ """
29
+ The set of arguments for constructing a CostAllocationRule resource.
30
+ :param pulumi.Input[str] billing_account_id: BillingAccount ID
31
+ :param pulumi.Input['CostAllocationRulePropertiesArgs'] properties: Cost allocation rule properties
32
+ :param pulumi.Input[str] rule_name: Cost allocation rule name. The name cannot include spaces or any non alphanumeric characters other than '_' and '-'. The max length is 260 characters.
33
+ """
34
+ pulumi.set(__self__, "billing_account_id", billing_account_id)
35
+ if properties is not None:
36
+ pulumi.set(__self__, "properties", properties)
37
+ if rule_name is not None:
38
+ pulumi.set(__self__, "rule_name", rule_name)
39
+
40
+ @property
41
+ @pulumi.getter(name="billingAccountId")
42
+ def billing_account_id(self) -> pulumi.Input[str]:
43
+ """
44
+ BillingAccount ID
45
+ """
46
+ return pulumi.get(self, "billing_account_id")
47
+
48
+ @billing_account_id.setter
49
+ def billing_account_id(self, value: pulumi.Input[str]):
50
+ pulumi.set(self, "billing_account_id", value)
51
+
52
+ @property
53
+ @pulumi.getter
54
+ def properties(self) -> Optional[pulumi.Input['CostAllocationRulePropertiesArgs']]:
55
+ """
56
+ Cost allocation rule properties
57
+ """
58
+ return pulumi.get(self, "properties")
59
+
60
+ @properties.setter
61
+ def properties(self, value: Optional[pulumi.Input['CostAllocationRulePropertiesArgs']]):
62
+ pulumi.set(self, "properties", value)
63
+
64
+ @property
65
+ @pulumi.getter(name="ruleName")
66
+ def rule_name(self) -> Optional[pulumi.Input[str]]:
67
+ """
68
+ Cost allocation rule name. The name cannot include spaces or any non alphanumeric characters other than '_' and '-'. The max length is 260 characters.
69
+ """
70
+ return pulumi.get(self, "rule_name")
71
+
72
+ @rule_name.setter
73
+ def rule_name(self, value: Optional[pulumi.Input[str]]):
74
+ pulumi.set(self, "rule_name", value)
75
+
76
+
77
+ class CostAllocationRule(pulumi.CustomResource):
78
+ @overload
79
+ def __init__(__self__,
80
+ resource_name: str,
81
+ opts: Optional[pulumi.ResourceOptions] = None,
82
+ billing_account_id: Optional[pulumi.Input[str]] = None,
83
+ properties: Optional[pulumi.Input[Union['CostAllocationRulePropertiesArgs', 'CostAllocationRulePropertiesArgsDict']]] = None,
84
+ rule_name: Optional[pulumi.Input[str]] = None,
85
+ __props__=None):
86
+ """
87
+ The cost allocation rule model definition
88
+
89
+ :param str resource_name: The name of the resource.
90
+ :param pulumi.ResourceOptions opts: Options for the resource.
91
+ :param pulumi.Input[str] billing_account_id: BillingAccount ID
92
+ :param pulumi.Input[Union['CostAllocationRulePropertiesArgs', 'CostAllocationRulePropertiesArgsDict']] properties: Cost allocation rule properties
93
+ :param pulumi.Input[str] rule_name: Cost allocation rule name. The name cannot include spaces or any non alphanumeric characters other than '_' and '-'. The max length is 260 characters.
94
+ """
95
+ ...
96
+ @overload
97
+ def __init__(__self__,
98
+ resource_name: str,
99
+ args: CostAllocationRuleArgs,
100
+ opts: Optional[pulumi.ResourceOptions] = None):
101
+ """
102
+ The cost allocation rule model definition
103
+
104
+ :param str resource_name: The name of the resource.
105
+ :param CostAllocationRuleArgs args: The arguments to use to populate this resource's properties.
106
+ :param pulumi.ResourceOptions opts: Options for the resource.
107
+ """
108
+ ...
109
+ def __init__(__self__, resource_name: str, *args, **kwargs):
110
+ resource_args, opts = _utilities.get_resource_args_opts(CostAllocationRuleArgs, pulumi.ResourceOptions, *args, **kwargs)
111
+ if resource_args is not None:
112
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
113
+ else:
114
+ __self__._internal_init(resource_name, *args, **kwargs)
115
+
116
+ def _internal_init(__self__,
117
+ resource_name: str,
118
+ opts: Optional[pulumi.ResourceOptions] = None,
119
+ billing_account_id: Optional[pulumi.Input[str]] = None,
120
+ properties: Optional[pulumi.Input[Union['CostAllocationRulePropertiesArgs', 'CostAllocationRulePropertiesArgsDict']]] = None,
121
+ rule_name: Optional[pulumi.Input[str]] = None,
122
+ __props__=None):
123
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
124
+ if not isinstance(opts, pulumi.ResourceOptions):
125
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
126
+ if opts.id is None:
127
+ if __props__ is not None:
128
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
129
+ __props__ = CostAllocationRuleArgs.__new__(CostAllocationRuleArgs)
130
+
131
+ if billing_account_id is None and not opts.urn:
132
+ raise TypeError("Missing required property 'billing_account_id'")
133
+ __props__.__dict__["billing_account_id"] = billing_account_id
134
+ __props__.__dict__["properties"] = properties
135
+ __props__.__dict__["rule_name"] = rule_name
136
+ __props__.__dict__["name"] = None
137
+ __props__.__dict__["type"] = None
138
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="azure-native:costmanagement:CostAllocationRule"), pulumi.Alias(type_="azure-native:costmanagement/v20200301preview:CostAllocationRule"), pulumi.Alias(type_="azure-native:costmanagement/v20230801:CostAllocationRule"), pulumi.Alias(type_="azure-native:costmanagement/v20230901:CostAllocationRule"), pulumi.Alias(type_="azure-native:costmanagement/v20231101:CostAllocationRule")])
139
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
140
+ super(CostAllocationRule, __self__).__init__(
141
+ 'azure-native:costmanagement/v20240801:CostAllocationRule',
142
+ resource_name,
143
+ __props__,
144
+ opts)
145
+
146
+ @staticmethod
147
+ def get(resource_name: str,
148
+ id: pulumi.Input[str],
149
+ opts: Optional[pulumi.ResourceOptions] = None) -> 'CostAllocationRule':
150
+ """
151
+ Get an existing CostAllocationRule resource's state with the given name, id, and optional extra
152
+ properties used to qualify the lookup.
153
+
154
+ :param str resource_name: The unique name of the resulting resource.
155
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
156
+ :param pulumi.ResourceOptions opts: Options for the resource.
157
+ """
158
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
159
+
160
+ __props__ = CostAllocationRuleArgs.__new__(CostAllocationRuleArgs)
161
+
162
+ __props__.__dict__["name"] = None
163
+ __props__.__dict__["properties"] = None
164
+ __props__.__dict__["type"] = None
165
+ return CostAllocationRule(resource_name, opts=opts, __props__=__props__)
166
+
167
+ @property
168
+ @pulumi.getter
169
+ def name(self) -> pulumi.Output[str]:
170
+ """
171
+ Name of the rule. This is a read only value.
172
+ """
173
+ return pulumi.get(self, "name")
174
+
175
+ @property
176
+ @pulumi.getter
177
+ def properties(self) -> pulumi.Output['outputs.CostAllocationRulePropertiesResponse']:
178
+ """
179
+ Cost allocation rule properties
180
+ """
181
+ return pulumi.get(self, "properties")
182
+
183
+ @property
184
+ @pulumi.getter
185
+ def type(self) -> pulumi.Output[str]:
186
+ """
187
+ Resource type of the rule. This is a read only value of Microsoft.CostManagement/CostAllocationRule.
188
+ """
189
+ return pulumi.get(self, "type")
190
+
@@ -0,0 +1,415 @@
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 . import outputs
17
+ from ._enums import *
18
+ from ._inputs import *
19
+
20
+ __all__ = ['ExportArgs', 'Export']
21
+
22
+ @pulumi.input_type
23
+ class ExportArgs:
24
+ def __init__(__self__, *,
25
+ definition: pulumi.Input['ExportDefinitionArgs'],
26
+ delivery_info: pulumi.Input['ExportDeliveryInfoArgs'],
27
+ scope: pulumi.Input[str],
28
+ e_tag: Optional[pulumi.Input[str]] = None,
29
+ export_name: Optional[pulumi.Input[str]] = None,
30
+ format: Optional[pulumi.Input[Union[str, 'FormatType']]] = None,
31
+ identity: Optional[pulumi.Input['SystemAssignedServiceIdentityArgs']] = None,
32
+ location: Optional[pulumi.Input[str]] = None,
33
+ partition_data: Optional[pulumi.Input[bool]] = None,
34
+ schedule: Optional[pulumi.Input['ExportScheduleArgs']] = None):
35
+ """
36
+ The set of arguments for constructing a Export resource.
37
+ :param pulumi.Input['ExportDefinitionArgs'] definition: Has the definition for the export.
38
+ :param pulumi.Input['ExportDeliveryInfoArgs'] delivery_info: Has delivery information for the export.
39
+ :param pulumi.Input[str] scope: The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.
40
+ :param pulumi.Input[str] e_tag: eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
41
+ :param pulumi.Input[str] export_name: Export Name.
42
+ :param pulumi.Input[Union[str, 'FormatType']] format: The format of the export being delivered. Currently only 'Csv' is supported.
43
+ :param pulumi.Input['SystemAssignedServiceIdentityArgs'] identity: The managed identity associated with Export
44
+ :param pulumi.Input[str] location: The location of the Export's managed identity. Only required when utilizing managed identity.
45
+ :param pulumi.Input[bool] partition_data: If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes.
46
+ :param pulumi.Input['ExportScheduleArgs'] schedule: Has schedule information for the export.
47
+ """
48
+ pulumi.set(__self__, "definition", definition)
49
+ pulumi.set(__self__, "delivery_info", delivery_info)
50
+ pulumi.set(__self__, "scope", scope)
51
+ if e_tag is not None:
52
+ pulumi.set(__self__, "e_tag", e_tag)
53
+ if export_name is not None:
54
+ pulumi.set(__self__, "export_name", export_name)
55
+ if format is not None:
56
+ pulumi.set(__self__, "format", format)
57
+ if identity is not None:
58
+ pulumi.set(__self__, "identity", identity)
59
+ if location is not None:
60
+ pulumi.set(__self__, "location", location)
61
+ if partition_data is not None:
62
+ pulumi.set(__self__, "partition_data", partition_data)
63
+ if schedule is not None:
64
+ pulumi.set(__self__, "schedule", schedule)
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def definition(self) -> pulumi.Input['ExportDefinitionArgs']:
69
+ """
70
+ Has the definition for the export.
71
+ """
72
+ return pulumi.get(self, "definition")
73
+
74
+ @definition.setter
75
+ def definition(self, value: pulumi.Input['ExportDefinitionArgs']):
76
+ pulumi.set(self, "definition", value)
77
+
78
+ @property
79
+ @pulumi.getter(name="deliveryInfo")
80
+ def delivery_info(self) -> pulumi.Input['ExportDeliveryInfoArgs']:
81
+ """
82
+ Has delivery information for the export.
83
+ """
84
+ return pulumi.get(self, "delivery_info")
85
+
86
+ @delivery_info.setter
87
+ def delivery_info(self, value: pulumi.Input['ExportDeliveryInfoArgs']):
88
+ pulumi.set(self, "delivery_info", value)
89
+
90
+ @property
91
+ @pulumi.getter
92
+ def scope(self) -> pulumi.Input[str]:
93
+ """
94
+ The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.
95
+ """
96
+ return pulumi.get(self, "scope")
97
+
98
+ @scope.setter
99
+ def scope(self, value: pulumi.Input[str]):
100
+ pulumi.set(self, "scope", value)
101
+
102
+ @property
103
+ @pulumi.getter(name="eTag")
104
+ def e_tag(self) -> Optional[pulumi.Input[str]]:
105
+ """
106
+ eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
107
+ """
108
+ return pulumi.get(self, "e_tag")
109
+
110
+ @e_tag.setter
111
+ def e_tag(self, value: Optional[pulumi.Input[str]]):
112
+ pulumi.set(self, "e_tag", value)
113
+
114
+ @property
115
+ @pulumi.getter(name="exportName")
116
+ def export_name(self) -> Optional[pulumi.Input[str]]:
117
+ """
118
+ Export Name.
119
+ """
120
+ return pulumi.get(self, "export_name")
121
+
122
+ @export_name.setter
123
+ def export_name(self, value: Optional[pulumi.Input[str]]):
124
+ pulumi.set(self, "export_name", value)
125
+
126
+ @property
127
+ @pulumi.getter
128
+ def format(self) -> Optional[pulumi.Input[Union[str, 'FormatType']]]:
129
+ """
130
+ The format of the export being delivered. Currently only 'Csv' is supported.
131
+ """
132
+ return pulumi.get(self, "format")
133
+
134
+ @format.setter
135
+ def format(self, value: Optional[pulumi.Input[Union[str, 'FormatType']]]):
136
+ pulumi.set(self, "format", value)
137
+
138
+ @property
139
+ @pulumi.getter
140
+ def identity(self) -> Optional[pulumi.Input['SystemAssignedServiceIdentityArgs']]:
141
+ """
142
+ The managed identity associated with Export
143
+ """
144
+ return pulumi.get(self, "identity")
145
+
146
+ @identity.setter
147
+ def identity(self, value: Optional[pulumi.Input['SystemAssignedServiceIdentityArgs']]):
148
+ pulumi.set(self, "identity", value)
149
+
150
+ @property
151
+ @pulumi.getter
152
+ def location(self) -> Optional[pulumi.Input[str]]:
153
+ """
154
+ The location of the Export's managed identity. Only required when utilizing managed identity.
155
+ """
156
+ return pulumi.get(self, "location")
157
+
158
+ @location.setter
159
+ def location(self, value: Optional[pulumi.Input[str]]):
160
+ pulumi.set(self, "location", value)
161
+
162
+ @property
163
+ @pulumi.getter(name="partitionData")
164
+ def partition_data(self) -> Optional[pulumi.Input[bool]]:
165
+ """
166
+ If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes.
167
+ """
168
+ return pulumi.get(self, "partition_data")
169
+
170
+ @partition_data.setter
171
+ def partition_data(self, value: Optional[pulumi.Input[bool]]):
172
+ pulumi.set(self, "partition_data", value)
173
+
174
+ @property
175
+ @pulumi.getter
176
+ def schedule(self) -> Optional[pulumi.Input['ExportScheduleArgs']]:
177
+ """
178
+ Has schedule information for the export.
179
+ """
180
+ return pulumi.get(self, "schedule")
181
+
182
+ @schedule.setter
183
+ def schedule(self, value: Optional[pulumi.Input['ExportScheduleArgs']]):
184
+ pulumi.set(self, "schedule", value)
185
+
186
+
187
+ class Export(pulumi.CustomResource):
188
+ @overload
189
+ def __init__(__self__,
190
+ resource_name: str,
191
+ opts: Optional[pulumi.ResourceOptions] = None,
192
+ definition: Optional[pulumi.Input[Union['ExportDefinitionArgs', 'ExportDefinitionArgsDict']]] = None,
193
+ delivery_info: Optional[pulumi.Input[Union['ExportDeliveryInfoArgs', 'ExportDeliveryInfoArgsDict']]] = None,
194
+ e_tag: Optional[pulumi.Input[str]] = None,
195
+ export_name: Optional[pulumi.Input[str]] = None,
196
+ format: Optional[pulumi.Input[Union[str, 'FormatType']]] = None,
197
+ identity: Optional[pulumi.Input[Union['SystemAssignedServiceIdentityArgs', 'SystemAssignedServiceIdentityArgsDict']]] = None,
198
+ location: Optional[pulumi.Input[str]] = None,
199
+ partition_data: Optional[pulumi.Input[bool]] = None,
200
+ schedule: Optional[pulumi.Input[Union['ExportScheduleArgs', 'ExportScheduleArgsDict']]] = None,
201
+ scope: Optional[pulumi.Input[str]] = None,
202
+ __props__=None):
203
+ """
204
+ An export resource.
205
+
206
+ :param str resource_name: The name of the resource.
207
+ :param pulumi.ResourceOptions opts: Options for the resource.
208
+ :param pulumi.Input[Union['ExportDefinitionArgs', 'ExportDefinitionArgsDict']] definition: Has the definition for the export.
209
+ :param pulumi.Input[Union['ExportDeliveryInfoArgs', 'ExportDeliveryInfoArgsDict']] delivery_info: Has delivery information for the export.
210
+ :param pulumi.Input[str] e_tag: eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
211
+ :param pulumi.Input[str] export_name: Export Name.
212
+ :param pulumi.Input[Union[str, 'FormatType']] format: The format of the export being delivered. Currently only 'Csv' is supported.
213
+ :param pulumi.Input[Union['SystemAssignedServiceIdentityArgs', 'SystemAssignedServiceIdentityArgsDict']] identity: The managed identity associated with Export
214
+ :param pulumi.Input[str] location: The location of the Export's managed identity. Only required when utilizing managed identity.
215
+ :param pulumi.Input[bool] partition_data: If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes.
216
+ :param pulumi.Input[Union['ExportScheduleArgs', 'ExportScheduleArgsDict']] schedule: Has schedule information for the export.
217
+ :param pulumi.Input[str] scope: The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.
218
+ """
219
+ ...
220
+ @overload
221
+ def __init__(__self__,
222
+ resource_name: str,
223
+ args: ExportArgs,
224
+ opts: Optional[pulumi.ResourceOptions] = None):
225
+ """
226
+ An export resource.
227
+
228
+ :param str resource_name: The name of the resource.
229
+ :param ExportArgs args: The arguments to use to populate this resource's properties.
230
+ :param pulumi.ResourceOptions opts: Options for the resource.
231
+ """
232
+ ...
233
+ def __init__(__self__, resource_name: str, *args, **kwargs):
234
+ resource_args, opts = _utilities.get_resource_args_opts(ExportArgs, pulumi.ResourceOptions, *args, **kwargs)
235
+ if resource_args is not None:
236
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
237
+ else:
238
+ __self__._internal_init(resource_name, *args, **kwargs)
239
+
240
+ def _internal_init(__self__,
241
+ resource_name: str,
242
+ opts: Optional[pulumi.ResourceOptions] = None,
243
+ definition: Optional[pulumi.Input[Union['ExportDefinitionArgs', 'ExportDefinitionArgsDict']]] = None,
244
+ delivery_info: Optional[pulumi.Input[Union['ExportDeliveryInfoArgs', 'ExportDeliveryInfoArgsDict']]] = None,
245
+ e_tag: Optional[pulumi.Input[str]] = None,
246
+ export_name: Optional[pulumi.Input[str]] = None,
247
+ format: Optional[pulumi.Input[Union[str, 'FormatType']]] = None,
248
+ identity: Optional[pulumi.Input[Union['SystemAssignedServiceIdentityArgs', 'SystemAssignedServiceIdentityArgsDict']]] = None,
249
+ location: Optional[pulumi.Input[str]] = None,
250
+ partition_data: Optional[pulumi.Input[bool]] = None,
251
+ schedule: Optional[pulumi.Input[Union['ExportScheduleArgs', 'ExportScheduleArgsDict']]] = None,
252
+ scope: Optional[pulumi.Input[str]] = None,
253
+ __props__=None):
254
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
255
+ if not isinstance(opts, pulumi.ResourceOptions):
256
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
257
+ if opts.id is None:
258
+ if __props__ is not None:
259
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
260
+ __props__ = ExportArgs.__new__(ExportArgs)
261
+
262
+ if definition is None and not opts.urn:
263
+ raise TypeError("Missing required property 'definition'")
264
+ __props__.__dict__["definition"] = definition
265
+ if delivery_info is None and not opts.urn:
266
+ raise TypeError("Missing required property 'delivery_info'")
267
+ __props__.__dict__["delivery_info"] = delivery_info
268
+ __props__.__dict__["e_tag"] = e_tag
269
+ __props__.__dict__["export_name"] = export_name
270
+ __props__.__dict__["format"] = format
271
+ __props__.__dict__["identity"] = identity
272
+ __props__.__dict__["location"] = location
273
+ __props__.__dict__["partition_data"] = partition_data
274
+ __props__.__dict__["schedule"] = schedule
275
+ if scope is None and not opts.urn:
276
+ raise TypeError("Missing required property 'scope'")
277
+ __props__.__dict__["scope"] = scope
278
+ __props__.__dict__["name"] = None
279
+ __props__.__dict__["next_run_time_estimate"] = None
280
+ __props__.__dict__["run_history"] = None
281
+ __props__.__dict__["type"] = None
282
+ alias_opts = pulumi.ResourceOptions(aliases=[pulumi.Alias(type_="azure-native:costmanagement:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20190101:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20190901:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20191001:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20191101:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20200601:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20201201preview:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20210101:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20211001:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20221001:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20230301:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20230401preview:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20230701preview:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20230801:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20230901:Export"), pulumi.Alias(type_="azure-native:costmanagement/v20231101:Export")])
283
+ opts = pulumi.ResourceOptions.merge(opts, alias_opts)
284
+ super(Export, __self__).__init__(
285
+ 'azure-native:costmanagement/v20240801:Export',
286
+ resource_name,
287
+ __props__,
288
+ opts)
289
+
290
+ @staticmethod
291
+ def get(resource_name: str,
292
+ id: pulumi.Input[str],
293
+ opts: Optional[pulumi.ResourceOptions] = None) -> 'Export':
294
+ """
295
+ Get an existing Export resource's state with the given name, id, and optional extra
296
+ properties used to qualify the lookup.
297
+
298
+ :param str resource_name: The unique name of the resulting resource.
299
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
300
+ :param pulumi.ResourceOptions opts: Options for the resource.
301
+ """
302
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
303
+
304
+ __props__ = ExportArgs.__new__(ExportArgs)
305
+
306
+ __props__.__dict__["definition"] = None
307
+ __props__.__dict__["delivery_info"] = None
308
+ __props__.__dict__["e_tag"] = None
309
+ __props__.__dict__["format"] = None
310
+ __props__.__dict__["identity"] = None
311
+ __props__.__dict__["location"] = None
312
+ __props__.__dict__["name"] = None
313
+ __props__.__dict__["next_run_time_estimate"] = None
314
+ __props__.__dict__["partition_data"] = None
315
+ __props__.__dict__["run_history"] = None
316
+ __props__.__dict__["schedule"] = None
317
+ __props__.__dict__["type"] = None
318
+ return Export(resource_name, opts=opts, __props__=__props__)
319
+
320
+ @property
321
+ @pulumi.getter
322
+ def definition(self) -> pulumi.Output['outputs.ExportDefinitionResponse']:
323
+ """
324
+ Has the definition for the export.
325
+ """
326
+ return pulumi.get(self, "definition")
327
+
328
+ @property
329
+ @pulumi.getter(name="deliveryInfo")
330
+ def delivery_info(self) -> pulumi.Output['outputs.ExportDeliveryInfoResponse']:
331
+ """
332
+ Has delivery information for the export.
333
+ """
334
+ return pulumi.get(self, "delivery_info")
335
+
336
+ @property
337
+ @pulumi.getter(name="eTag")
338
+ def e_tag(self) -> pulumi.Output[Optional[str]]:
339
+ """
340
+ eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
341
+ """
342
+ return pulumi.get(self, "e_tag")
343
+
344
+ @property
345
+ @pulumi.getter
346
+ def format(self) -> pulumi.Output[Optional[str]]:
347
+ """
348
+ The format of the export being delivered. Currently only 'Csv' is supported.
349
+ """
350
+ return pulumi.get(self, "format")
351
+
352
+ @property
353
+ @pulumi.getter
354
+ def identity(self) -> pulumi.Output[Optional['outputs.SystemAssignedServiceIdentityResponse']]:
355
+ """
356
+ The managed identity associated with Export
357
+ """
358
+ return pulumi.get(self, "identity")
359
+
360
+ @property
361
+ @pulumi.getter
362
+ def location(self) -> pulumi.Output[Optional[str]]:
363
+ """
364
+ The location of the Export's managed identity. Only required when utilizing managed identity.
365
+ """
366
+ return pulumi.get(self, "location")
367
+
368
+ @property
369
+ @pulumi.getter
370
+ def name(self) -> pulumi.Output[str]:
371
+ """
372
+ Resource name.
373
+ """
374
+ return pulumi.get(self, "name")
375
+
376
+ @property
377
+ @pulumi.getter(name="nextRunTimeEstimate")
378
+ def next_run_time_estimate(self) -> pulumi.Output[str]:
379
+ """
380
+ If the export has an active schedule, provides an estimate of the next run time.
381
+ """
382
+ return pulumi.get(self, "next_run_time_estimate")
383
+
384
+ @property
385
+ @pulumi.getter(name="partitionData")
386
+ def partition_data(self) -> pulumi.Output[Optional[bool]]:
387
+ """
388
+ If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes.
389
+ """
390
+ return pulumi.get(self, "partition_data")
391
+
392
+ @property
393
+ @pulumi.getter(name="runHistory")
394
+ def run_history(self) -> pulumi.Output[Optional['outputs.ExportExecutionListResultResponse']]:
395
+ """
396
+ If requested, has the most recent run history for the export.
397
+ """
398
+ return pulumi.get(self, "run_history")
399
+
400
+ @property
401
+ @pulumi.getter
402
+ def schedule(self) -> pulumi.Output[Optional['outputs.ExportScheduleResponse']]:
403
+ """
404
+ Has schedule information for the export.
405
+ """
406
+ return pulumi.get(self, "schedule")
407
+
408
+ @property
409
+ @pulumi.getter
410
+ def type(self) -> pulumi.Output[str]:
411
+ """
412
+ Resource type.
413
+ """
414
+ return pulumi.get(self, "type")
415
+