Skip to content

Commit a71f158

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 3750afc of spec repo
1 parent e05bbaf commit a71f158

19 files changed

Lines changed: 314 additions & 79 deletions

.generator/schemas/v1/openapi.yaml

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18843,7 +18843,7 @@ components:
1884318843
$ref: "#/components/schemas/WidgetCustomLink"
1884418844
type: array
1884518845
requests:
18846-
description: One or more Topology requests.
18846+
description: One Topology request.
1884718847
items:
1884818848
$ref: "#/components/schemas/TopologyRequest"
1884918849
minItems: 1
@@ -18872,10 +18872,14 @@ components:
1887218872
x-enum-varnames:
1887318873
- TOPOLOGY_MAP
1887418874
TopologyQuery:
18875+
description: A topology data source query.
18876+
oneOf:
18877+
- $ref: "#/components/schemas/TopologyQueryDataStreamsOrServiceMap"
18878+
TopologyQueryDataStreamsOrServiceMap:
1887518879
description: Query to service-based topology data sources like the service map or data streams.
1887618880
properties:
1887718881
data_source:
18878-
$ref: "#/components/schemas/TopologyQueryDataSource"
18882+
$ref: "#/components/schemas/TopologyQueryDataStreamsOrServiceMapDataSource"
1887918883
filters:
1888018884
description: Your environment and primary tag (or * if enabled for your account).
1888118885
example: ["env:prod", "az:us-east"]
@@ -18884,16 +18888,24 @@ components:
1888418888
type: string
1888518889
minItems: 1
1888618890
type: array
18891+
query_string:
18892+
description: A search string for filtering services, used in `data_streams` queries only. When set, this replaces the `service` field
18893+
example: "service:myservice"
18894+
type: string
1888718895
service:
1888818896
description: Name of the service
18889-
example: myService
18897+
example: myservice
1889018898
type: string
18899+
required:
18900+
- data_source
18901+
- filters
1889118902
type: object
18892-
TopologyQueryDataSource:
18903+
TopologyQueryDataStreamsOrServiceMapDataSource:
1889318904
description: Name of the data source
1889418905
enum:
1889518906
- data_streams
1889618907
- service_map
18908+
example: data_streams
1889718909
type: string
1889818910
x-enum-varnames:
1889918911
- DATA_STREAMS

.generator/schemas/v2/openapi.yaml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56896,7 +56896,7 @@ components:
5689656896
$ref: "#/components/schemas/SecurityMonitoringCriticalAsset"
5689756897
type: object
5689856898
SecurityMonitoringCriticalAssetSeverity:
56899-
description: Severity associated with this critical asset. Either an explicit severity can be set, or the severity can be increased or decreased, or the severity can be left unchanged (no-op).
56899+
description: Severity associated with this critical asset. Either an explicit severity can be set, or the severity can be increased or decreased.
5690056900
enum:
5690156901
- info
5690256902
- low
@@ -56905,7 +56905,6 @@ components:
5690556905
- critical
5690656906
- increase
5690756907
- decrease
56908-
- no-op
5690956908
example: increase
5691056909
type: string
5691156910
x-enum-varnames:
@@ -56916,7 +56915,6 @@ components:
5691656915
- CRITICAL
5691756916
- INCREASE
5691856917
- DECREASE
56919-
- NO_OP
5692056918
SecurityMonitoringCriticalAssetType:
5692156919
default: critical_assets
5692256920
description: The type of the resource. The value should always be `critical_assets`.

docs/datadog_api_client.v1.model.rst

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5919,10 +5919,17 @@ datadog\_api\_client.v1.model.topology\_query module
59195919
:members:
59205920
:show-inheritance:
59215921

5922-
datadog\_api\_client.v1.model.topology\_query\_data\_source module
5923-
------------------------------------------------------------------
5922+
datadog\_api\_client.v1.model.topology\_query\_data\_streams\_or\_service\_map module
5923+
-------------------------------------------------------------------------------------
5924+
5925+
.. automodule:: datadog_api_client.v1.model.topology_query_data_streams_or_service_map
5926+
:members:
5927+
:show-inheritance:
5928+
5929+
datadog\_api\_client.v1.model.topology\_query\_data\_streams\_or\_service\_map\_data\_source module
5930+
---------------------------------------------------------------------------------------------------
59245931

5925-
.. automodule:: datadog_api_client.v1.model.topology_query_data_source
5932+
.. automodule:: datadog_api_client.v1.model.topology_query_data_streams_or_service_map_data_source
59265933
:members:
59275934
:show-inheritance:
59285935

examples/v1/dashboards/CreateDashboard_2652180930.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,10 @@
88
from datadog_api_client.v1.model.dashboard_layout_type import DashboardLayoutType
99
from datadog_api_client.v1.model.topology_map_widget_definition import TopologyMapWidgetDefinition
1010
from datadog_api_client.v1.model.topology_map_widget_definition_type import TopologyMapWidgetDefinitionType
11-
from datadog_api_client.v1.model.topology_query import TopologyQuery
12-
from datadog_api_client.v1.model.topology_query_data_source import TopologyQueryDataSource
11+
from datadog_api_client.v1.model.topology_query_data_streams_or_service_map import TopologyQueryDataStreamsOrServiceMap
12+
from datadog_api_client.v1.model.topology_query_data_streams_or_service_map_data_source import (
13+
TopologyQueryDataStreamsOrServiceMapDataSource,
14+
)
1315
from datadog_api_client.v1.model.topology_request import TopologyRequest
1416
from datadog_api_client.v1.model.topology_request_type import TopologyRequestType
1517
from datadog_api_client.v1.model.widget import Widget
@@ -35,8 +37,8 @@
3537
requests=[
3638
TopologyRequest(
3739
request_type=TopologyRequestType.TOPOLOGY,
38-
query=TopologyQuery(
39-
data_source=TopologyQueryDataSource.SERVICE_MAP,
40+
query=TopologyQueryDataStreamsOrServiceMap(
41+
data_source=TopologyQueryDataStreamsOrServiceMapDataSource.SERVICE_MAP,
4042
service="",
4143
filters=[
4244
"env:none",
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
"""
2+
Create a new dashboard with topology_map data_streams widget
3+
"""
4+
5+
from datadog_api_client import ApiClient, Configuration
6+
from datadog_api_client.v1.api.dashboards_api import DashboardsApi
7+
from datadog_api_client.v1.model.dashboard import Dashboard
8+
from datadog_api_client.v1.model.dashboard_layout_type import DashboardLayoutType
9+
from datadog_api_client.v1.model.topology_map_widget_definition import TopologyMapWidgetDefinition
10+
from datadog_api_client.v1.model.topology_map_widget_definition_type import TopologyMapWidgetDefinitionType
11+
from datadog_api_client.v1.model.topology_query_data_streams_or_service_map import TopologyQueryDataStreamsOrServiceMap
12+
from datadog_api_client.v1.model.topology_query_data_streams_or_service_map_data_source import (
13+
TopologyQueryDataStreamsOrServiceMapDataSource,
14+
)
15+
from datadog_api_client.v1.model.topology_request import TopologyRequest
16+
from datadog_api_client.v1.model.topology_request_type import TopologyRequestType
17+
from datadog_api_client.v1.model.widget import Widget
18+
from datadog_api_client.v1.model.widget_layout import WidgetLayout
19+
from datadog_api_client.v1.model.widget_text_align import WidgetTextAlign
20+
21+
body = Dashboard(
22+
title="Example-Dashboard",
23+
description="",
24+
widgets=[
25+
Widget(
26+
layout=WidgetLayout(
27+
x=0,
28+
y=0,
29+
width=47,
30+
height=15,
31+
),
32+
definition=TopologyMapWidgetDefinition(
33+
title="",
34+
title_size="16",
35+
title_align=WidgetTextAlign.LEFT,
36+
type=TopologyMapWidgetDefinitionType.TOPOLOGY_MAP,
37+
requests=[
38+
TopologyRequest(
39+
request_type=TopologyRequestType.TOPOLOGY,
40+
query=TopologyQueryDataStreamsOrServiceMap(
41+
data_source=TopologyQueryDataStreamsOrServiceMapDataSource.DATA_STREAMS,
42+
service="",
43+
filters=[
44+
"env:prod",
45+
],
46+
query_string="service:myservice",
47+
),
48+
),
49+
],
50+
),
51+
),
52+
],
53+
template_variables=[],
54+
layout_type=DashboardLayoutType.FREE,
55+
notify_list=[],
56+
)
57+
58+
configuration = Configuration()
59+
with ApiClient(configuration) as api_client:
60+
api_instance = DashboardsApi(api_client)
61+
response = api_instance.create_dashboard(body=body)
62+
63+
print(response)

src/datadog_api_client/v1/model/topology_map_widget_definition.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ def __init__(
6868
:param custom_links: List of custom links.
6969
:type custom_links: [WidgetCustomLink], optional
7070
71-
:param requests: One or more Topology requests.
71+
:param requests: One Topology request.
7272
:type requests: [TopologyRequest]
7373
7474
:param title: Title of your widget.

src/datadog_api_client/v1/model/topology_query.py

Lines changed: 28 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -3,66 +3,47 @@
33
# Copyright 2019-Present Datadog, Inc.
44
from __future__ import annotations
55

6-
from typing import List, Union, TYPE_CHECKING
76

87
from datadog_api_client.model_utils import (
9-
ModelNormal,
8+
ModelComposed,
109
cached_property,
11-
unset,
12-
UnsetType,
1310
)
1411

1512

16-
if TYPE_CHECKING:
17-
from datadog_api_client.v1.model.topology_query_data_source import TopologyQueryDataSource
18-
19-
20-
class TopologyQuery(ModelNormal):
21-
validations = {
22-
"filters": {
23-
"min_items": 1,
24-
},
25-
}
26-
27-
@cached_property
28-
def openapi_types(_):
29-
from datadog_api_client.v1.model.topology_query_data_source import TopologyQueryDataSource
30-
31-
return {
32-
"data_source": (TopologyQueryDataSource,),
33-
"filters": ([str],),
34-
"service": (str,),
35-
}
36-
37-
attribute_map = {
38-
"data_source": "data_source",
39-
"filters": "filters",
40-
"service": "service",
41-
}
42-
43-
def __init__(
44-
self_,
45-
data_source: Union[TopologyQueryDataSource, UnsetType] = unset,
46-
filters: Union[List[str], UnsetType] = unset,
47-
service: Union[str, UnsetType] = unset,
48-
**kwargs,
49-
):
13+
class TopologyQuery(ModelComposed):
14+
def __init__(self, **kwargs):
5015
"""
51-
Query to service-based topology data sources like the service map or data streams.
16+
A topology data source query.
5217
5318
:param data_source: Name of the data source
54-
:type data_source: TopologyQueryDataSource, optional
19+
:type data_source: TopologyQueryDataStreamsOrServiceMapDataSource
5520
5621
:param filters: Your environment and primary tag (or * if enabled for your account).
57-
:type filters: [str], optional
22+
:type filters: [str]
23+
24+
:param query_string: A search string for filtering services, used in `data_streams` queries only. When set, this replaces the `service` field
25+
:type query_string: str, optional
5826
5927
:param service: Name of the service
6028
:type service: str, optional
6129
"""
62-
if data_source is not unset:
63-
kwargs["data_source"] = data_source
64-
if filters is not unset:
65-
kwargs["filters"] = filters
66-
if service is not unset:
67-
kwargs["service"] = service
6830
super().__init__(kwargs)
31+
32+
@cached_property
33+
def _composed_schemas(_):
34+
# we need this here to make our import statements work
35+
# we must store _composed_schemas in here so the code is only run
36+
# when we invoke this method. If we kept this at the class
37+
# level we would get an error because the class level
38+
# code would be run when this module is imported, and these composed
39+
# classes don't exist yet because their module has not finished
40+
# loading
41+
from datadog_api_client.v1.model.topology_query_data_streams_or_service_map import (
42+
TopologyQueryDataStreamsOrServiceMap,
43+
)
44+
45+
return {
46+
"oneOf": [
47+
TopologyQueryDataStreamsOrServiceMap,
48+
],
49+
}
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
2+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
3+
# Copyright 2019-Present Datadog, Inc.
4+
from __future__ import annotations
5+
6+
from typing import List, Union, TYPE_CHECKING
7+
8+
from datadog_api_client.model_utils import (
9+
ModelNormal,
10+
cached_property,
11+
unset,
12+
UnsetType,
13+
)
14+
15+
16+
if TYPE_CHECKING:
17+
from datadog_api_client.v1.model.topology_query_data_streams_or_service_map_data_source import (
18+
TopologyQueryDataStreamsOrServiceMapDataSource,
19+
)
20+
21+
22+
class TopologyQueryDataStreamsOrServiceMap(ModelNormal):
23+
validations = {
24+
"filters": {
25+
"min_items": 1,
26+
},
27+
}
28+
29+
@cached_property
30+
def openapi_types(_):
31+
from datadog_api_client.v1.model.topology_query_data_streams_or_service_map_data_source import (
32+
TopologyQueryDataStreamsOrServiceMapDataSource,
33+
)
34+
35+
return {
36+
"data_source": (TopologyQueryDataStreamsOrServiceMapDataSource,),
37+
"filters": ([str],),
38+
"query_string": (str,),
39+
"service": (str,),
40+
}
41+
42+
attribute_map = {
43+
"data_source": "data_source",
44+
"filters": "filters",
45+
"query_string": "query_string",
46+
"service": "service",
47+
}
48+
49+
def __init__(
50+
self_,
51+
data_source: TopologyQueryDataStreamsOrServiceMapDataSource,
52+
filters: List[str],
53+
query_string: Union[str, UnsetType] = unset,
54+
service: Union[str, UnsetType] = unset,
55+
**kwargs,
56+
):
57+
"""
58+
Query to service-based topology data sources like the service map or data streams.
59+
60+
:param data_source: Name of the data source
61+
:type data_source: TopologyQueryDataStreamsOrServiceMapDataSource
62+
63+
:param filters: Your environment and primary tag (or * if enabled for your account).
64+
:type filters: [str]
65+
66+
:param query_string: A search string for filtering services, used in ``data_streams`` queries only. When set, this replaces the ``service`` field
67+
:type query_string: str, optional
68+
69+
:param service: Name of the service
70+
:type service: str, optional
71+
"""
72+
if query_string is not unset:
73+
kwargs["query_string"] = query_string
74+
if service is not unset:
75+
kwargs["service"] = service
76+
super().__init__(kwargs)
77+
78+
self_.data_source = data_source
79+
self_.filters = filters

0 commit comments

Comments
 (0)