diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 5808b5f796..e0b45ec935 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -37090,6 +37090,8 @@ components: type: string platform: $ref: "#/components/schemas/IssuePlatform" + regression: + $ref: "#/components/schemas/IssueRegression" service: description: Service name. example: "email-api-py" @@ -37360,6 +37362,27 @@ components: - id - type type: object + IssueRegression: + description: Regression information for an issue that was previously resolved and then reopened. + properties: + regressed_at: + description: Timestamp when the issue was reopened (regressed). + example: "2024-01-03T08:00:00Z" + format: date-time + type: string + regressed_at_version: + description: Application version where the regression was observed. + example: "v2.5.2" + type: string + resolved_at: + description: Timestamp when the issue was resolved before the regression. + example: "2024-01-01T10:00:00Z" + format: date-time + type: string + required: + - resolved_at + - regressed_at + type: object IssueRelationships: description: Relationship between the issue and an assignee, case and/or teams. properties: diff --git a/docs/datadog_api_client.v2.model.rst b/docs/datadog_api_client.v2.model.rst index 406433db99..694cb5a168 100644 --- a/docs/datadog_api_client.v2.model.rst +++ b/docs/datadog_api_client.v2.model.rst @@ -15670,6 +15670,13 @@ datadog\_api\_client.v2.model.issue\_reference module :members: :show-inheritance: +datadog\_api\_client.v2.model.issue\_regression module +------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.issue_regression + :members: + :show-inheritance: + datadog\_api\_client.v2.model.issue\_relationships module --------------------------------------------------------- diff --git a/src/datadog_api_client/v2/model/issue_attributes.py b/src/datadog_api_client/v2/model/issue_attributes.py index 168d38df5d..e5739b4fbb 100644 --- a/src/datadog_api_client/v2/model/issue_attributes.py +++ b/src/datadog_api_client/v2/model/issue_attributes.py @@ -16,6 +16,7 @@ if TYPE_CHECKING: from datadog_api_client.v2.model.issue_language import IssueLanguage from datadog_api_client.v2.model.issue_platform import IssuePlatform + from datadog_api_client.v2.model.issue_regression import IssueRegression from datadog_api_client.v2.model.issue_state import IssueState @@ -24,6 +25,7 @@ class IssueAttributes(ModelNormal): def openapi_types(_): from datadog_api_client.v2.model.issue_language import IssueLanguage from datadog_api_client.v2.model.issue_platform import IssuePlatform + from datadog_api_client.v2.model.issue_regression import IssueRegression from datadog_api_client.v2.model.issue_state import IssueState return { @@ -38,6 +40,7 @@ def openapi_types(_): "last_seen": (int,), "last_seen_version": (str,), "platform": (IssuePlatform,), + "regression": (IssueRegression,), "service": (str,), "state": (IssueState,), } @@ -54,6 +57,7 @@ def openapi_types(_): "last_seen": "last_seen", "last_seen_version": "last_seen_version", "platform": "platform", + "regression": "regression", "service": "service", "state": "state", } @@ -71,6 +75,7 @@ def __init__( last_seen: Union[int, UnsetType] = unset, last_seen_version: Union[str, UnsetType] = unset, platform: Union[IssuePlatform, UnsetType] = unset, + regression: Union[IssueRegression, UnsetType] = unset, service: Union[str, UnsetType] = unset, state: Union[IssueState, UnsetType] = unset, **kwargs, @@ -111,6 +116,9 @@ def __init__( :param platform: Platform associated with the issue. :type platform: IssuePlatform, optional + :param regression: Regression information for an issue that was previously resolved and then reopened. + :type regression: IssueRegression, optional + :param service: Service name. :type service: str, optional @@ -139,6 +147,8 @@ def __init__( kwargs["last_seen_version"] = last_seen_version if platform is not unset: kwargs["platform"] = platform + if regression is not unset: + kwargs["regression"] = regression if service is not unset: kwargs["service"] = service if state is not unset: diff --git a/src/datadog_api_client/v2/model/issue_regression.py b/src/datadog_api_client/v2/model/issue_regression.py new file mode 100644 index 0000000000..5fd2c7eed9 --- /dev/null +++ b/src/datadog_api_client/v2/model/issue_regression.py @@ -0,0 +1,56 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + datetime, + unset, + UnsetType, +) + + +class IssueRegression(ModelNormal): + @cached_property + def openapi_types(_): + return { + "regressed_at": (datetime,), + "regressed_at_version": (str,), + "resolved_at": (datetime,), + } + + attribute_map = { + "regressed_at": "regressed_at", + "regressed_at_version": "regressed_at_version", + "resolved_at": "resolved_at", + } + + def __init__( + self_, + regressed_at: datetime, + resolved_at: datetime, + regressed_at_version: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + Regression information for an issue that was previously resolved and then reopened. + + :param regressed_at: Timestamp when the issue was reopened (regressed). + :type regressed_at: datetime + + :param regressed_at_version: Application version where the regression was observed. + :type regressed_at_version: str, optional + + :param resolved_at: Timestamp when the issue was resolved before the regression. + :type resolved_at: datetime + """ + if regressed_at_version is not unset: + kwargs["regressed_at_version"] = regressed_at_version + super().__init__(kwargs) + + self_.regressed_at = regressed_at + self_.resolved_at = resolved_at diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index 3bb64eb0bb..2394e55ec1 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -2989,6 +2989,7 @@ from datadog_api_client.v2.model.issue_language import IssueLanguage from datadog_api_client.v2.model.issue_platform import IssuePlatform from datadog_api_client.v2.model.issue_reference import IssueReference +from datadog_api_client.v2.model.issue_regression import IssueRegression from datadog_api_client.v2.model.issue_relationships import IssueRelationships from datadog_api_client.v2.model.issue_response import IssueResponse from datadog_api_client.v2.model.issue_state import IssueState @@ -9818,6 +9819,7 @@ "IssueLanguage", "IssuePlatform", "IssueReference", + "IssueRegression", "IssueRelationships", "IssueResponse", "IssueState",