From b827ccc3ebeeee82f155d832d922d200d122249c Mon Sep 17 00:00:00 2001 From: Jordi Gil Date: Fri, 6 Mar 2026 12:11:22 -0500 Subject: [PATCH 1/3] FLPATH-3402: add 11 cost_management resource type schemas Register 11 resource types for the cost_management reporter so that the Kessel Inventory API can accept ReportResource gRPC calls from Cost Management (Koku). Without these schemas, ReportResource calls for cost management resource types are rejected. Resource types: openshift_cluster, openshift_node, openshift_project, cost_model, settings, aws_account, aws_organizational_unit, azure_subscription_guid, gcp_account, gcp_project, integration. Each follows the same 4-file pattern as existing resource types (host/reporters/hbi, k8s_cluster/reporters/acm, etc.). Made-with: Cursor --- .../resources/aws_account/common_representation.json | 8 ++++++++ data/schema/resources/aws_account/config.yaml | 3 +++ .../reporters/cost_management/aws_account.json | 6 ++++++ .../aws_account/reporters/cost_management/config.yaml | 3 +++ .../aws_organizational_unit/common_representation.json | 8 ++++++++ data/schema/resources/aws_organizational_unit/config.yaml | 3 +++ .../cost_management/aws_organizational_unit.json | 6 ++++++ .../reporters/cost_management/config.yaml | 3 +++ .../azure_subscription_guid/common_representation.json | 8 ++++++++ data/schema/resources/azure_subscription_guid/config.yaml | 3 +++ .../cost_management/azure_subscription_guid.json | 6 ++++++ .../reporters/cost_management/config.yaml | 3 +++ .../resources/cost_model/common_representation.json | 8 ++++++++ data/schema/resources/cost_model/config.yaml | 3 +++ .../cost_model/reporters/cost_management/config.yaml | 3 +++ .../cost_model/reporters/cost_management/cost_model.json | 6 ++++++ .../resources/gcp_account/common_representation.json | 8 ++++++++ data/schema/resources/gcp_account/config.yaml | 3 +++ .../gcp_account/reporters/cost_management/config.yaml | 3 +++ .../reporters/cost_management/gcp_account.json | 6 ++++++ .../resources/gcp_project/common_representation.json | 8 ++++++++ data/schema/resources/gcp_project/config.yaml | 3 +++ .../gcp_project/reporters/cost_management/config.yaml | 3 +++ .../reporters/cost_management/gcp_project.json | 6 ++++++ .../resources/integration/common_representation.json | 8 ++++++++ data/schema/resources/integration/config.yaml | 3 +++ .../integration/reporters/cost_management/config.yaml | 3 +++ .../reporters/cost_management/integration.json | 6 ++++++ .../openshift_cluster/common_representation.json | 8 ++++++++ data/schema/resources/openshift_cluster/config.yaml | 3 +++ .../reporters/cost_management/config.yaml | 3 +++ .../reporters/cost_management/openshift_cluster.json | 6 ++++++ .../resources/openshift_node/common_representation.json | 8 ++++++++ data/schema/resources/openshift_node/config.yaml | 3 +++ .../openshift_node/reporters/cost_management/config.yaml | 3 +++ .../reporters/cost_management/openshift_node.json | 6 ++++++ .../openshift_project/common_representation.json | 8 ++++++++ data/schema/resources/openshift_project/config.yaml | 3 +++ .../reporters/cost_management/config.yaml | 3 +++ .../reporters/cost_management/openshift_project.json | 6 ++++++ data/schema/resources/settings/common_representation.json | 8 ++++++++ data/schema/resources/settings/config.yaml | 3 +++ .../settings/reporters/cost_management/config.yaml | 3 +++ .../settings/reporters/cost_management/settings.json | 6 ++++++ 44 files changed, 220 insertions(+) create mode 100644 data/schema/resources/aws_account/common_representation.json create mode 100644 data/schema/resources/aws_account/config.yaml create mode 100644 data/schema/resources/aws_account/reporters/cost_management/aws_account.json create mode 100644 data/schema/resources/aws_account/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/aws_organizational_unit/common_representation.json create mode 100644 data/schema/resources/aws_organizational_unit/config.yaml create mode 100644 data/schema/resources/aws_organizational_unit/reporters/cost_management/aws_organizational_unit.json create mode 100644 data/schema/resources/aws_organizational_unit/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/azure_subscription_guid/common_representation.json create mode 100644 data/schema/resources/azure_subscription_guid/config.yaml create mode 100644 data/schema/resources/azure_subscription_guid/reporters/cost_management/azure_subscription_guid.json create mode 100644 data/schema/resources/azure_subscription_guid/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/cost_model/common_representation.json create mode 100644 data/schema/resources/cost_model/config.yaml create mode 100644 data/schema/resources/cost_model/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/cost_model/reporters/cost_management/cost_model.json create mode 100644 data/schema/resources/gcp_account/common_representation.json create mode 100644 data/schema/resources/gcp_account/config.yaml create mode 100644 data/schema/resources/gcp_account/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/gcp_account/reporters/cost_management/gcp_account.json create mode 100644 data/schema/resources/gcp_project/common_representation.json create mode 100644 data/schema/resources/gcp_project/config.yaml create mode 100644 data/schema/resources/gcp_project/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/gcp_project/reporters/cost_management/gcp_project.json create mode 100644 data/schema/resources/integration/common_representation.json create mode 100644 data/schema/resources/integration/config.yaml create mode 100644 data/schema/resources/integration/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/integration/reporters/cost_management/integration.json create mode 100644 data/schema/resources/openshift_cluster/common_representation.json create mode 100644 data/schema/resources/openshift_cluster/config.yaml create mode 100644 data/schema/resources/openshift_cluster/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/openshift_cluster/reporters/cost_management/openshift_cluster.json create mode 100644 data/schema/resources/openshift_node/common_representation.json create mode 100644 data/schema/resources/openshift_node/config.yaml create mode 100644 data/schema/resources/openshift_node/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/openshift_node/reporters/cost_management/openshift_node.json create mode 100644 data/schema/resources/openshift_project/common_representation.json create mode 100644 data/schema/resources/openshift_project/config.yaml create mode 100644 data/schema/resources/openshift_project/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/openshift_project/reporters/cost_management/openshift_project.json create mode 100644 data/schema/resources/settings/common_representation.json create mode 100644 data/schema/resources/settings/config.yaml create mode 100644 data/schema/resources/settings/reporters/cost_management/config.yaml create mode 100644 data/schema/resources/settings/reporters/cost_management/settings.json diff --git a/data/schema/resources/aws_account/common_representation.json b/data/schema/resources/aws_account/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/aws_account/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/aws_account/config.yaml b/data/schema/resources/aws_account/config.yaml new file mode 100644 index 000000000..bec013c20 --- /dev/null +++ b/data/schema/resources/aws_account/config.yaml @@ -0,0 +1,3 @@ +resource_type: aws_account +resource_reporters: + - cost_management diff --git a/data/schema/resources/aws_account/reporters/cost_management/aws_account.json b/data/schema/resources/aws_account/reporters/cost_management/aws_account.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/aws_account/reporters/cost_management/aws_account.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/aws_account/reporters/cost_management/config.yaml b/data/schema/resources/aws_account/reporters/cost_management/config.yaml new file mode 100644 index 000000000..719bb0756 --- /dev/null +++ b/data/schema/resources/aws_account/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: aws_account +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/aws_organizational_unit/common_representation.json b/data/schema/resources/aws_organizational_unit/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/aws_organizational_unit/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/aws_organizational_unit/config.yaml b/data/schema/resources/aws_organizational_unit/config.yaml new file mode 100644 index 000000000..887f00f52 --- /dev/null +++ b/data/schema/resources/aws_organizational_unit/config.yaml @@ -0,0 +1,3 @@ +resource_type: aws_organizational_unit +resource_reporters: + - cost_management diff --git a/data/schema/resources/aws_organizational_unit/reporters/cost_management/aws_organizational_unit.json b/data/schema/resources/aws_organizational_unit/reporters/cost_management/aws_organizational_unit.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/aws_organizational_unit/reporters/cost_management/aws_organizational_unit.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/aws_organizational_unit/reporters/cost_management/config.yaml b/data/schema/resources/aws_organizational_unit/reporters/cost_management/config.yaml new file mode 100644 index 000000000..16fa6090d --- /dev/null +++ b/data/schema/resources/aws_organizational_unit/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: aws_organizational_unit +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/azure_subscription_guid/common_representation.json b/data/schema/resources/azure_subscription_guid/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/azure_subscription_guid/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/azure_subscription_guid/config.yaml b/data/schema/resources/azure_subscription_guid/config.yaml new file mode 100644 index 000000000..4f9296556 --- /dev/null +++ b/data/schema/resources/azure_subscription_guid/config.yaml @@ -0,0 +1,3 @@ +resource_type: azure_subscription_guid +resource_reporters: + - cost_management diff --git a/data/schema/resources/azure_subscription_guid/reporters/cost_management/azure_subscription_guid.json b/data/schema/resources/azure_subscription_guid/reporters/cost_management/azure_subscription_guid.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/azure_subscription_guid/reporters/cost_management/azure_subscription_guid.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/azure_subscription_guid/reporters/cost_management/config.yaml b/data/schema/resources/azure_subscription_guid/reporters/cost_management/config.yaml new file mode 100644 index 000000000..6f41f3e4d --- /dev/null +++ b/data/schema/resources/azure_subscription_guid/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: azure_subscription_guid +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/cost_model/common_representation.json b/data/schema/resources/cost_model/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/cost_model/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/cost_model/config.yaml b/data/schema/resources/cost_model/config.yaml new file mode 100644 index 000000000..ed275c86f --- /dev/null +++ b/data/schema/resources/cost_model/config.yaml @@ -0,0 +1,3 @@ +resource_type: cost_model +resource_reporters: + - cost_management diff --git a/data/schema/resources/cost_model/reporters/cost_management/config.yaml b/data/schema/resources/cost_model/reporters/cost_management/config.yaml new file mode 100644 index 000000000..4ecdcd57e --- /dev/null +++ b/data/schema/resources/cost_model/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: cost_model +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/cost_model/reporters/cost_management/cost_model.json b/data/schema/resources/cost_model/reporters/cost_management/cost_model.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/cost_model/reporters/cost_management/cost_model.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/gcp_account/common_representation.json b/data/schema/resources/gcp_account/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/gcp_account/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/gcp_account/config.yaml b/data/schema/resources/gcp_account/config.yaml new file mode 100644 index 000000000..ca1827607 --- /dev/null +++ b/data/schema/resources/gcp_account/config.yaml @@ -0,0 +1,3 @@ +resource_type: gcp_account +resource_reporters: + - cost_management diff --git a/data/schema/resources/gcp_account/reporters/cost_management/config.yaml b/data/schema/resources/gcp_account/reporters/cost_management/config.yaml new file mode 100644 index 000000000..685a18b72 --- /dev/null +++ b/data/schema/resources/gcp_account/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: gcp_account +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/gcp_account/reporters/cost_management/gcp_account.json b/data/schema/resources/gcp_account/reporters/cost_management/gcp_account.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/gcp_account/reporters/cost_management/gcp_account.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/gcp_project/common_representation.json b/data/schema/resources/gcp_project/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/gcp_project/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/gcp_project/config.yaml b/data/schema/resources/gcp_project/config.yaml new file mode 100644 index 000000000..fae67a7ee --- /dev/null +++ b/data/schema/resources/gcp_project/config.yaml @@ -0,0 +1,3 @@ +resource_type: gcp_project +resource_reporters: + - cost_management diff --git a/data/schema/resources/gcp_project/reporters/cost_management/config.yaml b/data/schema/resources/gcp_project/reporters/cost_management/config.yaml new file mode 100644 index 000000000..845f76d70 --- /dev/null +++ b/data/schema/resources/gcp_project/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: gcp_project +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/gcp_project/reporters/cost_management/gcp_project.json b/data/schema/resources/gcp_project/reporters/cost_management/gcp_project.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/gcp_project/reporters/cost_management/gcp_project.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/integration/common_representation.json b/data/schema/resources/integration/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/integration/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/integration/config.yaml b/data/schema/resources/integration/config.yaml new file mode 100644 index 000000000..eacaf7ee3 --- /dev/null +++ b/data/schema/resources/integration/config.yaml @@ -0,0 +1,3 @@ +resource_type: integration +resource_reporters: + - cost_management diff --git a/data/schema/resources/integration/reporters/cost_management/config.yaml b/data/schema/resources/integration/reporters/cost_management/config.yaml new file mode 100644 index 000000000..a1b4e4216 --- /dev/null +++ b/data/schema/resources/integration/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: integration +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/integration/reporters/cost_management/integration.json b/data/schema/resources/integration/reporters/cost_management/integration.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/integration/reporters/cost_management/integration.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/openshift_cluster/common_representation.json b/data/schema/resources/openshift_cluster/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/openshift_cluster/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/openshift_cluster/config.yaml b/data/schema/resources/openshift_cluster/config.yaml new file mode 100644 index 000000000..6fb7e63ab --- /dev/null +++ b/data/schema/resources/openshift_cluster/config.yaml @@ -0,0 +1,3 @@ +resource_type: openshift_cluster +resource_reporters: + - cost_management diff --git a/data/schema/resources/openshift_cluster/reporters/cost_management/config.yaml b/data/schema/resources/openshift_cluster/reporters/cost_management/config.yaml new file mode 100644 index 000000000..06aaef2be --- /dev/null +++ b/data/schema/resources/openshift_cluster/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: openshift_cluster +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/openshift_cluster/reporters/cost_management/openshift_cluster.json b/data/schema/resources/openshift_cluster/reporters/cost_management/openshift_cluster.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/openshift_cluster/reporters/cost_management/openshift_cluster.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/openshift_node/common_representation.json b/data/schema/resources/openshift_node/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/openshift_node/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/openshift_node/config.yaml b/data/schema/resources/openshift_node/config.yaml new file mode 100644 index 000000000..0f183a92c --- /dev/null +++ b/data/schema/resources/openshift_node/config.yaml @@ -0,0 +1,3 @@ +resource_type: openshift_node +resource_reporters: + - cost_management diff --git a/data/schema/resources/openshift_node/reporters/cost_management/config.yaml b/data/schema/resources/openshift_node/reporters/cost_management/config.yaml new file mode 100644 index 000000000..429402945 --- /dev/null +++ b/data/schema/resources/openshift_node/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: openshift_node +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/openshift_node/reporters/cost_management/openshift_node.json b/data/schema/resources/openshift_node/reporters/cost_management/openshift_node.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/openshift_node/reporters/cost_management/openshift_node.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/openshift_project/common_representation.json b/data/schema/resources/openshift_project/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/openshift_project/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/openshift_project/config.yaml b/data/schema/resources/openshift_project/config.yaml new file mode 100644 index 000000000..0f270450e --- /dev/null +++ b/data/schema/resources/openshift_project/config.yaml @@ -0,0 +1,3 @@ +resource_type: openshift_project +resource_reporters: + - cost_management diff --git a/data/schema/resources/openshift_project/reporters/cost_management/config.yaml b/data/schema/resources/openshift_project/reporters/cost_management/config.yaml new file mode 100644 index 000000000..197b900a2 --- /dev/null +++ b/data/schema/resources/openshift_project/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: openshift_project +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/openshift_project/reporters/cost_management/openshift_project.json b/data/schema/resources/openshift_project/reporters/cost_management/openshift_project.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/openshift_project/reporters/cost_management/openshift_project.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} diff --git a/data/schema/resources/settings/common_representation.json b/data/schema/resources/settings/common_representation.json new file mode 100644 index 000000000..6c9e42d96 --- /dev/null +++ b/data/schema/resources/settings/common_representation.json @@ -0,0 +1,8 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "workspace_id": { "type": "string" } + }, + "required": ["workspace_id"] +} diff --git a/data/schema/resources/settings/config.yaml b/data/schema/resources/settings/config.yaml new file mode 100644 index 000000000..fd230006b --- /dev/null +++ b/data/schema/resources/settings/config.yaml @@ -0,0 +1,3 @@ +resource_type: settings +resource_reporters: + - cost_management diff --git a/data/schema/resources/settings/reporters/cost_management/config.yaml b/data/schema/resources/settings/reporters/cost_management/config.yaml new file mode 100644 index 000000000..00e9bfc84 --- /dev/null +++ b/data/schema/resources/settings/reporters/cost_management/config.yaml @@ -0,0 +1,3 @@ +resource_type: settings +reporter_name: cost_management +namespace: cost_management diff --git a/data/schema/resources/settings/reporters/cost_management/settings.json b/data/schema/resources/settings/reporters/cost_management/settings.json new file mode 100644 index 000000000..2525aa005 --- /dev/null +++ b/data/schema/resources/settings/reporters/cost_management/settings.json @@ -0,0 +1,6 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {}, + "required": [] +} From 42b8020951a3a0455bca648454349e800e26ea7e Mon Sep 17 00:00:00 2001 From: Jordi Gil Date: Fri, 6 Mar 2026 13:26:56 -0500 Subject: [PATCH 2/3] chore: regenerate schema_cache.json with cost_management resource types Run `go run main.go preload-schema` to include all 11 new cost_management resource types in the JSON schema cache. Required by the verify-schema-tarball CI workflow. Made-with: Cursor --- schema_cache.json | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/schema_cache.json b/schema_cache.json index fce429e3d..06c18d73c 100644 --- a/schema_cache.json +++ b/schema_cache.json @@ -1,10 +1,38 @@ { + "aws_account:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "aws_organizational_unit:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "azure_subscription_guid:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "common:aws_account": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:aws_organizational_unit": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:azure_subscription_guid": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:cost_model": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:gcp_account": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:gcp_project": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", "common:host": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\n \"workspace_id\"\n ]\n}\n\n", + "common:integration": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", "common:k8s_cluster": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\n \"workspace_id\"\n ]\n}\n\n", "common:k8s_policy": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\n \"workspace_id\"\n ]\n}\n\n", "common:notifications_integration": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\n \"workspace_id\"\n ]\n}\n\n", + "common:openshift_cluster": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:openshift_node": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:openshift_project": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "common:settings": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"workspace_id\": { \"type\": \"string\" }\n },\n \"required\": [\"workspace_id\"]\n}\n", + "config:aws_account": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogYXdzX2FjY291bnQK", + "config:aws_account:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IGF3c19hY2NvdW50Cg==", + "config:aws_organizational_unit": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogYXdzX29yZ2FuaXphdGlvbmFsX3VuaXQK", + "config:aws_organizational_unit:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IGF3c19vcmdhbml6YXRpb25hbF91bml0Cg==", + "config:azure_subscription_guid": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogYXp1cmVfc3Vic2NyaXB0aW9uX2d1aWQK", + "config:azure_subscription_guid:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IGF6dXJlX3N1YnNjcmlwdGlvbl9ndWlkCg==", + "config:cost_model": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogY29zdF9tb2RlbAo=", + "config:cost_model:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IGNvc3RfbW9kZWwK", + "config:gcp_account": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogZ2NwX2FjY291bnQK", + "config:gcp_account:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IGdjcF9hY2NvdW50Cg==", + "config:gcp_project": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogZ2NwX3Byb2plY3QK", + "config:gcp_project:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IGdjcF9wcm9qZWN0Cg==", "config:host": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBoYmkKcmVzb3VyY2VfdHlwZTogaG9zdAo=", "config:host:hbi": "bmFtZXNwYWNlOiBoYmkKcmVwb3J0ZXJfbmFtZTogaGJpCnJlc291cmNlX3R5cGU6IGhvc3QK", + "config:integration": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogaW50ZWdyYXRpb24K", + "config:integration:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IGludGVncmF0aW9uCg==", "config:k8s_cluster": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBBQ00KICAgIC0gQUNTCiAgICAtIE9DTQpyZXNvdXJjZV90eXBlOiBrOHNfY2x1c3Rlcgo=", "config:k8s_cluster:acm": "bmFtZXNwYWNlOiBhY20KcmVwb3J0ZXJfbmFtZTogYWNtCnJlc291cmNlX3R5cGU6IGs4c19jbHVzdGVyCg==", "config:k8s_cluster:acs": "bmFtZXNwYWNlOiBhY3MKcmVwb3J0ZXJfbmFtZTogYWNzCnJlc291cmNlX3R5cGU6IGs4c19jbHVzdGVyCg==", @@ -12,10 +40,26 @@ "config:k8s_policy": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBBQ00KcmVzb3VyY2VfdHlwZTogazhzX3BvbGljeQo=", "config:k8s_policy:acm": "bmFtZXNwYWNlOiBhY20KcmVwb3J0ZXJfbmFtZTogYWNtCnJlc291cmNlX3R5cGU6IGs4c19wb2xpY3kK", "config:notifications_integration": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBOT1RJRklDQVRJT05TCnJlc291cmNlX3R5cGU6IG5vdGlmaWNhdGlvbnMvaW50ZWdyYXRpb24K", + "config:openshift_cluster": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogb3BlbnNoaWZ0X2NsdXN0ZXIK", + "config:openshift_cluster:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IG9wZW5zaGlmdF9jbHVzdGVyCg==", + "config:openshift_node": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogb3BlbnNoaWZ0X25vZGUK", + "config:openshift_node:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IG9wZW5zaGlmdF9ub2RlCg==", + "config:openshift_project": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogb3BlbnNoaWZ0X3Byb2plY3QK", + "config:openshift_project:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IG9wZW5zaGlmdF9wcm9qZWN0Cg==", + "config:settings": "cmVzb3VyY2VfcmVwb3J0ZXJzOgogICAgLSBjb3N0X21hbmFnZW1lbnQKcmVzb3VyY2VfdHlwZTogc2V0dGluZ3MK", + "config:settings:cost_management": "bmFtZXNwYWNlOiBjb3N0X21hbmFnZW1lbnQKcmVwb3J0ZXJfbmFtZTogY29zdF9tYW5hZ2VtZW50CnJlc291cmNlX3R5cGU6IHNldHRpbmdzCg==", + "cost_model:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "gcp_account:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "gcp_project:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", "host:hbi": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"satellite_id\": {\n \"oneOf\": [\n { \"type\": \"string\", \"format\": \"uuid\" },\n { \"type\": \"string\", \"pattern\": \"^\\\\d{10}$\" },\n { \"type\": \"null\" }\n ]\n },\n \"subscription_manager_id\": { \n \"oneOf\": [\n { \"type\": \"string\", \"format\": \"uuid\" },\n { \"type\": \"null\" }\n ]\n },\n \"insights_id\": { \n \"oneOf\": [\n { \"type\": \"string\", \"format\": \"uuid\" },\n { \"type\": \"null\" }\n ]\n },\n \"ansible_host\": {\n \"oneOf\": [\n { \"type\": \"string\", \"maxLength\": 255 },\n { \"type\": \"null\" }\n ]\n }\n },\n \"required\": []\n}\n", + "integration:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", "k8s_cluster:acm": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"external_cluster_id\": { \"type\": \"string\" },\n \"cluster_status\": {\n \"type\": \"string\",\n \"enum\": [\n \"CLUSTER_STATUS_UNSPECIFIED\",\n \"CLUSTER_STATUS_OTHER\",\n \"READY\",\n \"FAILED\",\n \"OFFLINE\"\n ]\n },\n \"cluster_reason\": { \"type\": \"string\" },\n \"kube_version\": { \"type\": \"string\" },\n \"kube_vendor\": {\n \"type\": \"string\",\n \"enum\": [\n \"KUBE_VENDOR_UNSPECIFIED\",\n \"KUBE_VENDOR_OTHER\",\n \"AKS\",\n \"EKS\",\n \"IKS\",\n \"OPENSHIFT\",\n \"GKE\"\n ]\n },\n \"vendor_version\": { \"type\": \"string\" },\n \"cloud_platform\": {\n \"type\": \"string\",\n \"enum\": [\n \"CLOUD_PLATFORM_UNSPECIFIED\",\n \"CLOUD_PLATFORM_OTHER\",\n \"NONE_UPI\",\n \"BAREMETAL_IPI\",\n \"BAREMETAL_UPI\",\n \"AWS_IPI\",\n \"AWS_UPI\",\n \"AZURE_IPI\",\n \"AZURE_UPI\",\n \"IBMCLOUD_IPI\",\n \"IBMCLOUD_UPI\",\n \"KUBEVIRT_IPI\",\n \"OPENSTACK_IPI\",\n \"OPENSTACK_UPI\",\n \"GCP_IPI\",\n \"GCP_UPI\",\n \"NUTANIX_IPI\",\n \"NUTANIX_UPI\",\n \"VSPHERE_IPI\",\n \"VSPHERE_UPI\",\n \"OVIRT_IPI\"\n ]\n },\n \"nodes\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": { \"type\": \"string\" },\n \"cpu\": { \"type\": \"string\" },\n \"memory\": { \"type\": \"string\" }\n },\n \"required\": [\n \"name\",\n \"cpu\",\n \"memory\"\n ]\n }\n\n }\n },\n \"required\": [\n \"external_cluster_id\",\n \"cluster_status\",\n \"cluster_reason\",\n \"kube_version\",\n \"kube_vendor\",\n \"vendor_version\",\n \"cloud_platform\"\n ]\n}\n\n", "k8s_cluster:acs": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"external_cluster_id\": { \"type\": \"string\" },\n \"cluster_status\": {\n \"type\": \"string\",\n \"enum\": [\n \"CLUSTER_STATUS_UNSPECIFIED\",\n \"CLUSTER_STATUS_OTHER\",\n \"READY\",\n \"FAILED\",\n \"OFFLINE\"\n ]\n },\n \"cluster_reason\": { \"type\": \"string\" },\n \"kube_version\": { \"type\": \"string\" },\n \"kube_vendor\": {\n \"type\": \"string\",\n \"enum\": [\n \"KUBE_VENDOR_UNSPECIFIED\",\n \"KUBE_VENDOR_OTHER\",\n \"AKS\",\n \"EKS\",\n \"IKS\",\n \"OPENSHIFT\",\n \"GKE\"\n ]\n },\n \"vendor_version\": { \"type\": \"string\" },\n \"cloud_platform\": {\n \"type\": \"string\",\n \"enum\": [\n \"CLOUD_PLATFORM_UNSPECIFIED\",\n \"CLOUD_PLATFORM_OTHER\",\n \"NONE_UPI\",\n \"BAREMETAL_IPI\",\n \"BAREMETAL_UPI\",\n \"AWS_IPI\",\n \"AWS_UPI\",\n \"AZURE_IPI\",\n \"AZURE_UPI\",\n \"IBMCLOUD_IPI\",\n \"IBMCLOUD_UPI\",\n \"KUBEVIRT_IPI\",\n \"OPENSTACK_IPI\",\n \"OPENSTACK_UPI\",\n \"GCP_IPI\",\n \"GCP_UPI\",\n \"NUTANIX_IPI\",\n \"NUTANIX_UPI\",\n \"VSPHERE_IPI\",\n \"VSPHERE_UPI\",\n \"OVIRT_IPI\"\n ]\n },\n \"nodes\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": { \"type\": \"string\" },\n \"cpu\": { \"type\": \"string\" },\n \"memory\": { \"type\": \"string\" }\n },\n \"required\": [\n \"name\",\n \"cpu\",\n \"memory\"\n ]\n }\n\n }\n },\n \"required\": [\n \"external_cluster_id\",\n \"cluster_status\",\n \"cluster_reason\",\n \"kube_version\",\n \"kube_vendor\",\n \"vendor_version\",\n \"cloud_platform\"\n ]\n}\n\n", "k8s_cluster:ocm": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"external_cluster_id\": { \"type\": \"string\" },\n \"cluster_status\": {\n \"type\": \"string\",\n \"enum\": [\n \"CLUSTER_STATUS_UNSPECIFIED\",\n \"CLUSTER_STATUS_OTHER\",\n \"READY\",\n \"FAILED\",\n \"OFFLINE\"\n ]\n },\n \"cluster_reason\": { \"type\": \"string\" },\n \"kube_version\": { \"type\": \"string\" },\n \"kube_vendor\": {\n \"type\": \"string\",\n \"enum\": [\n \"KUBE_VENDOR_UNSPECIFIED\",\n \"KUBE_VENDOR_OTHER\",\n \"AKS\",\n \"EKS\",\n \"IKS\",\n \"OPENSHIFT\",\n \"GKE\"\n ]\n },\n \"vendor_version\": { \"type\": \"string\" },\n \"cloud_platform\": {\n \"type\": \"string\",\n \"enum\": [\n \"CLOUD_PLATFORM_UNSPECIFIED\",\n \"CLOUD_PLATFORM_OTHER\",\n \"NONE_UPI\",\n \"BAREMETAL_IPI\",\n \"BAREMETAL_UPI\",\n \"AWS_IPI\",\n \"AWS_UPI\",\n \"AZURE_IPI\",\n \"AZURE_UPI\",\n \"IBMCLOUD_IPI\",\n \"IBMCLOUD_UPI\",\n \"KUBEVIRT_IPI\",\n \"OPENSTACK_IPI\",\n \"OPENSTACK_UPI\",\n \"GCP_IPI\",\n \"GCP_UPI\",\n \"NUTANIX_IPI\",\n \"NUTANIX_UPI\",\n \"VSPHERE_IPI\",\n \"VSPHERE_UPI\",\n \"OVIRT_IPI\"\n ]\n },\n \"nodes\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"name\": { \"type\": \"string\" },\n \"cpu\": { \"type\": \"string\" },\n \"memory\": { \"type\": \"string\" }\n },\n \"required\": [\n \"name\",\n \"cpu\",\n \"memory\"\n ]\n }\n\n }\n },\n \"required\": [\n \"external_cluster_id\",\n \"cluster_status\",\n \"cluster_reason\",\n \"kube_version\",\n \"kube_vendor\",\n \"vendor_version\",\n \"cloud_platform\"\n ]\n}\n\n", "k8s_policy:acm": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"disabled\": {\n \"type\": \"boolean\",\n \"description\": \"Defines if the policy is currently enabled or disabled across all targets.\"\n },\n \"severity\": {\n \"type\": \"string\",\n \"enum\": [\n \"SEVERITY_UNSPECIFIED\",\n \"SEVERITY_OTHER\",\n \"LOW\",\n \"MEDIUM\",\n \"HIGH\",\n \"CRITICAL\"\n ],\n \"description\": \"The severity level of the policy.\"\n }\n },\n \"required\": [\n \"disabled\",\n \"severity\"\n ]\n}\n", - "notifications_integration:notifications": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"reporter_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"NOTIFICATIONS\"\n ],\n \"description\": \"The type of reporter, fixed to 'NOTIFICATIONS' for this schema.\"\n },\n \"reporter_instance_id\": {\n \"type\": \"string\",\n \"description\": \"A unique identifier for the reporter instance, such as a service account.\"\n },\n \"local_resource_id\": {\n \"type\": \"string\",\n \"description\": \"A string representing the local identifier of the resource.\"\n }\n },\n \"required\": [\n \"reporter_type\",\n \"reporter_instance_id\",\n \"local_resource_id\"\n ]\n}\n" + "notifications_integration:notifications": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {\n \"reporter_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"NOTIFICATIONS\"\n ],\n \"description\": \"The type of reporter, fixed to 'NOTIFICATIONS' for this schema.\"\n },\n \"reporter_instance_id\": {\n \"type\": \"string\",\n \"description\": \"A unique identifier for the reporter instance, such as a service account.\"\n },\n \"local_resource_id\": {\n \"type\": \"string\",\n \"description\": \"A string representing the local identifier of the resource.\"\n }\n },\n \"required\": [\n \"reporter_type\",\n \"reporter_instance_id\",\n \"local_resource_id\"\n ]\n}\n", + "openshift_cluster:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "openshift_node:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "openshift_project:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n", + "settings:cost_management": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"type\": \"object\",\n \"properties\": {},\n \"required\": []\n}\n" } \ No newline at end of file From bc42814d7ae279f07b9585b5863b4e91e9c821c7 Mon Sep 17 00:00:00 2001 From: Jordi Gil Date: Tue, 10 Mar 2026 09:48:19 -0400 Subject: [PATCH 3/3] chore: regenerate resources.tar.gz with cost_management resource types Run `make build-schemas` to include the 11 new cost_management resource types in the schema tarball and update the ephemeral deployment config. Made-with: Cursor --- deploy/kessel-inventory-ephem.yaml | 2 +- resources.tar.gz | Bin 1998 -> 3476 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy/kessel-inventory-ephem.yaml b/deploy/kessel-inventory-ephem.yaml index 24f5df623..dd4924a14 100644 --- a/deploy/kessel-inventory-ephem.yaml +++ b/deploy/kessel-inventory-ephem.yaml @@ -42,7 +42,7 @@ objects: metadata: name: resources-tarball binaryData: - resources.tar.gz: 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 + resources.tar.gz: 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 - apiVersion: v1 kind: ConfigMap metadata: diff --git a/resources.tar.gz b/resources.tar.gz index b8414c17dad7129ae15d848c2005ab39d3553d87..0443ef527f2d4bc9f3346af3c1a6225e81d26771 100644 GIT binary patch literal 3476 zcmYk9dpJ~W_s0uQB2p;HVW^NNkwcWz&`BzX^3+sfD3PRjQxd8zXCa5FB-K<@YK&7o z5ixXdW|-GUhnAr{qfs>?CVYUTb~6-|NPtE?)5GlAXFA8j;ta z+9$|Yb>hG)vf96}FRQ=?33hR@#BOqM zwPhc(X_~}c5GQn<79CpF+i{=q-Ko$7+1aVwM2b%qH%?!euw6@wnlWL7$yk>9JmaP^ zZE4~(&pI8q)|=RFWoI;T&7@2Au~r+C!MahH+u&-8c3>FZUbB44h07Q@6#{+AbAqsv zvazQ+gmLL-=*%wbzSP%<4s|JQi7uvSX5E}nBShPzPuG5~o-IRX3$kYVBk7ppIWqX& zpk!T9d+m6CTwWIw-PmO_z@m#U(}bac(T94O2uqDxE99M~SA;N=$EoK-82{?Fj~5Kk z)^{NW=0Hw->XX&cbt@r*&w)-a#}r8yjK&PYxFHx1;Jev*AT+Vu#a^kd~lB#Clz5 zC`G+Kl}bpj#{EAs)t_)6_kr^x^!!N;4oOz>OplJ@l@hZ~xJOo>;w4eeH`+&@qB9o% z^XSXZ?th0F^oshXbA%$p$8}$(uz{y6eq$9?*#tesV^(1FgPLaJj~XpxG2R>Qgpdpw zjXosIAr?~>GdM4`k3`I1H@0T=+EQIEbN-F5xlp0Ww|)Fs4y9bp3bP2_o9SJ z>fbFSa~%XpG2%Thx%yTjjL_Rzqz?bpGJp}&&W`NZ{fu_%*n?RsbO+WA^0+6nhimB6~B zay4rd#z+M8&Au&O;oE?rve4Fhh`G`)?t}ebZbW-oLcjTt@%L#8&%XApE z)hc3&PfWAfVAS#Scg_B?`tI#mn#q`Hm!SU*=kLViT#^W?9J$B4NgIclDZCv$|%4?F6N2t7VFuNq$^5H4e<0rDgVgmV8 z+RZ{n5F7U@w5M9rvjB!NBs)YN&SFx0o491u&qg{06!hdl>%@mSB*E$xpIq+A(CzP1G3Wk;};E-hMA$qmaV$hW{mkH&sd-_Z9I|(XKr8Ua#g{=K>ZBae6u2NdOh`HgLaDI1{q{sXn19^vrJg{IRXE#Z)({>3qAIouy_D2+s3(=`oWq2H3@CYT1#usLP+74`0GL3q7R6QRxu#$ z_95!zaKz>%;k7nwUIqsG-l%svSZGR_S_Teh*c>E}g6l%YyOsvc z=)3^(JJd+u6#Ab7`Tulg*Jsd?MiVozd)aSllb=)D+_L0J==cmLbv`2o(qW(%L#wnE z@#XAi#X!zSWfk5`VvjpUdmNEuaMnDZU(ER+Q!*iuHm8#^YnUY_oc~F z;2oMjuW8a;J}Gd~6Y}D3G7wYw`7SvfgNXHLs@Oxde1tm1H)CT@t>1u5@Cou7npSfajtz{XrKy-8IWt#m4SVZbrOmh@~oz+L8%--?=v; zUL8N(h7@BB3Jm2WjFwr(h`SL>Z1fvG>G2VdIDJbo-9aEXMb|nmq}tIC;%0kDjaL%n z4F_L2;U_DI2$1@qwxB0aS-pkvNsWuQDuQ(*6eyc9!z}O2B=A)O>spOmfV9-!QqI#4 zHk6z8LE?b3I7dzupn=yu+5G(({?(3-nv4A@Cv9hm8uuyTQzD&iY<@A*hpKd z+g%*2dFwDuZ+{g?Wea$mDs`az1g;=>;8Le663Qy6z?-{qzMpS=0bY(6>#Q;4CdTWI_LyaUq^* z?UaRXxb6vVopzT{JLOm)tx{@|VGz1F)alR|smc_$UXnIaz%DUb@>c3w-#b|%57igV zh~+#%xC91bzS%yFONvpQ#Fp31-8n5J{qp|%?|Fj6g!`IO>K6(aQo5%quU!er7;|<+ z0_?7ZkG11JuaqCCLxU9ARM#dV;&X2Bu>hL|?RRbn!Rq$~v4((=PAmcLhiglws3WuR zk1~o;hy@KTrKu*rrZicSN}{A2b&cr7+{16%h+iEk#N)K3$Omm&A)v0iNklFmEfi`> zg}PFZ!N<;nH=Cx!c<3j=-6{S!TGHXQtrS&rIu0c#np)MYcUPw6YCbuj|9)<%njQ{= z9PxSpgU(@bH!W6RG9&#h47)|?2jAm&8I@|hh7R!UE0<6 zMFk(PVU5iFT483n2S>uKd1hrQej9yPke+#^Z&j+0QH_HfeIUkHiX)z(CD*0cN&P)Z zOlw%qMQ{`FLy%!rU=M$B5tZahl<6+PE3+_v$P`i)*;v`+%y13=iiDs0IDGt{>OmU=GZkE-^}YlnrsRC`RMU{Rd12u<@f^a$S2R{A^>(%k~30yI;BFdnJ>&vNPBG;|&T@(ee zDpuWl@PJE;o-E)Tj^a(^UAjF^BT~-Sa!X!@gmCP79IFF7#u~WR)mt$o1KeHss4=Fz z#*qlaK7(`KRT#5;vuIY1gx^{}HXs;HLdQ4t@!vP5*}di;9i4uE=|{)eT`FppmEkqx zPlp5k!@bH86xrG99J}12YgFc&q7~-2g_&OLIF}#FtkS6QsPUgW^OA%kKx5+Z^@YcB>eXKGymZKTV2H z_c}1a<@cM@E2EG%;x=Z~kGzt*2?KFl4OgAO8__48beKFH%gykRZCF|q{0c98RbiiP zA=sD^f7@&NurE&w+tzX+@2FQ#blZ(5rpfn+Y2;mICg&7_F|W@GtHg{7Tmlx|ohRrX z<8uTSp@I8yWxJo<;JC^xA6b8dNAez)jd>x0s|Y2ww%wAz yh-{2`O6>)yf09K|2zzA22p?u(2(ZoCD0V*h-ZLdRc zRaykQKyNdh{O@;H#Q*|6it8jfzc0w)0Lz{S=doC>oE#hig<7r7w-m|k{I{s6sw^my zsH&8%s#5g?RS!S3las*n4T8`Kaa});Z`1K-igIP*dj4URU@Q4oDUT?tl0xM#3N=*$ z`SZY1{-!&fy3T;$8NnWQe8aa~r~K7(odWK`1YA>;O!-UdLjE#U5YkEf@{p0}5RmHj&-Yg~RXrgri7*ku1gE$RPdK@!3Kd4RfmHz3rum_?o= zrVOVm8hstO#K*)tr)KvKP3|qQyBCI~{jVf_h)8hf_+OM%Nrm{22iD|Ijl5_b*fRdF zNi~srev$cqr7D2@c_3B(j8s(cf3orYPp!Q=m%q%^M5KBmR%Ka%_dgGCiT^#r$F^MZ;NCNdHDkH(U}`wV7?UuAImjdA4aRajYdrD2qYc2I1Gu;GfH{Xf zgg7;RHnB7ICzLEztGf&!H8*5g;IWP81t8V`7n}`l&i`tO_^(=%!2feWdj7XihJj;D z8I7iW?AN>oa}HVHi$b~b?N4tob8X9fI8+y4%lJQ1|CMM|2=PA;#N>aVF2E-Lzh3{R zuYxN0e;$DP|LaD={twax*ggJJL$a1iUtP%1j7%dbMSspS2La^i84+uN+t0R}7@J`e}5!dsOVcUqxcZ_|nT#7gM z@DEHZ{~>KmVb?08V<(u#I$Wi$cBggp-lsvo)xFgk`lYU2l+IF)w|iGwCwipW{utf8 z(Ju7rEdcA?=_;^g_JB1|xTgCse`fpWKq5jVWdGar+9k8kXw^sj`Bt?b# zKNmp#|8*nZ{);I9Y_fk*RFm<)EW`SLE=c76F=ePklp(Vn&}#Q+^xLTS^meNYX8GKZ zXa7aD19q?fs*(itUoO~A{&Bak>pgasza$ANeE-1(`^Z1@jEvl1Q~gh>DslPCg2cZ6 zfcO95!6p7*wGx&m>``!wg&A9w!q~N00W7@v85&tX@euhgdKi3d$5Ym_8i)R0j*Mfw!;QCzj}1U%Zg%nzb$HtapC99Y336__3>a> z^nXm7xvj4Z+`d?Lq@4xvV_x+z(0PMvV0DJJ(fBwj`|HzTwssU`Ue_5tEf4u)A zh%)5=T)-v&$3NNs@fdcfP1$9DWeGUsqq6Y>Z@-Q~quKBFw9cU0tM~fdtcAJ>uC?X5 z9j$)xDN4Ak>&^Hj+LxD2y``<160!1p_#^}y-n`hJ^VHvhdp!6-tijm zNJ*~0`yFkKZ%#~b>hEtB1J^U?34SK?JH69O^3NsMt2eH*4dn!WuydGtKX}) z^uLmvAvwW)*S)2)zV_rHIlKji-a0000000000 g0000000000000000000006ZuB4?5f&5dfe701mb%k^lez