infrawrench-sdk 0.28.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/infrawrench-sdk.gemspec +4 -4
- data/lib/infrawrench/client.rb +2045 -544
- data/lib/infrawrench/sdk.rb +2 -2
- data/lib/infrawrench/transport.rb +2 -2
- data/lib/infrawrench/version.rb +3 -3
- data/lib/infrawrench-sdk.rb +2 -2
- data/sig/infrawrench/sdk.rbs +831 -7
- metadata +4 -4
data/sig/infrawrench/sdk.rbs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
# infrawrench-sdk v0.
|
|
1
|
+
# infrawrench-sdk v0.30.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
2
2
|
# https://github.com/Infrawrench/Infrawrench
|
|
3
3
|
#
|
|
4
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.
|
|
4
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.30.0).
|
|
5
5
|
#
|
|
6
6
|
# DO NOT EDIT. Regenerate with:
|
|
7
7
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -118,6 +118,17 @@ module Infrawrench
|
|
|
118
118
|
"pluginLogoSvg" => String
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
+
# Spec schema: `AccountTagCompliance`.
|
|
122
|
+
type account_tag_compliance = {
|
|
123
|
+
"accountId" => String,
|
|
124
|
+
"pluginId" => String,
|
|
125
|
+
"displayName" => String,
|
|
126
|
+
"totalResources" => Integer,
|
|
127
|
+
"evaluated" => Integer,
|
|
128
|
+
"compliant" => Integer,
|
|
129
|
+
"score" => Integer | nil
|
|
130
|
+
}
|
|
131
|
+
|
|
121
132
|
# Spec schema: `ActiveTunnel`.
|
|
122
133
|
type active_tunnel = { "localPort" => Integer, "sshHost" => String, "remotePort" => Integer }
|
|
123
134
|
|
|
@@ -165,6 +176,31 @@ module Infrawrench
|
|
|
165
176
|
"hiddenFieldKeys" => Array[String]
|
|
166
177
|
}
|
|
167
178
|
|
|
179
|
+
# Spec schema: `AllocationRule`.
|
|
180
|
+
type allocation_rule = {
|
|
181
|
+
"id" => String,
|
|
182
|
+
"costCentreId" => String,
|
|
183
|
+
"priority" => Integer,
|
|
184
|
+
"match" => allocation_rule_match,
|
|
185
|
+
"createdAt" => String,
|
|
186
|
+
"updatedAt" => String
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
# Spec schema: `AllocationRuleInput`.
|
|
190
|
+
type allocation_rule_input = { "costCentreId" => String, "priority" => Integer, "match" => allocation_rule_match }
|
|
191
|
+
|
|
192
|
+
# All set fields must match (AND). A rule with no fields is a catch-all that
|
|
193
|
+
# claims everything reaching it.
|
|
194
|
+
#
|
|
195
|
+
# Spec schema: `AllocationRuleMatch`.
|
|
196
|
+
type allocation_rule_match = {
|
|
197
|
+
?"tagKey" => String,
|
|
198
|
+
?"tagValue" => String,
|
|
199
|
+
?"accountId" => String,
|
|
200
|
+
?"pluginId" => String,
|
|
201
|
+
?"service" => String
|
|
202
|
+
}
|
|
203
|
+
|
|
168
204
|
# Spec schema: `ApiKey`.
|
|
169
205
|
type api_key = {
|
|
170
206
|
"id" => String,
|
|
@@ -460,7 +496,8 @@ module Infrawrench
|
|
|
460
496
|
"baselineCents" => Integer,
|
|
461
497
|
"thresholdCents" => Integer,
|
|
462
498
|
"detectedAt" => String,
|
|
463
|
-
"notifiedAt" => String | nil
|
|
499
|
+
"notifiedAt" => String | nil,
|
|
500
|
+
"hints" => Array[String]
|
|
464
501
|
}
|
|
465
502
|
|
|
466
503
|
# Spec schema: `CostAnomalySettings`.
|
|
@@ -474,6 +511,18 @@ module Infrawrench
|
|
|
474
511
|
# Spec schema: `CostAnomalySettingsView`.
|
|
475
512
|
type cost_anomaly_settings_view = cost_anomaly_settings & { "smsConfigured" => bool }
|
|
476
513
|
|
|
514
|
+
# Spec schema: `CostCentre`.
|
|
515
|
+
type cost_centre = {
|
|
516
|
+
"id" => String,
|
|
517
|
+
"name" => String,
|
|
518
|
+
"description" => String | nil,
|
|
519
|
+
"createdAt" => String,
|
|
520
|
+
"updatedAt" => String
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
# Spec schema: `CostCentreInput`.
|
|
524
|
+
type cost_centre_input = { "name" => String, ?"description" => String }
|
|
525
|
+
|
|
477
526
|
# Spec schema: `CostDimension`.
|
|
478
527
|
type cost_dimension = "provider" | "account" | "service" | "region" | "resource" | "tag"
|
|
479
528
|
|
|
@@ -1026,6 +1075,59 @@ module Infrawrench
|
|
|
1026
1075
|
# Spec schema: `Error`.
|
|
1027
1076
|
type error = { "error" => String }
|
|
1028
1077
|
|
|
1078
|
+
# Spec schema: `ExpiryAlertSettings`.
|
|
1079
|
+
type expiry_alert_settings = { "enabled" => bool, "leadDays" => Integer, "lastNotifiedAt" => String | nil }
|
|
1080
|
+
|
|
1081
|
+
# Spec schema: `ExpiryAlertSettingsUpdate`.
|
|
1082
|
+
type expiry_alert_settings_update = { ?"enabled" => bool, ?"leadDays" => Integer }
|
|
1083
|
+
|
|
1084
|
+
# Spec schema: `ExpiryItem`.
|
|
1085
|
+
type expiry_item = {
|
|
1086
|
+
"resourceId" => String,
|
|
1087
|
+
"pluginId" => plugin_id,
|
|
1088
|
+
"pluginName" => String,
|
|
1089
|
+
"resourceTypeId" => String,
|
|
1090
|
+
"resourceTypeName" => String,
|
|
1091
|
+
"accountId" => String,
|
|
1092
|
+
"accountName" => String,
|
|
1093
|
+
"displayName" => String,
|
|
1094
|
+
"externalId" => String | nil,
|
|
1095
|
+
"fieldKey" => String,
|
|
1096
|
+
"kind" => "tls-cert"
|
|
1097
|
+
| "domain"
|
|
1098
|
+
| "api-token"
|
|
1099
|
+
| "access-key"
|
|
1100
|
+
| "k8s-cert"
|
|
1101
|
+
| "ssh-key"
|
|
1102
|
+
| "secret-version"
|
|
1103
|
+
| "other",
|
|
1104
|
+
"label" => String,
|
|
1105
|
+
"basis" => "expiry" | "age",
|
|
1106
|
+
"dueAt" => String,
|
|
1107
|
+
"daysRemaining" => Integer,
|
|
1108
|
+
"severity" => "expired" | "critical" | "warning" | "upcoming" | "ok"
|
|
1109
|
+
}
|
|
1110
|
+
|
|
1111
|
+
# Spec schema: `ExpiryListResponse`.
|
|
1112
|
+
type expiry_list_response = {
|
|
1113
|
+
"items" => Array[expiry_item],
|
|
1114
|
+
"totalCount" => Integer,
|
|
1115
|
+
"counts" => expiry_severity_counts,
|
|
1116
|
+
"leadDays" => Integer,
|
|
1117
|
+
"generatedAt" => String
|
|
1118
|
+
}
|
|
1119
|
+
|
|
1120
|
+
# Item count per severity; every bucket present, zeros included.
|
|
1121
|
+
#
|
|
1122
|
+
# Spec schema: `ExpirySeverityCounts`.
|
|
1123
|
+
type expiry_severity_counts = {
|
|
1124
|
+
"expired" => Integer,
|
|
1125
|
+
"critical" => Integer,
|
|
1126
|
+
"warning" => Integer,
|
|
1127
|
+
"upcoming" => Integer,
|
|
1128
|
+
"ok" => Integer
|
|
1129
|
+
}
|
|
1130
|
+
|
|
1029
1131
|
# Spec schema: `ExportCredentialRequest`.
|
|
1030
1132
|
type export_credential_request = {
|
|
1031
1133
|
"resourceId" => resource_id,
|
|
@@ -1137,6 +1239,69 @@ module Infrawrench
|
|
|
1137
1239
|
# Spec schema: `LiteralAssociationRequest`.
|
|
1138
1240
|
type literal_association_request = { "resourceId" => resource_id, "fieldKey" => String, "plaintextValue" => String }
|
|
1139
1241
|
|
|
1242
|
+
# Spec schema: `LogCapableResource`.
|
|
1243
|
+
type log_capable_resource = {
|
|
1244
|
+
"resourceId" => String,
|
|
1245
|
+
"accountId" => String,
|
|
1246
|
+
"accountName" => String,
|
|
1247
|
+
"pluginId" => plugin_id,
|
|
1248
|
+
"resourceTypeId" => String,
|
|
1249
|
+
"displayName" => String
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1252
|
+
# Spec schema: `LogCapableResourceList`.
|
|
1253
|
+
type log_capable_resource_list = { "resources" => Array[log_capable_resource] }
|
|
1254
|
+
|
|
1255
|
+
# Spec schema: `LogStreamSelector`.
|
|
1256
|
+
type log_stream_selector = {
|
|
1257
|
+
"resourceId" => String,
|
|
1258
|
+
"accountId" => String,
|
|
1259
|
+
"pluginId" => plugin_id,
|
|
1260
|
+
"resourceTypeId" => String,
|
|
1261
|
+
?"container" => String
|
|
1262
|
+
}
|
|
1263
|
+
|
|
1264
|
+
# Spec schema: `LogWorkspaceQuery`.
|
|
1265
|
+
type log_workspace_query = {
|
|
1266
|
+
"id" => String,
|
|
1267
|
+
"name" => String,
|
|
1268
|
+
"resources" => Array[log_stream_selector],
|
|
1269
|
+
"search" => String,
|
|
1270
|
+
"alertEnabled" => bool,
|
|
1271
|
+
"lastEvalAt" => String | nil,
|
|
1272
|
+
"lastMatchAt" => String | nil,
|
|
1273
|
+
"lastAlertedAt" => String | nil,
|
|
1274
|
+
"lastEvalError" => String | nil,
|
|
1275
|
+
"lastMatchSample" => String | nil,
|
|
1276
|
+
"createdAt" => String,
|
|
1277
|
+
"updatedAt" => String
|
|
1278
|
+
}
|
|
1279
|
+
|
|
1280
|
+
# Spec schema: `LogWorkspaceQueryConflict`.
|
|
1281
|
+
type log_workspace_query_conflict = { "error" => String }
|
|
1282
|
+
|
|
1283
|
+
# Spec schema: `LogWorkspaceQueryCreate`.
|
|
1284
|
+
type log_workspace_query_create = {
|
|
1285
|
+
"name" => String,
|
|
1286
|
+
"resources" => Array[log_stream_selector],
|
|
1287
|
+
"search" => String,
|
|
1288
|
+
?"alertEnabled" => bool
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1291
|
+
# Spec schema: `LogWorkspaceQueryList`.
|
|
1292
|
+
type log_workspace_query_list = { "queries" => Array[log_workspace_query] }
|
|
1293
|
+
|
|
1294
|
+
# Spec schema: `LogWorkspaceQueryUpdate`.
|
|
1295
|
+
type log_workspace_query_update = {
|
|
1296
|
+
?"name" => String,
|
|
1297
|
+
?"resources" => Array[log_stream_selector],
|
|
1298
|
+
?"search" => String,
|
|
1299
|
+
?"alertEnabled" => bool
|
|
1300
|
+
}
|
|
1301
|
+
|
|
1302
|
+
# Spec schema: `LogWorkspaceQueryUpdateConflict`.
|
|
1303
|
+
type log_workspace_query_update_conflict = { "error" => String }
|
|
1304
|
+
|
|
1140
1305
|
# Spec schema: `LogsRequest`.
|
|
1141
1306
|
type logs_request = {
|
|
1142
1307
|
"accountId" => String,
|
|
@@ -1161,6 +1326,83 @@ module Infrawrench
|
|
|
1161
1326
|
"permissions" => Array[permission]
|
|
1162
1327
|
}
|
|
1163
1328
|
|
|
1329
|
+
# Spec schema: `MetricAlertEvent`.
|
|
1330
|
+
type metric_alert_event = {
|
|
1331
|
+
"id" => String,
|
|
1332
|
+
"ruleId" => String,
|
|
1333
|
+
"ruleName" => String,
|
|
1334
|
+
"resourceId" => String,
|
|
1335
|
+
"resourceName" => String,
|
|
1336
|
+
"status" => "firing" | "resolved",
|
|
1337
|
+
"observedValue" => Numeric,
|
|
1338
|
+
"firedAt" => String,
|
|
1339
|
+
"resolvedAt" => String | nil
|
|
1340
|
+
}
|
|
1341
|
+
|
|
1342
|
+
# Spec schema: `MetricAlertRule`.
|
|
1343
|
+
type metric_alert_rule = {
|
|
1344
|
+
"name" => String,
|
|
1345
|
+
"pluginId" => String | nil,
|
|
1346
|
+
"resourceTypeId" => String | nil,
|
|
1347
|
+
"tagKey" => String | nil,
|
|
1348
|
+
"tagValue" => String | nil,
|
|
1349
|
+
"metricKey" => String,
|
|
1350
|
+
"comparator" => ">" | ">=" | "<" | "<=",
|
|
1351
|
+
"threshold" => Numeric,
|
|
1352
|
+
"forMinutes" => Integer,
|
|
1353
|
+
"cooldownMinutes" => Integer,
|
|
1354
|
+
"enabled" => bool,
|
|
1355
|
+
"id" => String,
|
|
1356
|
+
"lastEvalAt" => String | nil,
|
|
1357
|
+
"createdAt" => String,
|
|
1358
|
+
"updatedAt" => String
|
|
1359
|
+
}
|
|
1360
|
+
|
|
1361
|
+
# Spec schema: `MetricAlertRuleInput`.
|
|
1362
|
+
type metric_alert_rule_input = {
|
|
1363
|
+
"name" => String,
|
|
1364
|
+
"pluginId" => String | nil,
|
|
1365
|
+
"resourceTypeId" => String | nil,
|
|
1366
|
+
"tagKey" => String | nil,
|
|
1367
|
+
"tagValue" => String | nil,
|
|
1368
|
+
"metricKey" => String,
|
|
1369
|
+
"comparator" => ">" | ">=" | "<" | "<=",
|
|
1370
|
+
"threshold" => Numeric,
|
|
1371
|
+
"forMinutes" => Integer,
|
|
1372
|
+
"cooldownMinutes" => Integer,
|
|
1373
|
+
"enabled" => bool
|
|
1374
|
+
}
|
|
1375
|
+
|
|
1376
|
+
# Spec schema: `MetricAlertRuleWithStatus`.
|
|
1377
|
+
type metric_alert_rule_with_status = {
|
|
1378
|
+
"name" => String,
|
|
1379
|
+
"pluginId" => String | nil,
|
|
1380
|
+
"resourceTypeId" => String | nil,
|
|
1381
|
+
"tagKey" => String | nil,
|
|
1382
|
+
"tagValue" => String | nil,
|
|
1383
|
+
"metricKey" => String,
|
|
1384
|
+
"comparator" => ">" | ">=" | "<" | "<=",
|
|
1385
|
+
"threshold" => Numeric,
|
|
1386
|
+
"forMinutes" => Integer,
|
|
1387
|
+
"cooldownMinutes" => Integer,
|
|
1388
|
+
"enabled" => bool,
|
|
1389
|
+
"id" => String,
|
|
1390
|
+
"lastEvalAt" => String | nil,
|
|
1391
|
+
"createdAt" => String,
|
|
1392
|
+
"updatedAt" => String,
|
|
1393
|
+
"firingCount" => Integer,
|
|
1394
|
+
"matchingResourceCount" => Integer
|
|
1395
|
+
}
|
|
1396
|
+
|
|
1397
|
+
# Spec schema: `MetricAlertSelectorOptions`.
|
|
1398
|
+
type metric_alert_selector_options = {
|
|
1399
|
+
"plugins" => Array[{ "pluginId" => String, "resourceTypeIds" => Array[String] }],
|
|
1400
|
+
"tagKeys" => Array[String]
|
|
1401
|
+
}
|
|
1402
|
+
|
|
1403
|
+
# Spec schema: `MetricAlertSelectorPreview`.
|
|
1404
|
+
type metric_alert_selector_preview = { "matchingResourceCount" => Integer, "sampleResourceNames" => Array[String] }
|
|
1405
|
+
|
|
1164
1406
|
# Spec schema: `MetricSeries`.
|
|
1165
1407
|
type metric_series = {
|
|
1166
1408
|
"label" => String,
|
|
@@ -1168,6 +1410,9 @@ module Infrawrench
|
|
|
1168
1410
|
"points" => Array[{ "timestamp" => Numeric, "value" => Numeric }]
|
|
1169
1411
|
}
|
|
1170
1412
|
|
|
1413
|
+
# Spec schema: `MetricSeriesKey`.
|
|
1414
|
+
type metric_series_key = { "label" => String, "unit" => String, "resourceCount" => Integer }
|
|
1415
|
+
|
|
1171
1416
|
# Spec schema: `MetricsRequest`.
|
|
1172
1417
|
type metrics_request = {
|
|
1173
1418
|
"accountId" => String,
|
|
@@ -1180,6 +1425,93 @@ module Infrawrench
|
|
|
1180
1425
|
# Spec schema: `MetricsResponse`.
|
|
1181
1426
|
type metrics_response = { "series" => Array[metric_series] }
|
|
1182
1427
|
|
|
1428
|
+
# Spec schema: `MomentEvent`.
|
|
1429
|
+
type moment_event = {
|
|
1430
|
+
"id" => String,
|
|
1431
|
+
"feed" => moment_feed_id,
|
|
1432
|
+
"kind" => String,
|
|
1433
|
+
"timestamp" => String,
|
|
1434
|
+
"title" => String,
|
|
1435
|
+
?"detail" => String | nil,
|
|
1436
|
+
"severity" => moment_severity,
|
|
1437
|
+
?"pluginId" => String | nil,
|
|
1438
|
+
?"accountId" => String | nil,
|
|
1439
|
+
?"accountName" => String | nil,
|
|
1440
|
+
?"resourceId" => String | nil,
|
|
1441
|
+
?"resourceTypeId" => String | nil,
|
|
1442
|
+
?"resourceName" => String | nil,
|
|
1443
|
+
?"link" => moment_event_link
|
|
1444
|
+
}
|
|
1445
|
+
|
|
1446
|
+
# Spec schema: `MomentEventLink`.
|
|
1447
|
+
type moment_event_link = {
|
|
1448
|
+
"kind" => "resource"
|
|
1449
|
+
| "changes"
|
|
1450
|
+
| "incident"
|
|
1451
|
+
| "costs"
|
|
1452
|
+
| "workflow-run"
|
|
1453
|
+
| "deployment"
|
|
1454
|
+
| "audit"
|
|
1455
|
+
| "freeze"
|
|
1456
|
+
| "expiring",
|
|
1457
|
+
?"id" => String | nil,
|
|
1458
|
+
?"parentId" => String | nil,
|
|
1459
|
+
?"url" => String | nil
|
|
1460
|
+
}
|
|
1461
|
+
| nil
|
|
1462
|
+
|
|
1463
|
+
# One of the indexed feeds the moment union draws from.
|
|
1464
|
+
#
|
|
1465
|
+
# Spec schema: `MomentFeedId`.
|
|
1466
|
+
type moment_feed_id = "changes"
|
|
1467
|
+
| "statusIncidents"
|
|
1468
|
+
| "costAnomalies"
|
|
1469
|
+
| "workflowRuns"
|
|
1470
|
+
| "deployments"
|
|
1471
|
+
| "audit"
|
|
1472
|
+
| "freezes"
|
|
1473
|
+
| "driftAlerts"
|
|
1474
|
+
| "expiryAlerts"
|
|
1475
|
+
|
|
1476
|
+
# Spec schema: `MomentFeedStatus`.
|
|
1477
|
+
type moment_feed_status = {
|
|
1478
|
+
"feed" => moment_feed_id,
|
|
1479
|
+
"status" => "ok" | "omitted" | "error",
|
|
1480
|
+
?"error" => String | nil,
|
|
1481
|
+
?"truncated" => bool
|
|
1482
|
+
}
|
|
1483
|
+
|
|
1484
|
+
# A provider incident whose span overlaps the window — returned alongside the
|
|
1485
|
+
# events so clients can badge events that fall inside it ("during DigitalOcean
|
|
1486
|
+
# incident").
|
|
1487
|
+
#
|
|
1488
|
+
# Spec schema: `MomentIncidentSpan`.
|
|
1489
|
+
type moment_incident_span = {
|
|
1490
|
+
"id" => String,
|
|
1491
|
+
"pluginId" => String,
|
|
1492
|
+
"pluginName" => String,
|
|
1493
|
+
"title" => String,
|
|
1494
|
+
"impact" => "maintenance" | "minor" | "major" | "critical",
|
|
1495
|
+
"startedAt" => String,
|
|
1496
|
+
?"resolvedAt" => String | nil,
|
|
1497
|
+
?"url" => String | nil
|
|
1498
|
+
}
|
|
1499
|
+
|
|
1500
|
+
# Spec schema: `MomentResponse`.
|
|
1501
|
+
type moment_response = {
|
|
1502
|
+
"at" => String,
|
|
1503
|
+
"from" => String,
|
|
1504
|
+
"to" => String,
|
|
1505
|
+
"windowMinutes" => Integer,
|
|
1506
|
+
"generatedAt" => String,
|
|
1507
|
+
"feeds" => Array[moment_feed_status],
|
|
1508
|
+
"events" => Array[moment_event],
|
|
1509
|
+
"incidents" => Array[moment_incident_span]
|
|
1510
|
+
}
|
|
1511
|
+
|
|
1512
|
+
# Spec schema: `MomentSeverity`.
|
|
1513
|
+
type moment_severity = "info" | "warning" | "critical"
|
|
1514
|
+
|
|
1183
1515
|
# Spec schema: `MsTeamsStatus`.
|
|
1184
1516
|
type ms_teams_status = { "webhooks" => Array[ms_teams_webhook] }
|
|
1185
1517
|
|
|
@@ -1191,8 +1523,12 @@ module Infrawrench
|
|
|
1191
1523
|
"syncIncidents" => bool,
|
|
1192
1524
|
"budgetAlerts" => bool,
|
|
1193
1525
|
"anomalyAlerts" => bool,
|
|
1526
|
+
"metricAlerts" => bool,
|
|
1194
1527
|
"resourceDrift" => bool,
|
|
1195
1528
|
"workflowPages" => bool,
|
|
1529
|
+
"providerIncidents" => bool,
|
|
1530
|
+
"expiryAlerts" => bool,
|
|
1531
|
+
"logMatchAlerts" => bool,
|
|
1196
1532
|
"weeklyDigest" => bool
|
|
1197
1533
|
}
|
|
1198
1534
|
|
|
@@ -1203,8 +1539,12 @@ module Infrawrench
|
|
|
1203
1539
|
?"syncIncidents" => bool,
|
|
1204
1540
|
?"budgetAlerts" => bool,
|
|
1205
1541
|
?"anomalyAlerts" => bool,
|
|
1542
|
+
?"metricAlerts" => bool,
|
|
1206
1543
|
?"resourceDrift" => bool,
|
|
1207
1544
|
?"workflowPages" => bool,
|
|
1545
|
+
?"providerIncidents" => bool,
|
|
1546
|
+
?"expiryAlerts" => bool,
|
|
1547
|
+
?"logMatchAlerts" => bool,
|
|
1208
1548
|
?"weeklyDigest" => bool
|
|
1209
1549
|
}
|
|
1210
1550
|
|
|
@@ -1214,8 +1554,12 @@ module Infrawrench
|
|
|
1214
1554
|
?"syncIncidents" => bool,
|
|
1215
1555
|
?"budgetAlerts" => bool,
|
|
1216
1556
|
?"anomalyAlerts" => bool,
|
|
1557
|
+
?"metricAlerts" => bool,
|
|
1217
1558
|
?"resourceDrift" => bool,
|
|
1218
1559
|
?"workflowPages" => bool,
|
|
1560
|
+
?"providerIncidents" => bool,
|
|
1561
|
+
?"expiryAlerts" => bool,
|
|
1562
|
+
?"logMatchAlerts" => bool,
|
|
1219
1563
|
?"weeklyDigest" => bool
|
|
1220
1564
|
}
|
|
1221
1565
|
|
|
@@ -1248,6 +1592,31 @@ module Infrawrench
|
|
|
1248
1592
|
# Spec schema: `OrgMembership`.
|
|
1249
1593
|
type org_membership = { "id" => String, "displayName" => String, "role" => organization_role }
|
|
1250
1594
|
|
|
1595
|
+
# Spec schema: `OrgStatusIncident`.
|
|
1596
|
+
type org_status_incident = {
|
|
1597
|
+
"id" => String,
|
|
1598
|
+
"pluginId" => String,
|
|
1599
|
+
"pluginName" => String,
|
|
1600
|
+
"title" => String,
|
|
1601
|
+
"state" => provider_incident_state,
|
|
1602
|
+
"impact" => provider_incident_impact,
|
|
1603
|
+
"url" => String | nil,
|
|
1604
|
+
"startedAt" => String,
|
|
1605
|
+
"resolvedAt" => String | nil,
|
|
1606
|
+
"lastUpdateAt" => String | nil,
|
|
1607
|
+
"lastUpdateText" => String | nil,
|
|
1608
|
+
"regions" => Array[String],
|
|
1609
|
+
"services" => Array[String],
|
|
1610
|
+
"providerWide" => bool,
|
|
1611
|
+
"affectedResourceCount" => Integer,
|
|
1612
|
+
"affectedRegions" => Array[String],
|
|
1613
|
+
"sampleResources" => Array[provider_incident_resource_sample],
|
|
1614
|
+
"overlappingChangeCount" => Integer
|
|
1615
|
+
}
|
|
1616
|
+
|
|
1617
|
+
# Spec schema: `OrgStatusIncidentsResponse`.
|
|
1618
|
+
type org_status_incidents_response = { "incidents" => Array[org_status_incident] }
|
|
1619
|
+
|
|
1251
1620
|
# Spec schema: `Organization`.
|
|
1252
1621
|
type organization = { "id" => String, "displayName" => String }
|
|
1253
1622
|
|
|
@@ -1294,6 +1663,46 @@ module Infrawrench
|
|
|
1294
1663
|
"lastSyncedAt" => String | nil
|
|
1295
1664
|
}
|
|
1296
1665
|
|
|
1666
|
+
# Spec schema: `OversizedAccountGroup`.
|
|
1667
|
+
type oversized_account_group = {
|
|
1668
|
+
"accountId" => String,
|
|
1669
|
+
"accountName" => String,
|
|
1670
|
+
"pluginId" => plugin_id,
|
|
1671
|
+
"pluginName" => String,
|
|
1672
|
+
"resources" => Array[oversized_resource]
|
|
1673
|
+
}
|
|
1674
|
+
|
|
1675
|
+
# Spec schema: `OversizedResource`.
|
|
1676
|
+
type oversized_resource = {
|
|
1677
|
+
"id" => String,
|
|
1678
|
+
"pluginId" => plugin_id,
|
|
1679
|
+
"resourceTypeId" => String,
|
|
1680
|
+
"resourceTypeName" => String,
|
|
1681
|
+
"displayName" => String,
|
|
1682
|
+
"externalId" => String | nil,
|
|
1683
|
+
"sizeFieldKey" => String,
|
|
1684
|
+
"region" => String | nil,
|
|
1685
|
+
"currentSize" => oversized_size_summary,
|
|
1686
|
+
"recommendedSize" => oversized_size_summary,
|
|
1687
|
+
"cpuP95" => Numeric,
|
|
1688
|
+
"memoryP95" => Numeric | nil,
|
|
1689
|
+
"memoryMeasured" => bool,
|
|
1690
|
+
"projectedCpuP95" => Numeric,
|
|
1691
|
+
"currency" => String,
|
|
1692
|
+
"monthlySaving" => Numeric | nil,
|
|
1693
|
+
"resizeNote" => String | nil,
|
|
1694
|
+
"lastSyncedAt" => String | nil
|
|
1695
|
+
}
|
|
1696
|
+
|
|
1697
|
+
# Spec schema: `OversizedSizeSummary`.
|
|
1698
|
+
type oversized_size_summary = {
|
|
1699
|
+
"id" => String,
|
|
1700
|
+
"label" => String,
|
|
1701
|
+
"vcpus" => Integer,
|
|
1702
|
+
"memoryMb" => Integer,
|
|
1703
|
+
"priceMonthly" => Numeric | nil
|
|
1704
|
+
}
|
|
1705
|
+
|
|
1297
1706
|
# Spec schema: `OwnershipBlocker`.
|
|
1298
1707
|
type ownership_blocker = { "id" => String, "name" => String, "memberCount" => Integer }
|
|
1299
1708
|
|
|
@@ -1364,9 +1773,12 @@ module Infrawrench
|
|
|
1364
1773
|
| "costs:write"
|
|
1365
1774
|
| "budgets:read"
|
|
1366
1775
|
| "budgets:write"
|
|
1776
|
+
| "metric-alerts:read"
|
|
1777
|
+
| "metric-alerts:write"
|
|
1367
1778
|
| "freezes:read"
|
|
1368
1779
|
| "freezes:write"
|
|
1369
1780
|
| "freezes:override"
|
|
1781
|
+
| "tag-policy:override"
|
|
1370
1782
|
| "audit:read"
|
|
1371
1783
|
| "team:read"
|
|
1372
1784
|
| "team:invite"
|
|
@@ -1500,9 +1912,64 @@ module Infrawrench
|
|
|
1500
1912
|
"id" => String,
|
|
1501
1913
|
"displayName" => String,
|
|
1502
1914
|
"logoSvg" => String,
|
|
1503
|
-
"credentialFields" => Array[credential_field]
|
|
1915
|
+
"credentialFields" => Array[credential_field],
|
|
1916
|
+
"preflight" => preflight_declaration
|
|
1917
|
+
}
|
|
1918
|
+
|
|
1919
|
+
# Spec schema: `PolicyTemplate`.
|
|
1920
|
+
type policy_template = {
|
|
1921
|
+
"formatLabel" => String,
|
|
1922
|
+
"language" => "json" | "yaml" | "text",
|
|
1923
|
+
"document" => String,
|
|
1924
|
+
?"instructions" => String,
|
|
1925
|
+
?"helpLink" => { "label" => String, "url" => String }
|
|
1926
|
+
}
|
|
1927
|
+
|
|
1928
|
+
# Spec schema: `PolicyTemplateResponse`.
|
|
1929
|
+
type policy_template_response = { "template" => policy_template }
|
|
1930
|
+
|
|
1931
|
+
# Spec schema: `PreflightCapability`.
|
|
1932
|
+
type preflight_capability = {
|
|
1933
|
+
"id" => String,
|
|
1934
|
+
"label" => String,
|
|
1935
|
+
?"description" => String,
|
|
1936
|
+
"requiredPermissions" => Array[preflight_permission],
|
|
1937
|
+
?"essential" => bool
|
|
1504
1938
|
}
|
|
1505
1939
|
|
|
1940
|
+
# Spec schema: `PreflightCheck`.
|
|
1941
|
+
type preflight_check = {
|
|
1942
|
+
"capabilityId" => String,
|
|
1943
|
+
"status" => "ok" | "missing" | "unknown",
|
|
1944
|
+
"missingPermissions" => Array[preflight_permission],
|
|
1945
|
+
"message" => String | nil,
|
|
1946
|
+
"helpLink" => { "label" => String, "url" => String } | nil
|
|
1947
|
+
}
|
|
1948
|
+
|
|
1949
|
+
# Declared when the plugin supports credential preflight (per-capability
|
|
1950
|
+
# permission checks). `null` for plugins without it.
|
|
1951
|
+
#
|
|
1952
|
+
# Spec schema: `PreflightDeclaration`.
|
|
1953
|
+
type preflight_declaration = {
|
|
1954
|
+
"capabilities" => Array[preflight_capability],
|
|
1955
|
+
?"templateFormat" => { "label" => String, "language" => "json" | "yaml" | "text" }
|
|
1956
|
+
}
|
|
1957
|
+
| nil
|
|
1958
|
+
|
|
1959
|
+
# Spec schema: `PreflightPermission`.
|
|
1960
|
+
type preflight_permission = { "id" => String, "label" => String }
|
|
1961
|
+
|
|
1962
|
+
# Spec schema: `PreflightReport`.
|
|
1963
|
+
type preflight_report = {
|
|
1964
|
+
"pluginId" => String,
|
|
1965
|
+
"supported" => bool,
|
|
1966
|
+
"identity" => String | nil,
|
|
1967
|
+
"checks" => Array[preflight_check]
|
|
1968
|
+
}
|
|
1969
|
+
|
|
1970
|
+
# Spec schema: `PreflightRequest`.
|
|
1971
|
+
type preflight_request = { "pluginId" => String, "credentials" => Hash[String, String], ?"bastionId" => String | nil }
|
|
1972
|
+
|
|
1506
1973
|
# Spec schema: `ProbeRequest`.
|
|
1507
1974
|
type probe_request = {
|
|
1508
1975
|
"items" => Array[{
|
|
@@ -1548,6 +2015,24 @@ module Infrawrench
|
|
|
1548
2015
|
"createdAt" => String
|
|
1549
2016
|
}
|
|
1550
2017
|
|
|
2018
|
+
# Normalized incident severity, least to most severe.
|
|
2019
|
+
#
|
|
2020
|
+
# Spec schema: `ProviderIncidentImpact`.
|
|
2021
|
+
type provider_incident_impact = "maintenance" | "minor" | "major" | "critical"
|
|
2022
|
+
|
|
2023
|
+
# Spec schema: `ProviderIncidentResourceSample`.
|
|
2024
|
+
type provider_incident_resource_sample = {
|
|
2025
|
+
"id" => String,
|
|
2026
|
+
"displayName" => String,
|
|
2027
|
+
"resourceTypeId" => String,
|
|
2028
|
+
?"region" => String | nil
|
|
2029
|
+
}
|
|
2030
|
+
|
|
2031
|
+
# Normalized incident lifecycle state as the provider reports it.
|
|
2032
|
+
#
|
|
2033
|
+
# Spec schema: `ProviderIncidentState`.
|
|
2034
|
+
type provider_incident_state = "investigating" | "identified" | "monitoring" | "resolved"
|
|
2035
|
+
|
|
1551
2036
|
# Spec schema: `PushedCostRow`.
|
|
1552
2037
|
type pushed_cost_row = {
|
|
1553
2038
|
"date" => String,
|
|
@@ -1571,6 +2056,9 @@ module Infrawrench
|
|
|
1571
2056
|
?"resourceIds" => Array[resource_id]
|
|
1572
2057
|
}
|
|
1573
2058
|
|
|
2059
|
+
# Spec schema: `RequiredTag`.
|
|
2060
|
+
type required_tag = { "key" => String, ?"allowedValues" => Array[String] }
|
|
2061
|
+
|
|
1574
2062
|
# Spec schema: `Resource`.
|
|
1575
2063
|
type resource = {
|
|
1576
2064
|
"id" => resource_id,
|
|
@@ -1594,6 +2082,7 @@ module Infrawrench
|
|
|
1594
2082
|
"displayName" => String,
|
|
1595
2083
|
"changeKind" => resource_change_kind,
|
|
1596
2084
|
"diff" => Array[resource_field_change],
|
|
2085
|
+
?"origin" => "schedule" | nil,
|
|
1597
2086
|
"createdAt" => String
|
|
1598
2087
|
}
|
|
1599
2088
|
|
|
@@ -1649,7 +2138,8 @@ module Infrawrench
|
|
|
1649
2138
|
"containerId" => String,
|
|
1650
2139
|
"databaseName" => String,
|
|
1651
2140
|
"storageBucketName" => String,
|
|
1652
|
-
"supportsMetrics" => bool
|
|
2141
|
+
"supportsMetrics" => bool,
|
|
2142
|
+
"schedulable" => bool
|
|
1653
2143
|
}
|
|
1654
2144
|
|
|
1655
2145
|
# Spec schema: `ResourceFieldChange`.
|
|
@@ -2051,7 +2541,16 @@ module Infrawrench
|
|
|
2051
2541
|
?"verb" => String
|
|
2052
2542
|
}],
|
|
2053
2543
|
?"isSshHost" => bool,
|
|
2054
|
-
?"sshTunnelAttachSource" => bool
|
|
2544
|
+
?"sshTunnelAttachSource" => bool,
|
|
2545
|
+
?"schedulable" => bool
|
|
2546
|
+
}
|
|
2547
|
+
|
|
2548
|
+
# Spec schema: `RightsizingListResponse`.
|
|
2549
|
+
type rightsizing_list_response = {
|
|
2550
|
+
"accounts" => Array[oversized_account_group],
|
|
2551
|
+
"totalCount" => Integer,
|
|
2552
|
+
"windowDays" => Integer,
|
|
2553
|
+
"generatedAt" => String
|
|
2055
2554
|
}
|
|
2056
2555
|
|
|
2057
2556
|
# Spec schema: `Role`.
|
|
@@ -2076,6 +2575,12 @@ module Infrawrench
|
|
|
2076
2575
|
# Spec schema: `RoleUpdateRequest`.
|
|
2077
2576
|
type role_update_request = { ?"name" => String, ?"description" => String | nil, ?"permissions" => Array[permission] }
|
|
2078
2577
|
|
|
2578
|
+
# Spec schema: `ScheduleConflict`.
|
|
2579
|
+
type schedule_conflict = { "error" => String }
|
|
2580
|
+
|
|
2581
|
+
# Spec schema: `ScheduleTransition`.
|
|
2582
|
+
type schedule_transition = { "at" => String, "action" => "stop" | "start" }
|
|
2583
|
+
|
|
2079
2584
|
# Spec schema: `SearchHit`.
|
|
2080
2585
|
type search_hit = {
|
|
2081
2586
|
"id" => resource_id,
|
|
@@ -2193,6 +2698,14 @@ module Infrawrench
|
|
|
2193
2698
|
?"sshUsername" => String
|
|
2194
2699
|
}
|
|
2195
2700
|
|
|
2701
|
+
# Spec schema: `ShowbackReport`.
|
|
2702
|
+
type showback_report = {
|
|
2703
|
+
"from" => String,
|
|
2704
|
+
"to" => String,
|
|
2705
|
+
"currencies" => Array[String],
|
|
2706
|
+
"centres" => Array[{ "costCentreId" => String | nil, "name" => String, "totals" => Hash[String, Numeric] }]
|
|
2707
|
+
}
|
|
2708
|
+
|
|
2196
2709
|
# Spec schema: `SlackAvailableChannel`.
|
|
2197
2710
|
type slack_available_channel = { "id" => String, "name" => String, "isPrivate" => bool }
|
|
2198
2711
|
|
|
@@ -2206,8 +2719,12 @@ module Infrawrench
|
|
|
2206
2719
|
"syncIncidents" => bool,
|
|
2207
2720
|
"budgetAlerts" => bool,
|
|
2208
2721
|
"anomalyAlerts" => bool,
|
|
2722
|
+
"metricAlerts" => bool,
|
|
2209
2723
|
"resourceDrift" => bool,
|
|
2210
2724
|
"workflowPages" => bool,
|
|
2725
|
+
"providerIncidents" => bool,
|
|
2726
|
+
"expiryAlerts" => bool,
|
|
2727
|
+
"logMatchAlerts" => bool,
|
|
2211
2728
|
"weeklyDigest" => bool
|
|
2212
2729
|
}
|
|
2213
2730
|
|
|
@@ -2220,8 +2737,12 @@ module Infrawrench
|
|
|
2220
2737
|
?"syncIncidents" => bool,
|
|
2221
2738
|
?"budgetAlerts" => bool,
|
|
2222
2739
|
?"anomalyAlerts" => bool,
|
|
2740
|
+
?"metricAlerts" => bool,
|
|
2223
2741
|
?"resourceDrift" => bool,
|
|
2224
2742
|
?"workflowPages" => bool,
|
|
2743
|
+
?"providerIncidents" => bool,
|
|
2744
|
+
?"expiryAlerts" => bool,
|
|
2745
|
+
?"logMatchAlerts" => bool,
|
|
2225
2746
|
?"weeklyDigest" => bool
|
|
2226
2747
|
}
|
|
2227
2748
|
|
|
@@ -2230,8 +2751,12 @@ module Infrawrench
|
|
|
2230
2751
|
?"syncIncidents" => bool,
|
|
2231
2752
|
?"budgetAlerts" => bool,
|
|
2232
2753
|
?"anomalyAlerts" => bool,
|
|
2754
|
+
?"metricAlerts" => bool,
|
|
2233
2755
|
?"resourceDrift" => bool,
|
|
2234
2756
|
?"workflowPages" => bool,
|
|
2757
|
+
?"providerIncidents" => bool,
|
|
2758
|
+
?"expiryAlerts" => bool,
|
|
2759
|
+
?"logMatchAlerts" => bool,
|
|
2235
2760
|
?"weeklyDigest" => bool
|
|
2236
2761
|
}
|
|
2237
2762
|
|
|
@@ -2245,6 +2770,74 @@ module Infrawrench
|
|
|
2245
2770
|
"channels" => Array[slack_channel]
|
|
2246
2771
|
}
|
|
2247
2772
|
|
|
2773
|
+
# Spec schema: `SleepSchedule`.
|
|
2774
|
+
type sleep_schedule = {
|
|
2775
|
+
"id" => String,
|
|
2776
|
+
"resourceId" => String,
|
|
2777
|
+
"accountId" => String,
|
|
2778
|
+
"pluginId" => plugin_id,
|
|
2779
|
+
"resourceTypeId" => String,
|
|
2780
|
+
"resourceName" => String,
|
|
2781
|
+
"accountName" => String,
|
|
2782
|
+
"daysOfWeek" => Array[Integer],
|
|
2783
|
+
"stopTime" => String,
|
|
2784
|
+
"startTime" => String,
|
|
2785
|
+
"timezone" => String,
|
|
2786
|
+
"paused" => bool,
|
|
2787
|
+
"nextTransitionAt" => String | nil,
|
|
2788
|
+
"nextTransitionAction" => "stop" | "start" | nil,
|
|
2789
|
+
"lastRunAt" => String | nil,
|
|
2790
|
+
"lastRunAction" => "stop" | "start" | nil,
|
|
2791
|
+
"lastRunStatus" => "ok" | "failed" | "skipped_freeze" | nil,
|
|
2792
|
+
"lastRunError" => String | nil,
|
|
2793
|
+
"projectedMonthlySaving" => Numeric | nil,
|
|
2794
|
+
"currency" => String | nil,
|
|
2795
|
+
"createdAt" => String,
|
|
2796
|
+
"updatedAt" => String
|
|
2797
|
+
}
|
|
2798
|
+
|
|
2799
|
+
# Spec schema: `SleepScheduleCreate`.
|
|
2800
|
+
type sleep_schedule_create = {
|
|
2801
|
+
"resourceId" => String,
|
|
2802
|
+
"accountId" => String,
|
|
2803
|
+
"daysOfWeek" => Array[Integer],
|
|
2804
|
+
"stopTime" => String,
|
|
2805
|
+
"startTime" => String,
|
|
2806
|
+
"timezone" => String
|
|
2807
|
+
}
|
|
2808
|
+
|
|
2809
|
+
# Spec schema: `SleepScheduleList`.
|
|
2810
|
+
type sleep_schedule_list = { "schedules" => Array[sleep_schedule] }
|
|
2811
|
+
|
|
2812
|
+
# Spec schema: `SleepSchedulePreview`.
|
|
2813
|
+
type sleep_schedule_preview = {
|
|
2814
|
+
"offFraction" => Numeric,
|
|
2815
|
+
"monthlyCost" => Numeric | nil,
|
|
2816
|
+
"projectedMonthlySaving" => Numeric | nil,
|
|
2817
|
+
"currency" => String | nil,
|
|
2818
|
+
"costWindowDays" => Integer,
|
|
2819
|
+
"nextTransitions" => Array[schedule_transition]
|
|
2820
|
+
}
|
|
2821
|
+
|
|
2822
|
+
# Spec schema: `SleepSchedulePreviewRequest`.
|
|
2823
|
+
type sleep_schedule_preview_request = {
|
|
2824
|
+
"resourceId" => String,
|
|
2825
|
+
"accountId" => String,
|
|
2826
|
+
"daysOfWeek" => Array[Integer],
|
|
2827
|
+
"stopTime" => String,
|
|
2828
|
+
"startTime" => String,
|
|
2829
|
+
"timezone" => String
|
|
2830
|
+
}
|
|
2831
|
+
|
|
2832
|
+
# Spec schema: `SleepScheduleUpdate`.
|
|
2833
|
+
type sleep_schedule_update = {
|
|
2834
|
+
?"daysOfWeek" => Array[Integer],
|
|
2835
|
+
?"stopTime" => String,
|
|
2836
|
+
?"startTime" => String,
|
|
2837
|
+
?"timezone" => String,
|
|
2838
|
+
?"paused" => bool
|
|
2839
|
+
}
|
|
2840
|
+
|
|
2248
2841
|
# Spec schema: `SqlEstimateRequest`.
|
|
2249
2842
|
type sql_estimate_request = { "accountId" => String, "resourceId" => resource_id, "sql" => String }
|
|
2250
2843
|
|
|
@@ -2277,6 +2870,56 @@ module Infrawrench
|
|
|
2277
2870
|
# Spec schema: `SshExecResponse`.
|
|
2278
2871
|
type ssh_exec_response = { "stdout" => String, ?"stderr" => String, "code" => Integer }
|
|
2279
2872
|
|
|
2873
|
+
# Spec schema: `SshFanoutHostResult`.
|
|
2874
|
+
type ssh_fanout_host_result = {
|
|
2875
|
+
"kind" => "account" | "resource",
|
|
2876
|
+
"targetId" => String,
|
|
2877
|
+
"label" => String,
|
|
2878
|
+
"status" => "done" | "error" | "blocked",
|
|
2879
|
+
"exitCode" => Integer | nil,
|
|
2880
|
+
"stdout" => String,
|
|
2881
|
+
"stderr" => String,
|
|
2882
|
+
?"error" => String,
|
|
2883
|
+
"durationMs" => Numeric,
|
|
2884
|
+
?"hostKeyTrust" => {
|
|
2885
|
+
"kind" => "unknown" | "mismatch",
|
|
2886
|
+
"host" => String,
|
|
2887
|
+
"port" => Integer,
|
|
2888
|
+
"presentedFingerprint" => String,
|
|
2889
|
+
"storedFingerprint" => String | nil
|
|
2890
|
+
}
|
|
2891
|
+
}
|
|
2892
|
+
|
|
2893
|
+
# Spec schema: `SshFanoutRunRequest`.
|
|
2894
|
+
type ssh_fanout_run_request = {
|
|
2895
|
+
"command" => String,
|
|
2896
|
+
"targets" => Array[{ "kind" => "account" | "resource", "id" => String }],
|
|
2897
|
+
?"sshKeyId" => String,
|
|
2898
|
+
?"username" => String,
|
|
2899
|
+
?"concurrency" => Integer
|
|
2900
|
+
}
|
|
2901
|
+
|
|
2902
|
+
# Spec schema: `SshFanoutRunResponse`.
|
|
2903
|
+
type ssh_fanout_run_response = { "results" => Array[ssh_fanout_host_result] }
|
|
2904
|
+
|
|
2905
|
+
# Spec schema: `SshFanoutTarget`.
|
|
2906
|
+
type ssh_fanout_target = {
|
|
2907
|
+
"kind" => "account" | "resource",
|
|
2908
|
+
"id" => String,
|
|
2909
|
+
"accountId" => String,
|
|
2910
|
+
"label" => String,
|
|
2911
|
+
"pluginId" => String,
|
|
2912
|
+
?"resourceTypeId" => String,
|
|
2913
|
+
?"host" => String,
|
|
2914
|
+
?"defaultUsername" => String,
|
|
2915
|
+
"running" => bool,
|
|
2916
|
+
"needsKey" => bool,
|
|
2917
|
+
"tags" => Array[String]
|
|
2918
|
+
}
|
|
2919
|
+
|
|
2920
|
+
# Spec schema: `SshFanoutTargetsResponse`.
|
|
2921
|
+
type ssh_fanout_targets_response = { "targets" => Array[ssh_fanout_target] }
|
|
2922
|
+
|
|
2280
2923
|
# Spec schema: `SshKey`.
|
|
2281
2924
|
type ssh_key = {
|
|
2282
2925
|
"id" => String,
|
|
@@ -2301,6 +2944,19 @@ module Infrawrench
|
|
|
2301
2944
|
| "sk-ssh-ed25519@openssh.com"
|
|
2302
2945
|
| "sk-ecdsa-sha2-nistp256@openssh.com"
|
|
2303
2946
|
|
|
2947
|
+
# Spec schema: `SshSnippet`.
|
|
2948
|
+
type ssh_snippet = {
|
|
2949
|
+
"id" => String,
|
|
2950
|
+
"name" => String,
|
|
2951
|
+
"command" => String,
|
|
2952
|
+
"description" => String | nil,
|
|
2953
|
+
"createdAt" => String,
|
|
2954
|
+
"updatedAt" => String
|
|
2955
|
+
}
|
|
2956
|
+
|
|
2957
|
+
# Spec schema: `SshSnippetInput`.
|
|
2958
|
+
type ssh_snippet_input = { "name" => String, "command" => String, ?"description" => String }
|
|
2959
|
+
|
|
2304
2960
|
# Spec schema: `SshTunnelCreateAccountRequest`.
|
|
2305
2961
|
type ssh_tunnel_create_account_request = {
|
|
2306
2962
|
"sshHost" => String,
|
|
@@ -2356,6 +3012,11 @@ module Infrawrench
|
|
|
2356
3012
|
}
|
|
2357
3013
|
| nil
|
|
2358
3014
|
|
|
3015
|
+
# Two allocation rule ids in the same org whose priorities should be swapped.
|
|
3016
|
+
#
|
|
3017
|
+
# Spec schema: `SwapAllocationRulesBody`.
|
|
3018
|
+
type swap_allocation_rules_body = { "aId" => String, "bId" => String }
|
|
3019
|
+
|
|
2359
3020
|
# Spec schema: `SyncResponse`.
|
|
2360
3021
|
type sync_response = { "synced" => Integer }
|
|
2361
3022
|
|
|
@@ -2389,6 +3050,28 @@ module Infrawrench
|
|
|
2389
3050
|
?"conversationId" => String
|
|
2390
3051
|
}
|
|
2391
3052
|
|
|
3053
|
+
# Spec schema: `TagComplianceReport`.
|
|
3054
|
+
type tag_compliance_report = { "policy" => tag_policy, "accounts" => Array[account_tag_compliance] }
|
|
3055
|
+
|
|
3056
|
+
# Spec schema: `TagPolicy`.
|
|
3057
|
+
type tag_policy = { "requiredTags" => Array[required_tag], "enforceOnCreate" => bool }
|
|
3058
|
+
|
|
3059
|
+
# Spec schema: `TagPolicyBlocked`.
|
|
3060
|
+
type tag_policy_blocked = {
|
|
3061
|
+
"error" => String,
|
|
3062
|
+
"code" => "tag_policy_unmet",
|
|
3063
|
+
"violations" => Array[tag_policy_violation],
|
|
3064
|
+
"requiredTags" => Array[required_tag]
|
|
3065
|
+
}
|
|
3066
|
+
|
|
3067
|
+
# Spec schema: `TagPolicyViolation`.
|
|
3068
|
+
type tag_policy_violation = {
|
|
3069
|
+
"key" => String,
|
|
3070
|
+
"reason" => "missing" | "value_not_allowed",
|
|
3071
|
+
?"value" => String,
|
|
3072
|
+
?"allowedValues" => Array[String]
|
|
3073
|
+
}
|
|
3074
|
+
|
|
2392
3075
|
# Spec schema: `TotpEnrollment`.
|
|
2393
3076
|
type totp_enrollment = {
|
|
2394
3077
|
"factorId" => String,
|
|
@@ -2401,6 +3084,24 @@ module Infrawrench
|
|
|
2401
3084
|
# Spec schema: `UnpinRequest`.
|
|
2402
3085
|
type unpin_request = { "dashboardId" => String, "resourceId" => resource_id }
|
|
2403
3086
|
|
|
3087
|
+
# Spec schema: `UntaggedSpendReport`.
|
|
3088
|
+
type untagged_spend_report = {
|
|
3089
|
+
"from" => String,
|
|
3090
|
+
"to" => String,
|
|
3091
|
+
"requiredKeys" => Array[String],
|
|
3092
|
+
"currencies" => Array[String],
|
|
3093
|
+
"totals" => Hash[String, Numeric],
|
|
3094
|
+
"untaggedTotals" => Hash[String, Numeric],
|
|
3095
|
+
"byKey" => Array[{ "key" => String, "untagged" => Hash[String, Numeric] }],
|
|
3096
|
+
"topUntagged" => Array[{
|
|
3097
|
+
"accountId" => String,
|
|
3098
|
+
"accountLabel" => String,
|
|
3099
|
+
"service" => String,
|
|
3100
|
+
"currency" => String,
|
|
3101
|
+
"amount" => Numeric
|
|
3102
|
+
}]
|
|
3103
|
+
}
|
|
3104
|
+
|
|
2404
3105
|
# Spec schema: `UpdateAccountRequest`.
|
|
2405
3106
|
type update_account_request = { ?"displayName" => String, ?"bastionId" => String | nil }
|
|
2406
3107
|
|
|
@@ -2492,6 +3193,18 @@ module Infrawrench
|
|
|
2492
3193
|
def update: (id: String, body: { "credentials" => Hash[String, String] }, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "ok" => bool }
|
|
2493
3194
|
end
|
|
2494
3195
|
|
|
3196
|
+
class AccountsPluginsNamespace
|
|
3197
|
+
def initialize: (Transport) -> void
|
|
3198
|
+
def list: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[plugin_summary]
|
|
3199
|
+
def policy_template: (plugin_id: plugin_id, ?org_id: String?, ?capabilities: String?, ?request_options: Hash[Symbol, untyped]?) -> policy_template_response
|
|
3200
|
+
end
|
|
3201
|
+
|
|
3202
|
+
class AccountsPreflightNamespace
|
|
3203
|
+
def initialize: (Transport) -> void
|
|
3204
|
+
def create: (body: preflight_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> preflight_report
|
|
3205
|
+
def post_org_org_id_accounts_id_preflight: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> preflight_report
|
|
3206
|
+
end
|
|
3207
|
+
|
|
2495
3208
|
class AccountsSyncTypeNamespace
|
|
2496
3209
|
def initialize: (Transport) -> void
|
|
2497
3210
|
def create: (id: String, type_id: resource_type_id, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[synced_resource]
|
|
@@ -2499,13 +3212,14 @@ module Infrawrench
|
|
|
2499
3212
|
|
|
2500
3213
|
class AccountsNamespace
|
|
2501
3214
|
attr_reader credentials: AccountsCredentialsNamespace
|
|
3215
|
+
attr_reader plugins: AccountsPluginsNamespace
|
|
3216
|
+
attr_reader preflight: AccountsPreflightNamespace
|
|
2502
3217
|
attr_reader sync_type: AccountsSyncTypeNamespace
|
|
2503
3218
|
def initialize: (Transport) -> void
|
|
2504
3219
|
def create: (body: (create_account_request & { ?"pluginId" => plugin_id }), ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> create_account_response
|
|
2505
3220
|
def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
2506
3221
|
def detail: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> account_detail
|
|
2507
3222
|
def list: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[account]
|
|
2508
|
-
def plugins: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[plugin_summary]
|
|
2509
3223
|
def resources: (id: String, ?org_id: String?, ?top_level_only: "true" | "false"?, ?request_options: Hash[Symbol, untyped]?) -> Array[resource]
|
|
2510
3224
|
def sync: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> sync_response
|
|
2511
3225
|
def update: (id: String, body: update_account_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> updated_account
|
|
@@ -2617,6 +3331,24 @@ module Infrawrench
|
|
|
2617
3331
|
def templates: (body: connect_templates_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> connect_templates_response
|
|
2618
3332
|
end
|
|
2619
3333
|
|
|
3334
|
+
class CostCentresRulesNamespace
|
|
3335
|
+
def initialize: (Transport) -> void
|
|
3336
|
+
def create: (body: allocation_rule_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> allocation_rule
|
|
3337
|
+
def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
3338
|
+
def list: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[allocation_rule]
|
|
3339
|
+
def swap: (body: swap_allocation_rules_body, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[allocation_rule]
|
|
3340
|
+
def update: (id: String, body: allocation_rule_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> allocation_rule
|
|
3341
|
+
end
|
|
3342
|
+
|
|
3343
|
+
class CostCentresNamespace
|
|
3344
|
+
attr_reader rules: CostCentresRulesNamespace
|
|
3345
|
+
def initialize: (Transport) -> void
|
|
3346
|
+
def create: (body: cost_centre_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_centre
|
|
3347
|
+
def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
3348
|
+
def list: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[cost_centre]
|
|
3349
|
+
def update: (id: String, body: cost_centre_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_centre
|
|
3350
|
+
end
|
|
3351
|
+
|
|
2620
3352
|
class CostsAnomalySettingsNamespace
|
|
2621
3353
|
def initialize: (Transport) -> void
|
|
2622
3354
|
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_anomaly_settings_view
|
|
@@ -2630,7 +3362,9 @@ module Infrawrench
|
|
|
2630
3362
|
def dimensions: (dimension: "provider" | "account" | "service" | "region" | "resource" | "tag" | "tag-keys", ?org_id: String?, ?tag_key: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_dimension_values
|
|
2631
3363
|
def query: (body: cost_query_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_query_response
|
|
2632
3364
|
def rows: (body: cost_push_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_push_response
|
|
3365
|
+
def showback: (?org_id: String?, ?from: String?, ?to: String?, ?request_options: Hash[Symbol, untyped]?) -> showback_report
|
|
2633
3366
|
def status: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "accounts" => Array[cost_account_status] }
|
|
3367
|
+
def untagged: (?org_id: String?, ?from: String?, ?to: String?, ?request_options: Hash[Symbol, untyped]?) -> untagged_spend_report
|
|
2634
3368
|
end
|
|
2635
3369
|
|
|
2636
3370
|
class CustomGraphsNamespace
|
|
@@ -2732,6 +3466,18 @@ module Infrawrench
|
|
|
2732
3466
|
def command: (body: docker_command_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> docker_command_response
|
|
2733
3467
|
end
|
|
2734
3468
|
|
|
3469
|
+
class ExpiringSettingsNamespace
|
|
3470
|
+
def initialize: (Transport) -> void
|
|
3471
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> expiry_alert_settings
|
|
3472
|
+
def update: (?org_id: String?, ?body: expiry_alert_settings_update?, ?request_options: Hash[Symbol, untyped]?) -> expiry_alert_settings
|
|
3473
|
+
end
|
|
3474
|
+
|
|
3475
|
+
class ExpiringNamespace
|
|
3476
|
+
attr_reader settings: ExpiringSettingsNamespace
|
|
3477
|
+
def initialize: (Transport) -> void
|
|
3478
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> expiry_list_response
|
|
3479
|
+
end
|
|
3480
|
+
|
|
2735
3481
|
class InvitationsByTokenNamespace
|
|
2736
3482
|
def initialize: (Transport) -> void
|
|
2737
3483
|
def get: (token: String, ?request_options: Hash[Symbol, untyped]?) -> invitation_detail
|
|
@@ -2748,6 +3494,33 @@ module Infrawrench
|
|
|
2748
3494
|
def command: (body: kv_command_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> kv_command_response
|
|
2749
3495
|
end
|
|
2750
3496
|
|
|
3497
|
+
class LogWorkspacesNamespace
|
|
3498
|
+
def initialize: (Transport) -> void
|
|
3499
|
+
def create: (body: log_workspace_query_create, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> log_workspace_query
|
|
3500
|
+
def delete: (query_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> nil
|
|
3501
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> log_workspace_query_list
|
|
3502
|
+
def resources: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> log_capable_resource_list
|
|
3503
|
+
def update: (query_id: String, body: log_workspace_query_update, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> log_workspace_query
|
|
3504
|
+
end
|
|
3505
|
+
|
|
3506
|
+
class MetricAlertsNamespace
|
|
3507
|
+
def initialize: (Transport) -> void
|
|
3508
|
+
def create: (body: metric_alert_rule_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> metric_alert_rule
|
|
3509
|
+
def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
3510
|
+
def events: (?org_id: String?, ?rule_id: String?, ?limit: Integer?, ?request_options: Hash[Symbol, untyped]?) -> Array[metric_alert_event]
|
|
3511
|
+
def get: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> metric_alert_rule
|
|
3512
|
+
def list: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[metric_alert_rule_with_status]
|
|
3513
|
+
def metric_keys: (?org_id: String?, ?plugin_id: String?, ?resource_type_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[metric_series_key]
|
|
3514
|
+
def selector_options: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> metric_alert_selector_options
|
|
3515
|
+
def selector_preview: (?org_id: String?, ?plugin_id: String?, ?resource_type_id: String?, ?tag_key: String?, ?tag_value: String?, ?request_options: Hash[Symbol, untyped]?) -> metric_alert_selector_preview
|
|
3516
|
+
def update: (id: String, body: metric_alert_rule_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> metric_alert_rule
|
|
3517
|
+
end
|
|
3518
|
+
|
|
3519
|
+
class MomentNamespace
|
|
3520
|
+
def initialize: (Transport) -> void
|
|
3521
|
+
def get: (?org_id: String?, ?at: String?, ?window: Integer?, ?request_options: Hash[Symbol, untyped]?) -> moment_response
|
|
3522
|
+
end
|
|
3523
|
+
|
|
2751
3524
|
class MsteamsWebhooksNamespace
|
|
2752
3525
|
def initialize: (Transport) -> void
|
|
2753
3526
|
def create: (?org_id: String?, ?body: ms_teams_webhook_create?, ?request_options: Hash[Symbol, untyped]?) -> ms_teams_webhook
|
|
@@ -2851,6 +3624,20 @@ module Infrawrench
|
|
|
2851
3624
|
def update: (body: update_resource_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> update_resource_response
|
|
2852
3625
|
end
|
|
2853
3626
|
|
|
3627
|
+
class RightsizingNamespace
|
|
3628
|
+
def initialize: (Transport) -> void
|
|
3629
|
+
def get: (?org_id: String?, ?refresh: "true" | "false"?, ?request_options: Hash[Symbol, untyped]?) -> rightsizing_list_response
|
|
3630
|
+
end
|
|
3631
|
+
|
|
3632
|
+
class SchedulesNamespace
|
|
3633
|
+
def initialize: (Transport) -> void
|
|
3634
|
+
def create: (?org_id: String?, ?body: sleep_schedule_create?, ?request_options: Hash[Symbol, untyped]?) -> sleep_schedule
|
|
3635
|
+
def delete: (schedule_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> nil
|
|
3636
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> sleep_schedule_list
|
|
3637
|
+
def preview: (?org_id: String?, ?body: sleep_schedule_preview_request?, ?request_options: Hash[Symbol, untyped]?) -> sleep_schedule_preview
|
|
3638
|
+
def update: (schedule_id: String, ?org_id: String?, ?body: sleep_schedule_update?, ?request_options: Hash[Symbol, untyped]?) -> sleep_schedule
|
|
3639
|
+
end
|
|
3640
|
+
|
|
2854
3641
|
class SearchNamespace
|
|
2855
3642
|
def initialize: (Transport) -> void
|
|
2856
3643
|
def list: (?org_id: String?, ?q: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[search_hit]
|
|
@@ -2894,6 +3681,21 @@ module Infrawrench
|
|
|
2894
3681
|
def query: (body: sql_query_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> (sql_query_response | json_object)
|
|
2895
3682
|
end
|
|
2896
3683
|
|
|
3684
|
+
class SshFanoutSnippetsNamespace
|
|
3685
|
+
def initialize: (Transport) -> void
|
|
3686
|
+
def create: (body: ssh_snippet_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "id" => String }
|
|
3687
|
+
def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
3688
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "snippets" => Array[ssh_snippet] }
|
|
3689
|
+
def update: (id: String, body: ssh_snippet_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
3690
|
+
end
|
|
3691
|
+
|
|
3692
|
+
class SshFanoutNamespace
|
|
3693
|
+
attr_reader snippets: SshFanoutSnippetsNamespace
|
|
3694
|
+
def initialize: (Transport) -> void
|
|
3695
|
+
def run: (body: ssh_fanout_run_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ssh_fanout_run_response
|
|
3696
|
+
def targets: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ssh_fanout_targets_response
|
|
3697
|
+
end
|
|
3698
|
+
|
|
2897
3699
|
class SshKeysNamespace
|
|
2898
3700
|
def initialize: (Transport) -> void
|
|
2899
3701
|
def create: (body: generate_ssh_key_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> generated_ssh_key
|
|
@@ -2911,6 +3713,11 @@ module Infrawrench
|
|
|
2911
3713
|
def open: (body: { "accountId" => String }, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "tunnelId" => String, "localPort" => Integer }
|
|
2912
3714
|
end
|
|
2913
3715
|
|
|
3716
|
+
class StatusIncidentsNamespace
|
|
3717
|
+
def initialize: (Transport) -> void
|
|
3718
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> org_status_incidents_response
|
|
3719
|
+
end
|
|
3720
|
+
|
|
2914
3721
|
class StorageNamespace
|
|
2915
3722
|
def initialize: (Transport) -> void
|
|
2916
3723
|
def delete: (body: storage_path_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
@@ -2920,6 +3727,13 @@ module Infrawrench
|
|
|
2920
3727
|
def upload: (body: storage_upload_form, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
2921
3728
|
end
|
|
2922
3729
|
|
|
3730
|
+
class TagPolicyNamespace
|
|
3731
|
+
def initialize: (Transport) -> void
|
|
3732
|
+
def compliance: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> tag_compliance_report
|
|
3733
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> tag_policy
|
|
3734
|
+
def update: (body: tag_policy, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> tag_policy
|
|
3735
|
+
end
|
|
3736
|
+
|
|
2923
3737
|
class TeamInvitationsNamespace
|
|
2924
3738
|
def initialize: (Transport) -> void
|
|
2925
3739
|
def create: (body: invite_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> invite_response
|
|
@@ -2985,6 +3799,7 @@ module Infrawrench
|
|
|
2985
3799
|
attr_reader change_freezes: ChangeFreezesNamespace
|
|
2986
3800
|
attr_reader changes: ChangesNamespace
|
|
2987
3801
|
attr_reader connect: ConnectNamespace
|
|
3802
|
+
attr_reader cost_centres: CostCentresNamespace
|
|
2988
3803
|
attr_reader costs: CostsNamespace
|
|
2989
3804
|
attr_reader custom_graphs: CustomGraphsNamespace
|
|
2990
3805
|
attr_reader dashboards: DashboardsNamespace
|
|
@@ -2992,21 +3807,30 @@ module Infrawrench
|
|
|
2992
3807
|
attr_reader deployments: DeploymentsNamespace
|
|
2993
3808
|
attr_reader digest: DigestNamespace
|
|
2994
3809
|
attr_reader docker: DockerNamespace
|
|
3810
|
+
attr_reader expiring: ExpiringNamespace
|
|
2995
3811
|
attr_reader invitations: InvitationsNamespace
|
|
2996
3812
|
attr_reader kv: KvNamespace
|
|
3813
|
+
attr_reader log_workspaces: LogWorkspacesNamespace
|
|
3814
|
+
attr_reader metric_alerts: MetricAlertsNamespace
|
|
3815
|
+
attr_reader moment: MomentNamespace
|
|
2997
3816
|
attr_reader msteams: MsteamsNamespace
|
|
2998
3817
|
attr_reader orgs: OrgsNamespace
|
|
2999
3818
|
attr_reader orphans: OrphansNamespace
|
|
3000
3819
|
attr_reader pages: PagesNamespace
|
|
3001
3820
|
attr_reader profile: ProfileNamespace
|
|
3002
3821
|
attr_reader resources: ResourcesNamespace
|
|
3822
|
+
attr_reader rightsizing: RightsizingNamespace
|
|
3823
|
+
attr_reader schedules: SchedulesNamespace
|
|
3003
3824
|
attr_reader search: SearchNamespace
|
|
3004
3825
|
attr_reader sftp: SftpNamespace
|
|
3005
3826
|
attr_reader slack: SlackNamespace
|
|
3006
3827
|
attr_reader sql: SqlNamespace
|
|
3828
|
+
attr_reader ssh_fanout: SshFanoutNamespace
|
|
3007
3829
|
attr_reader ssh_keys: SshKeysNamespace
|
|
3008
3830
|
attr_reader ssh_tunnels: SshTunnelsNamespace
|
|
3831
|
+
attr_reader status_incidents: StatusIncidentsNamespace
|
|
3009
3832
|
attr_reader storage: StorageNamespace
|
|
3833
|
+
attr_reader tag_policy: TagPolicyNamespace
|
|
3010
3834
|
attr_reader team: TeamNamespace
|
|
3011
3835
|
attr_reader workflow_approvals: WorkflowApprovalsNamespace
|
|
3012
3836
|
attr_reader workflows: WorkflowsNamespace
|