Skip to content

Commit 16fd4f7

Browse files
Generate observability
1 parent 891ddb4 commit 16fd4f7

File tree

57 files changed

+17648
-1899
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+17648
-1899
lines changed

services/observability/oas_commit

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
fe212a12ec79a23b81cb53d9a7728f5706bddc23

services/observability/src/stackit/observability/__init__.py

Lines changed: 176 additions & 20 deletions
Large diffs are not rendered by default.

services/observability/src/stackit/observability/api/default_api.py

Lines changed: 13289 additions & 1787 deletions
Large diffs are not rendered by default.

services/observability/src/stackit/observability/models/__init__.py

Lines changed: 104 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,22 @@
2525
from stackit.observability.models.alert_group import AlertGroup
2626
from stackit.observability.models.alert_group_response import AlertGroupResponse
2727
from stackit.observability.models.alert_groups_response import AlertGroupsResponse
28+
from stackit.observability.models.alert_record import AlertRecord
29+
from stackit.observability.models.alert_record_response import AlertRecordResponse
30+
from stackit.observability.models.alert_records_response import AlertRecordsResponse
2831
from stackit.observability.models.alert_rule import AlertRule
2932
from stackit.observability.models.alert_rule_record import AlertRuleRecord
33+
from stackit.observability.models.alert_rule_response import AlertRuleResponse
3034
from stackit.observability.models.alert_rules_response import AlertRulesResponse
35+
from stackit.observability.models.backup_response import BackupResponse
36+
from stackit.observability.models.backup_retention_response import (
37+
BackupRetentionResponse,
38+
)
39+
from stackit.observability.models.backup_schedule import BackupSchedule
40+
from stackit.observability.models.backup_schedule_post_response import (
41+
BackupSchedulePostResponse,
42+
)
43+
from stackit.observability.models.backup_schedule_response import BackupScheduleResponse
3144
from stackit.observability.models.basic_auth import BasicAuth
3245
from stackit.observability.models.cert_check_child_response import (
3346
CertCheckChildResponse,
@@ -51,12 +64,18 @@
5164
from stackit.observability.models.create_alert_config_route_payload_routes_inner import (
5265
CreateAlertConfigRoutePayloadRoutesInner,
5366
)
67+
from stackit.observability.models.create_alert_record_payload import (
68+
CreateAlertRecordPayload,
69+
)
5470
from stackit.observability.models.create_alertgroups_payload import (
5571
CreateAlertgroupsPayload,
5672
)
5773
from stackit.observability.models.create_alertrules_payload import (
5874
CreateAlertrulesPayload,
5975
)
76+
from stackit.observability.models.create_backup_schedule_payload import (
77+
CreateBackupSchedulePayload,
78+
)
6079
from stackit.observability.models.create_cert_check400_response import (
6180
CreateCertCheck400Response,
6281
)
@@ -69,6 +88,9 @@
6988
from stackit.observability.models.create_credentials_response import (
7089
CreateCredentialsResponse,
7190
)
91+
from stackit.observability.models.create_elasticsearch_check_payload import (
92+
CreateElasticsearchCheckPayload,
93+
)
7294
from stackit.observability.models.create_http_check_payload import (
7395
CreateHttpCheckPayload,
7496
)
@@ -80,26 +102,29 @@
80102
from stackit.observability.models.create_logs_alertgroups_payload_rules_inner import (
81103
CreateLogsAlertgroupsPayloadRulesInner,
82104
)
83-
from stackit.observability.models.create_scrape_config_payload import (
84-
CreateScrapeConfigPayload,
105+
from stackit.observability.models.create_mongodb_check_payload import (
106+
CreateMongodbCheckPayload,
85107
)
86-
from stackit.observability.models.create_scrape_config_payload_basic_auth import (
87-
CreateScrapeConfigPayloadBasicAuth,
108+
from stackit.observability.models.create_mysql_check_payload import (
109+
CreateMysqlCheckPayload,
88110
)
89-
from stackit.observability.models.create_scrape_config_payload_http_sd_configs_inner import (
90-
CreateScrapeConfigPayloadHttpSdConfigsInner,
111+
from stackit.observability.models.create_network_check_payload import (
112+
CreateNetworkCheckPayload,
91113
)
92-
from stackit.observability.models.create_scrape_config_payload_http_sd_configs_inner_oauth2 import (
93-
CreateScrapeConfigPayloadHttpSdConfigsInnerOauth2,
114+
from stackit.observability.models.create_ping_check_payload import (
115+
CreatePingCheckPayload,
94116
)
95-
from stackit.observability.models.create_scrape_config_payload_http_sd_configs_inner_oauth2_tls_config import (
96-
CreateScrapeConfigPayloadHttpSdConfigsInnerOauth2TlsConfig,
117+
from stackit.observability.models.create_postgresql_check_payload import (
118+
CreatePostgresqlCheckPayload,
97119
)
98-
from stackit.observability.models.create_scrape_config_payload_metrics_relabel_configs_inner import (
99-
CreateScrapeConfigPayloadMetricsRelabelConfigsInner,
120+
from stackit.observability.models.create_rabbitmq_check_payload import (
121+
CreateRabbitmqCheckPayload,
100122
)
101-
from stackit.observability.models.create_scrape_config_payload_static_configs_inner import (
102-
CreateScrapeConfigPayloadStaticConfigsInner,
123+
from stackit.observability.models.create_redis_check_payload import (
124+
CreateRedisCheckPayload,
125+
)
126+
from stackit.observability.models.create_scrape_config_payload import (
127+
CreateScrapeConfigPayload,
103128
)
104129
from stackit.observability.models.credentials import Credentials
105130
from stackit.observability.models.credentials_remote_write_config import (
@@ -111,6 +136,12 @@
111136
from stackit.observability.models.delete_scrape_config_response import (
112137
DeleteScrapeConfigResponse,
113138
)
139+
from stackit.observability.models.elasticsearch_check_child_response import (
140+
ElasticsearchCheckChildResponse,
141+
)
142+
from stackit.observability.models.elasticsearch_check_response import (
143+
ElasticsearchCheckResponse,
144+
)
114145
from stackit.observability.models.email_config import EmailConfig
115146
from stackit.observability.models.error import Error
116147
from stackit.observability.models.get_alert_configs_response import (
@@ -149,18 +180,73 @@
149180
from stackit.observability.models.message import Message
150181
from stackit.observability.models.metrics_relabel_config import MetricsRelabelConfig
151182
from stackit.observability.models.model_global import ModelGlobal
183+
from stackit.observability.models.mongodb_check_child_response import (
184+
MongodbCheckChildResponse,
185+
)
186+
from stackit.observability.models.mongodb_check_response import MongodbCheckResponse
187+
from stackit.observability.models.mysql_check_child_response import (
188+
MysqlCheckChildResponse,
189+
)
190+
from stackit.observability.models.mysql_check_response import MysqlCheckResponse
191+
from stackit.observability.models.network_check_child_response import (
192+
NetworkCheckChildResponse,
193+
)
194+
from stackit.observability.models.network_check_response import NetworkCheckResponse
152195
from stackit.observability.models.o_auth2 import OAuth2
196+
from stackit.observability.models.offerings import Offerings
153197
from stackit.observability.models.opsgenie_config import OpsgenieConfig
198+
from stackit.observability.models.partial_update_alert_records_request_inner import (
199+
PartialUpdateAlertRecordsRequestInner,
200+
)
154201
from stackit.observability.models.partial_update_alertrules_request_inner import (
155202
PartialUpdateAlertrulesRequestInner,
156203
)
204+
from stackit.observability.models.partial_update_scrape_configs_request_inner import (
205+
PartialUpdateScrapeConfigsRequestInner,
206+
)
207+
from stackit.observability.models.partial_update_scrape_configs_request_inner_basic_auth import (
208+
PartialUpdateScrapeConfigsRequestInnerBasicAuth,
209+
)
210+
from stackit.observability.models.partial_update_scrape_configs_request_inner_http_sd_configs_inner import (
211+
PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInner,
212+
)
213+
from stackit.observability.models.partial_update_scrape_configs_request_inner_http_sd_configs_inner_oauth2 import (
214+
PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInnerOauth2,
215+
)
216+
from stackit.observability.models.partial_update_scrape_configs_request_inner_http_sd_configs_inner_oauth2_tls_config import (
217+
PartialUpdateScrapeConfigsRequestInnerHttpSdConfigsInnerOauth2TlsConfig,
218+
)
219+
from stackit.observability.models.partial_update_scrape_configs_request_inner_metrics_relabel_configs_inner import (
220+
PartialUpdateScrapeConfigsRequestInnerMetricsRelabelConfigsInner,
221+
)
222+
from stackit.observability.models.partial_update_scrape_configs_request_inner_static_configs_inner import (
223+
PartialUpdateScrapeConfigsRequestInnerStaticConfigsInner,
224+
)
157225
from stackit.observability.models.permission_denied import PermissionDenied
226+
from stackit.observability.models.ping_check_child_response import (
227+
PingCheckChildResponse,
228+
)
229+
from stackit.observability.models.ping_check_response import PingCheckResponse
158230
from stackit.observability.models.plan import Plan
159231
from stackit.observability.models.plan_model import PlanModel
160232
from stackit.observability.models.plans_response import PlansResponse
233+
from stackit.observability.models.postgresql_check_child_response import (
234+
PostgresqlCheckChildResponse,
235+
)
236+
from stackit.observability.models.postgresql_check_response import (
237+
PostgresqlCheckResponse,
238+
)
161239
from stackit.observability.models.project_instance_full import ProjectInstanceFull
240+
from stackit.observability.models.rabbit_mq_check_child_response import (
241+
RabbitMQCheckChildResponse,
242+
)
243+
from stackit.observability.models.rabbitmq_check_response import RabbitmqCheckResponse
162244
from stackit.observability.models.receiver import Receiver
163245
from stackit.observability.models.receivers import Receivers
246+
from stackit.observability.models.redis_check_child_response import (
247+
RedisCheckChildResponse,
248+
)
249+
from stackit.observability.models.redis_check_response import RedisCheckResponse
164250
from stackit.observability.models.route import Route
165251
from stackit.observability.models.route_serializer import RouteSerializer
166252
from stackit.observability.models.scrape_configs_response import ScrapeConfigsResponse
@@ -197,6 +283,9 @@
197283
from stackit.observability.models.update_alert_configs_response import (
198284
UpdateAlertConfigsResponse,
199285
)
286+
from stackit.observability.models.update_alert_record_payload import (
287+
UpdateAlertRecordPayload,
288+
)
200289
from stackit.observability.models.update_alertgroup_payload import (
201290
UpdateAlertgroupPayload,
202291
)
@@ -206,6 +295,7 @@
206295
from stackit.observability.models.update_alertgroups_request_inner_rules_inner import (
207296
UpdateAlertgroupsRequestInnerRulesInner,
208297
)
298+
from stackit.observability.models.update_alertrule_payload import UpdateAlertrulePayload
209299
from stackit.observability.models.update_credentials_remote_write_config_payload import (
210300
UpdateCredentialsRemoteWriteConfigPayload,
211301
)
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# coding: utf-8
2+
3+
"""
4+
STACKIT Observability API
5+
6+
API endpoints for Observability on STACKIT
7+
8+
The version of the OpenAPI document: 1.1.1
9+
Contact: stackit-argus@mail.schwarz
10+
Generated by OpenAPI Generator (https://openapi-generator.tech)
11+
12+
Do not edit the class manually.
13+
""" # noqa: E501
14+
15+
from __future__ import annotations
16+
17+
import json
18+
import pprint
19+
from typing import Any, ClassVar, Dict, List, Optional, Set
20+
21+
from pydantic import BaseModel, ConfigDict, Field
22+
from typing_extensions import Annotated, Self
23+
24+
25+
class AlertRecord(BaseModel):
26+
"""
27+
AlertRecord
28+
""" # noqa: E501
29+
30+
expr: Annotated[str, Field(min_length=1, strict=True, max_length=2000)]
31+
labels: Optional[Dict[str, Annotated[str, Field(min_length=1, strict=True)]]] = None
32+
record: Annotated[str, Field(min_length=1, strict=True, max_length=300)]
33+
__properties: ClassVar[List[str]] = ["expr", "labels", "record"]
34+
35+
model_config = ConfigDict(
36+
populate_by_name=True,
37+
validate_assignment=True,
38+
protected_namespaces=(),
39+
)
40+
41+
def to_str(self) -> str:
42+
"""Returns the string representation of the model using alias"""
43+
return pprint.pformat(self.model_dump(by_alias=True))
44+
45+
def to_json(self) -> str:
46+
"""Returns the JSON representation of the model using alias"""
47+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
48+
return json.dumps(self.to_dict())
49+
50+
@classmethod
51+
def from_json(cls, json_str: str) -> Optional[Self]:
52+
"""Create an instance of AlertRecord from a JSON string"""
53+
return cls.from_dict(json.loads(json_str))
54+
55+
def to_dict(self) -> Dict[str, Any]:
56+
"""Return the dictionary representation of the model using alias.
57+
58+
This has the following differences from calling pydantic's
59+
`self.model_dump(by_alias=True)`:
60+
61+
* `None` is only added to the output dict for nullable fields that
62+
were set at model initialization. Other fields with value `None`
63+
are ignored.
64+
"""
65+
excluded_fields: Set[str] = set([])
66+
67+
_dict = self.model_dump(
68+
by_alias=True,
69+
exclude=excluded_fields,
70+
exclude_none=True,
71+
)
72+
return _dict
73+
74+
@classmethod
75+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
76+
"""Create an instance of AlertRecord from a dict"""
77+
if obj is None:
78+
return None
79+
80+
if not isinstance(obj, dict):
81+
return cls.model_validate(obj)
82+
83+
_obj = cls.model_validate({"expr": obj.get("expr"), "labels": obj.get("labels"), "record": obj.get("record")})
84+
return _obj
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# coding: utf-8
2+
3+
"""
4+
STACKIT Observability API
5+
6+
API endpoints for Observability on STACKIT
7+
8+
The version of the OpenAPI document: 1.1.1
9+
Contact: stackit-argus@mail.schwarz
10+
Generated by OpenAPI Generator (https://openapi-generator.tech)
11+
12+
Do not edit the class manually.
13+
""" # noqa: E501
14+
15+
from __future__ import annotations
16+
17+
import json
18+
import pprint
19+
from typing import Any, ClassVar, Dict, List, Optional, Set
20+
21+
from pydantic import BaseModel, ConfigDict, Field
22+
from typing_extensions import Annotated, Self
23+
24+
from stackit.observability.models.alert_record import AlertRecord
25+
26+
27+
class AlertRecordResponse(BaseModel):
28+
"""
29+
AlertRecordResponse
30+
""" # noqa: E501
31+
32+
data: AlertRecord
33+
message: Annotated[str, Field(min_length=1, strict=True)]
34+
__properties: ClassVar[List[str]] = ["data", "message"]
35+
36+
model_config = ConfigDict(
37+
populate_by_name=True,
38+
validate_assignment=True,
39+
protected_namespaces=(),
40+
)
41+
42+
def to_str(self) -> str:
43+
"""Returns the string representation of the model using alias"""
44+
return pprint.pformat(self.model_dump(by_alias=True))
45+
46+
def to_json(self) -> str:
47+
"""Returns the JSON representation of the model using alias"""
48+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
49+
return json.dumps(self.to_dict())
50+
51+
@classmethod
52+
def from_json(cls, json_str: str) -> Optional[Self]:
53+
"""Create an instance of AlertRecordResponse from a JSON string"""
54+
return cls.from_dict(json.loads(json_str))
55+
56+
def to_dict(self) -> Dict[str, Any]:
57+
"""Return the dictionary representation of the model using alias.
58+
59+
This has the following differences from calling pydantic's
60+
`self.model_dump(by_alias=True)`:
61+
62+
* `None` is only added to the output dict for nullable fields that
63+
were set at model initialization. Other fields with value `None`
64+
are ignored.
65+
"""
66+
excluded_fields: Set[str] = set([])
67+
68+
_dict = self.model_dump(
69+
by_alias=True,
70+
exclude=excluded_fields,
71+
exclude_none=True,
72+
)
73+
# override the default output from pydantic by calling `to_dict()` of data
74+
if self.data:
75+
_dict["data"] = self.data.to_dict()
76+
return _dict
77+
78+
@classmethod
79+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
80+
"""Create an instance of AlertRecordResponse from a dict"""
81+
if obj is None:
82+
return None
83+
84+
if not isinstance(obj, dict):
85+
return cls.model_validate(obj)
86+
87+
_obj = cls.model_validate(
88+
{
89+
"data": AlertRecord.from_dict(obj["data"]) if obj.get("data") is not None else None,
90+
"message": obj.get("message"),
91+
}
92+
)
93+
return _obj

0 commit comments

Comments
 (0)