Skip to content

Commit 1258b12

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add OpenAPI spec for Bits AI SRE investigations (#3194)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent 4847aa9 commit 1258b12

45 files changed

Lines changed: 2670 additions & 1818 deletions

File tree

Some content is hidden

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

.generator/schemas/v2/openapi.yaml

Lines changed: 523 additions & 372 deletions
Large diffs are not rendered by default.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Get a Bits AI investigation returns "OK" response
2+
3+
require "datadog_api_client"
4+
DatadogAPIClient.configure do |config|
5+
config.unstable_operations["v2.get_investigation".to_sym] = true
6+
end
7+
api_instance = DatadogAPIClient::V2::BitsAIAPI.new
8+
p api_instance.get_investigation("id")
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# List Bits AI investigations returns "OK" response
2+
3+
require "datadog_api_client"
4+
DatadogAPIClient.configure do |config|
5+
config.unstable_operations["v2.list_investigations".to_sym] = true
6+
end
7+
api_instance = DatadogAPIClient::V2::BitsAIAPI.new
8+
p api_instance.list_investigations()
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# List Bits AI investigations returns "OK" response with pagination
2+
3+
require "datadog_api_client"
4+
DatadogAPIClient.configure do |config|
5+
config.unstable_operations["v2.list_investigations".to_sym] = true
6+
end
7+
api_instance = DatadogAPIClient::V2::BitsAIAPI.new
8+
api_instance.list_investigations_with_pagination() { |item| puts item }
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Trigger a Bits AI investigation returns "OK" response
2+
3+
require "datadog_api_client"
4+
DatadogAPIClient.configure do |config|
5+
config.unstable_operations["v2.trigger_investigation".to_sym] = true
6+
end
7+
api_instance = DatadogAPIClient::V2::BitsAIAPI.new
8+
9+
body = DatadogAPIClient::V2::TriggerInvestigationRequest.new({
10+
data: DatadogAPIClient::V2::TriggerInvestigationRequestData.new({
11+
attributes: DatadogAPIClient::V2::TriggerInvestigationRequestDataAttributes.new({
12+
trigger: DatadogAPIClient::V2::TriggerAttributes.new({
13+
monitor_alert_trigger: DatadogAPIClient::V2::MonitorAlertTriggerAttributes.new({
14+
event_id: "1234567890123456789",
15+
event_ts: 1700000000000,
16+
monitor_id: 12345678,
17+
}),
18+
type: DatadogAPIClient::V2::TriggerType::MONITOR_ALERT_TRIGGER,
19+
}),
20+
}),
21+
type: DatadogAPIClient::V2::TriggerInvestigationRequestType::TRIGGER_INVESTIGATION_REQUEST,
22+
}),
23+
})
24+
p api_instance.trigger_investigation(body)

examples/v2/test-optimization/GetFlakyTestsManagementPolicies.rb

Lines changed: 0 additions & 17 deletions
This file was deleted.

examples/v2/test-optimization/UpdateFlakyTestsManagementPolicies.rb

Lines changed: 0 additions & 66 deletions
This file was deleted.

features/scenarios_model_mapping.rb

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1178,6 +1178,17 @@
11781178
"authn_mapping_id" => "String",
11791179
"body" => "AuthNMappingUpdateRequest",
11801180
},
1181+
"v2.ListInvestigations" => {
1182+
"page_offset" => "Integer",
1183+
"page_limit" => "Integer",
1184+
"filter_monitor_id" => "Integer",
1185+
},
1186+
"v2.TriggerInvestigation" => {
1187+
"body" => "TriggerInvestigationRequest",
1188+
},
1189+
"v2.GetInvestigation" => {
1190+
"id" => "String",
1191+
},
11811192
"v2.SearchCases" => {
11821193
"page_size" => "Integer",
11831194
"page_number" => "Integer",
@@ -1397,12 +1408,6 @@
13971408
"v2.SearchCIAppPipelineEvents" => {
13981409
"body" => "CIAppPipelineEventsRequest",
13991410
},
1400-
"v2.UpdateFlakyTestsManagementPolicies" => {
1401-
"body" => "TestOptimizationFlakyTestsManagementPoliciesUpdateRequest",
1402-
},
1403-
"v2.GetFlakyTestsManagementPolicies" => {
1404-
"body" => "TestOptimizationFlakyTestsManagementPoliciesGetRequest",
1405-
},
14061411
"v2.DeleteTestOptimizationServiceSettings" => {
14071412
"body" => "TestOptimizationDeleteServiceSettingsRequest",
14081413
},

features/v2/bits_ai.feature

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
@endpoint(bits-ai) @endpoint(bits-ai-v2)
2+
Feature: Bits AI
3+
Use the Bits AI endpoints to retrieve AI-powered investigations.
4+
5+
Background:
6+
Given a valid "apiKeyAuth" key in the system
7+
And a valid "appKeyAuth" key in the system
8+
And an instance of "BitsAI" API
9+
10+
@generated @skip @team:DataDog/bits-ai
11+
Scenario: Get a Bits AI investigation returns "Bad Request" response
12+
Given operation "GetInvestigation" enabled
13+
And new "GetInvestigation" request
14+
And request contains "id" parameter from "REPLACE.ME"
15+
When the request is sent
16+
Then the response status is 400 Bad Request
17+
18+
@generated @skip @team:DataDog/bits-ai
19+
Scenario: Get a Bits AI investigation returns "Not Found" response
20+
Given operation "GetInvestigation" enabled
21+
And new "GetInvestigation" request
22+
And request contains "id" parameter from "REPLACE.ME"
23+
When the request is sent
24+
Then the response status is 404 Not Found
25+
26+
@generated @skip @team:DataDog/bits-ai
27+
Scenario: Get a Bits AI investigation returns "OK" response
28+
Given operation "GetInvestigation" enabled
29+
And new "GetInvestigation" request
30+
And request contains "id" parameter from "REPLACE.ME"
31+
When the request is sent
32+
Then the response status is 200 OK
33+
34+
@generated @skip @team:DataDog/bits-ai
35+
Scenario: List Bits AI investigations returns "Bad Request" response
36+
Given operation "ListInvestigations" enabled
37+
And new "ListInvestigations" request
38+
When the request is sent
39+
Then the response status is 400 Bad Request
40+
41+
@generated @skip @team:DataDog/bits-ai
42+
Scenario: List Bits AI investigations returns "OK" response
43+
Given operation "ListInvestigations" enabled
44+
And new "ListInvestigations" request
45+
When the request is sent
46+
Then the response status is 200 OK
47+
48+
@generated @skip @team:DataDog/bits-ai @with-pagination
49+
Scenario: List Bits AI investigations returns "OK" response with pagination
50+
Given operation "ListInvestigations" enabled
51+
And new "ListInvestigations" request
52+
When the request with pagination is sent
53+
Then the response status is 200 OK
54+
55+
@generated @skip @team:DataDog/bits-ai
56+
Scenario: Trigger a Bits AI investigation returns "Bad Request" response
57+
Given operation "TriggerInvestigation" enabled
58+
And new "TriggerInvestigation" request
59+
And body with value {"data": {"attributes": {"trigger": {"monitor_alert_trigger": {"event_id": "1234567890123456789", "event_ts": 1700000000000, "monitor_id": 12345678}, "type": "monitor_alert_trigger"}}, "type": "trigger_investigation_request"}}
60+
When the request is sent
61+
Then the response status is 400 Bad Request
62+
63+
@generated @skip @team:DataDog/bits-ai
64+
Scenario: Trigger a Bits AI investigation returns "OK" response
65+
Given operation "TriggerInvestigation" enabled
66+
And new "TriggerInvestigation" request
67+
And body with value {"data": {"attributes": {"trigger": {"monitor_alert_trigger": {"event_id": "1234567890123456789", "event_ts": 1700000000000, "monitor_id": 12345678}, "type": "monitor_alert_trigger"}}, "type": "trigger_investigation_request"}}
68+
When the request is sent
69+
Then the response status is 200 OK

features/v2/test_optimization.feature

Lines changed: 0 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -33,38 +33,6 @@ Feature: Test Optimization
3333
When the request is sent
3434
Then the response status is 404 Not Found
3535

36-
@generated @skip @team:DataDog/ci-app-backend
37-
Scenario: Get Flaky Tests Management policies returns "Bad Request" response
38-
Given operation "GetFlakyTestsManagementPolicies" enabled
39-
And new "GetFlakyTestsManagementPolicies" request
40-
And body with value {"data": {"attributes": {"repository_id": "github.com/datadog/shopist"}, "type": "test_optimization_get_flaky_tests_management_policies_request"}}
41-
When the request is sent
42-
Then the response status is 400 Bad Request
43-
44-
@generated @skip @team:DataDog/ci-app-backend
45-
Scenario: Get Flaky Tests Management policies returns "Not Found" response
46-
Given operation "GetFlakyTestsManagementPolicies" enabled
47-
And new "GetFlakyTestsManagementPolicies" request
48-
And body with value {"data": {"attributes": {"repository_id": "github.com/datadog/shopist"}, "type": "test_optimization_get_flaky_tests_management_policies_request"}}
49-
When the request is sent
50-
Then the response status is 404 Not Found
51-
52-
@generated @skip @team:DataDog/ci-app-backend
53-
Scenario: Get Flaky Tests Management policies returns "OK" response
54-
Given operation "GetFlakyTestsManagementPolicies" enabled
55-
And new "GetFlakyTestsManagementPolicies" request
56-
And body with value {"data": {"attributes": {"repository_id": "github.com/datadog/shopist"}, "type": "test_optimization_get_flaky_tests_management_policies_request"}}
57-
When the request is sent
58-
Then the response status is 200 OK
59-
60-
@skip @team:DataDog/ci-app-backend
61-
Scenario: Get Flaky Tests Management policies with empty repository_id returns bad request
62-
Given operation "GetFlakyTestsManagementPolicies" enabled
63-
And new "GetFlakyTestsManagementPolicies" request
64-
And body with value {"data": {"attributes": {"repository_id": ""}, "type": "test_optimization_get_flaky_tests_management_policies_request"}}
65-
When the request is sent
66-
Then the response status is 400 Bad Request
67-
6836
@generated @skip @team:DataDog/ci-app-backend
6937
Scenario: Get Test Optimization service settings returns "Bad Request" response
7038
Given operation "GetTestOptimizationServiceSettings" enabled
@@ -165,38 +133,6 @@ Feature: Test Optimization
165133
When the request with pagination is sent
166134
Then the response status is 200 OK
167135

168-
@generated @skip @team:DataDog/ci-app-backend
169-
Scenario: Update Flaky Tests Management policies returns "Bad Request" response
170-
Given operation "UpdateFlakyTestsManagementPolicies" enabled
171-
And new "UpdateFlakyTestsManagementPolicies" request
172-
And body with value {"data": {"attributes": {"attempt_to_fix": {"retries": 3}, "disabled": {"auto_disable_rule": {"enabled": false, "status": "active", "window_seconds": 3600}, "branch_rule": {"branches": ["main"], "enabled": true, "excluded_branches": [], "excluded_test_services": []}, "enabled": false, "failure_rate_rule": {"branches": [], "enabled": false, "min_runs": 10, "status": "active", "threshold": 0.5}}, "quarantined": {"auto_quarantine_rule": {"enabled": true, "window_seconds": 3600}, "branch_rule": {"branches": ["main"], "enabled": true, "excluded_branches": [], "excluded_test_services": []}, "enabled": true, "failure_rate_rule": {"branches": ["main"], "enabled": true, "min_runs": 10, "threshold": 0.5}}, "repository_id": "github.com/datadog/shopist"}, "type": "test_optimization_update_flaky_tests_management_policies_request"}}
173-
When the request is sent
174-
Then the response status is 400 Bad Request
175-
176-
@generated @skip @team:DataDog/ci-app-backend
177-
Scenario: Update Flaky Tests Management policies returns "Not Found" response
178-
Given operation "UpdateFlakyTestsManagementPolicies" enabled
179-
And new "UpdateFlakyTestsManagementPolicies" request
180-
And body with value {"data": {"attributes": {"attempt_to_fix": {"retries": 3}, "disabled": {"auto_disable_rule": {"enabled": false, "status": "active", "window_seconds": 3600}, "branch_rule": {"branches": ["main"], "enabled": true, "excluded_branches": [], "excluded_test_services": []}, "enabled": false, "failure_rate_rule": {"branches": [], "enabled": false, "min_runs": 10, "status": "active", "threshold": 0.5}}, "quarantined": {"auto_quarantine_rule": {"enabled": true, "window_seconds": 3600}, "branch_rule": {"branches": ["main"], "enabled": true, "excluded_branches": [], "excluded_test_services": []}, "enabled": true, "failure_rate_rule": {"branches": ["main"], "enabled": true, "min_runs": 10, "threshold": 0.5}}, "repository_id": "github.com/datadog/shopist"}, "type": "test_optimization_update_flaky_tests_management_policies_request"}}
181-
When the request is sent
182-
Then the response status is 404 Not Found
183-
184-
@generated @skip @team:DataDog/ci-app-backend
185-
Scenario: Update Flaky Tests Management policies returns "OK" response
186-
Given operation "UpdateFlakyTestsManagementPolicies" enabled
187-
And new "UpdateFlakyTestsManagementPolicies" request
188-
And body with value {"data": {"attributes": {"attempt_to_fix": {"retries": 3}, "disabled": {"auto_disable_rule": {"enabled": false, "status": "active", "window_seconds": 3600}, "branch_rule": {"branches": ["main"], "enabled": true, "excluded_branches": [], "excluded_test_services": []}, "enabled": false, "failure_rate_rule": {"branches": [], "enabled": false, "min_runs": 10, "status": "active", "threshold": 0.5}}, "quarantined": {"auto_quarantine_rule": {"enabled": true, "window_seconds": 3600}, "branch_rule": {"branches": ["main"], "enabled": true, "excluded_branches": [], "excluded_test_services": []}, "enabled": true, "failure_rate_rule": {"branches": ["main"], "enabled": true, "min_runs": 10, "threshold": 0.5}}, "repository_id": "github.com/datadog/shopist"}, "type": "test_optimization_update_flaky_tests_management_policies_request"}}
189-
When the request is sent
190-
Then the response status is 200 OK
191-
192-
@skip @team:DataDog/ci-app-backend
193-
Scenario: Update Flaky Tests Management policies with empty repository_id returns bad request
194-
Given operation "UpdateFlakyTestsManagementPolicies" enabled
195-
And new "UpdateFlakyTestsManagementPolicies" request
196-
And body with value {"data": {"attributes": {"repository_id": ""}, "type": "test_optimization_update_flaky_tests_management_policies_request"}}
197-
When the request is sent
198-
Then the response status is 400 Bad Request
199-
200136
@generated @skip @team:DataDog/ci-app-backend
201137
Scenario: Update Test Optimization service settings returns "Bad Request" response
202138
Given operation "UpdateTestOptimizationServiceSettings" enabled

0 commit comments

Comments
 (0)