pulumi-azure-native 2.68.0a1729519840__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.
- pulumi_azure_native/__init__.py +29 -0
- pulumi_azure_native/awsconnector/_inputs.py +132 -96
- pulumi_azure_native/awsconnector/outputs.py +120 -66
- pulumi_azure_native/awsconnector/v20241201/_inputs.py +132 -96
- pulumi_azure_native/awsconnector/v20241201/outputs.py +120 -66
- pulumi_azure_native/cache/__init__.py +3 -0
- pulumi_azure_native/cache/access_policy.py +3 -3
- pulumi_azure_native/cache/access_policy_assignment.py +3 -3
- pulumi_azure_native/cache/firewall_rule.py +3 -3
- pulumi_azure_native/cache/get_access_policy.py +2 -2
- pulumi_azure_native/cache/get_access_policy_assignment.py +2 -2
- pulumi_azure_native/cache/get_firewall_rule.py +2 -2
- pulumi_azure_native/cache/get_linked_server.py +2 -2
- pulumi_azure_native/cache/get_patch_schedule.py +2 -2
- pulumi_azure_native/cache/get_private_endpoint_connection.py +2 -2
- pulumi_azure_native/cache/get_redis.py +2 -2
- pulumi_azure_native/cache/linked_server.py +3 -3
- pulumi_azure_native/cache/list_redis_keys.py +2 -2
- pulumi_azure_native/cache/patch_schedule.py +3 -3
- pulumi_azure_native/cache/private_endpoint_connection.py +3 -3
- pulumi_azure_native/cache/redis.py +3 -3
- pulumi_azure_native/cache/v20200601/redis.py +1 -1
- pulumi_azure_native/cache/v20230401/firewall_rule.py +1 -1
- pulumi_azure_native/cache/v20230401/linked_server.py +1 -1
- pulumi_azure_native/cache/v20230401/patch_schedule.py +1 -1
- pulumi_azure_native/cache/v20230401/private_endpoint_connection.py +1 -1
- pulumi_azure_native/cache/v20230401/redis.py +1 -1
- pulumi_azure_native/cache/v20230501preview/access_policy.py +1 -1
- pulumi_azure_native/cache/v20230501preview/access_policy_assignment.py +1 -1
- pulumi_azure_native/cache/v20230501preview/firewall_rule.py +1 -1
- pulumi_azure_native/cache/v20230501preview/linked_server.py +1 -1
- pulumi_azure_native/cache/v20230501preview/patch_schedule.py +1 -1
- pulumi_azure_native/cache/v20230501preview/private_endpoint_connection.py +1 -1
- pulumi_azure_native/cache/v20230501preview/redis.py +1 -1
- pulumi_azure_native/cache/v20230801/access_policy.py +1 -1
- pulumi_azure_native/cache/v20230801/access_policy_assignment.py +1 -1
- pulumi_azure_native/cache/v20230801/firewall_rule.py +1 -1
- pulumi_azure_native/cache/v20230801/linked_server.py +1 -1
- pulumi_azure_native/cache/v20230801/patch_schedule.py +1 -1
- pulumi_azure_native/cache/v20230801/private_endpoint_connection.py +1 -1
- pulumi_azure_native/cache/v20230801/redis.py +1 -1
- pulumi_azure_native/cache/v20240301/access_policy.py +1 -1
- pulumi_azure_native/cache/v20240301/access_policy_assignment.py +1 -1
- pulumi_azure_native/cache/v20240301/firewall_rule.py +1 -1
- pulumi_azure_native/cache/v20240301/linked_server.py +1 -1
- pulumi_azure_native/cache/v20240301/patch_schedule.py +1 -1
- pulumi_azure_native/cache/v20240301/private_endpoint_connection.py +1 -1
- pulumi_azure_native/cache/v20240301/redis.py +1 -1
- pulumi_azure_native/cache/v20240401preview/access_policy.py +1 -1
- pulumi_azure_native/cache/v20240401preview/access_policy_assignment.py +1 -1
- pulumi_azure_native/cache/v20240401preview/firewall_rule.py +1 -1
- pulumi_azure_native/cache/v20240401preview/linked_server.py +1 -1
- pulumi_azure_native/cache/v20240401preview/patch_schedule.py +1 -1
- pulumi_azure_native/cache/v20240401preview/private_endpoint_connection.py +1 -1
- pulumi_azure_native/cache/v20240401preview/redis.py +1 -1
- pulumi_azure_native/cache/v20241101/__init__.py +25 -0
- pulumi_azure_native/cache/v20241101/_enums.py +111 -0
- pulumi_azure_native/cache/v20241101/_inputs.py +646 -0
- pulumi_azure_native/cache/v20241101/access_policy.py +219 -0
- pulumi_azure_native/cache/v20241101/access_policy_assignment.py +279 -0
- pulumi_azure_native/cache/v20241101/firewall_rule.py +239 -0
- pulumi_azure_native/cache/v20241101/get_access_policy.py +148 -0
- pulumi_azure_native/cache/v20241101/get_access_policy_assignment.py +176 -0
- pulumi_azure_native/cache/v20241101/get_firewall_rule.py +148 -0
- pulumi_azure_native/cache/v20241101/get_linked_server.py +204 -0
- pulumi_azure_native/cache/v20241101/get_patch_schedule.py +149 -0
- pulumi_azure_native/cache/v20241101/get_private_endpoint_connection.py +163 -0
- pulumi_azure_native/cache/v20241101/get_redis.py +493 -0
- pulumi_azure_native/cache/v20241101/linked_server.py +299 -0
- pulumi_azure_native/cache/v20241101/list_redis_keys.py +100 -0
- pulumi_azure_native/cache/v20241101/outputs.py +917 -0
- pulumi_azure_native/cache/v20241101/patch_schedule.py +221 -0
- pulumi_azure_native/cache/v20241101/private_endpoint_connection.py +232 -0
- pulumi_azure_native/cache/v20241101/redis.py +804 -0
- pulumi_azure_native/costmanagement/__init__.py +3 -0
- pulumi_azure_native/costmanagement/budget.py +3 -3
- pulumi_azure_native/costmanagement/cost_allocation_rule.py +3 -3
- pulumi_azure_native/costmanagement/export.py +3 -3
- pulumi_azure_native/costmanagement/get_budget.py +2 -2
- pulumi_azure_native/costmanagement/get_cost_allocation_rule.py +2 -2
- pulumi_azure_native/costmanagement/get_export.py +2 -2
- pulumi_azure_native/costmanagement/get_scheduled_action.py +2 -2
- pulumi_azure_native/costmanagement/get_scheduled_action_by_scope.py +2 -2
- pulumi_azure_native/costmanagement/get_view.py +2 -2
- pulumi_azure_native/costmanagement/get_view_by_scope.py +2 -2
- pulumi_azure_native/costmanagement/scheduled_action.py +3 -3
- pulumi_azure_native/costmanagement/scheduled_action_by_scope.py +3 -3
- pulumi_azure_native/costmanagement/tag_inheritance_setting.py +1 -1
- pulumi_azure_native/costmanagement/v20190401preview/budget.py +1 -1
- pulumi_azure_native/costmanagement/v20191001/export.py +1 -1
- pulumi_azure_native/costmanagement/v20191101/view.py +1 -1
- pulumi_azure_native/costmanagement/v20191101/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20200301preview/cost_allocation_rule.py +1 -1
- pulumi_azure_native/costmanagement/v20200601/view.py +1 -1
- pulumi_azure_native/costmanagement/v20200601/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20221001/view.py +1 -1
- pulumi_azure_native/costmanagement/v20221001/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20221005preview/tag_inheritance_setting.py +1 -1
- pulumi_azure_native/costmanagement/v20221005preview/view.py +1 -1
- pulumi_azure_native/costmanagement/v20221005preview/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230301/export.py +1 -1
- pulumi_azure_native/costmanagement/v20230301/scheduled_action.py +1 -1
- pulumi_azure_native/costmanagement/v20230301/scheduled_action_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230301/view.py +1 -1
- pulumi_azure_native/costmanagement/v20230301/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230401preview/budget.py +1 -1
- pulumi_azure_native/costmanagement/v20230401preview/export.py +1 -1
- pulumi_azure_native/costmanagement/v20230401preview/scheduled_action.py +1 -1
- pulumi_azure_native/costmanagement/v20230401preview/scheduled_action_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230401preview/view.py +1 -1
- pulumi_azure_native/costmanagement/v20230401preview/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230701preview/export.py +1 -1
- pulumi_azure_native/costmanagement/v20230701preview/scheduled_action.py +1 -1
- pulumi_azure_native/costmanagement/v20230701preview/scheduled_action_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230701preview/view.py +1 -1
- pulumi_azure_native/costmanagement/v20230701preview/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/budget.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/cost_allocation_rule.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/export.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/scheduled_action.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/scheduled_action_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/tag_inheritance_setting.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/view.py +1 -1
- pulumi_azure_native/costmanagement/v20230801/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/budget.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/cost_allocation_rule.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/export.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/scheduled_action.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/scheduled_action_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/tag_inheritance_setting.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/view.py +1 -1
- pulumi_azure_native/costmanagement/v20230901/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/budget.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/cost_allocation_rule.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/export.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/scheduled_action.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/scheduled_action_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/tag_inheritance_setting.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/view.py +1 -1
- pulumi_azure_native/costmanagement/v20231101/view_by_scope.py +1 -1
- pulumi_azure_native/costmanagement/v20240801/__init__.py +26 -0
- pulumi_azure_native/costmanagement/v20240801/_enums.py +538 -0
- pulumi_azure_native/costmanagement/v20240801/_inputs.py +2660 -0
- pulumi_azure_native/costmanagement/v20240801/budget.py +619 -0
- pulumi_azure_native/costmanagement/v20240801/cost_allocation_rule.py +190 -0
- pulumi_azure_native/costmanagement/v20240801/export.py +415 -0
- pulumi_azure_native/costmanagement/v20240801/get_budget.py +337 -0
- pulumi_azure_native/costmanagement/v20240801/get_cost_allocation_rule.py +129 -0
- pulumi_azure_native/costmanagement/v20240801/get_export.py +261 -0
- pulumi_azure_native/costmanagement/v20240801/get_scheduled_action.py +263 -0
- pulumi_azure_native/costmanagement/v20240801/get_scheduled_action_by_scope.py +269 -0
- pulumi_azure_native/costmanagement/v20240801/get_tag_inheritance_setting.py +144 -0
- pulumi_azure_native/costmanagement/v20240801/get_view.py +333 -0
- pulumi_azure_native/costmanagement/v20240801/get_view_by_scope.py +339 -0
- pulumi_azure_native/costmanagement/v20240801/outputs.py +2593 -0
- pulumi_azure_native/costmanagement/v20240801/scheduled_action.py +425 -0
- pulumi_azure_native/costmanagement/v20240801/scheduled_action_by_scope.py +426 -0
- pulumi_azure_native/costmanagement/v20240801/tag_inheritance_setting.py +222 -0
- pulumi_azure_native/costmanagement/v20240801/view.py +587 -0
- pulumi_azure_native/costmanagement/v20240801/view_by_scope.py +588 -0
- pulumi_azure_native/costmanagement/view.py +3 -3
- pulumi_azure_native/costmanagement/view_by_scope.py +3 -3
- pulumi_azure_native/pulumi-plugin.json +1 -1
- {pulumi_azure_native-2.68.0a1729519840.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/METADATA +1 -1
- {pulumi_azure_native-2.68.0a1729519840.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/RECORD +167 -128
- {pulumi_azure_native-2.68.0a1729519840.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/WHEEL +0 -0
- {pulumi_azure_native-2.68.0a1729519840.dist-info → pulumi_azure_native-2.68.0a1729615467.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,2593 @@
|
|
|
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
|
+
|
|
19
|
+
__all__ = [
|
|
20
|
+
'BudgetComparisonExpressionResponse',
|
|
21
|
+
'BudgetFilterPropertiesResponse',
|
|
22
|
+
'BudgetFilterResponse',
|
|
23
|
+
'BudgetTimePeriodResponse',
|
|
24
|
+
'CommonExportPropertiesResponse',
|
|
25
|
+
'CostAllocationProportionResponse',
|
|
26
|
+
'CostAllocationRuleDetailsResponse',
|
|
27
|
+
'CostAllocationRulePropertiesResponse',
|
|
28
|
+
'CurrentSpendResponse',
|
|
29
|
+
'ErrorDetailsResponse',
|
|
30
|
+
'ExportDatasetConfigurationResponse',
|
|
31
|
+
'ExportDatasetResponse',
|
|
32
|
+
'ExportDefinitionResponse',
|
|
33
|
+
'ExportDeliveryDestinationResponse',
|
|
34
|
+
'ExportDeliveryInfoResponse',
|
|
35
|
+
'ExportExecutionListResultResponse',
|
|
36
|
+
'ExportRecurrencePeriodResponse',
|
|
37
|
+
'ExportRunResponse',
|
|
38
|
+
'ExportScheduleResponse',
|
|
39
|
+
'ExportTimePeriodResponse',
|
|
40
|
+
'FileDestinationResponse',
|
|
41
|
+
'ForecastSpendResponse',
|
|
42
|
+
'KpiPropertiesResponse',
|
|
43
|
+
'NotificationPropertiesResponse',
|
|
44
|
+
'NotificationResponse',
|
|
45
|
+
'PivotPropertiesResponse',
|
|
46
|
+
'ReportConfigAggregationResponse',
|
|
47
|
+
'ReportConfigComparisonExpressionResponse',
|
|
48
|
+
'ReportConfigDatasetConfigurationResponse',
|
|
49
|
+
'ReportConfigDatasetResponse',
|
|
50
|
+
'ReportConfigFilterResponse',
|
|
51
|
+
'ReportConfigGroupingResponse',
|
|
52
|
+
'ReportConfigSortingResponse',
|
|
53
|
+
'ReportConfigTimePeriodResponse',
|
|
54
|
+
'SchedulePropertiesResponse',
|
|
55
|
+
'SourceCostAllocationResourceResponse',
|
|
56
|
+
'SystemAssignedServiceIdentityResponse',
|
|
57
|
+
'SystemDataResponse',
|
|
58
|
+
'TagInheritancePropertiesResponse',
|
|
59
|
+
'TargetCostAllocationResourceResponse',
|
|
60
|
+
]
|
|
61
|
+
|
|
62
|
+
@pulumi.output_type
|
|
63
|
+
class BudgetComparisonExpressionResponse(dict):
|
|
64
|
+
"""
|
|
65
|
+
The comparison expression to be used in the budgets.
|
|
66
|
+
"""
|
|
67
|
+
def __init__(__self__, *,
|
|
68
|
+
name: str,
|
|
69
|
+
operator: str,
|
|
70
|
+
values: Sequence[str]):
|
|
71
|
+
"""
|
|
72
|
+
The comparison expression to be used in the budgets.
|
|
73
|
+
:param str name: The name of the column to use in comparison.
|
|
74
|
+
:param str operator: The operator to use for comparison.
|
|
75
|
+
:param Sequence[str] values: Array of values to use for comparison
|
|
76
|
+
"""
|
|
77
|
+
pulumi.set(__self__, "name", name)
|
|
78
|
+
pulumi.set(__self__, "operator", operator)
|
|
79
|
+
pulumi.set(__self__, "values", values)
|
|
80
|
+
|
|
81
|
+
@property
|
|
82
|
+
@pulumi.getter
|
|
83
|
+
def name(self) -> str:
|
|
84
|
+
"""
|
|
85
|
+
The name of the column to use in comparison.
|
|
86
|
+
"""
|
|
87
|
+
return pulumi.get(self, "name")
|
|
88
|
+
|
|
89
|
+
@property
|
|
90
|
+
@pulumi.getter
|
|
91
|
+
def operator(self) -> str:
|
|
92
|
+
"""
|
|
93
|
+
The operator to use for comparison.
|
|
94
|
+
"""
|
|
95
|
+
return pulumi.get(self, "operator")
|
|
96
|
+
|
|
97
|
+
@property
|
|
98
|
+
@pulumi.getter
|
|
99
|
+
def values(self) -> Sequence[str]:
|
|
100
|
+
"""
|
|
101
|
+
Array of values to use for comparison
|
|
102
|
+
"""
|
|
103
|
+
return pulumi.get(self, "values")
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
@pulumi.output_type
|
|
107
|
+
class BudgetFilterPropertiesResponse(dict):
|
|
108
|
+
"""
|
|
109
|
+
The Dimensions or Tags to filter a budget by.
|
|
110
|
+
|
|
111
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
112
|
+
"""
|
|
113
|
+
def __init__(__self__, *,
|
|
114
|
+
dimensions: Optional['outputs.BudgetComparisonExpressionResponse'] = None,
|
|
115
|
+
tags: Optional['outputs.BudgetComparisonExpressionResponse'] = None):
|
|
116
|
+
"""
|
|
117
|
+
The Dimensions or Tags to filter a budget by.
|
|
118
|
+
|
|
119
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
120
|
+
:param 'BudgetComparisonExpressionResponse' dimensions: Has comparison expression for a dimension.
|
|
121
|
+
|
|
122
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
123
|
+
|
|
124
|
+
Supported dimension names for **CategoryType: ReservationUtilization**
|
|
125
|
+
- ReservationId
|
|
126
|
+
- ReservedResourceType
|
|
127
|
+
:param 'BudgetComparisonExpressionResponse' tags: Has comparison expression for a tag.
|
|
128
|
+
|
|
129
|
+
Supported for CategoryType(s): Cost.
|
|
130
|
+
"""
|
|
131
|
+
if dimensions is not None:
|
|
132
|
+
pulumi.set(__self__, "dimensions", dimensions)
|
|
133
|
+
if tags is not None:
|
|
134
|
+
pulumi.set(__self__, "tags", tags)
|
|
135
|
+
|
|
136
|
+
@property
|
|
137
|
+
@pulumi.getter
|
|
138
|
+
def dimensions(self) -> Optional['outputs.BudgetComparisonExpressionResponse']:
|
|
139
|
+
"""
|
|
140
|
+
Has comparison expression for a dimension.
|
|
141
|
+
|
|
142
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
143
|
+
|
|
144
|
+
Supported dimension names for **CategoryType: ReservationUtilization**
|
|
145
|
+
- ReservationId
|
|
146
|
+
- ReservedResourceType
|
|
147
|
+
"""
|
|
148
|
+
return pulumi.get(self, "dimensions")
|
|
149
|
+
|
|
150
|
+
@property
|
|
151
|
+
@pulumi.getter
|
|
152
|
+
def tags(self) -> Optional['outputs.BudgetComparisonExpressionResponse']:
|
|
153
|
+
"""
|
|
154
|
+
Has comparison expression for a tag.
|
|
155
|
+
|
|
156
|
+
Supported for CategoryType(s): Cost.
|
|
157
|
+
"""
|
|
158
|
+
return pulumi.get(self, "tags")
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
@pulumi.output_type
|
|
162
|
+
class BudgetFilterResponse(dict):
|
|
163
|
+
"""
|
|
164
|
+
May be used to filter budgets by user-specified dimensions and/or tags.
|
|
165
|
+
|
|
166
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
167
|
+
"""
|
|
168
|
+
@staticmethod
|
|
169
|
+
def __key_warning(key: str):
|
|
170
|
+
suggest = None
|
|
171
|
+
if key == "and":
|
|
172
|
+
suggest = "and_"
|
|
173
|
+
|
|
174
|
+
if suggest:
|
|
175
|
+
pulumi.log.warn(f"Key '{key}' not found in BudgetFilterResponse. Access the value via the '{suggest}' property getter instead.")
|
|
176
|
+
|
|
177
|
+
def __getitem__(self, key: str) -> Any:
|
|
178
|
+
BudgetFilterResponse.__key_warning(key)
|
|
179
|
+
return super().__getitem__(key)
|
|
180
|
+
|
|
181
|
+
def get(self, key: str, default = None) -> Any:
|
|
182
|
+
BudgetFilterResponse.__key_warning(key)
|
|
183
|
+
return super().get(key, default)
|
|
184
|
+
|
|
185
|
+
def __init__(__self__, *,
|
|
186
|
+
and_: Optional[Sequence['outputs.BudgetFilterPropertiesResponse']] = None,
|
|
187
|
+
dimensions: Optional['outputs.BudgetComparisonExpressionResponse'] = None,
|
|
188
|
+
tags: Optional['outputs.BudgetComparisonExpressionResponse'] = None):
|
|
189
|
+
"""
|
|
190
|
+
May be used to filter budgets by user-specified dimensions and/or tags.
|
|
191
|
+
|
|
192
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
193
|
+
:param Sequence['BudgetFilterPropertiesResponse'] and_: The logical "AND" expression. Must have at least 2 items.
|
|
194
|
+
|
|
195
|
+
Supported for CategoryType(s): Cost.
|
|
196
|
+
:param 'BudgetComparisonExpressionResponse' dimensions: Has comparison expression for a dimension.
|
|
197
|
+
|
|
198
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
199
|
+
|
|
200
|
+
Supported dimension names for **CategoryType: ReservationUtilization**
|
|
201
|
+
- ReservationId
|
|
202
|
+
- ReservedResourceType
|
|
203
|
+
:param 'BudgetComparisonExpressionResponse' tags: Has comparison expression for a tag.
|
|
204
|
+
|
|
205
|
+
Supported for CategoryType(s): Cost.
|
|
206
|
+
"""
|
|
207
|
+
if and_ is not None:
|
|
208
|
+
pulumi.set(__self__, "and_", and_)
|
|
209
|
+
if dimensions is not None:
|
|
210
|
+
pulumi.set(__self__, "dimensions", dimensions)
|
|
211
|
+
if tags is not None:
|
|
212
|
+
pulumi.set(__self__, "tags", tags)
|
|
213
|
+
|
|
214
|
+
@property
|
|
215
|
+
@pulumi.getter(name="and")
|
|
216
|
+
def and_(self) -> Optional[Sequence['outputs.BudgetFilterPropertiesResponse']]:
|
|
217
|
+
"""
|
|
218
|
+
The logical "AND" expression. Must have at least 2 items.
|
|
219
|
+
|
|
220
|
+
Supported for CategoryType(s): Cost.
|
|
221
|
+
"""
|
|
222
|
+
return pulumi.get(self, "and_")
|
|
223
|
+
|
|
224
|
+
@property
|
|
225
|
+
@pulumi.getter
|
|
226
|
+
def dimensions(self) -> Optional['outputs.BudgetComparisonExpressionResponse']:
|
|
227
|
+
"""
|
|
228
|
+
Has comparison expression for a dimension.
|
|
229
|
+
|
|
230
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
231
|
+
|
|
232
|
+
Supported dimension names for **CategoryType: ReservationUtilization**
|
|
233
|
+
- ReservationId
|
|
234
|
+
- ReservedResourceType
|
|
235
|
+
"""
|
|
236
|
+
return pulumi.get(self, "dimensions")
|
|
237
|
+
|
|
238
|
+
@property
|
|
239
|
+
@pulumi.getter
|
|
240
|
+
def tags(self) -> Optional['outputs.BudgetComparisonExpressionResponse']:
|
|
241
|
+
"""
|
|
242
|
+
Has comparison expression for a tag.
|
|
243
|
+
|
|
244
|
+
Supported for CategoryType(s): Cost.
|
|
245
|
+
"""
|
|
246
|
+
return pulumi.get(self, "tags")
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
@pulumi.output_type
|
|
250
|
+
class BudgetTimePeriodResponse(dict):
|
|
251
|
+
"""
|
|
252
|
+
The time period that defines the active period of the budget. The budget will evaluate data on or after the startDate and will expire on the endDate.
|
|
253
|
+
|
|
254
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
255
|
+
|
|
256
|
+
Required for CategoryType(s): Cost, ReservationUtilization.
|
|
257
|
+
"""
|
|
258
|
+
@staticmethod
|
|
259
|
+
def __key_warning(key: str):
|
|
260
|
+
suggest = None
|
|
261
|
+
if key == "startDate":
|
|
262
|
+
suggest = "start_date"
|
|
263
|
+
elif key == "endDate":
|
|
264
|
+
suggest = "end_date"
|
|
265
|
+
|
|
266
|
+
if suggest:
|
|
267
|
+
pulumi.log.warn(f"Key '{key}' not found in BudgetTimePeriodResponse. Access the value via the '{suggest}' property getter instead.")
|
|
268
|
+
|
|
269
|
+
def __getitem__(self, key: str) -> Any:
|
|
270
|
+
BudgetTimePeriodResponse.__key_warning(key)
|
|
271
|
+
return super().__getitem__(key)
|
|
272
|
+
|
|
273
|
+
def get(self, key: str, default = None) -> Any:
|
|
274
|
+
BudgetTimePeriodResponse.__key_warning(key)
|
|
275
|
+
return super().get(key, default)
|
|
276
|
+
|
|
277
|
+
def __init__(__self__, *,
|
|
278
|
+
start_date: str,
|
|
279
|
+
end_date: Optional[str] = None):
|
|
280
|
+
"""
|
|
281
|
+
The time period that defines the active period of the budget. The budget will evaluate data on or after the startDate and will expire on the endDate.
|
|
282
|
+
|
|
283
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
284
|
+
|
|
285
|
+
Required for CategoryType(s): Cost, ReservationUtilization.
|
|
286
|
+
:param str start_date: The start date for the budget.
|
|
287
|
+
|
|
288
|
+
- Constraints for **CategoryType: Cost** - Must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period.
|
|
289
|
+
|
|
290
|
+
- Constraints for **CategoryType: ReservationUtilization** - Must be on or after the current date and less than the end date.
|
|
291
|
+
:param str end_date: The end date for the budget.
|
|
292
|
+
|
|
293
|
+
- Constraints for **CategoryType: Cost** - No constraints. If not provided, we default this to 10 years from the start date.
|
|
294
|
+
|
|
295
|
+
- Constraints for **CategoryType: ReservationUtilization** - End date cannot be more than 3 years after the start date.
|
|
296
|
+
"""
|
|
297
|
+
pulumi.set(__self__, "start_date", start_date)
|
|
298
|
+
if end_date is not None:
|
|
299
|
+
pulumi.set(__self__, "end_date", end_date)
|
|
300
|
+
|
|
301
|
+
@property
|
|
302
|
+
@pulumi.getter(name="startDate")
|
|
303
|
+
def start_date(self) -> str:
|
|
304
|
+
"""
|
|
305
|
+
The start date for the budget.
|
|
306
|
+
|
|
307
|
+
- Constraints for **CategoryType: Cost** - Must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period.
|
|
308
|
+
|
|
309
|
+
- Constraints for **CategoryType: ReservationUtilization** - Must be on or after the current date and less than the end date.
|
|
310
|
+
"""
|
|
311
|
+
return pulumi.get(self, "start_date")
|
|
312
|
+
|
|
313
|
+
@property
|
|
314
|
+
@pulumi.getter(name="endDate")
|
|
315
|
+
def end_date(self) -> Optional[str]:
|
|
316
|
+
"""
|
|
317
|
+
The end date for the budget.
|
|
318
|
+
|
|
319
|
+
- Constraints for **CategoryType: Cost** - No constraints. If not provided, we default this to 10 years from the start date.
|
|
320
|
+
|
|
321
|
+
- Constraints for **CategoryType: ReservationUtilization** - End date cannot be more than 3 years after the start date.
|
|
322
|
+
"""
|
|
323
|
+
return pulumi.get(self, "end_date")
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
@pulumi.output_type
|
|
327
|
+
class CommonExportPropertiesResponse(dict):
|
|
328
|
+
"""
|
|
329
|
+
The common properties of the export.
|
|
330
|
+
"""
|
|
331
|
+
@staticmethod
|
|
332
|
+
def __key_warning(key: str):
|
|
333
|
+
suggest = None
|
|
334
|
+
if key == "deliveryInfo":
|
|
335
|
+
suggest = "delivery_info"
|
|
336
|
+
elif key == "nextRunTimeEstimate":
|
|
337
|
+
suggest = "next_run_time_estimate"
|
|
338
|
+
elif key == "partitionData":
|
|
339
|
+
suggest = "partition_data"
|
|
340
|
+
elif key == "runHistory":
|
|
341
|
+
suggest = "run_history"
|
|
342
|
+
|
|
343
|
+
if suggest:
|
|
344
|
+
pulumi.log.warn(f"Key '{key}' not found in CommonExportPropertiesResponse. Access the value via the '{suggest}' property getter instead.")
|
|
345
|
+
|
|
346
|
+
def __getitem__(self, key: str) -> Any:
|
|
347
|
+
CommonExportPropertiesResponse.__key_warning(key)
|
|
348
|
+
return super().__getitem__(key)
|
|
349
|
+
|
|
350
|
+
def get(self, key: str, default = None) -> Any:
|
|
351
|
+
CommonExportPropertiesResponse.__key_warning(key)
|
|
352
|
+
return super().get(key, default)
|
|
353
|
+
|
|
354
|
+
def __init__(__self__, *,
|
|
355
|
+
definition: 'outputs.ExportDefinitionResponse',
|
|
356
|
+
delivery_info: 'outputs.ExportDeliveryInfoResponse',
|
|
357
|
+
next_run_time_estimate: str,
|
|
358
|
+
format: Optional[str] = None,
|
|
359
|
+
partition_data: Optional[bool] = None,
|
|
360
|
+
run_history: Optional['outputs.ExportExecutionListResultResponse'] = None):
|
|
361
|
+
"""
|
|
362
|
+
The common properties of the export.
|
|
363
|
+
:param 'ExportDefinitionResponse' definition: Has the definition for the export.
|
|
364
|
+
:param 'ExportDeliveryInfoResponse' delivery_info: Has delivery information for the export.
|
|
365
|
+
:param str next_run_time_estimate: If the export has an active schedule, provides an estimate of the next run time.
|
|
366
|
+
:param str format: The format of the export being delivered. Currently only 'Csv' is supported.
|
|
367
|
+
:param 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.
|
|
368
|
+
:param 'ExportExecutionListResultResponse' run_history: If requested, has the most recent run history for the export.
|
|
369
|
+
"""
|
|
370
|
+
pulumi.set(__self__, "definition", definition)
|
|
371
|
+
pulumi.set(__self__, "delivery_info", delivery_info)
|
|
372
|
+
pulumi.set(__self__, "next_run_time_estimate", next_run_time_estimate)
|
|
373
|
+
if format is not None:
|
|
374
|
+
pulumi.set(__self__, "format", format)
|
|
375
|
+
if partition_data is not None:
|
|
376
|
+
pulumi.set(__self__, "partition_data", partition_data)
|
|
377
|
+
if run_history is not None:
|
|
378
|
+
pulumi.set(__self__, "run_history", run_history)
|
|
379
|
+
|
|
380
|
+
@property
|
|
381
|
+
@pulumi.getter
|
|
382
|
+
def definition(self) -> 'outputs.ExportDefinitionResponse':
|
|
383
|
+
"""
|
|
384
|
+
Has the definition for the export.
|
|
385
|
+
"""
|
|
386
|
+
return pulumi.get(self, "definition")
|
|
387
|
+
|
|
388
|
+
@property
|
|
389
|
+
@pulumi.getter(name="deliveryInfo")
|
|
390
|
+
def delivery_info(self) -> 'outputs.ExportDeliveryInfoResponse':
|
|
391
|
+
"""
|
|
392
|
+
Has delivery information for the export.
|
|
393
|
+
"""
|
|
394
|
+
return pulumi.get(self, "delivery_info")
|
|
395
|
+
|
|
396
|
+
@property
|
|
397
|
+
@pulumi.getter(name="nextRunTimeEstimate")
|
|
398
|
+
def next_run_time_estimate(self) -> str:
|
|
399
|
+
"""
|
|
400
|
+
If the export has an active schedule, provides an estimate of the next run time.
|
|
401
|
+
"""
|
|
402
|
+
return pulumi.get(self, "next_run_time_estimate")
|
|
403
|
+
|
|
404
|
+
@property
|
|
405
|
+
@pulumi.getter
|
|
406
|
+
def format(self) -> Optional[str]:
|
|
407
|
+
"""
|
|
408
|
+
The format of the export being delivered. Currently only 'Csv' is supported.
|
|
409
|
+
"""
|
|
410
|
+
return pulumi.get(self, "format")
|
|
411
|
+
|
|
412
|
+
@property
|
|
413
|
+
@pulumi.getter(name="partitionData")
|
|
414
|
+
def partition_data(self) -> Optional[bool]:
|
|
415
|
+
"""
|
|
416
|
+
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.
|
|
417
|
+
"""
|
|
418
|
+
return pulumi.get(self, "partition_data")
|
|
419
|
+
|
|
420
|
+
@property
|
|
421
|
+
@pulumi.getter(name="runHistory")
|
|
422
|
+
def run_history(self) -> Optional['outputs.ExportExecutionListResultResponse']:
|
|
423
|
+
"""
|
|
424
|
+
If requested, has the most recent run history for the export.
|
|
425
|
+
"""
|
|
426
|
+
return pulumi.get(self, "run_history")
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
@pulumi.output_type
|
|
430
|
+
class CostAllocationProportionResponse(dict):
|
|
431
|
+
"""
|
|
432
|
+
Target resources and allocation
|
|
433
|
+
"""
|
|
434
|
+
def __init__(__self__, *,
|
|
435
|
+
name: str,
|
|
436
|
+
percentage: float):
|
|
437
|
+
"""
|
|
438
|
+
Target resources and allocation
|
|
439
|
+
:param str name: Target resource for cost allocation
|
|
440
|
+
:param float percentage: Percentage of source cost to allocate to this resource. This value can be specified to two decimal places and the total percentage of all resources in this rule must sum to 100.00.
|
|
441
|
+
"""
|
|
442
|
+
pulumi.set(__self__, "name", name)
|
|
443
|
+
pulumi.set(__self__, "percentage", percentage)
|
|
444
|
+
|
|
445
|
+
@property
|
|
446
|
+
@pulumi.getter
|
|
447
|
+
def name(self) -> str:
|
|
448
|
+
"""
|
|
449
|
+
Target resource for cost allocation
|
|
450
|
+
"""
|
|
451
|
+
return pulumi.get(self, "name")
|
|
452
|
+
|
|
453
|
+
@property
|
|
454
|
+
@pulumi.getter
|
|
455
|
+
def percentage(self) -> float:
|
|
456
|
+
"""
|
|
457
|
+
Percentage of source cost to allocate to this resource. This value can be specified to two decimal places and the total percentage of all resources in this rule must sum to 100.00.
|
|
458
|
+
"""
|
|
459
|
+
return pulumi.get(self, "percentage")
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
@pulumi.output_type
|
|
463
|
+
class CostAllocationRuleDetailsResponse(dict):
|
|
464
|
+
"""
|
|
465
|
+
Resource details of the cost allocation rule
|
|
466
|
+
"""
|
|
467
|
+
@staticmethod
|
|
468
|
+
def __key_warning(key: str):
|
|
469
|
+
suggest = None
|
|
470
|
+
if key == "sourceResources":
|
|
471
|
+
suggest = "source_resources"
|
|
472
|
+
elif key == "targetResources":
|
|
473
|
+
suggest = "target_resources"
|
|
474
|
+
|
|
475
|
+
if suggest:
|
|
476
|
+
pulumi.log.warn(f"Key '{key}' not found in CostAllocationRuleDetailsResponse. Access the value via the '{suggest}' property getter instead.")
|
|
477
|
+
|
|
478
|
+
def __getitem__(self, key: str) -> Any:
|
|
479
|
+
CostAllocationRuleDetailsResponse.__key_warning(key)
|
|
480
|
+
return super().__getitem__(key)
|
|
481
|
+
|
|
482
|
+
def get(self, key: str, default = None) -> Any:
|
|
483
|
+
CostAllocationRuleDetailsResponse.__key_warning(key)
|
|
484
|
+
return super().get(key, default)
|
|
485
|
+
|
|
486
|
+
def __init__(__self__, *,
|
|
487
|
+
source_resources: Optional[Sequence['outputs.SourceCostAllocationResourceResponse']] = None,
|
|
488
|
+
target_resources: Optional[Sequence['outputs.TargetCostAllocationResourceResponse']] = None):
|
|
489
|
+
"""
|
|
490
|
+
Resource details of the cost allocation rule
|
|
491
|
+
:param Sequence['SourceCostAllocationResourceResponse'] source_resources: Source resources for cost allocation. At this time, this list can contain no more than one element.
|
|
492
|
+
:param Sequence['TargetCostAllocationResourceResponse'] target_resources: Target resources for cost allocation. At this time, this list can contain no more than one element.
|
|
493
|
+
"""
|
|
494
|
+
if source_resources is not None:
|
|
495
|
+
pulumi.set(__self__, "source_resources", source_resources)
|
|
496
|
+
if target_resources is not None:
|
|
497
|
+
pulumi.set(__self__, "target_resources", target_resources)
|
|
498
|
+
|
|
499
|
+
@property
|
|
500
|
+
@pulumi.getter(name="sourceResources")
|
|
501
|
+
def source_resources(self) -> Optional[Sequence['outputs.SourceCostAllocationResourceResponse']]:
|
|
502
|
+
"""
|
|
503
|
+
Source resources for cost allocation. At this time, this list can contain no more than one element.
|
|
504
|
+
"""
|
|
505
|
+
return pulumi.get(self, "source_resources")
|
|
506
|
+
|
|
507
|
+
@property
|
|
508
|
+
@pulumi.getter(name="targetResources")
|
|
509
|
+
def target_resources(self) -> Optional[Sequence['outputs.TargetCostAllocationResourceResponse']]:
|
|
510
|
+
"""
|
|
511
|
+
Target resources for cost allocation. At this time, this list can contain no more than one element.
|
|
512
|
+
"""
|
|
513
|
+
return pulumi.get(self, "target_resources")
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
@pulumi.output_type
|
|
517
|
+
class CostAllocationRulePropertiesResponse(dict):
|
|
518
|
+
"""
|
|
519
|
+
The properties of a cost allocation rule
|
|
520
|
+
"""
|
|
521
|
+
@staticmethod
|
|
522
|
+
def __key_warning(key: str):
|
|
523
|
+
suggest = None
|
|
524
|
+
if key == "createdDate":
|
|
525
|
+
suggest = "created_date"
|
|
526
|
+
elif key == "updatedDate":
|
|
527
|
+
suggest = "updated_date"
|
|
528
|
+
|
|
529
|
+
if suggest:
|
|
530
|
+
pulumi.log.warn(f"Key '{key}' not found in CostAllocationRulePropertiesResponse. Access the value via the '{suggest}' property getter instead.")
|
|
531
|
+
|
|
532
|
+
def __getitem__(self, key: str) -> Any:
|
|
533
|
+
CostAllocationRulePropertiesResponse.__key_warning(key)
|
|
534
|
+
return super().__getitem__(key)
|
|
535
|
+
|
|
536
|
+
def get(self, key: str, default = None) -> Any:
|
|
537
|
+
CostAllocationRulePropertiesResponse.__key_warning(key)
|
|
538
|
+
return super().get(key, default)
|
|
539
|
+
|
|
540
|
+
def __init__(__self__, *,
|
|
541
|
+
created_date: str,
|
|
542
|
+
details: 'outputs.CostAllocationRuleDetailsResponse',
|
|
543
|
+
status: str,
|
|
544
|
+
updated_date: str,
|
|
545
|
+
description: Optional[str] = None):
|
|
546
|
+
"""
|
|
547
|
+
The properties of a cost allocation rule
|
|
548
|
+
:param str created_date: Time at which the rule was created. Rules that change cost for the same resource are applied in order of creation.
|
|
549
|
+
:param 'CostAllocationRuleDetailsResponse' details: Resource information for the cost allocation rule
|
|
550
|
+
:param str status: Status of the rule
|
|
551
|
+
:param str updated_date: Time at which the rule was last updated.
|
|
552
|
+
:param str description: Description of a cost allocation rule.
|
|
553
|
+
"""
|
|
554
|
+
pulumi.set(__self__, "created_date", created_date)
|
|
555
|
+
pulumi.set(__self__, "details", details)
|
|
556
|
+
pulumi.set(__self__, "status", status)
|
|
557
|
+
pulumi.set(__self__, "updated_date", updated_date)
|
|
558
|
+
if description is not None:
|
|
559
|
+
pulumi.set(__self__, "description", description)
|
|
560
|
+
|
|
561
|
+
@property
|
|
562
|
+
@pulumi.getter(name="createdDate")
|
|
563
|
+
def created_date(self) -> str:
|
|
564
|
+
"""
|
|
565
|
+
Time at which the rule was created. Rules that change cost for the same resource are applied in order of creation.
|
|
566
|
+
"""
|
|
567
|
+
return pulumi.get(self, "created_date")
|
|
568
|
+
|
|
569
|
+
@property
|
|
570
|
+
@pulumi.getter
|
|
571
|
+
def details(self) -> 'outputs.CostAllocationRuleDetailsResponse':
|
|
572
|
+
"""
|
|
573
|
+
Resource information for the cost allocation rule
|
|
574
|
+
"""
|
|
575
|
+
return pulumi.get(self, "details")
|
|
576
|
+
|
|
577
|
+
@property
|
|
578
|
+
@pulumi.getter
|
|
579
|
+
def status(self) -> str:
|
|
580
|
+
"""
|
|
581
|
+
Status of the rule
|
|
582
|
+
"""
|
|
583
|
+
return pulumi.get(self, "status")
|
|
584
|
+
|
|
585
|
+
@property
|
|
586
|
+
@pulumi.getter(name="updatedDate")
|
|
587
|
+
def updated_date(self) -> str:
|
|
588
|
+
"""
|
|
589
|
+
Time at which the rule was last updated.
|
|
590
|
+
"""
|
|
591
|
+
return pulumi.get(self, "updated_date")
|
|
592
|
+
|
|
593
|
+
@property
|
|
594
|
+
@pulumi.getter
|
|
595
|
+
def description(self) -> Optional[str]:
|
|
596
|
+
"""
|
|
597
|
+
Description of a cost allocation rule.
|
|
598
|
+
"""
|
|
599
|
+
return pulumi.get(self, "description")
|
|
600
|
+
|
|
601
|
+
|
|
602
|
+
@pulumi.output_type
|
|
603
|
+
class CurrentSpendResponse(dict):
|
|
604
|
+
"""
|
|
605
|
+
The current amount of cost which is being tracked for a budget.
|
|
606
|
+
|
|
607
|
+
Supported for CategoryType(s): Cost.
|
|
608
|
+
"""
|
|
609
|
+
def __init__(__self__, *,
|
|
610
|
+
amount: float,
|
|
611
|
+
unit: str):
|
|
612
|
+
"""
|
|
613
|
+
The current amount of cost which is being tracked for a budget.
|
|
614
|
+
|
|
615
|
+
Supported for CategoryType(s): Cost.
|
|
616
|
+
:param float amount: The total amount of cost which is being tracked by the budget.
|
|
617
|
+
:param str unit: The unit of measure for the budget amount.
|
|
618
|
+
"""
|
|
619
|
+
pulumi.set(__self__, "amount", amount)
|
|
620
|
+
pulumi.set(__self__, "unit", unit)
|
|
621
|
+
|
|
622
|
+
@property
|
|
623
|
+
@pulumi.getter
|
|
624
|
+
def amount(self) -> float:
|
|
625
|
+
"""
|
|
626
|
+
The total amount of cost which is being tracked by the budget.
|
|
627
|
+
"""
|
|
628
|
+
return pulumi.get(self, "amount")
|
|
629
|
+
|
|
630
|
+
@property
|
|
631
|
+
@pulumi.getter
|
|
632
|
+
def unit(self) -> str:
|
|
633
|
+
"""
|
|
634
|
+
The unit of measure for the budget amount.
|
|
635
|
+
"""
|
|
636
|
+
return pulumi.get(self, "unit")
|
|
637
|
+
|
|
638
|
+
|
|
639
|
+
@pulumi.output_type
|
|
640
|
+
class ErrorDetailsResponse(dict):
|
|
641
|
+
"""
|
|
642
|
+
The details of the error.
|
|
643
|
+
"""
|
|
644
|
+
def __init__(__self__, *,
|
|
645
|
+
code: str,
|
|
646
|
+
message: str):
|
|
647
|
+
"""
|
|
648
|
+
The details of the error.
|
|
649
|
+
:param str code: Error code.
|
|
650
|
+
:param str message: Error message indicating why the operation failed.
|
|
651
|
+
"""
|
|
652
|
+
pulumi.set(__self__, "code", code)
|
|
653
|
+
pulumi.set(__self__, "message", message)
|
|
654
|
+
|
|
655
|
+
@property
|
|
656
|
+
@pulumi.getter
|
|
657
|
+
def code(self) -> str:
|
|
658
|
+
"""
|
|
659
|
+
Error code.
|
|
660
|
+
"""
|
|
661
|
+
return pulumi.get(self, "code")
|
|
662
|
+
|
|
663
|
+
@property
|
|
664
|
+
@pulumi.getter
|
|
665
|
+
def message(self) -> str:
|
|
666
|
+
"""
|
|
667
|
+
Error message indicating why the operation failed.
|
|
668
|
+
"""
|
|
669
|
+
return pulumi.get(self, "message")
|
|
670
|
+
|
|
671
|
+
|
|
672
|
+
@pulumi.output_type
|
|
673
|
+
class ExportDatasetConfigurationResponse(dict):
|
|
674
|
+
"""
|
|
675
|
+
The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns.
|
|
676
|
+
"""
|
|
677
|
+
def __init__(__self__, *,
|
|
678
|
+
columns: Optional[Sequence[str]] = None):
|
|
679
|
+
"""
|
|
680
|
+
The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns.
|
|
681
|
+
:param Sequence[str] columns: Array of column names to be included in the export. If not provided then the export will include all available columns. The available columns can vary by customer channel (see examples).
|
|
682
|
+
"""
|
|
683
|
+
if columns is not None:
|
|
684
|
+
pulumi.set(__self__, "columns", columns)
|
|
685
|
+
|
|
686
|
+
@property
|
|
687
|
+
@pulumi.getter
|
|
688
|
+
def columns(self) -> Optional[Sequence[str]]:
|
|
689
|
+
"""
|
|
690
|
+
Array of column names to be included in the export. If not provided then the export will include all available columns. The available columns can vary by customer channel (see examples).
|
|
691
|
+
"""
|
|
692
|
+
return pulumi.get(self, "columns")
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
@pulumi.output_type
|
|
696
|
+
class ExportDatasetResponse(dict):
|
|
697
|
+
"""
|
|
698
|
+
The definition for data in the export.
|
|
699
|
+
"""
|
|
700
|
+
def __init__(__self__, *,
|
|
701
|
+
configuration: Optional['outputs.ExportDatasetConfigurationResponse'] = None,
|
|
702
|
+
granularity: Optional[str] = None):
|
|
703
|
+
"""
|
|
704
|
+
The definition for data in the export.
|
|
705
|
+
:param 'ExportDatasetConfigurationResponse' configuration: The export dataset configuration.
|
|
706
|
+
:param str granularity: The granularity of rows in the export. Currently only 'Daily' is supported.
|
|
707
|
+
"""
|
|
708
|
+
if configuration is not None:
|
|
709
|
+
pulumi.set(__self__, "configuration", configuration)
|
|
710
|
+
if granularity is not None:
|
|
711
|
+
pulumi.set(__self__, "granularity", granularity)
|
|
712
|
+
|
|
713
|
+
@property
|
|
714
|
+
@pulumi.getter
|
|
715
|
+
def configuration(self) -> Optional['outputs.ExportDatasetConfigurationResponse']:
|
|
716
|
+
"""
|
|
717
|
+
The export dataset configuration.
|
|
718
|
+
"""
|
|
719
|
+
return pulumi.get(self, "configuration")
|
|
720
|
+
|
|
721
|
+
@property
|
|
722
|
+
@pulumi.getter
|
|
723
|
+
def granularity(self) -> Optional[str]:
|
|
724
|
+
"""
|
|
725
|
+
The granularity of rows in the export. Currently only 'Daily' is supported.
|
|
726
|
+
"""
|
|
727
|
+
return pulumi.get(self, "granularity")
|
|
728
|
+
|
|
729
|
+
|
|
730
|
+
@pulumi.output_type
|
|
731
|
+
class ExportDefinitionResponse(dict):
|
|
732
|
+
"""
|
|
733
|
+
The definition of an export.
|
|
734
|
+
"""
|
|
735
|
+
@staticmethod
|
|
736
|
+
def __key_warning(key: str):
|
|
737
|
+
suggest = None
|
|
738
|
+
if key == "dataSet":
|
|
739
|
+
suggest = "data_set"
|
|
740
|
+
elif key == "timePeriod":
|
|
741
|
+
suggest = "time_period"
|
|
742
|
+
|
|
743
|
+
if suggest:
|
|
744
|
+
pulumi.log.warn(f"Key '{key}' not found in ExportDefinitionResponse. Access the value via the '{suggest}' property getter instead.")
|
|
745
|
+
|
|
746
|
+
def __getitem__(self, key: str) -> Any:
|
|
747
|
+
ExportDefinitionResponse.__key_warning(key)
|
|
748
|
+
return super().__getitem__(key)
|
|
749
|
+
|
|
750
|
+
def get(self, key: str, default = None) -> Any:
|
|
751
|
+
ExportDefinitionResponse.__key_warning(key)
|
|
752
|
+
return super().get(key, default)
|
|
753
|
+
|
|
754
|
+
def __init__(__self__, *,
|
|
755
|
+
timeframe: str,
|
|
756
|
+
type: str,
|
|
757
|
+
data_set: Optional['outputs.ExportDatasetResponse'] = None,
|
|
758
|
+
time_period: Optional['outputs.ExportTimePeriodResponse'] = None):
|
|
759
|
+
"""
|
|
760
|
+
The definition of an export.
|
|
761
|
+
:param str timeframe: The time frame for pulling data for the export. If custom, then a specific time period must be provided.
|
|
762
|
+
:param str type: The type of the export. Note that 'Usage' is equivalent to 'ActualCost' and is applicable to exports that do not yet provide data for charges or amortization for service reservations.
|
|
763
|
+
:param 'ExportDatasetResponse' data_set: The definition for data in the export.
|
|
764
|
+
:param 'ExportTimePeriodResponse' time_period: Has time period for pulling data for the export.
|
|
765
|
+
"""
|
|
766
|
+
pulumi.set(__self__, "timeframe", timeframe)
|
|
767
|
+
pulumi.set(__self__, "type", type)
|
|
768
|
+
if data_set is not None:
|
|
769
|
+
pulumi.set(__self__, "data_set", data_set)
|
|
770
|
+
if time_period is not None:
|
|
771
|
+
pulumi.set(__self__, "time_period", time_period)
|
|
772
|
+
|
|
773
|
+
@property
|
|
774
|
+
@pulumi.getter
|
|
775
|
+
def timeframe(self) -> str:
|
|
776
|
+
"""
|
|
777
|
+
The time frame for pulling data for the export. If custom, then a specific time period must be provided.
|
|
778
|
+
"""
|
|
779
|
+
return pulumi.get(self, "timeframe")
|
|
780
|
+
|
|
781
|
+
@property
|
|
782
|
+
@pulumi.getter
|
|
783
|
+
def type(self) -> str:
|
|
784
|
+
"""
|
|
785
|
+
The type of the export. Note that 'Usage' is equivalent to 'ActualCost' and is applicable to exports that do not yet provide data for charges or amortization for service reservations.
|
|
786
|
+
"""
|
|
787
|
+
return pulumi.get(self, "type")
|
|
788
|
+
|
|
789
|
+
@property
|
|
790
|
+
@pulumi.getter(name="dataSet")
|
|
791
|
+
def data_set(self) -> Optional['outputs.ExportDatasetResponse']:
|
|
792
|
+
"""
|
|
793
|
+
The definition for data in the export.
|
|
794
|
+
"""
|
|
795
|
+
return pulumi.get(self, "data_set")
|
|
796
|
+
|
|
797
|
+
@property
|
|
798
|
+
@pulumi.getter(name="timePeriod")
|
|
799
|
+
def time_period(self) -> Optional['outputs.ExportTimePeriodResponse']:
|
|
800
|
+
"""
|
|
801
|
+
Has time period for pulling data for the export.
|
|
802
|
+
"""
|
|
803
|
+
return pulumi.get(self, "time_period")
|
|
804
|
+
|
|
805
|
+
|
|
806
|
+
@pulumi.output_type
|
|
807
|
+
class ExportDeliveryDestinationResponse(dict):
|
|
808
|
+
"""
|
|
809
|
+
This represents the blob storage account location where exports of costs will be delivered. There are two ways to configure the destination. The approach recommended for most customers is to specify the resourceId of the storage account. This requires a one-time registration of the account's subscription with the Microsoft.CostManagementExports resource provider in order to give Cost Management services access to the storage. When creating an export in the Azure portal this registration is performed automatically but API users may need to register the subscription explicitly (for more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services ). Another way to configure the destination is available ONLY to Partners with a Microsoft Partner Agreement plan who are global admins of their billing account. These Partners, instead of specifying the resourceId of a storage account, can specify the storage account name along with a SAS token for the account. This allows exports of costs to a storage account in any tenant. The SAS token should be created for the blob service with Service/Container/Object resource types and with Read/Write/Delete/List/Add/Create permissions (for more information see https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/export-cost-data-storage-account-sas-key ).
|
|
810
|
+
"""
|
|
811
|
+
@staticmethod
|
|
812
|
+
def __key_warning(key: str):
|
|
813
|
+
suggest = None
|
|
814
|
+
if key == "resourceId":
|
|
815
|
+
suggest = "resource_id"
|
|
816
|
+
elif key == "rootFolderPath":
|
|
817
|
+
suggest = "root_folder_path"
|
|
818
|
+
elif key == "sasToken":
|
|
819
|
+
suggest = "sas_token"
|
|
820
|
+
elif key == "storageAccount":
|
|
821
|
+
suggest = "storage_account"
|
|
822
|
+
|
|
823
|
+
if suggest:
|
|
824
|
+
pulumi.log.warn(f"Key '{key}' not found in ExportDeliveryDestinationResponse. Access the value via the '{suggest}' property getter instead.")
|
|
825
|
+
|
|
826
|
+
def __getitem__(self, key: str) -> Any:
|
|
827
|
+
ExportDeliveryDestinationResponse.__key_warning(key)
|
|
828
|
+
return super().__getitem__(key)
|
|
829
|
+
|
|
830
|
+
def get(self, key: str, default = None) -> Any:
|
|
831
|
+
ExportDeliveryDestinationResponse.__key_warning(key)
|
|
832
|
+
return super().get(key, default)
|
|
833
|
+
|
|
834
|
+
def __init__(__self__, *,
|
|
835
|
+
container: str,
|
|
836
|
+
resource_id: Optional[str] = None,
|
|
837
|
+
root_folder_path: Optional[str] = None,
|
|
838
|
+
sas_token: Optional[str] = None,
|
|
839
|
+
storage_account: Optional[str] = None):
|
|
840
|
+
"""
|
|
841
|
+
This represents the blob storage account location where exports of costs will be delivered. There are two ways to configure the destination. The approach recommended for most customers is to specify the resourceId of the storage account. This requires a one-time registration of the account's subscription with the Microsoft.CostManagementExports resource provider in order to give Cost Management services access to the storage. When creating an export in the Azure portal this registration is performed automatically but API users may need to register the subscription explicitly (for more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services ). Another way to configure the destination is available ONLY to Partners with a Microsoft Partner Agreement plan who are global admins of their billing account. These Partners, instead of specifying the resourceId of a storage account, can specify the storage account name along with a SAS token for the account. This allows exports of costs to a storage account in any tenant. The SAS token should be created for the blob service with Service/Container/Object resource types and with Read/Write/Delete/List/Add/Create permissions (for more information see https://docs.microsoft.com/en-us/azure/cost-management-billing/costs/export-cost-data-storage-account-sas-key ).
|
|
842
|
+
:param str container: The name of the container where exports will be uploaded. If the container does not exist it will be created.
|
|
843
|
+
:param str resource_id: The resource id of the storage account where exports will be delivered. This is not required if a sasToken and storageAccount are specified.
|
|
844
|
+
:param str root_folder_path: The name of the directory where exports will be uploaded.
|
|
845
|
+
:param str sas_token: A SAS token for the storage account. For a restricted set of Azure customers this together with storageAccount can be specified instead of resourceId. Note: the value returned by the API for this property will always be obfuscated. Returning this same obfuscated value will not result in the SAS token being updated. To update this value a new SAS token must be specified.
|
|
846
|
+
:param str storage_account: The storage account where exports will be uploaded. For a restricted set of Azure customers this together with sasToken can be specified instead of resourceId.
|
|
847
|
+
"""
|
|
848
|
+
pulumi.set(__self__, "container", container)
|
|
849
|
+
if resource_id is not None:
|
|
850
|
+
pulumi.set(__self__, "resource_id", resource_id)
|
|
851
|
+
if root_folder_path is not None:
|
|
852
|
+
pulumi.set(__self__, "root_folder_path", root_folder_path)
|
|
853
|
+
if sas_token is not None:
|
|
854
|
+
pulumi.set(__self__, "sas_token", sas_token)
|
|
855
|
+
if storage_account is not None:
|
|
856
|
+
pulumi.set(__self__, "storage_account", storage_account)
|
|
857
|
+
|
|
858
|
+
@property
|
|
859
|
+
@pulumi.getter
|
|
860
|
+
def container(self) -> str:
|
|
861
|
+
"""
|
|
862
|
+
The name of the container where exports will be uploaded. If the container does not exist it will be created.
|
|
863
|
+
"""
|
|
864
|
+
return pulumi.get(self, "container")
|
|
865
|
+
|
|
866
|
+
@property
|
|
867
|
+
@pulumi.getter(name="resourceId")
|
|
868
|
+
def resource_id(self) -> Optional[str]:
|
|
869
|
+
"""
|
|
870
|
+
The resource id of the storage account where exports will be delivered. This is not required if a sasToken and storageAccount are specified.
|
|
871
|
+
"""
|
|
872
|
+
return pulumi.get(self, "resource_id")
|
|
873
|
+
|
|
874
|
+
@property
|
|
875
|
+
@pulumi.getter(name="rootFolderPath")
|
|
876
|
+
def root_folder_path(self) -> Optional[str]:
|
|
877
|
+
"""
|
|
878
|
+
The name of the directory where exports will be uploaded.
|
|
879
|
+
"""
|
|
880
|
+
return pulumi.get(self, "root_folder_path")
|
|
881
|
+
|
|
882
|
+
@property
|
|
883
|
+
@pulumi.getter(name="sasToken")
|
|
884
|
+
def sas_token(self) -> Optional[str]:
|
|
885
|
+
"""
|
|
886
|
+
A SAS token for the storage account. For a restricted set of Azure customers this together with storageAccount can be specified instead of resourceId. Note: the value returned by the API for this property will always be obfuscated. Returning this same obfuscated value will not result in the SAS token being updated. To update this value a new SAS token must be specified.
|
|
887
|
+
"""
|
|
888
|
+
return pulumi.get(self, "sas_token")
|
|
889
|
+
|
|
890
|
+
@property
|
|
891
|
+
@pulumi.getter(name="storageAccount")
|
|
892
|
+
def storage_account(self) -> Optional[str]:
|
|
893
|
+
"""
|
|
894
|
+
The storage account where exports will be uploaded. For a restricted set of Azure customers this together with sasToken can be specified instead of resourceId.
|
|
895
|
+
"""
|
|
896
|
+
return pulumi.get(self, "storage_account")
|
|
897
|
+
|
|
898
|
+
|
|
899
|
+
@pulumi.output_type
|
|
900
|
+
class ExportDeliveryInfoResponse(dict):
|
|
901
|
+
"""
|
|
902
|
+
The delivery information associated with a export.
|
|
903
|
+
"""
|
|
904
|
+
def __init__(__self__, *,
|
|
905
|
+
destination: 'outputs.ExportDeliveryDestinationResponse'):
|
|
906
|
+
"""
|
|
907
|
+
The delivery information associated with a export.
|
|
908
|
+
:param 'ExportDeliveryDestinationResponse' destination: Has destination for the export being delivered.
|
|
909
|
+
"""
|
|
910
|
+
pulumi.set(__self__, "destination", destination)
|
|
911
|
+
|
|
912
|
+
@property
|
|
913
|
+
@pulumi.getter
|
|
914
|
+
def destination(self) -> 'outputs.ExportDeliveryDestinationResponse':
|
|
915
|
+
"""
|
|
916
|
+
Has destination for the export being delivered.
|
|
917
|
+
"""
|
|
918
|
+
return pulumi.get(self, "destination")
|
|
919
|
+
|
|
920
|
+
|
|
921
|
+
@pulumi.output_type
|
|
922
|
+
class ExportExecutionListResultResponse(dict):
|
|
923
|
+
"""
|
|
924
|
+
Result of listing the run history of an export.
|
|
925
|
+
"""
|
|
926
|
+
def __init__(__self__, *,
|
|
927
|
+
value: Sequence['outputs.ExportRunResponse']):
|
|
928
|
+
"""
|
|
929
|
+
Result of listing the run history of an export.
|
|
930
|
+
:param Sequence['ExportRunResponse'] value: A list of export runs.
|
|
931
|
+
"""
|
|
932
|
+
pulumi.set(__self__, "value", value)
|
|
933
|
+
|
|
934
|
+
@property
|
|
935
|
+
@pulumi.getter
|
|
936
|
+
def value(self) -> Sequence['outputs.ExportRunResponse']:
|
|
937
|
+
"""
|
|
938
|
+
A list of export runs.
|
|
939
|
+
"""
|
|
940
|
+
return pulumi.get(self, "value")
|
|
941
|
+
|
|
942
|
+
|
|
943
|
+
@pulumi.output_type
|
|
944
|
+
class ExportRecurrencePeriodResponse(dict):
|
|
945
|
+
"""
|
|
946
|
+
The start and end date for recurrence schedule.
|
|
947
|
+
"""
|
|
948
|
+
@staticmethod
|
|
949
|
+
def __key_warning(key: str):
|
|
950
|
+
suggest = None
|
|
951
|
+
if key == "from":
|
|
952
|
+
suggest = "from_"
|
|
953
|
+
|
|
954
|
+
if suggest:
|
|
955
|
+
pulumi.log.warn(f"Key '{key}' not found in ExportRecurrencePeriodResponse. Access the value via the '{suggest}' property getter instead.")
|
|
956
|
+
|
|
957
|
+
def __getitem__(self, key: str) -> Any:
|
|
958
|
+
ExportRecurrencePeriodResponse.__key_warning(key)
|
|
959
|
+
return super().__getitem__(key)
|
|
960
|
+
|
|
961
|
+
def get(self, key: str, default = None) -> Any:
|
|
962
|
+
ExportRecurrencePeriodResponse.__key_warning(key)
|
|
963
|
+
return super().get(key, default)
|
|
964
|
+
|
|
965
|
+
def __init__(__self__, *,
|
|
966
|
+
from_: str,
|
|
967
|
+
to: Optional[str] = None):
|
|
968
|
+
"""
|
|
969
|
+
The start and end date for recurrence schedule.
|
|
970
|
+
:param str from_: The start date of recurrence.
|
|
971
|
+
:param str to: The end date of recurrence.
|
|
972
|
+
"""
|
|
973
|
+
pulumi.set(__self__, "from_", from_)
|
|
974
|
+
if to is not None:
|
|
975
|
+
pulumi.set(__self__, "to", to)
|
|
976
|
+
|
|
977
|
+
@property
|
|
978
|
+
@pulumi.getter(name="from")
|
|
979
|
+
def from_(self) -> str:
|
|
980
|
+
"""
|
|
981
|
+
The start date of recurrence.
|
|
982
|
+
"""
|
|
983
|
+
return pulumi.get(self, "from_")
|
|
984
|
+
|
|
985
|
+
@property
|
|
986
|
+
@pulumi.getter
|
|
987
|
+
def to(self) -> Optional[str]:
|
|
988
|
+
"""
|
|
989
|
+
The end date of recurrence.
|
|
990
|
+
"""
|
|
991
|
+
return pulumi.get(self, "to")
|
|
992
|
+
|
|
993
|
+
|
|
994
|
+
@pulumi.output_type
|
|
995
|
+
class ExportRunResponse(dict):
|
|
996
|
+
"""
|
|
997
|
+
An export run.
|
|
998
|
+
"""
|
|
999
|
+
@staticmethod
|
|
1000
|
+
def __key_warning(key: str):
|
|
1001
|
+
suggest = None
|
|
1002
|
+
if key == "eTag":
|
|
1003
|
+
suggest = "e_tag"
|
|
1004
|
+
elif key == "executionType":
|
|
1005
|
+
suggest = "execution_type"
|
|
1006
|
+
elif key == "fileName":
|
|
1007
|
+
suggest = "file_name"
|
|
1008
|
+
elif key == "processingEndTime":
|
|
1009
|
+
suggest = "processing_end_time"
|
|
1010
|
+
elif key == "processingStartTime":
|
|
1011
|
+
suggest = "processing_start_time"
|
|
1012
|
+
elif key == "runSettings":
|
|
1013
|
+
suggest = "run_settings"
|
|
1014
|
+
elif key == "submittedBy":
|
|
1015
|
+
suggest = "submitted_by"
|
|
1016
|
+
elif key == "submittedTime":
|
|
1017
|
+
suggest = "submitted_time"
|
|
1018
|
+
|
|
1019
|
+
if suggest:
|
|
1020
|
+
pulumi.log.warn(f"Key '{key}' not found in ExportRunResponse. Access the value via the '{suggest}' property getter instead.")
|
|
1021
|
+
|
|
1022
|
+
def __getitem__(self, key: str) -> Any:
|
|
1023
|
+
ExportRunResponse.__key_warning(key)
|
|
1024
|
+
return super().__getitem__(key)
|
|
1025
|
+
|
|
1026
|
+
def get(self, key: str, default = None) -> Any:
|
|
1027
|
+
ExportRunResponse.__key_warning(key)
|
|
1028
|
+
return super().get(key, default)
|
|
1029
|
+
|
|
1030
|
+
def __init__(__self__, *,
|
|
1031
|
+
id: str,
|
|
1032
|
+
name: str,
|
|
1033
|
+
type: str,
|
|
1034
|
+
e_tag: Optional[str] = None,
|
|
1035
|
+
error: Optional['outputs.ErrorDetailsResponse'] = None,
|
|
1036
|
+
execution_type: Optional[str] = None,
|
|
1037
|
+
file_name: Optional[str] = None,
|
|
1038
|
+
processing_end_time: Optional[str] = None,
|
|
1039
|
+
processing_start_time: Optional[str] = None,
|
|
1040
|
+
run_settings: Optional['outputs.CommonExportPropertiesResponse'] = None,
|
|
1041
|
+
status: Optional[str] = None,
|
|
1042
|
+
submitted_by: Optional[str] = None,
|
|
1043
|
+
submitted_time: Optional[str] = None):
|
|
1044
|
+
"""
|
|
1045
|
+
An export run.
|
|
1046
|
+
:param str id: Resource Id.
|
|
1047
|
+
:param str name: Resource name.
|
|
1048
|
+
:param str type: Resource type.
|
|
1049
|
+
:param 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.
|
|
1050
|
+
:param 'ErrorDetailsResponse' error: The details of any error.
|
|
1051
|
+
:param str execution_type: The type of the export run.
|
|
1052
|
+
:param str file_name: The name of the exported file.
|
|
1053
|
+
:param str processing_end_time: The time when the export run finished.
|
|
1054
|
+
:param str processing_start_time: The time when export was picked up to be run.
|
|
1055
|
+
:param 'CommonExportPropertiesResponse' run_settings: The export settings that were in effect for this run.
|
|
1056
|
+
:param str status: The last known status of the export run.
|
|
1057
|
+
:param str submitted_by: The identifier for the entity that triggered the export. For on-demand runs it is the user email. For scheduled runs it is 'System'.
|
|
1058
|
+
:param str submitted_time: The time when export was queued to be run.
|
|
1059
|
+
"""
|
|
1060
|
+
pulumi.set(__self__, "id", id)
|
|
1061
|
+
pulumi.set(__self__, "name", name)
|
|
1062
|
+
pulumi.set(__self__, "type", type)
|
|
1063
|
+
if e_tag is not None:
|
|
1064
|
+
pulumi.set(__self__, "e_tag", e_tag)
|
|
1065
|
+
if error is not None:
|
|
1066
|
+
pulumi.set(__self__, "error", error)
|
|
1067
|
+
if execution_type is not None:
|
|
1068
|
+
pulumi.set(__self__, "execution_type", execution_type)
|
|
1069
|
+
if file_name is not None:
|
|
1070
|
+
pulumi.set(__self__, "file_name", file_name)
|
|
1071
|
+
if processing_end_time is not None:
|
|
1072
|
+
pulumi.set(__self__, "processing_end_time", processing_end_time)
|
|
1073
|
+
if processing_start_time is not None:
|
|
1074
|
+
pulumi.set(__self__, "processing_start_time", processing_start_time)
|
|
1075
|
+
if run_settings is not None:
|
|
1076
|
+
pulumi.set(__self__, "run_settings", run_settings)
|
|
1077
|
+
if status is not None:
|
|
1078
|
+
pulumi.set(__self__, "status", status)
|
|
1079
|
+
if submitted_by is not None:
|
|
1080
|
+
pulumi.set(__self__, "submitted_by", submitted_by)
|
|
1081
|
+
if submitted_time is not None:
|
|
1082
|
+
pulumi.set(__self__, "submitted_time", submitted_time)
|
|
1083
|
+
|
|
1084
|
+
@property
|
|
1085
|
+
@pulumi.getter
|
|
1086
|
+
def id(self) -> str:
|
|
1087
|
+
"""
|
|
1088
|
+
Resource Id.
|
|
1089
|
+
"""
|
|
1090
|
+
return pulumi.get(self, "id")
|
|
1091
|
+
|
|
1092
|
+
@property
|
|
1093
|
+
@pulumi.getter
|
|
1094
|
+
def name(self) -> str:
|
|
1095
|
+
"""
|
|
1096
|
+
Resource name.
|
|
1097
|
+
"""
|
|
1098
|
+
return pulumi.get(self, "name")
|
|
1099
|
+
|
|
1100
|
+
@property
|
|
1101
|
+
@pulumi.getter
|
|
1102
|
+
def type(self) -> str:
|
|
1103
|
+
"""
|
|
1104
|
+
Resource type.
|
|
1105
|
+
"""
|
|
1106
|
+
return pulumi.get(self, "type")
|
|
1107
|
+
|
|
1108
|
+
@property
|
|
1109
|
+
@pulumi.getter(name="eTag")
|
|
1110
|
+
def e_tag(self) -> Optional[str]:
|
|
1111
|
+
"""
|
|
1112
|
+
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.
|
|
1113
|
+
"""
|
|
1114
|
+
return pulumi.get(self, "e_tag")
|
|
1115
|
+
|
|
1116
|
+
@property
|
|
1117
|
+
@pulumi.getter
|
|
1118
|
+
def error(self) -> Optional['outputs.ErrorDetailsResponse']:
|
|
1119
|
+
"""
|
|
1120
|
+
The details of any error.
|
|
1121
|
+
"""
|
|
1122
|
+
return pulumi.get(self, "error")
|
|
1123
|
+
|
|
1124
|
+
@property
|
|
1125
|
+
@pulumi.getter(name="executionType")
|
|
1126
|
+
def execution_type(self) -> Optional[str]:
|
|
1127
|
+
"""
|
|
1128
|
+
The type of the export run.
|
|
1129
|
+
"""
|
|
1130
|
+
return pulumi.get(self, "execution_type")
|
|
1131
|
+
|
|
1132
|
+
@property
|
|
1133
|
+
@pulumi.getter(name="fileName")
|
|
1134
|
+
def file_name(self) -> Optional[str]:
|
|
1135
|
+
"""
|
|
1136
|
+
The name of the exported file.
|
|
1137
|
+
"""
|
|
1138
|
+
return pulumi.get(self, "file_name")
|
|
1139
|
+
|
|
1140
|
+
@property
|
|
1141
|
+
@pulumi.getter(name="processingEndTime")
|
|
1142
|
+
def processing_end_time(self) -> Optional[str]:
|
|
1143
|
+
"""
|
|
1144
|
+
The time when the export run finished.
|
|
1145
|
+
"""
|
|
1146
|
+
return pulumi.get(self, "processing_end_time")
|
|
1147
|
+
|
|
1148
|
+
@property
|
|
1149
|
+
@pulumi.getter(name="processingStartTime")
|
|
1150
|
+
def processing_start_time(self) -> Optional[str]:
|
|
1151
|
+
"""
|
|
1152
|
+
The time when export was picked up to be run.
|
|
1153
|
+
"""
|
|
1154
|
+
return pulumi.get(self, "processing_start_time")
|
|
1155
|
+
|
|
1156
|
+
@property
|
|
1157
|
+
@pulumi.getter(name="runSettings")
|
|
1158
|
+
def run_settings(self) -> Optional['outputs.CommonExportPropertiesResponse']:
|
|
1159
|
+
"""
|
|
1160
|
+
The export settings that were in effect for this run.
|
|
1161
|
+
"""
|
|
1162
|
+
return pulumi.get(self, "run_settings")
|
|
1163
|
+
|
|
1164
|
+
@property
|
|
1165
|
+
@pulumi.getter
|
|
1166
|
+
def status(self) -> Optional[str]:
|
|
1167
|
+
"""
|
|
1168
|
+
The last known status of the export run.
|
|
1169
|
+
"""
|
|
1170
|
+
return pulumi.get(self, "status")
|
|
1171
|
+
|
|
1172
|
+
@property
|
|
1173
|
+
@pulumi.getter(name="submittedBy")
|
|
1174
|
+
def submitted_by(self) -> Optional[str]:
|
|
1175
|
+
"""
|
|
1176
|
+
The identifier for the entity that triggered the export. For on-demand runs it is the user email. For scheduled runs it is 'System'.
|
|
1177
|
+
"""
|
|
1178
|
+
return pulumi.get(self, "submitted_by")
|
|
1179
|
+
|
|
1180
|
+
@property
|
|
1181
|
+
@pulumi.getter(name="submittedTime")
|
|
1182
|
+
def submitted_time(self) -> Optional[str]:
|
|
1183
|
+
"""
|
|
1184
|
+
The time when export was queued to be run.
|
|
1185
|
+
"""
|
|
1186
|
+
return pulumi.get(self, "submitted_time")
|
|
1187
|
+
|
|
1188
|
+
|
|
1189
|
+
@pulumi.output_type
|
|
1190
|
+
class ExportScheduleResponse(dict):
|
|
1191
|
+
"""
|
|
1192
|
+
The schedule associated with the export.
|
|
1193
|
+
"""
|
|
1194
|
+
@staticmethod
|
|
1195
|
+
def __key_warning(key: str):
|
|
1196
|
+
suggest = None
|
|
1197
|
+
if key == "recurrencePeriod":
|
|
1198
|
+
suggest = "recurrence_period"
|
|
1199
|
+
|
|
1200
|
+
if suggest:
|
|
1201
|
+
pulumi.log.warn(f"Key '{key}' not found in ExportScheduleResponse. Access the value via the '{suggest}' property getter instead.")
|
|
1202
|
+
|
|
1203
|
+
def __getitem__(self, key: str) -> Any:
|
|
1204
|
+
ExportScheduleResponse.__key_warning(key)
|
|
1205
|
+
return super().__getitem__(key)
|
|
1206
|
+
|
|
1207
|
+
def get(self, key: str, default = None) -> Any:
|
|
1208
|
+
ExportScheduleResponse.__key_warning(key)
|
|
1209
|
+
return super().get(key, default)
|
|
1210
|
+
|
|
1211
|
+
def __init__(__self__, *,
|
|
1212
|
+
recurrence: Optional[str] = None,
|
|
1213
|
+
recurrence_period: Optional['outputs.ExportRecurrencePeriodResponse'] = None,
|
|
1214
|
+
status: Optional[str] = None):
|
|
1215
|
+
"""
|
|
1216
|
+
The schedule associated with the export.
|
|
1217
|
+
:param str recurrence: The schedule recurrence.
|
|
1218
|
+
:param 'ExportRecurrencePeriodResponse' recurrence_period: Has start and end date of the recurrence. The start date must be in future. If present, the end date must be greater than start date.
|
|
1219
|
+
:param str status: The status of the export's schedule. If 'Inactive', the export's schedule is paused.
|
|
1220
|
+
"""
|
|
1221
|
+
if recurrence is not None:
|
|
1222
|
+
pulumi.set(__self__, "recurrence", recurrence)
|
|
1223
|
+
if recurrence_period is not None:
|
|
1224
|
+
pulumi.set(__self__, "recurrence_period", recurrence_period)
|
|
1225
|
+
if status is not None:
|
|
1226
|
+
pulumi.set(__self__, "status", status)
|
|
1227
|
+
|
|
1228
|
+
@property
|
|
1229
|
+
@pulumi.getter
|
|
1230
|
+
def recurrence(self) -> Optional[str]:
|
|
1231
|
+
"""
|
|
1232
|
+
The schedule recurrence.
|
|
1233
|
+
"""
|
|
1234
|
+
return pulumi.get(self, "recurrence")
|
|
1235
|
+
|
|
1236
|
+
@property
|
|
1237
|
+
@pulumi.getter(name="recurrencePeriod")
|
|
1238
|
+
def recurrence_period(self) -> Optional['outputs.ExportRecurrencePeriodResponse']:
|
|
1239
|
+
"""
|
|
1240
|
+
Has start and end date of the recurrence. The start date must be in future. If present, the end date must be greater than start date.
|
|
1241
|
+
"""
|
|
1242
|
+
return pulumi.get(self, "recurrence_period")
|
|
1243
|
+
|
|
1244
|
+
@property
|
|
1245
|
+
@pulumi.getter
|
|
1246
|
+
def status(self) -> Optional[str]:
|
|
1247
|
+
"""
|
|
1248
|
+
The status of the export's schedule. If 'Inactive', the export's schedule is paused.
|
|
1249
|
+
"""
|
|
1250
|
+
return pulumi.get(self, "status")
|
|
1251
|
+
|
|
1252
|
+
|
|
1253
|
+
@pulumi.output_type
|
|
1254
|
+
class ExportTimePeriodResponse(dict):
|
|
1255
|
+
"""
|
|
1256
|
+
The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months.
|
|
1257
|
+
"""
|
|
1258
|
+
@staticmethod
|
|
1259
|
+
def __key_warning(key: str):
|
|
1260
|
+
suggest = None
|
|
1261
|
+
if key == "from":
|
|
1262
|
+
suggest = "from_"
|
|
1263
|
+
|
|
1264
|
+
if suggest:
|
|
1265
|
+
pulumi.log.warn(f"Key '{key}' not found in ExportTimePeriodResponse. Access the value via the '{suggest}' property getter instead.")
|
|
1266
|
+
|
|
1267
|
+
def __getitem__(self, key: str) -> Any:
|
|
1268
|
+
ExportTimePeriodResponse.__key_warning(key)
|
|
1269
|
+
return super().__getitem__(key)
|
|
1270
|
+
|
|
1271
|
+
def get(self, key: str, default = None) -> Any:
|
|
1272
|
+
ExportTimePeriodResponse.__key_warning(key)
|
|
1273
|
+
return super().get(key, default)
|
|
1274
|
+
|
|
1275
|
+
def __init__(__self__, *,
|
|
1276
|
+
from_: str,
|
|
1277
|
+
to: str):
|
|
1278
|
+
"""
|
|
1279
|
+
The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months.
|
|
1280
|
+
:param str from_: The start date for export data.
|
|
1281
|
+
:param str to: The end date for export data.
|
|
1282
|
+
"""
|
|
1283
|
+
pulumi.set(__self__, "from_", from_)
|
|
1284
|
+
pulumi.set(__self__, "to", to)
|
|
1285
|
+
|
|
1286
|
+
@property
|
|
1287
|
+
@pulumi.getter(name="from")
|
|
1288
|
+
def from_(self) -> str:
|
|
1289
|
+
"""
|
|
1290
|
+
The start date for export data.
|
|
1291
|
+
"""
|
|
1292
|
+
return pulumi.get(self, "from_")
|
|
1293
|
+
|
|
1294
|
+
@property
|
|
1295
|
+
@pulumi.getter
|
|
1296
|
+
def to(self) -> str:
|
|
1297
|
+
"""
|
|
1298
|
+
The end date for export data.
|
|
1299
|
+
"""
|
|
1300
|
+
return pulumi.get(self, "to")
|
|
1301
|
+
|
|
1302
|
+
|
|
1303
|
+
@pulumi.output_type
|
|
1304
|
+
class FileDestinationResponse(dict):
|
|
1305
|
+
"""
|
|
1306
|
+
Destination of the view data. This is optional. Currently only CSV format is supported.
|
|
1307
|
+
"""
|
|
1308
|
+
@staticmethod
|
|
1309
|
+
def __key_warning(key: str):
|
|
1310
|
+
suggest = None
|
|
1311
|
+
if key == "fileFormats":
|
|
1312
|
+
suggest = "file_formats"
|
|
1313
|
+
|
|
1314
|
+
if suggest:
|
|
1315
|
+
pulumi.log.warn(f"Key '{key}' not found in FileDestinationResponse. Access the value via the '{suggest}' property getter instead.")
|
|
1316
|
+
|
|
1317
|
+
def __getitem__(self, key: str) -> Any:
|
|
1318
|
+
FileDestinationResponse.__key_warning(key)
|
|
1319
|
+
return super().__getitem__(key)
|
|
1320
|
+
|
|
1321
|
+
def get(self, key: str, default = None) -> Any:
|
|
1322
|
+
FileDestinationResponse.__key_warning(key)
|
|
1323
|
+
return super().get(key, default)
|
|
1324
|
+
|
|
1325
|
+
def __init__(__self__, *,
|
|
1326
|
+
file_formats: Optional[Sequence[str]] = None):
|
|
1327
|
+
"""
|
|
1328
|
+
Destination of the view data. This is optional. Currently only CSV format is supported.
|
|
1329
|
+
:param Sequence[str] file_formats: Destination of the view data. Currently only CSV format is supported.
|
|
1330
|
+
"""
|
|
1331
|
+
if file_formats is not None:
|
|
1332
|
+
pulumi.set(__self__, "file_formats", file_formats)
|
|
1333
|
+
|
|
1334
|
+
@property
|
|
1335
|
+
@pulumi.getter(name="fileFormats")
|
|
1336
|
+
def file_formats(self) -> Optional[Sequence[str]]:
|
|
1337
|
+
"""
|
|
1338
|
+
Destination of the view data. Currently only CSV format is supported.
|
|
1339
|
+
"""
|
|
1340
|
+
return pulumi.get(self, "file_formats")
|
|
1341
|
+
|
|
1342
|
+
|
|
1343
|
+
@pulumi.output_type
|
|
1344
|
+
class ForecastSpendResponse(dict):
|
|
1345
|
+
"""
|
|
1346
|
+
The forecasted cost which is being tracked for a budget.
|
|
1347
|
+
|
|
1348
|
+
Supported for CategoryType(s): Cost.
|
|
1349
|
+
"""
|
|
1350
|
+
def __init__(__self__, *,
|
|
1351
|
+
amount: float,
|
|
1352
|
+
unit: str):
|
|
1353
|
+
"""
|
|
1354
|
+
The forecasted cost which is being tracked for a budget.
|
|
1355
|
+
|
|
1356
|
+
Supported for CategoryType(s): Cost.
|
|
1357
|
+
:param float amount: The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.
|
|
1358
|
+
:param str unit: The unit of measure for the budget amount.
|
|
1359
|
+
"""
|
|
1360
|
+
pulumi.set(__self__, "amount", amount)
|
|
1361
|
+
pulumi.set(__self__, "unit", unit)
|
|
1362
|
+
|
|
1363
|
+
@property
|
|
1364
|
+
@pulumi.getter
|
|
1365
|
+
def amount(self) -> float:
|
|
1366
|
+
"""
|
|
1367
|
+
The forecasted cost for the total time period which is being tracked by the budget. This value is only provided if the budget contains a forecast alert type.
|
|
1368
|
+
"""
|
|
1369
|
+
return pulumi.get(self, "amount")
|
|
1370
|
+
|
|
1371
|
+
@property
|
|
1372
|
+
@pulumi.getter
|
|
1373
|
+
def unit(self) -> str:
|
|
1374
|
+
"""
|
|
1375
|
+
The unit of measure for the budget amount.
|
|
1376
|
+
"""
|
|
1377
|
+
return pulumi.get(self, "unit")
|
|
1378
|
+
|
|
1379
|
+
|
|
1380
|
+
@pulumi.output_type
|
|
1381
|
+
class KpiPropertiesResponse(dict):
|
|
1382
|
+
"""
|
|
1383
|
+
Each KPI must contain a 'type' and 'enabled' key.
|
|
1384
|
+
"""
|
|
1385
|
+
def __init__(__self__, *,
|
|
1386
|
+
enabled: Optional[bool] = None,
|
|
1387
|
+
id: Optional[str] = None,
|
|
1388
|
+
type: Optional[str] = None):
|
|
1389
|
+
"""
|
|
1390
|
+
Each KPI must contain a 'type' and 'enabled' key.
|
|
1391
|
+
:param bool enabled: show the KPI in the UI?
|
|
1392
|
+
:param str id: ID of resource related to metric (budget).
|
|
1393
|
+
:param str type: KPI type (Forecast, Budget).
|
|
1394
|
+
"""
|
|
1395
|
+
if enabled is not None:
|
|
1396
|
+
pulumi.set(__self__, "enabled", enabled)
|
|
1397
|
+
if id is not None:
|
|
1398
|
+
pulumi.set(__self__, "id", id)
|
|
1399
|
+
if type is not None:
|
|
1400
|
+
pulumi.set(__self__, "type", type)
|
|
1401
|
+
|
|
1402
|
+
@property
|
|
1403
|
+
@pulumi.getter
|
|
1404
|
+
def enabled(self) -> Optional[bool]:
|
|
1405
|
+
"""
|
|
1406
|
+
show the KPI in the UI?
|
|
1407
|
+
"""
|
|
1408
|
+
return pulumi.get(self, "enabled")
|
|
1409
|
+
|
|
1410
|
+
@property
|
|
1411
|
+
@pulumi.getter
|
|
1412
|
+
def id(self) -> Optional[str]:
|
|
1413
|
+
"""
|
|
1414
|
+
ID of resource related to metric (budget).
|
|
1415
|
+
"""
|
|
1416
|
+
return pulumi.get(self, "id")
|
|
1417
|
+
|
|
1418
|
+
@property
|
|
1419
|
+
@pulumi.getter
|
|
1420
|
+
def type(self) -> Optional[str]:
|
|
1421
|
+
"""
|
|
1422
|
+
KPI type (Forecast, Budget).
|
|
1423
|
+
"""
|
|
1424
|
+
return pulumi.get(self, "type")
|
|
1425
|
+
|
|
1426
|
+
|
|
1427
|
+
@pulumi.output_type
|
|
1428
|
+
class NotificationPropertiesResponse(dict):
|
|
1429
|
+
"""
|
|
1430
|
+
The properties of the scheduled action notification.
|
|
1431
|
+
"""
|
|
1432
|
+
@staticmethod
|
|
1433
|
+
def __key_warning(key: str):
|
|
1434
|
+
suggest = None
|
|
1435
|
+
if key == "regionalFormat":
|
|
1436
|
+
suggest = "regional_format"
|
|
1437
|
+
|
|
1438
|
+
if suggest:
|
|
1439
|
+
pulumi.log.warn(f"Key '{key}' not found in NotificationPropertiesResponse. Access the value via the '{suggest}' property getter instead.")
|
|
1440
|
+
|
|
1441
|
+
def __getitem__(self, key: str) -> Any:
|
|
1442
|
+
NotificationPropertiesResponse.__key_warning(key)
|
|
1443
|
+
return super().__getitem__(key)
|
|
1444
|
+
|
|
1445
|
+
def get(self, key: str, default = None) -> Any:
|
|
1446
|
+
NotificationPropertiesResponse.__key_warning(key)
|
|
1447
|
+
return super().get(key, default)
|
|
1448
|
+
|
|
1449
|
+
def __init__(__self__, *,
|
|
1450
|
+
subject: str,
|
|
1451
|
+
to: Sequence[str],
|
|
1452
|
+
language: Optional[str] = None,
|
|
1453
|
+
message: Optional[str] = None,
|
|
1454
|
+
regional_format: Optional[str] = None):
|
|
1455
|
+
"""
|
|
1456
|
+
The properties of the scheduled action notification.
|
|
1457
|
+
:param str subject: Subject of the email. Length is limited to 70 characters.
|
|
1458
|
+
:param Sequence[str] to: Array of email addresses.
|
|
1459
|
+
:param str language: Locale of the email.
|
|
1460
|
+
:param str message: Optional message to be added in the email. Length is limited to 250 characters.
|
|
1461
|
+
:param str regional_format: Regional format used for formatting date/time and currency values in the email.
|
|
1462
|
+
"""
|
|
1463
|
+
pulumi.set(__self__, "subject", subject)
|
|
1464
|
+
pulumi.set(__self__, "to", to)
|
|
1465
|
+
if language is not None:
|
|
1466
|
+
pulumi.set(__self__, "language", language)
|
|
1467
|
+
if message is not None:
|
|
1468
|
+
pulumi.set(__self__, "message", message)
|
|
1469
|
+
if regional_format is not None:
|
|
1470
|
+
pulumi.set(__self__, "regional_format", regional_format)
|
|
1471
|
+
|
|
1472
|
+
@property
|
|
1473
|
+
@pulumi.getter
|
|
1474
|
+
def subject(self) -> str:
|
|
1475
|
+
"""
|
|
1476
|
+
Subject of the email. Length is limited to 70 characters.
|
|
1477
|
+
"""
|
|
1478
|
+
return pulumi.get(self, "subject")
|
|
1479
|
+
|
|
1480
|
+
@property
|
|
1481
|
+
@pulumi.getter
|
|
1482
|
+
def to(self) -> Sequence[str]:
|
|
1483
|
+
"""
|
|
1484
|
+
Array of email addresses.
|
|
1485
|
+
"""
|
|
1486
|
+
return pulumi.get(self, "to")
|
|
1487
|
+
|
|
1488
|
+
@property
|
|
1489
|
+
@pulumi.getter
|
|
1490
|
+
def language(self) -> Optional[str]:
|
|
1491
|
+
"""
|
|
1492
|
+
Locale of the email.
|
|
1493
|
+
"""
|
|
1494
|
+
return pulumi.get(self, "language")
|
|
1495
|
+
|
|
1496
|
+
@property
|
|
1497
|
+
@pulumi.getter
|
|
1498
|
+
def message(self) -> Optional[str]:
|
|
1499
|
+
"""
|
|
1500
|
+
Optional message to be added in the email. Length is limited to 250 characters.
|
|
1501
|
+
"""
|
|
1502
|
+
return pulumi.get(self, "message")
|
|
1503
|
+
|
|
1504
|
+
@property
|
|
1505
|
+
@pulumi.getter(name="regionalFormat")
|
|
1506
|
+
def regional_format(self) -> Optional[str]:
|
|
1507
|
+
"""
|
|
1508
|
+
Regional format used for formatting date/time and currency values in the email.
|
|
1509
|
+
"""
|
|
1510
|
+
return pulumi.get(self, "regional_format")
|
|
1511
|
+
|
|
1512
|
+
|
|
1513
|
+
@pulumi.output_type
|
|
1514
|
+
class NotificationResponse(dict):
|
|
1515
|
+
"""
|
|
1516
|
+
The notification associated with a budget.
|
|
1517
|
+
|
|
1518
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1519
|
+
"""
|
|
1520
|
+
@staticmethod
|
|
1521
|
+
def __key_warning(key: str):
|
|
1522
|
+
suggest = None
|
|
1523
|
+
if key == "contactEmails":
|
|
1524
|
+
suggest = "contact_emails"
|
|
1525
|
+
elif key == "contactGroups":
|
|
1526
|
+
suggest = "contact_groups"
|
|
1527
|
+
elif key == "contactRoles":
|
|
1528
|
+
suggest = "contact_roles"
|
|
1529
|
+
elif key == "thresholdType":
|
|
1530
|
+
suggest = "threshold_type"
|
|
1531
|
+
|
|
1532
|
+
if suggest:
|
|
1533
|
+
pulumi.log.warn(f"Key '{key}' not found in NotificationResponse. Access the value via the '{suggest}' property getter instead.")
|
|
1534
|
+
|
|
1535
|
+
def __getitem__(self, key: str) -> Any:
|
|
1536
|
+
NotificationResponse.__key_warning(key)
|
|
1537
|
+
return super().__getitem__(key)
|
|
1538
|
+
|
|
1539
|
+
def get(self, key: str, default = None) -> Any:
|
|
1540
|
+
NotificationResponse.__key_warning(key)
|
|
1541
|
+
return super().get(key, default)
|
|
1542
|
+
|
|
1543
|
+
def __init__(__self__, *,
|
|
1544
|
+
contact_emails: Sequence[str],
|
|
1545
|
+
enabled: bool,
|
|
1546
|
+
operator: str,
|
|
1547
|
+
threshold: float,
|
|
1548
|
+
contact_groups: Optional[Sequence[str]] = None,
|
|
1549
|
+
contact_roles: Optional[Sequence[str]] = None,
|
|
1550
|
+
frequency: Optional[str] = None,
|
|
1551
|
+
locale: Optional[str] = None,
|
|
1552
|
+
threshold_type: Optional[str] = None):
|
|
1553
|
+
"""
|
|
1554
|
+
The notification associated with a budget.
|
|
1555
|
+
|
|
1556
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1557
|
+
:param Sequence[str] contact_emails: Email addresses to send the notification to when the threshold is breached. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
|
|
1558
|
+
|
|
1559
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1560
|
+
:param bool enabled: The notification is enabled or not.
|
|
1561
|
+
|
|
1562
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1563
|
+
:param str operator: The comparison operator.
|
|
1564
|
+
|
|
1565
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1566
|
+
|
|
1567
|
+
Supported operators for **CategoryType: Cost**
|
|
1568
|
+
- GreaterThan
|
|
1569
|
+
- GreaterThanOrEqualTo
|
|
1570
|
+
|
|
1571
|
+
Supported operators for **CategoryType: ReservationUtilization**
|
|
1572
|
+
- LessThan
|
|
1573
|
+
:param float threshold: Threshold value associated with a notification. It is always percent with a maximum of 2 decimal places.
|
|
1574
|
+
|
|
1575
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1576
|
+
|
|
1577
|
+
**CategoryType: Cost** - Must be between 0 and 1000. Notification is sent when the cost exceeded the threshold.
|
|
1578
|
+
|
|
1579
|
+
**CategoryType: ReservationUtilization** - Must be between 0 and 100. Notification is sent when a reservation has a utilization percentage below the threshold.
|
|
1580
|
+
:param Sequence[str] contact_groups: Subscription or Resource Group scopes only. Action groups to send the notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id.
|
|
1581
|
+
|
|
1582
|
+
Supported for CategoryType(s): Cost.
|
|
1583
|
+
:param Sequence[str] contact_roles: Subscription or Resource Group scopes only. Contact roles to send the notification to when the threshold is breached.
|
|
1584
|
+
|
|
1585
|
+
Supported for CategoryType(s): Cost.
|
|
1586
|
+
:param str frequency: Frequency of a notification. Represents how long the notification will be silent after triggering an alert for a threshold breach. If not specified, the frequency will be set by default based on the timeGrain (Weekly when timeGrain: Last7Days, Monthly when timeGrain: Last30Days).
|
|
1587
|
+
|
|
1588
|
+
Supported for CategoryType(s): ReservationUtilization.
|
|
1589
|
+
:param str locale: Language in which the recipient will receive the notification,
|
|
1590
|
+
|
|
1591
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1592
|
+
:param str threshold_type: The type of threshold.
|
|
1593
|
+
|
|
1594
|
+
Supported for CategoryType(s): Cost.
|
|
1595
|
+
"""
|
|
1596
|
+
pulumi.set(__self__, "contact_emails", contact_emails)
|
|
1597
|
+
pulumi.set(__self__, "enabled", enabled)
|
|
1598
|
+
pulumi.set(__self__, "operator", operator)
|
|
1599
|
+
pulumi.set(__self__, "threshold", threshold)
|
|
1600
|
+
if contact_groups is not None:
|
|
1601
|
+
pulumi.set(__self__, "contact_groups", contact_groups)
|
|
1602
|
+
if contact_roles is not None:
|
|
1603
|
+
pulumi.set(__self__, "contact_roles", contact_roles)
|
|
1604
|
+
if frequency is not None:
|
|
1605
|
+
pulumi.set(__self__, "frequency", frequency)
|
|
1606
|
+
if locale is not None:
|
|
1607
|
+
pulumi.set(__self__, "locale", locale)
|
|
1608
|
+
if threshold_type is None:
|
|
1609
|
+
threshold_type = 'Actual'
|
|
1610
|
+
if threshold_type is not None:
|
|
1611
|
+
pulumi.set(__self__, "threshold_type", threshold_type)
|
|
1612
|
+
|
|
1613
|
+
@property
|
|
1614
|
+
@pulumi.getter(name="contactEmails")
|
|
1615
|
+
def contact_emails(self) -> Sequence[str]:
|
|
1616
|
+
"""
|
|
1617
|
+
Email addresses to send the notification to when the threshold is breached. Must have at least one contact email or contact group specified at the Subscription or Resource Group scopes. All other scopes must have at least one contact email specified.
|
|
1618
|
+
|
|
1619
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1620
|
+
"""
|
|
1621
|
+
return pulumi.get(self, "contact_emails")
|
|
1622
|
+
|
|
1623
|
+
@property
|
|
1624
|
+
@pulumi.getter
|
|
1625
|
+
def enabled(self) -> bool:
|
|
1626
|
+
"""
|
|
1627
|
+
The notification is enabled or not.
|
|
1628
|
+
|
|
1629
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1630
|
+
"""
|
|
1631
|
+
return pulumi.get(self, "enabled")
|
|
1632
|
+
|
|
1633
|
+
@property
|
|
1634
|
+
@pulumi.getter
|
|
1635
|
+
def operator(self) -> str:
|
|
1636
|
+
"""
|
|
1637
|
+
The comparison operator.
|
|
1638
|
+
|
|
1639
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1640
|
+
|
|
1641
|
+
Supported operators for **CategoryType: Cost**
|
|
1642
|
+
- GreaterThan
|
|
1643
|
+
- GreaterThanOrEqualTo
|
|
1644
|
+
|
|
1645
|
+
Supported operators for **CategoryType: ReservationUtilization**
|
|
1646
|
+
- LessThan
|
|
1647
|
+
"""
|
|
1648
|
+
return pulumi.get(self, "operator")
|
|
1649
|
+
|
|
1650
|
+
@property
|
|
1651
|
+
@pulumi.getter
|
|
1652
|
+
def threshold(self) -> float:
|
|
1653
|
+
"""
|
|
1654
|
+
Threshold value associated with a notification. It is always percent with a maximum of 2 decimal places.
|
|
1655
|
+
|
|
1656
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1657
|
+
|
|
1658
|
+
**CategoryType: Cost** - Must be between 0 and 1000. Notification is sent when the cost exceeded the threshold.
|
|
1659
|
+
|
|
1660
|
+
**CategoryType: ReservationUtilization** - Must be between 0 and 100. Notification is sent when a reservation has a utilization percentage below the threshold.
|
|
1661
|
+
"""
|
|
1662
|
+
return pulumi.get(self, "threshold")
|
|
1663
|
+
|
|
1664
|
+
@property
|
|
1665
|
+
@pulumi.getter(name="contactGroups")
|
|
1666
|
+
def contact_groups(self) -> Optional[Sequence[str]]:
|
|
1667
|
+
"""
|
|
1668
|
+
Subscription or Resource Group scopes only. Action groups to send the notification to when the threshold is exceeded. Must be provided as a fully qualified Azure resource id.
|
|
1669
|
+
|
|
1670
|
+
Supported for CategoryType(s): Cost.
|
|
1671
|
+
"""
|
|
1672
|
+
return pulumi.get(self, "contact_groups")
|
|
1673
|
+
|
|
1674
|
+
@property
|
|
1675
|
+
@pulumi.getter(name="contactRoles")
|
|
1676
|
+
def contact_roles(self) -> Optional[Sequence[str]]:
|
|
1677
|
+
"""
|
|
1678
|
+
Subscription or Resource Group scopes only. Contact roles to send the notification to when the threshold is breached.
|
|
1679
|
+
|
|
1680
|
+
Supported for CategoryType(s): Cost.
|
|
1681
|
+
"""
|
|
1682
|
+
return pulumi.get(self, "contact_roles")
|
|
1683
|
+
|
|
1684
|
+
@property
|
|
1685
|
+
@pulumi.getter
|
|
1686
|
+
def frequency(self) -> Optional[str]:
|
|
1687
|
+
"""
|
|
1688
|
+
Frequency of a notification. Represents how long the notification will be silent after triggering an alert for a threshold breach. If not specified, the frequency will be set by default based on the timeGrain (Weekly when timeGrain: Last7Days, Monthly when timeGrain: Last30Days).
|
|
1689
|
+
|
|
1690
|
+
Supported for CategoryType(s): ReservationUtilization.
|
|
1691
|
+
"""
|
|
1692
|
+
return pulumi.get(self, "frequency")
|
|
1693
|
+
|
|
1694
|
+
@property
|
|
1695
|
+
@pulumi.getter
|
|
1696
|
+
def locale(self) -> Optional[str]:
|
|
1697
|
+
"""
|
|
1698
|
+
Language in which the recipient will receive the notification,
|
|
1699
|
+
|
|
1700
|
+
Supported for CategoryType(s): Cost, ReservationUtilization.
|
|
1701
|
+
"""
|
|
1702
|
+
return pulumi.get(self, "locale")
|
|
1703
|
+
|
|
1704
|
+
@property
|
|
1705
|
+
@pulumi.getter(name="thresholdType")
|
|
1706
|
+
def threshold_type(self) -> Optional[str]:
|
|
1707
|
+
"""
|
|
1708
|
+
The type of threshold.
|
|
1709
|
+
|
|
1710
|
+
Supported for CategoryType(s): Cost.
|
|
1711
|
+
"""
|
|
1712
|
+
return pulumi.get(self, "threshold_type")
|
|
1713
|
+
|
|
1714
|
+
|
|
1715
|
+
@pulumi.output_type
|
|
1716
|
+
class PivotPropertiesResponse(dict):
|
|
1717
|
+
"""
|
|
1718
|
+
Each pivot must contain a 'type' and 'name'.
|
|
1719
|
+
"""
|
|
1720
|
+
def __init__(__self__, *,
|
|
1721
|
+
name: Optional[str] = None,
|
|
1722
|
+
type: Optional[str] = None):
|
|
1723
|
+
"""
|
|
1724
|
+
Each pivot must contain a 'type' and 'name'.
|
|
1725
|
+
:param str name: Data field to show in view.
|
|
1726
|
+
:param str type: Data type to show in view.
|
|
1727
|
+
"""
|
|
1728
|
+
if name is not None:
|
|
1729
|
+
pulumi.set(__self__, "name", name)
|
|
1730
|
+
if type is not None:
|
|
1731
|
+
pulumi.set(__self__, "type", type)
|
|
1732
|
+
|
|
1733
|
+
@property
|
|
1734
|
+
@pulumi.getter
|
|
1735
|
+
def name(self) -> Optional[str]:
|
|
1736
|
+
"""
|
|
1737
|
+
Data field to show in view.
|
|
1738
|
+
"""
|
|
1739
|
+
return pulumi.get(self, "name")
|
|
1740
|
+
|
|
1741
|
+
@property
|
|
1742
|
+
@pulumi.getter
|
|
1743
|
+
def type(self) -> Optional[str]:
|
|
1744
|
+
"""
|
|
1745
|
+
Data type to show in view.
|
|
1746
|
+
"""
|
|
1747
|
+
return pulumi.get(self, "type")
|
|
1748
|
+
|
|
1749
|
+
|
|
1750
|
+
@pulumi.output_type
|
|
1751
|
+
class ReportConfigAggregationResponse(dict):
|
|
1752
|
+
"""
|
|
1753
|
+
The aggregation expression to be used in the report.
|
|
1754
|
+
"""
|
|
1755
|
+
def __init__(__self__, *,
|
|
1756
|
+
function: str,
|
|
1757
|
+
name: str):
|
|
1758
|
+
"""
|
|
1759
|
+
The aggregation expression to be used in the report.
|
|
1760
|
+
:param str function: The name of the aggregation function to use.
|
|
1761
|
+
:param str name: The name of the column to aggregate.
|
|
1762
|
+
"""
|
|
1763
|
+
pulumi.set(__self__, "function", function)
|
|
1764
|
+
pulumi.set(__self__, "name", name)
|
|
1765
|
+
|
|
1766
|
+
@property
|
|
1767
|
+
@pulumi.getter
|
|
1768
|
+
def function(self) -> str:
|
|
1769
|
+
"""
|
|
1770
|
+
The name of the aggregation function to use.
|
|
1771
|
+
"""
|
|
1772
|
+
return pulumi.get(self, "function")
|
|
1773
|
+
|
|
1774
|
+
@property
|
|
1775
|
+
@pulumi.getter
|
|
1776
|
+
def name(self) -> str:
|
|
1777
|
+
"""
|
|
1778
|
+
The name of the column to aggregate.
|
|
1779
|
+
"""
|
|
1780
|
+
return pulumi.get(self, "name")
|
|
1781
|
+
|
|
1782
|
+
|
|
1783
|
+
@pulumi.output_type
|
|
1784
|
+
class ReportConfigComparisonExpressionResponse(dict):
|
|
1785
|
+
"""
|
|
1786
|
+
The comparison expression to be used in the report.
|
|
1787
|
+
"""
|
|
1788
|
+
def __init__(__self__, *,
|
|
1789
|
+
name: str,
|
|
1790
|
+
operator: str,
|
|
1791
|
+
values: Sequence[str]):
|
|
1792
|
+
"""
|
|
1793
|
+
The comparison expression to be used in the report.
|
|
1794
|
+
:param str name: The name of the column to use in comparison.
|
|
1795
|
+
:param str operator: The operator to use for comparison.
|
|
1796
|
+
:param Sequence[str] values: Array of values to use for comparison
|
|
1797
|
+
"""
|
|
1798
|
+
pulumi.set(__self__, "name", name)
|
|
1799
|
+
pulumi.set(__self__, "operator", operator)
|
|
1800
|
+
pulumi.set(__self__, "values", values)
|
|
1801
|
+
|
|
1802
|
+
@property
|
|
1803
|
+
@pulumi.getter
|
|
1804
|
+
def name(self) -> str:
|
|
1805
|
+
"""
|
|
1806
|
+
The name of the column to use in comparison.
|
|
1807
|
+
"""
|
|
1808
|
+
return pulumi.get(self, "name")
|
|
1809
|
+
|
|
1810
|
+
@property
|
|
1811
|
+
@pulumi.getter
|
|
1812
|
+
def operator(self) -> str:
|
|
1813
|
+
"""
|
|
1814
|
+
The operator to use for comparison.
|
|
1815
|
+
"""
|
|
1816
|
+
return pulumi.get(self, "operator")
|
|
1817
|
+
|
|
1818
|
+
@property
|
|
1819
|
+
@pulumi.getter
|
|
1820
|
+
def values(self) -> Sequence[str]:
|
|
1821
|
+
"""
|
|
1822
|
+
Array of values to use for comparison
|
|
1823
|
+
"""
|
|
1824
|
+
return pulumi.get(self, "values")
|
|
1825
|
+
|
|
1826
|
+
|
|
1827
|
+
@pulumi.output_type
|
|
1828
|
+
class ReportConfigDatasetConfigurationResponse(dict):
|
|
1829
|
+
"""
|
|
1830
|
+
The configuration of dataset in the report.
|
|
1831
|
+
"""
|
|
1832
|
+
def __init__(__self__, *,
|
|
1833
|
+
columns: Optional[Sequence[str]] = None):
|
|
1834
|
+
"""
|
|
1835
|
+
The configuration of dataset in the report.
|
|
1836
|
+
:param Sequence[str] columns: Array of column names to be included in the report. Any valid report column name is allowed. If not provided, then report includes all columns.
|
|
1837
|
+
"""
|
|
1838
|
+
if columns is not None:
|
|
1839
|
+
pulumi.set(__self__, "columns", columns)
|
|
1840
|
+
|
|
1841
|
+
@property
|
|
1842
|
+
@pulumi.getter
|
|
1843
|
+
def columns(self) -> Optional[Sequence[str]]:
|
|
1844
|
+
"""
|
|
1845
|
+
Array of column names to be included in the report. Any valid report column name is allowed. If not provided, then report includes all columns.
|
|
1846
|
+
"""
|
|
1847
|
+
return pulumi.get(self, "columns")
|
|
1848
|
+
|
|
1849
|
+
|
|
1850
|
+
@pulumi.output_type
|
|
1851
|
+
class ReportConfigDatasetResponse(dict):
|
|
1852
|
+
"""
|
|
1853
|
+
The definition of data present in the report.
|
|
1854
|
+
"""
|
|
1855
|
+
def __init__(__self__, *,
|
|
1856
|
+
aggregation: Optional[Mapping[str, 'outputs.ReportConfigAggregationResponse']] = None,
|
|
1857
|
+
configuration: Optional['outputs.ReportConfigDatasetConfigurationResponse'] = None,
|
|
1858
|
+
filter: Optional['outputs.ReportConfigFilterResponse'] = None,
|
|
1859
|
+
granularity: Optional[str] = None,
|
|
1860
|
+
grouping: Optional[Sequence['outputs.ReportConfigGroupingResponse']] = None,
|
|
1861
|
+
sorting: Optional[Sequence['outputs.ReportConfigSortingResponse']] = None):
|
|
1862
|
+
"""
|
|
1863
|
+
The definition of data present in the report.
|
|
1864
|
+
:param Mapping[str, 'ReportConfigAggregationResponse'] aggregation: Dictionary of aggregation expression to use in the report. The key of each item in the dictionary is the alias for the aggregated column. Report can have up to 2 aggregation clauses.
|
|
1865
|
+
:param 'ReportConfigDatasetConfigurationResponse' configuration: Has configuration information for the data in the report. The configuration will be ignored if aggregation and grouping are provided.
|
|
1866
|
+
:param 'ReportConfigFilterResponse' filter: Has filter expression to use in the report.
|
|
1867
|
+
:param str granularity: The granularity of rows in the report.
|
|
1868
|
+
:param Sequence['ReportConfigGroupingResponse'] grouping: Array of group by expression to use in the report. Report can have up to 2 group by clauses.
|
|
1869
|
+
:param Sequence['ReportConfigSortingResponse'] sorting: Array of order by expression to use in the report.
|
|
1870
|
+
"""
|
|
1871
|
+
if aggregation is not None:
|
|
1872
|
+
pulumi.set(__self__, "aggregation", aggregation)
|
|
1873
|
+
if configuration is not None:
|
|
1874
|
+
pulumi.set(__self__, "configuration", configuration)
|
|
1875
|
+
if filter is not None:
|
|
1876
|
+
pulumi.set(__self__, "filter", filter)
|
|
1877
|
+
if granularity is not None:
|
|
1878
|
+
pulumi.set(__self__, "granularity", granularity)
|
|
1879
|
+
if grouping is not None:
|
|
1880
|
+
pulumi.set(__self__, "grouping", grouping)
|
|
1881
|
+
if sorting is not None:
|
|
1882
|
+
pulumi.set(__self__, "sorting", sorting)
|
|
1883
|
+
|
|
1884
|
+
@property
|
|
1885
|
+
@pulumi.getter
|
|
1886
|
+
def aggregation(self) -> Optional[Mapping[str, 'outputs.ReportConfigAggregationResponse']]:
|
|
1887
|
+
"""
|
|
1888
|
+
Dictionary of aggregation expression to use in the report. The key of each item in the dictionary is the alias for the aggregated column. Report can have up to 2 aggregation clauses.
|
|
1889
|
+
"""
|
|
1890
|
+
return pulumi.get(self, "aggregation")
|
|
1891
|
+
|
|
1892
|
+
@property
|
|
1893
|
+
@pulumi.getter
|
|
1894
|
+
def configuration(self) -> Optional['outputs.ReportConfigDatasetConfigurationResponse']:
|
|
1895
|
+
"""
|
|
1896
|
+
Has configuration information for the data in the report. The configuration will be ignored if aggregation and grouping are provided.
|
|
1897
|
+
"""
|
|
1898
|
+
return pulumi.get(self, "configuration")
|
|
1899
|
+
|
|
1900
|
+
@property
|
|
1901
|
+
@pulumi.getter
|
|
1902
|
+
def filter(self) -> Optional['outputs.ReportConfigFilterResponse']:
|
|
1903
|
+
"""
|
|
1904
|
+
Has filter expression to use in the report.
|
|
1905
|
+
"""
|
|
1906
|
+
return pulumi.get(self, "filter")
|
|
1907
|
+
|
|
1908
|
+
@property
|
|
1909
|
+
@pulumi.getter
|
|
1910
|
+
def granularity(self) -> Optional[str]:
|
|
1911
|
+
"""
|
|
1912
|
+
The granularity of rows in the report.
|
|
1913
|
+
"""
|
|
1914
|
+
return pulumi.get(self, "granularity")
|
|
1915
|
+
|
|
1916
|
+
@property
|
|
1917
|
+
@pulumi.getter
|
|
1918
|
+
def grouping(self) -> Optional[Sequence['outputs.ReportConfigGroupingResponse']]:
|
|
1919
|
+
"""
|
|
1920
|
+
Array of group by expression to use in the report. Report can have up to 2 group by clauses.
|
|
1921
|
+
"""
|
|
1922
|
+
return pulumi.get(self, "grouping")
|
|
1923
|
+
|
|
1924
|
+
@property
|
|
1925
|
+
@pulumi.getter
|
|
1926
|
+
def sorting(self) -> Optional[Sequence['outputs.ReportConfigSortingResponse']]:
|
|
1927
|
+
"""
|
|
1928
|
+
Array of order by expression to use in the report.
|
|
1929
|
+
"""
|
|
1930
|
+
return pulumi.get(self, "sorting")
|
|
1931
|
+
|
|
1932
|
+
|
|
1933
|
+
@pulumi.output_type
|
|
1934
|
+
class ReportConfigFilterResponse(dict):
|
|
1935
|
+
"""
|
|
1936
|
+
The filter expression to be used in the report.
|
|
1937
|
+
"""
|
|
1938
|
+
@staticmethod
|
|
1939
|
+
def __key_warning(key: str):
|
|
1940
|
+
suggest = None
|
|
1941
|
+
if key == "and":
|
|
1942
|
+
suggest = "and_"
|
|
1943
|
+
elif key == "or":
|
|
1944
|
+
suggest = "or_"
|
|
1945
|
+
|
|
1946
|
+
if suggest:
|
|
1947
|
+
pulumi.log.warn(f"Key '{key}' not found in ReportConfigFilterResponse. Access the value via the '{suggest}' property getter instead.")
|
|
1948
|
+
|
|
1949
|
+
def __getitem__(self, key: str) -> Any:
|
|
1950
|
+
ReportConfigFilterResponse.__key_warning(key)
|
|
1951
|
+
return super().__getitem__(key)
|
|
1952
|
+
|
|
1953
|
+
def get(self, key: str, default = None) -> Any:
|
|
1954
|
+
ReportConfigFilterResponse.__key_warning(key)
|
|
1955
|
+
return super().get(key, default)
|
|
1956
|
+
|
|
1957
|
+
def __init__(__self__, *,
|
|
1958
|
+
and_: Optional[Sequence['outputs.ReportConfigFilterResponse']] = None,
|
|
1959
|
+
dimensions: Optional['outputs.ReportConfigComparisonExpressionResponse'] = None,
|
|
1960
|
+
or_: Optional[Sequence['outputs.ReportConfigFilterResponse']] = None,
|
|
1961
|
+
tags: Optional['outputs.ReportConfigComparisonExpressionResponse'] = None):
|
|
1962
|
+
"""
|
|
1963
|
+
The filter expression to be used in the report.
|
|
1964
|
+
:param Sequence['ReportConfigFilterResponse'] and_: The logical "AND" expression. Must have at least 2 items.
|
|
1965
|
+
:param 'ReportConfigComparisonExpressionResponse' dimensions: Has comparison expression for a dimension
|
|
1966
|
+
:param Sequence['ReportConfigFilterResponse'] or_: The logical "OR" expression. Must have at least 2 items.
|
|
1967
|
+
:param 'ReportConfigComparisonExpressionResponse' tags: Has comparison expression for a tag
|
|
1968
|
+
"""
|
|
1969
|
+
if and_ is not None:
|
|
1970
|
+
pulumi.set(__self__, "and_", and_)
|
|
1971
|
+
if dimensions is not None:
|
|
1972
|
+
pulumi.set(__self__, "dimensions", dimensions)
|
|
1973
|
+
if or_ is not None:
|
|
1974
|
+
pulumi.set(__self__, "or_", or_)
|
|
1975
|
+
if tags is not None:
|
|
1976
|
+
pulumi.set(__self__, "tags", tags)
|
|
1977
|
+
|
|
1978
|
+
@property
|
|
1979
|
+
@pulumi.getter(name="and")
|
|
1980
|
+
def and_(self) -> Optional[Sequence['outputs.ReportConfigFilterResponse']]:
|
|
1981
|
+
"""
|
|
1982
|
+
The logical "AND" expression. Must have at least 2 items.
|
|
1983
|
+
"""
|
|
1984
|
+
return pulumi.get(self, "and_")
|
|
1985
|
+
|
|
1986
|
+
@property
|
|
1987
|
+
@pulumi.getter
|
|
1988
|
+
def dimensions(self) -> Optional['outputs.ReportConfigComparisonExpressionResponse']:
|
|
1989
|
+
"""
|
|
1990
|
+
Has comparison expression for a dimension
|
|
1991
|
+
"""
|
|
1992
|
+
return pulumi.get(self, "dimensions")
|
|
1993
|
+
|
|
1994
|
+
@property
|
|
1995
|
+
@pulumi.getter(name="or")
|
|
1996
|
+
def or_(self) -> Optional[Sequence['outputs.ReportConfigFilterResponse']]:
|
|
1997
|
+
"""
|
|
1998
|
+
The logical "OR" expression. Must have at least 2 items.
|
|
1999
|
+
"""
|
|
2000
|
+
return pulumi.get(self, "or_")
|
|
2001
|
+
|
|
2002
|
+
@property
|
|
2003
|
+
@pulumi.getter
|
|
2004
|
+
def tags(self) -> Optional['outputs.ReportConfigComparisonExpressionResponse']:
|
|
2005
|
+
"""
|
|
2006
|
+
Has comparison expression for a tag
|
|
2007
|
+
"""
|
|
2008
|
+
return pulumi.get(self, "tags")
|
|
2009
|
+
|
|
2010
|
+
|
|
2011
|
+
@pulumi.output_type
|
|
2012
|
+
class ReportConfigGroupingResponse(dict):
|
|
2013
|
+
"""
|
|
2014
|
+
The group by expression to be used in the report.
|
|
2015
|
+
"""
|
|
2016
|
+
def __init__(__self__, *,
|
|
2017
|
+
name: str,
|
|
2018
|
+
type: str):
|
|
2019
|
+
"""
|
|
2020
|
+
The group by expression to be used in the report.
|
|
2021
|
+
:param str name: The name of the column to group. This version supports subscription lowest possible grain.
|
|
2022
|
+
:param str type: Has type of the column to group.
|
|
2023
|
+
"""
|
|
2024
|
+
pulumi.set(__self__, "name", name)
|
|
2025
|
+
pulumi.set(__self__, "type", type)
|
|
2026
|
+
|
|
2027
|
+
@property
|
|
2028
|
+
@pulumi.getter
|
|
2029
|
+
def name(self) -> str:
|
|
2030
|
+
"""
|
|
2031
|
+
The name of the column to group. This version supports subscription lowest possible grain.
|
|
2032
|
+
"""
|
|
2033
|
+
return pulumi.get(self, "name")
|
|
2034
|
+
|
|
2035
|
+
@property
|
|
2036
|
+
@pulumi.getter
|
|
2037
|
+
def type(self) -> str:
|
|
2038
|
+
"""
|
|
2039
|
+
Has type of the column to group.
|
|
2040
|
+
"""
|
|
2041
|
+
return pulumi.get(self, "type")
|
|
2042
|
+
|
|
2043
|
+
|
|
2044
|
+
@pulumi.output_type
|
|
2045
|
+
class ReportConfigSortingResponse(dict):
|
|
2046
|
+
"""
|
|
2047
|
+
The order by expression to be used in the report.
|
|
2048
|
+
"""
|
|
2049
|
+
def __init__(__self__, *,
|
|
2050
|
+
name: str,
|
|
2051
|
+
direction: Optional[str] = None):
|
|
2052
|
+
"""
|
|
2053
|
+
The order by expression to be used in the report.
|
|
2054
|
+
:param str name: The name of the column to sort.
|
|
2055
|
+
:param str direction: Direction of sort.
|
|
2056
|
+
"""
|
|
2057
|
+
pulumi.set(__self__, "name", name)
|
|
2058
|
+
if direction is not None:
|
|
2059
|
+
pulumi.set(__self__, "direction", direction)
|
|
2060
|
+
|
|
2061
|
+
@property
|
|
2062
|
+
@pulumi.getter
|
|
2063
|
+
def name(self) -> str:
|
|
2064
|
+
"""
|
|
2065
|
+
The name of the column to sort.
|
|
2066
|
+
"""
|
|
2067
|
+
return pulumi.get(self, "name")
|
|
2068
|
+
|
|
2069
|
+
@property
|
|
2070
|
+
@pulumi.getter
|
|
2071
|
+
def direction(self) -> Optional[str]:
|
|
2072
|
+
"""
|
|
2073
|
+
Direction of sort.
|
|
2074
|
+
"""
|
|
2075
|
+
return pulumi.get(self, "direction")
|
|
2076
|
+
|
|
2077
|
+
|
|
2078
|
+
@pulumi.output_type
|
|
2079
|
+
class ReportConfigTimePeriodResponse(dict):
|
|
2080
|
+
"""
|
|
2081
|
+
The start and end date for pulling data for the report.
|
|
2082
|
+
"""
|
|
2083
|
+
@staticmethod
|
|
2084
|
+
def __key_warning(key: str):
|
|
2085
|
+
suggest = None
|
|
2086
|
+
if key == "from":
|
|
2087
|
+
suggest = "from_"
|
|
2088
|
+
|
|
2089
|
+
if suggest:
|
|
2090
|
+
pulumi.log.warn(f"Key '{key}' not found in ReportConfigTimePeriodResponse. Access the value via the '{suggest}' property getter instead.")
|
|
2091
|
+
|
|
2092
|
+
def __getitem__(self, key: str) -> Any:
|
|
2093
|
+
ReportConfigTimePeriodResponse.__key_warning(key)
|
|
2094
|
+
return super().__getitem__(key)
|
|
2095
|
+
|
|
2096
|
+
def get(self, key: str, default = None) -> Any:
|
|
2097
|
+
ReportConfigTimePeriodResponse.__key_warning(key)
|
|
2098
|
+
return super().get(key, default)
|
|
2099
|
+
|
|
2100
|
+
def __init__(__self__, *,
|
|
2101
|
+
from_: str,
|
|
2102
|
+
to: str):
|
|
2103
|
+
"""
|
|
2104
|
+
The start and end date for pulling data for the report.
|
|
2105
|
+
:param str from_: The start date to pull data from.
|
|
2106
|
+
:param str to: The end date to pull data to.
|
|
2107
|
+
"""
|
|
2108
|
+
pulumi.set(__self__, "from_", from_)
|
|
2109
|
+
pulumi.set(__self__, "to", to)
|
|
2110
|
+
|
|
2111
|
+
@property
|
|
2112
|
+
@pulumi.getter(name="from")
|
|
2113
|
+
def from_(self) -> str:
|
|
2114
|
+
"""
|
|
2115
|
+
The start date to pull data from.
|
|
2116
|
+
"""
|
|
2117
|
+
return pulumi.get(self, "from_")
|
|
2118
|
+
|
|
2119
|
+
@property
|
|
2120
|
+
@pulumi.getter
|
|
2121
|
+
def to(self) -> str:
|
|
2122
|
+
"""
|
|
2123
|
+
The end date to pull data to.
|
|
2124
|
+
"""
|
|
2125
|
+
return pulumi.get(self, "to")
|
|
2126
|
+
|
|
2127
|
+
|
|
2128
|
+
@pulumi.output_type
|
|
2129
|
+
class SchedulePropertiesResponse(dict):
|
|
2130
|
+
"""
|
|
2131
|
+
The properties of the schedule.
|
|
2132
|
+
"""
|
|
2133
|
+
@staticmethod
|
|
2134
|
+
def __key_warning(key: str):
|
|
2135
|
+
suggest = None
|
|
2136
|
+
if key == "endDate":
|
|
2137
|
+
suggest = "end_date"
|
|
2138
|
+
elif key == "startDate":
|
|
2139
|
+
suggest = "start_date"
|
|
2140
|
+
elif key == "dayOfMonth":
|
|
2141
|
+
suggest = "day_of_month"
|
|
2142
|
+
elif key == "daysOfWeek":
|
|
2143
|
+
suggest = "days_of_week"
|
|
2144
|
+
elif key == "hourOfDay":
|
|
2145
|
+
suggest = "hour_of_day"
|
|
2146
|
+
elif key == "weeksOfMonth":
|
|
2147
|
+
suggest = "weeks_of_month"
|
|
2148
|
+
|
|
2149
|
+
if suggest:
|
|
2150
|
+
pulumi.log.warn(f"Key '{key}' not found in SchedulePropertiesResponse. Access the value via the '{suggest}' property getter instead.")
|
|
2151
|
+
|
|
2152
|
+
def __getitem__(self, key: str) -> Any:
|
|
2153
|
+
SchedulePropertiesResponse.__key_warning(key)
|
|
2154
|
+
return super().__getitem__(key)
|
|
2155
|
+
|
|
2156
|
+
def get(self, key: str, default = None) -> Any:
|
|
2157
|
+
SchedulePropertiesResponse.__key_warning(key)
|
|
2158
|
+
return super().get(key, default)
|
|
2159
|
+
|
|
2160
|
+
def __init__(__self__, *,
|
|
2161
|
+
end_date: str,
|
|
2162
|
+
frequency: str,
|
|
2163
|
+
start_date: str,
|
|
2164
|
+
day_of_month: Optional[int] = None,
|
|
2165
|
+
days_of_week: Optional[Sequence[str]] = None,
|
|
2166
|
+
hour_of_day: Optional[int] = None,
|
|
2167
|
+
weeks_of_month: Optional[Sequence[str]] = None):
|
|
2168
|
+
"""
|
|
2169
|
+
The properties of the schedule.
|
|
2170
|
+
:param str end_date: The end date and time of the scheduled action (UTC).
|
|
2171
|
+
:param str frequency: Frequency of the schedule.
|
|
2172
|
+
:param str start_date: The start date and time of the scheduled action (UTC).
|
|
2173
|
+
:param int day_of_month: UTC day on which cost analysis data will be emailed. Must be between 1 and 31. This property is applicable when frequency is Monthly and overrides weeksOfMonth or daysOfWeek.
|
|
2174
|
+
:param Sequence[str] days_of_week: Day names in english on which cost analysis data will be emailed. This property is applicable when frequency is Weekly or Monthly.
|
|
2175
|
+
:param int hour_of_day: UTC time at which cost analysis data will be emailed.
|
|
2176
|
+
:param Sequence[str] weeks_of_month: Weeks in which cost analysis data will be emailed. This property is applicable when frequency is Monthly and used in combination with daysOfWeek.
|
|
2177
|
+
"""
|
|
2178
|
+
pulumi.set(__self__, "end_date", end_date)
|
|
2179
|
+
pulumi.set(__self__, "frequency", frequency)
|
|
2180
|
+
pulumi.set(__self__, "start_date", start_date)
|
|
2181
|
+
if day_of_month is not None:
|
|
2182
|
+
pulumi.set(__self__, "day_of_month", day_of_month)
|
|
2183
|
+
if days_of_week is not None:
|
|
2184
|
+
pulumi.set(__self__, "days_of_week", days_of_week)
|
|
2185
|
+
if hour_of_day is not None:
|
|
2186
|
+
pulumi.set(__self__, "hour_of_day", hour_of_day)
|
|
2187
|
+
if weeks_of_month is not None:
|
|
2188
|
+
pulumi.set(__self__, "weeks_of_month", weeks_of_month)
|
|
2189
|
+
|
|
2190
|
+
@property
|
|
2191
|
+
@pulumi.getter(name="endDate")
|
|
2192
|
+
def end_date(self) -> str:
|
|
2193
|
+
"""
|
|
2194
|
+
The end date and time of the scheduled action (UTC).
|
|
2195
|
+
"""
|
|
2196
|
+
return pulumi.get(self, "end_date")
|
|
2197
|
+
|
|
2198
|
+
@property
|
|
2199
|
+
@pulumi.getter
|
|
2200
|
+
def frequency(self) -> str:
|
|
2201
|
+
"""
|
|
2202
|
+
Frequency of the schedule.
|
|
2203
|
+
"""
|
|
2204
|
+
return pulumi.get(self, "frequency")
|
|
2205
|
+
|
|
2206
|
+
@property
|
|
2207
|
+
@pulumi.getter(name="startDate")
|
|
2208
|
+
def start_date(self) -> str:
|
|
2209
|
+
"""
|
|
2210
|
+
The start date and time of the scheduled action (UTC).
|
|
2211
|
+
"""
|
|
2212
|
+
return pulumi.get(self, "start_date")
|
|
2213
|
+
|
|
2214
|
+
@property
|
|
2215
|
+
@pulumi.getter(name="dayOfMonth")
|
|
2216
|
+
def day_of_month(self) -> Optional[int]:
|
|
2217
|
+
"""
|
|
2218
|
+
UTC day on which cost analysis data will be emailed. Must be between 1 and 31. This property is applicable when frequency is Monthly and overrides weeksOfMonth or daysOfWeek.
|
|
2219
|
+
"""
|
|
2220
|
+
return pulumi.get(self, "day_of_month")
|
|
2221
|
+
|
|
2222
|
+
@property
|
|
2223
|
+
@pulumi.getter(name="daysOfWeek")
|
|
2224
|
+
def days_of_week(self) -> Optional[Sequence[str]]:
|
|
2225
|
+
"""
|
|
2226
|
+
Day names in english on which cost analysis data will be emailed. This property is applicable when frequency is Weekly or Monthly.
|
|
2227
|
+
"""
|
|
2228
|
+
return pulumi.get(self, "days_of_week")
|
|
2229
|
+
|
|
2230
|
+
@property
|
|
2231
|
+
@pulumi.getter(name="hourOfDay")
|
|
2232
|
+
def hour_of_day(self) -> Optional[int]:
|
|
2233
|
+
"""
|
|
2234
|
+
UTC time at which cost analysis data will be emailed.
|
|
2235
|
+
"""
|
|
2236
|
+
return pulumi.get(self, "hour_of_day")
|
|
2237
|
+
|
|
2238
|
+
@property
|
|
2239
|
+
@pulumi.getter(name="weeksOfMonth")
|
|
2240
|
+
def weeks_of_month(self) -> Optional[Sequence[str]]:
|
|
2241
|
+
"""
|
|
2242
|
+
Weeks in which cost analysis data will be emailed. This property is applicable when frequency is Monthly and used in combination with daysOfWeek.
|
|
2243
|
+
"""
|
|
2244
|
+
return pulumi.get(self, "weeks_of_month")
|
|
2245
|
+
|
|
2246
|
+
|
|
2247
|
+
@pulumi.output_type
|
|
2248
|
+
class SourceCostAllocationResourceResponse(dict):
|
|
2249
|
+
"""
|
|
2250
|
+
Source resources for cost allocation
|
|
2251
|
+
"""
|
|
2252
|
+
@staticmethod
|
|
2253
|
+
def __key_warning(key: str):
|
|
2254
|
+
suggest = None
|
|
2255
|
+
if key == "resourceType":
|
|
2256
|
+
suggest = "resource_type"
|
|
2257
|
+
|
|
2258
|
+
if suggest:
|
|
2259
|
+
pulumi.log.warn(f"Key '{key}' not found in SourceCostAllocationResourceResponse. Access the value via the '{suggest}' property getter instead.")
|
|
2260
|
+
|
|
2261
|
+
def __getitem__(self, key: str) -> Any:
|
|
2262
|
+
SourceCostAllocationResourceResponse.__key_warning(key)
|
|
2263
|
+
return super().__getitem__(key)
|
|
2264
|
+
|
|
2265
|
+
def get(self, key: str, default = None) -> Any:
|
|
2266
|
+
SourceCostAllocationResourceResponse.__key_warning(key)
|
|
2267
|
+
return super().get(key, default)
|
|
2268
|
+
|
|
2269
|
+
def __init__(__self__, *,
|
|
2270
|
+
name: str,
|
|
2271
|
+
resource_type: str,
|
|
2272
|
+
values: Sequence[str]):
|
|
2273
|
+
"""
|
|
2274
|
+
Source resources for cost allocation
|
|
2275
|
+
:param str name: If resource type is dimension, this must be either ResourceGroupName or SubscriptionId. If resource type is tag, this must be a valid Azure tag
|
|
2276
|
+
:param str resource_type: Type of resources contained in this cost allocation rule
|
|
2277
|
+
:param Sequence[str] values: Source Resources for cost allocation. This list cannot contain more than 25 values.
|
|
2278
|
+
"""
|
|
2279
|
+
pulumi.set(__self__, "name", name)
|
|
2280
|
+
pulumi.set(__self__, "resource_type", resource_type)
|
|
2281
|
+
pulumi.set(__self__, "values", values)
|
|
2282
|
+
|
|
2283
|
+
@property
|
|
2284
|
+
@pulumi.getter
|
|
2285
|
+
def name(self) -> str:
|
|
2286
|
+
"""
|
|
2287
|
+
If resource type is dimension, this must be either ResourceGroupName or SubscriptionId. If resource type is tag, this must be a valid Azure tag
|
|
2288
|
+
"""
|
|
2289
|
+
return pulumi.get(self, "name")
|
|
2290
|
+
|
|
2291
|
+
@property
|
|
2292
|
+
@pulumi.getter(name="resourceType")
|
|
2293
|
+
def resource_type(self) -> str:
|
|
2294
|
+
"""
|
|
2295
|
+
Type of resources contained in this cost allocation rule
|
|
2296
|
+
"""
|
|
2297
|
+
return pulumi.get(self, "resource_type")
|
|
2298
|
+
|
|
2299
|
+
@property
|
|
2300
|
+
@pulumi.getter
|
|
2301
|
+
def values(self) -> Sequence[str]:
|
|
2302
|
+
"""
|
|
2303
|
+
Source Resources for cost allocation. This list cannot contain more than 25 values.
|
|
2304
|
+
"""
|
|
2305
|
+
return pulumi.get(self, "values")
|
|
2306
|
+
|
|
2307
|
+
|
|
2308
|
+
@pulumi.output_type
|
|
2309
|
+
class SystemAssignedServiceIdentityResponse(dict):
|
|
2310
|
+
"""
|
|
2311
|
+
Managed service identity (either system assigned, or none)
|
|
2312
|
+
"""
|
|
2313
|
+
@staticmethod
|
|
2314
|
+
def __key_warning(key: str):
|
|
2315
|
+
suggest = None
|
|
2316
|
+
if key == "principalId":
|
|
2317
|
+
suggest = "principal_id"
|
|
2318
|
+
elif key == "tenantId":
|
|
2319
|
+
suggest = "tenant_id"
|
|
2320
|
+
|
|
2321
|
+
if suggest:
|
|
2322
|
+
pulumi.log.warn(f"Key '{key}' not found in SystemAssignedServiceIdentityResponse. Access the value via the '{suggest}' property getter instead.")
|
|
2323
|
+
|
|
2324
|
+
def __getitem__(self, key: str) -> Any:
|
|
2325
|
+
SystemAssignedServiceIdentityResponse.__key_warning(key)
|
|
2326
|
+
return super().__getitem__(key)
|
|
2327
|
+
|
|
2328
|
+
def get(self, key: str, default = None) -> Any:
|
|
2329
|
+
SystemAssignedServiceIdentityResponse.__key_warning(key)
|
|
2330
|
+
return super().get(key, default)
|
|
2331
|
+
|
|
2332
|
+
def __init__(__self__, *,
|
|
2333
|
+
principal_id: str,
|
|
2334
|
+
tenant_id: str,
|
|
2335
|
+
type: str):
|
|
2336
|
+
"""
|
|
2337
|
+
Managed service identity (either system assigned, or none)
|
|
2338
|
+
:param str principal_id: The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
|
|
2339
|
+
:param str tenant_id: The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
|
|
2340
|
+
:param str type: Type of managed service identity (either system assigned, or none).
|
|
2341
|
+
"""
|
|
2342
|
+
pulumi.set(__self__, "principal_id", principal_id)
|
|
2343
|
+
pulumi.set(__self__, "tenant_id", tenant_id)
|
|
2344
|
+
pulumi.set(__self__, "type", type)
|
|
2345
|
+
|
|
2346
|
+
@property
|
|
2347
|
+
@pulumi.getter(name="principalId")
|
|
2348
|
+
def principal_id(self) -> str:
|
|
2349
|
+
"""
|
|
2350
|
+
The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity.
|
|
2351
|
+
"""
|
|
2352
|
+
return pulumi.get(self, "principal_id")
|
|
2353
|
+
|
|
2354
|
+
@property
|
|
2355
|
+
@pulumi.getter(name="tenantId")
|
|
2356
|
+
def tenant_id(self) -> str:
|
|
2357
|
+
"""
|
|
2358
|
+
The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
|
|
2359
|
+
"""
|
|
2360
|
+
return pulumi.get(self, "tenant_id")
|
|
2361
|
+
|
|
2362
|
+
@property
|
|
2363
|
+
@pulumi.getter
|
|
2364
|
+
def type(self) -> str:
|
|
2365
|
+
"""
|
|
2366
|
+
Type of managed service identity (either system assigned, or none).
|
|
2367
|
+
"""
|
|
2368
|
+
return pulumi.get(self, "type")
|
|
2369
|
+
|
|
2370
|
+
|
|
2371
|
+
@pulumi.output_type
|
|
2372
|
+
class SystemDataResponse(dict):
|
|
2373
|
+
"""
|
|
2374
|
+
Metadata pertaining to creation and last modification of the resource.
|
|
2375
|
+
"""
|
|
2376
|
+
@staticmethod
|
|
2377
|
+
def __key_warning(key: str):
|
|
2378
|
+
suggest = None
|
|
2379
|
+
if key == "createdAt":
|
|
2380
|
+
suggest = "created_at"
|
|
2381
|
+
elif key == "createdBy":
|
|
2382
|
+
suggest = "created_by"
|
|
2383
|
+
elif key == "createdByType":
|
|
2384
|
+
suggest = "created_by_type"
|
|
2385
|
+
elif key == "lastModifiedAt":
|
|
2386
|
+
suggest = "last_modified_at"
|
|
2387
|
+
elif key == "lastModifiedBy":
|
|
2388
|
+
suggest = "last_modified_by"
|
|
2389
|
+
elif key == "lastModifiedByType":
|
|
2390
|
+
suggest = "last_modified_by_type"
|
|
2391
|
+
|
|
2392
|
+
if suggest:
|
|
2393
|
+
pulumi.log.warn(f"Key '{key}' not found in SystemDataResponse. Access the value via the '{suggest}' property getter instead.")
|
|
2394
|
+
|
|
2395
|
+
def __getitem__(self, key: str) -> Any:
|
|
2396
|
+
SystemDataResponse.__key_warning(key)
|
|
2397
|
+
return super().__getitem__(key)
|
|
2398
|
+
|
|
2399
|
+
def get(self, key: str, default = None) -> Any:
|
|
2400
|
+
SystemDataResponse.__key_warning(key)
|
|
2401
|
+
return super().get(key, default)
|
|
2402
|
+
|
|
2403
|
+
def __init__(__self__, *,
|
|
2404
|
+
created_at: Optional[str] = None,
|
|
2405
|
+
created_by: Optional[str] = None,
|
|
2406
|
+
created_by_type: Optional[str] = None,
|
|
2407
|
+
last_modified_at: Optional[str] = None,
|
|
2408
|
+
last_modified_by: Optional[str] = None,
|
|
2409
|
+
last_modified_by_type: Optional[str] = None):
|
|
2410
|
+
"""
|
|
2411
|
+
Metadata pertaining to creation and last modification of the resource.
|
|
2412
|
+
:param str created_at: The timestamp of resource creation (UTC).
|
|
2413
|
+
:param str created_by: The identity that created the resource.
|
|
2414
|
+
:param str created_by_type: The type of identity that created the resource.
|
|
2415
|
+
:param str last_modified_at: The timestamp of resource last modification (UTC)
|
|
2416
|
+
:param str last_modified_by: The identity that last modified the resource.
|
|
2417
|
+
:param str last_modified_by_type: The type of identity that last modified the resource.
|
|
2418
|
+
"""
|
|
2419
|
+
if created_at is not None:
|
|
2420
|
+
pulumi.set(__self__, "created_at", created_at)
|
|
2421
|
+
if created_by is not None:
|
|
2422
|
+
pulumi.set(__self__, "created_by", created_by)
|
|
2423
|
+
if created_by_type is not None:
|
|
2424
|
+
pulumi.set(__self__, "created_by_type", created_by_type)
|
|
2425
|
+
if last_modified_at is not None:
|
|
2426
|
+
pulumi.set(__self__, "last_modified_at", last_modified_at)
|
|
2427
|
+
if last_modified_by is not None:
|
|
2428
|
+
pulumi.set(__self__, "last_modified_by", last_modified_by)
|
|
2429
|
+
if last_modified_by_type is not None:
|
|
2430
|
+
pulumi.set(__self__, "last_modified_by_type", last_modified_by_type)
|
|
2431
|
+
|
|
2432
|
+
@property
|
|
2433
|
+
@pulumi.getter(name="createdAt")
|
|
2434
|
+
def created_at(self) -> Optional[str]:
|
|
2435
|
+
"""
|
|
2436
|
+
The timestamp of resource creation (UTC).
|
|
2437
|
+
"""
|
|
2438
|
+
return pulumi.get(self, "created_at")
|
|
2439
|
+
|
|
2440
|
+
@property
|
|
2441
|
+
@pulumi.getter(name="createdBy")
|
|
2442
|
+
def created_by(self) -> Optional[str]:
|
|
2443
|
+
"""
|
|
2444
|
+
The identity that created the resource.
|
|
2445
|
+
"""
|
|
2446
|
+
return pulumi.get(self, "created_by")
|
|
2447
|
+
|
|
2448
|
+
@property
|
|
2449
|
+
@pulumi.getter(name="createdByType")
|
|
2450
|
+
def created_by_type(self) -> Optional[str]:
|
|
2451
|
+
"""
|
|
2452
|
+
The type of identity that created the resource.
|
|
2453
|
+
"""
|
|
2454
|
+
return pulumi.get(self, "created_by_type")
|
|
2455
|
+
|
|
2456
|
+
@property
|
|
2457
|
+
@pulumi.getter(name="lastModifiedAt")
|
|
2458
|
+
def last_modified_at(self) -> Optional[str]:
|
|
2459
|
+
"""
|
|
2460
|
+
The timestamp of resource last modification (UTC)
|
|
2461
|
+
"""
|
|
2462
|
+
return pulumi.get(self, "last_modified_at")
|
|
2463
|
+
|
|
2464
|
+
@property
|
|
2465
|
+
@pulumi.getter(name="lastModifiedBy")
|
|
2466
|
+
def last_modified_by(self) -> Optional[str]:
|
|
2467
|
+
"""
|
|
2468
|
+
The identity that last modified the resource.
|
|
2469
|
+
"""
|
|
2470
|
+
return pulumi.get(self, "last_modified_by")
|
|
2471
|
+
|
|
2472
|
+
@property
|
|
2473
|
+
@pulumi.getter(name="lastModifiedByType")
|
|
2474
|
+
def last_modified_by_type(self) -> Optional[str]:
|
|
2475
|
+
"""
|
|
2476
|
+
The type of identity that last modified the resource.
|
|
2477
|
+
"""
|
|
2478
|
+
return pulumi.get(self, "last_modified_by_type")
|
|
2479
|
+
|
|
2480
|
+
|
|
2481
|
+
@pulumi.output_type
|
|
2482
|
+
class TagInheritancePropertiesResponse(dict):
|
|
2483
|
+
"""
|
|
2484
|
+
The properties of the tag inheritance setting.
|
|
2485
|
+
"""
|
|
2486
|
+
@staticmethod
|
|
2487
|
+
def __key_warning(key: str):
|
|
2488
|
+
suggest = None
|
|
2489
|
+
if key == "preferContainerTags":
|
|
2490
|
+
suggest = "prefer_container_tags"
|
|
2491
|
+
|
|
2492
|
+
if suggest:
|
|
2493
|
+
pulumi.log.warn(f"Key '{key}' not found in TagInheritancePropertiesResponse. Access the value via the '{suggest}' property getter instead.")
|
|
2494
|
+
|
|
2495
|
+
def __getitem__(self, key: str) -> Any:
|
|
2496
|
+
TagInheritancePropertiesResponse.__key_warning(key)
|
|
2497
|
+
return super().__getitem__(key)
|
|
2498
|
+
|
|
2499
|
+
def get(self, key: str, default = None) -> Any:
|
|
2500
|
+
TagInheritancePropertiesResponse.__key_warning(key)
|
|
2501
|
+
return super().get(key, default)
|
|
2502
|
+
|
|
2503
|
+
def __init__(__self__, *,
|
|
2504
|
+
prefer_container_tags: bool):
|
|
2505
|
+
"""
|
|
2506
|
+
The properties of the tag inheritance setting.
|
|
2507
|
+
:param bool prefer_container_tags: This property defines the behavior when an inherited tag being applied matches a lower scope tag (Eg. Subscription tag matches the resource tag). If set to true - when tags match, the highest scope tags will be applied. Billing profile is the highest scope, followed by invoice sections, subscriptions and resource groups (allows overriding of lower scope tag values). If set to false - when tags match, the lowest scope tags will be applied. So, if a resource has the same tag as a subscription tag, the resource tag will be applied (does not allow overriding of lower scope tag values).
|
|
2508
|
+
"""
|
|
2509
|
+
pulumi.set(__self__, "prefer_container_tags", prefer_container_tags)
|
|
2510
|
+
|
|
2511
|
+
@property
|
|
2512
|
+
@pulumi.getter(name="preferContainerTags")
|
|
2513
|
+
def prefer_container_tags(self) -> bool:
|
|
2514
|
+
"""
|
|
2515
|
+
This property defines the behavior when an inherited tag being applied matches a lower scope tag (Eg. Subscription tag matches the resource tag). If set to true - when tags match, the highest scope tags will be applied. Billing profile is the highest scope, followed by invoice sections, subscriptions and resource groups (allows overriding of lower scope tag values). If set to false - when tags match, the lowest scope tags will be applied. So, if a resource has the same tag as a subscription tag, the resource tag will be applied (does not allow overriding of lower scope tag values).
|
|
2516
|
+
"""
|
|
2517
|
+
return pulumi.get(self, "prefer_container_tags")
|
|
2518
|
+
|
|
2519
|
+
|
|
2520
|
+
@pulumi.output_type
|
|
2521
|
+
class TargetCostAllocationResourceResponse(dict):
|
|
2522
|
+
"""
|
|
2523
|
+
Target resources for cost allocation.
|
|
2524
|
+
"""
|
|
2525
|
+
@staticmethod
|
|
2526
|
+
def __key_warning(key: str):
|
|
2527
|
+
suggest = None
|
|
2528
|
+
if key == "policyType":
|
|
2529
|
+
suggest = "policy_type"
|
|
2530
|
+
elif key == "resourceType":
|
|
2531
|
+
suggest = "resource_type"
|
|
2532
|
+
|
|
2533
|
+
if suggest:
|
|
2534
|
+
pulumi.log.warn(f"Key '{key}' not found in TargetCostAllocationResourceResponse. Access the value via the '{suggest}' property getter instead.")
|
|
2535
|
+
|
|
2536
|
+
def __getitem__(self, key: str) -> Any:
|
|
2537
|
+
TargetCostAllocationResourceResponse.__key_warning(key)
|
|
2538
|
+
return super().__getitem__(key)
|
|
2539
|
+
|
|
2540
|
+
def get(self, key: str, default = None) -> Any:
|
|
2541
|
+
TargetCostAllocationResourceResponse.__key_warning(key)
|
|
2542
|
+
return super().get(key, default)
|
|
2543
|
+
|
|
2544
|
+
def __init__(__self__, *,
|
|
2545
|
+
name: str,
|
|
2546
|
+
policy_type: str,
|
|
2547
|
+
resource_type: str,
|
|
2548
|
+
values: Sequence['outputs.CostAllocationProportionResponse']):
|
|
2549
|
+
"""
|
|
2550
|
+
Target resources for cost allocation.
|
|
2551
|
+
:param str name: If resource type is dimension, this must be either ResourceGroupName or SubscriptionId. If resource type is tag, this must be a valid Azure tag
|
|
2552
|
+
:param str policy_type: Method of cost allocation for the rule
|
|
2553
|
+
:param str resource_type: Type of resources contained in this cost allocation rule
|
|
2554
|
+
:param Sequence['CostAllocationProportionResponse'] values: Target resources for cost allocation. This list cannot contain more than 25 values.
|
|
2555
|
+
"""
|
|
2556
|
+
pulumi.set(__self__, "name", name)
|
|
2557
|
+
pulumi.set(__self__, "policy_type", policy_type)
|
|
2558
|
+
pulumi.set(__self__, "resource_type", resource_type)
|
|
2559
|
+
pulumi.set(__self__, "values", values)
|
|
2560
|
+
|
|
2561
|
+
@property
|
|
2562
|
+
@pulumi.getter
|
|
2563
|
+
def name(self) -> str:
|
|
2564
|
+
"""
|
|
2565
|
+
If resource type is dimension, this must be either ResourceGroupName or SubscriptionId. If resource type is tag, this must be a valid Azure tag
|
|
2566
|
+
"""
|
|
2567
|
+
return pulumi.get(self, "name")
|
|
2568
|
+
|
|
2569
|
+
@property
|
|
2570
|
+
@pulumi.getter(name="policyType")
|
|
2571
|
+
def policy_type(self) -> str:
|
|
2572
|
+
"""
|
|
2573
|
+
Method of cost allocation for the rule
|
|
2574
|
+
"""
|
|
2575
|
+
return pulumi.get(self, "policy_type")
|
|
2576
|
+
|
|
2577
|
+
@property
|
|
2578
|
+
@pulumi.getter(name="resourceType")
|
|
2579
|
+
def resource_type(self) -> str:
|
|
2580
|
+
"""
|
|
2581
|
+
Type of resources contained in this cost allocation rule
|
|
2582
|
+
"""
|
|
2583
|
+
return pulumi.get(self, "resource_type")
|
|
2584
|
+
|
|
2585
|
+
@property
|
|
2586
|
+
@pulumi.getter
|
|
2587
|
+
def values(self) -> Sequence['outputs.CostAllocationProportionResponse']:
|
|
2588
|
+
"""
|
|
2589
|
+
Target resources for cost allocation. This list cannot contain more than 25 values.
|
|
2590
|
+
"""
|
|
2591
|
+
return pulumi.get(self, "values")
|
|
2592
|
+
|
|
2593
|
+
|