Skip to content

Commit ceaba4e

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 63a241d of spec repo
1 parent 1f51e34 commit ceaba4e

14 files changed

+308
-68
lines changed

.generator/schemas/v1/openapi.yaml

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19420,7 +19420,7 @@ components:
1942019420
description: The description of the widget.
1942119421
type: string
1942219422
requests:
19423-
description: One or more Topology requests.
19423+
description: One Topology request.
1942419424
items:
1942519425
$ref: "#/components/schemas/TopologyRequest"
1942619426
minItems: 1
@@ -19449,10 +19449,14 @@ components:
1944919449
x-enum-varnames:
1945019450
- TOPOLOGY_MAP
1945119451
TopologyQuery:
19452+
description: A topology data source query.
19453+
oneOf:
19454+
- $ref: "#/components/schemas/TopologyQueryDataStreamsOrServiceMap"
19455+
TopologyQueryDataStreamsOrServiceMap:
1945219456
description: Query to service-based topology data sources like the service map or data streams.
1945319457
properties:
1945419458
data_source:
19455-
$ref: "#/components/schemas/TopologyQueryDataSource"
19459+
$ref: "#/components/schemas/TopologyQueryDataStreamsOrServiceMapDataSource"
1945619460
filters:
1945719461
description: Your environment and primary tag (or * if enabled for your account).
1945819462
example: ["env:prod", "az:us-east"]
@@ -19461,16 +19465,24 @@ components:
1946119465
type: string
1946219466
minItems: 1
1946319467
type: array
19468+
query_string:
19469+
description: A search string for filtering services, used in `data_streams` queries only. When set, this replaces the `service` field
19470+
example: "service:myservice"
19471+
type: string
1946419472
service:
1946519473
description: Name of the service
19466-
example: myService
19474+
example: myservice
1946719475
type: string
19476+
required:
19477+
- data_source
19478+
- filters
1946819479
type: object
19469-
TopologyQueryDataSource:
19480+
TopologyQueryDataStreamsOrServiceMapDataSource:
1947019481
description: Name of the data source
1947119482
enum:
1947219483
- data_streams
1947319484
- service_map
19485+
example: data_streams
1947419486
type: string
1947519487
x-enum-varnames:
1947619488
- DATA_STREAMS

docs/datadog_api_client.v1.model.rst

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6101,10 +6101,17 @@ datadog\_api\_client.v1.model.topology\_query module
61016101
:members:
61026102
:show-inheritance:
61036103

6104-
datadog\_api\_client.v1.model.topology\_query\_data\_source module
6105-
------------------------------------------------------------------
6104+
datadog\_api\_client.v1.model.topology\_query\_data\_streams\_or\_service\_map module
6105+
-------------------------------------------------------------------------------------
6106+
6107+
.. automodule:: datadog_api_client.v1.model.topology_query_data_streams_or_service_map
6108+
:members:
6109+
:show-inheritance:
6110+
6111+
datadog\_api\_client.v1.model.topology\_query\_data\_streams\_or\_service\_map\_data\_source module
6112+
---------------------------------------------------------------------------------------------------
61066113

6107-
.. automodule:: datadog_api_client.v1.model.topology_query_data_source
6114+
.. automodule:: datadog_api_client.v1.model.topology_query_data_streams_or_service_map_data_source
61086115
:members:
61096116
:show-inheritance:
61106117

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
@@ -74,7 +74,7 @@ def __init__(
7474
:param description: The description of the widget.
7575
:type description: str, optional
7676
77-
:param requests: One or more Topology requests.
77+
:param requests: One Topology request.
7878
:type requests: [TopologyRequest]
7979
8080
: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

src/datadog_api_client/v1/model/topology_query_data_source.py renamed to src/datadog_api_client/v1/model/topology_query_data_streams_or_service_map_data_source.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
from typing import ClassVar
1313

1414

15-
class TopologyQueryDataSource(ModelSimple):
15+
class TopologyQueryDataStreamsOrServiceMapDataSource(ModelSimple):
1616
"""
1717
Name of the data source
1818
@@ -24,8 +24,8 @@ class TopologyQueryDataSource(ModelSimple):
2424
"data_streams",
2525
"service_map",
2626
}
27-
DATA_STREAMS: ClassVar["TopologyQueryDataSource"]
28-
SERVICE_MAP: ClassVar["TopologyQueryDataSource"]
27+
DATA_STREAMS: ClassVar["TopologyQueryDataStreamsOrServiceMapDataSource"]
28+
SERVICE_MAP: ClassVar["TopologyQueryDataStreamsOrServiceMapDataSource"]
2929

3030
@cached_property
3131
def openapi_types(_):
@@ -34,5 +34,9 @@ def openapi_types(_):
3434
}
3535

3636

37-
TopologyQueryDataSource.DATA_STREAMS = TopologyQueryDataSource("data_streams")
38-
TopologyQueryDataSource.SERVICE_MAP = TopologyQueryDataSource("service_map")
37+
TopologyQueryDataStreamsOrServiceMapDataSource.DATA_STREAMS = TopologyQueryDataStreamsOrServiceMapDataSource(
38+
"data_streams"
39+
)
40+
TopologyQueryDataStreamsOrServiceMapDataSource.SERVICE_MAP = TopologyQueryDataStreamsOrServiceMapDataSource(
41+
"service_map"
42+
)

0 commit comments

Comments
 (0)