From 00ebeb100cb9552959c9b05bc977b05d6d9cc6d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 14:08:56 +0100 Subject: [PATCH 01/27] Add display name and description to all base resources --- resotolib/resotolib/baseresources.py | 114 +++++++++++++++++++++++++++ 1 file changed, 114 insertions(+) diff --git a/resotolib/resotolib/baseresources.py b/resotolib/resotolib/baseresources.py index 8d1df13ad4..a72accb402 100644 --- a/resotolib/resotolib/baseresources.py +++ b/resotolib/resotolib/baseresources.py @@ -138,6 +138,8 @@ class BaseResource(ABC): """ kind: ClassVar[str] = "resource" + kind_display: ClassVar[str] = "Resource" + kind_description: ClassVar[str] = "A generic resource." phantom: ClassVar[bool] = False reference_kinds: ClassVar[ModelReference] = {} metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "misc"} @@ -613,6 +615,8 @@ def __setstate__(self, state: Dict[str, Any]) -> None: @define(eq=False, slots=False) class PhantomBaseResource(BaseResource): kind: ClassVar[str] = "phantom_resource" + kind_display: ClassVar[str] = "Phantom Resource" + kind_description: ClassVar[str] = "A generic phantom resource." phantom: ClassVar[bool] = True def update_tag(self, key: str, value: str) -> bool: @@ -637,6 +641,8 @@ class BaseQuota(PhantomBaseResource): metadata: ClassVar[Dict[str, Any]] = {"icon": "quota", "group": "control"} kind: ClassVar[str] = "quota" + kind_display: ClassVar[str] = "Quota" + kind_description: ClassVar[str] = "A service quota." quota: Optional[float] = None usage: Optional[float] = None quota_type: Optional[str] = None @@ -659,12 +665,16 @@ def usage_percentage(self) -> float: @define(eq=False, slots=False) class BaseType(BaseQuota): kind: ClassVar[str] = "type" + kind_display: ClassVar[str] = "Type" + kind_description: ClassVar[str] = "A generic type." metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "control"} @define(eq=False, slots=False) class BaseInstanceQuota(BaseQuota): kind: ClassVar[str] = "instance_quota" + kind_display: ClassVar[str] = "Instance Quota" + kind_description: ClassVar[str] = "An instance quota." instance_type: Optional[str] = None metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "compute"} @@ -677,6 +687,8 @@ def __attrs_post_init__(self) -> None: @define(eq=False, slots=False) class BaseInstanceType(BaseType): kind: ClassVar[str] = "instance_type" + kind_display: ClassVar[str] = "Instance Type" + kind_description: ClassVar[str] = "An instance type." metadata: ClassVar[Dict[str, Any]] = {"icon": "instance_type", "group": "compute"} instance_type: Optional[str] = None instance_cores: float = 0.0 @@ -697,6 +709,8 @@ def __attrs_post_init__(self) -> None: @define(eq=False, slots=False) class BaseCloud(BaseResource): kind: ClassVar[str] = "base_cloud" + kind_display: ClassVar[str] = "Cloud" + kind_description: ClassVar[str] = "A cloud." metadata: ClassVar[Dict[str, Any]] = {"icon": "cloud", "group": "control"} def cloud(self, graph: Optional[Any] = None) -> BaseCloud: @@ -706,6 +720,8 @@ def cloud(self, graph: Optional[Any] = None) -> BaseCloud: @define(eq=False, slots=False) class BaseAccount(BaseResource): kind: ClassVar[str] = "account" + kind_display: ClassVar[str] = "Account" + kind_description: ClassVar[str] = "An account." metadata: ClassVar[Dict[str, Any]] = {"icon": "account", "group": "control"} def account(self, graph: Optional[Any] = None) -> BaseAccount: @@ -715,6 +731,8 @@ def account(self, graph: Optional[Any] = None) -> BaseAccount: @define(eq=False, slots=False) class BaseRegion(BaseResource): kind: ClassVar[str] = "region" + kind_display: ClassVar[str] = "Region" + kind_description: ClassVar[str] = "A region." metadata: ClassVar[Dict[str, Any]] = {"icon": "region", "group": "control"} def region(self, graph: Optional[Any] = None) -> BaseRegion: @@ -724,6 +742,8 @@ def region(self, graph: Optional[Any] = None) -> BaseRegion: @define(eq=False, slots=False) class BaseZone(BaseResource): kind: ClassVar[str] = "zone" + kind_display: ClassVar[str] = "Zone" + kind_description: ClassVar[str] = "A zone." metadata: ClassVar[Dict[str, Any]] = {"icon": "zone", "group": "control"} def zone(self, graph: Optional[Any] = None) -> BaseZone: @@ -741,6 +761,8 @@ class InstanceStatus(Enum): @define(eq=False, slots=False) class BaseInstance(BaseResource): kind: ClassVar[str] = "instance" + kind_display: ClassVar[str] = "Instance" + kind_description: ClassVar[str] = "An instance." metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "compute"} instance_cores: float = 0.0 instance_memory: float = 0.0 @@ -751,6 +773,8 @@ class BaseInstance(BaseResource): @define(eq=False, slots=False) class BaseVolumeType(BaseType): kind: ClassVar[str] = "volume_type" + kind_display: ClassVar[str] = "Volume Type" + kind_description: ClassVar[str] = "A volume type." metadata: ClassVar[Dict[str, Any]] = {"icon": "volume_type", "group": "storage"} volume_type: str = "" ondemand_cost: Optional[float] = None @@ -775,6 +799,8 @@ class VolumeStatus(Enum): @define(eq=False, slots=False) class BaseNetworkShare(BaseResource, ABC): kind: ClassVar[str] = "network_share" + kind_display: ClassVar[str] = "Network Share" + kind_description: ClassVar[str] = "A network share." metadata: ClassVar[Dict[str, Any]] = {"icon": "network_share", "group": "storage"} share_size: int = 0 share_type: str = "" @@ -787,6 +813,8 @@ class BaseNetworkShare(BaseResource, ABC): @define(eq=False, slots=False) class BaseVolume(BaseResource): kind: ClassVar[str] = "volume" + kind_display: ClassVar[str] = "Volume" + kind_description: ClassVar[str] = "A volume." metadata: ClassVar[Dict[str, Any]] = {"icon": "volume", "group": "storage"} volume_size: int = 0 volume_type: str = "" @@ -800,6 +828,8 @@ class BaseVolume(BaseResource): @define(eq=False, slots=False) class BaseSnapshot(BaseResource): kind: ClassVar[str] = "snapshot" + kind_display: ClassVar[str] = "Snapshot" + kind_description: ClassVar[str] = "A snapshot." metadata: ClassVar[Dict[str, Any]] = {"icon": "snapshot", "group": "storage"} snapshot_status: str = "" description: Optional[str] = None @@ -813,6 +843,8 @@ class BaseSnapshot(BaseResource): @define(eq=False, slots=False) class Cloud(BaseCloud): kind: ClassVar[str] = "cloud" + kind_display: ClassVar[str] = "Cloud" + kind_description: ClassVar[str] = "A cloud." metadata: ClassVar[Dict[str, Any]] = {"icon": "cloud", "group": "control"} def delete(self, graph: Any) -> bool: @@ -822,6 +854,8 @@ def delete(self, graph: Any) -> bool: @define(eq=False, slots=False) class GraphRoot(PhantomBaseResource): kind: ClassVar[str] = "graph_root" + kind_display: ClassVar[str] = "Graph Root" + kind_description: ClassVar[str] = "The root of the graph." metadata: ClassVar[Dict[str, Any]] = {"icon": "graph_root", "group": "control"} def delete(self, graph: Any) -> bool: @@ -831,18 +865,24 @@ def delete(self, graph: Any) -> bool: @define(eq=False, slots=False) class BaseBucket(BaseResource): kind: ClassVar[str] = "bucket" + kind_display: ClassVar[str] = "Storage Bucket" + kind_description: ClassVar[str] = "A storage bucket." metadata: ClassVar[Dict[str, Any]] = {"icon": "bucket", "group": "storage"} @define(eq=False, slots=False) class BaseServerlessFunction(BaseResource): kind: ClassVar[str] = "serverless_function" + kind_display: ClassVar[str] = "Serverless Function" + kind_description: ClassVar[str] = "A serverless function." metadata: ClassVar[Dict[str, Any]] = {"icon": "function", "group": "compute"} @define(eq=False, slots=False) class BaseKeyPair(BaseResource): kind: ClassVar[str] = "keypair" + kind_display: ClassVar[str] = "Key Pair" + kind_description: ClassVar[str] = "A key pair." metadata: ClassVar[Dict[str, Any]] = {"icon": "keypair", "group": "access_control"} fingerprint: str = "" @@ -850,24 +890,32 @@ class BaseKeyPair(BaseResource): @define(eq=False, slots=False) class BaseBucketQuota(BaseQuota): kind: ClassVar[str] = "bucket_quota" + kind_display: ClassVar[str] = "Bucket Quota" + kind_description: ClassVar[str] = "A bucket quota." metadata: ClassVar[Dict[str, Any]] = {"icon": "quota", "group": "storage"} @define(eq=False, slots=False) class BaseNetwork(BaseResource): kind: ClassVar[str] = "network" + kind_display: ClassVar[str] = "Network" + kind_description: ClassVar[str] = "A network." metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} @define(eq=False, slots=False) class BaseNetworkQuota(BaseQuota): kind: ClassVar[str] = "network_quota" + kind_display: ClassVar[str] = "Network Quota" + kind_description: ClassVar[str] = "A network quota." metadata: ClassVar[Dict[str, Any]] = {"icon": "quota", "group": "networking"} @define(eq=False, slots=False) class BaseDatabase(BaseResource): kind: ClassVar[str] = "database" + kind_display: ClassVar[str] = "Database" + kind_description: ClassVar[str] = "A database." metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} db_type: str = "" db_status: str = "" @@ -883,6 +931,8 @@ class BaseDatabase(BaseResource): @define(eq=False, slots=False) class BaseLoadBalancer(BaseResource): kind: ClassVar[str] = "load_balancer" + kind_display: ClassVar[str] = "Load Balancer" + kind_description: ClassVar[str] = "A load balancer." metadata: ClassVar[Dict[str, Any]] = {"icon": "load_balancer", "group": "networking"} lb_type: str = "" public_ip_address: Optional[str] = None @@ -892,66 +942,88 @@ class BaseLoadBalancer(BaseResource): @define(eq=False, slots=False) class BaseLoadBalancerQuota(BaseQuota): kind: ClassVar[str] = "load_balancer_quota" + kind_display: ClassVar[str] = "Load Balancer Quota" + kind_description: ClassVar[str] = "A load balancer quota." metadata: ClassVar[Dict[str, Any]] = {"icon": "quota", "group": "networking"} @define(eq=False, slots=False) class BaseSubnet(BaseResource): kind: ClassVar[str] = "subnet" + kind_display: ClassVar[str] = "Subnet" + kind_description: ClassVar[str] = "A subnet." metadata: ClassVar[Dict[str, Any]] = {"icon": "subnet", "group": "networking"} @define(eq=False, slots=False) class BaseGateway(BaseResource): kind: ClassVar[str] = "gateway" + kind_display: ClassVar[str] = "Gateway" + kind_description: ClassVar[str] = "A gateway." metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} @define(eq=False, slots=False) class BaseTunnel(BaseResource): kind: ClassVar[str] = "tunnel" + kind_display: ClassVar[str] = "Networking Tunnel" + kind_description: ClassVar[str] = "A networking tunnel." metadata: ClassVar[Dict[str, Any]] = {"icon": "tunnel", "group": "networking"} @define(eq=False, slots=False) class BaseGatewayQuota(BaseQuota): kind: ClassVar[str] = "gateway_quota" + kind_display: ClassVar[str] = "Gateway Quota" + kind_description: ClassVar[str] = "A gateway quota." metadata: ClassVar[Dict[str, Any]] = {"icon": "quota", "group": "networking"} @define(eq=False, slots=False) class BaseSecurityGroup(BaseResource): kind: ClassVar[str] = "security_group" + kind_display: ClassVar[str] = "Security Group" + kind_description: ClassVar[str] = "A security group." metadata: ClassVar[Dict[str, Any]] = {"icon": "security_group", "group": "networking"} @define(eq=False, slots=False) class BaseRoutingTable(BaseResource): kind: ClassVar[str] = "routing_table" + kind_display: ClassVar[str] = "Routing Table" + kind_description: ClassVar[str] = "A routing table." metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} @define(eq=False, slots=False) class BaseNetworkAcl(BaseResource): kind: ClassVar[str] = "network_acl" + kind_display: ClassVar[str] = "Network ACL" + kind_description: ClassVar[str] = "A network access control list." metadata: ClassVar[Dict[str, Any]] = {"icon": "acl", "group": "networking"} @define(eq=False, slots=False) class BasePeeringConnection(BaseResource): kind: ClassVar[str] = "peering_connection" + kind_display: ClassVar[str] = "Peering Connection" + kind_description: ClassVar[str] = "A peering connection." metadata: ClassVar[Dict[str, Any]] = {"icon": "connection", "group": "networking"} @define(eq=False, slots=False) class BaseEndpoint(BaseResource): kind: ClassVar[str] = "endpoint" + kind_display: ClassVar[str] = "Endpoint" + kind_description: ClassVar[str] = "An endpoint." metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} @define(eq=False, slots=False) class BaseNetworkInterface(BaseResource): kind: ClassVar[str] = "network_interface" + kind_display: ClassVar[str] = "Network Interface" + kind_description: ClassVar[str] = "A network interface." metadata: ClassVar[Dict[str, Any]] = {"icon": "network_interface", "group": "networking"} network_interface_status: str = "" network_interface_type: str = "" @@ -965,36 +1037,48 @@ class BaseNetworkInterface(BaseResource): @define(eq=False, slots=False) class BaseUser(BaseResource): kind: ClassVar[str] = "user" + kind_display: ClassVar[str] = "User" + kind_description: ClassVar[str] = "A user." metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "access_control"} @define(eq=False, slots=False) class BaseGroup(BaseResource): kind: ClassVar[str] = "group" + kind_display: ClassVar[str] = "Group" + kind_description: ClassVar[str] = "A group." metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "access_control"} @define(eq=False, slots=False) class BasePolicy(BaseResource): kind: ClassVar[str] = "policy" + kind_display: ClassVar[str] = "Policy" + kind_description: ClassVar[str] = "A policy." metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "access_control"} @define(eq=False, slots=False) class BaseRole(BaseResource): kind: ClassVar[str] = "role" + kind_display: ClassVar[str] = "Role" + kind_description: ClassVar[str] = "A role." metadata: ClassVar[Dict[str, Any]] = {"icon": "role", "group": "access_control"} @define(eq=False, slots=False) class BaseInstanceProfile(BaseResource): kind: ClassVar[str] = "instance_profile" + kind_display: ClassVar[str] = "Instance Profile" + kind_description: ClassVar[str] = "An instance profile." metadata: ClassVar[Dict[str, Any]] = {"icon": "instance_profile", "group": "access_control"} @define(eq=False, slots=False) class BaseAccessKey(BaseResource): kind: ClassVar[str] = "access_key" + kind_display: ClassVar[str] = "Access Key" + kind_description: ClassVar[str] = "An access key." metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "access_control"} access_key_status: str = "" @@ -1002,6 +1086,8 @@ class BaseAccessKey(BaseResource): @define(eq=False, slots=False) class BaseCertificate(BaseResource): kind: ClassVar[str] = "certificate" + kind_display: ClassVar[str] = "Certificate" + kind_description: ClassVar[str] = "A certificate." metadata: ClassVar[Dict[str, Any]] = {"icon": "certificate", "group": "access_control"} expires: Optional[datetime] = None dns_names: Optional[List[str]] = None @@ -1011,12 +1097,16 @@ class BaseCertificate(BaseResource): @define(eq=False, slots=False) class BaseCertificateQuota(BaseQuota): kind: ClassVar[str] = "certificate_quota" + kind_display: ClassVar[str] = "Certificate Quota" + kind_description: ClassVar[str] = "A certificate quota." metadata: ClassVar[Dict[str, Any]] = {"icon": "quota", "group": "access_control"} @define(eq=False, slots=False) class BaseStack(BaseResource): kind: ClassVar[str] = "stack" + kind_display: ClassVar[str] = "Stack" + kind_description: ClassVar[str] = "A stack." metadata: ClassVar[Dict[str, Any]] = {"icon": "stack", "group": "control"} stack_status: str = "" stack_status_reason: str = "" @@ -1026,6 +1116,8 @@ class BaseStack(BaseResource): @define(eq=False, slots=False) class BaseAutoScalingGroup(BaseResource): kind: ClassVar[str] = "autoscaling_group" + kind_display: ClassVar[str] = "Auto Scaling Group" + kind_description: ClassVar[str] = "An auto scaling group." metadata: ClassVar[Dict[str, Any]] = {"icon": "autoscaling_group", "group": "compute"} min_size: int = -1 max_size: int = -1 @@ -1034,6 +1126,8 @@ class BaseAutoScalingGroup(BaseResource): @define(eq=False, slots=False) class BaseIPAddress(BaseResource): kind: ClassVar[str] = "ip_address" + kind_display: ClassVar[str] = "IP Address" + kind_description: ClassVar[str] = "An IP address." metadata: ClassVar[Dict[str, Any]] = {"icon": "network_address", "group": "networking"} ip_address: str = "" ip_address_family: str = "" @@ -1042,6 +1136,8 @@ class BaseIPAddress(BaseResource): @define(eq=False, slots=False) class BaseHealthCheck(BaseResource): kind: ClassVar[str] = "health_check" + kind_display: ClassVar[str] = "Health Check" + kind_description: ClassVar[str] = "A health check." metadata: ClassVar[Dict[str, Any]] = {"icon": "health_check", "group": "compute"} check_interval: int = -1 healthy_threshold: int = -1 @@ -1053,12 +1149,16 @@ class BaseHealthCheck(BaseResource): @define(eq=False, slots=False) class BaseDNSZone(BaseResource): kind: ClassVar[str] = "dns_zone" + kind_display: ClassVar[str] = "DNS Zone" + kind_description: ClassVar[str] = "A DNS zone." metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} @define(eq=False, slots=False) class BaseDNSRecordSet(BaseResource): kind: ClassVar[str] = "dns_record_set" + kind_display: ClassVar[str] = "DNS Record Set" + kind_description: ClassVar[str] = "A DNS record set." metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} record_ttl: Optional[int] = None @@ -1094,6 +1194,8 @@ def _keys(self) -> tuple[Any, ...]: @define(eq=False, slots=False) class BaseDNSRecord(BaseResource): kind: ClassVar[str] = "dns_record" + kind_display: ClassVar[str] = "DNS Record" + kind_description: ClassVar[str] = "A DNS record." metadata: ClassVar[Dict[str, Any]] = {"icon": "dns_record", "group": "networking"} record_ttl: int = -1 @@ -1143,6 +1245,8 @@ def _keys(self) -> tuple[Any, ...]: @define(eq=False, slots=False) class UnknownCloud(BaseCloud): kind: ClassVar[str] = "unknown_cloud" + kind_display: ClassVar[str] = "Unknown Cloud" + kind_description: ClassVar[str] = "An unknown cloud." def delete(self, graph: Any) -> bool: return False @@ -1151,6 +1255,8 @@ def delete(self, graph: Any) -> bool: @define(eq=False, slots=False) class UnknownAccount(BaseAccount): kind: ClassVar[str] = "unknown_account" + kind_display: ClassVar[str] = "Unknown Account" + kind_description: ClassVar[str] = "An unknown account." def delete(self, graph: Any) -> bool: return False @@ -1159,6 +1265,8 @@ def delete(self, graph: Any) -> bool: @define(eq=False, slots=False) class UnknownRegion(BaseRegion): kind: ClassVar[str] = "unknown_region" + kind_display: ClassVar[str] = "Unknown Region" + kind_description: ClassVar[str] = "An unknown region." def delete(self, graph: Any) -> bool: return False @@ -1167,6 +1275,8 @@ def delete(self, graph: Any) -> bool: @define(eq=False, slots=False) class UnknownDNSZone(BaseDNSZone): kind: ClassVar[str] = "unknown_dns_zone" + kind_display: ClassVar[str] = "Unknown DNS Zone" + kind_description: ClassVar[str] = "An unknown DNS zone." def delete(self, graph: Any) -> bool: return False @@ -1175,6 +1285,8 @@ def delete(self, graph: Any) -> bool: @define(eq=False, slots=False) class UnknownZone(BaseZone): kind: ClassVar[str] = "unknown_zone" + kind_display: ClassVar[str] = "Unknown Zone" + kind_description: ClassVar[str] = "An unknown zone." def delete(self, graph: Any) -> bool: return False @@ -1183,6 +1295,8 @@ def delete(self, graph: Any) -> bool: @define(eq=False, slots=False) class UnknownLocation(BaseResource): kind: ClassVar[str] = "unknown_location" + kind_display: ClassVar[str] = "Unknown Location" + kind_description: ClassVar[str] = "An unknown location." def delete(self, graph: Any) -> bool: return False From 6b50a644f66265c0e3ed7dc72e6e14e0532a6e02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 14:11:02 +0100 Subject: [PATCH 02/27] Add display name and description to all vSphere resources --- .../resoto_plugin_vsphere/resources.py | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/plugins/vsphere/resoto_plugin_vsphere/resources.py b/plugins/vsphere/resoto_plugin_vsphere/resources.py index 55a868275b..b1d38e010a 100644 --- a/plugins/vsphere/resoto_plugin_vsphere/resources.py +++ b/plugins/vsphere/resoto_plugin_vsphere/resources.py @@ -18,6 +18,8 @@ @define(eq=False, slots=False) class VSphereHost(BaseAccount): kind: ClassVar[str] = "vsphere_host" + kind_display: ClassVar[str] = "vSphere Host" + kind_description: ClassVar[str] = "A vSphere Host." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -26,6 +28,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereDataCenter(BaseRegion): kind: ClassVar[str] = "vsphere_data_center" + kind_display: ClassVar[str] = "vSphere Data Center" + kind_description: ClassVar[str] = "A vSphere Data Center." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -34,6 +38,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereCluster(BaseZone): kind: ClassVar[str] = "vsphere_cluster" + kind_display: ClassVar[str] = "vSphere Cluster" + kind_description: ClassVar[str] = "A vSphere Cluster." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -42,6 +48,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereESXiHost(BaseResource): kind: ClassVar[str] = "vsphere_esxi_host" + kind_display: ClassVar[str] = "vSphere ESXi Host" + kind_description: ClassVar[str] = "A vSphere ESXi Host." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -50,6 +58,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereDataStore(BaseResource): kind: ClassVar[str] = "vsphere_datastore" + kind_display: ClassVar[str] = "vSphere Data Store" + kind_description: ClassVar[str] = "A vSphere Data Store." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -58,6 +68,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereDataStoreCluster(BaseResource): kind: ClassVar[str] = "vsphere_datastore_cluster" + kind_display: ClassVar[str] = "vSphere Data Store Cluster" + kind_description: ClassVar[str] = "A vSphere Data Store Cluster." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -66,6 +78,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereResourcePool(BaseResource): kind: ClassVar[str] = "vsphere_resource_pool" + kind_display: ClassVar[str] = "vSphere Resource Pool" + kind_description: ClassVar[str] = "A vSphere Resource Pool." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -74,6 +88,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereResource: kind: ClassVar[str] = "vsphere_resource" + kind_display: ClassVar[str] = "vSphere Resource" + kind_description: ClassVar[str] = "A vSphere Resource." def _vsphere_client(self) -> VSphereClient: return get_vsphere_client() @@ -82,6 +98,8 @@ def _vsphere_client(self) -> VSphereClient: @define(eq=False, slots=False) class VSphereInstance(BaseInstance, VSphereResource): kind: ClassVar[str] = "vsphere_instance" + kind_display: ClassVar[str] = "vSphere Instance" + kind_description: ClassVar[str] = "A vSphere Instance." def _vm(self): return self._vsphere_client().get_object([vim.VirtualMachine], self.name) @@ -117,6 +135,8 @@ def delete_tag(self, key) -> bool: @define(eq=False, slots=False) class VSphereTemplate(BaseResource, VSphereResource): kind: ClassVar[str] = "vsphere_template" + kind_display: ClassVar[str] = "vSphere Template" + kind_description: ClassVar[str] = "A vSphere Template." def _get_default_resource_pool(self) -> vim.ResourcePool: return self._vsphere_client().get_object([vim.ResourcePool], "Resources") From 0a93c023790e6c239208e73d3757fe18e58556f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 14:53:21 +0100 Subject: [PATCH 03/27] Add display name and description to all Slack resources --- plugins/slack/resoto_plugin_slack/resources.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/plugins/slack/resoto_plugin_slack/resources.py b/plugins/slack/resoto_plugin_slack/resources.py index a9a2541905..de3da58847 100644 --- a/plugins/slack/resoto_plugin_slack/resources.py +++ b/plugins/slack/resoto_plugin_slack/resources.py @@ -15,6 +15,8 @@ @define(eq=False, slots=False) class SlackResource: kind: ClassVar[str] = "slack_resource" + kind_display: ClassVar[str] = "Slack Resource" + kind_description: ClassVar[str] = "A Slack Resource." def delete(self, graph) -> bool: return False @@ -23,6 +25,8 @@ def delete(self, graph) -> bool: @define(eq=False, slots=False) class SlackTeam(SlackResource, BaseAccount): kind: ClassVar[str] = "slack_team" + kind_display: ClassVar[str] = "Slack Team" + kind_description: ClassVar[str] = "A Slack Team." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["slack_region"], @@ -48,6 +52,8 @@ def new(team: Dict) -> BaseAccount: @define(eq=False, slots=False) class SlackRegion(SlackResource, BaseRegion): kind = "slack_region" + kind_display: ClassVar[str] = "Slack Region" + kind_description: ClassVar[str] = "A Slack Region." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["slack_usergroup", "slack_user", "slack_conversation"], @@ -59,6 +65,8 @@ class SlackRegion(SlackResource, BaseRegion): @define(eq=False, slots=False) class SlackUser(SlackResource, BaseUser): kind: ClassVar[str] = "slack_user" + kind_display: ClassVar[str] = "Slack User" + kind_description: ClassVar[str] = "A Slack User." real_name: Optional[str] = None team_id: Optional[str] = None @@ -146,6 +154,8 @@ def new(member: Dict) -> BaseUser: @define(eq=False, slots=False) class SlackUsergroup(SlackResource, BaseGroup): kind: ClassVar[str] = "slack_usergroup" + kind_display: ClassVar[str] = "Slack Usergroup" + kind_description: ClassVar[str] = "A Slack Usergroup." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["slack_user"], @@ -198,6 +208,8 @@ def new(usergroup: Dict) -> BaseGroup: @define(eq=False, slots=False) class SlackConversation(SlackResource, BaseResource): kind: ClassVar[str] = "slack_conversation" + kind_display: ClassVar[str] = "Slack Conversation" + kind_description: ClassVar[str] = "A Slack Conversation." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["slack_user"], From b2f4ad491649c828084f6450f45217e9cd4a5820 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 14:53:58 +0100 Subject: [PATCH 04/27] Add display name and description to all Scarf resources --- plugins/scarf/resoto_plugin_scarf/resources.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/plugins/scarf/resoto_plugin_scarf/resources.py b/plugins/scarf/resoto_plugin_scarf/resources.py index ac3f3b7f18..da47ecdf5b 100644 --- a/plugins/scarf/resoto_plugin_scarf/resources.py +++ b/plugins/scarf/resoto_plugin_scarf/resources.py @@ -11,6 +11,8 @@ @define(eq=False, slots=False) class ScarfResource: kind: ClassVar[str] = "scarf_resource" + kind_display: ClassVar[str] = "Scarf Resource" + kind_description: ClassVar[str] = "A Scarf Resource." def delete(self, graph: Graph) -> bool: return False @@ -25,6 +27,8 @@ def delete_tag(self, key) -> bool: @define(eq=False, slots=False) class ScarfOrganization(ScarfResource, BaseAccount): kind: ClassVar[str] = "scarf_organization" + kind_display: ClassVar[str] = "Scarf Organization" + kind_description: ClassVar[str] = "A Scarf Organization." description: Optional[str] = None billing_email: Optional[str] = None website: Optional[str] = None @@ -44,6 +48,8 @@ def new(data: Dict) -> BaseResource: @define(eq=False, slots=False) class ScarfPackage(ScarfResource, BaseResource): kind: ClassVar[str] = "scarf_package" + kind_display: ClassVar[str] = "Scarf Package" + kind_description: ClassVar[str] = "A Scarf Package." short_description: Optional[str] = None long_description: Optional[str] = None From b0b56cf628a852fdd6f2aea51c50b809e8c379c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 15:00:42 +0100 Subject: [PATCH 05/27] Add display name and description to all DockerHub, Github, OneLogin, OnPrem, Posthog resources --- .../resoto_plugin_dockerhub/resources.py | 6 +++++ .../github/resoto_plugin_github/resources.py | 26 +++++++++++++++++++ .../resoto_plugin_onelogin/__init__.py | 8 ++++++ .../onprem/resoto_plugin_onprem/resources.py | 10 +++++++ .../resoto_plugin_posthog/resources.py | 6 +++++ 5 files changed, 56 insertions(+) diff --git a/plugins/dockerhub/resoto_plugin_dockerhub/resources.py b/plugins/dockerhub/resoto_plugin_dockerhub/resources.py index 97a101ea1b..3c9408ef5a 100644 --- a/plugins/dockerhub/resoto_plugin_dockerhub/resources.py +++ b/plugins/dockerhub/resoto_plugin_dockerhub/resources.py @@ -11,6 +11,8 @@ @define(eq=False, slots=False) class DockerHubResource: kind: ClassVar[str] = "dockerhub_resource" + kind_display: ClassVar[str] = "DockerHub Resource" + kind_description: ClassVar[str] = "A DockerHub Resource." def delete(self, graph: Graph) -> bool: return False @@ -25,6 +27,8 @@ def delete_tag(self, key) -> bool: @define(eq=False, slots=False) class DockerHubNamespace(DockerHubResource, BaseAccount): kind: ClassVar[str] = "dockerhub_namespace" + kind_display: ClassVar[str] = "DockerHub Namespace" + kind_description: ClassVar[str] = "A DockerHub Namespace." count: Optional[int] = None @@ -32,6 +36,8 @@ class DockerHubNamespace(DockerHubResource, BaseAccount): @define(eq=False, slots=False) class DockerHubRepository(DockerHubResource, BaseResource): kind: ClassVar[str] = "dockerhub_repository" + kind_display: ClassVar[str] = "DockerHub Repository" + kind_description: ClassVar[str] = "A DockerHub Repository." repository_type: Optional[str] = None is_private: Optional[bool] = None diff --git a/plugins/github/resoto_plugin_github/resources.py b/plugins/github/resoto_plugin_github/resources.py index 0d3e7e354f..03d2b440a8 100644 --- a/plugins/github/resoto_plugin_github/resources.py +++ b/plugins/github/resoto_plugin_github/resources.py @@ -24,6 +24,8 @@ @define(eq=False, slots=False) class GithubAccount(BaseAccount): kind: ClassVar[str] = "github_account" + kind_display: ClassVar[str] = "Github Account" + kind_description: ClassVar[str] = "A Github Account." def delete(self, graph: Graph) -> bool: return False @@ -32,6 +34,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class GithubRegion(BaseRegion): kind: ClassVar[str] = "github_region" + kind_display: ClassVar[str] = "Github Region" + kind_description: ClassVar[str] = "A Github Region." def delete(self, graph: Graph) -> bool: return False @@ -40,6 +44,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class GithubResource: kind: ClassVar[str] = "github_resource" + kind_display: ClassVar[str] = "Github Resource" + kind_description: ClassVar[str] = "A Github Resource." def delete(self, graph: Graph) -> bool: return False @@ -54,6 +60,8 @@ def delete_tag(self, key) -> bool: @define(eq=False, slots=False) class GithubOrg(GithubResource, BaseResource): kind: ClassVar[str] = "github_org" + kind_display: ClassVar[str] = "Github Organization" + kind_description: ClassVar[str] = "A Github Organization." avatar_url: Optional[str] = None billing_email: Optional[str] = None @@ -138,6 +146,8 @@ def new(org: Organization) -> BaseResource: @define(eq=False, slots=False) class GithubUser(GithubResource, BaseUser): kind: ClassVar[str] = "github_user" + kind_display: ClassVar[str] = "Github User" + kind_description: ClassVar[str] = "A Github User." avatar_url: Optional[str] = None bio: Optional[str] = None @@ -236,6 +246,8 @@ def new(user: NamedUser) -> BaseResource: @define(eq=False, slots=False) class GithubRepoClones: kind: ClassVar[str] = "github_repo_clones" + kind_display: ClassVar[str] = "Github Repository Clones" + kind_description: ClassVar[str] = "A Github Repository Clones." timestamp: Optional[datetime] = None count: Optional[int] = None @@ -251,6 +263,8 @@ def new(clones: Clones): @define(eq=False, slots=False) class GithubRepoClonesTraffic: kind: ClassVar[str] = "github_repo_clones_traffic" + kind_display: ClassVar[str] = "Github Repository Clones Traffic" + kind_description: ClassVar[str] = "Github Repository Clones Traffic." count: Optional[int] = None uniques: Optional[int] = None @@ -271,6 +285,8 @@ def new(clones_traffic: Optional[Dict[str, Any]]): @define(eq=False, slots=False) class GithubRepoView: kind: ClassVar[str] = "github_repo_view" + kind_display: ClassVar[str] = "Github Repository View" + kind_description: ClassVar[str] = "The Github Repository View." timestamp: Optional[datetime] = None count: Optional[int] = None @@ -284,6 +300,8 @@ def new(view: View): @define(eq=False, slots=False) class GithubRepoViewsTraffic: kind: ClassVar[str] = "github_repo_views_traffic" + kind_display: ClassVar[str] = "Github Repository Views Traffic" + kind_description: ClassVar[str] = "Github Repository Views Traffic." count: Optional[int] = None uniques: Optional[int] = None @@ -304,6 +322,8 @@ def new(views_traffic: Optional[Dict[str, Any]]): @define(eq=False, slots=False) class GithubRepoTopReferrer: kind: ClassVar[str] = "github_repo_top_referrer" + kind_display: ClassVar[str] = "Github Repository Top Referrer" + kind_description: ClassVar[str] = "Github Repository Top Referrer." referrer: Optional[str] = None count: Optional[int] = None @@ -317,6 +337,8 @@ def new(referrer: Referrer): @define(eq=False, slots=False) class GithubRepoTopPath: kind: ClassVar[str] = "github_repo_top_path" + kind_display: ClassVar[str] = "Github Repository Top Path" + kind_description: ClassVar[str] = "Github Repository Top Path." title: Optional[str] = None path: Optional[str] = None @@ -331,6 +353,8 @@ def new(path: Path): @define(eq=False, slots=False) class GithubPullRequest(GithubResource, BaseResource): kind: ClassVar[str] = "github_pull_request" + kind_display: ClassVar[str] = "Github Pull Request" + kind_description: ClassVar[str] = "A Github Pull Request." additions: Optional[int] = None # assignee: Optional[str] = None @@ -422,6 +446,8 @@ def new(pr: PullRequest): @define(eq=False, slots=False) class GithubRepo(GithubResource, BaseResource): kind: ClassVar[str] = "github_repo" + kind_display: ClassVar[str] = "Github Repository" + kind_description: ClassVar[str] = "A Github Repository." allow_merge_commit: Optional[bool] = None allow_rebase_merge: Optional[bool] = None diff --git a/plugins/onelogin/resoto_plugin_onelogin/__init__.py b/plugins/onelogin/resoto_plugin_onelogin/__init__.py index f5b5469e81..8c3ab7a560 100644 --- a/plugins/onelogin/resoto_plugin_onelogin/__init__.py +++ b/plugins/onelogin/resoto_plugin_onelogin/__init__.py @@ -17,6 +17,8 @@ @define(eq=False, slots=False) class OneLoginResource: kind: ClassVar[str] = "onelogin_resource" + kind_display: ClassVar[str] = "OneLogin Resource" + kind_description: ClassVar[str] = "A OneLogin Resource." def delete(self, graph: Graph) -> bool: return False @@ -25,16 +27,22 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class OneLoginAccount(OneLoginResource, BaseAccount): kind: ClassVar[str] = "onelogin_account" + kind_display: ClassVar[str] = "OneLogin Account" + kind_description: ClassVar[str] = "A OneLogin Account." @define(eq=False, slots=False) class OneLoginRegion(OneLoginResource, BaseRegion): kind: ClassVar[str] = "onelogin_region" + kind_display: ClassVar[str] = "OneLogin Region" + kind_description: ClassVar[str] = "A OneLogin Region." @define(eq=False, slots=False) class OneLoginUser(OneLoginResource, BaseUser): kind: ClassVar[str] = "onelogin_user" + kind_display: ClassVar[str] = "OneLogin User" + kind_description: ClassVar[str] = "A OneLogin User." user_id: Optional[int] = field(default=None, metadata={"description": "User ID"}) external_id: Optional[str] = None email: Optional[str] = None diff --git a/plugins/onprem/resoto_plugin_onprem/resources.py b/plugins/onprem/resoto_plugin_onprem/resources.py index 5440fa333f..ecc7f9c2c6 100644 --- a/plugins/onprem/resoto_plugin_onprem/resources.py +++ b/plugins/onprem/resoto_plugin_onprem/resources.py @@ -12,6 +12,8 @@ @define(eq=False, slots=False) class OnpremLocation(BaseAccount): kind: ClassVar[str] = "onprem_location" + kind_display: ClassVar[str] = "Onprem Location" + kind_description: ClassVar[str] = "An Onprem Location." def delete(self, graph: Graph) -> bool: return False @@ -20,6 +22,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class OnpremRegion(BaseRegion): kind: ClassVar[str] = "onprem_region" + kind_display: ClassVar[str] = "Onprem Region" + kind_description: ClassVar[str] = "An Onprem Region." def delete(self, graph: Graph) -> bool: return False @@ -28,6 +32,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class OnpremResource: kind: ClassVar[str] = "onprem_resource" + kind_display: ClassVar[str] = "Onprem Resource" + kind_description: ClassVar[str] = "An Onprem Resource." def delete(self, graph: Graph) -> bool: return False @@ -42,6 +48,8 @@ def delete_tag(self, key) -> bool: @define(eq=False, slots=False) class OnpremInstance(OnpremResource, BaseInstance): kind: ClassVar[str] = "onprem_instance" + kind_display: ClassVar[str] = "Onprem Instance" + kind_description: ClassVar[str] = "An Onprem Instance." network_device: Optional[str] = None network_ip4: Optional[str] = None network_ip6: Optional[str] = None @@ -50,3 +58,5 @@ class OnpremInstance(OnpremResource, BaseInstance): @define(eq=False, slots=False) class OnpremNetwork(OnpremResource, BaseNetwork): kind: ClassVar[str] = "onprem_network" + kind_display: ClassVar[str] = "Onprem Network" + kind_description: ClassVar[str] = "An Onprem Network." diff --git a/plugins/posthog/resoto_plugin_posthog/resources.py b/plugins/posthog/resoto_plugin_posthog/resources.py index 17f35e9967..fb2f920aee 100644 --- a/plugins/posthog/resoto_plugin_posthog/resources.py +++ b/plugins/posthog/resoto_plugin_posthog/resources.py @@ -8,6 +8,8 @@ @define(eq=False, slots=False) class PosthogResource: kind: ClassVar[str] = "posthog_resource" + kind_display: ClassVar[str] = "Posthog Resource" + kind_description: ClassVar[str] = "A Posthog Resource." def delete(self, graph: Graph) -> bool: return False @@ -22,6 +24,8 @@ def delete_tag(self, key) -> bool: @define(eq=False, slots=False) class PosthogProject(PosthogResource, BaseAccount): kind: ClassVar[str] = "posthog_project" + kind_display: ClassVar[str] = "Posthog Project" + kind_description: ClassVar[str] = "A Posthog Project." project_id: int app_urls: Optional[List[str]] = (None,) @@ -71,6 +75,8 @@ def new(data: Dict) -> "PosthogProject": @define(eq=False, slots=False) class PosthogEvent(PosthogResource, BaseResource): kind: ClassVar[str] = "posthog_event" + kind_display: ClassVar[str] = "Posthog Event" + kind_description: ClassVar[str] = "A Posthog Event." project_id: int count: int = 0 From 16663a0ac3d873dd8fb9b20a815148dafe836a91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 15:05:01 +0100 Subject: [PATCH 06/27] Add display name and description to all DigitalOcean resources --- .../resoto_plugin_digitalocean/resources.py | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py index 03d4136d6e..f59987584a 100644 --- a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py +++ b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py @@ -44,6 +44,8 @@ class DigitalOceanResource(BaseResource): """ kind: ClassVar[str] = "digitalocean_resource" + kind_display: ClassVar[str] = "DigitalOcean Resource" + kind_description: ClassVar[str] = "A DigitalOcean Resource." urn: str = "" def delete_uri_path(self) -> Optional[str]: @@ -83,6 +85,8 @@ class DigitalOceanTeam(DigitalOceanResource, BaseAccount): """DigitalOcean Team""" kind: ClassVar[str] = "digitalocean_team" + kind_display: ClassVar[str] = "DigitalOcean Team" + kind_description: ClassVar[str] = "A DigitalOcean Team." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -121,6 +125,8 @@ class DigitalOceanRegion(DigitalOceanResource, BaseRegion): """DigitalOcean region""" kind: ClassVar[str] = "digitalocean_region" + kind_display: ClassVar[str] = "DigitalOcean Region" + kind_description: ClassVar[str] = "A DigitalOcean Region." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -151,6 +157,8 @@ class DigitalOceanProject(DigitalOceanResource, BaseResource): """DigitalOcean project""" kind: ClassVar[str] = "digitalocean_project" + kind_display: ClassVar[str] = "DigitalOcean Project" + kind_description: ClassVar[str] = "A DigitalOcean Project." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -190,6 +198,8 @@ def delete_uri_path(self) -> Optional[str]: @define(eq=False, slots=False) class DigitalOceanDropletSize(DigitalOceanResource, BaseInstanceType): kind: ClassVar[str] = "digitalocean_droplet_size" + kind_display: ClassVar[str] = "DigitalOcean Droplet Size" + kind_description: ClassVar[str] = "The DigitalOcean Droplet Size." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -209,6 +219,8 @@ class DigitalOceanDroplet(DigitalOceanResource, BaseInstance): """ kind: ClassVar[str] = "digitalocean_droplet" + kind_display: ClassVar[str] = "DigitalOcean Droplet" + kind_description: ClassVar[str] = "A DigitalOcean Droplet." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -240,6 +252,8 @@ class DigitalOceanDropletNeighborhood(DigitalOceanResource, PhantomBaseResource) """ kind: ClassVar[str] = "digitalocean_droplet_neighborhood" + kind_display: ClassVar[str] = "DigitalOcean Droplet Neighborhood" + kind_description: ClassVar[str] = "A DigitalOcean Droplet Neighborhood." droplets: Optional[List[str]] = None @@ -248,6 +262,8 @@ class DigitalOceanKubernetesCluster(DigitalOceanResource, BaseResource): """DigitalOcean Kubernetes Cluster""" kind: ClassVar[str] = "digitalocean_kubernetes_cluster" + kind_display: ClassVar[str] = "DigitalOcean Kubernetes Cluster" + kind_description: ClassVar[str] = "A DigitalOcean Kubernetes Cluster." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -305,6 +321,8 @@ def tag_resource_name(self) -> Optional[str]: @define(eq=False, slots=False) class DigitalOceanDatabase(DigitalOceanResource, BaseDatabase): kind: ClassVar[str] = "digitalocean_database" + kind_display: ClassVar[str] = "DigitalOcean Database" + kind_description: ClassVar[str] = "A DigitalOcean Database." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_app"], @@ -327,6 +345,8 @@ class DigitalOceanVPC(DigitalOceanResource, BaseNetwork): """ kind: ClassVar[str] = "digitalocean_vpc" + kind_display: ClassVar[str] = "DigitalOcean VPC" + kind_description: ClassVar[str] = "A DigitalOcean VPC." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -356,6 +376,8 @@ class DigitalOceanSnapshot(DigitalOceanResource, BaseSnapshot): """DigitalOcean snapshot""" kind: ClassVar[str] = "digitalocean_snapshot" + kind_display: ClassVar[str] = "DigitalOcean Snapshot" + kind_description: ClassVar[str] = "A DigitalOcean Snapshot." snapshot_size_gigabytes: Optional[int] = None resource_id: Optional[str] = None resource_type: Optional[str] = None @@ -372,6 +394,8 @@ class DigitalOceanLoadBalancer(DigitalOceanResource, BaseLoadBalancer): """DigitalOcean load balancer""" kind: ClassVar[str] = "digitalocean_load_balancer" + kind_display: ClassVar[str] = "DigitalOcean Load Balancer" + kind_description: ClassVar[str] = "A DigitalOcean Load Balancer." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -395,6 +419,8 @@ class DigitalOceanFloatingIP(DigitalOceanResource, BaseIPAddress): """DigitalOcean floating IP""" kind: ClassVar[str] = "digitalocean_floating_ip" + kind_display: ClassVar[str] = "DigitalOcean Floating IP" + kind_description: ClassVar[str] = "A DigitalOcean Floating IP." is_locked: Optional[bool] = None @@ -420,6 +446,8 @@ class DigitalOceanImage(DigitalOceanResource, BaseResource): """DigitalOcean image""" kind: ClassVar[str] = "digitalocean_image" + kind_display: ClassVar[str] = "DigitalOcean Image" + kind_description: ClassVar[str] = "A DigitalOcean Image." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -448,6 +476,8 @@ class DigitalOceanSpace(DigitalOceanResource, BaseBucket): """DigitalOcean space""" kind: ClassVar[str] = "digitalocean_space" + kind_display: ClassVar[str] = "DigitalOcean Space" + kind_description: ClassVar[str] = "A DigitalOcean Space." def delete(self, graph: Graph) -> bool: log.debug(f"Deleting space {self.id} in account {self.account(graph).id} region {self.region(graph).id}") @@ -469,6 +499,8 @@ class DigitalOceanApp(DigitalOceanResource, BaseResource): """DigitalOcean app""" kind: ClassVar[str] = "digitalocean_app" + kind_display: ClassVar[str] = "DigitalOcean App" + kind_description: ClassVar[str] = "A DigitalOcean App." tier_slug: Optional[str] = None default_ingress: Optional[str] = None @@ -485,6 +517,8 @@ class DigitalOceanCdnEndpoint(DigitalOceanResource, BaseEndpoint): """DigitalOcean CDN endpoint""" kind = "digitalocean_cdn_endpoint" + kind_display: ClassVar[str] = "DigitalOcean CDN Endpoint" + kind_description: ClassVar[str] = "A DigitalOcean CDN Endpoint." origin: Optional[str] = None endpoint: Optional[str] = None @@ -501,6 +535,8 @@ class DigitalOceanCertificate(DigitalOceanResource, BaseCertificate): """DigitalOcean certificate""" kind = "digitalocean_certificate" + kind_display: ClassVar[str] = "DigitalOcean Certificate" + kind_description: ClassVar[str] = "A DigitalOcean Certificate." certificate_state: Optional[str] = None certificate_type: Optional[str] = None @@ -514,6 +550,8 @@ class DigitalOceanContainerRegistry(DigitalOceanResource, BaseResource): """DigitalOcean container registry""" kind = "digitalocean_container_registry" + kind_display: ClassVar[str] = "DigitalOcean Container Registry" + kind_description: ClassVar[str] = "A DigitalOcean Container Registry." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_container_registry_repository"], @@ -546,6 +584,8 @@ class DigitalOceanContainerRegistryRepository(DigitalOceanResource, BaseResource """DigitalOcean container registry repository""" kind = "digitalocean_container_registry_repository" + kind_display: ClassVar[str] = "DigitalOcean Container Registry Repository" + kind_description: ClassVar[str] = "A DigitalOcean Container Registry Repository." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_container_registry_repository_tag"], @@ -562,6 +602,8 @@ class DigitalOceanContainerRegistryRepositoryTag(DigitalOceanResource, BaseResou """DigitalOcean container registry repository tag""" kind = "digitalocean_container_registry_repository_tag" + kind_display: ClassVar[str] = "DigitalOcean Container Registry Repository Tag" + kind_description: ClassVar[str] = "A DigitalOcean Container Registry Repository Tag." registry_name: Optional[str] = None repository_name: Optional[str] = None manifest_digest: Optional[str] = None @@ -577,6 +619,8 @@ class DigitalOceanSSHKey(DigitalOceanResource, BaseKeyPair): """DigitalOcean ssh key""" kind = "digitalocean_ssh_key" + kind_display: ClassVar[str] = "DigitalOcean SSH Key" + kind_description: ClassVar[str] = "A DigitalOcean SSH Key." public_key: Optional[str] = None @@ -589,6 +633,8 @@ class DigitalOceanDomain(DigitalOceanResource, BaseDNSZone): """DigitalOcean domain""" kind = "digitalocean_domain" + kind_display: ClassVar[str] = "DigitalOcean Domain" + kind_description: ClassVar[str] = "A DigitalOcean Domain." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_domain_record"], @@ -607,6 +653,8 @@ class DigitalOceanDomainRecord(DigitalOceanResource, BaseDNSRecord): """DigitalOcean domain record""" kind = "digitalocean_domain_record" + kind_display: ClassVar[str] = "DigitalOcean Domain Record" + kind_description: ClassVar[str] = "A DigitalOcean Domain Record." domain_name: Optional[str] = None def delete_uri_path(self) -> Optional[str]: @@ -618,6 +666,8 @@ class DigitalOceanFirewall(DigitalOceanResource, BaseResource): """DigitalOcean firewall""" kind = "digitalocean_firewall" + kind_display: ClassVar[str] = "DigitalOcean Firewall" + kind_description: ClassVar[str] = "A DigitalOcean Firewall." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -636,6 +686,8 @@ class DigitalOceanAlertPolicy(DigitalOceanResource, BaseResource): """DigitalOcean alert policy""" kind = "digitalocean_alert_policy" + kind_display: ClassVar[str] = "DigitalOcean Alert Policy" + kind_description: ClassVar[str] = "A DigitalOcean Alert Policy." policy_type: Optional[str] = None description: Optional[str] = None From 2279987c1851b595e44b3d297836a22305e0a1cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 18:14:58 +0100 Subject: [PATCH 07/27] Add display name and description to all K8s resources --- plugins/k8s/resoto_plugin_k8s/resources.py | 280 +++++++++++++++++++++ 1 file changed, 280 insertions(+) diff --git a/plugins/k8s/resoto_plugin_k8s/resources.py b/plugins/k8s/resoto_plugin_k8s/resources.py index 5df8d72ab2..14335c3119 100644 --- a/plugins/k8s/resoto_plugin_k8s/resources.py +++ b/plugins/k8s/resoto_plugin_k8s/resources.py @@ -106,6 +106,8 @@ def connect_volumes(self, from_node: KubernetesResource, volumes: List[Json]) -> @define(eq=False, slots=False) class KubernetesNodeStatusAddresses: kind: ClassVar[str] = "kubernetes_node_status_addresses" + kind_display: ClassVar[str] = "Kubernetes Node Status Address" + kind_description: ClassVar[str] = "A Kubernetes Node Status Address." mapping: ClassVar[Dict[str, Bender]] = { "address": S("address"), "type": S("type"), @@ -117,6 +119,8 @@ class KubernetesNodeStatusAddresses: @define(eq=False, slots=False) class KubernetesNodeCondition: kind: ClassVar[str] = "kubernetes_node_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Node Status Condition" + kind_description: ClassVar[str] = "A Kubernetes Node Status Condition." mapping: ClassVar[Dict[str, Bender]] = { "last_heartbeat_time": S("lastHeartbeatTime"), "last_transition_time": S("lastTransitionTime"), @@ -136,6 +140,8 @@ class KubernetesNodeCondition: @define(eq=False, slots=False) class KubernetesNodeStatusConfigSource: kind: ClassVar[str] = "kubernetes_node_status_config_active_configmap" + kind_display: ClassVar[str] = "Kubernetes Node Status Config Source" + kind_description: ClassVar[str] = "A Kubernetes Node Status Config Source." mapping: ClassVar[Dict[str, Bender]] = { "kubelet_config_key": S("kubeletConfigKey"), "name": S("name"), @@ -153,6 +159,8 @@ class KubernetesNodeStatusConfigSource: @define(eq=False, slots=False) class KubernetesNodeConfigSource: kind: ClassVar[str] = "kubernetes_node_status_config_active" + kind_display: ClassVar[str] = "Kubernetes Node Status Config Source" + kind_description: ClassVar[str] = "A Kubernetes Node Status Config Source." mapping: ClassVar[Dict[str, Bender]] = { "config_map": S("configMap") >> Bend(KubernetesNodeStatusConfigSource.mapping), } @@ -162,6 +170,8 @@ class KubernetesNodeConfigSource: @define(eq=False, slots=False) class KubernetesNodeStatusConfig: kind: ClassVar[str] = "kubernetes_node_status_config" + kind_display: ClassVar[str] = "Kubernetes Node Status Config" + kind_description: ClassVar[str] = "A Kubernetes Node Status Config." mapping: ClassVar[Dict[str, Bender]] = { "active": S("active") >> Bend(KubernetesNodeConfigSource.mapping), "assigned": S("assigned") >> Bend(KubernetesNodeConfigSource.mapping), @@ -174,6 +184,8 @@ class KubernetesNodeStatusConfig: @define(eq=False, slots=False) class KubernetesDaemonEndpoint: + kind_display: ClassVar[str] = "Kubernetes Daemon Endpoint" + kind_description: ClassVar[str] = "A Kubernetes Daemon Endpoint." kind: ClassVar[str] = "kubernetes_daemon_endpoint" mapping: ClassVar[Dict[str, Bender]] = { "port": S("Port"), @@ -184,6 +196,8 @@ class KubernetesDaemonEndpoint: @define(eq=False, slots=False) class KubernetesNodeDaemonEndpoint: kind: ClassVar[str] = "kubernetes_node_daemon_endpoint" + kind_display: ClassVar[str] = "Kubernetes Node Daemon Endpoint" + kind_description: ClassVar[str] = "A Kubernetes Node Daemon Endpoint." mapping: ClassVar[Dict[str, Bender]] = { "kubelet_endpoint": S("kubeletEndpoint") >> Bend(KubernetesDaemonEndpoint.mapping), } @@ -193,6 +207,8 @@ class KubernetesNodeDaemonEndpoint: @define(eq=False, slots=False) class KubernetesNodeStatusImages: kind: ClassVar[str] = "kubernetes_node_status_images" + kind_display: ClassVar[str] = "Kubernetes Node Status Images" + kind_description: ClassVar[str] = "A Kubernetes Node Status Images." mapping: ClassVar[Dict[str, Bender]] = { "names": S("names", default=[]), "size_bytes": S("sizeBytes", default=0), @@ -204,6 +220,8 @@ class KubernetesNodeStatusImages: @define(eq=False, slots=False) class KubernetesNodeSystemInfo: kind: ClassVar[str] = "kubernetes_node_system_info" + kind_display: ClassVar[str] = "Kubernetes Node System Info" + kind_description: ClassVar[str] = "A Kubernetes Node System Info." mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "boot_id": S("bootID"), @@ -231,6 +249,8 @@ class KubernetesNodeSystemInfo: @define(eq=False, slots=False) class KubernetesAttachedVolume: kind: ClassVar[str] = "kubernetes_attached_volume" + kind_display: ClassVar[str] = "Kubernetes Attached Volume" + kind_description: ClassVar[str] = "A Kubernetes Attached Volume." mapping: ClassVar[Dict[str, Bender]] = { "device_path": S("devicePath"), "name": S("name"), @@ -242,6 +262,8 @@ class KubernetesAttachedVolume: @define(eq=False, slots=False) class KubernetesNodeStatus: kind: ClassVar[str] = "kubernetes_node_status" + kind_display: ClassVar[str] = "Kubernetes Node Status" + kind_description: ClassVar[str] = "A Kubernetes Node Status." mapping: ClassVar[Dict[str, Bender]] = { "addresses": S("addresses", default=[]) >> ForallBend(KubernetesNodeStatusAddresses.mapping), "conditions": S("conditions", default=[]) >> SortTransitionTime >> ForallBend(KubernetesNodeCondition.mapping), @@ -269,6 +291,8 @@ class KubernetesNodeStatus: @define class KubernetesTaint: kind: ClassVar[str] = "kubernetes_taint" + kind_display: ClassVar[str] = "Kubernetes Taint" + kind_description: ClassVar[str] = "A Kubernetes Taint." mapping: ClassVar[Dict[str, Bender]] = { "effect": S("effect"), "key": S("key"), @@ -284,6 +308,8 @@ class KubernetesTaint: @define class KubernetesNodeSpec: kind: ClassVar[str] = "kubernetes_node_spec" + kind_display: ClassVar[str] = "Kubernetes Node Spec" + kind_description: ClassVar[str] = "A Kubernetes Node Spec." mapping: ClassVar[Dict[str, Bender]] = { "external_id": S("externalID"), "pod_cidr": S("podCIDR"), @@ -312,6 +338,8 @@ class KubernetesNodeSpec: @define(eq=False, slots=False) class KubernetesNode(KubernetesResource, BaseInstance): kind: ClassVar[str] = "kubernetes_node" + kind_display: ClassVar[str] = "Kubernetes Node" + kind_description: ClassVar[str] = "A Kubernetes Node." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "node_status": S("status") >> Bend(KubernetesNodeStatus.mapping), "node_spec": S("spec") >> Bend(KubernetesNodeSpec.mapping), @@ -339,6 +367,8 @@ class KubernetesNode(KubernetesResource, BaseInstance): @define(eq=False, slots=False) class KubernetesPodStatusConditions: kind: ClassVar[str] = "kubernetes_pod_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Pod Status Condition" + kind_description: ClassVar[str] = "A Kubernetes Pod status condition." mapping: ClassVar[Dict[str, Bender]] = { "last_probe_time": S("lastProbeTime"), "last_transition_time": S("lastTransitionTime"), @@ -358,6 +388,8 @@ class KubernetesPodStatusConditions: @define(eq=False, slots=False) class KubernetesContainerStateRunning: kind: ClassVar[str] = "kubernetes_container_state_running" + kind_display: ClassVar[str] = "Kubernetes Container State: Running" + kind_description: ClassVar[str] = "A running Kubernetes container." mapping: ClassVar[Dict[str, Bender]] = { "started_at": S("startedAt"), } @@ -367,6 +399,8 @@ class KubernetesContainerStateRunning: @define(eq=False, slots=False) class KubernetesContainerStateTerminated: kind: ClassVar[str] = "kubernetes_container_state_terminated" + kind_display: ClassVar[str] = "Kubernetes Container State: Terminated" + kind_description: ClassVar[str] = "A terminated Kubernetes container." mapping: ClassVar[Dict[str, Bender]] = { "container_id": S("containerID"), "exit_code": S("exitCode"), @@ -388,6 +422,8 @@ class KubernetesContainerStateTerminated: @define(eq=False, slots=False) class KubernetesContainerStateWaiting: kind: ClassVar[str] = "kubernetes_container_state_waiting" + kind_display: ClassVar[str] = "Kubernetes Container State: Waiting" + kind_description: ClassVar[str] = "A waiting Kubernetes container." mapping: ClassVar[Dict[str, Bender]] = { "message": S("message"), "reason": S("reason"), @@ -399,6 +435,8 @@ class KubernetesContainerStateWaiting: @define(eq=False, slots=False) class KubernetesContainerState: kind: ClassVar[str] = "kubernetes_container_state" + kind_display: ClassVar[str] = "Kubernetes Container State" + kind_description: ClassVar[str] = "A Kubernetes container state." mapping: ClassVar[Dict[str, Bender]] = { "running": S("running") >> Bend(KubernetesContainerStateRunning.mapping), "terminated": S("terminated") >> Bend(KubernetesContainerStateTerminated.mapping), @@ -412,6 +450,8 @@ class KubernetesContainerState: @define(eq=False, slots=False) class KubernetesContainerStatus: kind: ClassVar[str] = "kubernetes_container_status" + kind_display: ClassVar[str] = "Kubernetes Container Status" + kind_description: ClassVar[str] = "A Kubernetes container status." mapping: ClassVar[Dict[str, Bender]] = { "container_id": S("containerID"), "image": S("image"), @@ -437,6 +477,8 @@ class KubernetesContainerStatus: @define(eq=False, slots=False) class KubernetesPodIPs: kind: ClassVar[str] = "kubernetes_pod_ips" + kind_display: ClassVar[str] = "Kubernetes Pod IPs" + kind_description: ClassVar[str] = "Kubernetes Pod IPs." mapping: ClassVar[Dict[str, Bender]] = {"ip": S("ip")} ip: Optional[str] = field(default=None) @@ -444,6 +486,8 @@ class KubernetesPodIPs: @define(eq=False, slots=False) class KubernetesPodStatus: kind: ClassVar[str] = "kubernetes_pod_status" + kind_display: ClassVar[str] = "Kubernetes Pod Status" + kind_description: ClassVar[str] = "A Kubernetes Pod status." mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -481,6 +525,8 @@ class KubernetesPodStatus: @define class KubernetesContainerPort: kind: ClassVar[str] = "kubernetes_container_port" + kind_display: ClassVar[str] = "Kubernetes Container Port" + kind_description: ClassVar[str] = "A Kubernetes Container Port." mapping: ClassVar[Dict[str, Bender]] = { "container_port": S("containerPort"), "host_ip": S("hostIP"), @@ -498,6 +544,8 @@ class KubernetesContainerPort: @define class KubernetesResourceRequirements: kind: ClassVar[str] = "kubernetes_resource_requirements" + kind_display: ClassVar[str] = "Kubernetes Resource Requirements" + kind_description: ClassVar[str] = "Kubernetes Resource Requirements." mapping: ClassVar[Dict[str, Bender]] = { "limits": S("limits"), "requests": S("requests"), @@ -509,6 +557,8 @@ class KubernetesResourceRequirements: @define class KubernetesSecurityContext: kind: ClassVar[str] = "kubernetes_security_context" + kind_display: ClassVar[str] = "Kubernetes Security Context" + kind_description: ClassVar[str] = "Kubernetes Security Context." mapping: ClassVar[Dict[str, Bender]] = { "allow_privilege_escalation": S("allowPrivilegeEscalation"), "privileged": S("privileged"), @@ -536,6 +586,8 @@ class KubernetesSecurityContext: @define class KubernetesVolumeDevice: kind: ClassVar[str] = "kubernetes_volume_device" + kind_display: ClassVar[str] = "Kubernetes Volume Device" + kind_description: ClassVar[str] = "A Kubernetes Volume Device." mapping: ClassVar[Dict[str, Bender]] = { "device_path": S("devicePath"), "name": S("name"), @@ -547,6 +599,8 @@ class KubernetesVolumeDevice: @define class KubernetesVolumeMount: kind: ClassVar[str] = "kubernetes_volume_mount" + kind_display: ClassVar[str] = "Kubernetes Volume Mount" + kind_description: ClassVar[str] = "A Kubernetes Volume Mount." mapping: ClassVar[Dict[str, Bender]] = { "mount_path": S("mountPath"), "mount_propagation": S("mountPropagation"), @@ -566,6 +620,8 @@ class KubernetesVolumeMount: @define class KubernetesContainer: kind: ClassVar[str] = "kubernetes_container" + kind_display: ClassVar[str] = "Kubernetes Container" + kind_description: ClassVar[str] = "A Kubernetes Container." mapping: ClassVar[Dict[str, Bender]] = { "args": S("args", default=[]), "command": S("command", default=[]), @@ -605,6 +661,8 @@ class KubernetesContainer: @define class KubernetesPodSecurityContext: kind: ClassVar[str] = "kubernetes_pod_security_context" + kind_display: ClassVar[str] = "Kubernetes Pod Security Context" + kind_description: ClassVar[str] = "A Kubernetes Pod Security Context." mapping: ClassVar[Dict[str, Bender]] = { "fs_group": S("fsGroup"), "fs_group_change_policy": S("fsGroupChangePolicy"), @@ -630,6 +688,8 @@ class KubernetesPodSecurityContext: @define class KubernetesToleration: kind: ClassVar[str] = "kubernetes_toleration" + kind_display: ClassVar[str] = "Kubernetes Toleration" + kind_description: ClassVar[str] = "A Kubernetes Toleration." mapping: ClassVar[Dict[str, Bender]] = { "effect": S("effect"), "key": S("key"), @@ -647,6 +707,8 @@ class KubernetesToleration: @define class KubernetesVolume: kind: ClassVar[str] = "kubernetes_volume" + kind_display: ClassVar[str] = "Kubernetes Volume" + kind_description: ClassVar[str] = "A Kubernetes Volume." mapping: ClassVar[Dict[str, Bender]] = { "aws_elastic_block_store": S("awsElasticBlockStore"), "azure_disk": S("azureDisk"), @@ -714,6 +776,8 @@ class KubernetesVolume: @define class KubernetesPodSpec: kind: ClassVar[str] = "kubernetes_pod_spec" + kind_display: ClassVar[str] = "Kubernetes Pod Spec" + kind_description: ClassVar[str] = "A Kubernetes Pod Spec." mapping: ClassVar[Dict[str, Bender]] = { "active_deadline_seconds": S("activeDeadlineSeconds"), "automount_service_account_token": S("automountServiceAccountToken"), @@ -776,6 +840,8 @@ class KubernetesPodSpec: @define(eq=False, slots=False) class KubernetesPod(KubernetesResource): kind: ClassVar[str] = "kubernetes_pod" + kind_display: ClassVar[str] = "Kubernetes Pod" + kind_description: ClassVar[str] = "A Kubernetes Pod." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "pod_status": S("status") >> Bend(KubernetesPodStatus.mapping), "pod_spec": S("spec") >> Bend(KubernetesPodSpec.mapping), @@ -816,6 +882,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class KubernetesPersistentVolumeClaimStatusConditions: kind: ClassVar[str] = "kubernetes_persistent_volume_claim_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_probe_time": S("lastProbeTime"), "last_transition_time": S("lastTransitionTime"), @@ -835,6 +903,8 @@ class KubernetesPersistentVolumeClaimStatusConditions: @define(eq=False, slots=False) class KubernetesPersistentVolumeClaimStatus: kind: ClassVar[str] = "kubernetes_persistent_volume_claim_status" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim Status" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim status." mapping: ClassVar[Dict[str, Bender]] = { "access_modes": S("accessModes", default=[]), "allocated_resources": S("allocatedResources"), @@ -854,6 +924,8 @@ class KubernetesPersistentVolumeClaimStatus: @define class KubernetesLabelSelectorRequirement: kind: ClassVar[str] = "kubernetes_label_selector_requirement" + kind_display: ClassVar[str] = "Kubernetes Label Selector Requirement" + kind_description: ClassVar[str] = "A Kubernetes Label Selector Requirement." mapping: ClassVar[Dict[str, Bender]] = { "key": S("key"), "operator": S("operator"), @@ -867,6 +939,8 @@ class KubernetesLabelSelectorRequirement: @define class KubernetesLabelSelector: kind: ClassVar[str] = "kubernetes_label_selector" + kind_display: ClassVar[str] = "Kubernetes Label Selector" + kind_description: ClassVar[str] = "A Kubernetes Label Selector." mapping: ClassVar[Dict[str, Bender]] = { "match_expressions": S("matchExpressions", default=[]) >> ForallBend(KubernetesLabelSelectorRequirement.mapping), @@ -879,6 +953,8 @@ class KubernetesLabelSelector: @define class KubernetesPersistentVolumeClaimSpec: kind: ClassVar[str] = "kubernetes_persistent_volume_claim_spec" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim Spec" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim spec." mapping: ClassVar[Dict[str, Bender]] = { "access_modes": S("accessModes", default=[]), "resources": S("resources") >> Bend(KubernetesResourceRequirements.mapping), @@ -898,6 +974,8 @@ class KubernetesPersistentVolumeClaimSpec: @define(eq=False, slots=False) class KubernetesPersistentVolumeClaim(KubernetesResource): kind: ClassVar[str] = "kubernetes_persistent_volume_claim" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "persistent_volume_claim_status": S("status") >> Bend(KubernetesPersistentVolumeClaimStatus.mapping), "persistent_volume_claim_spec": S("spec") >> Bend(KubernetesPersistentVolumeClaimSpec.mapping), @@ -917,6 +995,8 @@ class KubernetesPersistentVolumeClaim(KubernetesResource): @define(eq=False, slots=False) class KubernetesLoadbalancerIngressPorts: kind: ClassVar[str] = "kubernetes_loadbalancer_ingress_ports" + kind_display: ClassVar[str] = "Kubernetes Loadbalancer Ingress Ports" + kind_description: ClassVar[str] = "A Kubernetes Loadbalancer Ingress Ports." mapping: ClassVar[Dict[str, Bender]] = { "error": S("error"), "port": S("port"), @@ -930,6 +1010,8 @@ class KubernetesLoadbalancerIngressPorts: @define(eq=False, slots=False) class KubernetesLoadbalancerIngress: kind: ClassVar[str] = "kubernetes_loadbalancer_ingress" + kind_display: ClassVar[str] = "Kubernetes Loadbalancer Ingress" + kind_description: ClassVar[str] = "A Kubernetes Loadbalancer Ingress." mapping: ClassVar[Dict[str, Bender]] = { "hostname": S("hostname"), "ip": S("ip"), @@ -943,6 +1025,8 @@ class KubernetesLoadbalancerIngress: @define(eq=False, slots=False) class KubernetesLoadbalancerStatus: kind: ClassVar[str] = "kubernetes_loadbalancer_status" + kind_display: ClassVar[str] = "Kubernetes Loadbalancer Status" + kind_description: ClassVar[str] = "A Kubernetes Loadbalancer status." mapping: ClassVar[Dict[str, Bender]] = { "ingress": S("ingress", default=[]) >> ForallBend(KubernetesLoadbalancerIngress.mapping), } @@ -952,6 +1036,8 @@ class KubernetesLoadbalancerStatus: @define(eq=False, slots=False) class KubernetesServiceStatusConditions: kind: ClassVar[str] = "kubernetes_service_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Service Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Service status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -971,6 +1057,8 @@ class KubernetesServiceStatusConditions: @define(eq=False, slots=False) class KubernetesServiceStatus: kind: ClassVar[str] = "kubernetes_service_status" + kind_display: ClassVar[str] = "Kubernetes Service Status" + kind_description: ClassVar[str] = "A Kubernetes Service status." mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -984,6 +1072,8 @@ class KubernetesServiceStatus: @define class KubernetesServicePort: kind: ClassVar[str] = "kubernetes_service_port" + kind_display: ClassVar[str] = "Kubernetes Service Port" + kind_description: ClassVar[str] = "A Kubernetes Service Port." mapping: ClassVar[Dict[str, Bender]] = { "app_protocol": S("appProtocol"), "name": S("name"), @@ -1003,6 +1093,8 @@ class KubernetesServicePort: @define class KubernetesServiceSpec: kind: ClassVar[str] = "kubernetes_service_spec" + kind_display: ClassVar[str] = "Kubernetes Service Spec" + kind_description: ClassVar[str] = "A Kubernetes Service spec." mapping: ClassVar[Dict[str, Bender]] = { "allocate_load_balancer_node_ports": S("allocateLoadBalancerNodePorts"), "cluster_ip": S("clusterIP"), @@ -1046,6 +1138,8 @@ class KubernetesServiceSpec: @define(eq=False, slots=False) class KubernetesService(KubernetesResource, BaseLoadBalancer): kind: ClassVar[str] = "kubernetes_service" + kind_display: ClassVar[str] = "Kubernetes Service" + kind_description: ClassVar[str] = "A Kubernetes Service." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "service_status": S("status") >> Bend(KubernetesServiceStatus.mapping), "service_spec": S("spec") >> Bend(KubernetesServiceSpec.mapping), @@ -1091,11 +1185,15 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class KubernetesPodTemplate(KubernetesResource): kind: ClassVar[str] = "kubernetes_pod_template" + kind_display: ClassVar[str] = "Kubernetes Pod Template" + kind_description: ClassVar[str] = "A Kubernetes Pod Template." @define(eq=False, slots=False) class KubernetesClusterInfo: kind: ClassVar[str] = "kubernetes_cluster_info" + kind_display: ClassVar[str] = "Kubernetes Cluster Info" + kind_description: ClassVar[str] = "A Kubernetes Cluster Info." major: str minor: str platform: str @@ -1105,6 +1203,8 @@ class KubernetesClusterInfo: @define(eq=False, slots=False) class KubernetesCluster(KubernetesResource, BaseAccount): kind: ClassVar[str] = "kubernetes_cluster" + kind_display: ClassVar[str] = "Kubernetes Cluster" + kind_description: ClassVar[str] = "A Kubernetes Cluster." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -1134,11 +1234,15 @@ class KubernetesCluster(KubernetesResource, BaseAccount): @define(eq=False, slots=False) class KubernetesConfigMap(KubernetesResource): kind: ClassVar[str] = "kubernetes_config_map" + kind_display: ClassVar[str] = "Kubernetes Config Map" + kind_description: ClassVar[str] = "A Kubernetes Config Map." @define(eq=False, slots=False) class KubernetesEndpointAddress: kind: ClassVar[str] = "kubernetes_endpoint_address" + kind_display: ClassVar[str] = "Kubernetes Endpoint Address" + kind_description: ClassVar[str] = "A Kubernetes Endpoint Address." mapping: ClassVar[Dict[str, Bender]] = { "ip": S("ip"), "node_name": S("nodeName"), @@ -1156,6 +1260,8 @@ def target_ref(self) -> Optional[str]: @define(eq=False, slots=False) class KubernetesEndpointPort: kind: ClassVar[str] = "kubernetes_endpoint_port" + kind_display: ClassVar[str] = "Kubernetes Endpoint Port" + kind_description: ClassVar[str] = "A Kubernetes Endpoint Port." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "port": S("port"), @@ -1170,6 +1276,8 @@ class KubernetesEndpointPort: @define(eq=False, slots=False) class KubernetesEndpointSubset: kind: ClassVar[str] = "kubernetes_endpoint_subset" + kind_display: ClassVar[str] = "Kubernetes Endpoint Subset" + kind_description: ClassVar[str] = "A Kubernetes Endpoint Subset." mapping: ClassVar[Dict[str, Bender]] = { "addresses": S("addresses", default=[]) >> ForallBend(KubernetesEndpointAddress.mapping), "ports": S("ports", default=[]) >> ForallBend(KubernetesEndpointPort.mapping), @@ -1181,6 +1289,8 @@ class KubernetesEndpointSubset: @define(eq=False, slots=False) class KubernetesEndpoints(KubernetesResource): kind: ClassVar[str] = "kubernetes_endpoint" + kind_display: ClassVar[str] = "Kubernetes Endpoint" + kind_description: ClassVar[str] = "A Kubernetes Endpoint." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "subsets": S("subsets", default=[]) >> ForallBend(KubernetesEndpointSubset.mapping), } @@ -1204,6 +1314,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class KubernetesEndpointSlice(KubernetesResource): kind: ClassVar[str] = "kubernetes_endpoint_slice" + kind_display: ClassVar[str] = "Kubernetes Endpoint Slice" + kind_description: ClassVar[str] = "A Kubernetes Endpoint Slice." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [], @@ -1215,11 +1327,15 @@ class KubernetesEndpointSlice(KubernetesResource): @define(eq=False, slots=False) class KubernetesLimitRange(KubernetesResource): kind: ClassVar[str] = "kubernetes_limit_range" + kind_display: ClassVar[str] = "Kubernetes Limit Range" + kind_description: ClassVar[str] = "A Kubernetes Limit Range." @define(eq=False, slots=False) class KubernetesNamespaceStatusConditions: kind: ClassVar[str] = "kubernetes_namespace_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Namespace Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Namespace status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1237,6 +1353,8 @@ class KubernetesNamespaceStatusConditions: @define(eq=False, slots=False) class KubernetesNamespaceStatus: kind: ClassVar[str] = "kubernetes_namespace_status" + kind_display: ClassVar[str] = "Kubernetes Namespace Status" + kind_description: ClassVar[str] = "A Kubernetes Namespace status." mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -1250,6 +1368,8 @@ class KubernetesNamespaceStatus: @define(eq=False, slots=False) class KubernetesNamespace(KubernetesResource, BaseRegion): kind: ClassVar[str] = "kubernetes_namespace" + kind_display: ClassVar[str] = "Kubernetes Namespace" + kind_description: ClassVar[str] = "A Kubernetes Namespace." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "namespace_status": S("status") >> Bend(KubernetesNamespaceStatus.mapping), } @@ -1285,6 +1405,8 @@ class KubernetesNamespace(KubernetesResource, BaseRegion): @define(eq=False, slots=False) class KubernetesPersistentVolumeStatus: kind: ClassVar[str] = "kubernetes_persistent_volume_status" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Status" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume status." mapping: ClassVar[Dict[str, Bender]] = { "message": S("message"), "phase": S("phase"), @@ -1298,6 +1420,8 @@ class KubernetesPersistentVolumeStatus: @define(eq=False, slots=False) class KubernetesPersistentVolumeSpecAwsElasticBlockStore: kind: ClassVar[str] = "kubernetes_persistent_volume_spec_aws_elastic_block_store" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Spec Aws Elastic Block Store" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume spec AWS elastic block store." mapping: ClassVar[Dict[str, Bender]] = { "volume_id": S("volumeID"), "fs_type": S("fsType"), @@ -1309,6 +1433,8 @@ class KubernetesPersistentVolumeSpecAwsElasticBlockStore: @define class KubernetesPersistentVolumeSpec: kind: ClassVar[str] = "kubernetes_persistent_volume_spec" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Spec" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume spec." mapping: ClassVar[Dict[str, Bender]] = { "access_modes": S("accessModes", default=[]), "aws_elastic_block_store": S("awsElasticBlockStore") @@ -1385,6 +1511,8 @@ class KubernetesPersistentVolumeSpec: @define(eq=False, slots=False) class KubernetesPersistentVolume(KubernetesResource, BaseVolume): kind: ClassVar[str] = "kubernetes_persistent_volume" + kind_display: ClassVar[str] = "Kubernetes Persistent Volume" + kind_description: ClassVar[str] = "A Kubernetes Persistent Volume." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "persistent_volume_status": S("status") >> Bend(KubernetesPersistentVolumeStatus.mapping), "persistent_volume_spec": S("spec") >> Bend(KubernetesPersistentVolumeSpec.mapping), @@ -1422,6 +1550,8 @@ class KubernetesReplicationControllerStatusConditions: @define(eq=False, slots=False) class KubernetesReplicationControllerStatus: kind: ClassVar[str] = "kubernetes_replication_controller_status" + kind_display: ClassVar[str] = "Kubernetes Replication Controller Status" + kind_description: ClassVar[str] = "A Kubernetes Replication Controller status." mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "conditions": S("conditions", default=[]) @@ -1443,6 +1573,8 @@ class KubernetesReplicationControllerStatus: @define(eq=False, slots=False) class KubernetesReplicationController(KubernetesResource): kind: ClassVar[str] = "kubernetes_replication_controller" + kind_display: ClassVar[str] = "Kubernetes Replication Controller" + kind_description: ClassVar[str] = "A Kubernetes Replication Controller." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "replication_controller_status": S("status") >> Bend(KubernetesReplicationControllerStatus.mapping), } @@ -1452,6 +1584,8 @@ class KubernetesReplicationController(KubernetesResource): @define(eq=False, slots=False) class KubernetesResourceQuotaStatus: kind: ClassVar[str] = "kubernetes_resource_quota_status" + kind_display: ClassVar[str] = "Kubernetes Resource Quota Status" + kind_description: ClassVar[str] = "A Kubernetes Resource Quota status." mapping: ClassVar[Dict[str, Bender]] = { "hard": S("hard"), "used": S("used"), @@ -1463,6 +1597,8 @@ class KubernetesResourceQuotaStatus: @define class KubernetesResourceQuotaSpec: kind: ClassVar[str] = "kubernetes_resource_quota_spec" + kind_display: ClassVar[str] = "Kubernetes Resource Quota Spec" + kind_description: ClassVar[str] = "A Kubernetes Resource Quota spec." mapping: ClassVar[Dict[str, Bender]] = { "hard": S("hard"), "scope_selector": S("scopeSelector"), @@ -1476,6 +1612,8 @@ class KubernetesResourceQuotaSpec: @define(eq=False, slots=False) class KubernetesResourceQuota(KubernetesResource, BaseQuota): kind: ClassVar[str] = "kubernetes_resource_quota" + kind_display: ClassVar[str] = "Kubernetes Resource Quota" + kind_description: ClassVar[str] = "A Kubernetes Resource Quota." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "resource_quota_status": S("status") >> Bend(KubernetesResourceQuotaStatus.mapping), "resource_quota_spec": S("spec") >> Bend(KubernetesResourceQuotaSpec.mapping), @@ -1487,11 +1625,15 @@ class KubernetesResourceQuota(KubernetesResource, BaseQuota): @define(eq=False, slots=False) class KubernetesSecret(KubernetesResource): kind: ClassVar[str] = "kubernetes_secret" + kind_display: ClassVar[str] = "Kubernetes Secret" + kind_description: ClassVar[str] = "A Kubernetes Secret." @define(eq=False, slots=False) class KubernetesServiceAccount(KubernetesResource): kind: ClassVar[str] = "kubernetes_service_account" + kind_display: ClassVar[str] = "Kubernetes Service Account" + kind_description: ClassVar[str] = "A Kubernetes Service Account." reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["kubernetes_secret"], "delete": []}} def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @@ -1504,16 +1646,22 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class KubernetesMutatingWebhookConfiguration(KubernetesResource): kind: ClassVar[str] = "kubernetes_mutating_webhook_configuration" + kind_display: ClassVar[str] = "Kubernetes Mutating Webhook Configuration" + kind_description: ClassVar[str] = "A Kubernetes Mutating Webhook Configuration." @define(eq=False, slots=False) class KubernetesValidatingWebhookConfiguration(KubernetesResource): kind: ClassVar[str] = "kubernetes_validating_webhook_configuration" + kind_display: ClassVar[str] = "Kubernetes Validating Webhook Configuration" + kind_description: ClassVar[str] = "A Kubernetes Validating Webhook Configuration." @define(eq=False, slots=False) class KubernetesControllerRevision(KubernetesResource): kind: ClassVar[str] = "kubernetes_controller_revision" + kind_display: ClassVar[str] = "Kubernetes Controller Revision" + kind_description: ClassVar[str] = "A Kubernetes Controller Revision." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [], @@ -1525,6 +1673,8 @@ class KubernetesControllerRevision(KubernetesResource): @define(eq=False, slots=False) class KubernetesDaemonSetStatusConditions: kind: ClassVar[str] = "kubernetes_daemon_set_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Daemon Set Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Daemon Set status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1542,6 +1692,8 @@ class KubernetesDaemonSetStatusConditions: @define(eq=False, slots=False) class KubernetesDaemonSetStatus: kind: ClassVar[str] = "kubernetes_daemon_set_status" + kind_display: ClassVar[str] = "Kubernetes Daemon Set Status" + kind_description: ClassVar[str] = "A Kubernetes Daemon Set status." mapping: ClassVar[Dict[str, Bender]] = { "collision_count": S("collisionCount"), "conditions": S("conditions", default=[]) @@ -1571,6 +1723,8 @@ class KubernetesDaemonSetStatus: @define class KubernetesPodTemplateSpec: kind: ClassVar[str] = "kubernetes_pod_template_spec" + kind_display: ClassVar[str] = "Kubernetes Pod Template Spec" + kind_description: ClassVar[str] = "A Kubernetes Pod Template spec." mapping: ClassVar[Dict[str, Bender]] = { "spec": S("spec") >> Bend(KubernetesPodSpec.mapping), } @@ -1580,6 +1734,8 @@ class KubernetesPodTemplateSpec: @define class KubernetesDaemonSetSpec: kind: ClassVar[str] = "kubernetes_daemon_set_spec" + kind_display: ClassVar[str] = "Kubernetes Daemon Set Spec" + kind_description: ClassVar[str] = "A Kubernetes Daemon Set spec." mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "revision_history_limit": S("revisionHistoryLimit"), @@ -1595,6 +1751,8 @@ class KubernetesDaemonSetSpec: @define(eq=False, slots=False) class KubernetesDaemonSet(KubernetesResource): kind: ClassVar[str] = "kubernetes_daemon_set" + kind_display: ClassVar[str] = "Kubernetes Daemon Set" + kind_description: ClassVar[str] = "A Kubernetes Daemon Set." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "daemon_set_status": S("status") >> Bend(KubernetesDaemonSetStatus.mapping), "daemon_set_spec": S("spec") >> Bend(KubernetesDaemonSetSpec.mapping), @@ -1613,6 +1771,8 @@ class KubernetesDaemonSet(KubernetesResource): @define(eq=False, slots=False) class KubernetesDeploymentStatusCondition: kind: ClassVar[str] = "kubernetes_deployment_status_condition" + kind_display: ClassVar[str] = "Kubernetes Deployment Status Condition" + kind_description: ClassVar[str] = "A Kubernetes Deployment status condition." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "last_update_time": S("lastUpdateTime"), @@ -1632,6 +1792,8 @@ class KubernetesDeploymentStatusCondition: @define(eq=False, slots=False) class KubernetesDeploymentStatus: kind: ClassVar[str] = "kubernetes_deployment_status" + kind_display: ClassVar[str] = "Kubernetes Deployment Status" + kind_description: ClassVar[str] = "A Kubernetes Deployment status." mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "collision_count": S("collisionCount"), @@ -1657,6 +1819,8 @@ class KubernetesDeploymentStatus: @define class KubernetesRollingUpdateDeployment: kind: ClassVar[str] = "kubernetes_rolling_update_deployment" + kind_display: ClassVar[str] = "Kubernetes Rolling Update Deployment" + kind_description: ClassVar[str] = "A Kubernetes rolling update deployment." mapping: ClassVar[Dict[str, Bender]] = { "max_surge": S("maxSurge"), "max_unavailable": S("maxUnavailable"), @@ -1668,6 +1832,8 @@ class KubernetesRollingUpdateDeployment: @define class KubernetesDeploymentStrategy: kind: ClassVar[str] = "kubernetes_deployment_strategy" + kind_display: ClassVar[str] = "Kubernetes Deployment Strategy" + kind_description: ClassVar[str] = "A Kubernetes deployment strategy." mapping: ClassVar[Dict[str, Bender]] = { "rolling_update": S("rollingUpdate") >> Bend(KubernetesRollingUpdateDeployment.mapping), "type": S("type"), @@ -1679,6 +1845,8 @@ class KubernetesDeploymentStrategy: @define class KubernetesDeploymentSpec: kind: ClassVar[str] = "kubernetes_deployment_spec" + kind_display: ClassVar[str] = "Kubernetes Deployment Spec" + kind_description: ClassVar[str] = "A Kubernetes Deployment spec." mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "paused": S("paused"), @@ -1702,6 +1870,8 @@ class KubernetesDeploymentSpec: @define(eq=False, slots=False) class KubernetesDeployment(KubernetesResource): kind: ClassVar[str] = "kubernetes_deployment" + kind_display: ClassVar[str] = "Kubernetes Deployment" + kind_description: ClassVar[str] = "A Kubernetes Deployment." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "deployment_status": S("status") >> Bend(KubernetesDeploymentStatus.mapping), "deployment_spec": S("spec") >> Bend(KubernetesDeploymentSpec.mapping), @@ -1725,6 +1895,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class KubernetesReplicaSetStatusCondition: kind: ClassVar[str] = "kubernetes_replica_set_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Replica Set Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Replica Set status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1742,6 +1914,8 @@ class KubernetesReplicaSetStatusCondition: @define(eq=False, slots=False) class KubernetesReplicaSetStatus: kind: ClassVar[str] = "kubernetes_replica_set_status" + kind_display: ClassVar[str] = "Kubernetes Replica Set Status" + kind_description: ClassVar[str] = "A Kubernetes Replica Set status." mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "conditions": S("conditions", default=[]) @@ -1763,6 +1937,8 @@ class KubernetesReplicaSetStatus: @define class KubernetesReplicaSetSpec: kind: ClassVar[str] = "kubernetes_replica_set_spec" + kind_display: ClassVar[str] = "Kubernetes Replica Set Spec" + kind_description: ClassVar[str] = "A Kubernetes Replica Set spec." mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "replicas": S("replicas"), @@ -1778,6 +1954,8 @@ class KubernetesReplicaSetSpec: @define(eq=False, slots=False) class KubernetesReplicaSet(KubernetesResource): kind: ClassVar[str] = "kubernetes_replica_set" + kind_display: ClassVar[str] = "Kubernetes Replica Set" + kind_description: ClassVar[str] = "A Kubernetes Replica Set." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "replica_set_status": S("status") >> Bend(KubernetesReplicaSetStatus.mapping), "replica_set_spec": S("spec") >> Bend(KubernetesReplicaSetSpec.mapping), @@ -1796,6 +1974,8 @@ class KubernetesReplicaSet(KubernetesResource): @define(eq=False, slots=False) class KubernetesStatefulSetStatusCondition: kind: ClassVar[str] = "kubernetes_stateful_set_status_condition" + kind_display: ClassVar[str] = "Kubernetes Stateful Set Status Condition" + kind_description: ClassVar[str] = "A Kubernetes Stateful Set status condition." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1813,6 +1993,8 @@ class KubernetesStatefulSetStatusCondition: @define(eq=False, slots=False) class KubernetesStatefulSetStatus: kind: ClassVar[str] = "kubernetes_stateful_set_status" + kind_display: ClassVar[str] = "Kubernetes Stateful Set Status" + kind_description: ClassVar[str] = "A Kubernetes Stateful Set status." mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "collision_count": S("collisionCount"), @@ -1842,6 +2024,8 @@ class KubernetesStatefulSetStatus: @define class KubernetesStatefulSetSpec: kind: ClassVar[str] = "kubernetes_stateful_set_spec" + kind_display: ClassVar[str] = "Kubernetes Stateful Set Spec" + kind_description: ClassVar[str] = "A Kubernetes Stateful Set spec." mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "pod_management_policy": S("podManagementPolicy"), @@ -1863,6 +2047,8 @@ class KubernetesStatefulSetSpec: @define(eq=False, slots=False) class KubernetesStatefulSet(KubernetesResource): kind: ClassVar[str] = "kubernetes_stateful_set" + kind_display: ClassVar[str] = "Kubernetes Stateful Set" + kind_description: ClassVar[str] = "A Kubernetes Stateful Set." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "stateful_set_status": S("status") >> Bend(KubernetesStatefulSetStatus.mapping), "stateful_set_spec": S("spec") >> Bend(KubernetesStatefulSetSpec.mapping), @@ -1881,6 +2067,8 @@ class KubernetesStatefulSet(KubernetesResource): @define(eq=False, slots=False) class KubernetesHorizontalPodAutoscalerStatus: kind: ClassVar[str] = "kubernetes_horizontal_pod_autoscaler_status" + kind_display: ClassVar[str] = "Kubernetes Horizontal Pod Autoscaler Status" + kind_description: ClassVar[str] = "A Kubernetes Horizontal Pod Autoscaler status." mapping: ClassVar[Dict[str, Bender]] = { "current_cpu_utilization_percentage": S("currentCPUUtilizationPercentage"), "current_replicas": S("currentReplicas"), @@ -1898,6 +2086,8 @@ class KubernetesHorizontalPodAutoscalerStatus: @define class KubernetesCrossVersionObjectReference: kind: ClassVar[str] = "kubernetes_cross_object_reference" + kind_display: ClassVar[str] = "Kubernetes Cross Object Reference" + kind_description: ClassVar[str] = "A Kubernetes cross object reference." mapping: ClassVar[Dict[str, Bender]] = { "api_version": S("apiVersion"), "resource_kind": S("kind"), @@ -1911,6 +2101,8 @@ class KubernetesCrossVersionObjectReference: @define class KubernetesHorizontalPodAutoscalerSpec: kind: ClassVar[str] = "kubernetes_horizontal_pod_autoscaler_spec" + kind_display: ClassVar[str] = "Kubernetes Horizontal Pod Autoscaler Spec" + kind_description: ClassVar[str] = "A Kubernetes Horizontal Pod Autoscaler spec." mapping: ClassVar[Dict[str, Bender]] = { "max_replicas": S("maxReplicas"), "min_replicas": S("minReplicas"), @@ -1926,6 +2118,8 @@ class KubernetesHorizontalPodAutoscalerSpec: @define(eq=False, slots=False) class KubernetesHorizontalPodAutoscaler(KubernetesResource): kind: ClassVar[str] = "kubernetes_horizontal_pod_autoscaler" + kind_display: ClassVar[str] = "Kubernetes Horizontal Pod Autoscaler" + kind_description: ClassVar[str] = "A Kubernetes Horizontal Pod Autoscaler." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "horizontal_pod_autoscaler_status": S("status") >> Bend(KubernetesHorizontalPodAutoscalerStatus.mapping), "horizontal_pod_autoscaler_spec": S("spec") >> Bend(KubernetesHorizontalPodAutoscalerSpec.mapping), @@ -1937,6 +2131,8 @@ class KubernetesHorizontalPodAutoscaler(KubernetesResource): @define(eq=False, slots=False) class KubernetesCronJobStatusActive: kind: ClassVar[str] = "kubernetes_cron_job_status_active" + kind_display: ClassVar[str] = "Kubernetes Cron Job status: active" + kind_description: ClassVar[str] = "An active Kubernetes Cron Job." mapping: ClassVar[Dict[str, Bender]] = { "api_version": S("apiVersion"), "field_path": S("fieldPath"), @@ -1956,6 +2152,8 @@ class KubernetesCronJobStatusActive: @define(eq=False, slots=False) class KubernetesCronJobStatus: kind: ClassVar[str] = "kubernetes_cron_job_status" + kind_display: ClassVar[str] = "Kubernetes Cron Job Status" + kind_description: ClassVar[str] = "A Kubernetes Cron Job status." mapping: ClassVar[Dict[str, Bender]] = { "active": S("active", default=[]) >> ForallBend(KubernetesCronJobStatusActive.mapping), "last_schedule_time": S("lastScheduleTime"), @@ -1969,6 +2167,8 @@ class KubernetesCronJobStatus: @define class KubernetesJobSpec: kind: ClassVar[str] = "kubernetes_job_spec" + kind_display: ClassVar[str] = "Kubernetes Job Spec" + kind_description: ClassVar[str] = "A Kubernetes Job spec." mapping: ClassVar[Dict[str, Bender]] = { "active_deadline_seconds": S("activeDeadlineSeconds"), "backoff_limit": S("backoffLimit"), @@ -1996,6 +2196,8 @@ class KubernetesJobSpec: @define class KubernetesJobTemplateSpec: kind: ClassVar[str] = "kubernetes_job_template_spec" + kind_display: ClassVar[str] = "Kubernetes Job Template Spec" + kind_description: ClassVar[str] = "A Kubernetes Job Template spec." mapping: ClassVar[Dict[str, Bender]] = { "spec": S("spec") >> Bend(KubernetesJobSpec.mapping), } @@ -2005,6 +2207,8 @@ class KubernetesJobTemplateSpec: @define class KubernetesCronJobSpec: kind: ClassVar[str] = "kubernetes_cron_job_spec" + kind_display: ClassVar[str] = "Kubernetes Cron Job Spec" + kind_description: ClassVar[str] = "A Kubernetes Cron Job spec." mapping: ClassVar[Dict[str, Bender]] = { "concurrency_policy": S("concurrencyPolicy"), "failed_jobs_history_limit": S("failedJobsHistoryLimit"), @@ -2028,6 +2232,8 @@ class KubernetesCronJobSpec: @define(eq=False, slots=False) class KubernetesCronJob(KubernetesResource): kind: ClassVar[str] = "kubernetes_cron_job" + kind_display: ClassVar[str] = "Kubernetes Cron Job" + kind_description: ClassVar[str] = "A Kubernetes Cron Job." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "cron_job_status": S("status") >> Bend(KubernetesCronJobStatus.mapping), "cron_job_spec": S("spec") >> Bend(KubernetesCronJobSpec.mapping), @@ -2041,6 +2247,8 @@ class KubernetesCronJob(KubernetesResource): @define(eq=False, slots=False) class KubernetesJobStatusConditions: kind: ClassVar[str] = "kubernetes_job_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Job Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Job status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_probe_time": S("lastProbeTime"), "last_transition_time": S("lastTransitionTime"), @@ -2060,6 +2268,8 @@ class KubernetesJobStatusConditions: @define(eq=False, slots=False) class KubernetesJobStatus: kind: ClassVar[str] = "kubernetes_job_status" + kind_display: ClassVar[str] = "Kubernetes Job Status" + kind_description: ClassVar[str] = "A Kubernetes Job status." mapping: ClassVar[Dict[str, Bender]] = { "active": S("active"), "completed_indexes": S("completedIndexes"), @@ -2085,6 +2295,8 @@ class KubernetesJobStatus: @define(eq=False, slots=False) class KubernetesJob(KubernetesResource): kind: ClassVar[str] = "kubernetes_job" + kind_display: ClassVar[str] = "Kubernetes Job" + kind_description: ClassVar[str] = "A Kubernetes Job." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "job_status": S("status") >> Bend(KubernetesJobStatus.mapping), "job_spec": S("spec") >> Bend(KubernetesJobSpec.mapping), @@ -2100,6 +2312,8 @@ class KubernetesJob(KubernetesResource): @define(eq=False, slots=False) class KubernetesFlowSchemaStatusConditions: kind: ClassVar[str] = "kubernetes_flow_schema_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Flow Schema Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Flow Schema status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2117,6 +2331,8 @@ class KubernetesFlowSchemaStatusConditions: @define(eq=False, slots=False) class KubernetesFlowSchemaStatus: kind: ClassVar[str] = "kubernetes_flow_schema_status" + kind_display: ClassVar[str] = "Kubernetes Flow Schema Status" + kind_description: ClassVar[str] = "A Kubernetes Flow Schema status." mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2154,6 +2370,8 @@ class KubernetesPriorityLevelConfigurationStatusConditions: @define(eq=False, slots=False) class KubernetesPriorityLevelConfigurationStatus: kind: ClassVar[str] = "kubernetes_priority_level_configuration_status" + kind_display: ClassVar[str] = "Kubernetes Priority Level Configuration Status" + kind_description: ClassVar[str] = "A Kubernetes Priority Level Configuration status." mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2165,6 +2383,8 @@ class KubernetesPriorityLevelConfigurationStatus: @define(eq=False, slots=False) class KubernetesPriorityLevelConfiguration(KubernetesResource): kind: ClassVar[str] = "kubernetes_priority_level_configuration" + kind_display: ClassVar[str] = "Kubernetes Priority Level Configuration" + kind_description: ClassVar[str] = "A Kubernetes Priority Level Configuration." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "priority_level_configuration_status": S("status") >> Bend(KubernetesPriorityLevelConfigurationStatus.mapping), } @@ -2174,6 +2394,8 @@ class KubernetesPriorityLevelConfiguration(KubernetesResource): @define(eq=False, slots=False) class KubernetesIngressStatusLoadbalancerIngressPorts: kind: ClassVar[str] = "kubernetes_ingress_status_loadbalancer_ingress_ports" + kind_display: ClassVar[str] = "Kubernetes Ingress Status Loadbalancer Ingress Ports" + kind_description: ClassVar[str] = "Kubernetes Ingress status load balancer ingress ports." mapping: ClassVar[Dict[str, Bender]] = { "error": S("error"), "port": S("port"), @@ -2187,6 +2409,8 @@ class KubernetesIngressStatusLoadbalancerIngressPorts: @define(eq=False, slots=False) class KubernetesIngressStatusLoadbalancerIngress: kind: ClassVar[str] = "kubernetes_ingress_status_loadbalancer_ingress" + kind_display: ClassVar[str] = "Kubernetes Ingress Status Loadbalancer Ingress" + kind_description: ClassVar[str] = "A Kubernetes Ingress status load balancer ingress." mapping: ClassVar[Dict[str, Bender]] = { "hostname": S("hostname"), "ip": S("ip"), @@ -2200,6 +2424,8 @@ class KubernetesIngressStatusLoadbalancerIngress: @define(eq=False, slots=False) class KubernetesIngressStatusLoadbalancer: kind: ClassVar[str] = "kubernetes_ingress_status_loadbalancer" + kind_display: ClassVar[str] = "Kubernetes Ingress Status Loadbalancer" + kind_description: ClassVar[str] = "A Kubernetes Ingress status load balancer." mapping: ClassVar[Dict[str, Bender]] = { "ingress": S("ingress", default=[]) >> ForallBend(KubernetesIngressStatusLoadbalancerIngress.mapping), } @@ -2209,6 +2435,8 @@ class KubernetesIngressStatusLoadbalancer: @define(eq=False, slots=False) class KubernetesIngressStatus: kind: ClassVar[str] = "kubernetes_ingress_status" + kind_display: ClassVar[str] = "Kubernetes Ingress Status" + kind_description: ClassVar[str] = "A Kubernetes Ingress status." mapping: ClassVar[Dict[str, Bender]] = { "load_balancer": S("loadBalancer") >> Bend(KubernetesIngressStatusLoadbalancer.mapping), } @@ -2218,6 +2446,8 @@ class KubernetesIngressStatus: @define class KubernetesIngressRule: kind: ClassVar[str] = "kubernetes_ingress_rule" + kind_display: ClassVar[str] = "Kubernetes Ingress Rule" + kind_description: ClassVar[str] = "A Kubernetes Ingress rule." mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "http": S("http"), @@ -2229,6 +2459,8 @@ class KubernetesIngressRule: @define class KubernetesIngressTLS: kind: ClassVar[str] = "kubernetes_ingress_tls" + kind_display: ClassVar[str] = "Kubernetes Ingress TLS" + kind_description: ClassVar[str] = "A Kubernetes Ingress TLS." mapping: ClassVar[Dict[str, Bender]] = { "hosts": S("hosts", default=[]), "secret_name": S("secretName"), @@ -2240,6 +2472,8 @@ class KubernetesIngressTLS: @define class KubernetesIngressSpec: kind: ClassVar[str] = "kubernetes_ingress_spec" + kind_display: ClassVar[str] = "Kubernetes Ingress Spec" + kind_description: ClassVar[str] = "A Kubernetes Ingress spec." mapping: ClassVar[Dict[str, Bender]] = { "ingress_class_name": S("ingressClassName"), "rules": S("rules", default=[]) >> ForallBend(KubernetesIngressRule.mapping), @@ -2276,6 +2510,8 @@ def get_backend_service_names(json: Json) -> List[str]: @define(eq=False, slots=False) class KubernetesIngress(KubernetesResource, BaseLoadBalancer): kind: ClassVar[str] = "kubernetes_ingress" + kind_display: ClassVar[str] = "Kubernetes Ingress" + kind_description: ClassVar[str] = "A Kubernetes Ingress." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "ingress_status": S("status") >> Bend(KubernetesIngressStatus.mapping), "public_ip_address": S("status", "loadBalancer", "ingress", default=[])[0]["ip"], @@ -2323,12 +2559,16 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class KubernetesIngressClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_ingress_class" + kind_display: ClassVar[str] = "Kubernetes Ingress Class" + kind_description: ClassVar[str] = "A Kubernetes Ingress class." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | {} @define(eq=False, slots=False) class KubernetesNetworkPolicyStatusConditions: kind: ClassVar[str] = "kubernetes_network_policy_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Network Policy Status Conditions" + kind_description: ClassVar[str] = "A Kubernetes Network Policy status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2348,6 +2588,8 @@ class KubernetesNetworkPolicyStatusConditions: @define(eq=False, slots=False) class KubernetesNetworkPolicyStatus: kind: ClassVar[str] = "kubernetes_network_policy_status" + kind_display: ClassVar[str] = "Kubernetes Network Policy Status" + kind_description: ClassVar[str] = "A Kubernetes Network Policy status." mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2359,6 +2601,8 @@ class KubernetesNetworkPolicyStatus: @define(eq=False, slots=False) class KubernetesNetworkPolicy(KubernetesResource): kind: ClassVar[str] = "kubernetes_network_policy" + kind_display: ClassVar[str] = "Kubernetes Network Policy" + kind_description: ClassVar[str] = "A Kubernetes Network Policy." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "network_policy_status": S("status") >> Bend(KubernetesNetworkPolicyStatus.mapping), } @@ -2368,12 +2612,16 @@ class KubernetesNetworkPolicy(KubernetesResource): @define(eq=False, slots=False) class KubernetesRuntimeClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_runtime_class" + kind_display: ClassVar[str] = "Kubernetes Runtime Class" + kind_description: ClassVar[str] = "A Kubernetes Runtime class." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | {} @define(eq=False, slots=False) class KubernetesPodDisruptionBudgetStatusConditions: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Status Conditions" + kind_description: ClassVar[str] = "Kubernetes Pod Disruption Budget status conditions." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2393,6 +2641,8 @@ class KubernetesPodDisruptionBudgetStatusConditions: @define(eq=False, slots=False) class KubernetesPodDisruptionBudgetStatus: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_status" + kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Status" + kind_description: ClassVar[str] = "A Kubernetes Pod Disruption Budget status." mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2416,6 +2666,8 @@ class KubernetesPodDisruptionBudgetStatus: @define class KubernetesPodDisruptionBudgetSpec: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_spec" + kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Spec" + kind_description: ClassVar[str] = "A Kubernetes Pod Disruption Budget spec." mapping: ClassVar[Dict[str, Bender]] = { "max_unavailable": S("maxUnavailable"), "min_available": S("minAvailable"), @@ -2429,6 +2681,8 @@ class KubernetesPodDisruptionBudgetSpec: @define(eq=False, slots=False) class KubernetesPodDisruptionBudget(KubernetesResource): kind: ClassVar[str] = "kubernetes_pod_disruption_budget" + kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget" + kind_description: ClassVar[str] = "A Kubernetes Pod Disruption Budget." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "pod_disruption_budget_status": S("status") >> Bend(KubernetesPodDisruptionBudgetStatus.mapping), "pod_disruption_budget_spec": S("spec") >> Bend(KubernetesPodDisruptionBudgetSpec.mapping), @@ -2440,51 +2694,71 @@ class KubernetesPodDisruptionBudget(KubernetesResource): @define(eq=False, slots=False) class KubernetesClusterRole(KubernetesResource): kind: ClassVar[str] = "kubernetes_cluster_role" + kind_display: ClassVar[str] = "Kubernetes Cluster Role" + kind_description: ClassVar[str] = "A Kubernetes Cluster Role." @define(eq=False, slots=False) class KubernetesClusterRoleBinding(KubernetesResource): kind: ClassVar[str] = "kubernetes_cluster_role_binding" + kind_display: ClassVar[str] = "Kubernetes Cluster Role Binding" + kind_description: ClassVar[str] = "A Kubernetes Cluster Role Binding." @define(eq=False, slots=False) class KubernetesRole(KubernetesResource): kind: ClassVar[str] = "kubernetes_role" + kind_display: ClassVar[str] = "Kubernetes Role" + kind_description: ClassVar[str] = "A Kubernetes Role." @define(eq=False, slots=False) class KubernetesRoleBinding(KubernetesResource): kind: ClassVar[str] = "kubernetes_role_binding" + kind_display: ClassVar[str] = "Kubernetes Role Binding" + kind_description: ClassVar[str] = "A Kubernetes Role Binding." @define(eq=False, slots=False) class KubernetesPriorityClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_priority_class" + kind_display: ClassVar[str] = "Kubernetes Priority Class" + kind_description: ClassVar[str] = "A Kubernetes Priority Class." @define(eq=False, slots=False) class KubernetesCSIDriver(KubernetesResource): kind: ClassVar[str] = "kubernetes_csi_driver" + kind_display: ClassVar[str] = "Kubernetes CSI Driver" + kind_description: ClassVar[str] = "A Kubernetes CSI Driver." @define(eq=False, slots=False) class KubernetesCSINode(KubernetesResource): kind: ClassVar[str] = "kubernetes_csi_node" + kind_display: ClassVar[str] = "Kubernetes CSI Node" + kind_description: ClassVar[str] = "A Kubernetes CSI Node." @define(eq=False, slots=False) class KubernetesCSIStorageCapacity(KubernetesResource): kind: ClassVar[str] = "kubernetes_csi_storage_capacity" + kind_display: ClassVar[str] = "Kubernetes CSI Storage Capacity" + kind_description: ClassVar[str] = "Kubernetes CSI Storage Capacity." @define(eq=False, slots=False) class KubernetesStorageClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_storage_class" + kind_display: ClassVar[str] = "Kubernetes Storage Class" + kind_description: ClassVar[str] = "A Kubernetes Storage Class." @define(eq=False, slots=False) class KubernetesVolumeError: kind: ClassVar[str] = "kubernetes_volume_error" + kind_display: ClassVar[str] = "Kubernetes Volume Error" + kind_description: ClassVar[str] = "A Kubernetes Volume error." mapping: ClassVar[Dict[str, Bender]] = { "message": S("message"), "time": S("time"), @@ -2496,6 +2770,8 @@ class KubernetesVolumeError: @define(eq=False, slots=False) class KubernetesVolumeAttachmentStatus: kind: ClassVar[str] = "kubernetes_volume_attachment_status" + kind_display: ClassVar[str] = "Kubernetes Volume Attachment Status" + kind_description: ClassVar[str] = "A Kubernetes Volume Attachment status." mapping: ClassVar[Dict[str, Bender]] = { "attach_error": S("attachError") >> Bend(KubernetesVolumeError.mapping), "attached": S("attached"), @@ -2511,6 +2787,8 @@ class KubernetesVolumeAttachmentStatus: @define class KubernetesVolumeAttachmentSpec: kind: ClassVar[str] = "kubernetes_volume_attachment_spec" + kind_display: ClassVar[str] = "Kubernetes Volume Attachment Spec" + kind_description: ClassVar[str] = "A Kubernetes Volume Attachment spec." mapping: ClassVar[Dict[str, Bender]] = { "attacher": S("attacher"), "node_name": S("nodeName"), @@ -2524,6 +2802,8 @@ class KubernetesVolumeAttachmentSpec: @define(eq=False, slots=False) class KubernetesVolumeAttachment(KubernetesResource): kind: ClassVar[str] = "kubernetes_volume_attachment" + kind_display: ClassVar[str] = "Kubernetes Volume Attachment" + kind_description: ClassVar[str] = "A Kubernetes Volume Attachment." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "volume_attachment_status": S("status") >> Bend(KubernetesVolumeAttachmentStatus.mapping), "volume_attachment_spec": S("spec") >> Bend(KubernetesVolumeAttachmentSpec.mapping), From fbf254a1aeb6477d3fd0f7a674cc565a5c28401d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 23:12:10 +0100 Subject: [PATCH 08/27] Update DigitalOcean Descriptions --- .../resoto_plugin_digitalocean/resources.py | 34 ++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py index f59987584a..0e6a6bfecd 100644 --- a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py +++ b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py @@ -45,7 +45,7 @@ class DigitalOceanResource(BaseResource): kind: ClassVar[str] = "digitalocean_resource" kind_display: ClassVar[str] = "DigitalOcean Resource" - kind_description: ClassVar[str] = "A DigitalOcean Resource." + kind_description: ClassVar[str] = "" urn: str = "" def delete_uri_path(self) -> Optional[str]: @@ -86,7 +86,7 @@ class DigitalOceanTeam(DigitalOceanResource, BaseAccount): kind: ClassVar[str] = "digitalocean_team" kind_display: ClassVar[str] = "DigitalOcean Team" - kind_description: ClassVar[str] = "A DigitalOcean Team." + kind_description: ClassVar[str] = "A team is a group of users within DigitalOcean that can collaborate on projects and share resources." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -126,7 +126,7 @@ class DigitalOceanRegion(DigitalOceanResource, BaseRegion): kind: ClassVar[str] = "digitalocean_region" kind_display: ClassVar[str] = "DigitalOcean Region" - kind_description: ClassVar[str] = "A DigitalOcean Region." + kind_description: ClassVar[str] = "A region in DigitalOcean's cloud infrastructure where resources such as droplets, volumes, and networks can be deployed." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -158,7 +158,7 @@ class DigitalOceanProject(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_project" kind_display: ClassVar[str] = "DigitalOcean Project" - kind_description: ClassVar[str] = "A DigitalOcean Project." + kind_description: ClassVar[str] = "A DigitalOcean Project is a flexible way to organize and manage resources in the DigitalOcean cloud platform." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -199,7 +199,7 @@ def delete_uri_path(self) -> Optional[str]: class DigitalOceanDropletSize(DigitalOceanResource, BaseInstanceType): kind: ClassVar[str] = "digitalocean_droplet_size" kind_display: ClassVar[str] = "DigitalOcean Droplet Size" - kind_description: ClassVar[str] = "The DigitalOcean Droplet Size." + kind_description: ClassVar[str] = "Droplet Sizes are different configurations of virtual private servers (Droplets) provided by DigitalOcean with varying amounts of CPU, memory, and storage." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -220,7 +220,7 @@ class DigitalOceanDroplet(DigitalOceanResource, BaseInstance): kind: ClassVar[str] = "digitalocean_droplet" kind_display: ClassVar[str] = "DigitalOcean Droplet" - kind_description: ClassVar[str] = "A DigitalOcean Droplet." + kind_description: ClassVar[str] = "A DigitalOcean Droplet is a virtual machine instance that can be provisioned and managed on the DigitalOcean cloud platform." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -253,7 +253,7 @@ class DigitalOceanDropletNeighborhood(DigitalOceanResource, PhantomBaseResource) kind: ClassVar[str] = "digitalocean_droplet_neighborhood" kind_display: ClassVar[str] = "DigitalOcean Droplet Neighborhood" - kind_description: ClassVar[str] = "A DigitalOcean Droplet Neighborhood." + kind_description: ClassVar[str] = "Droplet Neighborhood is a feature in DigitalOcean that allows users to deploy Droplets (virtual machines) in the same datacenter to achieve low latency communication and high reliability." droplets: Optional[List[str]] = None @@ -263,7 +263,7 @@ class DigitalOceanKubernetesCluster(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_kubernetes_cluster" kind_display: ClassVar[str] = "DigitalOcean Kubernetes Cluster" - kind_description: ClassVar[str] = "A DigitalOcean Kubernetes Cluster." + kind_description: ClassVar[str] = "A Kubernetes cluster hosted on the DigitalOcean cloud platform, providing managed container orchestration and scalability." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -289,6 +289,8 @@ def delete_uri_path(self) -> Optional[str]: @define(eq=False, slots=False) class DigitalOceanVolume(DigitalOceanResource, BaseVolume): kind: ClassVar[str] = "digitalocean_volume" + kind_display: ClassVar[str] = "DigitalOcean Volume" + kind_description: ClassVar[str] = "DigitalOcean Volume is a block storage service provided by DigitalOcean that allows users to attach additional storage to their Droplets." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_snapshot"], @@ -322,7 +324,7 @@ def tag_resource_name(self) -> Optional[str]: class DigitalOceanDatabase(DigitalOceanResource, BaseDatabase): kind: ClassVar[str] = "digitalocean_database" kind_display: ClassVar[str] = "DigitalOcean Database" - kind_description: ClassVar[str] = "A DigitalOcean Database." + kind_description: ClassVar[str] = "A database service provided by DigitalOcean that allows users to store and manage their data." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_app"], @@ -346,7 +348,7 @@ class DigitalOceanVPC(DigitalOceanResource, BaseNetwork): kind: ClassVar[str] = "digitalocean_vpc" kind_display: ClassVar[str] = "DigitalOcean VPC" - kind_description: ClassVar[str] = "A DigitalOcean VPC." + kind_description: ClassVar[str] = "A Virtual Private Cloud (VPC) is a virtual network dedicated to your DigitalOcean account. It allows you to isolate your resources and securely connect them to other resources within your account." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -377,7 +379,7 @@ class DigitalOceanSnapshot(DigitalOceanResource, BaseSnapshot): kind: ClassVar[str] = "digitalocean_snapshot" kind_display: ClassVar[str] = "DigitalOcean Snapshot" - kind_description: ClassVar[str] = "A DigitalOcean Snapshot." + kind_description: ClassVar[str] = "DigitalOcean Snapshots are point-in-time copies of your Droplets (virtual machines) that can be used for creating new Droplets or restoring existing ones." snapshot_size_gigabytes: Optional[int] = None resource_id: Optional[str] = None resource_type: Optional[str] = None @@ -395,7 +397,7 @@ class DigitalOceanLoadBalancer(DigitalOceanResource, BaseLoadBalancer): kind: ClassVar[str] = "digitalocean_load_balancer" kind_display: ClassVar[str] = "DigitalOcean Load Balancer" - kind_description: ClassVar[str] = "A DigitalOcean Load Balancer." + kind_description: ClassVar[str] = "A load balancer service provided by DigitalOcean that distributes incoming network traffic across multiple servers to ensure high availability and reliability." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -420,7 +422,7 @@ class DigitalOceanFloatingIP(DigitalOceanResource, BaseIPAddress): kind: ClassVar[str] = "digitalocean_floating_ip" kind_display: ClassVar[str] = "DigitalOcean Floating IP" - kind_description: ClassVar[str] = "A DigitalOcean Floating IP." + kind_description: ClassVar[str] = "A DigitalOcean Floating IP is a static IP address that can be easily reassigned between DigitalOcean Droplets, providing flexibility and high availability for your applications." is_locked: Optional[bool] = None @@ -447,7 +449,7 @@ class DigitalOceanImage(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_image" kind_display: ClassVar[str] = "DigitalOcean Image" - kind_description: ClassVar[str] = "A DigitalOcean Image." + kind_description: ClassVar[str] = "A DigitalOcean Image is a template for creating virtual machines (known as Droplets) on the DigitalOcean cloud platform." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -477,7 +479,7 @@ class DigitalOceanSpace(DigitalOceanResource, BaseBucket): kind: ClassVar[str] = "digitalocean_space" kind_display: ClassVar[str] = "DigitalOcean Space" - kind_description: ClassVar[str] = "A DigitalOcean Space." + kind_description: ClassVar[str] = "DigitalOcean Spaces is an object storage service that allows you to store and serve large amounts of unstructured data." def delete(self, graph: Graph) -> bool: log.debug(f"Deleting space {self.id} in account {self.account(graph).id} region {self.region(graph).id}") @@ -500,7 +502,7 @@ class DigitalOceanApp(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_app" kind_display: ClassVar[str] = "DigitalOcean App" - kind_description: ClassVar[str] = "A DigitalOcean App." + kind_description: ClassVar[str] = "DigitalOcean App is a platform that allows users to deploy and manage applications on DigitalOcean's cloud infrastructure." tier_slug: Optional[str] = None default_ingress: Optional[str] = None From cc6b5d9fde3661eafecbb6dff52f5e1c26862e66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 23:12:50 +0100 Subject: [PATCH 09/27] Update vSphere Descriptions --- .../resoto_plugin_vsphere/resources.py | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/plugins/vsphere/resoto_plugin_vsphere/resources.py b/plugins/vsphere/resoto_plugin_vsphere/resources.py index b1d38e010a..60a035e192 100644 --- a/plugins/vsphere/resoto_plugin_vsphere/resources.py +++ b/plugins/vsphere/resoto_plugin_vsphere/resources.py @@ -19,7 +19,7 @@ class VSphereHost(BaseAccount): kind: ClassVar[str] = "vsphere_host" kind_display: ClassVar[str] = "vSphere Host" - kind_description: ClassVar[str] = "A vSphere Host." + kind_description: ClassVar[str] = "vSphere Host is a physical server that runs the VMware vSphere hypervisor, allowing for virtualization and management of multiple virtual machines." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -29,7 +29,7 @@ def delete(self, graph: Graph) -> bool: class VSphereDataCenter(BaseRegion): kind: ClassVar[str] = "vsphere_data_center" kind_display: ClassVar[str] = "vSphere Data Center" - kind_description: ClassVar[str] = "A vSphere Data Center." + kind_description: ClassVar[str] = "vSphere Data Center is a virtualization platform provided by VMware for managing and organizing virtual resources in a data center environment." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -39,7 +39,7 @@ def delete(self, graph: Graph) -> bool: class VSphereCluster(BaseZone): kind: ClassVar[str] = "vsphere_cluster" kind_display: ClassVar[str] = "vSphere Cluster" - kind_description: ClassVar[str] = "A vSphere Cluster." + kind_description: ClassVar[str] = "A vSphere Cluster is a group of ESXi hosts that work together to provide resource pooling and high availability for virtual machines." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -49,7 +49,7 @@ def delete(self, graph: Graph) -> bool: class VSphereESXiHost(BaseResource): kind: ClassVar[str] = "vsphere_esxi_host" kind_display: ClassVar[str] = "vSphere ESXi Host" - kind_description: ClassVar[str] = "A vSphere ESXi Host." + kind_description: ClassVar[str] = "vSphere ESXi Host is a virtualization platform by VMware which allows users to run multiple virtual machines on a single physical server." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -58,8 +58,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereDataStore(BaseResource): kind: ClassVar[str] = "vsphere_datastore" - kind_display: ClassVar[str] = "vSphere Data Store" - kind_description: ClassVar[str] = "A vSphere Data Store." + kind_display: ClassVar[str] = "vSphere Datastore" + kind_description: ClassVar[str] = "vSphere Datastore is a storage abstraction layer used in VMware vSphere to manage and store virtual machine files and templates." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -68,8 +68,8 @@ def delete(self, graph: Graph) -> bool: @define(eq=False, slots=False) class VSphereDataStoreCluster(BaseResource): kind: ClassVar[str] = "vsphere_datastore_cluster" - kind_display: ClassVar[str] = "vSphere Data Store Cluster" - kind_description: ClassVar[str] = "A vSphere Data Store Cluster." + kind_display: ClassVar[str] = "vSphere Datastore Cluster" + kind_description: ClassVar[str] = "vSphere Datastore Cluster is a feature in VMware's virtualization platform that allows users to combine multiple storage resources into a single datastore cluster, providing advanced management and high availability for virtual machine storage." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -79,7 +79,7 @@ def delete(self, graph: Graph) -> bool: class VSphereResourcePool(BaseResource): kind: ClassVar[str] = "vsphere_resource_pool" kind_display: ClassVar[str] = "vSphere Resource Pool" - kind_description: ClassVar[str] = "A vSphere Resource Pool." + kind_description: ClassVar[str] = "vSphere Resource Pool is a feature in VMware's vSphere virtualization platform that allows for the efficient allocation and management of CPU, memory, and storage resources in a virtual datacenter." def delete(self, graph: Graph) -> bool: return NotImplemented @@ -89,7 +89,7 @@ def delete(self, graph: Graph) -> bool: class VSphereResource: kind: ClassVar[str] = "vsphere_resource" kind_display: ClassVar[str] = "vSphere Resource" - kind_description: ClassVar[str] = "A vSphere Resource." + kind_description: ClassVar[str] = "vSphere is a virtualization platform by VMware that allows users to create, manage, and run virtual machines and other virtual infrastructure components." def _vsphere_client(self) -> VSphereClient: return get_vsphere_client() @@ -99,7 +99,7 @@ def _vsphere_client(self) -> VSphereClient: class VSphereInstance(BaseInstance, VSphereResource): kind: ClassVar[str] = "vsphere_instance" kind_display: ClassVar[str] = "vSphere Instance" - kind_description: ClassVar[str] = "A vSphere Instance." + kind_description: ClassVar[str] = "vSphere Instances are virtual servers in VMware's cloud infrastructure, enabling users to run applications on VMware's virtualization platform." def _vm(self): return self._vsphere_client().get_object([vim.VirtualMachine], self.name) @@ -136,7 +136,7 @@ def delete_tag(self, key) -> bool: class VSphereTemplate(BaseResource, VSphereResource): kind: ClassVar[str] = "vsphere_template" kind_display: ClassVar[str] = "vSphere Template" - kind_description: ClassVar[str] = "A vSphere Template." + kind_description: ClassVar[str] = "vSphere templates are pre-configured virtual machine images that can be used to deploy and scale virtual infrastructure within the VMware vSphere platform." def _get_default_resource_pool(self) -> vim.ResourcePool: return self._vsphere_client().get_object([vim.ResourcePool], "Resources") From ad4b3ec62c03083c6c409d584f217bd6740d5521 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 23:19:15 +0100 Subject: [PATCH 10/27] Update GCP Descriptions --- .../gcp/resoto_plugin_gcp/resources/base.py | 14 + .../resoto_plugin_gcp/resources/billing.py | 22 + .../resoto_plugin_gcp/resources/compute.py | 498 ++++++++++++++++++ .../resoto_plugin_gcp/resources/container.py | 116 ++++ .../resoto_plugin_gcp/resources/sqladmin.py | 78 +++ .../resoto_plugin_gcp/resources/storage.py | 34 ++ 6 files changed, 762 insertions(+) diff --git a/plugins/gcp/resoto_plugin_gcp/resources/base.py b/plugins/gcp/resoto_plugin_gcp/resources/base.py index f0257ac758..2d2c118dc0 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/base.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/base.py @@ -259,6 +259,8 @@ def for_region(self, region: GcpRegion) -> GraphBuilder: @define(eq=False, slots=False) class GcpResource(BaseResource): kind: ClassVar[str] = "gcp_resource" + kind_display: ClassVar[str] = "GCP Resource" + kind_description: ClassVar[str] = "GCP Resource refers to any resource or service available on the Google Cloud Platform, such as virtual machines, databases, storage buckets, and networking components." api_spec: ClassVar[Optional[GcpApiSpec]] = None mapping: ClassVar[Dict[str, Bender]] = {} @@ -407,11 +409,15 @@ def called_mutator_apis(cls) -> List[GcpApiSpec]: @define(eq=False, slots=False) class GcpProject(GcpResource, BaseAccount): kind: ClassVar[str] = "gcp_project" + kind_display: ClassVar[str] = "GCP Project" + kind_description: ClassVar[str] = "A GCP Project is a container for resources in the Google Cloud Platform, allowing users to organize and manage their cloud resources." @define(eq=False, slots=False) class GcpDeprecationStatus: kind: ClassVar[str] = "gcp_deprecation_status" + kind_display: ClassVar[str] = "GCP Deprecation Status" + kind_description: ClassVar[str] = "GCP Deprecation Status is a feature in Google Cloud Platform that provides information about the deprecation status of various resources and services, helping users stay updated on any upcoming changes or removals." mapping: ClassVar[Dict[str, Bender]] = { "deleted": S("deleted"), "deprecated": S("deprecated"), @@ -429,6 +435,8 @@ class GcpDeprecationStatus: @define(eq=False, slots=False) class GcpLimit: kind: ClassVar[str] = "gcp_quota" + kind_display: ClassVar[str] = "GCP Quota" + kind_description: ClassVar[str] = "Quota in GCP (Google Cloud Platform) represents the maximum limit of resources that can be used for a particular service, such as compute instances, storage, or API calls. It ensures resource availability and helps manage usage and costs." mapping: ClassVar[Dict[str, Bender]] = { "limit": S("limit"), "usage": S("usage"), @@ -442,6 +450,8 @@ class GcpLimit: @define(eq=False, slots=False) class GcpRegionQuota(GcpResource): kind: ClassVar[str] = "gcp_region_quota" + kind_display: ClassVar[str] = "GCP Region Quota" + kind_description: ClassVar[str] = "Region Quota in GCP refers to the maximum limits of resources that can be provisioned in a specific region, such as compute instances, storage, or networking resources." mapping: ClassVar[Dict[str, Bender]] = { "id": S("name").or_else(S("id")).or_else(S("selfLink")), "name": S("name"), @@ -457,6 +467,8 @@ class GcpRegionQuota(GcpResource): @define(eq=False, slots=False) class GcpRegion(GcpResource, BaseRegion): kind: ClassVar[str] = "gcp_region" + kind_display: ClassVar[str] = "GCP Region" + kind_description: ClassVar[str] = "A GCP Region is a specific geographical location where Google Cloud Platform resources are deployed and run." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -502,6 +514,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpZone(GcpResource, BaseZone): kind: ClassVar[str] = "gcp_zone" + kind_display: ClassVar[str] = "GCP Zone" + kind_description: ClassVar[str] = "A GCP Zone is a specific geographic location where Google Cloud Platform resources can be deployed. Zones are isolated from each other within a region, providing fault tolerance and high availability for applications and services." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/billing.py b/plugins/gcp/resoto_plugin_gcp/resources/billing.py index 70ce09bddf..dfcd716ab0 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/billing.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/billing.py @@ -17,6 +17,8 @@ @define(eq=False, slots=False) class GcpBillingAccount(GcpResource): kind: ClassVar[str] = "gcp_billing_account" + kind_display: ClassVar[str] = "GCP Billing Account" + kind_description: ClassVar[str] = "GCP Billing Account is a financial account used to manage the payment and billing information for Google Cloud Platform services." reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["gcp_project_billing_info"]}, } @@ -62,6 +64,8 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: @define(eq=False, slots=False) class GcpProjectBillingInfo(GcpResource): kind: ClassVar[str] = "gcp_project_billing_info" + kind_display: ClassVar[str] = "GCP Project Billing Info" + kind_description: ClassVar[str] = "GCP Project Billing Info provides information and management capabilities for the billing aspects of a Google Cloud Platform project." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="cloudbilling", version="v1", @@ -97,6 +101,8 @@ class GcpProjectBillingInfo(GcpResource): @define(eq=False, slots=False) class GcpService(GcpResource): kind: ClassVar[str] = "gcp_service" + kind_display: ClassVar[str] = "GCP Service" + kind_description: ClassVar[str] = "GCP Service refers to any of the various services and products offered by Google Cloud Platform, which provide scalable cloud computing solutions for businesses and developers." reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["gcp_sku"]}, } @@ -158,6 +164,8 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: @define(eq=False, slots=False) class GcpCategory: kind: ClassVar[str] = "gcp_category" + kind_display: ClassVar[str] = "GCP Category" + kind_description: ClassVar[str] = "GCP Category is a classification system used by Google Cloud Platform to organize various cloud resources and services into different categories." mapping: ClassVar[Dict[str, Bender]] = { "resource_family": S("resourceFamily"), "resource_group": S("resourceGroup"), @@ -173,6 +181,8 @@ class GcpCategory: @define(eq=False, slots=False) class GcpGeoTaxonomy: kind: ClassVar[str] = "gcp_geo_taxonomy" + kind_display: ClassVar[str] = "GCP Geo Taxonomy" + kind_description: ClassVar[str] = "GCP Geo Taxonomy is a resource in Google Cloud Platform that provides a hierarchical taxonomy for geographic locations, ensuring consistent and accurate data for geospatial analysis and visualization." mapping: ClassVar[Dict[str, Bender]] = {"regions": S("regions", default=[]), "type": S("type")} regions: List[str] = field(factory=list) type: Optional[str] = field(default=None) @@ -181,6 +191,8 @@ class GcpGeoTaxonomy: @define(eq=False, slots=False) class GcpAggregationInfo: kind: ClassVar[str] = "gcp_aggregation_info" + kind_display: ClassVar[str] = "GCP Aggregation Info" + kind_description: ClassVar[str] = "GCP Aggregation Info refers to aggregated data about resources in Google Cloud Platform, providing insights and metrics for monitoring and analysis purposes." mapping: ClassVar[Dict[str, Bender]] = { "aggregation_count": S("aggregationCount"), "aggregation_interval": S("aggregationInterval"), @@ -194,6 +206,8 @@ class GcpAggregationInfo: @define(eq=False, slots=False) class GcpMoney: kind: ClassVar[str] = "gcp_money" + kind_display: ClassVar[str] = "GCP Money" + kind_description: ClassVar[str] = "Sorry, there is no known resource or service called GCP Money." mapping: ClassVar[Dict[str, Bender]] = { "currency_code": S("currencyCode"), "nanos": S("nanos"), @@ -207,6 +221,8 @@ class GcpMoney: @define(eq=False, slots=False) class GcpTierRate: kind: ClassVar[str] = "gcp_tier_rate" + kind_display: ClassVar[str] = "GCP Tier Rate" + kind_description: ClassVar[str] = "GCP Tier Rate refers to the pricing tiers for different levels of usage of Google Cloud Platform services. Higher tiers typically offer discounted rates for increased usage volumes." mapping: ClassVar[Dict[str, Bender]] = { "start_usage_amount": S("startUsageAmount"), "unit_price": S("unitPrice", default={}) >> Bend(GcpMoney.mapping), @@ -218,6 +234,8 @@ class GcpTierRate: @define(eq=False, slots=False) class GcpPricingExpression: kind: ClassVar[str] = "gcp_pricing_expression" + kind_display: ClassVar[str] = "GCP Pricing Expression" + kind_description: ClassVar[str] = "GCP Pricing Expression is a mechanism used in Google Cloud Platform to calculate the cost of resources and services based on configuration and usage." mapping: ClassVar[Dict[str, Bender]] = { "base_unit": S("baseUnit"), "base_unit_conversion_factor": S("baseUnitConversionFactor"), @@ -239,6 +257,8 @@ class GcpPricingExpression: @define(eq=False, slots=False) class GcpPricingInfo: kind: ClassVar[str] = "gcp_pricing_info" + kind_display: ClassVar[str] = "GCP Pricing Info" + kind_description: ClassVar[str] = "GCP Pricing Info provides information on the pricing models and costs associated with using Google Cloud Platform services." mapping: ClassVar[Dict[str, Bender]] = { "aggregation_info": S("aggregationInfo", default={}) >> Bend(GcpAggregationInfo.mapping), "currency_conversion_rate": S("currencyConversionRate"), @@ -256,6 +276,8 @@ class GcpPricingInfo: @define(eq=False, slots=False) class GcpSku(GcpResource): kind: ClassVar[str] = "gcp_sku" + kind_display: ClassVar[str] = "GCP SKU" + kind_description: ClassVar[str] = "GCP SKU represents a Stock Keeping Unit in Google Cloud Platform, providing unique identifiers for different resources and services." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="cloudbilling", version="v1", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/compute.py b/plugins/gcp/resoto_plugin_gcp/resources/compute.py index 698e5707f2..d22b26140f 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/compute.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/compute.py @@ -33,6 +33,8 @@ def health_check_types() -> Tuple[Type[GcpResource], ...]: @define(eq=False, slots=False) class GcpAcceleratorType(GcpResource): kind: ClassVar[str] = "gcp_accelerator_type" + kind_display: ClassVar[str] = "GCP Accelerator Type" + kind_description: ClassVar[str] = "GCP Accelerator Types are specialized hardware accelerators offered by Google Cloud Platform (GCP) that are designed to enhance the performance of certain workloads, such as machine learning models or graphics processing." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -61,6 +63,8 @@ class GcpAcceleratorType(GcpResource): @define(eq=False, slots=False) class GcpAddress(GcpResource): kind: ClassVar[str] = "gcp_address" + kind_display: ClassVar[str] = "GCP Address" + kind_description: ClassVar[str] = "GCP Address is a resource in Google Cloud Platform that provides a static IP address for virtual machine instances or other resources within the Google Cloud network." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_subnetwork"]}, "successors": { @@ -120,6 +124,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpAutoscalingPolicyCpuUtilization: kind: ClassVar[str] = "gcp_autoscaling_policy_cpu_utilization" + kind_display: ClassVar[str] = "GCP Autoscaling Policy - CPU Utilization" + kind_description: ClassVar[str] = "GCP Autoscaling Policy - CPU Utilization is a resource in Google Cloud Platform that allows for automatic scaling of resources based on CPU utilization metrics. This helps optimize resource allocation and ensures optimal performance." mapping: ClassVar[Dict[str, Bender]] = { "predictive_method": S("predictiveMethod"), "utilization_target": S("utilizationTarget"), @@ -131,6 +137,8 @@ class GcpAutoscalingPolicyCpuUtilization: @define(eq=False, slots=False) class GcpAutoscalingPolicyCustomMetricUtilization: kind: ClassVar[str] = "gcp_autoscaling_policy_custom_metric_utilization" + kind_display: ClassVar[str] = "GCP Autoscaling Policy Custom Metric Utilization" + kind_description: ClassVar[str] = "GCP Autoscaling Policy Custom Metric Utilization is a feature in Google Cloud Platform that allows users to define custom metrics to automatically scale resources based on specific utilization levels." mapping: ClassVar[Dict[str, Bender]] = { "filter": S("filter"), "metric": S("metric"), @@ -148,6 +156,8 @@ class GcpAutoscalingPolicyCustomMetricUtilization: @define(eq=False, slots=False) class GcpFixedOrPercent: kind: ClassVar[str] = "gcp_fixed_or_percent" + kind_display: ClassVar[str] = "GCP Fixed or Percent" + kind_description: ClassVar[str] = "GCP Fixed or Percent is a pricing model in Google Cloud Platform where users can choose to pay a fixed cost or a percentage of the actual usage for a particular resource or service." mapping: ClassVar[Dict[str, Bender]] = {"calculated": S("calculated"), "fixed": S("fixed"), "percent": S("percent")} calculated: Optional[int] = field(default=None) fixed: Optional[int] = field(default=None) @@ -157,6 +167,8 @@ class GcpFixedOrPercent: @define(eq=False, slots=False) class GcpAutoscalingPolicyScaleInControl: kind: ClassVar[str] = "gcp_autoscaling_policy_scale_in_control" + kind_display: ClassVar[str] = "GCP Autoscaling Policy Scale In Control" + kind_description: ClassVar[str] = "The GCP Autoscaling Policy Scale In Control allows users to control how instances are scaled in during autoscaling events in the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "max_scaled_in_replicas": S("maxScaledInReplicas", default={}) >> Bend(GcpFixedOrPercent.mapping), "time_window_sec": S("timeWindowSec"), @@ -168,6 +180,8 @@ class GcpAutoscalingPolicyScaleInControl: @define(eq=False, slots=False) class GcpAutoscalingPolicyScalingSchedule: kind: ClassVar[str] = "gcp_autoscaling_policy_scaling_schedule" + kind_display: ClassVar[str] = "GCP Autoscaling Policy Scaling Schedule" + kind_description: ClassVar[str] = "A scaling schedule is used in Google Cloud Platform (GCP) autoscaling policies to define when and how many instances should be added or removed from an autoscaling group based on predefined time intervals or conditions." mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "disabled": S("disabled"), @@ -187,6 +201,8 @@ class GcpAutoscalingPolicyScalingSchedule: @define(eq=False, slots=False) class GcpAutoscalingPolicy: kind: ClassVar[str] = "gcp_autoscaling_policy" + kind_display: ClassVar[str] = "GCP Autoscaling Policy" + kind_description: ClassVar[str] = "Autoscaling policies in Google Cloud Platform allow automatic adjustment of resources based on predefined conditions, ensuring efficient utilization and responsiveness in handling varying workloads." mapping: ClassVar[Dict[str, Bender]] = { "cool_down_period_sec": S("coolDownPeriodSec"), "cpu_utilization": S("cpuUtilization", default={}) >> Bend(GcpAutoscalingPolicyCpuUtilization.mapping), @@ -214,6 +230,8 @@ class GcpAutoscalingPolicy: @define(eq=False, slots=False) class GcpScalingScheduleStatus: kind: ClassVar[str] = "gcp_scaling_schedule_status" + kind_display: ClassVar[str] = "GCP Scaling Schedule Status" + kind_description: ClassVar[str] = "GCP Scaling Schedule Status represents the current status of a scaling schedule in Google Cloud Platform, providing information about when and how the scaling is performed." mapping: ClassVar[Dict[str, Bender]] = { "last_start_time": S("lastStartTime"), "next_start_time": S("nextStartTime"), @@ -227,6 +245,8 @@ class GcpScalingScheduleStatus: @define(eq=False, slots=False) class GcpAutoscalerStatusDetails: kind: ClassVar[str] = "gcp_autoscaler_status_details" + kind_display: ClassVar[str] = "GCP Autoscaler Status Details" + kind_description: ClassVar[str] = "Autoscaler Status Details provide information about the scaling behavior of an autoscaler in the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"message": S("message"), "type": S("type")} message: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -235,6 +255,8 @@ class GcpAutoscalerStatusDetails: @define(eq=False, slots=False) class GcpAutoscaler(GcpResource): kind: ClassVar[str] = "gcp_autoscaler" + kind_display: ClassVar[str] = "GCP Autoscaler" + kind_description: ClassVar[str] = "GCP Autoscaler is a feature in Google Cloud Platform that automatically adjusts the number of instances in a managed instance group based on the workload, helping to maintain cost efficiency and performance." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["gcp_instance_group_manager"], @@ -286,6 +308,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpBackendBucketCdnPolicyCacheKeyPolicy: kind: ClassVar[str] = "gcp_backend_bucket_cdn_policy_cache_key_policy" + kind_display: ClassVar[str] = "GCP Backend Bucket CDN Policy Cache Key Policy" + kind_description: ClassVar[str] = "The GCP Backend Bucket CDN Policy Cache Key Policy is a policy that specifies how content is cached on the CDN (Content Delivery Network) for a backend bucket in Google Cloud Platform (GCP)." mapping: ClassVar[Dict[str, Bender]] = { "include_http_headers": S("includeHttpHeaders", default=[]), "query_string_whitelist": S("queryStringWhitelist", default=[]), @@ -297,6 +321,8 @@ class GcpBackendBucketCdnPolicyCacheKeyPolicy: @define(eq=False, slots=False) class GcpBackendBucketCdnPolicyNegativeCachingPolicy: kind: ClassVar[str] = "gcp_backend_bucket_cdn_policy_negative_caching_policy" + kind_display: ClassVar[str] = "GCP Backend Bucket CDN Policy Negative Caching Policy" + kind_description: ClassVar[str] = "This resource represents the negative caching policy of a CDN policy for a Google Cloud Platform backend bucket. Negative caching allows the CDN to cache and serve error responses to clients, improving performance and reducing load on the backend servers." mapping: ClassVar[Dict[str, Bender]] = {"code": S("code"), "ttl": S("ttl")} code: Optional[int] = field(default=None) ttl: Optional[int] = field(default=None) @@ -305,6 +331,8 @@ class GcpBackendBucketCdnPolicyNegativeCachingPolicy: @define(eq=False, slots=False) class GcpBackendBucketCdnPolicy: kind: ClassVar[str] = "gcp_backend_bucket_cdn_policy" + kind_display: ClassVar[str] = "GCP Backend Bucket CDN Policy" + kind_description: ClassVar[str] = "CDN Policy is a feature in Google Cloud Platform that allows you to configure the behavior of the Content Delivery Network (CDN) for a Backend Bucket. It includes settings such as cache expiration, cache control, and content encoding." mapping: ClassVar[Dict[str, Bender]] = { "bypass_cache_on_request_headers": S("bypassCacheOnRequestHeaders", default=[]) >> ForallBend(S("headerName")), "cache_key_policy": S("cacheKeyPolicy", default={}) >> Bend(GcpBackendBucketCdnPolicyCacheKeyPolicy.mapping), @@ -337,6 +365,8 @@ class GcpBackendBucketCdnPolicy: @define(eq=False, slots=False) class GcpBackendBucket(GcpResource): kind: ClassVar[str] = "gcp_backend_bucket" + kind_display: ClassVar[str] = "GCP Backend Bucket" + kind_description: ClassVar[str] = "A GCP Backend Bucket is a storage bucket used to distribute static content for a load balanced website or application running on Google Cloud Platform." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -375,6 +405,8 @@ class GcpBackendBucket(GcpResource): @define(eq=False, slots=False) class GcpBackend: kind: ClassVar[str] = "gcp_backend" + kind_display: ClassVar[str] = "GCP Backend" + kind_description: ClassVar[str] = "A GCP backend refers to the infrastructure and services that power applications and services on the Google Cloud Platform. It includes compute, storage, networking, and other resources needed to support the backend operations of GCP applications." mapping: ClassVar[Dict[str, Bender]] = { "balancing_mode": S("balancingMode"), "capacity_scaler": S("capacityScaler"), @@ -406,6 +438,8 @@ class GcpBackend: @define(eq=False, slots=False) class GcpCacheKeyPolicy: kind: ClassVar[str] = "gcp_cache_key_policy" + kind_display: ClassVar[str] = "GCP Cache Key Policy" + kind_description: ClassVar[str] = "A cache key policy in Google Cloud Platform (GCP) is used to define the criteria for caching content in a cache storage system." mapping: ClassVar[Dict[str, Bender]] = { "include_host": S("includeHost"), "include_http_headers": S("includeHttpHeaders", default=[]), @@ -427,6 +461,8 @@ class GcpCacheKeyPolicy: @define(eq=False, slots=False) class GcpBackendServiceCdnPolicyNegativeCachingPolicy: kind: ClassVar[str] = "gcp_backend_service_cdn_policy_negative_caching_policy" + kind_display: ClassVar[str] = "GCP Backend Service CDN Policy - Negative Caching Policy" + kind_description: ClassVar[str] = "Negative Caching Policy is a feature of the GCP Backend Service CDN Policy that allows caching of responses with error status codes, reducing the load on the origin server for subsequent requests." mapping: ClassVar[Dict[str, Bender]] = {"code": S("code"), "ttl": S("ttl")} code: Optional[int] = field(default=None) ttl: Optional[int] = field(default=None) @@ -435,6 +471,8 @@ class GcpBackendServiceCdnPolicyNegativeCachingPolicy: @define(eq=False, slots=False) class GcpBackendServiceCdnPolicy: kind: ClassVar[str] = "gcp_backend_service_cdn_policy" + kind_display: ClassVar[str] = "GCP Backend Service CDN Policy" + kind_description: ClassVar[str] = "A CDN Policy is a configuration that specifies how a content delivery network (CDN) delivers content for a backend service in Google Cloud Platform (GCP). It includes rules for cache settings, cache key preservation, and request routing." mapping: ClassVar[Dict[str, Bender]] = { "bypass_cache_on_request_headers": S("bypassCacheOnRequestHeaders", default=[]) >> ForallBend(S("headerName")), "cache_key_policy": S("cacheKeyPolicy", default={}) >> Bend(GcpCacheKeyPolicy.mapping), @@ -467,6 +505,8 @@ class GcpBackendServiceCdnPolicy: @define(eq=False, slots=False) class GcpCircuitBreakers: kind: ClassVar[str] = "gcp_circuit_breakers" + kind_display: ClassVar[str] = "GCP Circuit Breakers" + kind_description: ClassVar[str] = "Circuit breakers in Google Cloud Platform (GCP) are a mechanism used to detect and prevent system failures caused by overloads or faults in distributed systems." mapping: ClassVar[Dict[str, Bender]] = { "max_connections": S("maxConnections"), "max_pending_requests": S("maxPendingRequests"), @@ -484,6 +524,8 @@ class GcpCircuitBreakers: @define(eq=False, slots=False) class GcpBackendServiceConnectionTrackingPolicy: kind: ClassVar[str] = "gcp_backend_service_connection_tracking_policy" + kind_display: ClassVar[str] = "GCP Backend Service Connection Tracking Policy" + kind_description: ClassVar[str] = "GCP Backend Service Connection Tracking Policy is a feature in Google Cloud Platform that allows tracking and monitoring of connections made to backend services." mapping: ClassVar[Dict[str, Bender]] = { "connection_persistence_on_unhealthy_backends": S("connectionPersistenceOnUnhealthyBackends"), "enable_strong_affinity": S("enableStrongAffinity"), @@ -499,6 +541,8 @@ class GcpBackendServiceConnectionTrackingPolicy: @define(eq=False, slots=False) class GcpDuration: kind: ClassVar[str] = "gcp_duration" + kind_display: ClassVar[str] = "GCP Duration" + kind_description: ClassVar[str] = "Duration represents a length of time in Google Cloud Platform (GCP) services." mapping: ClassVar[Dict[str, Bender]] = {"nanos": S("nanos"), "seconds": S("seconds")} nanos: Optional[int] = field(default=None) seconds: Optional[str] = field(default=None) @@ -507,6 +551,8 @@ class GcpDuration: @define(eq=False, slots=False) class GcpConsistentHashLoadBalancerSettingsHttpCookie: kind: ClassVar[str] = "gcp_consistent_hash_load_balancer_settings_http_cookie" + kind_display: ClassVar[str] = "GCP Consistent Hash Load Balancer with HTTP Cookie" + kind_description: ClassVar[str] = "Consistent Hash Load Balancer with HTTP Cookie is a load balancing setting in Google Cloud Platform (GCP) that uses consistent hashing with the HTTP cookie to route requests to backend services." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "path": S("path"), @@ -520,6 +566,8 @@ class GcpConsistentHashLoadBalancerSettingsHttpCookie: @define(eq=False, slots=False) class GcpConsistentHashLoadBalancerSettings: kind: ClassVar[str] = "gcp_consistent_hash_load_balancer_settings" + kind_display: ClassVar[str] = "GCP Consistent Hash Load Balancer Settings" + kind_description: ClassVar[str] = "Consistent Hash Load Balancer Settings in Google Cloud Platform (GCP) allow you to route incoming requests to different backend instances based on the hashed value of certain request components, providing a consistent routing mechanism." mapping: ClassVar[Dict[str, Bender]] = { "http_cookie": S("httpCookie", default={}) >> Bend(GcpConsistentHashLoadBalancerSettingsHttpCookie.mapping), "http_header_name": S("httpHeaderName"), @@ -533,6 +581,8 @@ class GcpConsistentHashLoadBalancerSettings: @define(eq=False, slots=False) class GcpBackendServiceFailoverPolicy: kind: ClassVar[str] = "gcp_backend_service_failover_policy" + kind_display: ClassVar[str] = "GCP Backend Service Failover Policy" + kind_description: ClassVar[str] = "A failover policy for Google Cloud Platform backend services, which determines how traffic is redirected to different backends in the event of a failure." mapping: ClassVar[Dict[str, Bender]] = { "disable_connection_drain_on_failover": S("disableConnectionDrainOnFailover"), "drop_traffic_if_unhealthy": S("dropTrafficIfUnhealthy"), @@ -546,6 +596,8 @@ class GcpBackendServiceFailoverPolicy: @define(eq=False, slots=False) class GcpBackendServiceIAP: kind: ClassVar[str] = "gcp_backend_service_iap" + kind_display: ClassVar[str] = "GCP Backend Service IAP" + kind_description: ClassVar[str] = "GCP Backend Service IAP is a feature in Google Cloud Platform that provides Identity-Aware Proxy (IAP) for a backend service, allowing fine-grained access control to the backend resources based on user identity and context." mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("enabled"), "oauth2_client_id": S("oauth2ClientId"), @@ -561,6 +613,8 @@ class GcpBackendServiceIAP: @define(eq=False, slots=False) class GcpBackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy: kind: ClassVar[str] = "gcp_backend_service_locality_load_balancing_policy_config_custom_policy" + kind_display: ClassVar[str] = "GCP Backend Service Locality Load Balancing Policy Config Custom Policy" + kind_description: ClassVar[str] = "This resource allows customization of the locality load balancing policy configuration for a Google Cloud Platform (GCP) Backend Service. Locality load balancing is a policy that optimizes traffic distribution based on the proximity of backend services to clients, improving the overall performance and latency of the system." mapping: ClassVar[Dict[str, Bender]] = {"data": S("data"), "name": S("name")} data: Optional[str] = field(default=None) name: Optional[str] = field(default=None) @@ -569,6 +623,8 @@ class GcpBackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy: @define(eq=False, slots=False) class GcpBackendServiceLocalityLoadBalancingPolicyConfig: kind: ClassVar[str] = "gcp_backend_service_locality_load_balancing_policy_config" + kind_display: ClassVar[str] = "GCP Backend Service Locality Load Balancing Policy Config" + kind_description: ClassVar[str] = "This is a configuration for the locality load balancing policy in Google Cloud Platform's Backend Service, which enables routing of traffic to backend instances based on their geographical locality for better performance and availability." mapping: ClassVar[Dict[str, Bender]] = { "custom_policy": S("customPolicy", default={}) >> Bend(GcpBackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.mapping), @@ -581,6 +637,8 @@ class GcpBackendServiceLocalityLoadBalancingPolicyConfig: @define(eq=False, slots=False) class GcpBackendServiceLogConfig: kind: ClassVar[str] = "gcp_backend_service_log_config" + kind_display: ClassVar[str] = "GCP Backend Service Log Config" + kind_description: ClassVar[str] = "Backend Service Log Config allows you to configure logging for a Google Cloud Platform (GCP) backend service, providing visibility into the requests and responses processed by the service." mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "sample_rate": S("sampleRate")} enable: Optional[bool] = field(default=None) sample_rate: Optional[float] = field(default=None) @@ -589,6 +647,8 @@ class GcpBackendServiceLogConfig: @define(eq=False, slots=False) class GcpOutlierDetection: kind: ClassVar[str] = "gcp_outlier_detection" + kind_display: ClassVar[str] = "GCP Outlier Detection" + kind_description: ClassVar[str] = "Outlier Detection in Google Cloud Platform (GCP) is a technique to identify anomalies or outliers in datasets, helping users to detect unusual patterns or behaviors." mapping: ClassVar[Dict[str, Bender]] = { "base_ejection_time": S("baseEjectionTime", default={}) >> Bend(GcpDuration.mapping), "consecutive_errors": S("consecutiveErrors"), @@ -618,6 +678,8 @@ class GcpOutlierDetection: @define(eq=False, slots=False) class GcpSecuritySettings: kind: ClassVar[str] = "gcp_security_settings" + kind_display: ClassVar[str] = "GCP Security Settings" + kind_description: ClassVar[str] = "GCP Security Settings refers to the configuration options and policies that are put in place to ensure the security of resources and data on the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "client_tls_policy": S("clientTlsPolicy"), "subject_alt_names": S("subjectAltNames", default=[]), @@ -629,6 +691,8 @@ class GcpSecuritySettings: @define(eq=False, slots=False) class GcpBackendService(GcpResource): kind: ClassVar[str] = "gcp_backend_service" + kind_display: ClassVar[str] = "GCP Backend Service" + kind_description: ClassVar[str] = "GCP Backend Service is a managed load balancing service provided by Google Cloud Platform that allows you to distribute traffic across multiple backends and regions in a flexible and scalable manner." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_network"], @@ -752,6 +816,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpDiskType(GcpResource, BaseVolumeType): kind: ClassVar[str] = "gcp_disk_type" + kind_display: ClassVar[str] = "GCP Disk Type" + kind_description: ClassVar[str] = "GCP Disk Types are storage options provided by Google Cloud Platform, which define the performance characteristics and pricing of persistent disks." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -835,6 +901,8 @@ def sku_filter(sku: GcpSku) -> bool: @define(eq=False, slots=False) class GcpCustomerEncryptionKey: kind: ClassVar[str] = "gcp_customer_encryption_key" + kind_display: ClassVar[str] = "GCP Customer Encryption Key" + kind_description: ClassVar[str] = "Customer Encryption Keys (CEK) allow Google Cloud Platform customers to encrypt their data using keys that they manage and control, providing an extra layer of security for sensitive data." mapping: ClassVar[Dict[str, Bender]] = { "kms_key_name": S("kmsKeyName"), "kms_key_service_account": S("kmsKeyServiceAccount"), @@ -852,6 +920,8 @@ class GcpCustomerEncryptionKey: @define(eq=False, slots=False) class GcpDiskParams: kind: ClassVar[str] = "gcp_disk_params" + kind_display: ClassVar[str] = "GCP Disk Params" + kind_description: ClassVar[str] = "GCP Disk Params refers to the parameters associated with disks in the Google Cloud Platform (GCP). Disks in GCP provide a persistent block storage option for virtual machine instances in GCP." mapping: ClassVar[Dict[str, Bender]] = {"resource_manager_tags": S("resourceManagerTags")} resource_manager_tags: Optional[Dict[str, str]] = field(default=None) @@ -859,6 +929,8 @@ class GcpDiskParams: @define(eq=False, slots=False) class GcpDisk(GcpResource, BaseVolume): kind: ClassVar[str] = "gcp_disk" + kind_display: ClassVar[str] = "GCP Disk" + kind_description: ClassVar[str] = "GCP Disk is a persistent block storage service provided by Google Cloud Platform, allowing users to store and manage data in the cloud." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_disk_type", "gcp_instance"]}, "successors": {"delete": ["gcp_instance"]}, @@ -968,6 +1040,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpExternalVpnGatewayInterface: kind: ClassVar[str] = "gcp_external_vpn_gateway_interface" + kind_display: ClassVar[str] = "GCP External VPN Gateway Interface" + kind_description: ClassVar[str] = "External VPN Gateway Interface is a network interface in Google Cloud Platform used to connect on-premises networks to virtual private networks (VPNs) in GCP." mapping: ClassVar[Dict[str, Bender]] = {"id": S("id"), "ip_address": S("ipAddress")} id: Optional[int] = field(default=None) ip_address: Optional[str] = field(default=None) @@ -976,6 +1050,8 @@ class GcpExternalVpnGatewayInterface: @define(eq=False, slots=False) class GcpExternalVpnGateway(GcpResource): kind: ClassVar[str] = "gcp_external_vpn_gateway" + kind_display: ClassVar[str] = "GCP External VPN Gateway" + kind_description: ClassVar[str] = "External VPN Gateway is a virtual network appliance in Google Cloud Platform that allows secure communication between on-premises networks and virtual private clouds (VPCs) over an encrypted connection." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1006,6 +1082,8 @@ class GcpExternalVpnGateway(GcpResource): @define(eq=False, slots=False) class GcpFirewallPolicyAssociation: kind: ClassVar[str] = "gcp_firewall_policy_association" + kind_display: ClassVar[str] = "GCP Firewall Policy Association" + kind_description: ClassVar[str] = "Firewall Policy Association is a feature in Google Cloud Platform that allows you to associate firewall policies with target resources, such as virtual machines or subnets, to control incoming and outgoing traffic based on predefined rules." mapping: ClassVar[Dict[str, Bender]] = { "attachment_target": S("attachmentTarget"), "display_name": S("displayName"), @@ -1023,6 +1101,8 @@ class GcpFirewallPolicyAssociation: @define(eq=False, slots=False) class GcpFirewallPolicyRuleMatcherLayer4Config: kind: ClassVar[str] = "gcp_firewall_policy_rule_matcher_layer4_config" + kind_display: ClassVar[str] = "GCP Firewall Policy Rule Matcher Layer4 Config" + kind_description: ClassVar[str] = "GCP Firewall Policy Rule Matcher Layer4 Config is a configuration for matching Layer 4 (transport layer) parameters in firewall rules in Google Cloud Platform. This configuration allows you to customize and control network traffic based on protocols, ports, and IP addresses." mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("ipProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1031,6 +1111,8 @@ class GcpFirewallPolicyRuleMatcherLayer4Config: @define(eq=False, slots=False) class GcpFirewallPolicyRuleSecureTag: kind: ClassVar[str] = "gcp_firewall_policy_rule_secure_tag" + kind_display: ClassVar[str] = "GCP Firewall Policy Rule Secure Tag" + kind_description: ClassVar[str] = "Secure Tags are used in Google Cloud Platform's Firewall Policy Rules to apply consistent security rules to specific instances or resources based on tags. This helps in controlling network traffic and securing communication within the GCP infrastructure." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "firewall_policy_rule_secure_tag_state": S("state")} name: Optional[str] = field(default=None) firewall_policy_rule_secure_tag_state: Optional[str] = field(default=None) @@ -1039,6 +1121,8 @@ class GcpFirewallPolicyRuleSecureTag: @define(eq=False, slots=False) class GcpFirewallPolicyRuleMatcher: kind: ClassVar[str] = "gcp_firewall_policy_rule_matcher" + kind_display: ClassVar[str] = "GCP Firewall Policy Rule Matcher" + kind_description: ClassVar[str] = "This resource represents a rule matcher within a firewall policy in Google Cloud Platform (GCP). It is used to define specific match criteria for incoming or outgoing traffic." mapping: ClassVar[Dict[str, Bender]] = { "dest_ip_ranges": S("destIpRanges", default=[]), "layer4_configs": S("layer4Configs", default=[]) @@ -1055,6 +1139,8 @@ class GcpFirewallPolicyRuleMatcher: @define(eq=False, slots=False) class GcpFirewallPolicyRule: kind: ClassVar[str] = "gcp_firewall_policy_rule" + kind_display: ClassVar[str] = "GCP Firewall Policy Rule" + kind_description: ClassVar[str] = "A GCP Firewall Policy Rule is a set of instructions that define how traffic is allowed or denied on a Google Cloud Platform virtual network." mapping: ClassVar[Dict[str, Bender]] = { "action": S("action"), "description": S("description"), @@ -1087,6 +1173,8 @@ class GcpFirewallPolicyRule: @define(eq=False, slots=False) class GcpFirewallPolicy(GcpResource): kind: ClassVar[str] = "gcp_firewall_policy" + kind_display: ClassVar[str] = "GCP Firewall Policy" + kind_description: ClassVar[str] = "GCP Firewall Policy is a security rule set that controls incoming and outgoing network traffic for resources in the Google Cloud Platform." reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_network"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -1135,6 +1223,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpAllowed: kind: ClassVar[str] = "gcp_allowed" + kind_display: ClassVar[str] = "GCP Allowed" + kind_description: ClassVar[str] = "GCP Allowed refers to the permissions or access rights granted to a user or entity to use resources on the Google Cloud Platform (GCP)." mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("IPProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1143,6 +1233,8 @@ class GcpAllowed: @define(eq=False, slots=False) class GcpDenied: kind: ClassVar[str] = "gcp_denied" + kind_display: ClassVar[str] = "GCP Denied" + kind_description: ClassVar[str] = "GCP Denied refers to a resource or action that has been denied or restricted in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("IPProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1151,6 +1243,8 @@ class GcpDenied: @define(eq=False, slots=False) class GcpFirewallLogConfig: kind: ClassVar[str] = "gcp_firewall_log_config" + kind_display: ClassVar[str] = "GCP Firewall Log Config" + kind_description: ClassVar[str] = "Firewall Log Config is a feature in Google Cloud Platform that allows you to configure logging for network firewall rules. It provides detailed information about the traffic that matches the firewall rules, helping you monitor and analyze network activities in your GCP environment." mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "metadata": S("metadata")} enable: Optional[bool] = field(default=None) metadata: Optional[str] = field(default=None) @@ -1159,6 +1253,8 @@ class GcpFirewallLogConfig: @define(eq=False, slots=False) class GcpFirewall(GcpResource): kind: ClassVar[str] = "gcp_firewall" + kind_display: ClassVar[str] = "GCP Firewall" + kind_description: ClassVar[str] = "GCP Firewall is a network security feature provided by Google Cloud Platform that controls incoming and outgoing traffic to and from virtual machine instances." reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_network"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -1216,6 +1312,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpMetadataFilterLabelMatch: kind: ClassVar[str] = "gcp_metadata_filter_label_match" + kind_display: ClassVar[str] = "GCP Metadata Filter Label Match" + kind_description: ClassVar[str] = "GCP Metadata Filter Label Match is a feature that allows you to filter virtual machine instances based on labels in Google Cloud Platform metadata." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1224,6 +1322,8 @@ class GcpMetadataFilterLabelMatch: @define(eq=False, slots=False) class GcpMetadataFilter: kind: ClassVar[str] = "gcp_metadata_filter" + kind_display: ClassVar[str] = "GCP Metadata Filter" + kind_description: ClassVar[str] = "GCP Metadata Filter is a feature in Google Cloud Platform that allows users to apply filters to their metadata for fine-grained control and organization of their resources." mapping: ClassVar[Dict[str, Bender]] = { "filter_labels": S("filterLabels", default=[]) >> ForallBend(GcpMetadataFilterLabelMatch.mapping), "filter_match_criteria": S("filterMatchCriteria"), @@ -1235,6 +1335,8 @@ class GcpMetadataFilter: @define(eq=False, slots=False) class GcpForwardingRuleServiceDirectoryRegistration: kind: ClassVar[str] = "gcp_forwarding_rule_service_directory_registration" + kind_display: ClassVar[str] = "GCP Forwarding Rule Service Directory Registration" + kind_description: ClassVar[str] = "This resource is used for registering a forwarding rule with a service directory in Google Cloud Platform. It enables the forwarding of traffic to a specific service or endpoint within the network." mapping: ClassVar[Dict[str, Bender]] = { "namespace": S("namespace"), "service": S("service"), @@ -1248,6 +1350,8 @@ class GcpForwardingRuleServiceDirectoryRegistration: @define(eq=False, slots=False) class GcpForwardingRule(GcpResource): kind: ClassVar[str] = "gcp_forwarding_rule" + kind_display: ClassVar[str] = "GCP Forwarding Rule" + kind_description: ClassVar[str] = "Forwarding rules are used in Google Cloud Platform to route traffic to different destinations based on the configuration settings. They can be used to load balance or redirect traffic within a network or between networks." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"]}, "successors": { @@ -1349,6 +1453,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpNetworkEndpointGroupAppEngine: kind: ClassVar[str] = "gcp_network_endpoint_group_app_engine" + kind_display: ClassVar[str] = "GCP Network Endpoint Group App Engine" + kind_description: ClassVar[str] = "GCP Network Endpoint Group for App Engine is a group of network endpoints (virtual machines, App Engine flexible environment instances, or container instances) that can receive traffic from the same load balancer." mapping: ClassVar[Dict[str, Bender]] = {"service": S("service"), "url_mask": S("urlMask"), "version": S("version")} service: Optional[str] = field(default=None) url_mask: Optional[str] = field(default=None) @@ -1358,6 +1464,8 @@ class GcpNetworkEndpointGroupAppEngine: @define(eq=False, slots=False) class GcpNetworkEndpointGroupCloudFunction: kind: ClassVar[str] = "gcp_network_endpoint_group_cloud_function" + kind_display: ClassVar[str] = "GCP Network Endpoint Group - Cloud Function" + kind_description: ClassVar[str] = "GCP Network Endpoint Group allows grouping of Cloud Functions in Google Cloud Platform, enabling load balancing and high availability for serverless functions." mapping: ClassVar[Dict[str, Bender]] = {"function": S("function"), "url_mask": S("urlMask")} function: Optional[str] = field(default=None) url_mask: Optional[str] = field(default=None) @@ -1366,6 +1474,8 @@ class GcpNetworkEndpointGroupCloudFunction: @define(eq=False, slots=False) class GcpNetworkEndpointGroupCloudRun: kind: ClassVar[str] = "gcp_network_endpoint_group_cloud_run" + kind_display: ClassVar[str] = "GCP Network Endpoint Group - Cloud Run" + kind_description: ClassVar[str] = "GCP Network Endpoint Group - Cloud Run is a resource in Google Cloud Platform that enables load balancing for Cloud Run services across different regions." mapping: ClassVar[Dict[str, Bender]] = {"service": S("service"), "tag": S("tag"), "url_mask": S("urlMask")} service: Optional[str] = field(default=None) tag: Optional[str] = field(default=None) @@ -1375,6 +1485,8 @@ class GcpNetworkEndpointGroupCloudRun: @define(eq=False, slots=False) class GcpNetworkEndpointGroupPscData: kind: ClassVar[str] = "gcp_network_endpoint_group_psc_data" + kind_display: ClassVar[str] = "GCP Network Endpoint Group PSC Data" + kind_description: ClassVar[str] = "GCP Network Endpoint Group PSC Data is a feature in Google Cloud Platform that allows you to group and manage a set of network endpoints that are used to distribute traffic across multiple instances." mapping: ClassVar[Dict[str, Bender]] = { "consumer_psc_address": S("consumerPscAddress"), "psc_connection_id": S("pscConnectionId"), @@ -1388,6 +1500,8 @@ class GcpNetworkEndpointGroupPscData: @define(eq=False, slots=False) class GcpNetworkEndpointGroup(GcpResource): kind: ClassVar[str] = "gcp_network_endpoint_group" + kind_display: ClassVar[str] = "GCP Network Endpoint Group" + kind_description: ClassVar[str] = "A GCP Network Endpoint Group is a logical grouping of network endpoints, allowing users to distribute network traffic across multiple endpoints in Google Cloud Platform." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network", "gcp_subnetwork"], "delete": ["gcp_network", "gcp_subnetwork"]} } @@ -1447,6 +1561,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpErrorInfo: kind: ClassVar[str] = "gcp_error_info" + kind_display: ClassVar[str] = "GCP Error Info" + kind_description: ClassVar[str] = "GCP Error Info provides information about errors encountered in Google Cloud Platform services." mapping: ClassVar[Dict[str, Bender]] = {"domain": S("domain"), "metadatas": S("metadatas"), "reason": S("reason")} domain: Optional[str] = field(default=None) metadatas: Optional[Dict[str, str]] = field(default=None) @@ -1456,6 +1572,8 @@ class GcpErrorInfo: @define(eq=False, slots=False) class GcpHelpLink: kind: ClassVar[str] = "gcp_help_link" + kind_display: ClassVar[str] = "GCP Help Link" + kind_description: ClassVar[str] = "A link to the Google Cloud Platform documentation and support resources to help users troubleshoot and find information about GCP services and features." mapping: ClassVar[Dict[str, Bender]] = {"description": S("description"), "url": S("url")} description: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -1464,6 +1582,8 @@ class GcpHelpLink: @define(eq=False, slots=False) class GcpHelp: kind: ClassVar[str] = "gcp_help" + kind_display: ClassVar[str] = "GCP Help" + kind_description: ClassVar[str] = "GCP Help is a service provided by Google Cloud Platform that offers assistance and support to users in using and managing their resources and services on GCP." mapping: ClassVar[Dict[str, Bender]] = {"links": S("links", default=[]) >> ForallBend(GcpHelpLink.mapping)} links: Optional[List[GcpHelpLink]] = field(default=None) @@ -1471,6 +1591,8 @@ class GcpHelp: @define(eq=False, slots=False) class GcpLocalizedMessage: kind: ClassVar[str] = "gcp_localized_message" + kind_display: ClassVar[str] = "GCP Localized Message" + kind_description: ClassVar[str] = "GCP Localized Message is a service provided by Google Cloud Platform that allows developers to display messages in different languages based on the user's preferred language." mapping: ClassVar[Dict[str, Bender]] = {"locale": S("locale"), "message": S("message")} locale: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -1479,6 +1601,8 @@ class GcpLocalizedMessage: @define(eq=False, slots=False) class GcpErrordetails: kind: ClassVar[str] = "gcp_errordetails" + kind_display: ClassVar[str] = "GCP Error Details" + kind_description: ClassVar[str] = "Error details in Google Cloud Platform (GCP) provide additional information about errors that occur while using GCP services." mapping: ClassVar[Dict[str, Bender]] = { "error_info": S("errorInfo", default={}) >> Bend(GcpErrorInfo.mapping), "help": S("help", default={}) >> Bend(GcpHelp.mapping), @@ -1492,6 +1616,8 @@ class GcpErrordetails: @define(eq=False, slots=False) class GcpErrors: kind: ClassVar[str] = "gcp_errors" + kind_display: ClassVar[str] = "GCP Errors" + kind_description: ClassVar[str] = "GCP Errors refer to any kind of error encountered while using Google Cloud Platform services." mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "error_details": S("errorDetails", default=[]) >> ForallBend(GcpErrordetails.mapping), @@ -1507,6 +1633,8 @@ class GcpErrors: @define(eq=False, slots=False) class GcpError: kind: ClassVar[str] = "gcp_error" + kind_display: ClassVar[str] = "GCP Error" + kind_description: ClassVar[str] = "An error that occurs within Google Cloud Platform (GCP). Please provide more specific information about the error message for further assistance." mapping: ClassVar[Dict[str, Bender]] = {"errors": S("errors", default=[]) >> ForallBend(GcpErrors.mapping)} errors: Optional[List[GcpErrors]] = field(default=None) @@ -1514,6 +1642,8 @@ class GcpError: @define(eq=False, slots=False) class GcpData: kind: ClassVar[str] = "gcp_data" + kind_display: ClassVar[str] = "GCP Data" + kind_description: ClassVar[str] = "GCP Data refers to data storage and processing services offered by Google Cloud Platform, such as Cloud Storage, BigQuery, and Dataflow." mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "value": S("value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1522,6 +1652,8 @@ class GcpData: @define(eq=False, slots=False) class GcpWarnings: kind: ClassVar[str] = "gcp_warnings" + kind_display: ClassVar[str] = "GCP Warnings" + kind_description: ClassVar[str] = "GCP Warnings are notifications issued by Google Cloud Platform to alert users about potential issues or concerns in their cloud resources." mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "data": S("data", default=[]) >> ForallBend(GcpData.mapping), @@ -1535,6 +1667,8 @@ class GcpWarnings: @define(eq=False, slots=False) class GcpOperation(GcpResource): kind: ClassVar[str] = "gcp_operation" + kind_display: ClassVar[str] = "GCP Operation" + kind_description: ClassVar[str] = "An operation represents a long-running asynchronous API call in Google Cloud Platform (GCP), allowing users to create, update, or delete resources" reference_kinds: ClassVar[ModelReference] = { "successors": { # operation can target multiple resources, unclear which others are possible @@ -1603,6 +1737,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpPublicDelegatedPrefixPublicDelegatedSubPrefix: kind: ClassVar[str] = "gcp_public_delegated_prefix_public_delegated_sub_prefix" + kind_display: ClassVar[str] = "GCP Public Delegated Sub-Prefix" + kind_description: ClassVar[str] = "A GCP Public Delegated Sub-Prefix is a range of public IP addresses that can be used within a Google Cloud Platform (GCP) project." mapping: ClassVar[Dict[str, Bender]] = { "delegatee_project": S("delegateeProject"), "description": S("description"), @@ -1624,6 +1760,8 @@ class GcpPublicDelegatedPrefixPublicDelegatedSubPrefix: @define(eq=False, slots=False) class GcpPublicDelegatedPrefix(GcpResource): kind: ClassVar[str] = "gcp_public_delegated_prefix" + kind_display: ClassVar[str] = "GCP Public Delegated Prefix" + kind_description: ClassVar[str] = "A Public Delegated Prefix in Google Cloud Platform (GCP) allows customers to use their own IPv6 addresses on GCP resources for public internet connectivity." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1663,6 +1801,8 @@ class GcpPublicDelegatedPrefix(GcpResource): @define(eq=False, slots=False) class GcpGRPCHealthCheck: kind: ClassVar[str] = "gcp_grpc_health_check" + kind_display: ClassVar[str] = "GCP gRPC Health Check" + kind_description: ClassVar[str] = "gRPC Health Check is a health checking mechanism in Google Cloud Platform (GCP) that allows monitoring and validating the health of gRPC-based services running on GCP infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "grpc_service_name": S("grpcServiceName"), "port": S("port"), @@ -1678,6 +1818,8 @@ class GcpGRPCHealthCheck: @define(eq=False, slots=False) class GcpHTTP2HealthCheck: kind: ClassVar[str] = "gcp_http2_health_check" + kind_display: ClassVar[str] = "GCP HTTP/2 Health Check" + kind_description: ClassVar[str] = "HTTP/2 Health Check is a health monitoring mechanism provided by Google Cloud Platform, which allows you to check the health of your HTTP/2 services or endpoints." mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "port": S("port"), @@ -1699,6 +1841,8 @@ class GcpHTTP2HealthCheck: @define(eq=False, slots=False) class GcpHTTPHealthCheckSpec: kind: ClassVar[str] = "gcp_http_health_check_spec" + kind_display: ClassVar[str] = "GCP HTTP Health Check Specification" + kind_description: ClassVar[str] = "GCP HTTP Health Check Specification is a configuration for monitoring the health of HTTP-based services in Google Cloud Platform by periodically sending health check requests and verifying the responses." mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "port": S("port"), @@ -1720,6 +1864,8 @@ class GcpHTTPHealthCheckSpec: @define(eq=False, slots=False) class GcpHTTPSHealthCheckSpec: kind: ClassVar[str] = "gcp_https_health_check_spec" + kind_display: ClassVar[str] = "GCP HTTPS Health Check Spec" + kind_description: ClassVar[str] = "GCP HTTPS Health Check Spec is a specification for a health check resource in Google Cloud Platform (GCP), used to monitor the health of HTTPS-based services by sending periodic requests and checking for valid responses." mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "port": S("port"), @@ -1741,6 +1887,8 @@ class GcpHTTPSHealthCheckSpec: @define(eq=False, slots=False) class GcpSSLHealthCheck: kind: ClassVar[str] = "gcp_ssl_health_check" + kind_display: ClassVar[str] = "GCP SSL Health Check" + kind_description: ClassVar[str] = "GCP SSL Health Check is a method used by Google Cloud Platform to monitor the health and availability of an SSL certificate for a specific service or application." mapping: ClassVar[Dict[str, Bender]] = { "port": S("port"), "port_name": S("portName"), @@ -1760,6 +1908,8 @@ class GcpSSLHealthCheck: @define(eq=False, slots=False) class GcpTCPHealthCheck: kind: ClassVar[str] = "gcp_tcp_health_check" + kind_display: ClassVar[str] = "GCP TCP Health Check" + kind_description: ClassVar[str] = "GCP TCP Health Check is a feature in the Google Cloud Platform which monitors the availability and health of TCP-based services by periodically sending TCP connection requests to the specified endpoint." mapping: ClassVar[Dict[str, Bender]] = { "port": S("port"), "port_name": S("portName"), @@ -1779,6 +1929,8 @@ class GcpTCPHealthCheck: @define(eq=False, slots=False) class GcpHealthCheck(GcpResource): kind: ClassVar[str] = "gcp_health_check" + kind_display: ClassVar[str] = "GCP Health Check" + kind_description: ClassVar[str] = "Health Check is a feature in Google Cloud Platform that allows you to monitor the health and availability of your resources by periodically sending requests to them and verifying the responses." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1829,6 +1981,8 @@ class GcpHealthCheck(GcpResource): @define(eq=False, slots=False) class GcpHttpHealthCheck(GcpResource): kind: ClassVar[str] = "gcp_http_health_check" + kind_display: ClassVar[str] = "GCP HTTP Health Check" + kind_description: ClassVar[str] = "HTTP Health Checks are used by Google Cloud Platform to monitor the health of web services and determine if they are reachable and responding correctly to requests." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1869,6 +2023,8 @@ class GcpHttpHealthCheck(GcpResource): @define(eq=False, slots=False) class GcpHttpsHealthCheck(GcpResource): kind: ClassVar[str] = "gcp_https_health_check" + kind_display: ClassVar[str] = "GCP HTTPS Health Check" + kind_description: ClassVar[str] = "The GCP HTTPS Health Check is a monitoring service that allows users to check the availability and performance of their HTTPS endpoints on Google Cloud Platform." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1909,6 +2065,8 @@ class GcpHttpsHealthCheck(GcpResource): @define(eq=False, slots=False) class GcpRawdisk: kind: ClassVar[str] = "gcp_rawdisk" + kind_display: ClassVar[str] = "GCP Raw Disk" + kind_description: ClassVar[str] = "GCP Raw Disk is a persistent storage option in Google Cloud Platform, allowing users to store and manage unformatted disk images for virtual machines." mapping: ClassVar[Dict[str, Bender]] = { "container_type": S("containerType"), "sha1_checksum": S("sha1Checksum"), @@ -1922,6 +2080,8 @@ class GcpRawdisk: @define(eq=False, slots=False) class GcpFileContentBuffer: kind: ClassVar[str] = "gcp_file_content_buffer" + kind_display: ClassVar[str] = "GCP File Content Buffer" + kind_description: ClassVar[str] = "GCP File Content Buffer is a resource in Google Cloud Platform that allows users to store and process file content in memory for faster data access and manipulation." mapping: ClassVar[Dict[str, Bender]] = {"content": S("content"), "file_type": S("fileType")} content: Optional[str] = field(default=None) file_type: Optional[str] = field(default=None) @@ -1930,6 +2090,8 @@ class GcpFileContentBuffer: @define(eq=False, slots=False) class GcpInitialStateConfig: kind: ClassVar[str] = "gcp_initial_state_config" + kind_display: ClassVar[str] = "GCP Initial State Config" + kind_description: ClassVar[str] = "GCP Initial State Config is a configuration used to set up the initial state of resources in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "dbs": S("dbs", default=[]) >> ForallBend(GcpFileContentBuffer.mapping), "dbxs": S("dbxs", default=[]) >> ForallBend(GcpFileContentBuffer.mapping), @@ -1945,6 +2107,8 @@ class GcpInitialStateConfig: @define(eq=False, slots=False) class GcpImage(GcpResource): kind: ClassVar[str] = "gcp_image" + kind_display: ClassVar[str] = "GCP Image" + kind_description: ClassVar[str] = "GCP Images are pre-configured virtual machine templates that can be used to create and deploy virtual machines in the Google Cloud Platform." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -2026,6 +2190,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpInstanceGroupManagerAutoHealingPolicy: kind: ClassVar[str] = "gcp_instance_group_manager_auto_healing_policy" + kind_display: ClassVar[str] = "GCP Instance Group Manager Auto Healing Policy" + kind_description: ClassVar[str] = "Auto Healing Policy is a feature of GCP Instance Group Manager that automatically replaces unhealthy instances within an instance group to maintain availability and ensure application uptime." mapping: ClassVar[Dict[str, Bender]] = {"health_check": S("healthCheck"), "initial_delay_sec": S("initialDelaySec")} health_check: Optional[str] = field(default=None) initial_delay_sec: Optional[int] = field(default=None) @@ -2034,6 +2200,8 @@ class GcpInstanceGroupManagerAutoHealingPolicy: @define(eq=False, slots=False) class GcpInstanceGroupManagerActionsSummary: kind: ClassVar[str] = "gcp_instance_group_manager_actions_summary" + kind_display: ClassVar[str] = "GCP Instance Group Manager Actions Summary" + kind_description: ClassVar[str] = "The GCP Instance Group Manager Actions Summary provides a summary of the actions performed on instance groups in the Google Cloud Platform, such as scaling, updating, or deleting instances in a group." mapping: ClassVar[Dict[str, Bender]] = { "abandoning": S("abandoning"), "creating": S("creating"), @@ -2067,6 +2235,8 @@ class GcpInstanceGroupManagerActionsSummary: @define(eq=False, slots=False) class GcpDistributionPolicy: kind: ClassVar[str] = "gcp_distribution_policy" + kind_display: ClassVar[str] = "GCP Distribution Policy" + kind_description: ClassVar[str] = "GCP Distribution Policy is a feature provided by Google Cloud Platform that allows users to define how resources are distributed across multiple zones within a region. This enables users to ensure high availability and fault tolerance for their applications and services by ensuring that they are spread across multiple physical locations." mapping: ClassVar[Dict[str, Bender]] = { "target_shape": S("targetShape"), "zones": S("zones", default=[]) >> ForallBend(S("zone")), @@ -2078,6 +2248,8 @@ class GcpDistributionPolicy: @define(eq=False, slots=False) class GcpNamedPort: kind: ClassVar[str] = "gcp_named_port" + kind_display: ClassVar[str] = "GCP Named Port" + kind_description: ClassVar[str] = "A named port is a service port with a user-defined name associated with a specific port number. It is used in Google Cloud Platform to help identify and manage networking services." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "port": S("port")} name: Optional[str] = field(default=None) port: Optional[int] = field(default=None) @@ -2086,6 +2258,8 @@ class GcpNamedPort: @define(eq=False, slots=False) class GcpStatefulPolicyPreservedStateDiskDevice: kind: ClassVar[str] = "gcp_stateful_policy_preserved_state_disk_device" + kind_display: ClassVar[str] = "GCP Stateful Policy Preserved State Disk Device" + kind_description: ClassVar[str] = "This resource represents a Stateful Policy Preserved State Disk Device in Google Cloud Platform (GCP). It allows for the creation of persistent disks that retain their data even when the associated VM instance is deleted or recreated." mapping: ClassVar[Dict[str, Bender]] = {"auto_delete": S("autoDelete")} auto_delete: Optional[str] = field(default=None) @@ -2093,6 +2267,8 @@ class GcpStatefulPolicyPreservedStateDiskDevice: @define(eq=False, slots=False) class GcpStatefulPolicyPreservedState: kind: ClassVar[str] = "gcp_stateful_policy_preserved_state" + kind_display: ClassVar[str] = "GCP Stateful Policy Preserved State" + kind_description: ClassVar[str] = "Stateful Policy Preserved State in Google Cloud Platform (GCP) refers to the retention of current state information of resources when modifying or updating policies." mapping: ClassVar[Dict[str, Bender]] = { "stateful_policy_preserved_state_disks": S("disks", default={}) >> MapDict(value_bender=Bend(GcpStatefulPolicyPreservedStateDiskDevice.mapping)) @@ -2105,6 +2281,8 @@ class GcpStatefulPolicyPreservedState: @define(eq=False, slots=False) class GcpStatefulPolicy: kind: ClassVar[str] = "gcp_stateful_policy" + kind_display: ClassVar[str] = "GCP Stateful Policy" + kind_description: ClassVar[str] = "Stateful Policy is a feature in Google Cloud Platform (GCP) that allows users to define specific firewall rules based on source and destination IP addresses, ports, and protocols. These rules are persistent and can help ensure network security and traffic control within the GCP infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "preserved_state": S("preservedState", default={}) >> Bend(GcpStatefulPolicyPreservedState.mapping) } @@ -2114,6 +2292,8 @@ class GcpStatefulPolicy: @define(eq=False, slots=False) class GcpInstanceGroupManagerStatusStateful: kind: ClassVar[str] = "gcp_instance_group_manager_status_stateful" + kind_display: ClassVar[str] = "GCP Instance Group Manager Status Stateful" + kind_description: ClassVar[str] = "This resource represents the stateful status of an instance group manager in Google Cloud Platform's infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "has_stateful_config": S("hasStatefulConfig"), "per_instance_configs": S("perInstanceConfigs", "allEffective"), @@ -2125,6 +2305,8 @@ class GcpInstanceGroupManagerStatusStateful: @define(eq=False, slots=False) class GcpInstanceGroupManagerStatus: kind: ClassVar[str] = "gcp_instance_group_manager_status" + kind_display: ClassVar[str] = "GCP Instance Group Manager Status" + kind_description: ClassVar[str] = "Instance Group Manager Status represents the current state of an instance group manager in Google Cloud Platform. It provides information about the status of the managed instances within the group and their health." mapping: ClassVar[Dict[str, Bender]] = { "autoscaler": S("autoscaler"), "is_stable": S("isStable"), @@ -2140,6 +2322,8 @@ class GcpInstanceGroupManagerStatus: @define(eq=False, slots=False) class GcpInstanceGroupManagerUpdatePolicy: kind: ClassVar[str] = "gcp_instance_group_manager_update_policy" + kind_display: ClassVar[str] = "GCP Instance Group Manager Update Policy" + kind_description: ClassVar[str] = "The GCP Instance Group Manager Update Policy is a configuration setting that determines how a managed instance group is automatically updated with new instance template versions." mapping: ClassVar[Dict[str, Bender]] = { "instance_redistribution_type": S("instanceRedistributionType"), "max_surge": S("maxSurge", default={}) >> Bend(GcpFixedOrPercent.mapping), @@ -2161,6 +2345,8 @@ class GcpInstanceGroupManagerUpdatePolicy: @define(eq=False, slots=False) class GcpInstanceGroupManagerVersion: kind: ClassVar[str] = "gcp_instance_group_manager_version" + kind_display: ClassVar[str] = "GCP Instance Group Manager Version" + kind_description: ClassVar[str] = "Instance Group Manager is a feature in Google Cloud Platform that allows you to manage groups of virtual machine instances as a single entity. GCP Instance Group Manager Version refers to a specific version of the instance group manager that is used to manage and control the instances within the group." mapping: ClassVar[Dict[str, Bender]] = { "instance_template": S("instanceTemplate"), "name": S("name"), @@ -2174,6 +2360,8 @@ class GcpInstanceGroupManagerVersion: @define(eq=False, slots=False) class GcpInstanceGroupManager(GcpResource): kind: ClassVar[str] = "gcp_instance_group_manager" + kind_display: ClassVar[str] = "GCP Instance Group Manager" + kind_description: ClassVar[str] = "GCP Instance Group Manager is a resource in Google Cloud Platform that helps manage and scale groups of Compute Engine instances." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_instance_group"], @@ -2251,6 +2439,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpInstanceGroup(GcpResource): kind: ClassVar[str] = "gcp_instance_group" + kind_display: ClassVar[str] = "GCP Instance Group" + kind_description: ClassVar[str] = "Instance Group is a resource in Google Cloud Platform that allows you to manage and scale multiple instances together as a single unit." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network", "gcp_subnetwork"], "delete": ["gcp_network", "gcp_subnetwork"]} } @@ -2298,6 +2488,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpAdvancedMachineFeatures: kind: ClassVar[str] = "gcp_advanced_machine_features" + kind_display: ClassVar[str] = "GCP Advanced Machine Features" + kind_description: ClassVar[str] = "Advanced Machine Features are advanced functionalities provided by Google Cloud Platform (GCP) that enhance the capabilities of virtual machine instances and improve performance, scalability, and security." mapping: ClassVar[Dict[str, Bender]] = { "enable_nested_virtualization": S("enableNestedVirtualization"), "enable_uefi_networking": S("enableUefiNetworking"), @@ -2313,6 +2505,8 @@ class GcpAdvancedMachineFeatures: @define(eq=False, slots=False) class GcpAttachedDiskInitializeParams: kind: ClassVar[str] = "gcp_attached_disk_initialize_params" + kind_display: ClassVar[str] = "GCP Attached Disk Initialize Params" + kind_description: ClassVar[str] = "Initialize parameters for a Google Cloud Platform attached disk, used to specify the size and type of the disk, as well as other configuration options." mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "description": S("description"), @@ -2352,6 +2546,8 @@ class GcpAttachedDiskInitializeParams: @define(eq=False, slots=False) class GcpAttachedDisk: kind: ClassVar[str] = "gcp_attached_disk" + kind_display: ClassVar[str] = "GCP Attached Disk" + kind_description: ClassVar[str] = "GCP Attached Disk is a disk storage resource that can be attached to compute instances in Google Cloud Platform, providing persistent block storage for your data." mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "auto_delete": S("autoDelete"), @@ -2392,6 +2588,8 @@ class GcpAttachedDisk: @define(eq=False, slots=False) class GcpAcceleratorConfig: kind: ClassVar[str] = "gcp_accelerator_config" + kind_display: ClassVar[str] = "GCP Accelerator Config" + kind_description: ClassVar[str] = "GCP Accelerator Config is a configuration option for Google Cloud Platform (GCP) that allows users to attach Nvidia GPUs to their virtual machine instances for faster computational processing." mapping: ClassVar[Dict[str, Bender]] = { "accelerator_count": S("acceleratorCount"), "accelerator_type": S("acceleratorType"), @@ -2403,6 +2601,8 @@ class GcpAcceleratorConfig: @define(eq=False, slots=False) class GcpItems: kind: ClassVar[str] = "gcp_items" + kind_display: ClassVar[str] = "GCP Items" + kind_description: ClassVar[str] = "GCP Items refers to the resources available in Google Cloud Platform, which is a suite of cloud computing services provided by Google." mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "value": S("value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -2411,6 +2611,8 @@ class GcpItems: @define(eq=False, slots=False) class GcpMetadata: kind: ClassVar[str] = "gcp_metadata" + kind_display: ClassVar[str] = "GCP Metadata" + kind_description: ClassVar[str] = "GCP Metadata provides information about the Google Cloud Platform virtual machine instance, such as its attributes, startup scripts, and custom metadata." mapping: ClassVar[Dict[str, Bender]] = { "fingerprint": S("fingerprint"), "items": S("items", default=[]) >> ForallBend(GcpItems.mapping), @@ -2422,6 +2624,8 @@ class GcpMetadata: @define(eq=False, slots=False) class GcpAccessConfig: kind: ClassVar[str] = "gcp_access_config" + kind_display: ClassVar[str] = "GCP Access Config" + kind_description: ClassVar[str] = "Access Config is a GCP feature that allows you to assign internal and external IP addresses to your virtual machine instances." mapping: ClassVar[Dict[str, Bender]] = { "external_ipv6": S("externalIpv6"), "external_ipv6_prefix_length": S("externalIpv6PrefixLength"), @@ -2445,6 +2649,8 @@ class GcpAccessConfig: @define(eq=False, slots=False) class GcpAliasIpRange: kind: ClassVar[str] = "gcp_alias_ip_range" + kind_display: ClassVar[str] = "GCP Alias IP Range" + kind_description: ClassVar[str] = "Alias IP Range is a feature in Google Cloud Platform that allows you to assign additional IP addresses to virtual machines within a subnet." mapping: ClassVar[Dict[str, Bender]] = { "ip_cidr_range": S("ipCidrRange"), "subnetwork_range_name": S("subnetworkRangeName"), @@ -2456,6 +2662,8 @@ class GcpAliasIpRange: @define(eq=False, slots=False) class GcpNetworkInterface: kind: ClassVar[str] = "gcp_network_interface" + kind_display: ClassVar[str] = "GCP Network Interface" + kind_description: ClassVar[str] = "A network interface is a virtual network interface card (NIC) that enables VM instances to send and receive network packets." mapping: ClassVar[Dict[str, Bender]] = { "access_configs": S("accessConfigs", default=[]) >> ForallBend(GcpAccessConfig.mapping), "alias_ip_ranges": S("aliasIpRanges", default=[]) >> ForallBend(GcpAliasIpRange.mapping), @@ -2491,6 +2699,8 @@ class GcpNetworkInterface: @define(eq=False, slots=False) class GcpReservationAffinity: kind: ClassVar[str] = "gcp_reservation_affinity" + kind_display: ClassVar[str] = "GCP Reservation Affinity" + kind_description: ClassVar[str] = "Reservation Affinity is a feature in Google Cloud Platform that allows you to specify that certain instances should be hosted on the same physical machine to leverage the performance benefits of co-location." mapping: ClassVar[Dict[str, Bender]] = { "consume_reservation_type": S("consumeReservationType"), "key": S("key"), @@ -2504,6 +2714,8 @@ class GcpReservationAffinity: @define(eq=False, slots=False) class GcpSchedulingNodeAffinity: kind: ClassVar[str] = "gcp_scheduling_node_affinity" + kind_display: ClassVar[str] = "GCP Scheduling Node Affinity" + kind_description: ClassVar[str] = "GCP Scheduling Node Affinity allows you to schedule your workloads on specific nodes in Google Cloud Platform, based on node labels and expressions." mapping: ClassVar[Dict[str, Bender]] = { "key": S("key"), "operator": S("operator"), @@ -2517,6 +2729,8 @@ class GcpSchedulingNodeAffinity: @define(eq=False, slots=False) class GcpScheduling: kind: ClassVar[str] = "gcp_scheduling" + kind_display: ClassVar[str] = "GCP Scheduling" + kind_description: ClassVar[str] = "GCP Scheduling refers to the ability to set up automated, recurring tasks on Google Cloud Platform, allowing users to schedule actions like running scripts or executing compute instances at specified intervals." mapping: ClassVar[Dict[str, Bender]] = { "automatic_restart": S("automaticRestart"), "instance_termination_action": S("instanceTerminationAction"), @@ -2540,6 +2754,8 @@ class GcpScheduling: @define(eq=False, slots=False) class GcpServiceAccount: kind: ClassVar[str] = "gcp_service_account" + kind_display: ClassVar[str] = "GCP Service Account" + kind_description: ClassVar[str] = "A GCP Service Account is a special account that represents an application rather than an individual user. It allows applications to authenticate and access Google Cloud Platform resources securely." mapping: ClassVar[Dict[str, Bender]] = {"email": S("email"), "scopes": S("scopes", default=[])} email: Optional[str] = field(default=None) scopes: Optional[List[str]] = field(default=None) @@ -2548,6 +2764,8 @@ class GcpServiceAccount: @define(eq=False, slots=False) class GcpShieldedInstanceConfig: kind: ClassVar[str] = "gcp_shielded_instance_config" + kind_display: ClassVar[str] = "GCP Shielded Instance Config" + kind_description: ClassVar[str] = "Shielded Instance Config enables enhanced security and protection for virtual machines on Google Cloud Platform by validating the integrity of the boot firmware and verifying the virtual machine's identity." mapping: ClassVar[Dict[str, Bender]] = { "enable_integrity_monitoring": S("enableIntegrityMonitoring"), "enable_secure_boot": S("enableSecureBoot"), @@ -2561,6 +2779,8 @@ class GcpShieldedInstanceConfig: @define(eq=False, slots=False) class GcpTags: kind: ClassVar[str] = "gcp_tags" + kind_display: ClassVar[str] = "GCP Tags" + kind_description: ClassVar[str] = "GCP Tags are labels applied to resources in Google Cloud Platform (GCP) to organize and group them for easier management and control." mapping: ClassVar[Dict[str, Bender]] = {"fingerprint": S("fingerprint"), "items": S("items", default=[])} fingerprint: Optional[str] = field(default=None) items: Optional[List[str]] = field(default=None) @@ -2569,6 +2789,8 @@ class GcpTags: @define(eq=False, slots=False) class GcpInstanceProperties: kind: ClassVar[str] = "gcp_instance_properties" + kind_display: ClassVar[str] = "GCP Instance Properties" + kind_description: ClassVar[str] = "GCP Instance Properties are specific attributes and configurations for virtual machine instances in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "advanced_machine_features": S("advancedMachineFeatures", default={}) >> Bend(GcpAdvancedMachineFeatures.mapping), @@ -2619,6 +2841,8 @@ class GcpInstanceProperties: @define(eq=False, slots=False) class GcpDiskInstantiationConfig: kind: ClassVar[str] = "gcp_disk_instantiation_config" + kind_display: ClassVar[str] = "GCP Disk Instantiation Config" + kind_description: ClassVar[str] = "GCP Disk Instantiation Config is a configuration used for creating and customizing disks in Google Cloud Platform (GCP) that are used for storing data and attaching to virtual machines." mapping: ClassVar[Dict[str, Bender]] = { "auto_delete": S("autoDelete"), "custom_image": S("customImage"), @@ -2634,6 +2858,8 @@ class GcpDiskInstantiationConfig: @define(eq=False, slots=False) class GcpSourceInstanceParams: kind: ClassVar[str] = "gcp_source_instance_params" + kind_display: ClassVar[str] = "GCP Source Instance Params" + kind_description: ClassVar[str] = "In Google Cloud Platform (GCP), Source Instance Params are parameters used when creating a source instance for data migration or replication tasks." mapping: ClassVar[Dict[str, Bender]] = { "disk_configs": S("diskConfigs", default=[]) >> ForallBend(GcpDiskInstantiationConfig.mapping) } @@ -2643,6 +2869,8 @@ class GcpSourceInstanceParams: @define(eq=False, slots=False) class GcpInstanceTemplate(GcpResource): kind: ClassVar[str] = "gcp_instance_template" + kind_display: ClassVar[str] = "GCP Instance Template" + kind_description: ClassVar[str] = "GCP Instance Templates are reusable configuration templates that define the settings for Google Compute Engine virtual machine instances." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_machine_type"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -2681,6 +2909,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpInstanceParams: kind: ClassVar[str] = "gcp_instance_params" + kind_display: ClassVar[str] = "GCP Instance Parameters" + kind_description: ClassVar[str] = "GCP Instance Parameters are specific settings and configurations, such as machine type, disk size, and network settings, that can be applied to Google Cloud Platform virtual machine instances." mapping: ClassVar[Dict[str, Bender]] = {"resource_manager_tags": S("resourceManagerTags")} resource_manager_tags: Optional[Dict[str, str]] = field(default=None) @@ -2688,6 +2918,8 @@ class GcpInstanceParams: @define(eq=False, slots=False) class GcpInstance(GcpResource, BaseInstance): kind: ClassVar[str] = "gcp_instance" + kind_display: ClassVar[str] = "GCP Instance" + kind_description: ClassVar[str] = "GCP Instances are virtual machines in Google Cloud Platform that can be used to run applications and services on Google's infrastructure." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_network", "gcp_subnetwork", "gcp_machine_type"], @@ -2862,6 +3094,8 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: @define(eq=False, slots=False) class GcpInterconnectAttachmentPartnerMetadata: kind: ClassVar[str] = "gcp_interconnect_attachment_partner_metadata" + kind_display: ClassVar[str] = "GCP Interconnect Attachment Partner Metadata" + kind_description: ClassVar[str] = "Partner metadata for a Google Cloud Platform (GCP) Interconnect Attachment, which provides additional information about the partner associated with the interconnect attachment." mapping: ClassVar[Dict[str, Bender]] = { "interconnect_name": S("interconnectName"), "partner_name": S("partnerName"), @@ -2875,6 +3109,8 @@ class GcpInterconnectAttachmentPartnerMetadata: @define(eq=False, slots=False) class GcpInterconnectAttachment(GcpResource): kind: ClassVar[str] = "gcp_interconnect_attachment" + kind_display: ClassVar[str] = "GCP Interconnect Attachment" + kind_description: ClassVar[str] = "Interconnect Attachment is a resource that allows you to connect your on-premises network to Google Cloud Platform (GCP) using a dedicated physical link." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -2956,6 +3192,8 @@ class GcpInterconnectAttachment(GcpResource): @define(eq=False, slots=False) class GcpInterconnectLocationRegionInfo: kind: ClassVar[str] = "gcp_interconnect_location_region_info" + kind_display: ClassVar[str] = "GCP Interconnect Location Region Info" + kind_description: ClassVar[str] = "This resource provides information about the available regions for Google Cloud Platform (GCP) Interconnect locations." mapping: ClassVar[Dict[str, Bender]] = { "expected_rtt_ms": S("expectedRttMs"), "location_presence": S("locationPresence"), @@ -2969,6 +3207,8 @@ class GcpInterconnectLocationRegionInfo: @define(eq=False, slots=False) class GcpInterconnectLocation(GcpResource): kind: ClassVar[str] = "gcp_interconnect_location" + kind_display: ClassVar[str] = "GCP Interconnect Location" + kind_description: ClassVar[str] = "GCP Interconnect Location refers to the physical location where Google Cloud Platform (GCP) Interconnects are available. Interconnects provide dedicated connectivity options between an organization's on-premises network and GCP's network." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3015,6 +3255,8 @@ class GcpInterconnectLocation(GcpResource): @define(eq=False, slots=False) class GcpInterconnectCircuitInfo: kind: ClassVar[str] = "gcp_interconnect_circuit_info" + kind_display: ClassVar[str] = "GCP Interconnect Circuit Info" + kind_description: ClassVar[str] = "Interconnect Circuit Info provides details about the dedicated network connection between an on-premises network and Google Cloud Platform (GCP) for faster and more reliable communication." mapping: ClassVar[Dict[str, Bender]] = { "customer_demarc_id": S("customerDemarcId"), "google_circuit_id": S("googleCircuitId"), @@ -3028,6 +3270,8 @@ class GcpInterconnectCircuitInfo: @define(eq=False, slots=False) class GcpInterconnectOutageNotification: kind: ClassVar[str] = "gcp_interconnect_outage_notification" + kind_display: ClassVar[str] = "GCP Interconnect Outage Notification" + kind_description: ClassVar[str] = "GCP Interconnect Outage Notification is a service provided by Google Cloud Platform to inform users about any disruptions or outages in their Interconnect connectivity to the GCP network." mapping: ClassVar[Dict[str, Bender]] = { "affected_circuits": S("affectedCircuits", default=[]), "description": S("description"), @@ -3051,6 +3295,8 @@ class GcpInterconnectOutageNotification: @define(eq=False, slots=False) class GcpInterconnect(GcpResource): kind: ClassVar[str] = "gcp_interconnect" + kind_display: ClassVar[str] = "GCP Interconnect" + kind_description: ClassVar[str] = "GCP Interconnect is a dedicated connection between your on-premises network and Google Cloud Platform, providing a high-speed and reliable link for data transfer." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3110,6 +3356,8 @@ class GcpInterconnect(GcpResource): @define(eq=False, slots=False) class GcpLicenseResourceRequirements: kind: ClassVar[str] = "gcp_license_resource_requirements" + kind_display: ClassVar[str] = "GCP License Resource Requirements" + kind_description: ClassVar[str] = "GCP License Resource Requirements ensure that the necessary resources are available for managing licenses on the Google Cloud Platform (GCP)." mapping: ClassVar[Dict[str, Bender]] = { "min_guest_cpu_count": S("minGuestCpuCount"), "min_memory_mb": S("minMemoryMb"), @@ -3121,6 +3369,8 @@ class GcpLicenseResourceRequirements: @define(eq=False, slots=False) class GcpLicense(GcpResource): kind: ClassVar[str] = "gcp_license" + kind_display: ClassVar[str] = "GCP License" + kind_description: ClassVar[str] = "GCP Licenses are used to authorize the use of certain Google Cloud Platform services and resources." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3155,6 +3405,8 @@ class GcpLicense(GcpResource): @define(eq=False, slots=False) class GcpSavedDisk: kind: ClassVar[str] = "gcp_saved_disk" + kind_display: ClassVar[str] = "GCP Saved Disk" + kind_description: ClassVar[str] = "Saved Disks in Google Cloud Platform are persistent storage devices that can be attached to virtual machine instances, allowing users to store and retrieve data." mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "source_disk": S("sourceDisk"), @@ -3170,6 +3422,8 @@ class GcpSavedDisk: @define(eq=False, slots=False) class GcpSourceDiskEncryptionKey: kind: ClassVar[str] = "gcp_source_disk_encryption_key" + kind_display: ClassVar[str] = "GCP Source Disk Encryption Key" + kind_description: ClassVar[str] = "A GCP Source Disk Encryption Key is used to encrypt the disk images that are used as the sources for creating new disk images in Google Cloud Platform, ensuring data privacy and security." mapping: ClassVar[Dict[str, Bender]] = { "disk_encryption_key": S("diskEncryptionKey", default={}) >> Bend(GcpCustomerEncryptionKey.mapping), "source_disk": S("sourceDisk"), @@ -3181,6 +3435,8 @@ class GcpSourceDiskEncryptionKey: @define(eq=False, slots=False) class GcpSavedAttachedDisk: kind: ClassVar[str] = "gcp_saved_attached_disk" + kind_display: ClassVar[str] = "GCP Saved Attached Disk" + kind_description: ClassVar[str] = "GCP Saved Attached Disk is a disk storage resource in Google Cloud Platform that is attached to a virtual machine instance and can be saved as a separate resource for future use." mapping: ClassVar[Dict[str, Bender]] = { "auto_delete": S("autoDelete"), "boot": S("boot"), @@ -3218,6 +3474,8 @@ class GcpSavedAttachedDisk: @define(eq=False, slots=False) class GcpSourceInstanceProperties: kind: ClassVar[str] = "gcp_source_instance_properties" + kind_display: ClassVar[str] = "GCP Source Instance Properties" + kind_description: ClassVar[str] = "GCP Source Instance Properties refers to the configuration and characteristics of a virtual machine instance in Google Cloud Platform (GCP). It includes information such as the instance name, machine type, network settings, and attached disks." mapping: ClassVar[Dict[str, Bender]] = { "can_ip_forward": S("canIpForward"), "deletion_protection": S("deletionProtection"), @@ -3253,6 +3511,8 @@ class GcpSourceInstanceProperties: @define(eq=False, slots=False) class GcpMachineImage(GcpResource): kind: ClassVar[str] = "gcp_machine_image" + kind_display: ClassVar[str] = "GCP Machine Image" + kind_description: ClassVar[str] = "Machine Images in Google Cloud Platform are snapshots of a virtual machine's disk that can be used to create new instances with the same configuration and data." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_disk"], @@ -3317,6 +3577,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpAccelerators: kind: ClassVar[str] = "gcp_accelerators" + kind_display: ClassVar[str] = "GCP Accelerators" + kind_description: ClassVar[str] = "Accelerators in Google Cloud Platform provide specialized hardware to enhance the performance of compute-intensive workloads, such as machine learning and high-performance computing tasks." mapping: ClassVar[Dict[str, Bender]] = { "guest_accelerator_count": S("guestAcceleratorCount"), "guest_accelerator_type": S("guestAcceleratorType"), @@ -3328,6 +3590,8 @@ class GcpAccelerators: @define(eq=False, slots=False) class GcpMachineType(GcpResource, BaseInstanceType): kind: ClassVar[str] = "gcp_machine_type" + kind_display: ClassVar[str] = "GCP Machine Type" + kind_description: ClassVar[str] = "GCP Machine Types are predefined hardware configurations that define the virtualized hardware resources for Google Cloud Platform virtual machines." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3494,6 +3758,8 @@ def filter(sku: GcpSku) -> bool: @define(eq=False, slots=False) class GcpNetworkEdgeSecurityService(GcpResource): kind: ClassVar[str] = "gcp_network_edge_security_service" + kind_display: ClassVar[str] = "GCP Network Edge Security Service" + kind_description: ClassVar[str] = "GCP Network Edge Security Service provides secure and reliable access to resources in the Google Cloud Platform network, reducing the risk of unauthorized access and data breaches." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3529,6 +3795,8 @@ class GcpNetworkEdgeSecurityService(GcpResource): @define(eq=False, slots=False) class GcpNetworkPeering: kind: ClassVar[str] = "gcp_network_peering" + kind_display: ClassVar[str] = "GCP Network Peering" + kind_description: ClassVar[str] = "Network Peering in Google Cloud Platform enables direct connectivity between two Virtual Private Cloud (VPC) networks, allowing them to communicate securely and efficiently with each other." mapping: ClassVar[Dict[str, Bender]] = { "auto_create_routes": S("autoCreateRoutes"), "exchange_subnet_routes": S("exchangeSubnetRoutes"), @@ -3560,6 +3828,8 @@ class GcpNetworkPeering: @define(eq=False, slots=False) class GcpNetwork(GcpResource): kind: ClassVar[str] = "gcp_network" + kind_display: ClassVar[str] = "GCP Network" + kind_description: ClassVar[str] = "GCP Network is a virtual network infrastructure that allows users to securely connect and isolate their resources in the Google Cloud Platform." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3610,6 +3880,8 @@ class GcpNetwork(GcpResource): @define(eq=False, slots=False) class GcpNodeGroupAutoscalingPolicy: kind: ClassVar[str] = "gcp_node_group_autoscaling_policy" + kind_display: ClassVar[str] = "GCP Node Group Autoscaling Policy" + kind_description: ClassVar[str] = "GCP Node Group Autoscaling Policy is a feature in Google Cloud Platform that allows automatic adjustment of the number of nodes in a node group based on demand, ensuring optimal resource utilization and performance." mapping: ClassVar[Dict[str, Bender]] = {"max_nodes": S("maxNodes"), "min_nodes": S("minNodes"), "mode": S("mode")} max_nodes: Optional[int] = field(default=None) min_nodes: Optional[int] = field(default=None) @@ -3619,6 +3891,8 @@ class GcpNodeGroupAutoscalingPolicy: @define(eq=False, slots=False) class GcpNodeGroupMaintenanceWindow: kind: ClassVar[str] = "gcp_node_group_maintenance_window" + kind_display: ClassVar[str] = "GCP Node Group Maintenance Window" + kind_description: ClassVar[str] = "GCP Node Group Maintenance Window is a feature in Google Cloud Platform that allows users to schedule maintenance windows for node groups, during which the nodes can undergo maintenance operations without disrupting the applications running on them." mapping: ClassVar[Dict[str, Bender]] = { "maintenance_duration": S("maintenanceDuration", default={}) >> Bend(GcpDuration.mapping), "start_time": S("startTime"), @@ -3630,6 +3904,8 @@ class GcpNodeGroupMaintenanceWindow: @define(eq=False, slots=False) class GcpShareSettingsProjectConfig: kind: ClassVar[str] = "gcp_share_settings_project_config" + kind_display: ClassVar[str] = "GCP Share Settings Project Config" + kind_description: ClassVar[str] = "Share Settings Project Config represents the configuration settings for sharing projects in Google Cloud Platform (GCP)." mapping: ClassVar[Dict[str, Bender]] = {"project_id": S("projectId")} project_id: Optional[str] = field(default=None) @@ -3637,6 +3913,8 @@ class GcpShareSettingsProjectConfig: @define(eq=False, slots=False) class GcpShareSettings: kind: ClassVar[str] = "gcp_share_settings" + kind_display: ClassVar[str] = "GCP Share Settings" + kind_description: ClassVar[str] = "GCP Share Settings refer to the configuration options for sharing resources and access permissions in the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "project_map": S("projectMap", default={}) >> MapDict(value_bender=Bend(GcpShareSettingsProjectConfig.mapping)), "share_type": S("shareType"), @@ -3648,6 +3926,8 @@ class GcpShareSettings: @define(eq=False, slots=False) class GcpNodeGroup(GcpResource): kind: ClassVar[str] = "gcp_node_group" + kind_display: ClassVar[str] = "GCP Node Group" + kind_description: ClassVar[str] = "GCP Node Group is a resource in Google Cloud Platform that allows you to create and manage groups of virtual machines (nodes) for running applications." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_node_template"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -3697,6 +3977,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpLocalDisk: kind: ClassVar[str] = "gcp_local_disk" + kind_display: ClassVar[str] = "GCP Local Disk" + kind_description: ClassVar[str] = "GCP Local Disk is a type of storage device provided by Google Cloud Platform that allows users to store and access data on a virtual machine's local disk. It provides high-performance and low-latency storage for temporary or frequently accessed data." mapping: ClassVar[Dict[str, Bender]] = { "disk_count": S("diskCount"), "disk_size_gb": S("diskSizeGb"), @@ -3710,6 +3992,8 @@ class GcpLocalDisk: @define(eq=False, slots=False) class GcpNodeTemplateNodeTypeFlexibility: kind: ClassVar[str] = "gcp_node_template_node_type_flexibility" + kind_display: ClassVar[str] = "GCP Node Template Node Type Flexibility" + kind_description: ClassVar[str] = "This resource allows for flexible node type configuration in Google Cloud Platform node templates." mapping: ClassVar[Dict[str, Bender]] = {"cpus": S("cpus"), "local_ssd": S("localSsd"), "memory": S("memory")} cpus: Optional[str] = field(default=None) local_ssd: Optional[str] = field(default=None) @@ -3719,6 +4003,8 @@ class GcpNodeTemplateNodeTypeFlexibility: @define(eq=False, slots=False) class GcpNodeTemplate(GcpResource): kind: ClassVar[str] = "gcp_node_template" + kind_display: ClassVar[str] = "GCP Node Template" + kind_description: ClassVar[str] = "GCP Node Template is a reusable configuration template used to create and manage virtual machine instances in the Google Cloud Platform." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk_type"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -3770,6 +4056,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpNodeType(GcpResource): kind: ClassVar[str] = "gcp_node_type" + kind_display: ClassVar[str] = "GCP Node Type" + kind_description: ClassVar[str] = "GCP Node Types determine the hardware configuration of virtual machines in Google Cloud Platform (GCP). Each node type has specific CPU, memory, and storage capacity." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3804,6 +4092,8 @@ class GcpNodeType(GcpResource): @define(eq=False, slots=False) class GcpPacketMirroringForwardingRuleInfo: kind: ClassVar[str] = "gcp_packet_mirroring_forwarding_rule_info" + kind_display: ClassVar[str] = "GCP Packet Mirroring Forwarding Rule Info" + kind_description: ClassVar[str] = "Packet Mirroring Forwarding Rule Info provides information about the forwarding rules used for packet mirroring in Google Cloud Platform (GCP)." mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -3812,6 +4102,8 @@ class GcpPacketMirroringForwardingRuleInfo: @define(eq=False, slots=False) class GcpPacketMirroringFilter: kind: ClassVar[str] = "gcp_packet_mirroring_filter" + kind_display: ClassVar[str] = "GCP Packet Mirroring Filter" + kind_description: ClassVar[str] = "GCP Packet Mirroring Filter is a feature in Google Cloud Platform that allows filtering of network packets for traffic analysis and troubleshooting purposes." mapping: ClassVar[Dict[str, Bender]] = { "ip_protocols": S("IPProtocols", default=[]), "cidr_ranges": S("cidrRanges", default=[]), @@ -3825,6 +4117,8 @@ class GcpPacketMirroringFilter: @define(eq=False, slots=False) class GcpPacketMirroringMirroredResourceInfoInstanceInfo: kind: ClassVar[str] = "gcp_packet_mirroring_mirrored_resource_info_instance_info" + kind_display: ClassVar[str] = "GCP Packet Mirroring Mirrored Resource Instance Info" + kind_description: ClassVar[str] = "Packet Mirroring in Google Cloud Platform allows you to monitor and capture network traffic in real-time. This particular resource provides information about the instance being mirrored." mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -3833,6 +4127,8 @@ class GcpPacketMirroringMirroredResourceInfoInstanceInfo: @define(eq=False, slots=False) class GcpPacketMirroringMirroredResourceInfoSubnetInfo: kind: ClassVar[str] = "gcp_packet_mirroring_mirrored_resource_info_subnet_info" + kind_display: ClassVar[str] = "GCP Packet Mirroring Mirrored Resource Info Subnet Info" + kind_description: ClassVar[str] = "Packet Mirroring is a feature in Google Cloud Platform that allows you to duplicate and send network traffic from one subnet to another subnet for monitoring and analysis purposes." mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -3841,6 +4137,8 @@ class GcpPacketMirroringMirroredResourceInfoSubnetInfo: @define(eq=False, slots=False) class GcpPacketMirroringMirroredResourceInfo: kind: ClassVar[str] = "gcp_packet_mirroring_mirrored_resource_info" + kind_display: ClassVar[str] = "GCP Packet Mirroring Mirrored Resource Info" + kind_description: ClassVar[str] = "Packet Mirroring Mirrored Resource Info is a feature in Google Cloud Platform that allows users to collect and analyze network traffic by duplicating packets from a specific resource in the network." mapping: ClassVar[Dict[str, Bender]] = { "instances": S("instances", default=[]) >> ForallBend(GcpPacketMirroringMirroredResourceInfoInstanceInfo.mapping), @@ -3856,6 +4154,8 @@ class GcpPacketMirroringMirroredResourceInfo: @define(eq=False, slots=False) class GcpPacketMirroringNetworkInfo: kind: ClassVar[str] = "gcp_packet_mirroring_network_info" + kind_display: ClassVar[str] = "GCP Packet Mirroring Network Info" + kind_description: ClassVar[str] = "Packet Mirroring Network Info in Google Cloud Platform allows users to copy and analyze network traffic in virtual machine instances for monitoring, troubleshooting, and security purposes." mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -3864,6 +4164,8 @@ class GcpPacketMirroringNetworkInfo: @define(eq=False, slots=False) class GcpPacketMirroring(GcpResource): kind: ClassVar[str] = "gcp_packet_mirroring" + kind_display: ClassVar[str] = "GCP Packet Mirroring" + kind_description: ClassVar[str] = "GCP Packet Mirroring is a service provided by Google Cloud Platform that allows users to capture and mirror network traffic in order to monitor and analyze network data for security and troubleshooting purposes." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_instance", "gcp_subnetwork"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -3911,6 +4213,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpPublicAdvertisedPrefixPublicDelegatedPrefix: kind: ClassVar[str] = "gcp_public_advertised_prefix_public_delegated_prefix" + kind_display: ClassVar[str] = "GCP Public Advertised Prefix - Public Delegated Prefix" + kind_description: ClassVar[str] = "A GCP Public Advertised Prefix - Public Delegated Prefix is a range of IP addresses that can be advertised and delegated within the Google Cloud Platform network for public connectivity." mapping: ClassVar[Dict[str, Bender]] = { "ip_range": S("ipRange"), "name": S("name"), @@ -3928,6 +4232,8 @@ class GcpPublicAdvertisedPrefixPublicDelegatedPrefix: @define(eq=False, slots=False) class GcpPublicAdvertisedPrefix(GcpResource): kind: ClassVar[str] = "gcp_public_advertised_prefix" + kind_display: ClassVar[str] = "GCP Public Advertised Prefix" + kind_description: ClassVar[str] = "A GCP Public Advertised Prefix is a range of IP addresses that can be advertised over the internet to allow communication with GCP resources." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_public_delegated_prefix"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -3974,6 +4280,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpLicenseResourceCommitment: kind: ClassVar[str] = "gcp_license_resource_commitment" + kind_display: ClassVar[str] = "GCP License Resource Commitment" + kind_description: ClassVar[str] = "A GCP license resource commitment is a commitment made by a customer to use a specific software license offered by Google Cloud Platform (GCP) for a predetermined period of time. This commitment ensures consistent usage and cost savings for the customer." mapping: ClassVar[Dict[str, Bender]] = { "amount": S("amount"), "cores_per_license": S("coresPerLicense"), @@ -3987,6 +4295,8 @@ class GcpLicenseResourceCommitment: @define(eq=False, slots=False) class GcpAllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk: kind: ClassVar[str] = "gcp_allocation_specific_sku_allocation_allocated_instance_properties_reserved_disk" + kind_display: ClassVar[str] = "GCP Specific SKU Allocation Allocated Instance Properties Reserved Disk" + kind_description: ClassVar[str] = "This resource refers to the reserved disk attached to a specific SKU allocation in Google Cloud Platform. Reserved disks are persistent storage devices used by virtual machine instances." mapping: ClassVar[Dict[str, Bender]] = {"disk_size_gb": S("diskSizeGb") >> AsInt(), "interface": S("interface")} disk_size_gb: Optional[int] = field(default=None) interface: Optional[str] = field(default=None) @@ -3995,6 +4305,8 @@ class GcpAllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk: @define(eq=False, slots=False) class GcpAllocationSpecificSKUAllocationReservedInstanceProperties: kind: ClassVar[str] = "gcp_allocation_specific_sku_allocation_reserved_instance_properties" + kind_display: ClassVar[str] = "GCP Allocation Specific SKU Allocation Reserved Instance Properties" + kind_description: ClassVar[str] = "Reserved Instance Properties allow users to allocate specific SKUs for reserved instances in Google Cloud Platform, optimizing usage and cost management." mapping: ClassVar[Dict[str, Bender]] = { "guest_accelerators": S("guestAccelerators", default=[]) >> ForallBend(GcpAcceleratorConfig.mapping), "local_ssds": S("localSsds", default=[]) @@ -4015,6 +4327,8 @@ class GcpAllocationSpecificSKUAllocationReservedInstanceProperties: @define(eq=False, slots=False) class GcpAllocationSpecificSKUReservation: kind: ClassVar[str] = "gcp_allocation_specific_sku_reservation" + kind_display: ClassVar[str] = "GCP Allocation Specific SKU Reservation" + kind_description: ClassVar[str] = "A reservation for a specified SKU in Google Cloud Platform, allowing users to allocate and secure resources for future use." mapping: ClassVar[Dict[str, Bender]] = { "assured_count": S("assuredCount"), "count": S("count"), @@ -4031,6 +4345,8 @@ class GcpAllocationSpecificSKUReservation: @define(eq=False, slots=False) class GcpReservation: kind: ClassVar[str] = "gcp_reservation" + kind_display: ClassVar[str] = "GCP Reservation" + kind_description: ClassVar[str] = "GCP Reservation is a feature in Google Cloud Platform that allows users to reserve resources like virtual machine instances for future use, ensuring availability and cost savings." mapping: ClassVar[Dict[str, Bender]] = { "commitment": S("commitment"), "creation_timestamp": S("creationTimestamp"), @@ -4063,6 +4379,8 @@ class GcpReservation: @define(eq=False, slots=False) class GcpResourceCommitment: kind: ClassVar[str] = "gcp_resource_commitment" + kind_display: ClassVar[str] = "GCP Resource Commitment" + kind_description: ClassVar[str] = "GCP Resource Commitment is a way to reserve resources in Google Cloud Platform for a specific period, ensuring availability and capacity for your applications." mapping: ClassVar[Dict[str, Bender]] = { "accelerator_type": S("acceleratorType"), "amount": S("amount"), @@ -4076,6 +4394,8 @@ class GcpResourceCommitment: @define(eq=False, slots=False) class GcpCommitment(GcpResource): kind: ClassVar[str] = "gcp_commitment" + kind_display: ClassVar[str] = "GCP Commitment" + kind_description: ClassVar[str] = "A GCP Commitment is a pre-purchased commitment in Google Cloud Platform, which provides discounted pricing for certain services and resources." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4129,6 +4449,8 @@ class GcpCommitment(GcpResource): @define(eq=False, slots=False) class GcpHealthCheckService(GcpResource): kind: ClassVar[str] = "gcp_health_check_service" + kind_display: ClassVar[str] = "GCP Health Check Service" + kind_description: ClassVar[str] = "The GCP Health Check Service is a feature provided by Google Cloud Platform (GCP) that monitors the health and availability of backend services and instances." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4165,6 +4487,8 @@ class GcpHealthCheckService(GcpResource): @define(eq=False, slots=False) class GcpNotificationEndpointGrpcSettings: kind: ClassVar[str] = "gcp_notification_endpoint_grpc_settings" + kind_display: ClassVar[str] = "GCP Notification Endpoint gRPC Settings" + kind_description: ClassVar[str] = "gRPC settings for a notification endpoint in Google Cloud Platform (GCP). gRPC is a high-performance, open-source remote procedure call (RPC) framework that can be used to build efficient and scalable communication between client and server applications." mapping: ClassVar[Dict[str, Bender]] = { "authority": S("authority"), "endpoint": S("endpoint"), @@ -4182,6 +4506,8 @@ class GcpNotificationEndpointGrpcSettings: @define(eq=False, slots=False) class GcpNotificationEndpoint(GcpResource): kind: ClassVar[str] = "gcp_notification_endpoint" + kind_display: ClassVar[str] = "GCP Notification Endpoint" + kind_description: ClassVar[str] = "A GCP Notification Endpoint is a specific destination to send notifications from Google Cloud Platform services to, such as Pub/Sub or HTTP endpoints." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4213,6 +4539,8 @@ class GcpNotificationEndpoint(GcpResource): @define(eq=False, slots=False) class GcpSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig: kind: ClassVar[str] = "gcp_security_policy_adaptive_protection_config_layer7_ddos_defense_config" + kind_display: ClassVar[str] = "GCP Security Policy Adaptive Protection Config Layer 7 DDoS Defense Config" + kind_description: ClassVar[str] = "Adaptive Protection Config Layer 7 DDoS Defense Config is a feature of Google Cloud Platform's Security Policy that enables adaptive protection against Layer 7 Distributed Denial of Service (DDoS) attacks." mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "rule_visibility": S("ruleVisibility")} enable: Optional[bool] = field(default=None) rule_visibility: Optional[str] = field(default=None) @@ -4221,6 +4549,8 @@ class GcpSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig: @define(eq=False, slots=False) class GcpSecurityPolicyAdaptiveProtectionConfig: kind: ClassVar[str] = "gcp_security_policy_adaptive_protection_config" + kind_display: ClassVar[str] = "GCP Security Policy Adaptive Protection Config" + kind_description: ClassVar[str] = "The GCP Security Policy Adaptive Protection Config is a configuration setting that enables adaptive protection for a security policy in Google Cloud Platform. Adaptive protection dynamically adjusts the level of security based on the threat level and helps protect resources from malicious attacks." mapping: ClassVar[Dict[str, Bender]] = { "layer7_ddos_defense_config": S("layer7DdosDefenseConfig", default={}) >> Bend(GcpSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.mapping) @@ -4233,6 +4563,8 @@ class GcpSecurityPolicyAdaptiveProtectionConfig: @define(eq=False, slots=False) class GcpSecurityPolicyAdvancedOptionsConfigJsonCustomConfig: kind: ClassVar[str] = "gcp_security_policy_advanced_options_config_json_custom_config" + kind_display: ClassVar[str] = "GCP Security Policy Advanced Options Config JSON Custom Config" + kind_description: ClassVar[str] = "This resource allows users to configure advanced options for security policies in Google Cloud Platform (GCP) using custom config in JSON format." mapping: ClassVar[Dict[str, Bender]] = {"content_types": S("contentTypes", default=[])} content_types: Optional[List[str]] = field(default=None) @@ -4240,6 +4572,8 @@ class GcpSecurityPolicyAdvancedOptionsConfigJsonCustomConfig: @define(eq=False, slots=False) class GcpSecurityPolicyAdvancedOptionsConfig: kind: ClassVar[str] = "gcp_security_policy_advanced_options_config" + kind_display: ClassVar[str] = "GCP Security Policy Advanced Options Config" + kind_description: ClassVar[str] = "This is a configuration for advanced options in a Google Cloud Platform (GCP) Security Policy. It allows for fine-grained control and customization of the security policies for different resources in the GCP environment." mapping: ClassVar[Dict[str, Bender]] = { "json_custom_config": S("jsonCustomConfig", default={}) >> Bend(GcpSecurityPolicyAdvancedOptionsConfigJsonCustomConfig.mapping), @@ -4254,6 +4588,8 @@ class GcpSecurityPolicyAdvancedOptionsConfig: @define(eq=False, slots=False) class GcpSecurityPolicyRuleHttpHeaderActionHttpHeaderOption: kind: ClassVar[str] = "gcp_security_policy_rule_http_header_action_http_header_option" + kind_display: ClassVar[str] = "GCP Security Policy Rule HTTP Header Action HTTP Header Option" + kind_description: ClassVar[str] = "HTTP Header Option is a feature in Google Cloud Platform's Security Policy that allows you to define specific actions to be taken on HTTP headers in network traffic." mapping: ClassVar[Dict[str, Bender]] = {"header_name": S("headerName"), "header_value": S("headerValue")} header_name: Optional[str] = field(default=None) header_value: Optional[str] = field(default=None) @@ -4262,6 +4598,8 @@ class GcpSecurityPolicyRuleHttpHeaderActionHttpHeaderOption: @define(eq=False, slots=False) class GcpSecurityPolicyRuleHttpHeaderAction: kind: ClassVar[str] = "gcp_security_policy_rule_http_header_action" + kind_display: ClassVar[str] = "GCP Security Policy Rule HTTP Header Action" + kind_description: ClassVar[str] = "HTTP Header Action is a rule for configuring security policies in Google Cloud Platform (GCP) to control and manipulate HTTP headers for network traffic." mapping: ClassVar[Dict[str, Bender]] = { "request_headers_to_adds": S("requestHeadersToAdds", default=[]) >> ForallBend(GcpSecurityPolicyRuleHttpHeaderActionHttpHeaderOption.mapping) @@ -4272,6 +4610,8 @@ class GcpSecurityPolicyRuleHttpHeaderAction: @define(eq=False, slots=False) class GcpSecurityPolicyRuleMatcherConfig: kind: ClassVar[str] = "gcp_security_policy_rule_matcher_config" + kind_display: ClassVar[str] = "GCP Security Policy Rule Matcher Config" + kind_description: ClassVar[str] = "GCP Security Policy Rule Matcher Config represents the configuration settings used to specify the matching criteria for security policy rules in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"src_ip_ranges": S("srcIpRanges", default=[])} src_ip_ranges: Optional[List[str]] = field(default=None) @@ -4279,6 +4619,8 @@ class GcpSecurityPolicyRuleMatcherConfig: @define(eq=False, slots=False) class GcpExpr: kind: ClassVar[str] = "gcp_expr" + kind_display: ClassVar[str] = "GCP Express Route" + kind_description: ClassVar[str] = "GCP Express Route is a high-performance, reliable, and cost-effective way to establish private connections between data centers and Google Cloud Platform (GCP) resources." mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "expression": S("expression"), @@ -4294,6 +4636,8 @@ class GcpExpr: @define(eq=False, slots=False) class GcpSecurityPolicyRuleMatcher: kind: ClassVar[str] = "gcp_security_policy_rule_matcher" + kind_display: ClassVar[str] = "GCP Security Policy Rule Matcher" + kind_description: ClassVar[str] = "A rule matcher in the Google Cloud Platform (GCP) Security Policy that defines the conditions for matching traffic and applying relevant security policy rules." mapping: ClassVar[Dict[str, Bender]] = { "config": S("config", default={}) >> Bend(GcpSecurityPolicyRuleMatcherConfig.mapping), "expr": S("expr", default={}) >> Bend(GcpExpr.mapping), @@ -4307,6 +4651,8 @@ class GcpSecurityPolicyRuleMatcher: @define(eq=False, slots=False) class GcpSecurityPolicyRuleRateLimitOptionsThreshold: kind: ClassVar[str] = "gcp_security_policy_rule_rate_limit_options_threshold" + kind_display: ClassVar[str] = "GCP Security Policy Rate Limit Options Threshold" + kind_description: ClassVar[str] = "This is a threshold value used in Google Cloud Platform Security Policies to limit the rate at which requests are processed." mapping: ClassVar[Dict[str, Bender]] = {"count": S("count"), "interval_sec": S("intervalSec")} count: Optional[int] = field(default=None) interval_sec: Optional[int] = field(default=None) @@ -4315,6 +4661,8 @@ class GcpSecurityPolicyRuleRateLimitOptionsThreshold: @define(eq=False, slots=False) class GcpSecurityPolicyRuleRedirectOptions: kind: ClassVar[str] = "gcp_security_policy_rule_redirect_options" + kind_display: ClassVar[str] = "GCP Security Policy Rule Redirect Options" + kind_description: ClassVar[str] = "GCP Security Policy Rule Redirect Options provide a way to configure redirection rules for network traffic in Google Cloud Platform, enabling users to redirect traffic to a different destination or URL." mapping: ClassVar[Dict[str, Bender]] = {"target": S("target"), "type": S("type")} target: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -4323,6 +4671,8 @@ class GcpSecurityPolicyRuleRedirectOptions: @define(eq=False, slots=False) class GcpSecurityPolicyRuleRateLimitOptions: kind: ClassVar[str] = "gcp_security_policy_rule_rate_limit_options" + kind_display: ClassVar[str] = "GCP Security Policy Rule Rate Limit Options" + kind_description: ClassVar[str] = "Rate Limit Options in the Google Cloud Platform (GCP) Security Policy Rule allow you to set limits on the amount of traffic that can pass through a security policy rule within a certain time period." mapping: ClassVar[Dict[str, Bender]] = { "ban_duration_sec": S("banDurationSec"), "ban_threshold": S("banThreshold", default={}) >> Bend(GcpSecurityPolicyRuleRateLimitOptionsThreshold.mapping), @@ -4348,6 +4698,8 @@ class GcpSecurityPolicyRuleRateLimitOptions: @define(eq=False, slots=False) class GcpSecurityPolicyRule: kind: ClassVar[str] = "gcp_security_policy_rule" + kind_display: ClassVar[str] = "GCP Security Policy Rule" + kind_description: ClassVar[str] = "A GCP Security Policy Rule defines the allowed or denied traffic for a particular network resource in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "action": S("action"), "description": S("description"), @@ -4371,6 +4723,8 @@ class GcpSecurityPolicyRule: @define(eq=False, slots=False) class GcpSecurityPolicy(GcpResource): kind: ClassVar[str] = "gcp_security_policy" + kind_display: ClassVar[str] = "GCP Security Policy" + kind_description: ClassVar[str] = "GCP Security Policy is a feature of Google Cloud Platform that allows users to define and enforce security rules and policies for their virtual machine instances." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4413,6 +4767,8 @@ class GcpSecurityPolicy(GcpResource): @define(eq=False, slots=False) class GcpSslCertificateManagedSslCertificate: kind: ClassVar[str] = "gcp_ssl_certificate_managed_ssl_certificate" + kind_display: ClassVar[str] = "GCP SSL Certificate (Managed SSL Certificate)" + kind_description: ClassVar[str] = "Managed SSL Certificates in Google Cloud Platform provide secure HTTPS connections for websites and applications, safeguarding data transmitted over the internet." mapping: ClassVar[Dict[str, Bender]] = { "domain_status": S("domainStatus"), "domains": S("domains", default=[]), @@ -4426,6 +4782,8 @@ class GcpSslCertificateManagedSslCertificate: @define(eq=False, slots=False) class GcpSslCertificateSelfManagedSslCertificate: kind: ClassVar[str] = "gcp_ssl_certificate_self_managed_ssl_certificate" + kind_display: ClassVar[str] = "GCP Self-Managed SSL Certificate" + kind_description: ClassVar[str] = "A self-managed SSL certificate is a digital certificate issued by an organization for its own use, allowing secure communication between a client and a server. GCP allows users to manage their own SSL certificates." mapping: ClassVar[Dict[str, Bender]] = {"certificate": S("certificate"), "private_key": S("privateKey")} certificate: Optional[str] = field(default=None) private_key: Optional[str] = field(default=None) @@ -4434,6 +4792,8 @@ class GcpSslCertificateSelfManagedSslCertificate: @define(eq=False, slots=False) class GcpSslCertificate(GcpResource): kind: ClassVar[str] = "gcp_ssl_certificate" + kind_display: ClassVar[str] = "GCP SSL Certificate" + kind_description: ClassVar[str] = "SSL Certificate is a digital certificate that authenticates the identity of a website and encrypts information sent to the server, ensuring secure communication over the Google Cloud Platform." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4474,6 +4834,8 @@ class GcpSslCertificate(GcpResource): @define(eq=False, slots=False) class GcpSslPolicy(GcpResource): kind: ClassVar[str] = "gcp_ssl_policy" + kind_display: ClassVar[str] = "GCP SSL Policy" + kind_description: ClassVar[str] = "SSL policies in Google Cloud Platform (GCP) manage how SSL/TLS connections are established and maintained for HTTPS services." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4512,6 +4874,8 @@ class GcpSslPolicy(GcpResource): @define(eq=False, slots=False) class GcpTargetHttpProxy(GcpResource): kind: ClassVar[str] = "gcp_target_http_proxy" + kind_display: ClassVar[str] = "GCP Target HTTP Proxy" + kind_description: ClassVar[str] = "GCP Target HTTP Proxy is a resource in Google Cloud Platform that allows for load balancing and routing of HTTP traffic to backend services." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_url_map"]}, "successors": {"default": ["gcp_url_map"]}, @@ -4552,6 +4916,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpTargetHttpsProxy(GcpResource): kind: ClassVar[str] = "gcp_target_https_proxy" + kind_display: ClassVar[str] = "GCP Target HTTPS Proxy" + kind_description: ClassVar[str] = "A GCP Target HTTPS Proxy is a Google Cloud Platform resource that enables you to configure SSL/TLS termination for HTTP(S) load balancing, allowing secure communication between clients and your backend services." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_ssl_certificate", "gcp_ssl_policy"], "delete": ["gcp_url_map"]}, "successors": {"default": ["gcp_url_map"]}, @@ -4609,6 +4975,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpTargetTcpProxy(GcpResource): kind: ClassVar[str] = "gcp_target_tcp_proxy" + kind_display: ClassVar[str] = "GCP Target TCP Proxy" + kind_description: ClassVar[str] = "Target TCP Proxy is a Google Cloud Platform service that allows you to load balance TCP traffic to backend instances based on target proxy configuration." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_backend_service"]}, "successors": {"default": ["gcp_backend_service"]}, @@ -4649,6 +5017,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpCorsPolicy: kind: ClassVar[str] = "gcp_cors_policy" + kind_display: ClassVar[str] = "GCP CORS Policy" + kind_description: ClassVar[str] = "CORS (Cross-Origin Resource Sharing) Policy in Google Cloud Platform allows controlled sharing of resources between different origins, enabling web applications to make requests to resources from other domains." mapping: ClassVar[Dict[str, Bender]] = { "allow_credentials": S("allowCredentials"), "allow_headers": S("allowHeaders", default=[]), @@ -4672,6 +5042,8 @@ class GcpCorsPolicy: @define(eq=False, slots=False) class GcpHttpFaultAbort: kind: ClassVar[str] = "gcp_http_fault_abort" + kind_display: ClassVar[str] = "GCP HTTP Fault Abort" + kind_description: ClassVar[str] = "HTTP Fault Abort is a feature in Google Cloud Platform that allows you to simulate aborting an HTTP request for testing and troubleshooting purposes." mapping: ClassVar[Dict[str, Bender]] = {"http_status": S("httpStatus"), "percentage": S("percentage")} http_status: Optional[int] = field(default=None) percentage: Optional[float] = field(default=None) @@ -4680,6 +5052,8 @@ class GcpHttpFaultAbort: @define(eq=False, slots=False) class GcpHttpFaultDelay: kind: ClassVar[str] = "gcp_http_fault_delay" + kind_display: ClassVar[str] = "GCP HTTP Fault Delay" + kind_description: ClassVar[str] = "HTTP Fault Delay is a feature in Google Cloud Platform that allows users to inject delays in HTTP responses for testing fault tolerance and resilience of applications." mapping: ClassVar[Dict[str, Bender]] = { "fixed_delay": S("fixedDelay", default={}) >> Bend(GcpDuration.mapping), "percentage": S("percentage"), @@ -4691,6 +5065,8 @@ class GcpHttpFaultDelay: @define(eq=False, slots=False) class GcpHttpFaultInjection: kind: ClassVar[str] = "gcp_http_fault_injection" + kind_display: ClassVar[str] = "GCP HTTP Fault Injection" + kind_description: ClassVar[str] = "GCP HTTP Fault Injection is a feature in Google Cloud Platform that allows injecting faults into HTTP requests to test the resilience of applications and services." mapping: ClassVar[Dict[str, Bender]] = { "abort": S("abort", default={}) >> Bend(GcpHttpFaultAbort.mapping), "delay": S("delay", default={}) >> Bend(GcpHttpFaultDelay.mapping), @@ -4702,6 +5078,8 @@ class GcpHttpFaultInjection: @define(eq=False, slots=False) class GcpHttpRetryPolicy: kind: ClassVar[str] = "gcp_http_retry_policy" + kind_display: ClassVar[str] = "GCP HTTP Retry Policy" + kind_description: ClassVar[str] = "GCP HTTP Retry Policy allows users to define and configure retry behavior for HTTP requests made to resources in the Google Cloud Platform infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "num_retries": S("numRetries"), "per_try_timeout": S("perTryTimeout", default={}) >> Bend(GcpDuration.mapping), @@ -4715,6 +5093,8 @@ class GcpHttpRetryPolicy: @define(eq=False, slots=False) class GcpUrlRewrite: kind: ClassVar[str] = "gcp_url_rewrite" + kind_display: ClassVar[str] = "GCP URL Rewrite" + kind_description: ClassVar[str] = "GCP URL Rewrite is a feature in Google Cloud Platform that allows users to modify and redirect incoming URLs based on predefined rules." mapping: ClassVar[Dict[str, Bender]] = { "host_rewrite": S("hostRewrite"), "path_prefix_rewrite": S("pathPrefixRewrite"), @@ -4726,6 +5106,8 @@ class GcpUrlRewrite: @define(eq=False, slots=False) class GcpHttpHeaderOption: kind: ClassVar[str] = "gcp_http_header_option" + kind_display: ClassVar[str] = "GCP HTTP Header Option" + kind_description: ClassVar[str] = "GCP HTTP Header Option allows users to configure and control the HTTP headers for their applications running on the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "header_name": S("headerName"), "header_value": S("headerValue"), @@ -4739,6 +5121,8 @@ class GcpHttpHeaderOption: @define(eq=False, slots=False) class GcpHttpHeaderAction: kind: ClassVar[str] = "gcp_http_header_action" + kind_display: ClassVar[str] = "GCP HTTP Header Action" + kind_description: ClassVar[str] = "GCP HTTP Header Action is a feature in Google Cloud Platform that allows users to configure actions to be taken based on the HTTP header of a request." mapping: ClassVar[Dict[str, Bender]] = { "request_headers_to_add": S("requestHeadersToAdd", default=[]) >> ForallBend(GcpHttpHeaderOption.mapping), "request_headers_to_remove": S("requestHeadersToRemove", default=[]), @@ -4754,6 +5138,8 @@ class GcpHttpHeaderAction: @define(eq=False, slots=False) class GcpWeightedBackendService: kind: ClassVar[str] = "gcp_weighted_backend_service" + kind_display: ClassVar[str] = "GCP Weighted Backend Service" + kind_description: ClassVar[str] = "A GCP Weighted Backend Service is a load balancer that distributes traffic across multiple backend services using weights assigned to each service." mapping: ClassVar[Dict[str, Bender]] = { "backend_service": S("backendService"), "header_action": S("headerAction", default={}) >> Bend(GcpHttpHeaderAction.mapping), @@ -4767,6 +5153,8 @@ class GcpWeightedBackendService: @define(eq=False, slots=False) class GcpHttpRouteAction: kind: ClassVar[str] = "gcp_http_route_action" + kind_display: ClassVar[str] = "GCP HTTP Route Action" + kind_description: ClassVar[str] = "HTTP Route Action is a feature in Google Cloud Platform that allows users to define the actions to be performed on HTTP requests (e.g., forwarding, redirecting) within a route." mapping: ClassVar[Dict[str, Bender]] = { "cors_policy": S("corsPolicy", default={}) >> Bend(GcpCorsPolicy.mapping), "fault_injection_policy": S("faultInjectionPolicy", default={}) >> Bend(GcpHttpFaultInjection.mapping), @@ -4791,6 +5179,8 @@ class GcpHttpRouteAction: @define(eq=False, slots=False) class GcpHttpRedirectAction: kind: ClassVar[str] = "gcp_http_redirect_action" + kind_display: ClassVar[str] = "GCP HTTP Redirect Action" + kind_description: ClassVar[str] = "HTTP Redirect Action is a resource in Google Cloud Platform (GCP) that allows you to redirect incoming HTTP requests to another URL." mapping: ClassVar[Dict[str, Bender]] = { "host_redirect": S("hostRedirect"), "https_redirect": S("httpsRedirect"), @@ -4810,6 +5200,8 @@ class GcpHttpRedirectAction: @define(eq=False, slots=False) class GcpHostRule: kind: ClassVar[str] = "gcp_host_rule" + kind_display: ClassVar[str] = "GCP Host Rule" + kind_description: ClassVar[str] = "A GCP Host Rule is a configuration that maps a hostname to a specific backend service in Google Cloud Platform, allowing for customized routing of incoming traffic based on the requested domain name." mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "hosts": S("hosts", default=[]), @@ -4823,6 +5215,8 @@ class GcpHostRule: @define(eq=False, slots=False) class GcpPathRule: kind: ClassVar[str] = "gcp_path_rule" + kind_display: ClassVar[str] = "GCP Path Rule" + kind_description: ClassVar[str] = "GCP Path Rule is a routing rule defined in Google Cloud Platform (GCP) to direct incoming traffic to specific destinations based on the URL path." mapping: ClassVar[Dict[str, Bender]] = { "paths": S("paths", default=[]), "route_action": S("routeAction", default={}) >> Bend(GcpHttpRouteAction.mapping), @@ -4838,6 +5232,8 @@ class GcpPathRule: @define(eq=False, slots=False) class GcpInt64RangeMatch: kind: ClassVar[str] = "gcp_int64_range_match" + kind_display: ClassVar[str] = "GCP Int64 Range Match" + kind_description: ClassVar[str] = "GCP Int64 Range Match is a feature in Google Cloud Platform that enables matching a specific 64-bit integer value within a given range." mapping: ClassVar[Dict[str, Bender]] = {"range_end": S("rangeEnd"), "range_start": S("rangeStart")} range_end: Optional[str] = field(default=None) range_start: Optional[str] = field(default=None) @@ -4846,6 +5242,8 @@ class GcpInt64RangeMatch: @define(eq=False, slots=False) class GcpHttpHeaderMatch: kind: ClassVar[str] = "gcp_http_header_match" + kind_display: ClassVar[str] = "GCP HTTP Header Match" + kind_description: ClassVar[str] = "GCP HTTP Header Match is a feature in Google Cloud Platform that allows users to match HTTP headers in order to control traffic routing, load balancing, and other network operations." mapping: ClassVar[Dict[str, Bender]] = { "exact_match": S("exactMatch"), "header_name": S("headerName"), @@ -4869,6 +5267,8 @@ class GcpHttpHeaderMatch: @define(eq=False, slots=False) class GcpHttpQueryParameterMatch: kind: ClassVar[str] = "gcp_http_query_parameter_match" + kind_display: ClassVar[str] = "GCP HTTP Query Parameter Match" + kind_description: ClassVar[str] = "GCP HTTP Query Parameter Match is a feature in Google Cloud Platform that allows users to configure HTTP(S) Load Balancing to route traffic based on matching query parameters in the request URL." mapping: ClassVar[Dict[str, Bender]] = { "exact_match": S("exactMatch"), "name": S("name"), @@ -4884,6 +5284,8 @@ class GcpHttpQueryParameterMatch: @define(eq=False, slots=False) class GcpHttpRouteRuleMatch: kind: ClassVar[str] = "gcp_http_route_rule_match" + kind_display: ClassVar[str] = "GCP HTTP Route Rule Match" + kind_description: ClassVar[str] = "HTTP Route Rule Match is a feature in Google Cloud Platform (GCP) that allows fine-grained control and management of HTTP traffic routing within GCP infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "full_path_match": S("fullPathMatch"), "header_matches": S("headerMatches", default=[]) >> ForallBend(GcpHttpHeaderMatch.mapping), @@ -4906,6 +5308,8 @@ class GcpHttpRouteRuleMatch: @define(eq=False, slots=False) class GcpHttpRouteRule: kind: ClassVar[str] = "gcp_http_route_rule" + kind_display: ClassVar[str] = "GCP HTTP Route Rule" + kind_description: ClassVar[str] = "HTTP Route Rule is a configuration in Google Cloud Platform (GCP) that defines how incoming HTTP requests should be routed to different backend services or resources based on matching conditions." mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "header_action": S("headerAction", default={}) >> Bend(GcpHttpHeaderAction.mapping), @@ -4927,6 +5331,8 @@ class GcpHttpRouteRule: @define(eq=False, slots=False) class GcpPathMatcher: kind: ClassVar[str] = "gcp_path_matcher" + kind_display: ClassVar[str] = "GCP Path Matcher" + kind_description: ClassVar[str] = "A GCP Path Matcher is used for defining the path patterns that a request URL must match in order to be routed to a specific backend service." mapping: ClassVar[Dict[str, Bender]] = { "default_route_action": S("defaultRouteAction", default={}) >> Bend(GcpHttpRouteAction.mapping), "default_service": S("defaultService"), @@ -4950,6 +5356,8 @@ class GcpPathMatcher: @define(eq=False, slots=False) class GcpUrlMapTestHeader: kind: ClassVar[str] = "gcp_url_map_test_header" + kind_display: ClassVar[str] = "GCP URL Map Test Header" + kind_description: ClassVar[str] = "GCP URL Map Test Header is a configuration feature in Google Cloud Platform that allows users to test and validate different HTTP headers for load balancing purposes." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -4958,6 +5366,8 @@ class GcpUrlMapTestHeader: @define(eq=False, slots=False) class GcpUrlMapTest: kind: ClassVar[str] = "gcp_url_map_test" + kind_display: ClassVar[str] = "GCP URL Map Test" + kind_description: ClassVar[str] = "GCP URL Map Test is a test configuration for mapping URLs to backend services in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "expected_output_url": S("expectedOutputUrl"), @@ -4979,6 +5389,8 @@ class GcpUrlMapTest: @define(eq=False, slots=False) class GcpUrlMap(GcpResource): kind: ClassVar[str] = "gcp_url_map" + kind_display: ClassVar[str] = "GCP URL Map" + kind_description: ClassVar[str] = "A GCP URL Map is a resource that maps a URL path to a specific backend service in Google Cloud Platform. It allows for routing of requests based on the URL path." reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_backend_service"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -5026,6 +5438,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpResourcePolicyGroupPlacementPolicy: kind: ClassVar[str] = "gcp_resource_policy_group_placement_policy" + kind_display: ClassVar[str] = "GCP Resource Policy Group Placement Policy" + kind_description: ClassVar[str] = "A resource policy group placement policy in Google Cloud Platform (GCP) allows you to control the placement of resources within a group, ensuring high availability and efficient utilization of resources." mapping: ClassVar[Dict[str, Bender]] = { "availability_domain_count": S("availabilityDomainCount"), "collocation": S("collocation"), @@ -5039,6 +5453,8 @@ class GcpResourcePolicyGroupPlacementPolicy: @define(eq=False, slots=False) class GcpResourcePolicyInstanceSchedulePolicy: kind: ClassVar[str] = "gcp_resource_policy_instance_schedule_policy" + kind_display: ClassVar[str] = "GCP Resource Policy Instance Schedule Policy" + kind_description: ClassVar[str] = "Resource policy instance schedule policy is a policy in Google Cloud Platform that allows users to define schedules for starting and stopping instances to optimize cost and manage resource usage." mapping: ClassVar[Dict[str, Bender]] = { "expiration_time": S("expirationTime"), "start_time": S("startTime"), @@ -5056,6 +5472,8 @@ class GcpResourcePolicyInstanceSchedulePolicy: @define(eq=False, slots=False) class GcpResourcePolicyResourceStatusInstanceSchedulePolicyStatus: kind: ClassVar[str] = "gcp_resource_policy_resource_status_instance_schedule_policy_status" + kind_display: ClassVar[str] = "GCP Resource Policy Resource Status Instance Schedule Policy Status" + kind_description: ClassVar[str] = "This resource represents the status of a scheduling policy for instances in Google Cloud Platform (GCP) resource policy." mapping: ClassVar[Dict[str, Bender]] = { "last_run_start_time": S("lastRunStartTime"), "next_run_start_time": S("nextRunStartTime"), @@ -5067,6 +5485,8 @@ class GcpResourcePolicyResourceStatusInstanceSchedulePolicyStatus: @define(eq=False, slots=False) class GcpResourcePolicyResourceStatus: kind: ClassVar[str] = "gcp_resource_policy_resource_status" + kind_display: ClassVar[str] = "GCP Resource Policy Resource Status" + kind_description: ClassVar[str] = "Resource Policy Resource Status is a feature in Google Cloud Platform (GCP) that provides information about the status of resource policies applied to different cloud resources within a GCP project." mapping: ClassVar[Dict[str, Bender]] = { "instance_schedule_policy": S("instanceSchedulePolicy", default={}) >> Bend(GcpResourcePolicyResourceStatusInstanceSchedulePolicyStatus.mapping) @@ -5079,6 +5499,8 @@ class GcpResourcePolicyResourceStatus: @define(eq=False, slots=False) class GcpResourcePolicySnapshotSchedulePolicyRetentionPolicy: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy_retention_policy" + kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy Retention Policy" + kind_description: ClassVar[str] = "Retention policy for snapshot schedules in Google Cloud Platform's resource policy allows users to define how long the snapshots will be retained." mapping: ClassVar[Dict[str, Bender]] = { "max_retention_days": S("maxRetentionDays"), "on_source_disk_delete": S("onSourceDiskDelete"), @@ -5090,6 +5512,8 @@ class GcpResourcePolicySnapshotSchedulePolicyRetentionPolicy: @define(eq=False, slots=False) class GcpResourcePolicyDailyCycle: kind: ClassVar[str] = "gcp_resource_policy_daily_cycle" + kind_display: ClassVar[str] = "GCP Resource Policy Daily Cycle" + kind_description: ClassVar[str] = "GCP Resource Policy Daily Cycle is a feature in Google Cloud Platform that allows you to define and enforce policies for your cloud resources on a daily basis." mapping: ClassVar[Dict[str, Bender]] = { "days_in_cycle": S("daysInCycle"), "duration": S("duration"), @@ -5103,6 +5527,8 @@ class GcpResourcePolicyDailyCycle: @define(eq=False, slots=False) class GcpResourcePolicyHourlyCycle: kind: ClassVar[str] = "gcp_resource_policy_hourly_cycle" + kind_display: ClassVar[str] = "GCP Resource Policy Hourly Cycle" + kind_description: ClassVar[str] = "GCP Resource Policy Hourly Cycle is a feature in Google Cloud Platform that allows users to define resource policies for their cloud resources on an hourly basis, ensuring efficient allocation and utilization." mapping: ClassVar[Dict[str, Bender]] = { "duration": S("duration"), "hours_in_cycle": S("hoursInCycle"), @@ -5116,6 +5542,8 @@ class GcpResourcePolicyHourlyCycle: @define(eq=False, slots=False) class GcpResourcePolicyWeeklyCycleDayOfWeek: kind: ClassVar[str] = "gcp_resource_policy_weekly_cycle_day_of_week" + kind_display: ClassVar[str] = "GCP Resource Policy Weekly Cycle Day of Week" + kind_description: ClassVar[str] = "GCP Resource Policy Weekly Cycle Day of Week is a setting in Google Cloud Platform that allows users to specify and control the day of the week when a resource policy should be applied." mapping: ClassVar[Dict[str, Bender]] = {"day": S("day"), "duration": S("duration"), "start_time": S("startTime")} day: Optional[str] = field(default=None) duration: Optional[str] = field(default=None) @@ -5125,6 +5553,8 @@ class GcpResourcePolicyWeeklyCycleDayOfWeek: @define(eq=False, slots=False) class GcpResourcePolicyWeeklyCycle: kind: ClassVar[str] = "gcp_resource_policy_weekly_cycle" + kind_display: ClassVar[str] = "GCP Resource Policy Weekly Cycle" + kind_description: ClassVar[str] = "The GCP Resource Policy Weekly Cycle is a recurring schedule for managing and controlling resources in Google Cloud Platform (GCP) by specifying policies that define what actions can be performed on the resources during a specific weekly cycle." mapping: ClassVar[Dict[str, Bender]] = { "day_of_weeks": S("dayOfWeeks", default=[]) >> ForallBend(GcpResourcePolicyWeeklyCycleDayOfWeek.mapping) } @@ -5134,6 +5564,8 @@ class GcpResourcePolicyWeeklyCycle: @define(eq=False, slots=False) class GcpResourcePolicySnapshotSchedulePolicySchedule: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy_schedule" + kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy Schedule" + kind_description: ClassVar[str] = "This resource represents a schedule for snapshot policies in Google Cloud Platform's resource policy framework." mapping: ClassVar[Dict[str, Bender]] = { "daily_schedule": S("dailySchedule", default={}) >> Bend(GcpResourcePolicyDailyCycle.mapping), "hourly_schedule": S("hourlySchedule", default={}) >> Bend(GcpResourcePolicyHourlyCycle.mapping), @@ -5147,6 +5579,8 @@ class GcpResourcePolicySnapshotSchedulePolicySchedule: @define(eq=False, slots=False) class GcpResourcePolicySnapshotSchedulePolicySnapshotProperties: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy_snapshot_properties" + kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy Snapshot Properties" + kind_description: ClassVar[str] = "This represents the snapshot schedule policy properties for GCP resource policies, allowing users to configure automated snapshot creation and deletion for their resources in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "chain_name": S("chainName"), "guest_flush": S("guestFlush"), @@ -5162,6 +5596,8 @@ class GcpResourcePolicySnapshotSchedulePolicySnapshotProperties: @define(eq=False, slots=False) class GcpResourcePolicySnapshotSchedulePolicy: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy" + kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy" + kind_description: ClassVar[str] = "Resource Policy Snapshot Schedule Policy is a feature in Google Cloud Platform that allows users to define a policy for creating and managing scheduled snapshots of resources." mapping: ClassVar[Dict[str, Bender]] = { "retention_policy": S("retentionPolicy", default={}) >> Bend(GcpResourcePolicySnapshotSchedulePolicyRetentionPolicy.mapping), @@ -5177,6 +5613,8 @@ class GcpResourcePolicySnapshotSchedulePolicy: @define(eq=False, slots=False) class GcpResourcePolicy(GcpResource): kind: ClassVar[str] = "gcp_resource_policy" + kind_display: ClassVar[str] = "GCP Resource Policy" + kind_description: ClassVar[str] = "GCP Resource Policy is a feature provided by Google Cloud Platform that allows users to define fine-grained policies for managing and controlling access to cloud resources like compute instances, storage buckets, and networking resources." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -5217,6 +5655,8 @@ class GcpResourcePolicy(GcpResource): @define(eq=False, slots=False) class GcpRouterAdvertisedIpRange: kind: ClassVar[str] = "gcp_router_advertised_ip_range" + kind_display: ClassVar[str] = "GCP Router Advertised IP Range" + kind_description: ClassVar[str] = "GCP Router Advertised IP Range is a range of IP addresses that are advertised by the Google Cloud Platform (GCP) router, allowing communication between different networks within the GCP infrastructure." mapping: ClassVar[Dict[str, Bender]] = {"description": S("description"), "range": S("range")} description: Optional[str] = field(default=None) range: Optional[str] = field(default=None) @@ -5225,6 +5665,8 @@ class GcpRouterAdvertisedIpRange: @define(eq=False, slots=False) class GcpRouterBgp: kind: ClassVar[str] = "gcp_router_bgp" + kind_display: ClassVar[str] = "GCP Router BGP" + kind_description: ClassVar[str] = "GCP Router BGP is a feature in Google Cloud Platform that enables Border Gateway Protocol (BGP) routing between Google's network and external networks, providing improved network scalability and flexibility." mapping: ClassVar[Dict[str, Bender]] = { "advertise_mode": S("advertiseMode"), "advertised_groups": S("advertisedGroups", default=[]), @@ -5242,6 +5684,8 @@ class GcpRouterBgp: @define(eq=False, slots=False) class GcpRouterBgpPeerBfd: kind: ClassVar[str] = "gcp_router_bgp_peer_bfd" + kind_display: ClassVar[str] = "GCP Router BGP Peer BFD" + kind_description: ClassVar[str] = "BFD (Bidirectional Forwarding Detection) is a feature in Google Cloud Platform (GCP) that allows BGP (Border Gateway Protocol) peers to quickly detect and recover from network failures." mapping: ClassVar[Dict[str, Bender]] = { "min_receive_interval": S("minReceiveInterval"), "min_transmit_interval": S("minTransmitInterval"), @@ -5257,6 +5701,8 @@ class GcpRouterBgpPeerBfd: @define(eq=False, slots=False) class GcpRouterBgpPeer: kind: ClassVar[str] = "gcp_router_bgp_peer" + kind_display: ClassVar[str] = "GCP Router BGP Peer" + kind_description: ClassVar[str] = "A BGP (Border Gateway Protocol) Peer associated with a Google Cloud Platform (GCP) Router. BGP Peers are used to establish and manage a routing session between routers in order to exchange routing information." mapping: ClassVar[Dict[str, Bender]] = { "advertise_mode": S("advertiseMode"), "advertised_groups": S("advertisedGroups", default=[]), @@ -5298,6 +5744,8 @@ class GcpRouterBgpPeer: @define(eq=False, slots=False) class GcpRouterInterface: kind: ClassVar[str] = "gcp_router_interface" + kind_display: ClassVar[str] = "GCP Router Interface" + kind_description: ClassVar[str] = "A router interface in Google Cloud Platform (GCP) is a connection point for a virtual network to interconnect with other networks or the internet." mapping: ClassVar[Dict[str, Bender]] = { "ip_range": S("ipRange"), "linked_interconnect_attachment": S("linkedInterconnectAttachment"), @@ -5321,6 +5769,8 @@ class GcpRouterInterface: @define(eq=False, slots=False) class GcpRouterMd5AuthenticationKey: kind: ClassVar[str] = "gcp_router_md5_authentication_key" + kind_display: ClassVar[str] = "GCP Router MD5 Authentication Key" + kind_description: ClassVar[str] = "GCP Router MD5 Authentication Key is a security feature in Google Cloud Platform that uses the MD5 algorithm to authenticate traffic between routers." mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "name": S("name")} key: Optional[str] = field(default=None) name: Optional[str] = field(default=None) @@ -5329,6 +5779,8 @@ class GcpRouterMd5AuthenticationKey: @define(eq=False, slots=False) class GcpRouterNatLogConfig: kind: ClassVar[str] = "gcp_router_nat_log_config" + kind_display: ClassVar[str] = "GCP Router NAT Log Config" + kind_description: ClassVar[str] = "The GCP Router NAT Log Config is a configuration option for logging NAT (Network Address Translation) events in Google Cloud Platform routers." mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "filter": S("filter")} enable: Optional[bool] = field(default=None) filter: Optional[str] = field(default=None) @@ -5337,6 +5789,8 @@ class GcpRouterNatLogConfig: @define(eq=False, slots=False) class GcpRouterNatRuleAction: kind: ClassVar[str] = "gcp_router_nat_rule_action" + kind_display: ClassVar[str] = "GCP Router NAT Rule Action" + kind_description: ClassVar[str] = "A GCP Router NAT Rule Action is used in Google Cloud Platform to configure the action for Network Address Translation (NAT) rules on a router. NAT rules determine how network traffic is translated between different IP address ranges." mapping: ClassVar[Dict[str, Bender]] = { "source_nat_active_ips": S("sourceNatActiveIps", default=[]), "source_nat_drain_ips": S("sourceNatDrainIps", default=[]), @@ -5348,6 +5802,8 @@ class GcpRouterNatRuleAction: @define(eq=False, slots=False) class GcpRouterNatRule: kind: ClassVar[str] = "gcp_router_nat_rule" + kind_display: ClassVar[str] = "GCP Router NAT Rule" + kind_description: ClassVar[str] = "GCP Router NAT Rule allows users to configure Network Address Translation (NAT) rules on Google Cloud Platform's routers, enabling communication between networks with different IP address ranges." mapping: ClassVar[Dict[str, Bender]] = { "action": S("action", default={}) >> Bend(GcpRouterNatRuleAction.mapping), "description": S("description"), @@ -5363,6 +5819,8 @@ class GcpRouterNatRule: @define(eq=False, slots=False) class GcpRouterNatSubnetworkToNat: kind: ClassVar[str] = "gcp_router_nat_subnetwork_to_nat" + kind_display: ClassVar[str] = "GCP Router NAT Subnetwork-to-NAT" + kind_description: ClassVar[str] = "This resource in Google Cloud Platform (GCP) allows you to configure Network Address Translation (NAT) for subnetworks, enabling communication between private subnet resources and external networks." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "secondary_ip_range_names": S("secondaryIpRangeNames", default=[]), @@ -5376,6 +5834,8 @@ class GcpRouterNatSubnetworkToNat: @define(eq=False, slots=False) class GcpRouterNat: kind: ClassVar[str] = "gcp_router_nat" + kind_display: ClassVar[str] = "GCP Router NAT" + kind_description: ClassVar[str] = "GCP Router NAT is a Cloud NAT service provided by Google Cloud Platform, which allows virtual machine instances without external IP addresses to access the internet and receive inbound traffic." mapping: ClassVar[Dict[str, Bender]] = { "drain_nat_ips": S("drainNatIps", default=[]), "enable_dynamic_port_allocation": S("enableDynamicPortAllocation"), @@ -5419,6 +5879,8 @@ class GcpRouterNat: @define(eq=False, slots=False) class GcpRouter(GcpResource): kind: ClassVar[str] = "gcp_router" + kind_display: ClassVar[str] = "GCP Router" + kind_description: ClassVar[str] = "GCP Router is a networking component in Google Cloud Platform that directs traffic between virtual networks." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]} } @@ -5467,6 +5929,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpRouteAsPath: kind: ClassVar[str] = "gcp_route_as_path" + kind_display: ClassVar[str] = "GCP Route AS Path" + kind_description: ClassVar[str] = "AS Path is a attribute in BGP routing protocol that represents the sequence of Autonomous System numbers that a route has traversed." mapping: ClassVar[Dict[str, Bender]] = { "as_lists": S("asLists", default=[]), "path_segment_type": S("pathSegmentType"), @@ -5478,6 +5942,8 @@ class GcpRouteAsPath: @define(eq=False, slots=False) class GcpRoute(GcpResource): kind: ClassVar[str] = "gcp_route" + kind_display: ClassVar[str] = "GCP Route" + kind_description: ClassVar[str] = "A GCP Route is a rule that specifies the next-hop information for network traffic within a Google Cloud Platform virtual network." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]} } @@ -5541,6 +6007,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpServiceAttachmentConnectedEndpoint: kind: ClassVar[str] = "gcp_service_attachment_connected_endpoint" + kind_display: ClassVar[str] = "GCP Service Attachment Connected Endpoint" + kind_description: ClassVar[str] = "A connected endpoint in Google Cloud Platform (GCP) service attachment represents the network endpoint that is connected to a service attachment, allowing communication between the attachment and the endpoint." mapping: ClassVar[Dict[str, Bender]] = { "endpoint": S("endpoint"), "psc_connection_id": S("pscConnectionId"), @@ -5554,6 +6022,8 @@ class GcpServiceAttachmentConnectedEndpoint: @define(eq=False, slots=False) class GcpServiceAttachmentConsumerProjectLimit: kind: ClassVar[str] = "gcp_service_attachment_consumer_project_limit" + kind_display: ClassVar[str] = "GCP Service Attachment Consumer Project Limit" + kind_description: ClassVar[str] = "This is a limit imposed on the number of projects that can consume a specific service attachment in Google Cloud Platform (GCP). A service attachment allows a project to use a service or resource from another project." mapping: ClassVar[Dict[str, Bender]] = { "connection_limit": S("connectionLimit"), "project_id_or_num": S("projectIdOrNum"), @@ -5565,6 +6035,8 @@ class GcpServiceAttachmentConsumerProjectLimit: @define(eq=False, slots=False) class GcpUint128: kind: ClassVar[str] = "gcp_uint128" + kind_display: ClassVar[str] = "GCP Uint128" + kind_description: ClassVar[str] = "Uint128 is an unsigned 128-bit integer type in Google Cloud Platform (GCP). It is used for performing arithmetic operations on large numbers in GCP applications." mapping: ClassVar[Dict[str, Bender]] = {"high": S("high"), "low": S("low")} high: Optional[str] = field(default=None) low: Optional[str] = field(default=None) @@ -5573,6 +6045,8 @@ class GcpUint128: @define(eq=False, slots=False) class GcpServiceAttachment(GcpResource): kind: ClassVar[str] = "gcp_service_attachment" + kind_display: ClassVar[str] = "GCP Service Attachment" + kind_description: ClassVar[str] = "GCP Service Attachment refers to the attachment of a Google Cloud Platform service to a particular resource, enabling the service to interact and operate with that resource." reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_backend_service", "gcp_subnetwork"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -5631,6 +6105,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpSnapshot(GcpResource): kind: ClassVar[str] = "gcp_snapshot" + kind_display: ClassVar[str] = "GCP Snapshot" + kind_description: ClassVar[str] = "GCP Snapshot is a point-in-time copy of the data in a persistent disk in Google Cloud Platform, allowing for data backup and recovery." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -5705,6 +6181,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpSubnetworkLogConfig: kind: ClassVar[str] = "gcp_subnetwork_log_config" + kind_display: ClassVar[str] = "GCP Subnetwork Log Config" + kind_description: ClassVar[str] = "GCP Subnetwork Log Config is a feature provided by Google Cloud Platform (GCP) that allows users to configure logging for subnetworks. It enables the collection and analysis of network traffic logs for better network security and troubleshooting." mapping: ClassVar[Dict[str, Bender]] = { "aggregation_interval": S("aggregationInterval"), "enable": S("enable"), @@ -5724,6 +6202,8 @@ class GcpSubnetworkLogConfig: @define(eq=False, slots=False) class GcpSubnetworkSecondaryRange: kind: ClassVar[str] = "gcp_subnetwork_secondary_range" + kind_display: ClassVar[str] = "GCP Subnetwork Secondary Range" + kind_description: ClassVar[str] = "GCP Subnetwork Secondary Range is a range of IP addresses that can be used for assigning to instances or services within a Google Cloud Platform subnetwork." mapping: ClassVar[Dict[str, Bender]] = {"ip_cidr_range": S("ipCidrRange"), "range_name": S("rangeName")} ip_cidr_range: Optional[str] = field(default=None) range_name: Optional[str] = field(default=None) @@ -5732,6 +6212,8 @@ class GcpSubnetworkSecondaryRange: @define(eq=False, slots=False) class GcpSubnetwork(GcpResource): kind: ClassVar[str] = "gcp_subnetwork" + kind_display: ClassVar[str] = "GCP Subnetwork" + kind_description: ClassVar[str] = "A GCP Subnetwork is a segmented network within a Virtual Private Cloud (VPC) that allows for more granular control over network traffic and IP address allocation." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]} } @@ -5799,6 +6281,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpTargetGrpcProxy(GcpResource): kind: ClassVar[str] = "gcp_target_grpc_proxy" + kind_display: ClassVar[str] = "GCP Target gRPC Proxy" + kind_description: ClassVar[str] = "GCP Target gRPC Proxy is a service in Google Cloud Platform that allows you to load balance gRPC traffic to backend services." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["gcp_url_map"], @@ -5843,6 +6327,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpTargetInstance(GcpResource): kind: ClassVar[str] = "gcp_target_instance" + kind_display: ClassVar[str] = "GCP Target Instance" + kind_description: ClassVar[str] = "Target Instances in Google Cloud Platform are virtual machine instances that are used as forwarding targets for load balancing and traffic routing." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_instance"]}, "successors": {"default": ["gcp_instance"]}, @@ -5885,6 +6371,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpTargetPool(GcpResource): kind: ClassVar[str] = "gcp_target_pool" + kind_display: ClassVar[str] = "GCP Target Pool" + kind_description: ClassVar[str] = "Target Pools in Google Cloud Platform (GCP) are groups of instances that can receive traffic from a load balancer. They are used to distribute incoming requests across multiple backend instances." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_http_health_check", "gcp_instance"]}, "successors": {"delete": ["gcp_http_health_check", "gcp_instance"]}, @@ -5933,6 +6421,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpTargetSslProxy(GcpResource): kind: ClassVar[str] = "gcp_target_ssl_proxy" + kind_display: ClassVar[str] = "GCP Target SSL Proxy" + kind_description: ClassVar[str] = "A GCP Target SSL Proxy is a resource that terminates SSL/TLS traffic for a specific target HTTPS or SSL Proxy load balancing setup in Google Cloud Platform." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_ssl_certificate", "gcp_backend_service"]}, "successors": {"default": ["gcp_ssl_certificate", "gcp_backend_service"]}, @@ -5980,6 +6470,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpTargetVpnGateway(GcpResource): kind: ClassVar[str] = "gcp_target_vpn_gateway" + kind_display: ClassVar[str] = "GCP Target VPN Gateway" + kind_description: ClassVar[str] = "Target VPN Gateway is a virtual private network (VPN) gateway that allows secure communication between on-premises networks and networks running on Google Cloud Platform (GCP)." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]}, } @@ -6021,6 +6513,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpVpnGatewayVpnGatewayInterface: kind: ClassVar[str] = "gcp_vpn_gateway_vpn_gateway_interface" + kind_display: ClassVar[str] = "GCP VPN Gateway VPN Gateway Interface" + kind_description: ClassVar[str] = "The VPN Gateway Interface is a network interface used by the VPN Gateway in Google Cloud Platform to establish secure connections between on-premises networks and GCP virtual networks." mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "interconnect_attachment": S("interconnectAttachment"), @@ -6034,6 +6528,8 @@ class GcpVpnGatewayVpnGatewayInterface: @define(eq=False, slots=False) class GcpVpnGateway(GcpResource): kind: ClassVar[str] = "gcp_vpn_gateway" + kind_display: ClassVar[str] = "GCP VPN Gateway" + kind_description: ClassVar[str] = "GCP VPN Gateway is a virtual private network (VPN) gateway on Google Cloud Platform that allows users to securely connect their on-premises network to their GCP network." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]}, "successors": {"default": ["gcp_interconnect_attachment"]}, @@ -6077,6 +6573,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpVpnTunnel(GcpResource): kind: ClassVar[str] = "gcp_vpn_tunnel" + kind_display: ClassVar[str] = "GCP VPN Tunnel" + kind_description: ClassVar[str] = "A GCP VPN Tunnel is a secure virtual connection that allows users to connect their on-premises network to their Google Cloud Platform (GCP) Virtual Private Cloud (VPC)." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["gcp_target_vpn_gateway", "gcp_vpn_gateway", "gcp_router"], diff --git a/plugins/gcp/resoto_plugin_gcp/resources/container.py b/plugins/gcp/resoto_plugin_gcp/resources/container.py index 5224527db6..2515140d81 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/container.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/container.py @@ -16,6 +16,8 @@ @define(eq=False, slots=False) class GcpContainerCloudRunConfig: kind: ClassVar[str] = "gcp_container_cloud_run_config" + kind_display: ClassVar[str] = "GCP Container Cloud Run Configuration" + kind_description: ClassVar[str] = "GCP Container Cloud Run Config allows users to define and configure runtime settings for applications running on Google Cloud's serverless platform, Cloud Run." mapping: ClassVar[Dict[str, Bender]] = {"disabled": S("disabled"), "load_balancer_type": S("loadBalancerType")} disabled: Optional[bool] = field(default=None) load_balancer_type: Optional[str] = field(default=None) @@ -24,6 +26,8 @@ class GcpContainerCloudRunConfig: @define(eq=False, slots=False) class GcpContainerAddonsConfig: kind: ClassVar[str] = "gcp_container_addons_config" + kind_display: ClassVar[str] = "GCP Container Addons Config" + kind_description: ClassVar[str] = "GCP Container Addons Config is a configuration setting in Google Cloud Platform that allows users to enable or disable add-ons for Kubernetes Engine clusters." mapping: ClassVar[Dict[str, Bender]] = { "cloud_run_config": S("cloudRunConfig", default={}) >> Bend(GcpContainerCloudRunConfig.mapping), "config_connector_config": S("configConnectorConfig", "enabled"), @@ -51,6 +55,8 @@ class GcpContainerAddonsConfig: @define(eq=False, slots=False) class GcpContainerAuthenticatorGroupsConfig: kind: ClassVar[str] = "gcp_container_authenticator_groups_config" + kind_display: ClassVar[str] = "GCP Container Authenticator Groups Config" + kind_description: ClassVar[str] = "GCP Container Authenticator Groups Config is a configuration resource in Google Cloud Platform that allows users to define groups of authenticated users and their access privileges for container-based applications." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "security_group": S("securityGroup")} enabled: Optional[bool] = field(default=None) security_group: Optional[str] = field(default=None) @@ -59,6 +65,8 @@ class GcpContainerAuthenticatorGroupsConfig: @define(eq=False, slots=False) class GcpContainerAutoUpgradeOptions: kind: ClassVar[str] = "gcp_container_auto_upgrade_options" + kind_display: ClassVar[str] = "GCP Container Auto-Upgrade Options" + kind_description: ClassVar[str] = "GCP Container Auto-Upgrade Options refer to the settings available for automatically upgrading Kubernetes clusters in the Google Cloud Platform, ensuring that they are always running the latest version of Kubernetes for enhanced security and performance." mapping: ClassVar[Dict[str, Bender]] = { "auto_upgrade_start_time": S("autoUpgradeStartTime"), "description": S("description"), @@ -70,6 +78,8 @@ class GcpContainerAutoUpgradeOptions: @define(eq=False, slots=False) class GcpContainerNodeManagement: kind: ClassVar[str] = "gcp_container_node_management" + kind_display: ClassVar[str] = "GCP Container Node Management" + kind_description: ClassVar[str] = "GCP Container Node Management is a service provided by Google Cloud Platform for managing and orchestrating containers running on GCP Kubernetes Engine." mapping: ClassVar[Dict[str, Bender]] = { "auto_repair": S("autoRepair"), "auto_upgrade": S("autoUpgrade"), @@ -83,6 +93,8 @@ class GcpContainerNodeManagement: @define(eq=False, slots=False) class GcpContainerShieldedInstanceConfig: kind: ClassVar[str] = "gcp_container_shielded_instance_config" + kind_display: ClassVar[str] = "GCP Container Shielded Instance Config" + kind_description: ClassVar[str] = "Shielded Instance Config is a feature in Google Cloud Platform that adds layers of security to container instances, protecting them from various attack vectors and ensuring the integrity of the running container images." mapping: ClassVar[Dict[str, Bender]] = { "enable_integrity_monitoring": S("enableIntegrityMonitoring"), "enable_secure_boot": S("enableSecureBoot"), @@ -94,6 +106,8 @@ class GcpContainerShieldedInstanceConfig: @define(eq=False, slots=False) class GcpContainerStandardRolloutPolicy: kind: ClassVar[str] = "gcp_container_standard_rollout_policy" + kind_display: ClassVar[str] = "GCP Container Standard Rollout Policy" + kind_description: ClassVar[str] = "A rollout policy in Google Cloud Platform (GCP) Container is a standard mechanism that defines how new versions of a container should be gradually deployed to a cluster in a controlled manner." mapping: ClassVar[Dict[str, Bender]] = { "batch_node_count": S("batchNodeCount"), "batch_percentage": S("batchPercentage"), @@ -107,6 +121,8 @@ class GcpContainerStandardRolloutPolicy: @define(eq=False, slots=False) class GcpContainerBlueGreenSettings: kind: ClassVar[str] = "gcp_container_blue_green_settings" + kind_display: ClassVar[str] = "GCP Container Blue-Green Settings" + kind_description: ClassVar[str] = "GCP Container Blue-Green Settings refers to the ability to deploy new versions of containers in a blue-green manner, enabling seamless deployment and testing of code changes without affecting production traffic." mapping: ClassVar[Dict[str, Bender]] = { "node_pool_soak_duration": S("nodePoolSoakDuration"), "standard_rollout_policy": S("standardRolloutPolicy", default={}) @@ -119,6 +135,8 @@ class GcpContainerBlueGreenSettings: @define(eq=False, slots=False) class GcpContainerUpgradeSettings: kind: ClassVar[str] = "gcp_container_upgrade_settings" + kind_display: ClassVar[str] = "GCP Container Upgrade Settings" + kind_description: ClassVar[str] = "GCP Container Upgrade Settings are configurations that allow users to manage and control the upgrade process of their containerized applications in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "blue_green_settings": S("blueGreenSettings", default={}) >> Bend(GcpContainerBlueGreenSettings.mapping), "max_surge": S("maxSurge"), @@ -134,6 +152,8 @@ class GcpContainerUpgradeSettings: @define(eq=False, slots=False) class GcpContainerAutoprovisioningNodePoolDefaults: kind: ClassVar[str] = "gcp_container_autoprovisioning_node_pool_defaults" + kind_display: ClassVar[str] = "GCP Container Autoprovisioning Node Pool Defaults" + kind_description: ClassVar[str] = "Autoprovisioning Node Pool Defaults is a feature of Google Cloud Platform (GCP) Container Engine that automatically creates and manages additional node pools based on workload demands." mapping: ClassVar[Dict[str, Bender]] = { "boot_disk_kms_key": S("bootDiskKmsKey"), "disk_size_gb": S("diskSizeGb"), @@ -162,6 +182,8 @@ class GcpContainerAutoprovisioningNodePoolDefaults: @define(eq=False, slots=False) class GcpContainerResourceLimit: kind: ClassVar[str] = "gcp_container_resource_limit" + kind_display: ClassVar[str] = "GCP Container Resource Limit" + kind_description: ClassVar[str] = "Container Resource Limit in Google Cloud Platform (GCP) is a feature that allows you to set resource constraints on containers, such as CPU and memory limits, to ensure efficient resource allocation and prevent resource starvation." mapping: ClassVar[Dict[str, Bender]] = { "maximum": S("maximum"), "minimum": S("minimum"), @@ -175,6 +197,8 @@ class GcpContainerResourceLimit: @define(eq=False, slots=False) class GcpContainerClusterAutoscaling: kind: ClassVar[str] = "gcp_container_cluster_autoscaling" + kind_display: ClassVar[str] = "GCP Container Cluster Autoscaling" + kind_description: ClassVar[str] = "Container Cluster Autoscaling is a feature in Google Cloud Platform (GCP) that dynamically adjusts the number of nodes in a container cluster based on application demand and resource utilization." mapping: ClassVar[Dict[str, Bender]] = { "autoprovisioning_locations": S("autoprovisioningLocations", default=[]), "autoprovisioning_node_pool_defaults": S("autoprovisioningNodePoolDefaults", default={}) @@ -193,6 +217,8 @@ class GcpContainerClusterAutoscaling: @define(eq=False, slots=False) class GcpContainerBinaryAuthorization: kind: ClassVar[str] = "gcp_container_binary_authorization" + kind_display: ClassVar[str] = "GCP Container Binary Authorization" + kind_description: ClassVar[str] = "GCP Container Binary Authorization is a service that ensures only trusted container images are deployed in your Google Cloud environment, helping to prevent unauthorized or vulnerable images from running in production." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "evaluation_mode": S("evaluationMode")} enabled: Optional[bool] = field(default=None) evaluation_mode: Optional[str] = field(default=None) @@ -201,6 +227,8 @@ class GcpContainerBinaryAuthorization: @define(eq=False, slots=False) class GcpContainerStatusCondition: kind: ClassVar[str] = "gcp_container_status_condition" + kind_display: ClassVar[str] = "GCP Container Status Condition" + kind_description: ClassVar[str] = "Container Status Condition represents the current status condition of a container in the Google Cloud Platform Container Registry." mapping: ClassVar[Dict[str, Bender]] = { "canonical_code": S("canonicalCode"), "code": S("code"), @@ -214,6 +242,8 @@ class GcpContainerStatusCondition: @define(eq=False, slots=False) class GcpContainerDatabaseEncryption: kind: ClassVar[str] = "gcp_container_database_encryption" + kind_display: ClassVar[str] = "GCP Container Database Encryption" + kind_description: ClassVar[str] = "GCP Container Database Encryption provides enhanced security by encrypting the data stored in containers, ensuring the confidentiality and integrity of the data at rest." mapping: ClassVar[Dict[str, Bender]] = {"key_name": S("keyName"), "state": S("state")} key_name: Optional[str] = field(default=None) state: Optional[str] = field(default=None) @@ -222,6 +252,8 @@ class GcpContainerDatabaseEncryption: @define(eq=False, slots=False) class GcpContainerIPAllocationPolicy: kind: ClassVar[str] = "gcp_container_ip_allocation_policy" + kind_display: ClassVar[str] = "GCP Container IP Allocation Policy" + kind_description: ClassVar[str] = "Container IP Allocation Policy is a feature in Google Cloud Platform that allows users to define and manage the IP address allocation policy for containers in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "cluster_ipv4_cidr": S("clusterIpv4Cidr"), "cluster_ipv4_cidr_block": S("clusterIpv4CidrBlock"), @@ -259,6 +291,8 @@ class GcpContainerIPAllocationPolicy: @define(eq=False, slots=False) class GcpContainerLoggingComponentConfig: kind: ClassVar[str] = "gcp_container_logging_component_config" + kind_display: ClassVar[str] = "GCP Container Logging Component Config" + kind_description: ClassVar[str] = "Container Logging Component Config is a configuration setting for logging containers in the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"enable_components": S("enableComponents", default=[])} enable_components: Optional[List[str]] = field(default=None) @@ -266,6 +300,8 @@ class GcpContainerLoggingComponentConfig: @define(eq=False, slots=False) class GcpContainerLoggingConfig: kind: ClassVar[str] = "gcp_container_logging_config" + kind_display: ClassVar[str] = "GCP Container Logging Config" + kind_description: ClassVar[str] = "Container Logging Config is a feature in Google Cloud Platform (GCP) that allows users to configure and manage logging for their containerized applications running on GCP's Kubernetes Engine clusters." mapping: ClassVar[Dict[str, Bender]] = { "component_config": S("componentConfig", default={}) >> Bend(GcpContainerLoggingComponentConfig.mapping) } @@ -275,6 +311,8 @@ class GcpContainerLoggingConfig: @define(eq=False, slots=False) class GcpContainerDailyMaintenanceWindow: kind: ClassVar[str] = "gcp_container_daily_maintenance_window" + kind_display: ClassVar[str] = "GCP Container Daily Maintenance Window" + kind_description: ClassVar[str] = "This resource represents the daily maintenance window for Google Cloud Platform (GCP) containers, during which routine maintenance activities can take place." mapping: ClassVar[Dict[str, Bender]] = {"duration": S("duration"), "start_time": S("startTime")} duration: Optional[str] = field(default=None) start_time: Optional[datetime] = field(default=None) @@ -283,6 +321,8 @@ class GcpContainerDailyMaintenanceWindow: @define(eq=False, slots=False) class GcpContainerTimeWindow: kind: ClassVar[str] = "gcp_container_time_window" + kind_display: ClassVar[str] = "GCP Container Time Window" + kind_description: ClassVar[str] = "A time window feature in GCP that allows users to specify the period of time during which their containers are allowed to run." mapping: ClassVar[Dict[str, Bender]] = { "end_time": S("endTime"), "maintenance_exclusion_options": S("maintenanceExclusionOptions", "scope"), @@ -296,6 +336,8 @@ class GcpContainerTimeWindow: @define(eq=False, slots=False) class GcpContainerRecurringTimeWindow: kind: ClassVar[str] = "gcp_container_recurring_time_window" + kind_display: ClassVar[str] = "GCP Container Recurring Time Window" + kind_description: ClassVar[str] = "A recurring time window in Google Cloud Platform's container environment, used for scheduling recurring tasks or events." mapping: ClassVar[Dict[str, Bender]] = { "recurrence": S("recurrence"), "window": S("window", default={}) >> Bend(GcpContainerTimeWindow.mapping), @@ -307,6 +349,8 @@ class GcpContainerRecurringTimeWindow: @define(eq=False, slots=False) class GcpContainerMaintenanceWindow: kind: ClassVar[str] = "gcp_container_maintenance_window" + kind_display: ClassVar[str] = "GCP Container Maintenance Window" + kind_description: ClassVar[str] = "A maintenance window is a designated time period during which planned maintenance can be performed on Google Cloud Platform (GCP) containers without impacting the availability of the services." mapping: ClassVar[Dict[str, Bender]] = { "daily_maintenance_window": S("dailyMaintenanceWindow", default={}) >> Bend(GcpContainerDailyMaintenanceWindow.mapping), @@ -322,6 +366,8 @@ class GcpContainerMaintenanceWindow: @define(eq=False, slots=False) class GcpContainerMaintenancePolicy: kind: ClassVar[str] = "gcp_container_maintenance_policy" + kind_display: ClassVar[str] = "GCP Container Maintenance Policy" + kind_description: ClassVar[str] = "GCP Container Maintenance Policy is a feature in Google Cloud Platform that allows users to define how their container clusters will be updated and maintained by specifying maintenance windows and auto-upgrade settings." mapping: ClassVar[Dict[str, Bender]] = { "resource_version": S("resourceVersion"), "window": S("window", default={}) >> Bend(GcpContainerMaintenanceWindow.mapping), @@ -333,6 +379,8 @@ class GcpContainerMaintenancePolicy: @define(eq=False, slots=False) class GcpContainerMasterAuth: kind: ClassVar[str] = "gcp_container_master_auth" + kind_display: ClassVar[str] = "GCP Container Cluster Master Authentication" + kind_description: ClassVar[str] = "GCP Container Cluster Master Authentication provides secure access and authentication to the master controller of a Google Cloud Platform (GCP) container cluster, allowing users to manage and control their container cluster resources." mapping: ClassVar[Dict[str, Bender]] = { "client_certificate": S("clientCertificate"), "client_certificate_config": S("clientCertificateConfig", "issueClientCertificate"), @@ -352,6 +400,8 @@ class GcpContainerMasterAuth: @define(eq=False, slots=False) class GcpContainerCidrBlock: kind: ClassVar[str] = "gcp_container_cidr_block" + kind_display: ClassVar[str] = "GCP Container CIDR Block" + kind_description: ClassVar[str] = "GCP Container CIDR Block is a range of IP addresses that can be used for the pods within a Google Cloud Platform (GCP) container cluster." mapping: ClassVar[Dict[str, Bender]] = {"cidr_block": S("cidrBlock"), "display_name": S("displayName")} cidr_block: Optional[str] = field(default=None) display_name: Optional[str] = field(default=None) @@ -360,6 +410,8 @@ class GcpContainerCidrBlock: @define(eq=False, slots=False) class GcpContainerMasterAuthorizedNetworksConfig: kind: ClassVar[str] = "gcp_container_master_authorized_networks_config" + kind_display: ClassVar[str] = "GCP Container Master Authorized Networks Configuration" + kind_description: ClassVar[str] = "Container Master Authorized Networks Configuration allows you to configure the IP address ranges that have access to the Kubernetes master of a Google Cloud Platform (GCP) container." mapping: ClassVar[Dict[str, Bender]] = { "cidr_blocks": S("cidrBlocks", default=[]) >> ForallBend(GcpContainerCidrBlock.mapping), "enabled": S("enabled"), @@ -371,6 +423,8 @@ class GcpContainerMasterAuthorizedNetworksConfig: @define(eq=False, slots=False) class GcpContainerMonitoringComponentConfig: kind: ClassVar[str] = "gcp_container_monitoring_component_config" + kind_display: ClassVar[str] = "GCP Container Monitoring Component Config" + kind_description: ClassVar[str] = "GCP Container Monitoring Component Config is a configuration component used for monitoring containers in the Google Cloud Platform. It allows users to configure various settings and parameters for container monitoring." mapping: ClassVar[Dict[str, Bender]] = {"enable_components": S("enableComponents", default=[])} enable_components: Optional[List[str]] = field(default=None) @@ -378,6 +432,8 @@ class GcpContainerMonitoringComponentConfig: @define(eq=False, slots=False) class GcpContainerMonitoringConfig: kind: ClassVar[str] = "gcp_container_monitoring_config" + kind_display: ClassVar[str] = "GCP Container Monitoring Config" + kind_description: ClassVar[str] = "GCP Container Monitoring Config is a feature provided by Google Cloud Platform that allows users to configure and monitor the containers running on their cloud infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "component_config": S("componentConfig", default={}) >> Bend(GcpContainerMonitoringComponentConfig.mapping), "managed_prometheus_config": S("managedPrometheusConfig", "enabled"), @@ -389,6 +445,8 @@ class GcpContainerMonitoringConfig: @define(eq=False, slots=False) class GcpContainerDNSConfig: kind: ClassVar[str] = "gcp_container_dns_config" + kind_display: ClassVar[str] = "GCP Container DNS Config" + kind_description: ClassVar[str] = "Container DNS Config is a feature in Google Cloud Platform that allows users to configure DNS settings for containers running in Google Kubernetes Engine (GKE)." mapping: ClassVar[Dict[str, Bender]] = { "cluster_dns": S("clusterDns"), "cluster_dns_domain": S("clusterDnsDomain"), @@ -402,6 +460,8 @@ class GcpContainerDNSConfig: @define(eq=False, slots=False) class GcpContainerNetworkConfig: kind: ClassVar[str] = "gcp_container_network_config" + kind_display: ClassVar[str] = "GCP Container Network Config" + kind_description: ClassVar[str] = "Container Network Config is a feature provided by Google Cloud Platform that allows users to configure network settings for their containerized applications running in Google Kubernetes Engine (GKE), such as IP addresses, subnets, and network policies." mapping: ClassVar[Dict[str, Bender]] = { "datapath_provider": S("datapathProvider"), "default_snat_status": S("defaultSnatStatus", "disabled"), @@ -427,6 +487,8 @@ class GcpContainerNetworkConfig: @define(eq=False, slots=False) class GcpContainerNetworkPolicy: kind: ClassVar[str] = "gcp_container_network_policy" + kind_display: ClassVar[str] = "GCP Container Network Policy" + kind_description: ClassVar[str] = "GCP Container Network Policy is a resource in Google Cloud Platform that allows users to control network traffic between containers within a Kubernetes Engine cluster." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "provider": S("provider")} enabled: Optional[bool] = field(default=None) provider: Optional[str] = field(default=None) @@ -435,6 +497,8 @@ class GcpContainerNetworkPolicy: @define(eq=False, slots=False) class GcpContainerGPUSharingConfig: kind: ClassVar[str] = "gcp_container_gpu_sharing_config" + kind_display: ClassVar[str] = "GCP Container GPU Sharing Config" + kind_description: ClassVar[str] = "This resource allows the sharing of GPUs (Graphics Processing Units) between containers in Google Cloud Platform (GCP) containers, enabling efficient utilization of GPU resources." mapping: ClassVar[Dict[str, Bender]] = { "gpu_sharing_strategy": S("gpuSharingStrategy"), "max_shared_clients_per_gpu": S("maxSharedClientsPerGpu"), @@ -446,6 +510,8 @@ class GcpContainerGPUSharingConfig: @define(eq=False, slots=False) class GcpContainerAcceleratorConfig: kind: ClassVar[str] = "gcp_container_accelerator_config" + kind_display: ClassVar[str] = "GCP Container Accelerator Config" + kind_description: ClassVar[str] = "Container Accelerator Config is a feature in Google Cloud Platform that allows you to attach GPUs (Graphical Processing Units) to your containers, enabling faster and more efficient workload processing." mapping: ClassVar[Dict[str, Bender]] = { "accelerator_count": S("acceleratorCount"), "accelerator_type": S("acceleratorType"), @@ -461,6 +527,8 @@ class GcpContainerAcceleratorConfig: @define(eq=False, slots=False) class GcpContainerNodeKubeletConfig: kind: ClassVar[str] = "gcp_container_node_kubelet_config" + kind_display: ClassVar[str] = "GCP Container Node Kubelet Config" + kind_description: ClassVar[str] = "The GCP Container Node Kubelet Config is a configuration file used by Google Cloud Platform (GCP) to configure the Kubelet component of container nodes in a Kubernetes cluster. Kubelet is responsible for managing the state of each container running on the node." mapping: ClassVar[Dict[str, Bender]] = { "cpu_cfs_quota": S("cpuCfsQuota"), "cpu_cfs_quota_period": S("cpuCfsQuotaPeriod"), @@ -476,6 +544,8 @@ class GcpContainerNodeKubeletConfig: @define(eq=False, slots=False) class GcpContainerLinuxNodeConfig: kind: ClassVar[str] = "gcp_container_linux_node_config" + kind_display: ClassVar[str] = "GCP Container Linux Node Config" + kind_description: ClassVar[str] = "GCP Container Linux Node Config is a configuration for Linux nodes in Google Cloud Platform's container service, allowing users to define the settings and behavior for their Linux-based container nodes." mapping: ClassVar[Dict[str, Bender]] = {"sysctls": S("sysctls")} sysctls: Optional[Dict[str, str]] = field(default=None) @@ -483,6 +553,8 @@ class GcpContainerLinuxNodeConfig: @define(eq=False, slots=False) class GcpContainerNodePoolLoggingConfig: kind: ClassVar[str] = "gcp_container_node_pool_logging_config" + kind_display: ClassVar[str] = "GCP Container Node Pool Logging Config" + kind_description: ClassVar[str] = "Container Node Pool Logging Config is a configuration setting in Google Cloud Platform (GCP) for specifying logging options for container node pools in Kubernetes clusters." mapping: ClassVar[Dict[str, Bender]] = {"variant_config": S("variantConfig", "variant")} variant_config: Optional[str] = field(default=None) @@ -490,6 +562,8 @@ class GcpContainerNodePoolLoggingConfig: @define(eq=False, slots=False) class GcpContainerReservationAffinity: kind: ClassVar[str] = "gcp_container_reservation_affinity" + kind_display: ClassVar[str] = "GCP Container Reservation Affinity" + kind_description: ClassVar[str] = "Container Reservation Affinity is a feature in Google Cloud Platform that allows you to reserve specific compute nodes for your container workloads, ensuring they are always scheduled on those nodes." mapping: ClassVar[Dict[str, Bender]] = { "consume_reservation_type": S("consumeReservationType"), "key": S("key"), @@ -503,6 +577,8 @@ class GcpContainerReservationAffinity: @define(eq=False, slots=False) class GcpContainerNodeTaint: kind: ClassVar[str] = "gcp_container_node_taint" + kind_display: ClassVar[str] = "GCP Container Node Taint" + kind_description: ClassVar[str] = "Container Node Taints are a feature in Google Cloud Platform's container service that allow users to add constraints and preferences to nodes in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = {"effect": S("effect"), "key": S("key"), "value": S("value")} effect: Optional[str] = field(default=None) key: Optional[str] = field(default=None) @@ -512,6 +588,8 @@ class GcpContainerNodeTaint: @define(eq=False, slots=False) class GcpContainerNodeConfig: kind: ClassVar[str] = "gcp_container_node_config" + kind_display: ClassVar[str] = "GCP Container Node Config" + kind_description: ClassVar[str] = "GCP Container Node Config is a configuration for a node in Google Cloud Platform's container service, allowing users to specify settings such as machine type, disk size, and network configuration for a container node." mapping: ClassVar[Dict[str, Bender]] = { "accelerators": S("accelerators", default=[]) >> ForallBend(GcpContainerAcceleratorConfig.mapping), "advanced_machine_features": S("advancedMachineFeatures", "threadsPerCore"), @@ -576,6 +654,8 @@ class GcpContainerNodeConfig: @define(eq=False, slots=False) class GcpContainerNetworkTags: kind: ClassVar[str] = "gcp_container_network_tags" + kind_display: ClassVar[str] = "GCP Container Network Tags" + kind_description: ClassVar[str] = "GCP Container Network Tags are labels that can be assigned to GCP container instances, allowing for easier management and control of network traffic within Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"tags": S("tags", default=[])} tags: Optional[List[str]] = field(default=None) @@ -583,6 +663,8 @@ class GcpContainerNetworkTags: @define(eq=False, slots=False) class GcpContainerNodePoolAutoConfig: kind: ClassVar[str] = "gcp_container_node_pool_auto_config" + kind_display: ClassVar[str] = "GCP Container Node Pool Auto Config" + kind_description: ClassVar[str] = "Auto Config is a feature in GCP (Google Cloud Platform) that allows automatic configuration of Container Node Pools, which are groups of nodes in a Kubernetes cluster that run containerized applications." mapping: ClassVar[Dict[str, Bender]] = { "network_tags": S("networkTags", default={}) >> Bend(GcpContainerNetworkTags.mapping) } @@ -592,6 +674,8 @@ class GcpContainerNodePoolAutoConfig: @define(eq=False, slots=False) class GcpContainerNodeConfigDefaults: kind: ClassVar[str] = "gcp_container_node_config_defaults" + kind_display: ClassVar[str] = "GCP Container Node Config Defaults" + kind_description: ClassVar[str] = "GCP Container Node Config Defaults represents the default configuration settings for nodes in a Google Cloud Platform container cluster." mapping: ClassVar[Dict[str, Bender]] = { "gcfs_config": S("gcfsConfig", "enabled"), "logging_config": S("loggingConfig", default={}) >> Bend(GcpContainerNodePoolLoggingConfig.mapping), @@ -603,6 +687,8 @@ class GcpContainerNodeConfigDefaults: @define(eq=False, slots=False) class GcpContainerNodePoolDefaults: kind: ClassVar[str] = "gcp_container_node_pool_defaults" + kind_display: ClassVar[str] = "GCP Container Node Pool Defaults" + kind_description: ClassVar[str] = "GCP Container Node Pool Defaults is a feature in Google Cloud Platform that allows users to set default configurations for their container node pools, which are groups of nodes that host containerized applications." mapping: ClassVar[Dict[str, Bender]] = { "node_config_defaults": S("nodeConfigDefaults", default={}) >> Bend(GcpContainerNodeConfigDefaults.mapping) } @@ -612,6 +698,8 @@ class GcpContainerNodePoolDefaults: @define(eq=False, slots=False) class GcpContainerNodePoolAutoscaling: kind: ClassVar[str] = "gcp_container_node_pool_autoscaling" + kind_display: ClassVar[str] = "GCP Container Node Pool Autoscaling" + kind_description: ClassVar[str] = "Container Node Pool Autoscaling is a feature in Google Cloud Platform that automatically adjusts the number of nodes in a container cluster based on demand, ensuring optimal resource utilization and scalability." mapping: ClassVar[Dict[str, Bender]] = { "autoprovisioned": S("autoprovisioned"), "enabled": S("enabled"), @@ -633,6 +721,8 @@ class GcpContainerNodePoolAutoscaling: @define(eq=False, slots=False) class GcpContainerNodeNetworkConfig: kind: ClassVar[str] = "gcp_container_node_network_config" + kind_display: ClassVar[str] = "GCP Container Node Network Config" + kind_description: ClassVar[str] = "GCP Container Node Network Config is a network configuration for nodes in Google Cloud Platform's container service. It defines the network settings for containers running on the nodes." mapping: ClassVar[Dict[str, Bender]] = { "create_pod_range": S("createPodRange"), "network_performance_config": S("networkPerformanceConfig", "totalEgressBandwidthTier"), @@ -648,6 +738,8 @@ class GcpContainerNodeNetworkConfig: @define(eq=False, slots=False) class GcpContainerBlueGreenInfo: kind: ClassVar[str] = "gcp_container_blue_green_info" + kind_display: ClassVar[str] = "GCP Container Blue-Green Info" + kind_description: ClassVar[str] = "Blue-Green deployment strategy in Google Cloud Platform (GCP) container where two identical production environments, blue and green, are used to minimize downtime during software releases." mapping: ClassVar[Dict[str, Bender]] = { "blue_instance_group_urls": S("blueInstanceGroupUrls", default=[]), "blue_pool_deletion_start_time": S("bluePoolDeletionStartTime"), @@ -665,6 +757,8 @@ class GcpContainerBlueGreenInfo: @define(eq=False, slots=False) class GcpContainerUpdateInfo: kind: ClassVar[str] = "gcp_container_update_info" + kind_display: ClassVar[str] = "GCP Container Update Info" + kind_description: ClassVar[str] = "Container Update Info is a feature in Google Cloud Platform that provides information about updates and changes to container instances in a Google Kubernetes Engine cluster." mapping: ClassVar[Dict[str, Bender]] = { "blue_green_info": S("blueGreenInfo", default={}) >> Bend(GcpContainerBlueGreenInfo.mapping) } @@ -674,6 +768,8 @@ class GcpContainerUpdateInfo: @define(eq=False, slots=False) class GcpContainerNodePool: kind: ClassVar[str] = "gcp_container_node_pool" + kind_display: ClassVar[str] = "GCP Container Node Pool" + kind_description: ClassVar[str] = "Container Node Pool is a resource in Google Cloud Platform that allows you to create and manage a pool of virtual machines to run your containerized applications in Google Kubernetes Engine." mapping: ClassVar[Dict[str, Bender]] = { "autoscaling": S("autoscaling", default={}) >> Bend(GcpContainerNodePoolAutoscaling.mapping), "conditions": S("conditions", default=[]) >> ForallBend(GcpContainerStatusCondition.mapping), @@ -715,6 +811,8 @@ class GcpContainerNodePool: @define(eq=False, slots=False) class GcpContainerFilter: kind: ClassVar[str] = "gcp_container_filter" + kind_display: ClassVar[str] = "GCP Container Filter" + kind_description: ClassVar[str] = "A GCP Container Filter is used to specify criteria for filtering containers in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"event_type": S("eventType", default=[])} event_type: Optional[List[str]] = field(default=None) @@ -722,6 +820,8 @@ class GcpContainerFilter: @define(eq=False, slots=False) class GcpContainerPubSub: kind: ClassVar[str] = "gcp_container_pub_sub" + kind_display: ClassVar[str] = "GCP Container Pub/Sub" + kind_description: ClassVar[str] = "GCP Container Pub/Sub is a messaging service provided by Google Cloud Platform for decoupling and scaling microservices and distributed systems." mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("enabled"), "filter": S("filter", default={}) >> Bend(GcpContainerFilter.mapping), @@ -735,6 +835,8 @@ class GcpContainerPubSub: @define(eq=False, slots=False) class GcpContainerNotificationConfig: kind: ClassVar[str] = "gcp_container_notification_config" + kind_display: ClassVar[str] = "GCP Container Notification Config" + kind_description: ClassVar[str] = "GCP Container Notification Config is a resource in Google Cloud Platform that allows users to configure notifications for container events." mapping: ClassVar[Dict[str, Bender]] = {"pubsub": S("pubsub", default={}) >> Bend(GcpContainerPubSub.mapping)} pubsub: Optional[GcpContainerPubSub] = field(default=None) @@ -742,6 +844,8 @@ class GcpContainerNotificationConfig: @define(eq=False, slots=False) class GcpContainerPrivateClusterConfig: kind: ClassVar[str] = "gcp_container_private_cluster_config" + kind_display: ClassVar[str] = "GCP Container Private Cluster Config" + kind_description: ClassVar[str] = "Private cluster configuration option for running Kubernetes clusters in Google Cloud Platform (GCP) container engine. Private clusters offer enhanced security by isolating the cluster's control plane and worker nodes from the public internet." mapping: ClassVar[Dict[str, Bender]] = { "enable_private_endpoint": S("enablePrivateEndpoint"), "enable_private_nodes": S("enablePrivateNodes"), @@ -763,6 +867,8 @@ class GcpContainerPrivateClusterConfig: @define(eq=False, slots=False) class GcpContainerResourceUsageExportConfig: kind: ClassVar[str] = "gcp_container_resource_usage_export_config" + kind_display: ClassVar[str] = "GCP Container Resource Usage Export Config" + kind_description: ClassVar[str] = "Container Resource Usage Export Config is a feature in Google Cloud Platform that allows exporting container resource usage data to external systems for analysis and monitoring purposes." mapping: ClassVar[Dict[str, Bender]] = { "bigquery_destination": S("bigqueryDestination", "datasetId"), "consumption_metering_config": S("consumptionMeteringConfig", "enabled"), @@ -776,6 +882,8 @@ class GcpContainerResourceUsageExportConfig: @define(eq=False, slots=False) class GcpContainerCluster(GcpResource): kind: ClassVar[str] = "gcp_container_cluster" + kind_display: ClassVar[str] = "GCP Container Cluster" + kind_description: ClassVar[str] = "Container Cluster is a managed Kubernetes cluster service provided by Google Cloud Platform, which allows users to deploy, manage, and scale containerized applications using Kubernetes." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="container", version="v1", @@ -922,6 +1030,8 @@ class GcpContainerCluster(GcpResource): @define(eq=False, slots=False) class GcpContainerStatus: kind: ClassVar[str] = "gcp_container_status" + kind_display: ClassVar[str] = "GCP Container Status" + kind_description: ClassVar[str] = "GCP Container Status provides information about the current status, health, and availability of containers running on Google Cloud Platform (GCP)." mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "details": S("details", default=[]), @@ -935,6 +1045,8 @@ class GcpContainerStatus: @define(eq=False, slots=False) class GcpContainerMetric: kind: ClassVar[str] = "gcp_container_metric" + kind_display: ClassVar[str] = "GCP Container Metric" + kind_description: ClassVar[str] = "Container Metrics in Google Cloud Platform (GCP) are measurements of resource utilization and performance for containers running on GCP's managed Kubernetes Engine." mapping: ClassVar[Dict[str, Bender]] = { "double_value": S("doubleValue"), "int_value": S("intValue"), @@ -950,6 +1062,8 @@ class GcpContainerMetric: @define(eq=False, slots=False) class GcpContainerOperationProgress: kind: ClassVar[str] = "gcp_container_operation_progress" + kind_display: ClassVar[str] = "GCP Container Operation Progress" + kind_description: ClassVar[str] = "GCP Container Operation Progress refers to the status and progress of an operation involving containers in Google Cloud Platform. It provides information on the current state and completion progress of container-related operations." mapping: ClassVar[Dict[str, Bender]] = { "metrics": S("metrics", default=[]) >> ForallBend(GcpContainerMetric.mapping), "name": S("name"), @@ -963,6 +1077,8 @@ class GcpContainerOperationProgress: @define(eq=False, slots=False) class GcpContainerOperation(GcpResource): kind: ClassVar[str] = "gcp_container_operation" + kind_display: ClassVar[str] = "GCP Container Operation" + kind_description: ClassVar[str] = "Container Operations are management tasks performed on containers in Google Cloud Platform, including creating, starting, stopping, and deleting containers." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_container_cluster"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="container", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py index 000680c4ca..257f8aabd5 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py @@ -17,6 +17,8 @@ @define(eq=False, slots=False) class GcpSqlOperationError: kind: ClassVar[str] = "gcp_sql_operation_error" + kind_display: ClassVar[str] = "GCP SQL Operation Error" + kind_description: ClassVar[str] = "This error refers to an error that occurred during an operation related to Google Cloud SQL, which is a fully managed relational database service provided by Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"code": S("code"), "message": S("message")} code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -26,6 +28,8 @@ class GcpSqlOperationError: class GcpSqlBackupRun(GcpResource): # collected via GcpSqlDatabaseInstance kind: ClassVar[str] = "gcp_sql_backup_run" + kind_display: ClassVar[str] = "GCP SQL Backup Run" + kind_description: ClassVar[str] = "GCP SQL Backup Run is a feature in Google Cloud Platform that allows users to schedule and execute automated backups of their SQL databases." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_database_instance"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", @@ -84,6 +88,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpSqlSqlServerDatabaseDetails: kind: ClassVar[str] = "gcp_sql_sql_server_database_details" + kind_display: ClassVar[str] = "GCP SQL SQL Server Database Details" + kind_description: ClassVar[str] = "This resource provides details and information about a Microsoft SQL Server database in the Google Cloud Platform's SQL service." mapping: ClassVar[Dict[str, Bender]] = { "compatibility_level": S("compatibilityLevel"), "recovery_model": S("recoveryModel"), @@ -96,6 +102,8 @@ class GcpSqlSqlServerDatabaseDetails: class GcpSqlDatabase(GcpResource): # collected via GcpSqlDatabaseInstance kind: ClassVar[str] = "gcp_sql_database" + kind_display: ClassVar[str] = "GCP SQL Database" + kind_description: ClassVar[str] = "GCP SQL Database is a managed relational database service provided by Google Cloud Platform." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", version="v1", @@ -141,6 +149,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpSqlFailoverreplica: kind: ClassVar[str] = "gcp_sql_failoverreplica" + kind_display: ClassVar[str] = "GCP SQL Failover Replica" + kind_description: ClassVar[str] = "A GCP SQL Failover Replica is a secondary replica database that can be promoted to the primary database in case of a primary database failure, ensuring high availability and data redundancy for Google Cloud SQL." mapping: ClassVar[Dict[str, Bender]] = {"available": S("available"), "name": S("name")} available: Optional[bool] = field(default=None) name: Optional[str] = field(default=None) @@ -149,6 +159,8 @@ class GcpSqlFailoverreplica: @define(eq=False, slots=False) class GcpSqlIpMapping: kind: ClassVar[str] = "gcp_sql_ip_mapping" + kind_display: ClassVar[str] = "GCP SQL IP Mapping" + kind_description: ClassVar[str] = "GCP SQL IP Mapping is a feature in Google Cloud Platform that allows mapping of IP addresses to Google Cloud SQL instances." mapping: ClassVar[Dict[str, Bender]] = { "ip_address": S("ipAddress"), "time_to_retire": S("timeToRetire"), @@ -162,6 +174,8 @@ class GcpSqlIpMapping: @define(eq=False, slots=False) class GcpSqlInstanceReference: kind: ClassVar[str] = "gcp_sql_instance_reference" + kind_display: ClassVar[str] = "GCP Cloud SQL Instance Reference" + kind_description: ClassVar[str] = "Cloud SQL is a fully-managed relational database service provided by Google Cloud Platform, allowing users to create and manage MySQL or PostgreSQL databases in the cloud." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "project": S("project"), "region": S("region")} name: Optional[str] = field(default=None) project: Optional[str] = field(default=None) @@ -171,6 +185,8 @@ class GcpSqlInstanceReference: @define(eq=False, slots=False) class GcpSqlOnPremisesConfiguration: kind: ClassVar[str] = "gcp_sql_on_premises_configuration" + kind_display: ClassVar[str] = "GCP SQL On-Premises Configuration" + kind_description: ClassVar[str] = "GCP SQL On-Premises Configuration provides the ability to configure and manage Google Cloud SQL databases that are located on customer's own on-premises infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "ca_certificate": S("caCertificate"), "client_certificate": S("clientCertificate"), @@ -194,6 +210,8 @@ class GcpSqlOnPremisesConfiguration: @define(eq=False, slots=False) class GcpSqlSqlOutOfDiskReport: kind: ClassVar[str] = "gcp_sql_sql_out_of_disk_report" + kind_display: ClassVar[str] = "GCP SQL Out of Disk Report" + kind_description: ClassVar[str] = "This resource represents a report that indicates when a Google Cloud SQL instance runs out of disk space." mapping: ClassVar[Dict[str, Bender]] = { "sql_min_recommended_increase_size_gb": S("sqlMinRecommendedIncreaseSizeGb"), "sql_out_of_disk_state": S("sqlOutOfDiskState"), @@ -205,6 +223,8 @@ class GcpSqlSqlOutOfDiskReport: @define(eq=False, slots=False) class GcpSqlMySqlReplicaConfiguration: kind: ClassVar[str] = "gcp_sql_my_sql_replica_configuration" + kind_display: ClassVar[str] = "GCP SQL MySQL Replica Configuration" + kind_description: ClassVar[str] = "MySQL Replica Configuration is a feature in Google Cloud SQL that enables the creation and management of replicas for high availability and fault tolerance of MySQL databases." mapping: ClassVar[Dict[str, Bender]] = { "ca_certificate": S("caCertificate"), "client_certificate": S("clientCertificate"), @@ -232,6 +252,8 @@ class GcpSqlMySqlReplicaConfiguration: @define(eq=False, slots=False) class GcpSqlReplicaConfiguration: kind: ClassVar[str] = "gcp_sql_replica_configuration" + kind_display: ClassVar[str] = "GCP SQL Replica Configuration" + kind_description: ClassVar[str] = "SQL replica configuration in Google Cloud Platform (GCP) allows users to create and manage replica instances of a SQL database for improved scalability and high availability." mapping: ClassVar[Dict[str, Bender]] = { "failover_target": S("failoverTarget"), "mysql_replica_configuration": S("mysqlReplicaConfiguration", default={}) @@ -244,6 +266,8 @@ class GcpSqlReplicaConfiguration: @define(eq=False, slots=False) class GcpSqlSqlScheduledMaintenance: kind: ClassVar[str] = "gcp_sql_sql_scheduled_maintenance" + kind_display: ClassVar[str] = "GCP SQL SQL Scheduled Maintenance" + kind_description: ClassVar[str] = "SQL Scheduled Maintenance is a feature in Google Cloud Platform's SQL service that allows users to schedule maintenance tasks for their SQL instances, ensuring minimal downtime and disruption." mapping: ClassVar[Dict[str, Bender]] = { "can_defer": S("canDefer"), "can_reschedule": S("canReschedule"), @@ -259,6 +283,8 @@ class GcpSqlSqlScheduledMaintenance: @define(eq=False, slots=False) class GcpSqlSslCert: kind: ClassVar[str] = "gcp_sql_ssl_cert" + kind_display: ClassVar[str] = "GCP SQL SSL Certificate" + kind_description: ClassVar[str] = "GCP SQL SSL Certificates are used to secure connections between applications and Google Cloud SQL databases, ensuring that data exchanged between them is encrypted." mapping: ClassVar[Dict[str, Bender]] = { "cert": S("cert"), "cert_serial_number": S("certSerialNumber"), @@ -282,6 +308,8 @@ class GcpSqlSslCert: @define(eq=False, slots=False) class GcpSqlBackupRetentionSettings: kind: ClassVar[str] = "gcp_sql_backup_retention_settings" + kind_display: ClassVar[str] = "GCP SQL Backup Retention Settings" + kind_description: ClassVar[str] = "GCP SQL Backup Retention Settings is a feature in Google Cloud Platform that allows you to configure the backup retention policy for your SQL databases. It lets you set the duration for which backups should be retained before being automatically deleted." mapping: ClassVar[Dict[str, Bender]] = { "retained_backups": S("retainedBackups"), "retention_unit": S("retentionUnit"), @@ -293,6 +321,8 @@ class GcpSqlBackupRetentionSettings: @define(eq=False, slots=False) class GcpSqlBackupConfiguration: kind: ClassVar[str] = "gcp_sql_backup_configuration" + kind_display: ClassVar[str] = "GCP SQL Backup Configuration" + kind_description: ClassVar[str] = "GCP SQL Backup Configuration is a resource in Google Cloud Platform that allows users to configure and manage backups for their SQL databases." mapping: ClassVar[Dict[str, Bender]] = { "backup_retention_settings": S("backupRetentionSettings", default={}) >> Bend(GcpSqlBackupRetentionSettings.mapping), @@ -317,6 +347,8 @@ class GcpSqlBackupConfiguration: @define(eq=False, slots=False) class GcpSqlDatabaseFlags: kind: ClassVar[str] = "gcp_sql_database_flags" + kind_display: ClassVar[str] = "GCP SQL Database Flags" + kind_description: ClassVar[str] = "GCP SQL Database Flags are configuration settings that can be applied to Google Cloud Platform's SQL databases to customize their behavior." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -325,6 +357,8 @@ class GcpSqlDatabaseFlags: @define(eq=False, slots=False) class GcpSqlDenyMaintenancePeriod: kind: ClassVar[str] = "gcp_sql_deny_maintenance_period" + kind_display: ClassVar[str] = "GCP SQL Deny Maintenance Period" + kind_description: ClassVar[str] = "GCP SQL Deny Maintenance Period is a feature in Google Cloud Platform that allows users to specify a period of time during which maintenance updates or patches will not be applied to SQL instances." mapping: ClassVar[Dict[str, Bender]] = {"end_date": S("endDate"), "start_date": S("startDate"), "time": S("time")} end_date: Optional[str] = field(default=None) start_date: Optional[str] = field(default=None) @@ -334,6 +368,8 @@ class GcpSqlDenyMaintenancePeriod: @define(eq=False, slots=False) class GcpSqlInsightsConfig: kind: ClassVar[str] = "gcp_sql_insights_config" + kind_display: ClassVar[str] = "GCP SQL Insights Config" + kind_description: ClassVar[str] = "GCP SQL Insights Config is a feature in Google Cloud Platform that allows users to configure and customize their SQL database insights and monitoring." mapping: ClassVar[Dict[str, Bender]] = { "query_insights_enabled": S("queryInsightsEnabled"), "query_plans_per_minute": S("queryPlansPerMinute"), @@ -351,6 +387,8 @@ class GcpSqlInsightsConfig: @define(eq=False, slots=False) class GcpSqlAclEntry: kind: ClassVar[str] = "gcp_sql_acl_entry" + kind_display: ClassVar[str] = "GCP SQL ACL Entry" + kind_description: ClassVar[str] = "GCP SQL ACL Entry is a resource in Google Cloud Platform that represents an access control list entry for a Cloud SQL instance. It defines policies for granting or denying network access to the SQL instance." mapping: ClassVar[Dict[str, Bender]] = { "expiration_time": S("expirationTime"), "name": S("name"), @@ -364,6 +402,8 @@ class GcpSqlAclEntry: @define(eq=False, slots=False) class GcpSqlIpConfiguration: kind: ClassVar[str] = "gcp_sql_ip_configuration" + kind_display: ClassVar[str] = "GCP SQL IP Configuration" + kind_description: ClassVar[str] = "IP Configuration refers to the settings for managing IP addresses associated with Google Cloud Platform(SQL) instances, allowing users to control network access to their databases." mapping: ClassVar[Dict[str, Bender]] = { "allocated_ip_range": S("allocatedIpRange"), "authorized_networks": S("authorizedNetworks", default=[]) >> ForallBend(GcpSqlAclEntry.mapping), @@ -381,6 +421,8 @@ class GcpSqlIpConfiguration: @define(eq=False, slots=False) class GcpSqlLocationPreference: kind: ClassVar[str] = "gcp_sql_location_preference" + kind_display: ClassVar[str] = "GCP SQL Location Preference" + kind_description: ClassVar[str] = "GCP SQL Location Preference allows users to specify the preferred location for their Google Cloud SQL database instances, helping them ensure optimal performance and compliance with data sovereignty requirements." mapping: ClassVar[Dict[str, Bender]] = { "follow_gae_application": S("followGaeApplication"), "secondary_zone": S("secondaryZone"), @@ -394,6 +436,8 @@ class GcpSqlLocationPreference: @define(eq=False, slots=False) class GcpSqlMaintenanceWindow: kind: ClassVar[str] = "gcp_sql_maintenance_window" + kind_display: ClassVar[str] = "GCP SQL Maintenance Window" + kind_description: ClassVar[str] = "A maintenance window is a predefined time period when Google Cloud SQL performs system updates and maintenance tasks on your databases." mapping: ClassVar[Dict[str, Bender]] = {"day": S("day"), "hour": S("hour"), "update_track": S("updateTrack")} day: Optional[int] = field(default=None) hour: Optional[int] = field(default=None) @@ -403,6 +447,8 @@ class GcpSqlMaintenanceWindow: @define(eq=False, slots=False) class GcpSqlPasswordValidationPolicy: kind: ClassVar[str] = "gcp_sql_password_validation_policy" + kind_display: ClassVar[str] = "GCP SQL Password Validation Policy" + kind_description: ClassVar[str] = "GCP SQL Password Validation Policy is a feature in Google Cloud Platform that enforces strong password policies for SQL databases, ensuring better security and compliance with password requirements." mapping: ClassVar[Dict[str, Bender]] = { "complexity": S("complexity"), "disallow_username_substring": S("disallowUsernameSubstring"), @@ -422,6 +468,8 @@ class GcpSqlPasswordValidationPolicy: @define(eq=False, slots=False) class GcpSqlSqlServerAuditConfig: kind: ClassVar[str] = "gcp_sql_sql_server_audit_config" + kind_display: ClassVar[str] = "GCP SQL Server Audit Configuration" + kind_description: ClassVar[str] = "GCP SQL Server Audit Configuration provides a way to enable and configure SQL Server auditing for Google Cloud Platform (GCP) SQL Server instances. Auditing allows users to monitor and record database activities and events for security and compliance purposes." mapping: ClassVar[Dict[str, Bender]] = { "bucket": S("bucket"), "retention_interval": S("retentionInterval"), @@ -435,6 +483,8 @@ class GcpSqlSqlServerAuditConfig: @define(eq=False, slots=False) class GcpSqlSettings: kind: ClassVar[str] = "gcp_sql_settings" + kind_display: ClassVar[str] = "GCP SQL Settings" + kind_description: ClassVar[str] = "GCP SQL Settings refers to the configuration and customization options for managing SQL databases in Google Cloud Platform (GCP). It includes various settings related to database performance, security, availability, and monitoring." mapping: ClassVar[Dict[str, Bender]] = { "activation_policy": S("activationPolicy"), "active_directory_config": S("activeDirectoryConfig", "domain"), @@ -500,6 +550,8 @@ class GcpSqlSettings: @define(eq=False, slots=False) class GcpSqlDatabaseInstance(GcpResource): kind: ClassVar[str] = "gcp_sql_database_instance" + kind_display: ClassVar[str] = "GCP SQL Database Instance" + kind_description: ClassVar[str] = "GCP SQL Database Instance is a resource provided by Google Cloud Platform that allows users to create and manage relational databases in the cloud." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_ssl_certificate"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", @@ -615,6 +667,8 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: @define(eq=False, slots=False) class GcpSqlCsvexportoptions: kind: ClassVar[str] = "gcp_sql_csvexportoptions" + kind_display: ClassVar[str] = "GCP SQL CSV Export Options" + kind_description: ClassVar[str] = "CSV Export Options for Google Cloud Platform's SQL allows users to export SQL query results into CSV format for further analysis or data manipulation." mapping: ClassVar[Dict[str, Bender]] = { "escape_character": S("escapeCharacter"), "fields_terminated_by": S("fieldsTerminatedBy"), @@ -632,6 +686,8 @@ class GcpSqlCsvexportoptions: @define(eq=False, slots=False) class GcpSqlMysqlexportoptions: kind: ClassVar[str] = "gcp_sql_mysqlexportoptions" + kind_display: ClassVar[str] = "GCP SQL MySQL Export Options" + kind_description: ClassVar[str] = "GCP SQL MySQL Export Options are features provided by Google Cloud Platform that allow users to export data from MySQL databases hosted on GCP SQL." mapping: ClassVar[Dict[str, Bender]] = {"master_data": S("masterData")} master_data: Optional[int] = field(default=None) @@ -639,6 +695,8 @@ class GcpSqlMysqlexportoptions: @define(eq=False, slots=False) class GcpSqlSqlexportoptions: kind: ClassVar[str] = "gcp_sql_sqlexportoptions" + kind_display: ClassVar[str] = "GCP SQL SQLExportOptions" + kind_description: ClassVar[str] = "SQLExportOptions is a feature in Google Cloud Platform's SQL service that allows users to export their SQL databases to different formats, such as CSV or JSON." mapping: ClassVar[Dict[str, Bender]] = { "mysql_export_options": S("mysqlExportOptions", default={}) >> Bend(GcpSqlMysqlexportoptions.mapping), "schema_only": S("schemaOnly"), @@ -652,6 +710,8 @@ class GcpSqlSqlexportoptions: @define(eq=False, slots=False) class GcpSqlExportContext: kind: ClassVar[str] = "gcp_sql_export_context" + kind_display: ClassVar[str] = "GCP SQL Export Context" + kind_description: ClassVar[str] = "GCP SQL Export Context is a feature in Google Cloud Platform that allows users to export data from SQL databases to other storage or analysis services." mapping: ClassVar[Dict[str, Bender]] = { "csv_export_options": S("csvExportOptions", default={}) >> Bend(GcpSqlCsvexportoptions.mapping), "databases": S("databases", default=[]), @@ -671,6 +731,8 @@ class GcpSqlExportContext: @define(eq=False, slots=False) class GcpSqlEncryptionoptions: kind: ClassVar[str] = "gcp_sql_encryptionoptions" + kind_display: ClassVar[str] = "GCP SQL Encryption Options" + kind_description: ClassVar[str] = "GCP SQL Encryption Options refers to the various methods available for encrypting data in Google Cloud Platform's SQL databases, such as Cloud SQL and SQL Server on GCE." mapping: ClassVar[Dict[str, Bender]] = { "cert_path": S("certPath"), "pvk_password": S("pvkPassword"), @@ -684,6 +746,8 @@ class GcpSqlEncryptionoptions: @define(eq=False, slots=False) class GcpSqlBakimportoptions: kind: ClassVar[str] = "gcp_sql_bakimportoptions" + kind_display: ClassVar[str] = "GCP SQL Backup Import Options" + kind_description: ClassVar[str] = "GCP SQL Backup Import Options provide configuration settings and options for importing backed up data into Google Cloud Platform SQL databases." mapping: ClassVar[Dict[str, Bender]] = { "encryption_options": S("encryptionOptions", default={}) >> Bend(GcpSqlEncryptionoptions.mapping) } @@ -693,6 +757,8 @@ class GcpSqlBakimportoptions: @define(eq=False, slots=False) class GcpSqlCsvimportoptions: kind: ClassVar[str] = "gcp_sql_csvimportoptions" + kind_display: ClassVar[str] = "GCP SQL CSV Import Options" + kind_description: ClassVar[str] = "CSV Import Options in GCP SQL enables users to efficiently import CSV data into Google Cloud SQL databases." mapping: ClassVar[Dict[str, Bender]] = { "columns": S("columns", default=[]), "escape_character": S("escapeCharacter"), @@ -712,6 +778,8 @@ class GcpSqlCsvimportoptions: @define(eq=False, slots=False) class GcpSqlImportContext: kind: ClassVar[str] = "gcp_sql_import_context" + kind_display: ClassVar[str] = "GCP SQL Import Context" + kind_description: ClassVar[str] = "SQL Import Context is a feature provided by Google Cloud Platform to provide contextual information while importing SQL databases." mapping: ClassVar[Dict[str, Bender]] = { "bak_import_options": S("bakImportOptions", default={}) >> Bend(GcpSqlBakimportoptions.mapping), "csv_import_options": S("csvImportOptions", default={}) >> Bend(GcpSqlCsvimportoptions.mapping), @@ -731,6 +799,8 @@ class GcpSqlImportContext: @define(eq=False, slots=False) class GcpSqlOperation(GcpResource): kind: ClassVar[str] = "gcp_sql_operation" + kind_display: ClassVar[str] = "GCP SQL Operation" + kind_description: ClassVar[str] = "SQL Operation is a service in Google Cloud Platform (GCP) that provides fully managed and highly available relational databases." reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_sql_database_instance"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", @@ -789,6 +859,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class GcpSqlPasswordStatus: kind: ClassVar[str] = "gcp_sql_password_status" + kind_display: ClassVar[str] = "GCP SQL Password Status" + kind_description: ClassVar[str] = "GCP SQL Password Status refers to the current state of the password used for SQL database access in Google Cloud Platform. It indicates whether the password is active or inactive." mapping: ClassVar[Dict[str, Bender]] = { "locked": S("locked"), "password_expiration_time": S("passwordExpirationTime"), @@ -800,6 +872,8 @@ class GcpSqlPasswordStatus: @define(eq=False, slots=False) class GcpSqlUserPasswordValidationPolicy: kind: ClassVar[str] = "gcp_sql_user_password_validation_policy" + kind_display: ClassVar[str] = "GCP SQL User Password Validation Policy" + kind_description: ClassVar[str] = "GCP SQL User Password Validation Policy is a feature in Google Cloud Platform's SQL service that enforces specific rules and requirements for creating and managing user passwords in SQL databases." mapping: ClassVar[Dict[str, Bender]] = { "allowed_failed_attempts": S("allowedFailedAttempts"), "enable_failed_attempts_check": S("enableFailedAttemptsCheck"), @@ -817,6 +891,8 @@ class GcpSqlUserPasswordValidationPolicy: @define(eq=False, slots=False) class GcpSqlSqlServerUserDetails: kind: ClassVar[str] = "gcp_sql_sql_server_user_details" + kind_display: ClassVar[str] = "GCP SQL SQL Server User Details" + kind_description: ClassVar[str] = "GCP SQL SQL Server User Details provides information about the users and their access privileges in a SQL Server instance on Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"disabled": S("disabled"), "server_roles": S("serverRoles", default=[])} disabled: Optional[bool] = field(default=None) server_roles: Optional[List[str]] = field(default=None) @@ -826,6 +902,8 @@ class GcpSqlSqlServerUserDetails: class GcpSqlUser(GcpResource): # collected via GcpSqlDatabaseInstance kind: ClassVar[str] = "gcp_sql_user" + kind_display: ClassVar[str] = "GCP SQL User" + kind_description: ClassVar[str] = "A GCP SQL User refers to a user account that can access and manage databases in Google Cloud SQL, a fully-managed relational database service." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", version="v1", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/storage.py b/plugins/gcp/resoto_plugin_gcp/resources/storage.py index 7ba669d5cf..275904c0b7 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/storage.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/storage.py @@ -12,6 +12,8 @@ @define(eq=False, slots=False) class GcpProjectteam: kind: ClassVar[str] = "gcp_projectteam" + kind_display: ClassVar[str] = "GCP Project Team" + kind_description: ClassVar[str] = "GCP Project Teams are groups of users who work together on a Google Cloud Platform project, allowing them to collaborate and manage resources within the project." mapping: ClassVar[Dict[str, Bender]] = {"project_number": S("projectNumber"), "team": S("team")} project_number: Optional[str] = field(default=None) team: Optional[str] = field(default=None) @@ -20,6 +22,8 @@ class GcpProjectteam: @define(eq=False, slots=False) class GcpBucketAccessControl: kind: ClassVar[str] = "gcp_bucket_access_control" + kind_display: ClassVar[str] = "GCP Bucket Access Control" + kind_description: ClassVar[str] = "Bucket Access Control is a feature in the Google Cloud Platform that allows you to manage and control access to your storage buckets. It provides fine-grained access control, allowing you to specify who can read, write, or delete objects within a bucket." mapping: ClassVar[Dict[str, Bender]] = { "id": S("name").or_else(S("id")).or_else(S("selfLink")), "tags": S("labels", default={}), @@ -51,6 +55,8 @@ class GcpBucketAccessControl: @define(eq=False, slots=False) class GcpAutoclass: kind: ClassVar[str] = "gcp_autoclass" + kind_display: ClassVar[str] = "GCP AutoML AutoClass" + kind_description: ClassVar[str] = "GCP AutoML AutoClass is a machine learning service provided by Google Cloud Platform that automates the classification of data into different categories." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "toggle_time": S("toggleTime")} enabled: Optional[bool] = field(default=None) toggle_time: Optional[datetime] = field(default=None) @@ -59,6 +65,8 @@ class GcpAutoclass: @define(eq=False, slots=False) class GcpCors: kind: ClassVar[str] = "gcp_cors" + kind_display: ClassVar[str] = "GCP CORS" + kind_description: ClassVar[str] = "Cross-Origin Resource Sharing (CORS) in Google Cloud Platform allows web applications running on different domains to make requests to resources in a more secure manner." mapping: ClassVar[Dict[str, Bender]] = { "max_age_seconds": S("maxAgeSeconds"), "method": S("method", default=[]), @@ -74,6 +82,8 @@ class GcpCors: @define(eq=False, slots=False) class GcpObjectAccessControl: kind: ClassVar[str] = "gcp_object_access_control" + kind_display: ClassVar[str] = "GCP Object Access Control" + kind_description: ClassVar[str] = "GCP Object Access Control is a feature in Google Cloud Platform that allows users to control access to their storage objects (such as files, images, videos) by specifying permissions and policies." mapping: ClassVar[Dict[str, Bender]] = { "bucket": S("bucket"), "domain": S("domain"), @@ -105,6 +115,8 @@ class GcpObjectAccessControl: @define(eq=False, slots=False) class GcpBucketpolicyonly: kind: ClassVar[str] = "gcp_bucketpolicyonly" + kind_display: ClassVar[str] = "GCP Bucket Policy Only" + kind_description: ClassVar[str] = "GCP Bucket Policy Only is a feature in Google Cloud Platform that enforces the use of IAM policies for bucket access control and disables any ACL-based access control." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "locked_time": S("lockedTime")} enabled: Optional[bool] = field(default=None) locked_time: Optional[datetime] = field(default=None) @@ -113,6 +125,8 @@ class GcpBucketpolicyonly: @define(eq=False, slots=False) class GcpUniformbucketlevelaccess: kind: ClassVar[str] = "gcp_uniformbucketlevelaccess" + kind_display: ClassVar[str] = "GCP Uniform Bucket Level Access" + kind_description: ClassVar[str] = "Uniform bucket-level access is a feature in Google Cloud Platform that allows for fine-grained access control to Google Cloud Storage buckets. It provides more control and security for managing access to your storage buckets." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "locked_time": S("lockedTime")} enabled: Optional[bool] = field(default=None) locked_time: Optional[datetime] = field(default=None) @@ -121,6 +135,8 @@ class GcpUniformbucketlevelaccess: @define(eq=False, slots=False) class GcpIamconfiguration: kind: ClassVar[str] = "gcp_iamconfiguration" + kind_display: ClassVar[str] = "GCP IAM Configuration" + kind_description: ClassVar[str] = "IAM (Identity and Access Management) Configuration in Google Cloud Platform, which allows users to control access to their cloud resources and manage permissions for users and service accounts." mapping: ClassVar[Dict[str, Bender]] = { "bucket_policy_only": S("bucketPolicyOnly", default={}) >> Bend(GcpBucketpolicyonly.mapping), "public_access_prevention": S("publicAccessPrevention"), @@ -135,6 +151,8 @@ class GcpIamconfiguration: @define(eq=False, slots=False) class GcpAction: kind: ClassVar[str] = "gcp_action" + kind_display: ClassVar[str] = "GCP Action" + kind_description: ClassVar[str] = "GCP Action refers to a specific action or operation performed on resources in Google Cloud Platform (GCP), such as creating, deleting, or modifying cloud resources." mapping: ClassVar[Dict[str, Bender]] = {"storage_class": S("storageClass"), "type": S("type")} storage_class: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -143,6 +161,8 @@ class GcpAction: @define(eq=False, slots=False) class GcpCondition: kind: ClassVar[str] = "gcp_condition" + kind_display: ClassVar[str] = "GCP Condition" + kind_description: ClassVar[str] = "Conditions in Google Cloud Platform (GCP) are used to define rules and policies for resource usage and access control." mapping: ClassVar[Dict[str, Bender]] = { "age": S("age"), "created_before": S("createdBefore"), @@ -174,6 +194,8 @@ class GcpCondition: @define(eq=False, slots=False) class GcpRule: kind: ClassVar[str] = "gcp_rule" + kind_display: ClassVar[str] = "GCP Rule" + kind_description: ClassVar[str] = "GCP Rules are a set of policies or conditions defined to govern the behavior of resources in the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "action": S("action", default={}) >> Bend(GcpAction.mapping), "condition": S("condition", default={}) >> Bend(GcpCondition.mapping), @@ -185,6 +207,8 @@ class GcpRule: @define(eq=False, slots=False) class GcpLogging: kind: ClassVar[str] = "gcp_logging" + kind_display: ClassVar[str] = "GCP Logging" + kind_description: ClassVar[str] = "GCP Logging is a service provided by Google Cloud Platform that allows users to collect, store, and analyze logs from various resources in their cloud environment." mapping: ClassVar[Dict[str, Bender]] = {"log_bucket": S("logBucket"), "log_object_prefix": S("logObjectPrefix")} log_bucket: Optional[str] = field(default=None) log_object_prefix: Optional[str] = field(default=None) @@ -193,6 +217,8 @@ class GcpLogging: @define(eq=False, slots=False) class GcpOwner: kind: ClassVar[str] = "gcp_owner" + kind_display: ClassVar[str] = "GCP Owner" + kind_description: ClassVar[str] = "GCP Owner refers to the owner of a Google Cloud Platform (GCP) resource or project, who has full control and access to manage and configure the resource or project." mapping: ClassVar[Dict[str, Bender]] = {"entity": S("entity"), "entity_id": S("entityId")} entity: Optional[str] = field(default=None) entity_id: Optional[str] = field(default=None) @@ -201,6 +227,8 @@ class GcpOwner: @define(eq=False, slots=False) class GcpRetentionpolicy: kind: ClassVar[str] = "gcp_retentionpolicy" + kind_display: ClassVar[str] = "GCP Retention Policy" + kind_description: ClassVar[str] = "GCP Retention Policy is a feature in Google Cloud Platform that allows users to set and manage rules for data retention, specifying how long data should be kept before it is automatically deleted." mapping: ClassVar[Dict[str, Bender]] = { "effective_time": S("effectiveTime"), "is_locked": S("isLocked"), @@ -214,6 +242,8 @@ class GcpRetentionpolicy: @define(eq=False, slots=False) class GcpWebsite: kind: ClassVar[str] = "gcp_website" + kind_display: ClassVar[str] = "GCP Website" + kind_description: ClassVar[str] = "GCP Website refers to the official website of Google Cloud Platform where users can access information, documentation, and resources related to Google's cloud services and products." mapping: ClassVar[Dict[str, Bender]] = { "main_page_suffix": S("mainPageSuffix"), "not_found_page": S("notFoundPage"), @@ -227,6 +257,8 @@ class GcpObject(GcpResource): # GcpObjects are necessary to empty buckets before deletion # they are not intended to be collected and stored in the graph kind: ClassVar[str] = "gcp_object" + kind_display: ClassVar[str] = "GCP Object" + kind_description: ClassVar[str] = "GCP Object is a generic term referring to any type of object stored in Google Cloud Platform. It can include files, images, documents, or any other digital asset." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="storage", version="v1", @@ -246,6 +278,8 @@ class GcpObject(GcpResource): @define(eq=False, slots=False) class GcpBucket(GcpResource): kind: ClassVar[str] = "gcp_bucket" + kind_display: ClassVar[str] = "GCP Bucket" + kind_description: ClassVar[str] = "A GCP Bucket is a cloud storage container provided by Google Cloud Platform, allowing users to store and access data in a scalable and durable manner." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="storage", version="v1", From 8ebc86f97408e51979053707ea33a725fb9daf78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 23:25:24 +0100 Subject: [PATCH 11/27] Update AWS Descriptions --- .../resoto_plugin_aws/resource/apigateway.py | 26 ++ .../aws/resoto_plugin_aws/resource/athena.py | 12 + .../resoto_plugin_aws/resource/autoscaling.py | 24 ++ .../aws/resoto_plugin_aws/resource/base.py | 8 + .../resource/cloudformation.py | 16 + .../resoto_plugin_aws/resource/cloudfront.py | 102 +++++ .../resoto_plugin_aws/resource/cloudtrail.py | 8 + .../aws/resoto_plugin_aws/resource/cognito.py | 16 + .../aws/resoto_plugin_aws/resource/config.py | 6 + .../resoto_plugin_aws/resource/dynamodb.py | 32 ++ plugins/aws/resoto_plugin_aws/resource/ec2.py | 180 ++++++++ plugins/aws/resoto_plugin_aws/resource/ecs.py | 132 ++++++ plugins/aws/resoto_plugin_aws/resource/efs.py | 12 + plugins/aws/resoto_plugin_aws/resource/eks.py | 34 ++ .../resoto_plugin_aws/resource/elasticache.py | 36 ++ .../resource/elasticbeanstalk.py | 26 ++ plugins/aws/resoto_plugin_aws/resource/elb.py | 18 + .../aws/resoto_plugin_aws/resource/elbv2.py | 38 ++ .../aws/resoto_plugin_aws/resource/glacier.py | 16 + plugins/aws/resoto_plugin_aws/resource/iam.py | 28 ++ .../aws/resoto_plugin_aws/resource/kinesis.py | 10 + plugins/aws/resoto_plugin_aws/resource/kms.py | 8 + .../aws/resoto_plugin_aws/resource/lambda_.py | 24 ++ .../aws/resoto_plugin_aws/resource/pricing.py | 8 + plugins/aws/resoto_plugin_aws/resource/rds.py | 44 ++ .../resoto_plugin_aws/resource/redshift.py | 40 ++ .../aws/resoto_plugin_aws/resource/route53.py | 16 + plugins/aws/resoto_plugin_aws/resource/s3.py | 20 + .../resoto_plugin_aws/resource/sagemaker.py | 392 ++++++++++++++++++ .../resource/service_quotas.py | 8 + plugins/aws/resoto_plugin_aws/resource/sns.py | 8 + plugins/aws/resoto_plugin_aws/resource/sqs.py | 4 + 32 files changed, 1352 insertions(+) diff --git a/plugins/aws/resoto_plugin_aws/resource/apigateway.py b/plugins/aws/resoto_plugin_aws/resource/apigateway.py index 9fb2bbf4f9..d8fd68982e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/apigateway.py +++ b/plugins/aws/resoto_plugin_aws/resource/apigateway.py @@ -63,6 +63,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsApiGatewayMethodResponse: kind: ClassVar[str] = "aws_api_gateway_method_response" + kind_display: ClassVar[str] = "AWS API Gateway Method Response" + kind_description: ClassVar[str] = "API Gateway Method Response allows users to define the response parameters and models for a particular method in the API Gateway service, which helps in shaping the output of API responses." mapping: ClassVar[Dict[str, Bender]] = { "status_code": S("statusCode"), "response_parameters": S("responseParameters"), @@ -76,6 +78,8 @@ class AwsApiGatewayMethodResponse: @define(eq=False, slots=False) class AwsApiGatewayIntegrationResponse: kind: ClassVar[str] = "aws_api_gateway_integration_response" + kind_display: ClassVar[str] = "AWS API Gateway Integration Response" + kind_description: ClassVar[str] = "API Gateway Integration Response is used to define the response structure and mapping for an API Gateway integration." mapping: ClassVar[Dict[str, Bender]] = { "status_code": S("statusCode"), "selection_pattern": S("selectionPattern"), @@ -93,6 +97,8 @@ class AwsApiGatewayIntegrationResponse: @define(eq=False, slots=False) class AwsApiGatewayIntegration: kind: ClassVar[str] = "aws_api_gateway_integration" + kind_display: ClassVar[str] = "AWS API Gateway Integration" + kind_description: ClassVar[str] = "API Gateway Integration is a feature provided by AWS API Gateway that allows users to connect their APIs to other AWS services or external HTTP endpoints." mapping: ClassVar[Dict[str, Bender]] = { "integration_type": S("type"), "http_method": S("httpMethod"), @@ -130,6 +136,8 @@ class AwsApiGatewayIntegration: @define(eq=False, slots=False) class AwsApiGatewayMethod: kind: ClassVar[str] = "aws_api_gateway_method" + kind_display: ClassVar[str] = "AWS API Gateway Method" + kind_description: ClassVar[str] = "AWS API Gateway Method allows users to define the individual methods that are available in a REST API, including the HTTP method and the integration with backend services." mapping: ClassVar[Dict[str, Bender]] = { "http_method": S("httpMethod"), "authorization_type": S("authorizationType"), @@ -160,6 +168,8 @@ class AwsApiGatewayMethod: class AwsApiGatewayResource(AwsResource): # collection of resource resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_resource" + kind_display: ClassVar[str] = "AWS API Gateway Resource" + kind_description: ClassVar[str] = "API Gateway Resource is a logical unit used in API Gateway to represent a part of an API's resource hierarchy." reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_api_gateway_authorizer"]}} mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), @@ -207,6 +217,8 @@ def service_name(cls) -> str: class AwsApiGatewayAuthorizer(AwsResource): # collection of authorizer resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_authorizer" + kind_display: ClassVar[str] = "AWS API Gateway Authorizer" + kind_description: ClassVar[str] = "API Gateway Authorizers are mechanisms that help control access to APIs deployed on AWS API Gateway by authenticating and authorizing client requests." reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_lambda_function"]}, "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_lambda_function", "aws_iam_role"]}, @@ -270,6 +282,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsApiGatewayCanarySetting: kind: ClassVar[str] = "aws_api_gateway_canary_setting" + kind_display: ClassVar[str] = "AWS API Gateway Canary Setting" + kind_description: ClassVar[str] = "API Gateway Canary Setting is a feature in AWS API Gateway that allows you to test new deployments or changes to your APIs on a small percentage of your traffic before rolling them out to the entire API." mapping: ClassVar[Dict[str, Bender]] = { "percent_traffic": S("percentTraffic"), "deployment_id": S("deploymentId"), @@ -286,6 +300,8 @@ class AwsApiGatewayCanarySetting: class AwsApiGatewayStage(ApiGatewayTaggable, AwsResource): # collection of stage resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_stage" + kind_display: ClassVar[str] = "AWS API Gateway Stage" + kind_description: ClassVar[str] = "API Gateway Stages are environment configurations for deploying and managing APIs in the AWS API Gateway service." mapping: ClassVar[Dict[str, Bender]] = { "id": S("syntheticId"), # created by Resoto to avoid collision with duplicate stage names "name": S("stageName"), @@ -342,6 +358,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsApiGatewayDeployment(AwsResource): # collection of deployment resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_deployment" + kind_display: ClassVar[str] = "AWS API Gateway Deployment" + kind_description: ClassVar[str] = "API Gateway Deployments refer to the process of deploying the API configurations created in AWS API Gateway to make them accessible for clients." # edge to aws_api_gateway_stage is established in AwsApiGatewayRestApi.collect() reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_api_gateway_stage"]}} @@ -379,6 +397,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsApiGatewayEndpointConfiguration: kind: ClassVar[str] = "aws_api_gateway_endpoint_configuration" + kind_display: ClassVar[str] = "AWS API Gateway Endpoint Configuration" + kind_description: ClassVar[str] = "API Gateway Endpoint Configuration is a configuration that defines the settings for an API Gateway endpoint, including the protocol, SSL certificate, and custom domain name." mapping: ClassVar[Dict[str, Bender]] = { "types": S("types", default=[]), "vpc_endpoint_ids": S("vpcEndpointIds", default=[]), @@ -390,6 +410,8 @@ class AwsApiGatewayEndpointConfiguration: @define(eq=False, slots=False) class AwsApiGatewayRestApi(ApiGatewayTaggable, AwsResource): kind: ClassVar[str] = "aws_api_gateway_rest_api" + kind_display: ClassVar[str] = "AWS API Gateway REST API" + kind_description: ClassVar[str] = "API Gateway is a fully managed service that makes it easy for developers to create, publish, and manage APIs at any scale." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "get-rest-apis", "items", override_iam_permission="apigateway:GET" ) @@ -521,6 +543,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsApiGatewayMutualTlsAuthentication: kind: ClassVar[str] = "aws_api_gateway_mutual_tls_authentication" + kind_display: ClassVar[str] = "AWS API Gateway Mutual TLS Authentication" + kind_description: ClassVar[str] = "API Gateway Mutual TLS Authentication enables mutual TLS authentication for secure communication between clients and API Gateway, providing an additional layer of security to protect the API endpoints." mapping: ClassVar[Dict[str, Bender]] = { "truststore_uri": S("truststoreUri"), "truststore_version": S("truststoreVersion"), @@ -534,6 +558,8 @@ class AwsApiGatewayMutualTlsAuthentication: @define(eq=False, slots=False) class AwsApiGatewayDomainName(ApiGatewayTaggable, AwsResource): kind: ClassVar[str] = "aws_api_gateway_domain_name" + kind_display: ClassVar[str] = "AWS API Gateway Domain Name" + kind_description: ClassVar[str] = "API Gateway Domain Name is a custom domain name that you can associate with your API in Amazon API Gateway, allowing you to have a more branded and user-friendly endpoint for your API." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "get-domain-names", "items", override_iam_permission="apigateway:GET" ) diff --git a/plugins/aws/resoto_plugin_aws/resource/athena.py b/plugins/aws/resoto_plugin_aws/resource/athena.py index 39c559c624..d48789feed 100644 --- a/plugins/aws/resoto_plugin_aws/resource/athena.py +++ b/plugins/aws/resoto_plugin_aws/resource/athena.py @@ -19,6 +19,8 @@ @define(eq=False, slots=False) class AwsAthenaEncryptionConfiguration: kind: ClassVar[str] = "aws_athena_encryption_configuration" + kind_display: ClassVar[str] = "AWS Athena Encryption Configuration" + kind_description: ClassVar[str] = "Athena Encryption Configuration is a feature in AWS Athena that allows users to configure encryption settings for their query results." mapping: ClassVar[Dict[str, Bender]] = {"encryption_option": S("EncryptionOption"), "kms_key": S("KmsKey")} encryption_option: Optional[str] = None kms_key: Optional[str] = None @@ -27,6 +29,8 @@ class AwsAthenaEncryptionConfiguration: @define(eq=False, slots=False) class AwsAthenaResultConfiguration: kind: ClassVar[str] = "aws_athena_result_configuration" + kind_display: ClassVar[str] = "AWS Athena Result Configuration" + kind_description: ClassVar[str] = "AWS Athena Result Configuration allows users to specify where query results should be stored in Amazon S3 and how they should be encrypted." mapping: ClassVar[Dict[str, Bender]] = { "output_location": S("OutputLocation"), "encryption_configuration": S("EncryptionConfiguration") >> Bend(AwsAthenaEncryptionConfiguration.mapping), @@ -40,6 +44,8 @@ class AwsAthenaResultConfiguration: @define(eq=False, slots=False) class AwsAthenaEngineVersion: kind: ClassVar[str] = "aws_athena_engine_version" + kind_display: ClassVar[str] = "AWS Athena Engine Version" + kind_description: ClassVar[str] = "AWS Athena Engine Version is a service provided by Amazon Web Services for querying and analyzing data stored in Amazon S3 using standard SQL statements." mapping: ClassVar[Dict[str, Bender]] = { "selected_engine_version": S("SelectedEngineVersion"), "effective_engine_version": S("EffectiveEngineVersion"), @@ -51,6 +57,8 @@ class AwsAthenaEngineVersion: @define(eq=False, slots=False) class AwsAthenaWorkGroupConfiguration: kind: ClassVar[str] = "aws_athena_work_group_configuration" + kind_display: ClassVar[str] = "AWS Athena Work Group Configuration" + kind_description: ClassVar[str] = "Athena work group configuration in Amazon Web Services, which allows users to configure settings for managing and executing queries in Athena." mapping: ClassVar[Dict[str, Bender]] = { "result_configuration": S("ResultConfiguration") >> Bend(AwsAthenaResultConfiguration.mapping), "enforce_work_group_configuration": S("EnforceWorkGroupConfiguration"), @@ -70,6 +78,8 @@ class AwsAthenaWorkGroupConfiguration: @define(eq=False, slots=False) class AwsAthenaWorkGroup(AwsResource): kind: ClassVar[str] = "aws_athena_work_group" + kind_display: ClassVar[str] = "AWS Athena Work Group" + kind_description: ClassVar[str] = "Athena Work Group is a logical container for AWS Glue Data Catalog metadata and query statistics." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-work-groups", "WorkGroups") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), @@ -185,6 +195,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsAthenaDataCatalog(AwsResource): kind: ClassVar[str] = "aws_athena_data_catalog" + kind_display: ClassVar[str] = "AWS Athena Data Catalog" + kind_description: ClassVar[str] = "Athena Data Catalog is a managed metadata repository in AWS that allows you to store and organize metadata about your data sources, such as databases, tables, and partitions." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-data-catalogs", "DataCatalogsSummary") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), diff --git a/plugins/aws/resoto_plugin_aws/resource/autoscaling.py b/plugins/aws/resoto_plugin_aws/resource/autoscaling.py index 76636bad49..fbc0c0f4a7 100644 --- a/plugins/aws/resoto_plugin_aws/resource/autoscaling.py +++ b/plugins/aws/resoto_plugin_aws/resource/autoscaling.py @@ -17,6 +17,8 @@ @define(eq=False, slots=False) class AwsAutoScalingLaunchTemplateSpecification: kind: ClassVar[str] = "aws_autoscaling_launch_template_specification" + kind_display: ClassVar[str] = "AWS Auto Scaling Launch Template Specification" + kind_description: ClassVar[str] = "An Auto Scaling Launch Template Specification is a configuration template for launching instances in an Auto Scaling group in Amazon Web Services. It allows users to define the instance specifications, such as the AMI, instance type, security groups, and more." mapping: ClassVar[Dict[str, Bender]] = { "launch_template_id": S("LaunchTemplateId"), "launch_template_name": S("LaunchTemplateName"), @@ -30,6 +32,8 @@ class AwsAutoScalingLaunchTemplateSpecification: @define(eq=False, slots=False) class AwsAutoScalingMinMax: kind: ClassVar[str] = "aws_autoscaling_min_max" + kind_display: ClassVar[str] = "AWS Auto Scaling Min Max" + kind_description: ClassVar[str] = "AWS Auto Scaling Min Max is a feature of Amazon Web Services that allows users to set minimum and maximum limits for the number of instances in an auto scaling group. This helps to ensure that the group scales within desired bounds based on resource needs." mapping: ClassVar[Dict[str, Bender]] = {"min": S("Min"), "max": S("Max")} min: Optional[int] = field(default=None) max: Optional[int] = field(default=None) @@ -38,6 +42,8 @@ class AwsAutoScalingMinMax: @define(eq=False, slots=False) class AwsAutoScalingInstanceRequirements: kind: ClassVar[str] = "aws_autoscaling_instance_requirements" + kind_display: ClassVar[str] = "AWS Auto Scaling Instance Requirements" + kind_description: ClassVar[str] = "Auto Scaling Instance Requirements refer to the specific requirements that need to be fulfilled by instances in an Auto Scaling group, such as specifying the minimum and maximum number of instances, instance types, and availability zones." mapping: ClassVar[Dict[str, Bender]] = { "v_cpu_count": S("VCpuCount") >> Bend(AwsAutoScalingMinMax.mapping), "memory_mi_b": S("MemoryMiB") >> Bend(AwsAutoScalingMinMax.mapping), @@ -87,6 +93,8 @@ class AwsAutoScalingInstanceRequirements: @define(eq=False, slots=False) class AwsAutoScalingLaunchTemplateOverrides: kind: ClassVar[str] = "aws_autoscaling_launch_template_overrides" + kind_display: ClassVar[str] = "AWS Autoscaling Launch Template Overrides" + kind_description: ClassVar[str] = "Launch Template Overrides are used in AWS Autoscaling to customize the configuration of instances launched by an autoscaling group." mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "weighted_capacity": S("WeightedCapacity"), @@ -103,6 +111,8 @@ class AwsAutoScalingLaunchTemplateOverrides: @define(eq=False, slots=False) class AwsAutoScalingLaunchTemplate: kind: ClassVar[str] = "aws_autoscaling_launch_template" + kind_display: ClassVar[str] = "AWS Autoscaling Launch Template" + kind_description: ClassVar[str] = "An Autoscaling Launch Template is a reusable configuration that defines the launch parameters and instance settings for instances created by Autoscaling groups in AWS." mapping: ClassVar[Dict[str, Bender]] = { "launch_template_specification": S("LaunchTemplateSpecification") >> Bend(AwsAutoScalingLaunchTemplateSpecification.mapping), @@ -115,6 +125,8 @@ class AwsAutoScalingLaunchTemplate: @define(eq=False, slots=False) class AwsAutoScalingInstancesDistribution: kind: ClassVar[str] = "aws_autoscaling_instances_distribution" + kind_display: ClassVar[str] = "AWS Autoscaling Instances Distribution" + kind_description: ClassVar[str] = "Autoscaling Instances Distribution in AWS allows for automatic scaling of EC2 instances based on predefined conditions, ensuring optimized resource allocation and workload management." mapping: ClassVar[Dict[str, Bender]] = { "on_demand_allocation_strategy": S("OnDemandAllocationStrategy"), "on_demand_base_capacity": S("OnDemandBaseCapacity"), @@ -134,6 +146,8 @@ class AwsAutoScalingInstancesDistribution: @define(eq=False, slots=False) class AwsAutoScalingMixedInstancesPolicy: kind: ClassVar[str] = "aws_autoscaling_mixed_instances_policy" + kind_display: ClassVar[str] = "AWS Autoscaling Mixed Instances Policy" + kind_description: ClassVar[str] = "AWS Autoscaling Mixed Instances Policy allows users to define a policy for autoscaling groups that specifies a mixture of instance types and purchase options." mapping: ClassVar[Dict[str, Bender]] = { "launch_template": S("LaunchTemplate") >> Bend(AwsAutoScalingLaunchTemplate.mapping), "instances_distribution": S("InstancesDistribution") >> Bend(AwsAutoScalingInstancesDistribution.mapping), @@ -145,6 +159,8 @@ class AwsAutoScalingMixedInstancesPolicy: @define(eq=False, slots=False) class AwsAutoScalingInstance: kind: ClassVar[str] = "aws_autoscaling_instance" + kind_display: ClassVar[str] = "AWS Auto Scaling Instance" + kind_description: ClassVar[str] = "Auto Scaling Instances are automatically provisioned and terminated instances managed by the AWS Auto Scaling service, which helps maintain application availability and optimize resource usage based on user-defined scaling policies." mapping: ClassVar[Dict[str, Bender]] = { "instance_id": S("InstanceId"), "instance_type": S("InstanceType"), @@ -170,6 +186,8 @@ class AwsAutoScalingInstance: @define(eq=False, slots=False) class AwsAutoScalingSuspendedProcess: kind: ClassVar[str] = "aws_autoscaling_suspended_process" + kind_display: ClassVar[str] = "AWS Autoscaling Suspended Process" + kind_description: ClassVar[str] = "Autoscaling Suspended Process is a feature in Amazon EC2 Auto Scaling that allows you to suspend and resume specific scaling processes for your Auto Scaling group. It allows you to temporarily stop scaling activities for a specific process, such as launching new instances or terminating instances, while keeping your existing resources running." mapping: ClassVar[Dict[str, Bender]] = { "process_name": S("ProcessName"), "suspension_reason": S("SuspensionReason"), @@ -181,6 +199,8 @@ class AwsAutoScalingSuspendedProcess: @define(eq=False, slots=False) class AwsAutoScalingEnabledMetric: kind: ClassVar[str] = "aws_autoscaling_enabled_metric" + kind_display: ClassVar[str] = "AWS Auto Scaling Enabled Metric" + kind_description: ClassVar[str] = "Auto Scaling Enabled Metric is a feature in AWS Auto Scaling that scales resources based on a specified metric, such as CPU utilization or request count." mapping: ClassVar[Dict[str, Bender]] = {"metric": S("Metric"), "granularity": S("Granularity")} metric: Optional[str] = field(default=None) granularity: Optional[str] = field(default=None) @@ -189,6 +209,8 @@ class AwsAutoScalingEnabledMetric: @define(eq=False, slots=False) class AwsAutoScalingWarmPoolConfiguration: kind: ClassVar[str] = "aws_autoscaling_warm_pool_configuration" + kind_display: ClassVar[str] = "AWS Auto Scaling Warm Pool Configuration" + kind_description: ClassVar[str] = "AWS Auto Scaling Warm Pool Configuration is a feature that allows you to provision and maintain a pool of pre-warmed instances for faster scaling." mapping: ClassVar[Dict[str, Bender]] = { "max_group_prepared_capacity": S("MaxGroupPreparedCapacity"), "min_size": S("MinSize"), @@ -206,6 +228,8 @@ class AwsAutoScalingWarmPoolConfiguration: @define(eq=False, slots=False) class AwsAutoScalingGroup(AwsResource, BaseAutoScalingGroup): kind: ClassVar[str] = "aws_autoscaling_group" + kind_display: ClassVar[str] = "AWS Autoscaling Group" + kind_description: ClassVar[str] = "An AWS Autoscaling Group is a collection of Amazon EC2 instances that are treated as a logical grouping for the purpose of automatic scaling and management." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-auto-scaling-groups", "AutoScalingGroups") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_ec2_instance"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/base.py b/plugins/aws/resoto_plugin_aws/resource/base.py index 0a224a7ee3..aeeb5a2b97 100644 --- a/plugins/aws/resoto_plugin_aws/resource/base.py +++ b/plugins/aws/resoto_plugin_aws/resource/base.py @@ -99,6 +99,8 @@ class AwsResource(BaseResource, ABC): # The name of the kind of all resources. Needs to be globally unique. kind: ClassVar[str] = "aws_resource" + kind_display: ClassVar[str] = "AWS Resource" + kind_description: ClassVar[str] = "AWS Resource is a generic term used to refer to any type of resource available in Amazon Web Services cloud." # The mapping to transform the incoming API json into the internal representation. mapping: ClassVar[Dict[str, Bender]] = {} # Which API to call and what to expect in the result. @@ -239,6 +241,8 @@ def __str__(self) -> str: @define(eq=False) class AwsAccount(BaseAccount, AwsResource): kind: ClassVar[str] = "aws_account" + kind_display: ClassVar[str] = "AWS Account" + kind_description: ClassVar[str] = "An AWS Account is a container for AWS resources, such as EC2 instances, S3 buckets, and RDS databases. It allows users to access and manage their resources on the Amazon Web Services platform." reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_region"]}} account_alias: Optional[str] = "" @@ -274,6 +278,8 @@ class AwsAccount(BaseAccount, AwsResource): @define(eq=False) class AwsRegion(BaseRegion, AwsResource): kind: ClassVar[str] = "aws_region" + kind_display: ClassVar[str] = "AWS Region" + kind_description: ClassVar[str] = "An AWS Region is a physical location where AWS has multiple data centers, allowing users to choose the geographic area in which their resources are located." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -320,6 +326,8 @@ class AwsRegion(BaseRegion, AwsResource): @define(eq=False, slots=False) class AwsEc2VolumeType(AwsResource, BaseVolumeType): kind: ClassVar[str] = "aws_ec2_volume_type" + kind_display: ClassVar[str] = "AWS EC2 Volume Type" + kind_description: ClassVar[str] = "EC2 Volume Types are different storage options for Amazon Elastic Block Store (EBS) volumes, such as General Purpose (SSD) and Magnetic." class GraphBuilder: diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudformation.py b/plugins/aws/resoto_plugin_aws/resource/cloudformation.py index 80db4c0b09..ebea03a11e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudformation.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudformation.py @@ -18,6 +18,8 @@ @define(eq=False, slots=False) class AwsCloudFormationRollbackTrigger: kind: ClassVar[str] = "aws_cloudformation_rollback_trigger" + kind_display: ClassVar[str] = "AWS CloudFormation Rollback Trigger" + kind_description: ClassVar[str] = "AWS CloudFormation Rollback Trigger is a feature that allows you to specify criteria to determine when CloudFormation should roll back a stack operation. When the specified criteria are met, CloudFormation automatically rolls back any changes made during the stack operation to the previously deployed state." mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "type": S("Type")} arn: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -26,6 +28,8 @@ class AwsCloudFormationRollbackTrigger: @define(eq=False, slots=False) class AwsCloudFormationRollbackConfiguration: kind: ClassVar[str] = "aws_cloudformation_rollback_configuration" + kind_display: ClassVar[str] = "AWS CloudFormation Rollback Configuration" + kind_description: ClassVar[str] = "AWS CloudFormation Rollback Configuration allows users to specify the conditions under which an AWS CloudFormation stack rollback is triggered." mapping: ClassVar[Dict[str, Bender]] = { "rollback_triggers": S("RollbackTriggers", default=[]) >> ForallBend(AwsCloudFormationRollbackTrigger.mapping), "monitoring_time_in_minutes": S("MonitoringTimeInMinutes"), @@ -37,6 +41,8 @@ class AwsCloudFormationRollbackConfiguration: @define(eq=False, slots=False) class AwsCloudFormationOutput: kind: ClassVar[str] = "aws_cloudformation_output" + kind_display: ClassVar[str] = "AWS CloudFormation Output" + kind_description: ClassVar[str] = "AWS CloudFormation Output represents the values that are provided by a CloudFormation stack and can be accessed by other resources in the same stack." mapping: ClassVar[Dict[str, Bender]] = { "output_key": S("OutputKey"), "output_value": S("OutputValue"), @@ -52,6 +58,8 @@ class AwsCloudFormationOutput: @define(eq=False, slots=False) class AwsCloudFormationStackDriftInformation: kind: ClassVar[str] = "aws_cloudformation_stack_drift_information" + kind_display: ClassVar[str] = "AWS CloudFormation Stack Drift Information" + kind_description: ClassVar[str] = "CloudFormation Stack Drift Information provides details about any drift that has occurred in an AWS CloudFormation stack. Stack drift occurs when the actual state of the stack resources diverges from their expected state as defined in the stack template." mapping: ClassVar[Dict[str, Bender]] = { "stack_drift_status": S("StackDriftStatus"), "last_check_timestamp": S("LastCheckTimestamp"), @@ -63,6 +71,8 @@ class AwsCloudFormationStackDriftInformation: @define(eq=False, slots=False) class AwsCloudFormationStack(AwsResource, BaseStack): kind: ClassVar[str] = "aws_cloudformation_stack" + kind_display: ClassVar[str] = "AWS CloudFormation Stack" + kind_description: ClassVar[str] = "CloudFormation Stacks are a collection of AWS resources that are created, updated, or deleted together as a single unit." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-stacks", "Stacks") mapping: ClassVar[Dict[str, Bender]] = { "id": S("StackId"), @@ -181,6 +191,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsCloudFormationAutoDeployment: kind: ClassVar[str] = "aws_cloudformation_auto_deployment" + kind_display: ClassVar[str] = "AWS CloudFormation Auto Deployment" + kind_description: ClassVar[str] = "AWS CloudFormation Auto Deployment is a service that automates the deployment of CloudFormation templates in the AWS Cloud, making it easier to provision and manage a stack of AWS resources." mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("Enabled"), "retain_stacks_on_account_removal": S("RetainStacksOnAccountRemoval"), @@ -192,6 +204,8 @@ class AwsCloudFormationAutoDeployment: @define(eq=False, slots=False) class AwsCloudFormationStackSet(AwsResource): kind: ClassVar[str] = "aws_cloudformation_stack_set" + kind_display: ClassVar[str] = "AWS CloudFormation Stack Set" + kind_description: ClassVar[str] = "CloudFormation Stack Set is a feature in AWS CloudFormation that enables you to create, update, or delete stacks across multiple accounts and regions with a single CloudFormation template." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-stack-sets", "Summaries", dict(Status="ACTIVE")) mapping: ClassVar[Dict[str, Bender]] = { "id": S("StackSetId"), @@ -304,6 +318,8 @@ def _stack_instance_id(stack: Json) -> str: class AwsCloudFormationStackInstanceSummary(AwsResource): # note: resource is collected via AwsCloudFormationStackSet kind: ClassVar[str] = "aws_cloud_formation_stack_instance_summary" + kind_display: ClassVar[str] = "AWS CloudFormation Stack Instance Summary" + kind_description: ClassVar[str] = "CloudFormation Stack Instance Summary provides a summary of instances in a CloudFormation stack, including instance ID, status, and stack name." mapping: ClassVar[Dict[str, Bender]] = { "id": F(_stack_instance_id), "stack_instance_stack_set_id": S("StackSetId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py index de85fafbdd..4e6942e0ca 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py @@ -85,6 +85,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsCloudFrontOriginCustomHeader: kind: ClassVar[str] = "aws_cloudfront_origin_custom_header" + kind_display: ClassVar[str] = "AWS CloudFront Origin Custom Header" + kind_description: ClassVar[str] = "AWS CloudFront Origin Custom Header is a feature of Amazon CloudFront that allows users to add custom headers to requests sent to the origin server." mapping: ClassVar[Dict[str, Bender]] = {"header_name": S("HeaderName"), "header_value": S("HeaderValue")} header_name: Optional[str] = field(default=None) header_value: Optional[str] = field(default=None) @@ -93,6 +95,8 @@ class AwsCloudFrontOriginCustomHeader: @define(eq=False, slots=False) class AwsCloudFrontCustomOriginConfig: kind: ClassVar[str] = "aws_cloudfront_custom_origin_config" + kind_display: ClassVar[str] = "AWS CloudFront Custom Origin Configuration" + kind_description: ClassVar[str] = "CloudFront Custom Origin Configuration allows users to customize the settings of the origin (source) server for their CloudFront distribution. This includes specifying the origin server's domain name, port, and protocol settings." mapping: ClassVar[Dict[str, Bender]] = { "http_port": S("HTTPPort"), "https_port": S("HTTPSPort"), @@ -112,6 +116,8 @@ class AwsCloudFrontCustomOriginConfig: @define(eq=False, slots=False) class AwsCloudFrontOriginShield: kind: ClassVar[str] = "aws_cloudfront_origin_shield" + kind_display: ClassVar[str] = "AWS CloudFront Origin Shield" + kind_description: ClassVar[str] = "CloudFront Origin Shield is a feature offered by AWS CloudFront that adds an additional layer of protection and reliability to the origin servers by caching the content at an intermediate layer." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("Enabled"), "origin_shield_region": S("OriginShieldRegion")} enabled: Optional[bool] = field(default=None) origin_shield_region: Optional[str] = field(default=None) @@ -120,6 +126,8 @@ class AwsCloudFrontOriginShield: @define(eq=False, slots=False) class AwsCloudFrontOrigin: kind: ClassVar[str] = "aws_cloudfront_origin" + kind_display: ClassVar[str] = "AWS CloudFront Origin" + kind_description: ClassVar[str] = "CloudFront Origin represents the source of content for distribution through the Amazon CloudFront content delivery network." mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "domain_name": S("DomainName"), @@ -147,6 +155,8 @@ class AwsCloudFrontOrigin: @define(eq=False, slots=False) class AwsCloudFrontOriginGroupFailoverCriteria: kind: ClassVar[str] = "aws_cloudfront_origin_group_failover_criteria" + kind_display: ClassVar[str] = "AWS CloudFront Origin Group Failover Criteria" + kind_description: ClassVar[str] = "Failover criteria for AWS CloudFront origin groups, which determine when a secondary origin server is used as a fallback in case the primary origin server fails." mapping: ClassVar[Dict[str, Bender]] = {"status_codes": S("StatusCodes", "Items", default=[])} status_codes: List[str] = field(factory=list) @@ -154,6 +164,8 @@ class AwsCloudFrontOriginGroupFailoverCriteria: @define(eq=False, slots=False) class AwsCloudFrontOriginGroupMembers: kind: ClassVar[str] = "aws_cloudfront_origin_group_members" + kind_display: ClassVar[str] = "AWS CloudFront Origin Group Members" + kind_description: ClassVar[str] = "CloudFront Origin Group Members are the origin servers that are part of an Origin Group in AWS CloudFront. They serve as the source for content delivered by CloudFront distributions." mapping: ClassVar[Dict[str, Bender]] = { "origin_id": S("OriginId"), } @@ -163,6 +175,8 @@ class AwsCloudFrontOriginGroupMembers: @define(eq=False, slots=False) class AwsCloudFrontOriginGroup: kind: ClassVar[str] = "aws_cloudfront_origin_group" + kind_display: ClassVar[str] = "AWS CloudFront Origin Group" + kind_description: ClassVar[str] = "An AWS CloudFront Origin Group is a collection of origins that you can associate with a distribution, allowing you to specify multiple origin resources for content delivery." mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "failover_criteria": S("FailoverCriteria") >> Bend(AwsCloudFrontOriginGroupFailoverCriteria.mapping), @@ -176,6 +190,8 @@ class AwsCloudFrontOriginGroup: @define(eq=False, slots=False) class AwsCloudFrontLambdaFunctionAssociation: kind: ClassVar[str] = "aws_cloudfront_lambda_function_association" + kind_display: ClassVar[str] = "AWS CloudFront Lambda Function Association" + kind_description: ClassVar[str] = "CloudFront Lambda Function Association allows users to associate Lambda functions with CloudFront distributions, allowing them to modify the request or response and customize the content delivery process." mapping: ClassVar[Dict[str, Bender]] = { "lambda_function_arn": S("LambdaFunctionARN"), "event_type": S("EventType"), @@ -189,6 +205,8 @@ class AwsCloudFrontLambdaFunctionAssociation: @define(eq=False, slots=False) class AwsCloudFrontFunctionAssociation: kind: ClassVar[str] = "aws_cloudfront_function_association" + kind_display: ClassVar[str] = "AWS CloudFront Function Association" + kind_description: ClassVar[str] = "CloudFront Function Association is a feature in Amazon CloudFront that allows associating a CloudFront function with a CloudFront distribution to modify the behavior of the distribution." mapping: ClassVar[Dict[str, Bender]] = {"function_arn": S("FunctionARN"), "event_type": S("EventType")} function_arn: Optional[str] = field(default=None) event_type: Optional[str] = field(default=None) @@ -197,6 +215,8 @@ class AwsCloudFrontFunctionAssociation: @define(eq=False, slots=False) class AwsCloudFrontCookiePreference: kind: ClassVar[str] = "aws_cloudfront_cookie_preference" + kind_display: ClassVar[str] = "AWS CloudFront Cookie Preference" + kind_description: ClassVar[str] = "AWS CloudFront Cookie Preference is a feature of Amazon CloudFront that enables users to specify how CloudFront handles cookies in the client request and response headers." mapping: ClassVar[Dict[str, Bender]] = { "forward": S("Forward"), "whitelisted_names": S("WhitelistedNames", "Items", default=[]), @@ -208,6 +228,8 @@ class AwsCloudFrontCookiePreference: @define(eq=False, slots=False) class AwsCloudFrontForwardedValues: kind: ClassVar[str] = "aws_cloudfront_forwarded_values" + kind_display: ClassVar[str] = "AWS CloudFront Forwarded Values" + kind_description: ClassVar[str] = "CloudFront Forwarded Values allows you to customize how CloudFront handles and forwards specific HTTP headers in viewer requests to the origin." mapping: ClassVar[Dict[str, Bender]] = { "query_string": S("QueryString"), "cookies": S("Cookies") >> Bend(AwsCloudFrontCookiePreference.mapping), @@ -223,6 +245,8 @@ class AwsCloudFrontForwardedValues: @define(eq=False, slots=False) class AwsCloudFrontDefaultCacheBehavior: kind: ClassVar[str] = "aws_cloudfront_default_cache_behavior" + kind_display: ClassVar[str] = "AWS CloudFront Default Cache Behavior" + kind_description: ClassVar[str] = "CloudFront Default Cache Behavior is a configuration setting in AWS CloudFront that defines the default behavior for caching content on the edge locations." mapping: ClassVar[Dict[str, Bender]] = { "target_origin_id": S("TargetOriginId"), "trusted_signers": S("TrustedSigners", "Items", default=[]), @@ -268,6 +292,8 @@ class AwsCloudFrontDefaultCacheBehavior: @define(eq=False, slots=False) class AwsCloudFrontCacheBehavior: kind: ClassVar[str] = "aws_cloudfront_cache_behavior" + kind_display: ClassVar[str] = "AWS CloudFront Cache Behavior" + kind_description: ClassVar[str] = "CloudFront Cache Behavior is a configuration setting that determines how CloudFront behaves when serving content from cache." mapping: ClassVar[Dict[str, Bender]] = { "path_pattern": S("PathPattern"), "target_origin_id": S("TargetOriginId"), @@ -315,6 +341,8 @@ class AwsCloudFrontCacheBehavior: @define(eq=False, slots=False) class AwsCloudFrontCustomErrorResponse: kind: ClassVar[str] = "aws_cloudfront_custom_error_response" + kind_display: ClassVar[str] = "AWS CloudFront Custom Error Response" + kind_description: ClassVar[str] = "AWS CloudFront Custom Error Response allows users to customize the error responses for their CloudFront distributions, providing a more personalized and user-friendly experience for website visitors when errors occur." mapping: ClassVar[Dict[str, Bender]] = { "error_code": S("ErrorCode"), "response_page_path": S("ResponsePagePath"), @@ -330,6 +358,8 @@ class AwsCloudFrontCustomErrorResponse: @define(eq=False, slots=False) class AwsCloudFrontViewerCertificate: kind: ClassVar[str] = "aws_cloudfront_viewer_certificate" + kind_display: ClassVar[str] = "AWS CloudFront Viewer Certificate" + kind_description: ClassVar[str] = "AWS CloudFront Viewer Certificate is a SSL/TLS certificate that is used to encrypt the communication between the viewer (client) and the CloudFront distribution." mapping: ClassVar[Dict[str, Bender]] = { "cloudfront_default_certificate": S("CloudFrontDefaultCertificate"), "iam_certificate_id": S("IAMCertificateId"), @@ -351,6 +381,8 @@ class AwsCloudFrontViewerCertificate: @define(eq=False, slots=False) class AwsCloudFrontRestrictions: kind: ClassVar[str] = "aws_cloudfront_restrictions" + kind_display: ClassVar[str] = "AWS CloudFront Restrictions" + kind_description: ClassVar[str] = "CloudFront Restrictions in AWS allow users to control access to their content by specifying the locations or IP addresses that are allowed to access it." mapping: ClassVar[Dict[str, Bender]] = {"geo_restriction": S("GeoRestriction", "Items", default=[])} geo_restriction: List[str] = field(factory=list) @@ -358,6 +390,8 @@ class AwsCloudFrontRestrictions: @define(eq=False, slots=False) class AwsCloudFrontAliasICPRecordal: kind: ClassVar[str] = "aws_cloudfront_alias_icp_recordal" + kind_display: ClassVar[str] = "AWS CloudFront Alias ICP Recordal" + kind_description: ClassVar[str] = "AWS CloudFront Alias ICP Recordal is a feature that allows you to associate an Internet Content Provider (ICP) record with a CloudFront distribution in China." mapping: ClassVar[Dict[str, Bender]] = {"cname": S("CNAME"), "icp_recordal_status": S("ICPRecordalStatus")} cname: Optional[str] = field(default=None) icp_recordal_status: Optional[str] = field(default=None) @@ -366,6 +400,8 @@ class AwsCloudFrontAliasICPRecordal: @define(eq=False, slots=False) class AwsCloudFrontDistribution(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_distribution" + kind_display: ClassVar[str] = "AWS CloudFront Distribution" + kind_description: ClassVar[str] = "CloudFront Distributions are a content delivery network (CDN) offered by Amazon Web Services, which enables users to deliver their content to end-users with low latency and high transfer speeds." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-distributions", "DistributionList.Items") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_lambda_function"]}, @@ -510,6 +546,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontFunctionConfig: kind: ClassVar[str] = "aws_cloudfront_function_config" + kind_display: ClassVar[str] = "AWS CloudFront Function Config" + kind_description: ClassVar[str] = "CloudFront Function Config is a configuration for a CloudFront function in the AWS CloudFront service, which allows users to run custom code at the edge locations of the CloudFront CDN to modify the content delivery behavior." mapping: ClassVar[Dict[str, Bender]] = {"comment": S("Comment"), "runtime": S("Runtime")} comment: Optional[str] = field(default=None) runtime: Optional[str] = field(default=None) @@ -518,6 +556,8 @@ class AwsCloudFrontFunctionConfig: @define(eq=False, slots=False) class AwsCloudFrontFunction(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_function" + kind_display: ClassVar[str] = "AWS CloudFront Function" + kind_description: ClassVar[str] = "CloudFront Functions are serverless functions that allow developers to customize and extend the functionality of CloudFront content delivery network, enabling advanced edge processing of HTTP requests and responses." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-functions", "FunctionList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), @@ -561,6 +601,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontPublicKey(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_public_key" + kind_display: ClassVar[str] = "AWS CloudFront Public Key" + kind_description: ClassVar[str] = "AWS CloudFront Public Key is a public key used for encrypting content stored on AWS CloudFront." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-public-keys", "PublicKeyList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), @@ -586,6 +628,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontKinesisStreamConfig: kind: ClassVar[str] = "aws_cloudfront_kinesis_stream_config" + kind_display: ClassVar[str] = "AWS CloudFront Kinesis Stream Config" + kind_description: ClassVar[str] = "The AWS CloudFront Kinesis Stream Config allows users to configure the integration between CloudFront and Kinesis Streams, enabling real-time data streaming and processing." mapping: ClassVar[Dict[str, Bender]] = {"role_arn": S("RoleARN"), "stream_arn": S("StreamARN")} role_arn: Optional[str] = field(default=None) stream_arn: Optional[str] = field(default=None) @@ -594,6 +638,8 @@ class AwsCloudFrontKinesisStreamConfig: @define(eq=False, slots=False) class AwsCloudFrontEndPoint: kind: ClassVar[str] = "aws_cloudfront_end_point" + kind_display: ClassVar[str] = "AWS CloudFront End Point" + kind_description: ClassVar[str] = "CloudFront End Points provide a globally distributed content delivery network (CDN) that delivers data, videos, applications, and APIs to viewers with low latency and high transfer speeds." mapping: ClassVar[Dict[str, Bender]] = { "stream_type": S("StreamType"), "kinesis_stream_config": S("KinesisStreamConfig") >> Bend(AwsCloudFrontKinesisStreamConfig.mapping), @@ -605,6 +651,8 @@ class AwsCloudFrontEndPoint: @define(eq=False, slots=False) class AwsCloudFrontRealtimeLogConfig(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_realtime_log_config" + kind_display: ClassVar[str] = "AWS CloudFront Real-time Log Configuration" + kind_description: ClassVar[str] = "CloudFront Real-time Log Configuration allows you to configure real-time logging for your CloudFront distribution, enabling you to receive real-time logs for your web traffic." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-realtime-log-configs", "RealtimeLogConfigs.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), @@ -632,6 +680,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyCorsConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_cors_config" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy CORS Config" + kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy CORS (Cross-Origin Resource Sharing) Config allows users to specify how CloudFront should handle CORS headers in the response for a specific CloudFront distribution." mapping: ClassVar[Dict[str, Bender]] = { "access_control_allow_origins": S("AccessControlAllowOrigins", "Items", default=[]), "access_control_allow_headers": S("AccessControlAllowHeaders", "Items", default=[]), @@ -653,6 +703,8 @@ class AwsCloudFrontResponseHeadersPolicyCorsConfig: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyXSSProtection: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_xss_protection" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy XSS Protection" + kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy XSS Protection allows users to configure Cross-Site Scripting (XSS) protection in the response headers of their CloudFront distributions." mapping: ClassVar[Dict[str, Bender]] = { "override": S("Override"), "protection": S("Protection"), @@ -668,6 +720,8 @@ class AwsCloudFrontResponseHeadersPolicyXSSProtection: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyFrameOptions: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_frame_options" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Frame Options" + kind_description: ClassVar[str] = "CloudFront Response Headers Policy Frame Options is a feature of Amazon CloudFront that allows you to control the frame options in HTTP responses sent by CloudFront distributions." mapping: ClassVar[Dict[str, Bender]] = {"override": S("Override"), "frame_option": S("FrameOption")} override: Optional[bool] = field(default=None) frame_option: Optional[str] = field(default=None) @@ -676,6 +730,8 @@ class AwsCloudFrontResponseHeadersPolicyFrameOptions: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyReferrerPolicy: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_referrer_policy" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Referrer Policy" + kind_description: ClassVar[str] = "The Referrer Policy in CloudFront determines how the browser should send the 'Referer' HTTP header when making requests to CloudFront distributions." mapping: ClassVar[Dict[str, Bender]] = {"override": S("Override"), "referrer_policy": S("ReferrerPolicy")} override: Optional[bool] = field(default=None) referrer_policy: Optional[str] = field(default=None) @@ -684,6 +740,8 @@ class AwsCloudFrontResponseHeadersPolicyReferrerPolicy: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyContentSecurityPolicy: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_content_security_policy" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy - Content-Security-Policy" + kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy - Content-Security-Policy allows users to define the content security policy (CSP) for their CloudFront distributions, specifying which content sources are allowed and disallowed." mapping: ClassVar[Dict[str, Bender]] = { "override": S("Override"), "content_security_policy": S("ContentSecurityPolicy"), @@ -695,6 +753,8 @@ class AwsCloudFrontResponseHeadersPolicyContentSecurityPolicy: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyStrictTransportSecurity: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_strict_transport_security" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy - Strict Transport Security" + kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy - Strict Transport Security is a security feature that enables websites to declare that their content should only be accessed over HTTPS, and defines the duration for which the browser should automatically choose HTTPS for subsequent requests." mapping: ClassVar[Dict[str, Bender]] = { "override": S("Override"), "include_subdomains": S("IncludeSubdomains"), @@ -710,6 +770,8 @@ class AwsCloudFrontResponseHeadersPolicyStrictTransportSecurity: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicySecurityHeadersConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_security_headers_config" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Security Headers Config" + kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy Security Headers Config allows configuring security headers for responses served by AWS CloudFront, providing additional security measures for web applications." mapping: ClassVar[Dict[str, Bender]] = { "xss_protection": S("XSSProtection") >> Bend(AwsCloudFrontResponseHeadersPolicyXSSProtection.mapping), "frame_options": S("FrameOptions") >> Bend(AwsCloudFrontResponseHeadersPolicyFrameOptions.mapping), @@ -731,6 +793,8 @@ class AwsCloudFrontResponseHeadersPolicySecurityHeadersConfig: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyServerTimingHeadersConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_server_timing_headers_config" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Server Timing Headers Config" + kind_description: ClassVar[str] = "CloudFront Response Headers Policy Server Timing Headers Config is a configuration option in AWS CloudFront that allows you to control the inclusion of Server Timing headers in the response sent to clients." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("Enabled"), "sampling_rate": S("SamplingRate")} enabled: Optional[bool] = field(default=None) sampling_rate: Optional[float] = field(default=None) @@ -739,6 +803,8 @@ class AwsCloudFrontResponseHeadersPolicyServerTimingHeadersConfig: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyCustomHeader: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_custom_header" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Custom Header" + kind_description: ClassVar[str] = "The custom header response policy allows you to add custom headers to the responses served by CloudFront distributions. This can be used to control caching behavior or add additional information to the responses." mapping: ClassVar[Dict[str, Bender]] = {"header": S("Header"), "value": S("Value"), "override": S("Override")} header: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -748,6 +814,8 @@ class AwsCloudFrontResponseHeadersPolicyCustomHeader: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicyConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_config" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Configuration" + kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy Configuration allows users to define and control the HTTP response headers that are included in the responses served by CloudFront." mapping: ClassVar[Dict[str, Bender]] = { "comment": S("Comment"), "name": S("Name"), @@ -772,6 +840,8 @@ class AwsCloudFrontResponseHeadersPolicyConfig: @define(eq=False, slots=False) class AwsCloudFrontResponseHeadersPolicy(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_response_headers_policy" + kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy" + kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy is a configuration that allows you to manage and control the response headers that are included in the HTTP responses delivered by CloudFront." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-response-headers-policies", "ResponseHeadersPolicyList.Items" ) @@ -800,6 +870,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontS3Origin: kind: ClassVar[str] = "aws_cloudfront_s3_origin" + kind_display: ClassVar[str] = "AWS CloudFront S3 Origin" + kind_description: ClassVar[str] = "CloudFront S3 Origin is an Amazon Web Services (AWS) service that allows you to use an Amazon S3 bucket as the origin for your CloudFront distribution. It enables faster content delivery by caching and distributing web content from the S3 bucket to edge locations around the world." mapping: ClassVar[Dict[str, Bender]] = { "domain_name": S("DomainName"), "origin_access_identity": S("OriginAccessIdentity"), @@ -811,6 +883,8 @@ class AwsCloudFrontS3Origin: @define(eq=False, slots=False) class AwsCloudFrontStreamingDistribution(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_streaming_distribution" + kind_display: ClassVar[str] = "AWS CloudFront Streaming Distribution" + kind_description: ClassVar[str] = "CloudFront Streaming Distribution is a content delivery network (CDN) service provided by AWS that allows for fast and secure streaming of audio and video content over the internet." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-streaming-distributions", "StreamingDistributionList.Items" ) @@ -841,6 +915,8 @@ class AwsCloudFrontStreamingDistribution(CloudFrontTaggable, CloudFrontResource, @define(eq=False, slots=False) class AwsCloudFrontOriginAccessControl(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_origin_access_control" + kind_display: ClassVar[str] = "AWS CloudFront Origin Access Control" + kind_description: ClassVar[str] = "CloudFront Origin Access Control is a feature in AWS CloudFront that allows you to restrict access to your origin server by using an Amazon S3 bucket or an HTTP server as the source for your website or application files." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-origin-access-controls", "OriginAccessControlList.Items" ) @@ -871,6 +947,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontCachePolicyHeadersConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_headers_config" + kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Headers Config" + kind_description: ClassVar[str] = "The AWS CloudFront Cache Policy Headers Config allows users to configure the cache headers for content in the CloudFront CDN, determining how long content is cached and how it is delivered to end users." mapping: ClassVar[Dict[str, Bender]] = { "header_behavior": S("HeaderBehavior"), "headers": S("Headers", "Items", default=[]), @@ -882,6 +960,8 @@ class AwsCloudFrontCachePolicyHeadersConfig: @define(eq=False, slots=False) class AwsCloudFrontCachePolicyCookiesConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_cookies_config" + kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Cookies Config" + kind_description: ClassVar[str] = "The AWS CloudFront Cache Policy Cookies Config is a configuration for customizing caching behavior based on cookies when using AWS CloudFront, a global content delivery network (CDN) service." mapping: ClassVar[Dict[str, Bender]] = { "cookie_behavior": S("CookieBehavior"), "cookies": S("Cookies", default=[]), @@ -893,6 +973,8 @@ class AwsCloudFrontCachePolicyCookiesConfig: @define(eq=False, slots=False) class AwsCloudFrontCachePolicyQueryStringsConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_query_strings_config" + kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Query Strings Config" + kind_description: ClassVar[str] = "The AWS CloudFront Cache Policy Query Strings Config provides configuration settings for how CloudFront handles caching of resources based on query string parameters." mapping: ClassVar[Dict[str, Bender]] = { "query_string_behavior": S("QueryStringBehavior"), "query_strings": S("QueryStrings", "Items", default=[]), @@ -904,6 +986,8 @@ class AwsCloudFrontCachePolicyQueryStringsConfig: @define(eq=False, slots=False) class AwsCloudFrontParametersInCacheKeyAndForwardedToOrigin: kind: ClassVar[str] = "aws_cloudfront_parameters_in_cache_key_and_forwarded_to_origin" + kind_display: ClassVar[str] = "AWS CloudFront Parameters in Cache Key and Forwarded to Origin" + kind_description: ClassVar[str] = "AWS CloudFront allows users to customize the cache key and specify which parameters are forwarded to the origin server for improved caching and origin response." mapping: ClassVar[Dict[str, Bender]] = { "enable_accept_encoding_gzip": S("EnableAcceptEncodingGzip"), "enable_accept_encoding_brotli": S("EnableAcceptEncodingBrotli"), @@ -921,6 +1005,8 @@ class AwsCloudFrontParametersInCacheKeyAndForwardedToOrigin: @define(eq=False, slots=False) class AwsCloudFrontCachePolicyConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_config" + kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Configuration" + kind_description: ClassVar[str] = "CloudFront Cache Policies allow you to define caching behavior for your content. This resource represents the configuration settings for a cache policy in Amazon CloudFront." mapping: ClassVar[Dict[str, Bender]] = { "comment": S("Comment"), "name": S("Name"), @@ -943,6 +1029,8 @@ class AwsCloudFrontCachePolicyConfig: @define(eq=False, slots=False) class AwsCloudFrontCachePolicy(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_cache_policy" + kind_display: ClassVar[str] = "AWS CloudFront Cache Policy" + kind_description: ClassVar[str] = "CloudFront Cache Policies in AWS specify the caching behavior for CloudFront distributions, allowing users to control how content is cached and delivered to end users." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-cache-policies", "CachePolicyList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("CachePolicy", "Id"), @@ -966,6 +1054,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontQueryArgProfile: kind: ClassVar[str] = "aws_cloudfront_query_arg_profile" + kind_display: ClassVar[str] = "AWS CloudFront Query Argument Profile" + kind_description: ClassVar[str] = "CloudFront Query Argument Profile in AWS is a configuration that allows you to control how CloudFront caches and forwards query strings in the URLs of your content." mapping: ClassVar[Dict[str, Bender]] = {"query_arg": S("QueryArg"), "profile_id": S("ProfileId")} query_arg: Optional[str] = field(default=None) profile_id: Optional[str] = field(default=None) @@ -974,6 +1064,8 @@ class AwsCloudFrontQueryArgProfile: @define(eq=False, slots=False) class AwsCloudFrontQueryArgProfileConfig: kind: ClassVar[str] = "aws_cloudfront_query_arg_profile_config" + kind_display: ClassVar[str] = "AWS CloudFront Query Arg Profile Config" + kind_description: ClassVar[str] = "CloudFront Query Arg Profile Config is a feature in AWS CloudFront that allows you to configure personalized caching behavior for different query strings on your website." mapping: ClassVar[Dict[str, Bender]] = { "forward_when_query_arg_profile_is_unknown": S("ForwardWhenQueryArgProfileIsUnknown"), "query_arg_profiles": S("QueryArgProfiles", "Items", default=[]) @@ -986,6 +1078,8 @@ class AwsCloudFrontQueryArgProfileConfig: @define(eq=False, slots=False) class AwsCloudFrontContentTypeProfile: kind: ClassVar[str] = "aws_cloudfront_content_type_profile" + kind_display: ClassVar[str] = "AWS CloudFront Content Type Profile" + kind_description: ClassVar[str] = "AWS CloudFront Content Type Profiles help you manage the behavior of CloudFront by configuring how it handles content types for different file extensions or MIME types." mapping: ClassVar[Dict[str, Bender]] = { "format": S("Format"), "profile_id": S("ProfileId"), @@ -999,6 +1093,8 @@ class AwsCloudFrontContentTypeProfile: @define(eq=False, slots=False) class AwsCloudFrontContentTypeProfileConfig: kind: ClassVar[str] = "aws_cloudfront_content_type_profile_config" + kind_display: ClassVar[str] = "AWS CloudFront Content Type Profile Config" + kind_description: ClassVar[str] = "AWS CloudFront Content Type Profile Config is a configuration object that allows you to specify how CloudFront should interpret and act upon the Content-Type header of viewer requests for your content." mapping: ClassVar[Dict[str, Bender]] = { "forward_when_content_type_is_unknown": S("ForwardWhenContentTypeIsUnknown"), "content_type_profiles": S("ContentTypeProfiles", "Items", default=[]) @@ -1011,6 +1107,8 @@ class AwsCloudFrontContentTypeProfileConfig: @define(eq=False, slots=False) class AwsCloudFrontFieldLevelEncryptionConfig(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_field_level_encryption_config" + kind_display: ClassVar[str] = "AWS CloudFront Field-Level Encryption Configuration" + kind_description: ClassVar[str] = "AWS CloudFront Field-Level Encryption Configuration is a feature that allows you to encrypt selected fields in HTTP requests and responses before they are sent and after they are received by CloudFront." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-field-level-encryption-configs", "FieldLevelEncryptionList.Items" ) @@ -1060,6 +1158,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudFrontEncryptionEntity: kind: ClassVar[str] = "aws_cloudfront_encryption_entity" + kind_display: ClassVar[str] = "AWS CloudFront Encryption Entity" + kind_description: ClassVar[str] = "CloudFront Encryption Entities represent the security configuration for content delivery, ensuring secure and encrypted data transfer between the user and the CloudFront edge servers." mapping: ClassVar[Dict[str, Bender]] = { "public_key_id": S("PublicKeyId"), "provider_id": S("ProviderId"), @@ -1073,6 +1173,8 @@ class AwsCloudFrontEncryptionEntity: @define(eq=False, slots=False) class AwsCloudFrontFieldLevelEncryptionProfile(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_field_level_encryption_profile" + kind_display: ClassVar[str] = "AWS CloudFront Field Level Encryption Profile" + kind_description: ClassVar[str] = "Field Level Encryption Profiles in AWS CloudFront allow users to encrypt specific fields in a web form, providing an extra layer of security to sensitive data." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-field-level-encryption-profiles", "FieldLevelEncryptionProfileList.Items" ) diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py b/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py index f49546e815..e1d67dd431 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py @@ -22,6 +22,8 @@ @define(eq=False, slots=False) class AwsCloudTrailAdvancedFieldSelector: kind: ClassVar[str] = "aws_cloud_trail_advanced_field_selector" + kind_display: ClassVar[str] = "AWS CloudTrail Advanced Field Selector" + kind_description: ClassVar[str] = "AWS CloudTrail Advanced Field Selector provides fine-grained control over the fields returned in CloudTrail log events, allowing users to filter and retrieve specific data of interest." mapping: ClassVar[Dict[str, Bender]] = { "field": S("Field"), "equals": S("Equals"), @@ -42,6 +44,8 @@ class AwsCloudTrailAdvancedFieldSelector: @define(eq=False, slots=False) class AwsCloudTrailEventSelector: kind: ClassVar[str] = "aws_cloud_trail_event_selector" + kind_display: ClassVar[str] = "AWS CloudTrail Event Selector" + kind_description: ClassVar[str] = "CloudTrail Event Selector is a feature in AWS CloudTrail that allows you to choose which events to record and store in your Amazon S3 bucket for auditing and compliance purposes." mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "field_selectors": S("FieldSelectors", default=[]) @@ -55,6 +59,8 @@ class AwsCloudTrailEventSelector: @define(eq=False, slots=False) class AwsCloudTrailStatus: kind: ClassVar[str] = "aws_cloud_trail_status" + kind_display: ClassVar[str] = "AWS CloudTrail Status" + kind_description: ClassVar[str] = "CloudTrail is a service that enables governance, compliance, operational auditing, and risk auditing of your AWS account. CloudTrail provides event history of your AWS account activity, including actions taken through the AWS Management Console, AWS SDKs, command line tools, and other AWS services." mapping: ClassVar[Dict[str, Bender]] = { "is_logging": S("IsLogging"), "latest_delivery_error": S("LatestDeliveryError"), @@ -96,6 +102,8 @@ class AwsCloudTrailStatus: @define(eq=False, slots=False) class AwsCloudTrail(AwsResource): kind: ClassVar[str] = "aws_cloud_trail" + kind_display: ClassVar[str] = "AWS CloudTrail" + kind_description: ClassVar[str] = "CloudTrail is a service that enables governance, compliance, operational auditing, and risk auditing of your AWS account." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-trails", "Trails") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cognito.py b/plugins/aws/resoto_plugin_aws/resource/cognito.py index c4c7511a01..2aeff800db 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cognito.py +++ b/plugins/aws/resoto_plugin_aws/resource/cognito.py @@ -17,6 +17,8 @@ class AwsCognitoGroup(AwsResource): # collection of group resources happens in AwsCognitoUserPool.collect() kind: ClassVar[str] = "aws_cognito_group" + kind_display: ClassVar[str] = "AWS Cognito Group" + kind_description: ClassVar[str] = "Cognito Groups are a way to manage and organize users in AWS Cognito, a fully managed service for user authentication, registration, and access control." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_iam_role"]} } @@ -57,6 +59,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsCognitoAttributeType: kind: ClassVar[str] = "aws_cognito_attribute_type" + kind_display: ClassVar[str] = "AWS Cognito Attribute Type" + kind_description: ClassVar[str] = "Cognito Attribute Type is used in AWS Cognito to define the type of user attribute, such as string, number, or boolean." mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "value": S("Value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -65,6 +69,8 @@ class AwsCognitoAttributeType: @define(eq=False, slots=False) class AwsCognitoMFAOptionType: kind: ClassVar[str] = "aws_cognito_mfa_option_type" + kind_display: ClassVar[str] = "AWS Cognito MFA Option Type" + kind_description: ClassVar[str] = "MFA Option Type is a setting in AWS Cognito that allows users to enable or disable Multi-Factor Authentication (MFA) for their accounts." mapping: ClassVar[Dict[str, Bender]] = { "delivery_medium": S("DeliveryMedium"), "attribute_name": S("AttributeName"), @@ -77,6 +83,8 @@ class AwsCognitoMFAOptionType: class AwsCognitoUser(AwsResource, BaseUser): # collection of user resources happens in AwsCognitoUserPool.collect() kind: ClassVar[str] = "aws_cognito_user" + kind_display: ClassVar[str] = "AWS Cognito User" + kind_description: ClassVar[str] = "AWS Cognito User represents a user account in the AWS Cognito service, which provides secure user authentication and authorization for web and mobile applications." mapping: ClassVar[Dict[str, Bender]] = { "id": S("Username"), "name": S("Username"), @@ -100,6 +108,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsCognitoCustomSMSLambdaVersionConfigType: kind: ClassVar[str] = "aws_cognito_custom_sms_lambda_version_config_type" + kind_display: ClassVar[str] = "AWS Cognito Custom SMS Lambda Version Config Type" + kind_description: ClassVar[str] = "AWS Cognito Custom SMS Lambda Version Config Type defines the configuration for a custom SMS Lambda version in AWS Cognito, allowing users to customize the behavior of SMS messages sent during user authentication." mapping: ClassVar[Dict[str, Bender]] = {"lambda_version": S("LambdaVersion"), "lambda_arn": S("LambdaArn")} lambda_version: Optional[str] = field(default=None) lambda_arn: Optional[str] = field(default=None) @@ -108,6 +118,8 @@ class AwsCognitoCustomSMSLambdaVersionConfigType: @define(eq=False, slots=False) class AwsCognitoCustomEmailLambdaVersionConfigType: kind: ClassVar[str] = "aws_cognito_custom_email_lambda_version_config_type" + kind_display: ClassVar[str] = "AWS Cognito Custom Email Lambda Version Config Type" + kind_description: ClassVar[str] = "This resource represents the configuration type for a custom email lambda version in AWS Cognito. It allows you to customize the email delivery process for user verification and notification emails in Cognito." mapping: ClassVar[Dict[str, Bender]] = {"lambda_version": S("LambdaVersion"), "lambda_arn": S("LambdaArn")} lambda_version: Optional[str] = field(default=None) lambda_arn: Optional[str] = field(default=None) @@ -116,6 +128,8 @@ class AwsCognitoCustomEmailLambdaVersionConfigType: @define(eq=False, slots=False) class AwsCognitoLambdaConfigType: kind: ClassVar[str] = "aws_cognito_lambda_config_type" + kind_display: ClassVar[str] = "AWS Cognito Lambda Config Type" + kind_description: ClassVar[str] = "The AWS Cognito Lambda Config Type refers to the configuration for Lambda functions used with AWS Cognito, which allows developers to customize user sign-in and sign-up experiences in their applications." mapping: ClassVar[Dict[str, Bender]] = { "pre_sign_up": S("PreSignUp"), "custom_message": S("CustomMessage"), @@ -149,6 +163,8 @@ class AwsCognitoLambdaConfigType: @define(eq=False, slots=False) class AwsCognitoUserPool(AwsResource): kind: ClassVar[str] = "aws_cognito_user_pool" + kind_display: ClassVar[str] = "AWS Cognito User Pool" + kind_description: ClassVar[str] = "An AWS Cognito User Pool is a managed user directory that enables user registration, authentication, and access control for your web and mobile apps." # this call requires the MaxResult parameter, 60 is the maximum valid input api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-user-pools", "UserPools", {"MaxResults": 60}) reference_kinds: ClassVar[ModelReference] = { diff --git a/plugins/aws/resoto_plugin_aws/resource/config.py b/plugins/aws/resoto_plugin_aws/resource/config.py index 556af4eba5..ee3353b319 100644 --- a/plugins/aws/resoto_plugin_aws/resource/config.py +++ b/plugins/aws/resoto_plugin_aws/resource/config.py @@ -17,6 +17,8 @@ @define(eq=False, slots=False) class AwsConfigRecorderStatus: kind: ClassVar[str] = "aws_config_recorder_status" + kind_display: ClassVar[str] = "AWS Config Recorder Status" + kind_description: ClassVar[str] = "AWS Config Recorder Status is a service that records configuration changes made to AWS resources and evaluates the recorded configurations for rule compliance." mapping: ClassVar[Dict[str, Bender]] = { "last_start_time": S("lastStartTime"), "last_stop_time": S("lastStopTime"), @@ -38,6 +40,8 @@ class AwsConfigRecorderStatus: @define(eq=False, slots=False) class AwsConfigRecordingGroup: kind: ClassVar[str] = "aws_config_recording_group" + kind_display: ClassVar[str] = "AWS Config Recording Group" + kind_description: ClassVar[str] = "AWS Config Recording Group is a feature of AWS Config that allows users to specify the types of AWS resources to be recorded and the details to include in the recorded configurations." mapping: ClassVar[Dict[str, Bender]] = { "all_supported": S("allSupported"), "include_global_resource_types": S("includeGlobalResourceTypes"), @@ -51,6 +55,8 @@ class AwsConfigRecordingGroup: @define(eq=False, slots=False) class AwsConfigRecorder(AwsResource): kind: ClassVar[str] = "aws_config_recorder" + kind_display: ClassVar[str] = "AWS Config Recorder" + kind_description: ClassVar[str] = "AWS Config Recorder is a service provided by Amazon Web Services that continuously records the configuration changes made to resources in an AWS account." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-configuration-recorders", "ConfigurationRecorders" ) diff --git a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py index 111e640058..b47a659224 100644 --- a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py +++ b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py @@ -48,6 +48,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsDynamoDbAttributeDefinition: kind: ClassVar[str] = "aws_dynamo_db_attribute_definition" + kind_display: ClassVar[str] = "AWS DynamoDB Attribute Definition" + kind_description: ClassVar[str] = "An attribute definition in AWS DynamoDB describes the data type and name of an attribute for a table." mapping: ClassVar[Dict[str, Bender]] = {"attribute_name": S("AttributeName"), "attribute_type": S("AttributeType")} attribute_name: Optional[str] = field(default=None) attribute_type: Optional[str] = field(default=None) @@ -56,6 +58,8 @@ class AwsDynamoDbAttributeDefinition: @define(eq=False, slots=False) class AwsDynamoDbKeySchemaElement: kind: ClassVar[str] = "aws_dynamo_db_key_schema_element" + kind_display: ClassVar[str] = "AWS DynamoDB Key Schema Element" + kind_description: ClassVar[str] = "DynamoDB Key Schema Element represents the key attributes used to uniquely identify an item in a DynamoDB table." mapping: ClassVar[Dict[str, Bender]] = {"attribute_name": S("AttributeName"), "key_type": S("KeyType")} attribute_name: Optional[str] = field(default=None) key_type: Optional[str] = field(default=None) @@ -64,6 +68,8 @@ class AwsDynamoDbKeySchemaElement: @define(eq=False, slots=False) class AwsDynamoDbProvisionedThroughputDescription: kind: ClassVar[str] = "aws_dynamo_db_provisioned_throughput_description" + kind_display: ClassVar[str] = "AWS DynamoDB Provisioned Throughput Description" + kind_description: ClassVar[str] = "DynamoDB Provisioned Throughput is the measurement of the capacity provisioned to handle request traffic for a DynamoDB table. It determines the read and write capacity units available for the table." mapping: ClassVar[Dict[str, Bender]] = { "last_increase_date_time": S("LastIncreaseDateTime"), "last_decrease_date_time": S("LastDecreaseDateTime"), @@ -81,6 +87,8 @@ class AwsDynamoDbProvisionedThroughputDescription: @define(eq=False, slots=False) class AwsDynamoDbBillingModeSummary: kind: ClassVar[str] = "aws_dynamo_db_billing_mode_summary" + kind_display: ClassVar[str] = "AWS DynamoDB Billing Mode Summary" + kind_description: ClassVar[str] = "DynamoDB Billing Mode Summary provides information about the billing mode configured for DynamoDB tables in AWS. DynamoDB is a NoSQL database service provided by Amazon." mapping: ClassVar[Dict[str, Bender]] = { "billing_mode": S("BillingMode"), "last_update_to_pay_per_request_date_time": S("LastUpdateToPayPerRequestDateTime"), @@ -92,6 +100,8 @@ class AwsDynamoDbBillingModeSummary: @define(eq=False, slots=False) class AwsDynamoDbProjection: kind: ClassVar[str] = "aws_dynamo_db_projection" + kind_display: ClassVar[str] = "AWS DynamoDB Projection" + kind_description: ClassVar[str] = "DynamoDB Projections allow you to specify which attributes should be included in the index of a table for efficient querying." mapping: ClassVar[Dict[str, Bender]] = { "projection_type": S("ProjectionType"), "non_key_attributes": S("NonKeyAttributes", default=[]), @@ -103,6 +113,8 @@ class AwsDynamoDbProjection: @define(eq=False, slots=False) class AwsDynamoDbLocalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_local_secondary_index_description" + kind_display: ClassVar[str] = "AWS DynamoDB Local Secondary Index Description" + kind_description: ClassVar[str] = "DynamoDB Local Secondary Indexes provide additional querying flexibility on non-key attributes in DynamoDB tables, enhancing the performance and efficiency of data retrieval in Amazon's NoSQL database service." mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), "key_schema": S("KeySchema", default=[]) >> ForallBend(AwsDynamoDbKeySchemaElement.mapping), @@ -122,6 +134,8 @@ class AwsDynamoDbLocalSecondaryIndexDescription: @define(eq=False, slots=False) class AwsDynamoDbGlobalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_global_secondary_index_description" + kind_display: ClassVar[str] = "AWS DynamoDB Global Secondary Index Description" + kind_description: ClassVar[str] = "A Global Secondary Index (GSI) in DynamoDB is an additional index that you can create on your table to support fast and efficient data access patterns." mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), "key_schema": S("KeySchema", default=[]) >> ForallBend(AwsDynamoDbKeySchemaElement.mapping), @@ -148,6 +162,8 @@ class AwsDynamoDbGlobalSecondaryIndexDescription: @define(eq=False, slots=False) class AwsDynamoDbStreamSpecification: kind: ClassVar[str] = "aws_dynamo_db_stream_specification" + kind_display: ClassVar[str] = "AWS DynamoDB Stream Specification" + kind_description: ClassVar[str] = "DynamoDB Streams provide a time-ordered sequence of item-level modifications made to data in a DynamoDB table." mapping: ClassVar[Dict[str, Bender]] = { "stream_enabled": S("StreamEnabled"), "stream_view_type": S("StreamViewType"), @@ -159,6 +175,8 @@ class AwsDynamoDbStreamSpecification: @define(eq=False, slots=False) class AwsDynamoDbReplicaGlobalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_replica_global_secondary_index_description" + kind_display: ClassVar[str] = "AWS DynamoDB Replica Global Secondary Index Description" + kind_description: ClassVar[str] = "DynamoDB Replica Global Secondary Index is a replicated index in DynamoDB that allows you to perform fast and efficient queries on replicated data across multiple AWS Regions." mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), "provisioned_throughput_override": S("ProvisionedThroughputOverride", "ReadCapacityUnits"), @@ -170,6 +188,8 @@ class AwsDynamoDbReplicaGlobalSecondaryIndexDescription: @define(eq=False, slots=False) class AwsDynamoDbTableClassSummary: kind: ClassVar[str] = "aws_dynamo_db_table_class_summary" + kind_display: ClassVar[str] = "AWS DynamoDB Table Class Summary" + kind_description: ClassVar[str] = "DynamoDB Table Class Summary provides information about the classes of tables in Amazon DynamoDB, a fully managed NoSQL database service provided by AWS. It enables users to store and retrieve any amount of data with high availability and durability." mapping: ClassVar[Dict[str, Bender]] = { "table_class": S("TableClass"), "last_update_date_time": S("LastUpdateDateTime"), @@ -181,6 +201,8 @@ class AwsDynamoDbTableClassSummary: @define(eq=False, slots=False) class AwsDynamoDbReplicaDescription: kind: ClassVar[str] = "aws_dynamo_db_replica_description" + kind_display: ClassVar[str] = "AWS DynamoDB Replica Description" + kind_description: ClassVar[str] = "DynamoDB Replica Description provides detailed information about the replica configuration and status of an Amazon DynamoDB table in the AWS cloud." mapping: ClassVar[Dict[str, Bender]] = { "region_name": S("RegionName"), "replica_status": S("ReplicaStatus"), @@ -207,6 +229,8 @@ class AwsDynamoDbReplicaDescription: @define(eq=False, slots=False) class AwsDynamoDbRestoreSummary: kind: ClassVar[str] = "aws_dynamo_db_restore_summary" + kind_display: ClassVar[str] = "AWS DynamoDB Restore Summary" + kind_description: ClassVar[str] = "DynamoDB Restore Summary provides an overview of the restore process for Amazon DynamoDB backups, including information on restore progress, completion time, and any errors encountered during the restore." mapping: ClassVar[Dict[str, Bender]] = { "source_backup_arn": S("SourceBackupArn"), "source_table_arn": S("SourceTableArn"), @@ -222,6 +246,8 @@ class AwsDynamoDbRestoreSummary: @define(eq=False, slots=False) class AwsDynamoDbSSEDescription: kind: ClassVar[str] = "aws_dynamo_db_sse_description" + kind_display: ClassVar[str] = "AWS DynamoDB SSE Description" + kind_description: ClassVar[str] = "DynamoDB SSE (Server-Side Encryption) provides automatic encryption at rest for DynamoDB tables, ensuring data security and compliance with privacy regulations." mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "sse_type": S("SSEType"), @@ -237,6 +263,8 @@ class AwsDynamoDbSSEDescription: @define(eq=False, slots=False) class AwsDynamoDbArchivalSummary: kind: ClassVar[str] = "aws_dynamo_db_archival_summary" + kind_display: ClassVar[str] = "AWS DynamoDB Archival Summary" + kind_description: ClassVar[str] = "DynamoDB Archival Summary provides information about the archival status and details for DynamoDB tables in Amazon's cloud. Archival allows you to automatically store older data in a cost-effective manner while keeping active data readily available." mapping: ClassVar[Dict[str, Bender]] = { "archival_date_time": S("ArchivalDateTime"), "archival_reason": S("ArchivalReason"), @@ -250,6 +278,8 @@ class AwsDynamoDbArchivalSummary: @define(eq=False, slots=False) class AwsDynamoDbTable(DynamoDbTaggable, AwsResource): kind: ClassVar[str] = "aws_dynamo_db_table" + kind_display: ClassVar[str] = "AWS DynamoDB Table" + kind_description: ClassVar[str] = "DynamoDB is a NoSQL database service provided by Amazon Web Services, allowing users to store and retrieve data using flexible schema and high-performance queries." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-tables", "TableNames") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_kinesis_stream", "aws_kms_key"]}, @@ -362,6 +392,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsDynamoDbGlobalTable(DynamoDbTaggable, AwsResource): kind: ClassVar[str] = "aws_dynamo_db_global_table" + kind_display: ClassVar[str] = "AWS DynamoDB Global Table" + kind_description: ClassVar[str] = "AWS DynamoDB Global Tables provide fully managed, multi-region, and globally distributed replicas of DynamoDB tables, enabling low-latency and high-performance global access to data." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-global-tables", "GlobalTables") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_kms_key"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/ec2.py b/plugins/aws/resoto_plugin_aws/resource/ec2.py index 0e75b09044..de0587a8e2 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ec2.py +++ b/plugins/aws/resoto_plugin_aws/resource/ec2.py @@ -81,6 +81,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2ProcessorInfo: kind: ClassVar[str] = "aws_ec2_processor_info" + kind_display: ClassVar[str] = "AWS EC2 Processor Info" + kind_description: ClassVar[str] = "EC2 Processor Info provides detailed information about the processors used in Amazon EC2 instances, such as the model, clock speed, and number of cores." mapping: ClassVar[Dict[str, Bender]] = { "supported_architectures": S("SupportedArchitectures", default=[]), "sustained_clock_speed_in_ghz": S("SustainedClockSpeedInGhz"), @@ -93,6 +95,8 @@ class AwsEc2ProcessorInfo: @define(eq=False, slots=False) class AwsEc2VCpuInfo: kind: ClassVar[str] = "aws_ec2_v_cpu_info" + kind_display: ClassVar[str] = "AWS EC2 vCPU Info" + kind_description: ClassVar[str] = "EC2 vCPU Info provides detailed information about the virtual CPU capabilities of Amazon EC2 instances." mapping: ClassVar[Dict[str, Bender]] = { "default_v_cpus": S("DefaultVCpus"), "default_cores": S("DefaultCores"), @@ -110,6 +114,8 @@ class AwsEc2VCpuInfo: @define(eq=False, slots=False) class AwsEc2DiskInfo: kind: ClassVar[str] = "aws_ec2_disk_info" + kind_display: ClassVar[str] = "AWS EC2 Disk Info" + kind_description: ClassVar[str] = "EC2 Disk Info refers to the information about the disk storage associated with an EC2 instance in Amazon Web Services. It provides details such as disk size, type, and usage statistics." mapping: ClassVar[Dict[str, Bender]] = {"size_in_gb": S("SizeInGB"), "count": S("Count"), "type": S("Type")} size_in_gb: Optional[int] = field(default=None) count: Optional[int] = field(default=None) @@ -119,6 +125,8 @@ class AwsEc2DiskInfo: @define(eq=False, slots=False) class AwsEc2InstanceStorageInfo: kind: ClassVar[str] = "aws_ec2_instance_storage_info" + kind_display: ClassVar[str] = "AWS EC2 Instance Storage Info" + kind_description: ClassVar[str] = "EC2 Instance Storage Info provides information about the storage configuration and details of an EC2 instance in Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "total_size_in_gb": S("TotalSizeInGB"), "disks": S("Disks", default=[]) >> ForallBend(AwsEc2DiskInfo.mapping), @@ -134,6 +142,8 @@ class AwsEc2InstanceStorageInfo: @define(eq=False, slots=False) class AwsEc2EbsOptimizedInfo: kind: ClassVar[str] = "aws_ec2_ebs_optimized_info" + kind_display: ClassVar[str] = "AWS EC2 EBS Optimized Info" + kind_description: ClassVar[str] = "EBS optimization is an Amazon EC2 feature that enables EC2 instances to fully utilize the IOPS provisioned on an EBS volume." mapping: ClassVar[Dict[str, Bender]] = { "baseline_bandwidth_in_mbps": S("BaselineBandwidthInMbps"), "baseline_throughput_in_mbps": S("BaselineThroughputInMBps"), @@ -153,6 +163,8 @@ class AwsEc2EbsOptimizedInfo: @define(eq=False, slots=False) class AwsEc2EbsInfo: kind: ClassVar[str] = "aws_ec2_ebs_info" + kind_display: ClassVar[str] = "AWS EC2 EBS Info" + kind_description: ClassVar[str] = "EBS (Elastic Block Store) is a block storage service provided by AWS. It provides persistent storage volumes that can be attached to EC2 instances." mapping: ClassVar[Dict[str, Bender]] = { "ebs_optimized_support": S("EbsOptimizedSupport"), "encryption_support": S("EncryptionSupport"), @@ -168,6 +180,8 @@ class AwsEc2EbsInfo: @define(eq=False, slots=False) class AwsEc2NetworkCardInfo: kind: ClassVar[str] = "aws_ec2_network_card_info" + kind_display: ClassVar[str] = "AWS EC2 Network Card Info" + kind_description: ClassVar[str] = "AWS EC2 Network Card Info refers to the information related to the network cards associated with EC2 instances in Amazon Web Services. It includes details such as the network card ID, description, and network interface attachments." mapping: ClassVar[Dict[str, Bender]] = { "network_card_index": S("NetworkCardIndex"), "network_performance": S("NetworkPerformance"), @@ -181,6 +195,8 @@ class AwsEc2NetworkCardInfo: @define(eq=False, slots=False) class AwsEc2NetworkInfo: kind: ClassVar[str] = "aws_ec2_network_info" + kind_display: ClassVar[str] = "AWS EC2 Network Info" + kind_description: ClassVar[str] = "EC2 Network Info provides information about the networking details of EC2 instances in Amazon's cloud." mapping: ClassVar[Dict[str, Bender]] = { "network_performance": S("NetworkPerformance"), "maximum_network_interfaces": S("MaximumNetworkInterfaces"), @@ -212,6 +228,8 @@ class AwsEc2NetworkInfo: @define(eq=False, slots=False) class AwsEc2GpuDeviceInfo: kind: ClassVar[str] = "aws_ec2_gpu_device_info" + kind_display: ClassVar[str] = "AWS EC2 GPU Device Info" + kind_description: ClassVar[str] = "EC2 GPU Device Info provides information about the GPU devices available in the Amazon EC2 instances. It includes details such as GPU model, memory size, and utilization. This information is useful for optimizing performance and managing GPU resources in EC2 instances." mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "manufacturer": S("Manufacturer"), @@ -227,6 +245,8 @@ class AwsEc2GpuDeviceInfo: @define(eq=False, slots=False) class AwsEc2GpuInfo: kind: ClassVar[str] = "aws_ec2_gpu_info" + kind_display: ClassVar[str] = "AWS EC2 GPU Info" + kind_description: ClassVar[str] = "EC2 GPU Info provides detailed information about the Graphics Processing Units (GPUs) available in Amazon EC2 instances. This includes information about the GPU type, memory, and performance capabilities." mapping: ClassVar[Dict[str, Bender]] = { "gpus": S("Gpus", default=[]) >> ForallBend(AwsEc2GpuDeviceInfo.mapping), "total_gpu_memory_in_mi_b": S("TotalGpuMemoryInMiB"), @@ -239,6 +259,8 @@ class AwsEc2GpuInfo: @define(eq=False, slots=False) class AwsEc2FpgaDeviceInfo: kind: ClassVar[str] = "aws_ec2_fpga_device_info" + kind_display: ClassVar[str] = "AWS EC2 FPGA Device Info" + kind_description: ClassVar[str] = "Provides information about FPGA devices available in EC2 instances. FPGA devices in EC2 instances provide customizable and programmable hardware acceleration for various workloads." mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "manufacturer": S("Manufacturer"), @@ -254,6 +276,8 @@ class AwsEc2FpgaDeviceInfo: @define(eq=False, slots=False) class AwsEc2FpgaInfo: kind: ClassVar[str] = "aws_ec2_fpga_info" + kind_display: ClassVar[str] = "AWS EC2 FPGA Info" + kind_description: ClassVar[str] = "FPGAs (Field-Programmable Gate Arrays) in AWS EC2 provide hardware acceleration capabilities for your applications, enabling you to optimize performance and efficiency for specific workloads." mapping: ClassVar[Dict[str, Bender]] = { "fpgas": S("Fpgas", default=[]) >> ForallBend(AwsEc2FpgaDeviceInfo.mapping), "total_fpga_memory_in_mi_b": S("TotalFpgaMemoryInMiB"), @@ -265,6 +289,8 @@ class AwsEc2FpgaInfo: @define(eq=False, slots=False) class AwsEc2PlacementGroupInfo: kind: ClassVar[str] = "aws_ec2_placement_group_info" + kind_display: ClassVar[str] = "AWS EC2 Placement Group Info" + kind_description: ClassVar[str] = "EC2 Placement Groups are logical groupings of instances within a single Availability Zone that enables applications to take advantage of low-latency network connections between instances." mapping: ClassVar[Dict[str, Bender]] = {"supported_strategies": S("SupportedStrategies", default=[])} supported_strategies: List[str] = field(factory=list) @@ -272,6 +298,8 @@ class AwsEc2PlacementGroupInfo: @define(eq=False, slots=False) class AwsEc2InferenceDeviceInfo: kind: ClassVar[str] = "aws_ec2_inference_device_info" + kind_display: ClassVar[str] = "AWS EC2 Inference Device Info" + kind_description: ClassVar[str] = "EC2 Inference Device Info provides information about the inference devices available for EC2 instances. Inference devices are specialized hardware accelerators that can be used to optimize the performance of machine learning or deep learning workloads on EC2 instances." mapping: ClassVar[Dict[str, Bender]] = {"count": S("Count"), "name": S("Name"), "manufacturer": S("Manufacturer")} count: Optional[int] = field(default=None) name: Optional[str] = field(default=None) @@ -281,6 +309,8 @@ class AwsEc2InferenceDeviceInfo: @define(eq=False, slots=False) class AwsEc2InferenceAcceleratorInfo: kind: ClassVar[str] = "aws_ec2_inference_accelerator_info" + kind_display: ClassVar[str] = "AWS EC2 Inference Accelerator Info" + kind_description: ClassVar[str] = "EC2 Inference Accelerator Info provides information about acceleration options available for Amazon EC2 instances, allowing users to enhance performance of their machine learning inference workloads." mapping: ClassVar[Dict[str, Bender]] = { "accelerators": S("Accelerators", default=[]) >> ForallBend(AwsEc2InferenceDeviceInfo.mapping) } @@ -290,6 +320,8 @@ class AwsEc2InferenceAcceleratorInfo: @define(eq=False, slots=False) class AwsEc2InstanceType(AwsResource, BaseInstanceType): kind: ClassVar[str] = "aws_ec2_instance_type" + kind_display: ClassVar[str] = "AWS EC2 Instance Type" + kind_description: ClassVar[str] = "The type of EC2 instance determines the hardware of the host computer used for the instance and the number of virtual CPUs, amount of memory, and storage capacity provided." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-instance-types", "InstanceTypes") reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -375,6 +407,8 @@ def collect(cls: Type[AwsResource], json: List[Json], builder: GraphBuilder) -> @define(eq=False, slots=False) class AwsEc2VolumeAttachment: kind: ClassVar[str] = "aws_ec2_volume_attachment" + kind_display: ClassVar[str] = "AWS EC2 Volume Attachment" + kind_description: ClassVar[str] = "AWS EC2 Volume Attachment is a resource that represents the attachment of an Amazon Elastic Block Store (EBS) volume to an EC2 instance." mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "device": S("Device"), @@ -404,6 +438,8 @@ class AwsEc2VolumeAttachment: @define(eq=False, slots=False) class AwsEc2Volume(EC2Taggable, AwsResource, BaseVolume): kind: ClassVar[str] = "aws_ec2_volume" + kind_display: ClassVar[str] = "AWS EC2 Volume" + kind_description: ClassVar[str] = "EC2 Volumes are block-level storage devices that can be attached to EC2 instances in Amazon's cloud, providing additional storage for applications and data." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-volumes", "Volumes") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_ec2_volume_type", "aws_ec2_instance"], "delete": ["aws_kms_key"]}, @@ -602,6 +638,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2Snapshot(EC2Taggable, AwsResource, BaseSnapshot): kind: ClassVar[str] = "aws_ec2_snapshot" + kind_display: ClassVar[str] = "AWS EC2 Snapshot" + kind_description: ClassVar[str] = "EC2 Snapshots are incremental backups of Amazon Elastic Block Store (EBS) volumes, allowing users to capture and store point-in-time copies of their data." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-snapshots", "Snapshots", dict(OwnerIds=["self"]) ) @@ -665,6 +703,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2KeyPair(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_keypair" + kind_display: ClassVar[str] = "AWS EC2 Keypair" + kind_description: ClassVar[str] = "EC2 Keypairs are SSH key pairs used to securely connect to EC2 instances in Amazon's cloud." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-key-pairs", "KeyPairs") reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -707,6 +747,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2Placement: kind: ClassVar[str] = "aws_ec2_placement" + kind_display: ClassVar[str] = "AWS EC2 Placement" + kind_description: ClassVar[str] = "EC2 Placement refers to the process of selecting a suitable physical host within an AWS Availability Zone to run an EC2 instance. It helps optimize performance, availability, and cost by considering factors such as instance type, size, and availability of resources on the host." mapping: ClassVar[Dict[str, Bender]] = { "availability_zone": S("AvailabilityZone"), "affinity": S("Affinity"), @@ -730,6 +772,8 @@ class AwsEc2Placement: @define(eq=False, slots=False) class AwsEc2ProductCode: kind: ClassVar[str] = "aws_ec2_product_code" + kind_display: ClassVar[str] = "AWS EC2 Product Code" + kind_description: ClassVar[str] = "An EC2 Product Code is a unique identifier assigned to an Amazon Machine Image (AMI) to facilitate tracking and licensing of software packages included in the image." mapping: ClassVar[Dict[str, Bender]] = { "product_code_id": S("ProductCodeId"), "product_code_type": S("ProductCodeType"), @@ -741,6 +785,8 @@ class AwsEc2ProductCode: @define(eq=False, slots=False) class AwsEc2InstanceState: kind: ClassVar[str] = "aws_ec2_instance_state" + kind_display: ClassVar[str] = "AWS EC2 Instance State" + kind_description: ClassVar[str] = "AWS EC2 Instance State represents the current state of an EC2 instance in Amazon's cloud, such as running, stopped, terminated, or pending." mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "name": S("Name")} code: Optional[int] = field(default=None) name: Optional[str] = field(default=None) @@ -749,6 +795,8 @@ class AwsEc2InstanceState: @define(eq=False, slots=False) class AwsEc2EbsInstanceBlockDevice: kind: ClassVar[str] = "aws_ec2_ebs_instance_block_device" + kind_display: ClassVar[str] = "AWS EC2 EBS Instance Block Device" + kind_description: ClassVar[str] = "EC2 EBS Instance Block Device is a storage volume attached to an Amazon EC2 instance for persistent data storage." mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "delete_on_termination": S("DeleteOnTermination"), @@ -764,6 +812,8 @@ class AwsEc2EbsInstanceBlockDevice: @define(eq=False, slots=False) class AwsEc2InstanceBlockDeviceMapping: kind: ClassVar[str] = "aws_ec2_instance_block_device_mapping" + kind_display: ClassVar[str] = "AWS EC2 Instance Block Device Mapping" + kind_description: ClassVar[str] = "Block device mapping is a feature in Amazon EC2 that allows users to specify the block devices to attach to an EC2 instance at launch time." mapping: ClassVar[Dict[str, Bender]] = { "device_name": S("DeviceName"), "ebs": S("Ebs") >> Bend(AwsEc2EbsInstanceBlockDevice.mapping), @@ -775,6 +825,8 @@ class AwsEc2InstanceBlockDeviceMapping: @define(eq=False, slots=False) class AwsEc2IamInstanceProfile: kind: ClassVar[str] = "aws_ec2_iam_instance_profile" + kind_display: ClassVar[str] = "AWS EC2 IAM Instance Profile" + kind_description: ClassVar[str] = "IAM Instance Profiles are used to associate IAM roles with EC2 instances, allowing applications running on the instances to securely access other AWS services." mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "id": S("Id")} arn: Optional[str] = field(default=None) id: Optional[str] = field(default=None) @@ -783,6 +835,8 @@ class AwsEc2IamInstanceProfile: @define(eq=False, slots=False) class AwsEc2ElasticGpuAssociation: kind: ClassVar[str] = "aws_ec2_elastic_gpu_association" + kind_display: ClassVar[str] = "AWS EC2 Elastic GPU Association" + kind_description: ClassVar[str] = "Elastic GPU Association is a feature in AWS EC2 that allows attaching an Elastic GPU to an EC2 instance, providing additional GPU resources for graphics-intensive applications." mapping: ClassVar[Dict[str, Bender]] = { "elastic_gpu_id": S("ElasticGpuId"), "elastic_gpu_association_id": S("ElasticGpuAssociationId"), @@ -798,6 +852,8 @@ class AwsEc2ElasticGpuAssociation: @define(eq=False, slots=False) class AwsEc2ElasticInferenceAcceleratorAssociation: kind: ClassVar[str] = "aws_ec2_elastic_inference_accelerator_association" + kind_display: ClassVar[str] = "AWS EC2 Elastic Inference Accelerator Association" + kind_description: ClassVar[str] = "Elastic Inference Accelerator Association allows users to attach elastic inference accelerators to EC2 instances in order to accelerate their machine learning inference workloads." mapping: ClassVar[Dict[str, Bender]] = { "elastic_inference_accelerator_arn": S("ElasticInferenceAcceleratorArn"), "elastic_inference_accelerator_association_id": S("ElasticInferenceAcceleratorAssociationId"), @@ -813,6 +869,8 @@ class AwsEc2ElasticInferenceAcceleratorAssociation: @define(eq=False, slots=False) class AwsEc2InstanceNetworkInterfaceAssociation: kind: ClassVar[str] = "aws_ec2_instance_network_interface_association" + kind_display: ClassVar[str] = "AWS EC2 Instance Network Interface Association" + kind_description: ClassVar[str] = "A network interface association for an EC2 instance in Amazon's cloud, which helps manage the connection between the instance and its associated network interface." mapping: ClassVar[Dict[str, Bender]] = { "carrier_ip": S("CarrierIp"), "customer_owned_ip": S("CustomerOwnedIp"), @@ -830,6 +888,8 @@ class AwsEc2InstanceNetworkInterfaceAssociation: @define(eq=False, slots=False) class AwsEc2InstanceNetworkInterfaceAttachment: kind: ClassVar[str] = "aws_ec2_instance_network_interface_attachment" + kind_display: ClassVar[str] = "AWS EC2 Instance Network Interface Attachment" + kind_description: ClassVar[str] = "An attachment of a network interface to an EC2 instance in the Amazon Web Services cloud." mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "attachment_id": S("AttachmentId"), @@ -849,6 +909,8 @@ class AwsEc2InstanceNetworkInterfaceAttachment: @define(eq=False, slots=False) class AwsEc2GroupIdentifier: kind: ClassVar[str] = "aws_ec2_group_identifier" + kind_display: ClassVar[str] = "AWS EC2 Group Identifier" + kind_description: ClassVar[str] = "An EC2 Group Identifier is a unique identifier for a group of EC2 instances that are associated with a security group in Amazon's cloud." mapping: ClassVar[Dict[str, Bender]] = {"group_name": S("GroupName"), "group_id": S("GroupId")} group_name: Optional[str] = field(default=None) group_id: Optional[str] = field(default=None) @@ -857,6 +919,8 @@ class AwsEc2GroupIdentifier: @define(eq=False, slots=False) class AwsEc2InstancePrivateIpAddress: kind: ClassVar[str] = "aws_ec2_instance_private_ip_address" + kind_display: ClassVar[str] = "AWS EC2 Instance Private IP Address" + kind_description: ClassVar[str] = "The private IP address is the internal IP address assigned to the EC2 instance within the Amazon VPC (Virtual Private Cloud) network." mapping: ClassVar[Dict[str, Bender]] = { "association": S("Association") >> Bend(AwsEc2InstanceNetworkInterfaceAssociation.mapping), "primary": S("Primary"), @@ -872,6 +936,8 @@ class AwsEc2InstancePrivateIpAddress: @define(eq=False, slots=False) class AwsEc2InstanceNetworkInterface: kind: ClassVar[str] = "aws_ec2_instance_network_interface" + kind_display: ClassVar[str] = "AWS EC2 Instance Network Interface" + kind_description: ClassVar[str] = "A network interface is a virtual network card that allows an EC2 instance to connect to networks and communicate with other resources." mapping: ClassVar[Dict[str, Bender]] = { "association": S("Association") >> Bend(AwsEc2InstanceNetworkInterfaceAssociation.mapping), "attachment": S("Attachment") >> Bend(AwsEc2InstanceNetworkInterfaceAttachment.mapping), @@ -913,6 +979,8 @@ class AwsEc2InstanceNetworkInterface: @define(eq=False, slots=False) class AwsEc2StateReason: kind: ClassVar[str] = "aws_ec2_state_reason" + kind_display: ClassVar[str] = "AWS EC2 State Reason" + kind_description: ClassVar[str] = "EC2 State Reason provides information about the reason a certain EC2 instance is in its current state, such as running, stopped, or terminated." mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "message": S("Message")} code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -921,6 +989,8 @@ class AwsEc2StateReason: @define(eq=False, slots=False) class AwsEc2CpuOptions: kind: ClassVar[str] = "aws_ec2_cpu_options" + kind_display: ClassVar[str] = "AWS EC2 CPU Options" + kind_description: ClassVar[str] = "EC2 CPU Options allow users to customize the number of vCPUs (virtual CPUs) and the processor generation of their EC2 instances in Amazon's cloud." mapping: ClassVar[Dict[str, Bender]] = {"core_count": S("CoreCount"), "threads_per_core": S("ThreadsPerCore")} core_count: Optional[int] = field(default=None) threads_per_core: Optional[int] = field(default=None) @@ -929,6 +999,8 @@ class AwsEc2CpuOptions: @define(eq=False, slots=False) class AwsEc2CapacityReservationTargetResponse: kind: ClassVar[str] = "aws_ec2_capacity_reservation_target_response" + kind_display: ClassVar[str] = "AWS EC2 Capacity Reservation Target Response" + kind_description: ClassVar[str] = "This resource represents the response for querying capacity reservation targets available for EC2 instances in AWS. It provides information about the different capacity reservation options and their availability." mapping: ClassVar[Dict[str, Bender]] = { "capacity_reservation_id": S("CapacityReservationId"), "capacity_reservation_resource_group_arn": S("CapacityReservationResourceGroupArn"), @@ -940,6 +1012,8 @@ class AwsEc2CapacityReservationTargetResponse: @define(eq=False, slots=False) class AwsEc2CapacityReservationSpecificationResponse: kind: ClassVar[str] = "aws_ec2_capacity_reservation_specification_response" + kind_display: ClassVar[str] = "AWS EC2 Capacity Reservation Specification Response" + kind_description: ClassVar[str] = "The Capacity Reservation Specification Response is a response object that provides information about the capacity reservations for an EC2 instance in Amazon's cloud." mapping: ClassVar[Dict[str, Bender]] = { "capacity_reservation_preference": S("CapacityReservationPreference"), "capacity_reservation_target": S("CapacityReservationTarget") @@ -952,6 +1026,8 @@ class AwsEc2CapacityReservationSpecificationResponse: @define(eq=False, slots=False) class AwsEc2InstanceMetadataOptionsResponse: kind: ClassVar[str] = "aws_ec2_instance_metadata_options_response" + kind_display: ClassVar[str] = "AWS EC2 Instance Metadata Options Response" + kind_description: ClassVar[str] = "The AWS EC2 Instance Metadata Options Response is a configuration response from Amazon EC2 that provides information about the metadata service options enabled for an EC2 instance." mapping: ClassVar[Dict[str, Bender]] = { "state": S("State"), "http_tokens": S("HttpTokens"), @@ -971,6 +1047,8 @@ class AwsEc2InstanceMetadataOptionsResponse: @define(eq=False, slots=False) class AwsEc2PrivateDnsNameOptionsResponse: kind: ClassVar[str] = "aws_ec2_private_dns_name_options_response" + kind_display: ClassVar[str] = "AWS EC2 Private DNS Name Options Response" + kind_description: ClassVar[str] = "Private DNS Name Options Response is a response object in the AWS EC2 service that provides options for configuring the private DNS name of a resource in a virtual private cloud (VPC)." mapping: ClassVar[Dict[str, Bender]] = { "hostname_type": S("HostnameType"), "enable_resource_name_dns_a_record": S("EnableResourceNameDnsARecord"), @@ -994,6 +1072,8 @@ class AwsEc2PrivateDnsNameOptionsResponse: @define(eq=False, slots=False) class AwsEc2Instance(EC2Taggable, AwsResource, BaseInstance): kind: ClassVar[str] = "aws_ec2_instance" + kind_display: ClassVar[str] = "AWS EC2 Instance" + kind_description: ClassVar[str] = "EC2 Instances are virtual servers in Amazon's cloud, allowing users to run applications on the Amazon Web Services infrastructure." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-instances", "Reservations") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_ec2_keypair", "aws_vpc"]}, @@ -1258,6 +1338,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2RecurringCharge: kind: ClassVar[str] = "aws_ec2_recurring_charge" + kind_display: ClassVar[str] = "AWS EC2 Recurring Charge" + kind_description: ClassVar[str] = "There is no specific resource or service named 'aws_ec2_recurring_charge' in AWS. Please provide a valid resource name." mapping: ClassVar[Dict[str, Bender]] = {"amount": S("Amount"), "frequency": S("Frequency")} amount: Optional[float] = field(default=None) frequency: Optional[str] = field(default=None) @@ -1266,6 +1348,8 @@ class AwsEc2RecurringCharge: @define(eq=False, slots=False) class AwsEc2ReservedInstances(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_reserved_instances" + kind_display: ClassVar[str] = "AWS EC2 Reserved Instances" + kind_description: ClassVar[str] = "Reserved Instances are a purchasing option to save money on EC2 instance usage. Users can reserve instances for a one- or three-year term, allowing them to pay a lower hourly rate compared to on-demand instances." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-reserved-instances", "ReservedInstances") reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["aws_ec2_instance_type"]}} mapping: ClassVar[Dict[str, Bender]] = { @@ -1323,6 +1407,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsEc2NetworkAclAssociation: kind: ClassVar[str] = "aws_ec2_network_acl_association" + kind_display: ClassVar[str] = "AWS EC2 Network ACL Association" + kind_description: ClassVar[str] = "Network ACL Associations are used to associate a network ACL with a subnet in an Amazon VPC, allowing the network ACL to control inbound and outbound traffic to and from the subnet." mapping: ClassVar[Dict[str, Bender]] = { "network_acl_association_id": S("NetworkAclAssociationId"), "network_acl_id": S("NetworkAclId"), @@ -1336,6 +1422,8 @@ class AwsEc2NetworkAclAssociation: @define(eq=False, slots=False) class AwsEc2IcmpTypeCode: kind: ClassVar[str] = "aws_ec2_icmp_type_code" + kind_display: ClassVar[str] = "AWS EC2 ICMP Type Code" + kind_description: ClassVar[str] = "ICMP Type Code is a parameter used in AWS EC2 to specify the type and code of Internet Control Message Protocol (ICMP) messages." mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "type": S("Type")} code: Optional[int] = field(default=None) type: Optional[int] = field(default=None) @@ -1344,6 +1432,8 @@ class AwsEc2IcmpTypeCode: @define(eq=False, slots=False) class AwsEc2PortRange: kind: ClassVar[str] = "aws_ec2_port_range" + kind_display: ClassVar[str] = "AWS EC2 Port Range" + kind_description: ClassVar[str] = "A range of port numbers that can be used to control inbound and outbound traffic for an AWS EC2 instance." mapping: ClassVar[Dict[str, Bender]] = {"from_range": S("From"), "to_range": S("To")} from_range: Optional[int] = field(default=None) to_range: Optional[int] = field(default=None) @@ -1352,6 +1442,8 @@ class AwsEc2PortRange: @define(eq=False, slots=False) class AwsEc2NetworkAclEntry: kind: ClassVar[str] = "aws_ec2_network_acl_entry" + kind_display: ClassVar[str] = "AWS EC2 Network ACL Entry" + kind_description: ClassVar[str] = "EC2 Network ACL Entry is an access control entry for a network ACL in Amazon EC2, which controls inbound and outbound traffic flow for subnets." mapping: ClassVar[Dict[str, Bender]] = { "cidr_block": S("CidrBlock"), "egress": S("Egress"), @@ -1375,6 +1467,8 @@ class AwsEc2NetworkAclEntry: @define(eq=False, slots=False) class AwsEc2NetworkAcl(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_network_acl" + kind_display: ClassVar[str] = "AWS EC2 Network ACL" + kind_description: ClassVar[str] = "EC2 Network ACLs are virtual stateless firewalls that control inbound and outbound traffic for EC2 instances in Amazon's cloud." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-network-acls", "NetworkAcls") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc", "aws_ec2_subnet"]}, @@ -1420,6 +1514,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2ElasticIp(EC2Taggable, AwsResource, BaseIPAddress): kind: ClassVar[str] = "aws_ec2_elastic_ip" + kind_display: ClassVar[str] = "AWS EC2 Elastic IP" + kind_description: ClassVar[str] = "Elastic IP addresses are static, IPv4 addresses designed for dynamic cloud computing. They allow you to mask the failure or replacement of an instance by rapidly remapping the address to another instance in your account." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-addresses", "Addresses") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_ec2_instance", "aws_ec2_network_interface"]}, @@ -1498,6 +1594,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2NetworkInterfaceAssociation: kind: ClassVar[str] = "aws_ec2_network_interface_association" + kind_display: ClassVar[str] = "AWS EC2 Network Interface Association" + kind_description: ClassVar[str] = "The association between a network interface and an EC2 instance, allowing the instance to access the network." mapping: ClassVar[Dict[str, Bender]] = { "allocation_id": S("AllocationId"), "association_id": S("AssociationId"), @@ -1518,6 +1616,8 @@ class AwsEc2NetworkInterfaceAssociation: @define(eq=False, slots=False) class AwsEc2NetworkInterfaceAttachment: kind: ClassVar[str] = "aws_ec2_network_interface_attachment" + kind_display: ClassVar[str] = "AWS EC2 Network Interface Attachment" + kind_description: ClassVar[str] = "An attachment of a network interface to an EC2 instance, allowing the instance to communicate over the network." mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "attachment_id": S("AttachmentId"), @@ -1540,6 +1640,8 @@ class AwsEc2NetworkInterfaceAttachment: @define(eq=False, slots=False) class AwsEc2NetworkInterfacePrivateIpAddress: kind: ClassVar[str] = "aws_ec2_network_interface_private_ip_address" + kind_display: ClassVar[str] = "AWS EC2 Network Interface Private IP Address" + kind_description: ClassVar[str] = "The private IP address assigned to a network interface of an Amazon EC2 instance. This IP address is used for communication within the Amazon VPC (Virtual Private Cloud) network." mapping: ClassVar[Dict[str, Bender]] = { "association": S("Association") >> Bend(AwsEc2NetworkInterfaceAssociation.mapping), "primary": S("Primary"), @@ -1555,6 +1657,8 @@ class AwsEc2NetworkInterfacePrivateIpAddress: @define(eq=False, slots=False) class AwsEc2Tag: kind: ClassVar[str] = "aws_ec2_tag" + kind_display: ClassVar[str] = "AWS EC2 Tag" + kind_description: ClassVar[str] = "EC2 tags are key-value pairs that can be assigned to EC2 instances, images, volumes, and other resources for easier management and organization." mapping: ClassVar[Dict[str, Bender]] = {"key": S("Key"), "value": S("Value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1563,6 +1667,8 @@ class AwsEc2Tag: @define(eq=False, slots=False) class AwsEc2NetworkInterface(EC2Taggable, AwsResource, BaseNetworkInterface): kind: ClassVar[str] = "aws_ec2_network_interface" + kind_display: ClassVar[str] = "AWS EC2 Network Interface" + kind_description: ClassVar[str] = "An EC2 Network Interface is a virtual network interface that can be attached to EC2 instances in the AWS cloud, allowing for communication between instances and with external networks." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-network-interfaces", "NetworkInterfaces") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -1670,6 +1776,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2VpcCidrBlockState: kind: ClassVar[str] = "aws_vpc_cidr_block_state" + kind_display: ClassVar[str] = "AWS VPC CIDR Block State" + kind_description: ClassVar[str] = "The state of a CIDR block in an Amazon Virtual Private Cloud (VPC) which provides networking functionality for Amazon Elastic Compute Cloud (EC2) instances." mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "status_message": S("StatusMessage")} state: Optional[str] = field(default=None) status_message: Optional[str] = field(default=None) @@ -1678,6 +1786,8 @@ class AwsEc2VpcCidrBlockState: @define(eq=False, slots=False) class AwsEc2VpcIpv6CidrBlockAssociation: kind: ClassVar[str] = "aws_vpc_ipv6_cidr_block_association" + kind_display: ClassVar[str] = "AWS VPC IPv6 CIDR Block Association" + kind_description: ClassVar[str] = "AWS VPC IPv6 CIDR Block Association represents the association between an Amazon Virtual Private Cloud (VPC) and an IPv6 CIDR block, enabling communication over IPv6 in the VPC." mapping: ClassVar[Dict[str, Bender]] = { "association_id": S("AssociationId"), "ipv6_cidr_block": S("Ipv6CidrBlock"), @@ -1695,6 +1805,8 @@ class AwsEc2VpcIpv6CidrBlockAssociation: @define(eq=False, slots=False) class AwsEc2VpcCidrBlockAssociation: kind: ClassVar[str] = "aws_vpc_cidr_block_association" + kind_display: ClassVar[str] = "AWS VPC CIDR Block Association" + kind_description: ClassVar[str] = "CIDR Block Association is used to associate a specific range of IP addresses (CIDR block) with a Virtual Private Cloud (VPC) in the AWS cloud. It allows the VPC to have a defined IP range for its resources and enables secure communication within the VPC." mapping: ClassVar[Dict[str, Bender]] = { "association_id": S("AssociationId"), "cidr_block": S("CidrBlock"), @@ -1708,6 +1820,8 @@ class AwsEc2VpcCidrBlockAssociation: @define(eq=False, slots=False) class AwsEc2Vpc(EC2Taggable, AwsResource, BaseNetwork): kind: ClassVar[str] = "aws_vpc" + kind_display: ClassVar[str] = "AWS VPC" + kind_description: ClassVar[str] = "AWS VPC stands for Amazon Virtual Private Cloud. It is a virtual network dedicated to your AWS account, allowing you to launch AWS resources in a defined virtual network environment." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-vpcs", "Vpcs") mapping: ClassVar[Dict[str, Bender]] = { "id": S("VpcId"), @@ -1752,6 +1866,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2VpcPeeringConnectionOptionsDescription: kind: ClassVar[str] = "aws_vpc_peering_connection_options_description" + kind_display: ClassVar[str] = "AWS VPC Peering Connection Options Description" + kind_description: ClassVar[str] = "VPC Peering Connection Options Description provides the different options and configurations for establishing a peering connection between two Amazon Virtual Private Clouds (VPCs). This allows communication between the VPCs using private IP addresses." mapping: ClassVar[Dict[str, Bender]] = { "allow_dns_resolution_from_remote_vpc": S("AllowDnsResolutionFromRemoteVpc"), "allow_egress_from_local_classic_link_to_remote_vpc": S("AllowEgressFromLocalClassicLinkToRemoteVpc"), @@ -1765,6 +1881,8 @@ class AwsEc2VpcPeeringConnectionOptionsDescription: @define(eq=False, slots=False) class AwsEc2VpcPeeringConnectionVpcInfo: kind: ClassVar[str] = "aws_vpc_peering_connection_vpc_info" + kind_display: ClassVar[str] = "AWS VPC Peering Connection VPC Info" + kind_description: ClassVar[str] = "VPC Peering Connection VPC Info provides information about the virtual private cloud (VPC) involved in a VPC peering connection in Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "cidr_block": S("CidrBlock"), "ipv6_cidr_block_set": S("Ipv6CidrBlockSet", default=[]) >> ForallBend(S("Ipv6CidrBlock")), @@ -1786,6 +1904,8 @@ class AwsEc2VpcPeeringConnectionVpcInfo: @define(eq=False, slots=False) class AwsEc2VpcPeeringConnectionStateReason: kind: ClassVar[str] = "aws_vpc_peering_connection_state_reason" + kind_display: ClassVar[str] = "AWS VPC Peering Connection State Reason" + kind_description: ClassVar[str] = "This resource represents the reason for the current state of a VPC peering connection in Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "message": S("Message")} code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -1794,6 +1914,8 @@ class AwsEc2VpcPeeringConnectionStateReason: @define(eq=False, slots=False) class AwsEc2VpcPeeringConnection(EC2Taggable, AwsResource, BasePeeringConnection): kind: ClassVar[str] = "aws_vpc_peering_connection" + kind_display: ClassVar[str] = "AWS VPC Peering Connection" + kind_description: ClassVar[str] = "VPC Peering Connection is a networking connection between two Amazon Virtual Private Clouds (VPCs) that enables you to route traffic between them using private IP addresses." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-vpc-peering-connections", "VpcPeeringConnections" ) @@ -1844,6 +1966,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2DnsEntry: kind: ClassVar[str] = "aws_ec2_dns_entry" + kind_display: ClassVar[str] = "AWS EC2 DNS Entry" + kind_description: ClassVar[str] = "An EC2 DNS Entry is a domain name assigned to an Amazon EC2 instance, allowing users to access the instance's applications using a human-readable name instead of its IP address." mapping: ClassVar[Dict[str, Bender]] = {"dns_name": S("DnsName"), "hosted_zone_id": S("HostedZoneId")} dns_name: Optional[str] = field(default=None) hosted_zone_id: Optional[str] = field(default=None) @@ -1852,6 +1976,8 @@ class AwsEc2DnsEntry: @define(eq=False, slots=False) class AwsEc2LastError: kind: ClassVar[str] = "aws_ec2_last_error" + kind_display: ClassVar[str] = "AWS EC2 Last Error" + kind_description: ClassVar[str] = "The AWS EC2 Last Error is a description of the last error occurred in relation to an EC2 instance. It helps in troubleshooting and identifying issues with the EC2 instances in Amazon's cloud." mapping: ClassVar[Dict[str, Bender]] = {"message": S("Message"), "code": S("Code")} message: Optional[str] = field(default=None) code: Optional[str] = field(default=None) @@ -1860,6 +1986,8 @@ class AwsEc2LastError: @define(eq=False, slots=False) class AwsEc2VpcEndpoint(EC2Taggable, AwsResource, BaseEndpoint): kind: ClassVar[str] = "aws_vpc_endpoint" + kind_display: ClassVar[str] = "AWS VPC Endpoint" + kind_description: ClassVar[str] = "VPC Endpoints enable secure and private communication between your VPC and supported AWS services without using public IPs or requiring traffic to traverse the internet." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-vpc-endpoints", "VpcEndpoints") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -1946,6 +2074,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2SubnetCidrBlockState: kind: ClassVar[str] = "aws_ec2_subnet_cidr_block_state" + kind_display: ClassVar[str] = "AWS EC2 Subnet CIDR Block State" + kind_description: ClassVar[str] = "The state of the CIDR block for a subnet in AWS EC2. It indicates whether the CIDR block is associated with a subnet or not." mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "status_message": S("StatusMessage")} state: Optional[str] = field(default=None) status_message: Optional[str] = field(default=None) @@ -1954,6 +2084,8 @@ class AwsEc2SubnetCidrBlockState: @define(eq=False, slots=False) class AwsEc2SubnetIpv6CidrBlockAssociation: kind: ClassVar[str] = "aws_ec2_subnet_ipv6_cidr_block_association" + kind_display: ClassVar[str] = "AWS EC2 Subnet IPv6 CIDR Block Association" + kind_description: ClassVar[str] = "IPv6 CIDR Block Association is used to associate an IPv6 CIDR block with a subnet in Amazon EC2, enabling the subnet to use IPv6 addresses." mapping: ClassVar[Dict[str, Bender]] = { "association_id": S("AssociationId"), "ipv6_cidr_block": S("Ipv6CidrBlock"), @@ -1967,6 +2099,8 @@ class AwsEc2SubnetIpv6CidrBlockAssociation: @define(eq=False, slots=False) class AwsEc2PrivateDnsNameOptionsOnLaunch: kind: ClassVar[str] = "aws_ec2_private_dns_name_options_on_launch" + kind_display: ClassVar[str] = "AWS EC2 Private DNS Name Options on Launch" + kind_description: ClassVar[str] = "The option to enable or disable assigning a private DNS name to an Amazon EC2 instance on launch." mapping: ClassVar[Dict[str, Bender]] = { "hostname_type": S("HostnameType"), "enable_resource_name_dns_a_record": S("EnableResourceNameDnsARecord"), @@ -1980,6 +2114,8 @@ class AwsEc2PrivateDnsNameOptionsOnLaunch: @define(eq=False, slots=False) class AwsEc2Subnet(EC2Taggable, AwsResource, BaseSubnet): kind: ClassVar[str] = "aws_ec2_subnet" + kind_display: ClassVar[str] = "AWS EC2 Subnet" + kind_description: ClassVar[str] = "An AWS EC2 Subnet is a logical subdivision of a VPC (Virtual Private Cloud) in Amazon's cloud, allowing users to group resources and control network access within a specific network segment." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-subnets", "Subnets") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2051,6 +2187,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2IpRange: kind: ClassVar[str] = "aws_ec2_ip_range" + kind_display: ClassVar[str] = "AWS EC2 IP Range" + kind_description: ClassVar[str] = "An IP range in the Amazon EC2 service that is used to define a range of IP addresses available for EC2 instances. It allows users to control inbound and outbound traffic to their virtual servers within the specified IP range." mapping: ClassVar[Dict[str, Bender]] = {"cidr_ip": S("CidrIp"), "description": S("Description")} cidr_ip: Optional[str] = field(default=None) description: Optional[str] = field(default=None) @@ -2059,6 +2197,8 @@ class AwsEc2IpRange: @define(eq=False, slots=False) class AwsEc2Ipv6Range: kind: ClassVar[str] = "aws_ec2_ipv6_range" + kind_display: ClassVar[str] = "AWS EC2 IPv6 Range" + kind_description: ClassVar[str] = "AWS EC2 IPv6 Range is a range of IPv6 addresses that can be assigned to EC2 instances in the Amazon Web Services cloud." mapping: ClassVar[Dict[str, Bender]] = {"cidr_ipv6": S("CidrIpv6"), "description": S("Description")} cidr_ipv6: Optional[str] = field(default=None) description: Optional[str] = field(default=None) @@ -2067,6 +2207,8 @@ class AwsEc2Ipv6Range: @define(eq=False, slots=False) class AwsEc2PrefixListId: kind: ClassVar[str] = "aws_ec2_prefix_list_id" + kind_display: ClassVar[str] = "AWS EC2 Prefix List ID" + kind_description: ClassVar[str] = "A prefix list is a set of CIDR blocks that can be used as a firewall rule in AWS VPC to allow or deny traffic." mapping: ClassVar[Dict[str, Bender]] = {"description": S("Description"), "prefix_list_id": S("PrefixListId")} description: Optional[str] = field(default=None) prefix_list_id: Optional[str] = field(default=None) @@ -2075,6 +2217,8 @@ class AwsEc2PrefixListId: @define(eq=False, slots=False) class AwsEc2UserIdGroupPair: kind: ClassVar[str] = "aws_ec2_user_id_group_pair" + kind_display: ClassVar[str] = "AWS EC2 User ID Group Pair" + kind_description: ClassVar[str] = "User ID Group Pair is a configuration in EC2 that associates a user ID with a security group, allowing or denying traffic based on the specified source or destination IP address range." mapping: ClassVar[Dict[str, Bender]] = { "description": S("Description"), "group_id": S("GroupId"), @@ -2096,6 +2240,8 @@ class AwsEc2UserIdGroupPair: @define(eq=False, slots=False) class AwsEc2IpPermission: kind: ClassVar[str] = "aws_ec2_ip_permission" + kind_display: ClassVar[str] = "AWS EC2 IP Permission" + kind_description: ClassVar[str] = "IP Permission in AWS EC2 allows you to control inbound and outbound traffic to an EC2 instance based on IP addresses." mapping: ClassVar[Dict[str, Bender]] = { "from_port": S("FromPort"), "ip_protocol": S("IpProtocol"), @@ -2117,6 +2263,8 @@ class AwsEc2IpPermission: @define(eq=False, slots=False) class AwsEc2SecurityGroup(EC2Taggable, AwsResource, BaseSecurityGroup): kind: ClassVar[str] = "aws_ec2_security_group" + kind_display: ClassVar[str] = "AWS EC2 Security Group" + kind_description: ClassVar[str] = "An EC2 Security Group acts as a virtual firewall that controls inbound and outbound traffic for EC2 instances within a VPC." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-security-groups", "SecurityGroups") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2208,6 +2356,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2NatGatewayAddress: kind: ClassVar[str] = "aws_ec2_nat_gateway_address" + kind_display: ClassVar[str] = "AWS EC2 NAT Gateway Address" + kind_description: ClassVar[str] = "The NAT Gateway Address is a public IP address assigned to an AWS EC2 NAT Gateway, which allows instances within a private subnet to communicate with the internet." mapping: ClassVar[Dict[str, Bender]] = { "allocation_id": S("AllocationId"), "network_interface_id": S("NetworkInterfaceId"), @@ -2223,6 +2373,8 @@ class AwsEc2NatGatewayAddress: @define(eq=False, slots=False) class AwsEc2ProvisionedBandwidth: kind: ClassVar[str] = "aws_ec2_provisioned_bandwidth" + kind_display: ClassVar[str] = "AWS EC2 Provisioned Bandwidth" + kind_description: ClassVar[str] = "EC2 Provisioned Bandwidth refers to the ability to provision high-bandwidth connections between EC2 instances and other AWS services." mapping: ClassVar[Dict[str, Bender]] = { "provision_time": S("ProvisionTime"), "provisioned": S("Provisioned"), @@ -2240,6 +2392,8 @@ class AwsEc2ProvisionedBandwidth: @define(eq=False, slots=False) class AwsEc2NatGateway(EC2Taggable, AwsResource, BaseGateway): kind: ClassVar[str] = "aws_ec2_nat_gateway" + kind_display: ClassVar[str] = "AWS EC2 NAT Gateway" + kind_description: ClassVar[str] = "A NAT Gateway is a fully managed network address translation (NAT) service provided by Amazon Web Services (AWS) that allows instances within a private subnet to connect outbound to the Internet while also preventing inbound connections from the outside." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-nat-gateways", "NatGateways") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_ec2_network_interface", "aws_vpc", "aws_ec2_subnet"]}, @@ -2294,6 +2448,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2InternetGatewayAttachment: kind: ClassVar[str] = "aws_ec2_internet_gateway_attachment" + kind_display: ClassVar[str] = "AWS EC2 Internet Gateway Attachment" + kind_description: ClassVar[str] = "EC2 Internet Gateway Attachment is a resource that represents the attachment of an Internet Gateway to a VPC in Amazon's cloud, enabling outbound internet access for instances in the VPC." mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "vpc_id": S("VpcId")} state: Optional[str] = field(default=None) vpc_id: Optional[str] = field(default=None) @@ -2302,6 +2458,8 @@ class AwsEc2InternetGatewayAttachment: @define(eq=False, slots=False) class AwsEc2InternetGateway(EC2Taggable, AwsResource, BaseGateway): kind: ClassVar[str] = "aws_ec2_internet_gateway" + kind_display: ClassVar[str] = "AWS EC2 Internet Gateway" + kind_description: ClassVar[str] = "An Internet Gateway is a horizontally scalable, redundant, and highly available VPC component that allows communication between instances in your VPC and the internet." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-internet-gateways", "InternetGateways") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2360,6 +2518,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2RouteTableAssociationState: kind: ClassVar[str] = "aws_ec2_route_table_association_state" + kind_display: ClassVar[str] = "AWS EC2 Route Table Association State" + kind_description: ClassVar[str] = "Route Table Association State represents the state of association between a subnet and a route table in Amazon EC2." mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "status_message": S("StatusMessage")} state: Optional[str] = field(default=None) status_message: Optional[str] = field(default=None) @@ -2368,6 +2528,8 @@ class AwsEc2RouteTableAssociationState: @define(eq=False, slots=False) class AwsEc2RouteTableAssociation: kind: ClassVar[str] = "aws_ec2_route_table_association" + kind_display: ClassVar[str] = "AWS EC2 Route Table Association" + kind_description: ClassVar[str] = "A Route Table Association is used to associate a route table with a subnet in Amazon EC2, allowing for traffic routing within the virtual private cloud (VPC)" mapping: ClassVar[Dict[str, Bender]] = { "main": S("Main"), "route_table_association_id": S("RouteTableAssociationId"), @@ -2387,6 +2549,8 @@ class AwsEc2RouteTableAssociation: @define(eq=False, slots=False) class AwsEc2Route: kind: ClassVar[str] = "aws_ec2_route" + kind_display: ClassVar[str] = "AWS EC2 Route" + kind_description: ClassVar[str] = "Routes in AWS EC2 are used to direct network traffic from one subnet to another, allowing communication between different instances and networks within the Amazon EC2 service." mapping: ClassVar[Dict[str, Bender]] = { "destination_cidr_block": S("DestinationCidrBlock"), "destination_ipv6_cidr_block": S("DestinationIpv6CidrBlock"), @@ -2426,6 +2590,8 @@ class AwsEc2Route: @define(eq=False, slots=False) class AwsEc2RouteTable(EC2Taggable, AwsResource, BaseRoutingTable): kind: ClassVar[str] = "aws_ec2_route_table" + kind_display: ClassVar[str] = "AWS EC2 Route Table" + kind_description: ClassVar[str] = "EC2 Route Tables are used to determine where network traffic is directed within a Virtual Private Cloud (VPC) in Amazon's cloud infrastructure." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-route-tables", "RouteTables") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2485,6 +2651,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2InstanceCapacity: kind: ClassVar[str] = "aws_ec2_instance_capacity" + kind_display: ClassVar[str] = "AWS EC2 Instance Capacity" + kind_description: ClassVar[str] = "AWS EC2 Instance Capacity refers to the amount of computing power, expressed in terms of CPU, memory, and networking resources, that an EC2 instance can provide to run applications in the Amazon Web Services cloud." mapping: ClassVar[Dict[str, Bender]] = { "available_capacity": S("AvailableCapacity"), "instance_type": S("InstanceType"), @@ -2498,6 +2666,8 @@ class AwsEc2InstanceCapacity: @define(eq=False, slots=False) class AwsEc2AvailableCapacity: kind: ClassVar[str] = "aws_ec2_available_capacity" + kind_display: ClassVar[str] = "AWS EC2 Available Capacity" + kind_description: ClassVar[str] = "The available capacity refers to the amount of resources (such as CPU, memory, and storage) that are currently available for new EC2 instances to be launched in the Amazon Web Services infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "available_instance_capacity": S("AvailableInstanceCapacity", default=[]) >> ForallBend(AwsEc2InstanceCapacity.mapping), @@ -2510,6 +2680,8 @@ class AwsEc2AvailableCapacity: @define(eq=False, slots=False) class AwsEc2HostProperties: kind: ClassVar[str] = "aws_ec2_host_properties" + kind_display: ClassVar[str] = "AWS EC2 Host Properties" + kind_description: ClassVar[str] = "EC2 Host Properties provide detailed information and configuration options for the physical hosts within the Amazon EC2 infrastructure." mapping: ClassVar[Dict[str, Bender]] = { "cores": S("Cores"), "instance_type": S("InstanceType"), @@ -2527,6 +2699,8 @@ class AwsEc2HostProperties: @define(eq=False, slots=False) class AwsEc2HostInstance: kind: ClassVar[str] = "aws_ec2_host_instance" + kind_display: ClassVar[str] = "AWS EC2 Host Instance" + kind_description: ClassVar[str] = "EC2 Host Instances are physical servers in Amazon's cloud that are dedicated to hosting EC2 instances, providing you with more control over your infrastructure and allowing you to easily manage your own host-level resources." mapping: ClassVar[Dict[str, Bender]] = { "instance_id": S("InstanceId"), "instance_type": S("InstanceType"), @@ -2540,6 +2714,8 @@ class AwsEc2HostInstance: @define(eq=False, slots=False) class AwsEc2Host(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_host" + kind_display: ClassVar[str] = "AWS EC2 Host" + kind_description: ClassVar[str] = "EC2 Hosts are physical servers in Amazon's cloud that are used to run EC2 instances." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-hosts", "Hosts") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_ec2_instance"], "delete": ["aws_ec2_instance"]} @@ -2608,6 +2784,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEc2DestinationOption: kind: ClassVar[str] = "aws_ec2_destination_option" + kind_display: ClassVar[str] = "AWS EC2 Destination Option" + kind_description: ClassVar[str] = "EC2 Destination Options allow users to specify the destinations for traffic within a VPC, providing flexibility and control over network traffic flows." mapping: ClassVar[Dict[str, Bender]] = { "file_format": S("FileFormat"), "hive_compatible_partitions": S("HiveCompatiblePartitions"), @@ -2626,6 +2804,8 @@ class AwsEc2DestinationOption: @define(eq=False, slots=False) class AwsEc2FlowLog(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_flow_log" + kind_display: ClassVar[str] = "AWS EC2 Flow Log" + kind_description: ClassVar[str] = "EC2 Flow Logs capture information about the IP traffic going to and from network interfaces in an Amazon EC2 instance, helping to troubleshoot network connectivity issues." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-flow-logs", "FlowLogs") mapping: ClassVar[Dict[str, Bender]] = { "id": S("FlowLogId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/ecs.py b/plugins/aws/resoto_plugin_aws/resource/ecs.py index d9bf17f913..ee21d9dd29 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ecs.py +++ b/plugins/aws/resoto_plugin_aws/resource/ecs.py @@ -59,6 +59,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsEcsManagedScaling: kind: ClassVar[str] = "aws_ecs_managed_scaling" + kind_display: ClassVar[str] = "AWS ECS Managed Scaling" + kind_description: ClassVar[str] = "ECS Managed Scaling is a feature of Amazon Elastic Container Service (ECS) that automatically adjusts the number of running tasks in an ECS service based on demand or a specified scaling policy." mapping: ClassVar[Dict[str, Bender]] = { "status": S("status"), "target_capacity": S("targetCapacity"), @@ -76,6 +78,8 @@ class AwsEcsManagedScaling: @define(eq=False, slots=False) class AwsEcsAutoScalingGroupProvider: kind: ClassVar[str] = "aws_ecs_auto_scaling_group_provider" + kind_display: ClassVar[str] = "AWS ECS Auto Scaling Group Provider" + kind_description: ClassVar[str] = "ECS Auto Scaling Group Provider is a service in AWS that allows for automatic scaling of a containerized application deployed on Amazon ECS (Elastic Container Service) using Auto Scaling Groups." mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_group_arn": S("autoScalingGroupArn"), "managed_scaling": S("managedScaling") >> Bend(AwsEcsManagedScaling.mapping), @@ -90,6 +94,8 @@ class AwsEcsAutoScalingGroupProvider: class AwsEcsCapacityProvider(EcsTaggable, AwsResource): # collection of capacity provider resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_capacity_provider" + kind_display: ClassVar[str] = "AWS ECS Capacity Provider" + kind_description: ClassVar[str] = "ECS Capacity Providers are used in Amazon's Elastic Container Service to manage the capacity and scaling for containerized applications." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_autoscaling_group"]}, "successors": {"default": ["aws_autoscaling_group"]}, @@ -143,6 +149,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEcsKeyValuePair: kind: ClassVar[str] = "aws_ecs_key_value_pair" + kind_display: ClassVar[str] = "AWS ECS Key Value Pair" + kind_description: ClassVar[str] = "A key value pair is a simple data structure used in AWS ECS (Elastic Container Service) to store and manage the metadata associated with containers." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -151,6 +159,8 @@ class AwsEcsKeyValuePair: @define(eq=False, slots=False) class AwsEcsAttachment: kind: ClassVar[str] = "aws_ecs_attachment" + kind_display: ClassVar[str] = "AWS ECS Attachment" + kind_description: ClassVar[str] = "ECS Attachments are links between ECS tasks and Elastic Network Interfaces (ENIs) that enable containerized applications running in the ECS service to communicate with other resources within a Virtual Private Cloud (VPC)." mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "type": S("type"), @@ -166,6 +176,8 @@ class AwsEcsAttachment: @define(eq=False, slots=False) class AwsEcsAttribute: kind: ClassVar[str] = "aws_ecs_attribute" + kind_display: ClassVar[str] = "AWS ECS Attribute" + kind_description: ClassVar[str] = "ECS (Elastic Container Service) Attribute is a key-value pair that can be assigned to a specific ECS resource, such as a task definition or a service, to provide additional information or configuration settings." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "value": S("value"), @@ -181,6 +193,8 @@ class AwsEcsAttribute: @define(eq=False, slots=False) class AwsEcsNetworkBinding: kind: ClassVar[str] = "aws_ecs_network_binding" + kind_display: ClassVar[str] = "AWS ECS Network Binding" + kind_description: ClassVar[str] = "ECS network binding is a service in Amazon's Elastic Container Service that allows containers within a task to communicate with each other and external services securely." mapping: ClassVar[Dict[str, Bender]] = { "bind_ip": S("bindIP"), "container_port": S("containerPort"), @@ -196,6 +210,8 @@ class AwsEcsNetworkBinding: @define(eq=False, slots=False) class AwsEcsNetworkInterface: kind: ClassVar[str] = "aws_ecs_network_interface" + kind_display: ClassVar[str] = "AWS ECS Network Interface" + kind_description: ClassVar[str] = "ECS Network Interface is a networking component used by the Amazon Elastic Container Service (ECS) to connect containers to network resources within the AWS cloud." mapping: ClassVar[Dict[str, Bender]] = { "attachment_id": S("attachmentId"), "private_ipv4_address": S("privateIpv4Address"), @@ -209,6 +225,8 @@ class AwsEcsNetworkInterface: @define(eq=False, slots=False) class AwsEcsManagedAgent: kind: ClassVar[str] = "aws_ecs_managed_agent" + kind_display: ClassVar[str] = "AWS ECS Managed Agent" + kind_description: ClassVar[str] = "The AWS ECS Managed Agent is a component of Amazon Elastic Container Service (ECS) that runs on each EC2 instance in an ECS cluster and manages the lifecycle of tasks and container instances." mapping: ClassVar[Dict[str, Bender]] = { "last_started_at": S("lastStartedAt"), "name": S("name"), @@ -224,6 +242,8 @@ class AwsEcsManagedAgent: @define(eq=False, slots=False) class AwsEcsContainer: kind: ClassVar[str] = "aws_ecs_container" + kind_display: ClassVar[str] = "AWS ECS Container" + kind_description: ClassVar[str] = "ECS Containers are a lightweight and portable way to package, deploy, and run applications in a highly scalable and managed container environment provided by Amazon Elastic Container Service (ECS)." mapping: ClassVar[Dict[str, Bender]] = { "container_arn": S("containerArn"), "task_arn": S("taskArn"), @@ -265,6 +285,8 @@ class AwsEcsContainer: @define(eq=False, slots=False) class AwsEcsInferenceAccelerator: kind: ClassVar[str] = "aws_ecs_inference_accelerator" + kind_display: ClassVar[str] = "AWS ECS Inference Accelerator" + kind_description: ClassVar[str] = "ECS Inference Accelerators are resources used by Amazon ECS to accelerate deep learning inference workloads, improving performance and reducing latency." mapping: ClassVar[Dict[str, Bender]] = {"device_name": S("deviceName"), "device_type": S("deviceType")} device_name: Optional[str] = field(default=None) device_type: Optional[str] = field(default=None) @@ -273,6 +295,8 @@ class AwsEcsInferenceAccelerator: @define(eq=False, slots=False) class AwsEcsEnvironmentFile: kind: ClassVar[str] = "aws_ecs_environment_file" + kind_display: ClassVar[str] = "AWS ECS Environment File" + kind_description: ClassVar[str] = "ECS Environment Files are used to store environment variables for containers in Amazon Elastic Container Service (ECS), allowing users to easily manage and configure these variables for their applications." mapping: ClassVar[Dict[str, Bender]] = {"value": S("value"), "type": S("type")} value: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -281,6 +305,8 @@ class AwsEcsEnvironmentFile: @define(eq=False, slots=False) class AwsEcsResourceRequirement: kind: ClassVar[str] = "aws_ecs_resource_requirement" + kind_display: ClassVar[str] = "AWS ECS Resource Requirement" + kind_description: ClassVar[str] = "Resource requirements for running containerized applications on Amazon Elastic Container Service (ECS), including CPU and memory allocation." mapping: ClassVar[Dict[str, Bender]] = {"value": S("value"), "type": S("type")} value: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -289,6 +315,8 @@ class AwsEcsResourceRequirement: @define(eq=False, slots=False) class AwsEcsContainerOverride: kind: ClassVar[str] = "aws_ecs_container_override" + kind_display: ClassVar[str] = "AWS ECS Container Override" + kind_description: ClassVar[str] = "ECS Container Overrides allow users to override the default values of container instance attributes defined in a task definition for a specific task run." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "command": S("command", default=[]), @@ -312,6 +340,8 @@ class AwsEcsContainerOverride: @define(eq=False, slots=False) class AwsEcsTaskOverride: kind: ClassVar[str] = "aws_ecs_task_override" + kind_display: ClassVar[str] = "AWS ECS Task Override" + kind_description: ClassVar[str] = "ECS Task Overrides allow you to change the default values of a task definition when running an ECS task." mapping: ClassVar[Dict[str, Bender]] = { "container_overrides": S("containerOverrides", default=[]) >> ForallBend(AwsEcsContainerOverride.mapping), "cpu": S("cpu"), @@ -335,6 +365,8 @@ class AwsEcsTaskOverride: class AwsEcsTask(EcsTaggable, AwsResource): # collection of task resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_task" + kind_display: ClassVar[str] = "AWS ECS Task" + kind_description: ClassVar[str] = "ECS Tasks are containers managed by Amazon Elastic Container Service, which allow users to run and scale applications easily using Docker containers." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ecs_task_definition"], @@ -454,6 +486,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEcsPortMapping: kind: ClassVar[str] = "aws_ecs_port_mapping" + kind_display: ClassVar[str] = "AWS ECS Port Mapping" + kind_description: ClassVar[str] = "Port mapping in Amazon Elastic Container Service (ECS) allows containers running within a task to receive inbound traffic on specified port numbers." mapping: ClassVar[Dict[str, Bender]] = { "container_port": S("containerPort"), "host_port": S("hostPort"), @@ -467,6 +501,8 @@ class AwsEcsPortMapping: @define(eq=False, slots=False) class AwsEcsMountPoint: kind: ClassVar[str] = "aws_ecs_mount_point" + kind_display: ClassVar[str] = "AWS ECS Mount Point" + kind_description: ClassVar[str] = "ECS Mount Points are used in Amazon EC2 Container Service to attach persistent storage volumes to containers in a task definition." mapping: ClassVar[Dict[str, Bender]] = { "source_volume": S("sourceVolume"), "container_path": S("containerPath"), @@ -480,6 +516,8 @@ class AwsEcsMountPoint: @define(eq=False, slots=False) class AwsEcsVolumeFrom: kind: ClassVar[str] = "aws_ecs_volume_from" + kind_display: ClassVar[str] = "AWS ECS Volume From" + kind_description: ClassVar[str] = "Volume From is a feature in Amazon Elastic Container Service (ECS) that allows a container to access the contents of another container's mounted volumes." mapping: ClassVar[Dict[str, Bender]] = {"source_container": S("sourceContainer"), "read_only": S("readOnly")} source_container: Optional[str] = field(default=None) read_only: Optional[bool] = field(default=None) @@ -488,6 +526,8 @@ class AwsEcsVolumeFrom: @define(eq=False, slots=False) class AwsEcsKernelCapabilities: kind: ClassVar[str] = "aws_ecs_kernel_capabilities" + kind_display: ClassVar[str] = "AWS ECS Kernel Capabilities" + kind_description: ClassVar[str] = "Kernel capabilities allow fine-grained control over privileged operations, such as modifying network settings or accessing hardware resources, for tasks running in Amazon ECS." mapping: ClassVar[Dict[str, Bender]] = {"add": S("add", default=[]), "drop": S("drop", default=[])} add: List[str] = field(factory=list) drop: List[str] = field(factory=list) @@ -496,6 +536,8 @@ class AwsEcsKernelCapabilities: @define(eq=False, slots=False) class AwsEcsDevice: kind: ClassVar[str] = "aws_ecs_device" + kind_display: ClassVar[str] = "AWS ECS Device" + kind_description: ClassVar[str] = "ECS Device refers to a device connected to Amazon Elastic Container Service, which is a container management service that allows you to easily run and scale containerized applications." mapping: ClassVar[Dict[str, Bender]] = { "host_path": S("hostPath"), "container_path": S("containerPath"), @@ -509,6 +551,8 @@ class AwsEcsDevice: @define(eq=False, slots=False) class AwsEcsTmpfs: kind: ClassVar[str] = "aws_ecs_tmpfs" + kind_display: ClassVar[str] = "AWS ECS Tmpfs" + kind_description: ClassVar[str] = "Tmpfs is a temporary file storage system in AWS Elastic Container Service (ECS) that can be mounted as a memory-backed file system for containers. It provides fast and volatile storage for temporary files during container runtime." mapping: ClassVar[Dict[str, Bender]] = { "container_path": S("containerPath"), "size": S("size"), @@ -522,6 +566,8 @@ class AwsEcsTmpfs: @define(eq=False, slots=False) class AwsEcsLinuxParameters: kind: ClassVar[str] = "aws_ecs_linux_parameters" + kind_display: ClassVar[str] = "AWS ECS Linux Parameters" + kind_description: ClassVar[str] = "ECS Linux Parameters are configuration settings for Amazon Elastic Container Service (ECS) that enable you to modify container behavior on Linux instances within an ECS cluster." mapping: ClassVar[Dict[str, Bender]] = { "capabilities": S("capabilities") >> Bend(AwsEcsKernelCapabilities.mapping), "devices": S("devices", default=[]) >> ForallBend(AwsEcsDevice.mapping), @@ -543,6 +589,8 @@ class AwsEcsLinuxParameters: @define(eq=False, slots=False) class AwsEcsSecret: kind: ClassVar[str] = "aws_ecs_secret" + kind_display: ClassVar[str] = "AWS ECS Secret" + kind_description: ClassVar[str] = "ECS Secrets provide a secure way to store and manage sensitive information, such as database credentials or API keys, for use by applications running on AWS Elastic Container Service." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value_from": S("valueFrom")} name: Optional[str] = field(default=None) value_from: Optional[str] = field(default=None) @@ -551,6 +599,8 @@ class AwsEcsSecret: @define(eq=False, slots=False) class AwsEcsContainerDependency: kind: ClassVar[str] = "aws_ecs_container_dependency" + kind_display: ClassVar[str] = "AWS ECS Container Dependency" + kind_description: ClassVar[str] = "ECS Container Dependency is a feature in AWS ECS (Elastic Container Service) that allows you to define dependencies between containers within a task definition to ensure proper sequencing and synchronization of container startup and shutdown." mapping: ClassVar[Dict[str, Bender]] = {"container_name": S("containerName"), "condition": S("condition")} container_name: Optional[str] = field(default=None) condition: Optional[str] = field(default=None) @@ -559,6 +609,8 @@ class AwsEcsContainerDependency: @define(eq=False, slots=False) class AwsEcsHostEntry: kind: ClassVar[str] = "aws_ecs_host_entry" + kind_display: ClassVar[str] = "AWS ECS Host Entry" + kind_description: ClassVar[str] = "ECS Host Entries are configurations that specify the IP address and hostname of a registered container instance in Amazon Elastic Container Service (ECS)." mapping: ClassVar[Dict[str, Bender]] = {"hostname": S("hostname"), "ip_address": S("ipAddress")} hostname: Optional[str] = field(default=None) ip_address: Optional[str] = field(default=None) @@ -567,6 +619,8 @@ class AwsEcsHostEntry: @define(eq=False, slots=False) class AwsEcsUlimit: kind: ClassVar[str] = "aws_ecs_ulimit" + kind_display: ClassVar[str] = "AWS ECS Ulimit" + kind_description: ClassVar[str] = "ECS Ulimit is a resource limit configuration for Amazon Elastic Container Service (ECS) tasks, which allows users to set specific limits on various system resources such as the number of open files or maximum memory usage for each container." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "soft_limit": S("softLimit"), @@ -580,6 +634,8 @@ class AwsEcsUlimit: @define(eq=False, slots=False) class AwsEcsLogConfiguration: kind: ClassVar[str] = "aws_ecs_log_configuration" + kind_display: ClassVar[str] = "AWS ECS Log Configuration" + kind_description: ClassVar[str] = "ECS Log Configuration is a feature of Amazon Elastic Container Service that allows you to configure logging for your containerized applications and view the logs in various destinations such as CloudWatch Logs or Amazon S3." mapping: ClassVar[Dict[str, Bender]] = { "log_driver": S("logDriver"), "options": S("options"), @@ -593,6 +649,8 @@ class AwsEcsLogConfiguration: @define(eq=False, slots=False) class AwsEcsHealthCheck: kind: ClassVar[str] = "aws_ecs_health_check" + kind_display: ClassVar[str] = "AWS ECS Health Check" + kind_description: ClassVar[str] = "ECS Health Check is a feature of Amazon Elastic Container Service (ECS) that allows you to monitor the health of your containers by conducting periodic health checks and reporting the results." mapping: ClassVar[Dict[str, Bender]] = { "command": S("command", default=[]), "interval": S("interval"), @@ -610,6 +668,8 @@ class AwsEcsHealthCheck: @define(eq=False, slots=False) class AwsEcsSystemControl: kind: ClassVar[str] = "aws_ecs_system_control" + kind_display: ClassVar[str] = "AWS ECS System Control" + kind_description: ClassVar[str] = "ECS System Control is a service in AWS ECS (Elastic Container Service) that allows users to manage and control the deployment of containers on a cloud environment." mapping: ClassVar[Dict[str, Bender]] = {"namespace": S("namespace"), "value": S("value")} namespace: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -618,6 +678,8 @@ class AwsEcsSystemControl: @define(eq=False, slots=False) class AwsEcsFirelensConfiguration: kind: ClassVar[str] = "aws_ecs_firelens_configuration" + kind_display: ClassVar[str] = "AWS ECS FireLens Configuration" + kind_description: ClassVar[str] = "AWS ECS FireLens Configuration is a feature of Amazon Elastic Container Service (ECS) that allows you to collect, process, and route logs from your containers to different storage and analytics services." mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "options": S("options")} type: Optional[str] = field(default=None) options: Optional[Dict[str, str]] = field(default=None) @@ -626,6 +688,8 @@ class AwsEcsFirelensConfiguration: @define(eq=False, slots=False) class AwsEcsContainerDefinition: kind: ClassVar[str] = "aws_ecs_container_definition" + kind_display: ClassVar[str] = "AWS ECS Container Definition" + kind_description: ClassVar[str] = "ECS Container Definition is a configuration that defines how a container should be run within an Amazon ECS cluster. It includes details such as image, CPU and memory resources, environment variables, and networking settings." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "image": S("image"), @@ -711,6 +775,8 @@ class AwsEcsContainerDefinition: @define(eq=False, slots=False) class AwsEcsDockerVolumeConfiguration: kind: ClassVar[str] = "aws_ecs_docker_volume_configuration" + kind_display: ClassVar[str] = "AWS ECS Docker Volume Configuration" + kind_description: ClassVar[str] = "ECS Docker Volume Configuration is a feature in Amazon ECS (Elastic Container Service) that allows you to specify how Docker volumes should be configured for containers running in an ECS cluster." mapping: ClassVar[Dict[str, Bender]] = { "scope": S("scope"), "autoprovision": S("autoprovision"), @@ -728,6 +794,8 @@ class AwsEcsDockerVolumeConfiguration: @define(eq=False, slots=False) class AwsEcsEFSAuthorizationConfig: kind: ClassVar[str] = "aws_ecs_efs_authorization_config" + kind_display: ClassVar[str] = "AWS ECS EFS Authorization Config" + kind_description: ClassVar[str] = "ECS EFS Authorization Config is a feature in AWS ECS (Elastic Container Service) that allows fine-grained permission control for using Amazon EFS (Elastic File System) with ECS tasks." mapping: ClassVar[Dict[str, Bender]] = {"access_point_id": S("accessPointId"), "iam": S("iam")} access_point_id: Optional[str] = field(default=None) iam: Optional[str] = field(default=None) @@ -736,6 +804,8 @@ class AwsEcsEFSAuthorizationConfig: @define(eq=False, slots=False) class AwsEcsEFSVolumeConfiguration: kind: ClassVar[str] = "aws_ecs_efs_volume_configuration" + kind_display: ClassVar[str] = "AWS ECS EFS Volume Configuration" + kind_description: ClassVar[str] = "ECS EFS Volume Configuration is a feature in AWS Elastic Container Service (ECS) that allows you to configure volumes using Amazon Elastic File System (EFS) for storing persistent data in containers." mapping: ClassVar[Dict[str, Bender]] = { "file_system_id": S("fileSystemId"), "root_directory": S("rootDirectory"), @@ -753,6 +823,8 @@ class AwsEcsEFSVolumeConfiguration: @define(eq=False, slots=False) class AwsEcsFSxWindowsFileServerAuthorizationConfig: kind: ClassVar[str] = "aws_ecs_f_sx_windows_file_server_authorization_config" + kind_display: ClassVar[str] = "AWS ECS FSx Windows File Server Authorization Config" + kind_description: ClassVar[str] = "ECS FSx Windows File Server Authorization Config is a configuration resource in AWS Elastic Container Service (ECS) that allows secure access to an FSx for Windows File Server from ECS tasks running on Amazon EC2 instances." mapping: ClassVar[Dict[str, Bender]] = {"credentials_parameter": S("credentialsParameter"), "domain": S("domain")} credentials_parameter: Optional[str] = field(default=None) domain: Optional[str] = field(default=None) @@ -761,6 +833,8 @@ class AwsEcsFSxWindowsFileServerAuthorizationConfig: @define(eq=False, slots=False) class AwsEcsFSxWindowsFileServerVolumeConfiguration: kind: ClassVar[str] = "aws_ecs_f_sx_windows_file_server_volume_configuration" + kind_display: ClassVar[str] = "AWS ECS FSx Windows File Server Volume Configuration" + kind_description: ClassVar[str] = "FSx Windows File Server Volume Configuration provides persistent and scalable storage for ECS tasks running on Windows instances in Amazon's cloud." mapping: ClassVar[Dict[str, Bender]] = { "file_system_id": S("fileSystemId"), "root_directory": S("rootDirectory"), @@ -774,6 +848,8 @@ class AwsEcsFSxWindowsFileServerVolumeConfiguration: @define(eq=False, slots=False) class AwsEcsVolume: kind: ClassVar[str] = "aws_ecs_volume" + kind_display: ClassVar[str] = "AWS ECS Volume" + kind_description: ClassVar[str] = "ECS Volumes are persistent block storage devices that can be attached to Amazon ECS containers, providing data storage for applications running on the Amazon Elastic Container Service." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "host": S("host", "sourcePath"), @@ -794,6 +870,8 @@ class AwsEcsVolume: @define(eq=False, slots=False) class AwsEcsTaskDefinitionPlacementConstraint: kind: ClassVar[str] = "aws_ecs_task_definition_placement_constraint" + kind_display: ClassVar[str] = "AWS ECS Task Definition Placement Constraint" + kind_description: ClassVar[str] = "ECS Task Definition Placement Constraints are rules that specify the placement of tasks within an Amazon ECS cluster based on resource requirements or custom expressions." mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "expression": S("expression")} type: Optional[str] = field(default=None) expression: Optional[str] = field(default=None) @@ -802,6 +880,8 @@ class AwsEcsTaskDefinitionPlacementConstraint: @define(eq=False, slots=False) class AwsEcsRuntimePlatform: kind: ClassVar[str] = "aws_ecs_runtime_platform" + kind_display: ClassVar[str] = "AWS ECS Runtime Platform" + kind_description: ClassVar[str] = "The AWS ECS Runtime Platform is a container management service provided by Amazon Web Services, allowing users to easily run and scale containerized applications on AWS." mapping: ClassVar[Dict[str, Bender]] = { "cpu_architecture": S("cpuArchitecture"), "operating_system_family": S("operatingSystemFamily"), @@ -813,6 +893,8 @@ class AwsEcsRuntimePlatform: @define(eq=False, slots=False) class AwsEcsProxyConfiguration: kind: ClassVar[str] = "aws_ecs_proxy_configuration" + kind_display: ClassVar[str] = "AWS ECS Proxy Configuration" + kind_description: ClassVar[str] = "ECS Proxy Configuration is a feature in Amazon Elastic Container Service that allows for configuring the proxy settings for containers running in an ECS cluster." mapping: ClassVar[Dict[str, Bender]] = { "type": S("type"), "container_name": S("containerName"), @@ -826,6 +908,8 @@ class AwsEcsProxyConfiguration: @define(eq=False, slots=False) class AwsEcsTaskDefinition(EcsTaggable, AwsResource): kind: ClassVar[str] = "aws_ecs_task_definition" + kind_display: ClassVar[str] = "AWS ECS Task Definition" + kind_description: ClassVar[str] = "An ECS Task Definition is a blueprint for running tasks in AWS Elastic Container Service (ECS), providing information such as the Docker image, CPU, memory, network configuration, and other parameters." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-task-definitions", "taskDefinitionArns") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_iam_role"]}, @@ -934,6 +1018,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEcsLoadBalancer: kind: ClassVar[str] = "aws_ecs_load_balancer" + kind_display: ClassVar[str] = "AWS ECS Load Balancer" + kind_description: ClassVar[str] = "ECS Load Balancers are elastic load balancing services provided by AWS for distributing incoming traffic to multiple targets within an Amazon Elastic Container Service (ECS) cluster." mapping: ClassVar[Dict[str, Bender]] = { "target_group_arn": S("targetGroupArn"), "load_balancer_name": S("loadBalancerName"), @@ -949,6 +1035,8 @@ class AwsEcsLoadBalancer: @define(eq=False, slots=False) class AwsEcsServiceRegistry: kind: ClassVar[str] = "aws_ecs_service_registry" + kind_display: ClassVar[str] = "AWS ECS Service Registry" + kind_description: ClassVar[str] = "The AWS ECS Service Registry is a service provided by Amazon Web Services for managing the registry of services in ECS (Elastic Container Service) tasks and clusters." mapping: ClassVar[Dict[str, Bender]] = { "registry_arn": S("registryArn"), "port": S("port"), @@ -964,6 +1052,8 @@ class AwsEcsServiceRegistry: @define(eq=False, slots=False) class AwsEcsCapacityProviderStrategyItem: kind: ClassVar[str] = "aws_ecs_capacity_provider_strategy_item" + kind_display: ClassVar[str] = "AWS ECS Capacity Provider Strategy Item" + kind_description: ClassVar[str] = "ECS Capacity Provider Strategy Item is a configuration option used in Amazon Elastic Container Service (ECS) for managing the capacity of EC2 instances in an ECS cluster." mapping: ClassVar[Dict[str, Bender]] = { "capacity_provider": S("capacityProvider"), "weight": S("weight"), @@ -977,6 +1067,8 @@ class AwsEcsCapacityProviderStrategyItem: @define(eq=False, slots=False) class AwsEcsDeploymentCircuitBreaker: kind: ClassVar[str] = "aws_ecs_deployment_circuit_breaker" + kind_display: ClassVar[str] = "AWS ECS Deployment Circuit Breaker" + kind_description: ClassVar[str] = "Circuit Breaker is a feature in Amazon Elastic Container Service (ECS) that helps prevent application failures by stopping the deployment of a new version if it exceeds a specified error rate or latency threshold." mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "rollback": S("rollback")} enable: Optional[bool] = field(default=None) rollback: Optional[bool] = field(default=None) @@ -985,6 +1077,8 @@ class AwsEcsDeploymentCircuitBreaker: @define(eq=False, slots=False) class AwsEcsDeploymentConfiguration: kind: ClassVar[str] = "aws_ecs_deployment_configuration" + kind_display: ClassVar[str] = "AWS ECS Deployment Configuration" + kind_description: ClassVar[str] = "ECS Deployment Configurations are used to manage the deployment of containers in Amazon ECS, allowing users to specify various properties and settings for their container deployments." mapping: ClassVar[Dict[str, Bender]] = { "deployment_circuit_breaker": S("deploymentCircuitBreaker") >> Bend(AwsEcsDeploymentCircuitBreaker.mapping), "maximum_percent": S("maximumPercent"), @@ -998,6 +1092,8 @@ class AwsEcsDeploymentConfiguration: @define(eq=False, slots=False) class AwsEcsAwsVpcConfiguration: kind: ClassVar[str] = "aws_ecs_aws_vpc_configuration" + kind_display: ClassVar[str] = "AWS ECS AWS VPC Configuration" + kind_description: ClassVar[str] = "ECS AWS VPC Configuration is a configuration setting for Amazon Elastic Container Service (ECS) that allows you to specify the virtual private cloud (VPC) configuration for your ECS tasks and services." mapping: ClassVar[Dict[str, Bender]] = { "subnets": S("subnets", default=[]), "security_groups": S("securityGroups", default=[]), @@ -1011,6 +1107,8 @@ class AwsEcsAwsVpcConfiguration: @define(eq=False, slots=False) class AwsEcsNetworkConfiguration: kind: ClassVar[str] = "aws_ecs_network_configuration" + kind_display: ClassVar[str] = "AWS ECS Network Configuration" + kind_description: ClassVar[str] = "ECS Network Configuration is a feature in Amazon Elastic Container Service (ECS) that allows users to configure networking settings for their containerized applications running on ECS. It includes specifications for the VPC, subnet, security groups, and other network resources." mapping: ClassVar[Dict[str, Bender]] = { "awsvpc_configuration": S("awsvpcConfiguration") >> Bend(AwsEcsAwsVpcConfiguration.mapping) } @@ -1020,6 +1118,8 @@ class AwsEcsNetworkConfiguration: @define(eq=False, slots=False) class AwsEcsScale: kind: ClassVar[str] = "aws_ecs_scale" + kind_display: ClassVar[str] = "AWS ECS Scale" + kind_description: ClassVar[str] = "ECS Scale is a feature in AWS Elastic Container Service (ECS) that allows you to automatically scale the number of containers running in a cluster based on application load and resource utilization." mapping: ClassVar[Dict[str, Bender]] = {"value": S("value"), "unit": S("unit")} value: Optional[float] = field(default=None) unit: Optional[str] = field(default=None) @@ -1028,6 +1128,8 @@ class AwsEcsScale: @define(eq=False, slots=False) class AwsEcsTaskSet: kind: ClassVar[str] = "aws_ecs_task_set" + kind_display: ClassVar[str] = "AWS ECS Task Set" + kind_description: ClassVar[str] = "ECS Task Sets are a way to manage multiple versions of a task definition in Amazon ECS, allowing users to create and manage a set of tasks running in a service." mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "task_set_arn": S("taskSetArn"), @@ -1082,6 +1184,8 @@ class AwsEcsTaskSet: @define(eq=False, slots=False) class AwsEcsDeployment: kind: ClassVar[str] = "aws_ecs_deployment" + kind_display: ClassVar[str] = "AWS ECS Deployment" + kind_description: ClassVar[str] = "ECS (Elastic Container Service) Deployment is a service provided by AWS that allows you to run and manage Docker containers on a cluster of EC2 instances." mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "status": S("status"), @@ -1122,6 +1226,8 @@ class AwsEcsDeployment: @define(eq=False, slots=False) class AwsEcsServiceEvent: kind: ClassVar[str] = "aws_ecs_service_event" + kind_display: ClassVar[str] = "AWS ECS Service Event" + kind_description: ClassVar[str] = "ECS service events are used to monitor and track changes in the state of Amazon Elastic Container Service (ECS) services, such as task placement or service scaling events." mapping: ClassVar[Dict[str, Bender]] = {"id": S("id"), "created_at": S("createdAt"), "message": S("message")} id: Optional[str] = field(default=None) created_at: Optional[datetime] = field(default=None) @@ -1131,6 +1237,8 @@ class AwsEcsServiceEvent: @define(eq=False, slots=False) class AwsEcsPlacementConstraint: kind: ClassVar[str] = "aws_ecs_placement_constraint" + kind_display: ClassVar[str] = "AWS ECS Placement Constraint" + kind_description: ClassVar[str] = "ECS Placement Constraints are rules used to define where tasks or services can be placed within an Amazon ECS cluster, based on attributes such as instance type, availability zone, or custom metadata." mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "expression": S("expression")} type: Optional[str] = field(default=None) expression: Optional[str] = field(default=None) @@ -1139,6 +1247,8 @@ class AwsEcsPlacementConstraint: @define(eq=False, slots=False) class AwsEcsPlacementStrategy: kind: ClassVar[str] = "aws_ecs_placement_strategy" + kind_display: ClassVar[str] = "AWS ECS Placement Strategy" + kind_description: ClassVar[str] = "ECS Placement Strategies help you define how tasks in Amazon Elastic Container Service (ECS) are placed on container instances within a cluster, taking into consideration factors like instance attributes, availability zones, and task resource requirements." mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "field": S("field")} type: Optional[str] = field(default=None) field: Optional[str] = field(default=None) @@ -1148,6 +1258,8 @@ class AwsEcsPlacementStrategy: class AwsEcsService(EcsTaggable, AwsResource): # collection of service resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_service" + kind_display: ClassVar[str] = "AWS ECS Service" + kind_description: ClassVar[str] = "ECS (Elastic Container Service) is a scalable container orchestration service provided by AWS, allowing users to easily manage, deploy, and scale containerized applications." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_subnet", "aws_ec2_security_group"], @@ -1347,6 +1459,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEcsVersionInfo: kind: ClassVar[str] = "aws_ecs_version_info" + kind_display: ClassVar[str] = "AWS ECS Version Info" + kind_description: ClassVar[str] = "ECS Version Info provides information about the different versions of Amazon Elastic Container Service (ECS) available in the AWS cloud." mapping: ClassVar[Dict[str, Bender]] = { "agent_version": S("agentVersion"), "agent_hash": S("agentHash"), @@ -1360,6 +1474,8 @@ class AwsEcsVersionInfo: @define(eq=False, slots=False) class AwsEcsResource: kind: ClassVar[str] = "aws_ecs_resource" + kind_display: ClassVar[str] = "AWS ECS Resource" + kind_description: ClassVar[str] = "ECS Resources are computing resources that can be used in Amazon Elastic Container Service (ECS) to deploy and run containerized applications." mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "type": S("type"), @@ -1379,6 +1495,8 @@ class AwsEcsResource: @define(eq=False, slots=False) class AwsEcsInstanceHealthCheckResult: kind: ClassVar[str] = "aws_ecs_instance_health_check_result" + kind_display: ClassVar[str] = "AWS ECS Instance Health Check Result" + kind_description: ClassVar[str] = "ECS Instance Health Check Result is the outcome of the health check performed on an Amazon ECS instance, indicating whether the instance is healthy or not." mapping: ClassVar[Dict[str, Bender]] = { "type": S("type"), "status": S("status"), @@ -1394,6 +1512,8 @@ class AwsEcsInstanceHealthCheckResult: @define(eq=False, slots=False) class AwsEcsContainerInstanceHealthStatus: kind: ClassVar[str] = "aws_ecs_container_instance_health_status" + kind_display: ClassVar[str] = "AWS ECS Container Instance Health Status" + kind_description: ClassVar[str] = "ECS Container Instance Health Status represents the health status of a container instance in Amazon ECS (Elastic Container Service). It indicates whether the container instance is healthy or not based on the reported health status of the underlying resources." mapping: ClassVar[Dict[str, Bender]] = { "overall_status": S("overallStatus"), "details": S("details", default=[]) >> ForallBend(AwsEcsInstanceHealthCheckResult.mapping), @@ -1406,6 +1526,8 @@ class AwsEcsContainerInstanceHealthStatus: class AwsEcsContainerInstance(EcsTaggable, AwsResource): # collection of container instance resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_container_instance" + kind_display: ClassVar[str] = "AWS ECS Container Instance" + kind_description: ClassVar[str] = "ECS Container Instances are virtual servers in Amazon's Elastic Container Service (ECS) that are used to run and manage containers within the ECS environment." reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_ec2_instance"], "delete": ["aws_ec2_instance"]}, } @@ -1471,6 +1593,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEcsExecuteCommandLogConfiguration: kind: ClassVar[str] = "aws_ecs_execute_command_log_configuration" + kind_display: ClassVar[str] = "AWS ECS Execute Command Log Configuration" + kind_description: ClassVar[str] = "ECS Execute Command Log Configuration is used to configure the logging for Execute Command feature in Amazon Elastic Container Service (ECS)." mapping: ClassVar[Dict[str, Bender]] = { "cloud_watch_log_group_name": S("cloudWatchLogGroupName"), "cloud_watch_encryption_enabled": S("cloudWatchEncryptionEnabled"), @@ -1488,6 +1612,8 @@ class AwsEcsExecuteCommandLogConfiguration: @define(eq=False, slots=False) class AwsEcsExecuteCommandConfiguration: kind: ClassVar[str] = "aws_ecs_execute_command_configuration" + kind_display: ClassVar[str] = "AWS ECS Execute Command Configuration" + kind_description: ClassVar[str] = "ECS Execute Command Configuration is a feature in AWS ECS that allows users to run commands on their ECS containers for debugging and troubleshooting purposes." mapping: ClassVar[Dict[str, Bender]] = { "kms_key_id": S("kmsKeyId"), "logging": S("logging"), @@ -1501,6 +1627,8 @@ class AwsEcsExecuteCommandConfiguration: @define(eq=False, slots=False) class AwsEcsClusterConfiguration: kind: ClassVar[str] = "aws_ecs_cluster_configuration" + kind_display: ClassVar[str] = "AWS ECS Cluster Configuration" + kind_description: ClassVar[str] = "ECS Cluster Configuration is a service provided by Amazon Web Services that allows users to define and configure a cluster of container instances using Amazon Elastic Container Service (ECS). It enables the management and orchestration of containerized applications in a scalable and highly available manner." mapping: ClassVar[Dict[str, Bender]] = { "execute_command_configuration": S("executeCommandConfiguration") >> Bend(AwsEcsExecuteCommandConfiguration.mapping) @@ -1511,6 +1639,8 @@ class AwsEcsClusterConfiguration: @define(eq=False, slots=False) class AwsEcsClusterSetting: kind: ClassVar[str] = "aws_ecs_cluster_setting" + kind_display: ClassVar[str] = "AWS ECS Cluster Setting" + kind_description: ClassVar[str] = "ECS Cluster Settings are configurations that define the properties and behavior of an Amazon ECS cluster, allowing users to customize and manage their containerized applications efficiently." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1519,6 +1649,8 @@ class AwsEcsClusterSetting: @define(eq=False, slots=False) class AwsEcsCluster(EcsTaggable, AwsResource): kind: ClassVar[str] = "aws_ecs_cluster" + kind_display: ClassVar[str] = "AWS ECS Cluster" + kind_description: ClassVar[str] = "ECS (Elastic Container Service) Cluster is a managed cluster of Amazon EC2 instances used to deploy and manage Docker containers." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-clusters", "clusterArns") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_kms_key", "aws_s3_bucket"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/efs.py b/plugins/aws/resoto_plugin_aws/resource/efs.py index bb4d20d12c..04febb0458 100644 --- a/plugins/aws/resoto_plugin_aws/resource/efs.py +++ b/plugins/aws/resoto_plugin_aws/resource/efs.py @@ -47,6 +47,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEfsMountTarget(AwsResource): kind: ClassVar[str] = "aws_efs_mount_target" + kind_display: ClassVar[str] = "AWS EFS Mount Target" + kind_description: ClassVar[str] = "EFS Mount Targets are endpoints in Amazon's Elastic File System that allow EC2 instances to mount the file system and access the shared data." mapping: ClassVar[Dict[str, Bender]] = { "id": S("MountTargetId"), "owner_id": S("OwnerId"), @@ -68,6 +70,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsEfsFileSystem(EfsTaggable, AwsResource, BaseNetworkShare): kind: ClassVar[str] = "aws_efs_file_system" + kind_display: ClassVar[str] = "AWS EFS File System" + kind_description: ClassVar[str] = "EFS (Elastic File System) provides a scalable and fully managed file storage service for Amazon EC2 instances." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-file-systems", @@ -143,6 +147,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEfsPosixUser: kind: ClassVar[str] = "aws_efs_posix_user" + kind_display: ClassVar[str] = "AWS EFS POSIX User" + kind_description: ClassVar[str] = "EFS POSIX Users are user accounts that can be used to access and manage files in Amazon Elastic File System (EFS) using POSIX permissions." mapping: ClassVar[Dict[str, Bender]] = { "uid": S("Uid"), "gid": S("Gid"), @@ -156,6 +162,8 @@ class AwsEfsPosixUser: @define(eq=False, slots=False) class AwsEfsCreationInfo: kind: ClassVar[str] = "aws_efs_creation_info" + kind_display: ClassVar[str] = "AWS EFS Creation Info" + kind_description: ClassVar[str] = "EFS Creation Info is a parameter used in AWS to provide information for creating an Amazon Elastic File System (EFS) resource." mapping: ClassVar[Dict[str, Bender]] = { "owner_uid": S("OwnerUid"), "owner_gid": S("OwnerGid"), @@ -169,6 +177,8 @@ class AwsEfsCreationInfo: @define(eq=False, slots=False) class AwsEfsRootDirectory: kind: ClassVar[str] = "aws_efs_root_directory" + kind_display: ClassVar[str] = "AWS EFS Root Directory" + kind_description: ClassVar[str] = "The root directory of an Amazon Elastic File System (EFS) provides a common entry point for accessing all files and directories within the file system." mapping: ClassVar[Dict[str, Bender]] = { "path": S("Path"), "creation_info": S("CreationInfo") >> Bend(AwsEfsCreationInfo.mapping), @@ -180,6 +190,8 @@ class AwsEfsRootDirectory: @define(eq=False, slots=False) class AwsEfsAccessPoint(AwsResource, EfsTaggable): kind: ClassVar[str] = "aws_efs_access_point" + kind_display: ClassVar[str] = "AWS EFS Access Point" + kind_description: ClassVar[str] = "AWS EFS Access Point is a way to securely access files in Amazon EFS (Elastic File System) using a unique hostname and optional path, providing fine-grained access control." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-access-points", diff --git a/plugins/aws/resoto_plugin_aws/resource/eks.py b/plugins/aws/resoto_plugin_aws/resource/eks.py index 17c58f7fac..3f688ef4d2 100644 --- a/plugins/aws/resoto_plugin_aws/resource/eks.py +++ b/plugins/aws/resoto_plugin_aws/resource/eks.py @@ -57,6 +57,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsEksNodegroupScalingConfig: kind: ClassVar[str] = "aws_eks_nodegroup_scaling_config" + kind_display: ClassVar[str] = "AWS EKS Nodegroup Scaling Config" + kind_description: ClassVar[str] = "EKS Nodegroup Scaling Config is a configuration for Amazon Elastic Kubernetes Service (EKS) nodegroups that allows you to customize the scaling behavior of your worker nodes in an EKS cluster." mapping: ClassVar[Dict[str, Bender]] = { "min_size": S("minSize"), "max_size": S("maxSize"), @@ -70,6 +72,8 @@ class AwsEksNodegroupScalingConfig: @define(eq=False, slots=False) class AwsEksRemoteAccessConfig: kind: ClassVar[str] = "aws_eks_remote_access_config" + kind_display: ClassVar[str] = "AWS EKS Remote Access Config" + kind_description: ClassVar[str] = "AWS EKS Remote Access Config is a configuration resource for managing remote access to Amazon Elastic Kubernetes Service (EKS) clusters, allowing users to securely connect and administer their EKS clusters from remote locations." mapping: ClassVar[Dict[str, Bender]] = { "ec2_ssh_key": S("ec2SshKey"), "source_security_groups": S("sourceSecurityGroups", default=[]), @@ -81,6 +85,8 @@ class AwsEksRemoteAccessConfig: @define(eq=False, slots=False) class AwsEksTaint: kind: ClassVar[str] = "aws_eks_taint" + kind_display: ClassVar[str] = "AWS EKS Taint" + kind_description: ClassVar[str] = "EKS Taints are used in Amazon Elastic Kubernetes Service (EKS) to mark nodes as unschedulable for certain pods, preventing them from being deployed on those nodes." mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "value": S("value"), "effect": S("effect")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -90,6 +96,8 @@ class AwsEksTaint: @define(eq=False, slots=False) class AwsEksNodegroupResources: kind: ClassVar[str] = "aws_eks_nodegroup_resources" + kind_display: ClassVar[str] = "AWS EKS Nodegroup Resources" + kind_description: ClassVar[str] = "EKS Nodegroup Resources are worker nodes managed by the Amazon Elastic Kubernetes Service (EKS) to run applications on Kubernetes clusters." mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_groups": S("autoScalingGroups", default=[]) >> ForallBend(S("name")), "remote_access_security_group": S("remoteAccessSecurityGroup"), @@ -101,6 +109,8 @@ class AwsEksNodegroupResources: @define(eq=False, slots=False) class AwsEksIssue: kind: ClassVar[str] = "aws_eks_issue" + kind_display: ClassVar[str] = "AWS EKS Issue" + kind_description: ClassVar[str] = "An issue related to Amazon Elastic Kubernetes Service (EKS), a managed service that simplifies the deployment, management, and scaling of containerized applications using Kubernetes." mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "message": S("message"), @@ -114,6 +124,8 @@ class AwsEksIssue: @define(eq=False, slots=False) class AwsEksNodegroupHealth: kind: ClassVar[str] = "aws_eks_nodegroup_health" + kind_display: ClassVar[str] = "AWS EKS Nodegroup Health" + kind_description: ClassVar[str] = "EKS Nodegroup Health is a feature in AWS Elastic Kubernetes Service that provides information about the health of nodegroups in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = {"issues": S("issues", default=[]) >> ForallBend(AwsEksIssue.mapping)} issues: List[AwsEksIssue] = field(factory=list) @@ -121,6 +133,8 @@ class AwsEksNodegroupHealth: @define(eq=False, slots=False) class AwsEksNodegroupUpdateConfig: kind: ClassVar[str] = "aws_eks_nodegroup_update_config" + kind_display: ClassVar[str] = "AWS EKS Nodegroup Update Config" + kind_description: ClassVar[str] = "This resource represents the configuration for updating an Amazon Elastic Kubernetes Service (EKS) nodegroup in AWS. EKS is a managed service that makes it easy to run Kubernetes on AWS." mapping: ClassVar[Dict[str, Bender]] = { "max_unavailable": S("maxUnavailable"), "max_unavailable_percentage": S("maxUnavailablePercentage"), @@ -132,6 +146,8 @@ class AwsEksNodegroupUpdateConfig: @define(eq=False, slots=False) class AwsEksLaunchTemplateSpecification: kind: ClassVar[str] = "aws_eks_launch_template_specification" + kind_display: ClassVar[str] = "AWS EKS Launch Template Specification" + kind_description: ClassVar[str] = "EKS Launch Template Specification refers to a configuration template used to provision Amazon Elastic Kubernetes Service (EKS) clusters with pre-configured instances." mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "version": S("version"), "id": S("id")} name: Optional[str] = field(default=None) version: Optional[str] = field(default=None) @@ -142,6 +158,8 @@ class AwsEksLaunchTemplateSpecification: class AwsEksNodegroup(EKSTaggable, AwsResource): # Note: this resource is collected via AwsEksCluster kind: ClassVar[str] = "aws_eks_nodegroup" + kind_display: ClassVar[str] = "AWS EKS Nodegroup" + kind_description: ClassVar[str] = "An EKS Nodegroup is a set of EC2 instances that host containerized applications and run Kubernetes pods in Amazon Elastic Kubernetes Service (EKS) cluster." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_eks_cluster"], "delete": ["aws_eks_cluster", "aws_autoscaling_group"]}, "successors": {"default": ["aws_autoscaling_group"]}, @@ -220,6 +238,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsEksVpcConfigResponse: kind: ClassVar[str] = "aws_eks_vpc_config_response" + kind_display: ClassVar[str] = "AWS EKS VPC Config Response" + kind_description: ClassVar[str] = "The AWS EKS VPC Config Response is a response object that contains the configuration details of the Amazon Virtual Private Cloud (VPC) used by the Amazon Elastic Kubernetes Service (EKS)." mapping: ClassVar[Dict[str, Bender]] = { "subnet_ids": S("subnetIds", default=[]), "security_group_ids": S("securityGroupIds", default=[]), @@ -241,6 +261,8 @@ class AwsEksVpcConfigResponse: @define(eq=False, slots=False) class AwsEksKubernetesNetworkConfigResponse: kind: ClassVar[str] = "aws_eks_kubernetes_network_config_response" + kind_display: ClassVar[str] = "AWS EKS Kubernetes Network Config Response" + kind_description: ClassVar[str] = "The AWS EKS Kubernetes Network Config Response is the network configuration response received from the Amazon Elastic Kubernetes Service (EKS), which provides managed Kubernetes infrastructure in the AWS cloud." mapping: ClassVar[Dict[str, Bender]] = { "service_ipv4_cidr": S("serviceIpv4Cidr"), "service_ipv6_cidr": S("serviceIpv6Cidr"), @@ -254,6 +276,8 @@ class AwsEksKubernetesNetworkConfigResponse: @define(eq=False, slots=False) class AwsEksLogSetup: kind: ClassVar[str] = "aws_eks_log_setup" + kind_display: ClassVar[str] = "AWS EKS Log Setup" + kind_description: ClassVar[str] = "AWS EKS Log Setup is a feature that enables the logging of Kubernetes cluster control plane logs to an Amazon CloudWatch Logs group for easy monitoring and troubleshooting." mapping: ClassVar[Dict[str, Bender]] = {"types": S("types", default=[]), "enabled": S("enabled")} types: List[str] = field(factory=list) enabled: Optional[bool] = field(default=None) @@ -262,6 +286,8 @@ class AwsEksLogSetup: @define(eq=False, slots=False) class AwsEksLogging: kind: ClassVar[str] = "aws_eks_logging" + kind_display: ClassVar[str] = "AWS EKS Logging" + kind_description: ClassVar[str] = "EKS Logging is a feature of Amazon Elastic Kubernetes Service that allows you to capture and store logs generated by containers running in your Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "cluster_logging": S("clusterLogging", default=[]) >> ForallBend(AwsEksLogSetup.mapping) } @@ -271,6 +297,8 @@ class AwsEksLogging: @define(eq=False, slots=False) class AwsEksIdentity: kind: ClassVar[str] = "aws_eks_identity" + kind_display: ClassVar[str] = "AWS EKS Identity" + kind_description: ClassVar[str] = "EKS Identity allows you to securely authenticate with and access resources in Amazon Elastic Kubernetes Service (EKS) clusters using AWS Identity and Access Management (IAM) roles." mapping: ClassVar[Dict[str, Bender]] = {"oidc": S("oidc", "issuer")} oidc: Optional[str] = field(default=None) @@ -278,6 +306,8 @@ class AwsEksIdentity: @define(eq=False, slots=False) class AwsEksEncryptionConfig: kind: ClassVar[str] = "aws_eks_encryption_config" + kind_display: ClassVar[str] = "AWS EKS Encryption Config" + kind_description: ClassVar[str] = "EKS Encryption Config is a feature in Amazon Elastic Kubernetes Service that allows users to configure encryption settings for their Kubernetes cluster resources." mapping: ClassVar[Dict[str, Bender]] = { "resources": S("resources", default=[]), "provider": S("provider", "keyArn"), @@ -289,6 +319,8 @@ class AwsEksEncryptionConfig: @define(eq=False, slots=False) class AwsEksConnectorConfig: kind: ClassVar[str] = "aws_eks_connector_config" + kind_display: ClassVar[str] = "AWS EKS Connector Config" + kind_description: ClassVar[str] = "The AWS EKS Connector Config is used to configure the connection between a Kubernetes cluster in Amazon EKS and external resources or services." mapping: ClassVar[Dict[str, Bender]] = { "activation_id": S("activationId"), "activation_code": S("activationCode"), @@ -306,6 +338,8 @@ class AwsEksConnectorConfig: @define(eq=False, slots=False) class AwsEksCluster(EKSTaggable, AwsResource): kind: ClassVar[str] = "aws_eks_cluster" + kind_display: ClassVar[str] = "AWS EKS Cluster" + kind_description: ClassVar[str] = "Amazon Elastic Kubernetes Service (EKS) Cluster is a managed Kubernetes service provided by AWS for running containerized applications using Kubernetes." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-clusters", "clusters") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/elasticache.py b/plugins/aws/resoto_plugin_aws/resource/elasticache.py index 1c0f20e6bd..1d50be3c7c 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elasticache.py +++ b/plugins/aws/resoto_plugin_aws/resource/elasticache.py @@ -55,6 +55,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsElastiCacheEndpoint: kind: ClassVar[str] = "aws_elasticache_endpoint" + kind_display: ClassVar[str] = "AWS ElastiCache Endpoint" + kind_description: ClassVar[str] = "ElastiCache is a web service that makes it easy to deploy, operate, and scale an in-memory cache in the cloud. The Elasticache endpoint refers to the endpoint URL that is used to connect to the ElastiCache cluster." mapping: ClassVar[Dict[str, Bender]] = {"address": S("Address"), "port": S("Port")} address: Optional[str] = field(default=None) port: Optional[int] = field(default=None) @@ -63,6 +65,8 @@ class AwsElastiCacheEndpoint: @define(eq=False, slots=False) class AwsElastiCacheDestinationDetails: kind: ClassVar[str] = "aws_elasticache_destination_details" + kind_display: ClassVar[str] = "AWS ElastiCache Destination Details" + kind_description: ClassVar[str] = "ElastiCache is a web service that makes it easy to deploy, operate, and scale an in-memory cache in the cloud. The AWS ElastiCache Destination Details provide information about the destination of caching in an ElastiCache cluster." mapping: ClassVar[Dict[str, Bender]] = { "cloud_watch_logs_details": S("CloudWatchLogsDetails", "LogGroup"), "kinesis_firehose_details": S("KinesisFirehoseDetails", "DeliveryStream"), @@ -74,6 +78,8 @@ class AwsElastiCacheDestinationDetails: @define(eq=False, slots=False) class AwsElastiCachePendingLogDeliveryConfiguration: kind: ClassVar[str] = "aws_elasticache_pending_log_delivery_configuration" + kind_display: ClassVar[str] = "AWS ElastiCache Pending Log Delivery Configuration" + kind_description: ClassVar[str] = "ElastiCache Pending Log Delivery Configuration is a feature that allows users to view information on the status of log delivery for automatic backups in Amazon ElastiCache." mapping: ClassVar[Dict[str, Bender]] = { "log_type": S("LogType"), "destination_type": S("DestinationType"), @@ -89,6 +95,8 @@ class AwsElastiCachePendingLogDeliveryConfiguration: @define(eq=False, slots=False) class AwsElastiCachePendingModifiedValues: kind: ClassVar[str] = "aws_elasticache_pending_modified_values" + kind_display: ClassVar[str] = "AWS ElastiCache Pending Modified Values" + kind_description: ClassVar[str] = "ElastiCache Pending Modified Values is a feature in Amazon ElastiCache, which allows users to view the configuration modifications that are waiting to be applied to a cache cluster." mapping: ClassVar[Dict[str, Bender]] = { "num_cache_nodes": S("NumCacheNodes"), "cache_node_ids_to_remove": S("CacheNodeIdsToRemove", default=[]), @@ -109,6 +117,8 @@ class AwsElastiCachePendingModifiedValues: @define(eq=False, slots=False) class AwsElastiCacheNotificationConfiguration: kind: ClassVar[str] = "aws_elasticache_notification_configuration" + kind_display: ClassVar[str] = "AWS ElastiCache Notification Configuration" + kind_description: ClassVar[str] = "ElastiCache Notification Configuration allows users to configure notifications for events occurring in Amazon ElastiCache, such as failures or scaling events." mapping: ClassVar[Dict[str, Bender]] = {"topic_arn": S("TopicArn"), "topic_status": S("TopicStatus")} topic_arn: Optional[str] = field(default=None) topic_status: Optional[str] = field(default=None) @@ -117,6 +127,8 @@ class AwsElastiCacheNotificationConfiguration: @define(eq=False, slots=False) class AwsElastiCacheCacheSecurityGroupMembership: kind: ClassVar[str] = "aws_elasticache_cache_security_group_membership" + kind_display: ClassVar[str] = "AWS ElastiCache Cache Security Group Membership" + kind_description: ClassVar[str] = "ElastiCache Cache Security Group Membership allows you to control access to your ElastiCache resources by managing the cache security group memberships." mapping: ClassVar[Dict[str, Bender]] = { "cache_security_group_name": S("CacheSecurityGroupName"), "status": S("Status"), @@ -128,6 +140,8 @@ class AwsElastiCacheCacheSecurityGroupMembership: @define(eq=False, slots=False) class AwsElastiCacheCacheParameterGroupStatus: kind: ClassVar[str] = "aws_elasticache_cache_parameter_group_status" + kind_display: ClassVar[str] = "AWS Elasticache Cache Parameter Group Status" + kind_description: ClassVar[str] = "AWS Elasticache Cache Parameter Group Status represents the current status of a cache parameter group in AWS Elasticache. It provides information about the configuration settings that control the behavior of the cache cluster." mapping: ClassVar[Dict[str, Bender]] = { "cache_parameter_group_name": S("CacheParameterGroupName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -141,6 +155,8 @@ class AwsElastiCacheCacheParameterGroupStatus: @define(eq=False, slots=False) class AwsElastiCacheCacheNode: kind: ClassVar[str] = "aws_elasticache_cache_node" + kind_display: ClassVar[str] = "AWS ElastiCache Cache Node" + kind_description: ClassVar[str] = "ElastiCache Cache Nodes are the compute resources in AWS ElastiCache used for running an in-memory caching system, such as Redis or Memcached, to improve application performance." mapping: ClassVar[Dict[str, Bender]] = { "cache_node_id": S("CacheNodeId"), "cache_node_status": S("CacheNodeStatus"), @@ -164,6 +180,8 @@ class AwsElastiCacheCacheNode: @define(eq=False, slots=False) class AwsElastiCacheSecurityGroupMembership: kind: ClassVar[str] = "aws_elasticache_security_group_membership" + kind_display: ClassVar[str] = "AWS ElastiCache Security Group Membership" + kind_description: ClassVar[str] = "ElastiCache Security Group Membership allows you to control access to your ElastiCache clusters by specifying the source IP ranges or security groups that are allowed to connect to them." mapping: ClassVar[Dict[str, Bender]] = {"security_group_id": S("SecurityGroupId"), "status": S("Status")} security_group_id: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -172,6 +190,8 @@ class AwsElastiCacheSecurityGroupMembership: @define(eq=False, slots=False) class AwsElastiCacheLogDeliveryConfiguration: kind: ClassVar[str] = "aws_elasticache_log_delivery_configuration" + kind_display: ClassVar[str] = "AWS ElastiCache Log Delivery Configuration" + kind_description: ClassVar[str] = "ElastiCache Log Delivery Configuration allows you to configure the delivery of logs generated by Amazon ElastiCache to an Amazon S3 bucket, enabling you to collect, monitor, and analyze logs for troubleshooting and auditing purposes." mapping: ClassVar[Dict[str, Bender]] = { "log_type": S("LogType"), "destination_type": S("DestinationType"), @@ -191,6 +211,8 @@ class AwsElastiCacheLogDeliveryConfiguration: @define(eq=False, slots=False) class AwsElastiCacheCacheCluster(ElastiCacheTaggable, AwsResource): kind: ClassVar[str] = "aws_elasticache_cache_cluster" + kind_display: ClassVar[str] = "AWS ElastiCache Cache Cluster" + kind_description: ClassVar[str] = "ElastiCache is a web service that makes it easy to set up, manage, and scale a distributed in-memory cache environment in the cloud. A cache cluster is a collection of one or more cache nodes that work together to provide a highly scalable and available cache solution." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_ec2_security_group"], @@ -312,6 +334,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsElastiCacheGlobalReplicationGroupInfo: kind: ClassVar[str] = "aws_elasticache_global_replication_group_info" + kind_display: ClassVar[str] = "AWS ElastiCache Global Replication Group Info" + kind_description: ClassVar[str] = "ElastiCache Global Replication Group Info provides information about a global replication group in Amazon ElastiCache, which enables automatic and fast cross-regional data replication for caching purposes." mapping: ClassVar[Dict[str, Bender]] = { "global_replication_group_id": S("GlobalReplicationGroupId"), "global_replication_group_member_role": S("GlobalReplicationGroupMemberRole"), @@ -323,6 +347,8 @@ class AwsElastiCacheGlobalReplicationGroupInfo: @define(eq=False, slots=False) class AwsElastiCacheReshardingStatus: kind: ClassVar[str] = "aws_elasticache_resharding_status" + kind_display: ClassVar[str] = "AWS ElastiCache Resharding Status" + kind_description: ClassVar[str] = "ElastiCache resharding status provides information about the status of the data resharding process in AWS ElastiCache, which is a fully managed in-memory data store service for caching frequently accessed data." mapping: ClassVar[Dict[str, Bender]] = {"slot_migration": S("SlotMigration", "ProgressPercentage")} slot_migration: Optional[float] = field(default=None) @@ -330,6 +356,8 @@ class AwsElastiCacheReshardingStatus: @define(eq=False, slots=False) class AwsElastiCacheUserGroupsUpdateStatus: kind: ClassVar[str] = "aws_elasticache_user_groups_update_status" + kind_display: ClassVar[str] = "AWS ElastiCache User Groups Update Status" + kind_description: ClassVar[str] = "This resource represents the status of updating user groups in AWS ElastiCache. User groups in ElastiCache are used to manage user access to Redis or Memcached clusters." mapping: ClassVar[Dict[str, Bender]] = { "user_group_ids_to_add": S("UserGroupIdsToAdd", default=[]), "user_group_ids_to_remove": S("UserGroupIdsToRemove", default=[]), @@ -341,6 +369,8 @@ class AwsElastiCacheUserGroupsUpdateStatus: @define(eq=False, slots=False) class AwsElastiCacheReplicationGroupPendingModifiedValues: kind: ClassVar[str] = "aws_elasticache_replication_group_pending_modified_values" + kind_display: ClassVar[str] = "AWS ElastiCache Replication Group Pending Modified Values" + kind_description: ClassVar[str] = "ElastiCache Replication Group Pending Modified Values is a feature in AWS ElastiCache that shows the modified values for a replication group that are in the process of being applied." mapping: ClassVar[Dict[str, Bender]] = { "primary_cluster_id": S("PrimaryClusterId"), "automatic_failover_status": S("AutomaticFailoverStatus"), @@ -361,6 +391,8 @@ class AwsElastiCacheReplicationGroupPendingModifiedValues: @define(eq=False, slots=False) class AwsElastiCacheNodeGroupMember: kind: ClassVar[str] = "aws_elasticache_node_group_member" + kind_display: ClassVar[str] = "AWS ElastiCache Node Group Member" + kind_description: ClassVar[str] = "ElastiCache Node Group Members are individual cache nodes within a node group in AWS ElastiCache, providing in-memory caching for faster performance of applications." mapping: ClassVar[Dict[str, Bender]] = { "cache_cluster_id": S("CacheClusterId"), "cache_node_id": S("CacheNodeId"), @@ -380,6 +412,8 @@ class AwsElastiCacheNodeGroupMember: @define(eq=False, slots=False) class AwsElastiCacheNodeGroup: kind: ClassVar[str] = "aws_elasticache_node_group" + kind_display: ClassVar[str] = "AWS ElastiCache Node Group" + kind_description: ClassVar[str] = "ElastiCache Node Group is a feature in AWS ElastiCache that allows you to scale out horizontally by adding multiple cache nodes to a cache cluster. It improves performance and provides high availability for caching data in your applications." mapping: ClassVar[Dict[str, Bender]] = { "node_group_id": S("NodeGroupId"), "status": S("Status"), @@ -399,6 +433,8 @@ class AwsElastiCacheNodeGroup: @define(eq=False, slots=False) class AwsElastiCacheReplicationGroup(ElastiCacheTaggable, AwsResource): kind: ClassVar[str] = "aws_elasticache_replication_group" + kind_display: ClassVar[str] = "AWS ElastiCache Replication Group" + kind_description: ClassVar[str] = "ElastiCache Replication Groups in AWS are used to store and retrieve data in memory to improve the performance of web applications and reduce the load on databases." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-replication-groups", "ReplicationGroups") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_elasticache_cache_cluster", "aws_kms_key"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py b/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py index d222418ae1..6b7f7fff47 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py +++ b/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py @@ -18,6 +18,8 @@ @define(eq=False, slots=False) class AwsBeanstalkMaxCountRule: kind: ClassVar[str] = "aws_beanstalk_max_count_rule" + kind_display: ClassVar[str] = "AWS Beanstalk Max Count Rule" + kind_description: ClassVar[str] = "AWS Beanstalk Max Count Rule is a rule that can be set on an AWS Elastic Beanstalk environment to limit the maximum number of instances that can be running at a given time." mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("Enabled"), "max_count": S("MaxCount"), @@ -31,6 +33,8 @@ class AwsBeanstalkMaxCountRule: @define(eq=False, slots=False) class AwsBeanstalkMaxAgeRule: kind: ClassVar[str] = "aws_beanstalk_max_age_rule" + kind_display: ClassVar[str] = "AWS Beanstalk Max Age Rule" + kind_description: ClassVar[str] = "A rule that defines the maximum age of the environments in AWS Elastic Beanstalk, which allows automatic termination of environments after a specified time period." mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("Enabled"), "max_age_in_days": S("MaxAgeInDays"), @@ -44,6 +48,8 @@ class AwsBeanstalkMaxAgeRule: @define(eq=False, slots=False) class AwsBeanstalkApplicationVersionLifecycleConfig: kind: ClassVar[str] = "aws_beanstalk_application_version_lifecycle_config" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Application Version Lifecycle Configuration" + kind_description: ClassVar[str] = "An AWS Elastic Beanstalk Application Version Lifecycle Configuration allows you to define rules for automatically deploying, updating, and deleting application versions on your Elastic Beanstalk environments." mapping: ClassVar[Dict[str, Bender]] = { "max_count_rule": S("MaxCountRule") >> Bend(AwsBeanstalkMaxCountRule.mapping), "max_age_rule": S("MaxAgeRule") >> Bend(AwsBeanstalkMaxAgeRule.mapping), @@ -55,6 +61,8 @@ class AwsBeanstalkApplicationVersionLifecycleConfig: @define(eq=False, slots=False) class AwsBeanstalkApplicationResourceLifecycleConfig: kind: ClassVar[str] = "aws_beanstalk_application_resource_lifecycle_config" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Application Resource Lifecycle Configuration" + kind_description: ClassVar[str] = "The AWS Elastic Beanstalk Application Resource Lifecycle Configuration allows users to define and manage the lifecycle of resources used in an Elastic Beanstalk application." mapping: ClassVar[Dict[str, Bender]] = { "service_role": S("ServiceRole"), "version_lifecycle_config": S("VersionLifecycleConfig") @@ -67,6 +75,8 @@ class AwsBeanstalkApplicationResourceLifecycleConfig: @define(eq=False, slots=False) class AwsBeanstalkApplication(AwsResource): kind: ClassVar[str] = "aws_beanstalk_application" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Application" + kind_description: ClassVar[str] = "Elastic Beanstalk is a fully managed service that makes it easy to deploy and run applications in multiple languages." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-applications", "Applications") mapping: ClassVar[Dict[str, Bender]] = { "id": S("ApplicationName"), @@ -144,6 +154,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsBeanstalkEnvironmentTier: kind: ClassVar[str] = "aws_beanstalk_environment_tier" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Environment Tier" + kind_description: ClassVar[str] = "The environment tier in AWS Elastic Beanstalk determines the resources and features available for an Elastic Beanstalk environment. It can be either WebServer or Worker." mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "type": S("Type"), "version": S("Version")} name: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -153,6 +165,8 @@ class AwsBeanstalkEnvironmentTier: @define(eq=False, slots=False) class AwsBeanstalkEnvironmentLink: kind: ClassVar[str] = "aws_beanstalk_environment_link" + kind_display: ClassVar[str] = "AWS Beanstalk Environment Link" + kind_description: ClassVar[str] = "AWS Beanstalk Environment Link is a reference to an AWS Elastic Beanstalk environment which provides a URL to access the deployed application." mapping: ClassVar[Dict[str, Bender]] = {"link_name": S("LinkName"), "environment_name": S("EnvironmentName")} link_name: Optional[str] = field(default=None) environment_name: Optional[str] = field(default=None) @@ -161,6 +175,8 @@ class AwsBeanstalkEnvironmentLink: @define(eq=False, slots=False) class AwsBeanstalkAutoScalingGroupDescription: kind: ClassVar[str] = "aws_beanstalk_auto_scaling_group_description" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Auto Scaling Group Description" + kind_description: ClassVar[str] = "AWS Elastic Beanstalk Auto Scaling Group Description is a feature of AWS Elastic Beanstalk that allows dynamic scaling of resources based on the demand of your application to ensure optimal performance." mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_group_name": S("Name"), } @@ -170,6 +186,8 @@ class AwsBeanstalkAutoScalingGroupDescription: @define(eq=False, slots=False) class AwsBeanstalkInstancesDescription: kind: ClassVar[str] = "aws_beanstalk_instances_description" + kind_display: ClassVar[str] = "AWS Beanstalk Instances Description" + kind_description: ClassVar[str] = "Beanstalk is a fully managed service by AWS that makes it easy to deploy, run, and scale applications in the cloud. Beanstalk instances are the virtual servers on which applications are deployed and run in AWS Beanstalk." mapping: ClassVar[Dict[str, Bender]] = { "instance_id": S("Id"), } @@ -179,6 +197,8 @@ class AwsBeanstalkInstancesDescription: @define(eq=False, slots=False) class AwsBeanstalkLoadBalancerDescription: kind: ClassVar[str] = "aws_beanstalk_load_balancer_description" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Load Balancer Description" + kind_description: ClassVar[str] = "AWS Elastic Beanstalk Load Balancer Description is a string representing the description of the load balancer in the Elastic Beanstalk service provided by Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "load_balancer_name": S("Name"), } @@ -188,6 +208,8 @@ class AwsBeanstalkLoadBalancerDescription: @define(eq=False, slots=False) class AwsBeanstalkQueueDescription: kind: ClassVar[str] = "aws_beanstalk_queue_description" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Queue Description" + kind_description: ClassVar[str] = "Elastic Beanstalk is a platform for deploying and running web applications. This resource represents the description of a queue within the Elastic Beanstalk environment." mapping: ClassVar[Dict[str, Bender]] = { "queue_name": S("Name"), "queue_url": S("URL"), @@ -199,6 +221,8 @@ class AwsBeanstalkQueueDescription: @define(eq=False, slots=False) class AwsBeanstalkEnvironmentResourcesDescription: kind: ClassVar[str] = "aws_beanstalk_environment_resources" + kind_display: ClassVar[str] = "AWS Beanstalk Environment Resources" + kind_description: ClassVar[str] = "Beanstalk Environment Resources refer to the compute, storage, and networking resources allocated to an application environment in AWS Elastic Beanstalk, a fully managed service for deploying and scaling web applications." mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_groups": S("AutoScalingGroups") >> ForallBend(AwsBeanstalkAutoScalingGroupDescription.mapping), "instances": S("Instances") >> ForallBend(AwsBeanstalkInstancesDescription.mapping), @@ -214,6 +238,8 @@ class AwsBeanstalkEnvironmentResourcesDescription: @define(eq=False, slots=False) class AwsBeanstalkEnvironment(AwsResource): kind: ClassVar[str] = "aws_beanstalk_environment" + kind_display: ClassVar[str] = "AWS Elastic Beanstalk Environment" + kind_description: ClassVar[str] = "AWS Elastic Beanstalk is a service that makes it easy to deploy, run, and scale applications in the AWS cloud. An Elastic Beanstalk environment is a version of your application that is deployed and running on AWS." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-environments", "Environments") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/elb.py b/plugins/aws/resoto_plugin_aws/resource/elb.py index b44cc89aea..28efbb621d 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elb.py +++ b/plugins/aws/resoto_plugin_aws/resource/elb.py @@ -56,6 +56,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsElbListener: kind: ClassVar[str] = "aws_elb_listener" + kind_display: ClassVar[str] = "AWS ELB Listener" + kind_description: ClassVar[str] = "ELB (Elastic Load Balancer) Listeners define the rules for how traffic should be distributed between registered instances in an application load balancer or network load balancer." mapping: ClassVar[Dict[str, Bender]] = { "protocol": S("Protocol"), "load_balancer_port": S("LoadBalancerPort"), @@ -73,6 +75,8 @@ class AwsElbListener: @define(eq=False, slots=False) class AwsElbListenerDescription: kind: ClassVar[str] = "aws_elb_listener_description" + kind_display: ClassVar[str] = "AWS ELB Listener Description" + kind_description: ClassVar[str] = "ELB Listener Description provides information about a listener used in Elastic Load Balancing (ELB) service in AWS. It contains details such as the protocol, port, and SSL certificate configuration for the listener." mapping: ClassVar[Dict[str, Bender]] = { "listener": S("Listener") >> Bend(AwsElbListener.mapping), "policy_names": S("PolicyNames", default=[]), @@ -84,6 +88,8 @@ class AwsElbListenerDescription: @define(eq=False, slots=False) class AwsElbAppCookieStickinessPolicy: kind: ClassVar[str] = "aws_elb_app_cookie_stickiness_policy" + kind_display: ClassVar[str] = "AWS ELB Application Cookie Stickiness Policy" + kind_description: ClassVar[str] = "ELB Application Cookie Stickiness Policy is a feature provided by AWS Elastic Load Balancer that allows the load balancer to bind a user's session to a specific instance based on the provided application cookie." mapping: ClassVar[Dict[str, Bender]] = {"policy_name": S("PolicyName"), "cookie_name": S("CookieName")} policy_name: Optional[str] = field(default=None) cookie_name: Optional[str] = field(default=None) @@ -92,6 +98,8 @@ class AwsElbAppCookieStickinessPolicy: @define(eq=False, slots=False) class AwsElbLBCookieStickinessPolicy: kind: ClassVar[str] = "aws_elb_lb_cookie_stickiness_policy" + kind_display: ClassVar[str] = "AWS ELB LB Cookie Stickiness Policy" + kind_description: ClassVar[str] = "Cookie stickiness policy for an Elastic Load Balancer (ELB) in Amazon Web Services (AWS) ensures that subsequent requests from a client are sent to the same backend server, based on the presence of a cookie." mapping: ClassVar[Dict[str, Bender]] = { "policy_name": S("PolicyName"), "cookie_expiration_period": S("CookieExpirationPeriod"), @@ -103,6 +111,8 @@ class AwsElbLBCookieStickinessPolicy: @define(eq=False, slots=False) class AwsElbPolicies: kind: ClassVar[str] = "aws_elb_policies" + kind_display: ClassVar[str] = "AWS ELB Policies" + kind_description: ClassVar[str] = "ELB Policies are rules that define how the Elastic Load Balancer distributes incoming traffic to the registered instances." mapping: ClassVar[Dict[str, Bender]] = { "app_cookie_stickiness_policies": S("AppCookieStickinessPolicies", default=[]) >> ForallBend(AwsElbAppCookieStickinessPolicy.mapping), @@ -118,6 +128,8 @@ class AwsElbPolicies: @define(eq=False, slots=False) class AwsElbBackendServerDescription: kind: ClassVar[str] = "aws_elb_backend_server_description" + kind_display: ClassVar[str] = "AWS ELB Backend Server Description" + kind_description: ClassVar[str] = "This is a description of the backend server in an AWS Elastic Load Balancer (ELB). The backend server is the target where the ELB forwards incoming requests." mapping: ClassVar[Dict[str, Bender]] = { "instance_port": S("InstancePort"), "policy_names": S("PolicyNames", default=[]), @@ -129,6 +141,8 @@ class AwsElbBackendServerDescription: @define(eq=False, slots=False) class AwsElbHealthCheck: kind: ClassVar[str] = "aws_elb_health_check" + kind_display: ClassVar[str] = "AWS ELB Health Check" + kind_description: ClassVar[str] = "ELB Health Check is a feature provided by Amazon Web Services to monitor the health of resources behind an Elastic Load Balancer (ELB) and automatically adjust traffic flow based on the health check results." mapping: ClassVar[Dict[str, Bender]] = { "target": S("Target"), "interval": S("Interval"), @@ -146,6 +160,8 @@ class AwsElbHealthCheck: @define(eq=False, slots=False) class AwsElbSourceSecurityGroup: kind: ClassVar[str] = "aws_elb_source_security_group" + kind_display: ClassVar[str] = "AWS ELB Source Security Group" + kind_description: ClassVar[str] = "ELB Source Security Group is a feature in AWS Elastic Load Balancing that allows you to control access to your load balancer by specifying the source security group of the instances." mapping: ClassVar[Dict[str, Bender]] = {"owner_alias": S("OwnerAlias"), "group_name": S("GroupName")} owner_alias: Optional[str] = field(default=None) group_name: Optional[str] = field(default=None) @@ -154,6 +170,8 @@ class AwsElbSourceSecurityGroup: @define(eq=False, slots=False) class AwsElb(ElbTaggable, AwsResource, BaseLoadBalancer): kind: ClassVar[str] = "aws_elb" + kind_display: ClassVar[str] = "AWS ELB" + kind_description: ClassVar[str] = "ELB stands for Elastic Load Balancer. It is a service provided by Amazon Web Services that automatically distributes incoming application traffic across multiple Amazon EC2 instances, making it easier to achieve fault tolerance in your applications." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-load-balancers", diff --git a/plugins/aws/resoto_plugin_aws/resource/elbv2.py b/plugins/aws/resoto_plugin_aws/resource/elbv2.py index 262297d962..03a010ece6 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elbv2.py +++ b/plugins/aws/resoto_plugin_aws/resource/elbv2.py @@ -56,6 +56,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsAlbLoadBalancerState: kind: ClassVar[str] = "aws_alb_load_balancer_state" + kind_display: ClassVar[str] = "AWS ALB Load Balancer State" + kind_description: ClassVar[str] = "ALB Load Balancer State represents the state of an Application Load Balancer (ALB) in Amazon Web Services. The ALB distributes incoming traffic across multiple targets, such as EC2 instances, containers, and IP addresses, to ensure high availability and scalability of applications." mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "reason": S("Reason")} code: Optional[str] = field(default=None) reason: Optional[str] = field(default=None) @@ -64,6 +66,8 @@ class AwsAlbLoadBalancerState: @define(eq=False, slots=False) class AwsAlbLoadBalancerAddress: kind: ClassVar[str] = "aws_alb_load_balancer_address" + kind_display: ClassVar[str] = "AWS ALB Load Balancer Address" + kind_description: ClassVar[str] = "An address associated with an Application Load Balancer (ALB) in AWS, which is responsible for distributing incoming traffic across multiple targets." mapping: ClassVar[Dict[str, Bender]] = { "ip_address": S("IpAddress"), "allocation_id": S("AllocationId"), @@ -79,6 +83,8 @@ class AwsAlbLoadBalancerAddress: @define(eq=False, slots=False) class AwsAlbAvailabilityZone: kind: ClassVar[str] = "aws_alb_availability_zone" + kind_display: ClassVar[str] = "AWS ALB Availability Zone" + kind_description: ClassVar[str] = "ALB Availability Zone is a feature of AWS Application Load Balancer that allows distribution of incoming traffic to different availability zones within a region for increased availability and fault tolerance." mapping: ClassVar[Dict[str, Bender]] = { "zone_name": S("ZoneName"), "subnet_id": S("SubnetId"), @@ -95,6 +101,8 @@ class AwsAlbAvailabilityZone: @define(eq=False, slots=False) class AwsAlbCertificate: kind: ClassVar[str] = "aws_alb_certificate" + kind_display: ClassVar[str] = "AWS ALB Certificate" + kind_description: ClassVar[str] = "AWS ALB Certificate is a digital certificate used to secure HTTPS connections for an Application Load Balancer (ALB) in Amazon Web Services (AWS)." mapping: ClassVar[Dict[str, Bender]] = {"certificate_arn": S("CertificateArn"), "is_default": S("IsDefault")} certificate_arn: Optional[str] = field(default=None) is_default: Optional[bool] = field(default=None) @@ -103,6 +111,8 @@ class AwsAlbCertificate: @define(eq=False, slots=False) class AwsAlbAuthenticateOidcActionConfig: kind: ClassVar[str] = "aws_alb_authenticate_oidc_action_config" + kind_display: ClassVar[str] = "AWS ALB Authenticate OIDC Action Configuration" + kind_description: ClassVar[str] = "The AWS ALB Authenticate OIDC Action Configuration allows users to configure OpenID Connect (OIDC) authentication for Application Load Balancers (ALBs) in Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "issuer": S("Issuer"), "authorization_endpoint": S("AuthorizationEndpoint"), @@ -134,6 +144,8 @@ class AwsAlbAuthenticateOidcActionConfig: @define(eq=False, slots=False) class AwsAlbAuthenticateCognitoActionConfig: kind: ClassVar[str] = "aws_alb_authenticate_cognito_action_config" + kind_display: ClassVar[str] = "AWS ALB Authenticate Cognito Action Config" + kind_description: ClassVar[str] = "ALB Authenticate Cognito Action Config is a configuration option for an AWS Application Load Balancer to authenticate users via Amazon Cognito." mapping: ClassVar[Dict[str, Bender]] = { "user_pool_arn": S("UserPoolArn"), "user_pool_client_id": S("UserPoolClientId"), @@ -157,6 +169,8 @@ class AwsAlbAuthenticateCognitoActionConfig: @define(eq=False, slots=False) class AwsAlbRedirectActionConfig: kind: ClassVar[str] = "aws_alb_redirect_action_config" + kind_display: ClassVar[str] = "AWS ALB Redirect Action Config" + kind_description: ClassVar[str] = "ALB Redirect Action Config is a configuration for redirect actions in the Application Load Balancer (ALB) service in Amazon Web Services. It allows for redirecting incoming requests to a different URL or path in a flexible and configurable way." mapping: ClassVar[Dict[str, Bender]] = { "protocol": S("Protocol"), "port": S("Port"), @@ -176,6 +190,8 @@ class AwsAlbRedirectActionConfig: @define(eq=False, slots=False) class AwsAlbFixedResponseActionConfig: kind: ClassVar[str] = "aws_alb_fixed_response_action_config" + kind_display: ClassVar[str] = "AWS ALB Fixed Response Action Config" + kind_description: ClassVar[str] = "ALB Fixed Response Action Config is a configuration for the fixed response action on an Application Load Balancer (ALB) in Amazon Web Services (AWS). It allows users to define custom HTTP responses with fixed status codes and messages for specific paths or conditions." mapping: ClassVar[Dict[str, Bender]] = { "message_body": S("MessageBody"), "status_code": S("StatusCode"), @@ -189,6 +205,8 @@ class AwsAlbFixedResponseActionConfig: @define(eq=False, slots=False) class AwsAlbTargetGroupTuple: kind: ClassVar[str] = "aws_alb_target_group_tuple" + kind_display: ClassVar[str] = "AWS ALB Target Group Tuple" + kind_description: ClassVar[str] = "ALB Target Group Tuples are used in AWS Application Load Balancers to define rules for routing incoming requests to registered targets, such as EC2 instances or Lambda functions." mapping: ClassVar[Dict[str, Bender]] = {"target_group_arn": S("TargetGroupArn"), "weight": S("Weight")} target_group_arn: Optional[str] = field(default=None) weight: Optional[int] = field(default=None) @@ -197,6 +215,8 @@ class AwsAlbTargetGroupTuple: @define(eq=False, slots=False) class AwsAlbTargetGroupStickinessConfig: kind: ClassVar[str] = "aws_alb_target_group_stickiness_config" + kind_display: ClassVar[str] = "AWS ALB Target Group Stickiness Configuration" + kind_description: ClassVar[str] = "ALB Target Group Stickiness Configuration allows you to enable or configure stickiness for incoming traffic to an Application Load Balancer (ALB) target group in AWS." mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("Enabled"), "duration_seconds": S("DurationSeconds")} enabled: Optional[bool] = field(default=None) duration_seconds: Optional[int] = field(default=None) @@ -205,6 +225,8 @@ class AwsAlbTargetGroupStickinessConfig: @define(eq=False, slots=False) class AwsAlbForwardActionConfig: kind: ClassVar[str] = "aws_alb_forward_action_config" + kind_display: ClassVar[str] = "AWS ALB Forward Action Configuration" + kind_description: ClassVar[str] = "The AWS Application Load Balancer (ALB) Forward Action Configuration represents the configuration for forwarding requests to a target group in the ALB." mapping: ClassVar[Dict[str, Bender]] = { "target_groups": S("TargetGroups", default=[]) >> ForallBend(AwsAlbTargetGroupTuple.mapping), "target_group_stickiness_config": S("TargetGroupStickinessConfig") @@ -217,6 +239,8 @@ class AwsAlbForwardActionConfig: @define(eq=False, slots=False) class AwsAlbAction: kind: ClassVar[str] = "aws_alb_action" + kind_display: ClassVar[str] = "AWS Application Load Balancer Action" + kind_description: ClassVar[str] = "An AWS Application Load Balancer Action defines how the load balancer should distribute incoming requests to target instances or services." mapping: ClassVar[Dict[str, Bender]] = { "type": S("Type"), "target_group_arn": S("TargetGroupArn"), @@ -241,6 +265,8 @@ class AwsAlbAction: @define(eq=False, slots=False) class AwsAlbListener: kind: ClassVar[str] = "aws_alb_listener" + kind_display: ClassVar[str] = "AWS ALB Listener" + kind_description: ClassVar[str] = "An Application Load Balancer (ALB) Listener is a configuration that defines how an ALB distributes incoming traffic to target groups." mapping: ClassVar[Dict[str, Bender]] = { "listener_arn": S("ListenerArn"), "load_balancer_arn": S("LoadBalancerArn"), @@ -264,6 +290,8 @@ class AwsAlbListener: @define(eq=False, slots=False) class AwsAlb(ElbV2Taggable, AwsResource, BaseLoadBalancer): kind: ClassVar[str] = "aws_alb" + kind_display: ClassVar[str] = "AWS ALB" + kind_description: ClassVar[str] = "AWS ALB is an Application Load Balancer that distributes incoming application traffic across multiple targets, such as EC2 instances, in multiple availability zones." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-load-balancers", @@ -434,6 +462,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsAlbMatcher: kind: ClassVar[str] = "aws_alb_matcher" + kind_display: ClassVar[str] = "AWS ALB Matcher" + kind_description: ClassVar[str] = "ALB Matchers are rules defined for an Application Load Balancer (ALB) to route incoming requests to specific target groups based on the content of the request." mapping: ClassVar[Dict[str, Bender]] = {"http_code": S("HttpCode"), "grpc_code": S("GrpcCode")} http_code: Optional[str] = field(default=None) grpc_code: Optional[str] = field(default=None) @@ -442,6 +472,8 @@ class AwsAlbMatcher: @define(eq=False, slots=False) class AwsAlbTargetDescription: kind: ClassVar[str] = "aws_alb_target_description" + kind_display: ClassVar[str] = "AWS ALB Target Description" + kind_description: ClassVar[str] = "The target description specifies information about the instances registered with an Application Load Balancer (ALB) in Amazon Web Services. This includes details such as the instance ID, IP address, health check status, and other metadata." mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "port": S("Port"), @@ -455,6 +487,8 @@ class AwsAlbTargetDescription: @define(eq=False, slots=False) class AwsAlbTargetHealth: kind: ClassVar[str] = "aws_alb_target_health" + kind_display: ClassVar[str] = "AWS ALB Target Health" + kind_description: ClassVar[str] = "ALB Target Health is a feature of AWS Application Load Balancer that provides information about the current health status of registered targets." mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "reason": S("Reason"), "description": S("Description")} state: Optional[str] = field(default=None) reason: Optional[str] = field(default=None) @@ -464,6 +498,8 @@ class AwsAlbTargetHealth: @define(eq=False, slots=False) class AwsAlbTargetHealthDescription: kind: ClassVar[str] = "aws_alb_target_health_description" + kind_display: ClassVar[str] = "AWS ALB Target Health Description" + kind_description: ClassVar[str] = "ALB Target Health Description is a feature of AWS Application Load Balancer that provides information about the health of targets registered with the load balancer, including target status and reason for any health checks failures." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-target-health", @@ -483,6 +519,8 @@ class AwsAlbTargetHealthDescription: @define(eq=False, slots=False) class AwsAlbTargetGroup(ElbV2Taggable, AwsResource): kind: ClassVar[str] = "aws_alb_target_group" + kind_display: ClassVar[str] = "AWS ALB Target Group" + kind_description: ClassVar[str] = "An ALB Target Group is a group of instances or IP addresses registered with an Application Load Balancer that receives traffic and distributes it to the registered targets." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-target-groups", diff --git a/plugins/aws/resoto_plugin_aws/resource/glacier.py b/plugins/aws/resoto_plugin_aws/resource/glacier.py index 0fa70af790..60075f37c0 100644 --- a/plugins/aws/resoto_plugin_aws/resource/glacier.py +++ b/plugins/aws/resoto_plugin_aws/resource/glacier.py @@ -17,6 +17,8 @@ @define(eq=False, slots=False) class AwsGlacierInventoryRetrievalParameters: kind: ClassVar[str] = "aws_glacier_job_inventory_retrieval_parameters" + kind_display: ClassVar[str] = "AWS Glacier Job Inventory Retrieval Parameters" + kind_description: ClassVar[str] = "Retrieval parameters for inventory jobs in Amazon Glacier service that allow users to access metadata about their Glacier vault inventory." mapping: ClassVar[Dict[str, Bender]] = { "output_format": S("Format"), "start_date": S("StartDate"), @@ -32,6 +34,8 @@ class AwsGlacierInventoryRetrievalParameters: @define(eq=False, slots=False) class AwsGlacierSelectParameters: kind: ClassVar[str] = "aws_glacier_job_select_parameters" + kind_display: ClassVar[str] = "AWS Glacier Job Select Parameters" + kind_description: ClassVar[str] = "AWS Glacier Job Select Parameters are specific options and configurations for selecting and querying data from Glacier vaults for retrieval." mapping: ClassVar[Dict[str, Bender]] = { "input_serialization": S("InputSerialization"), "expression_type": S("ExpressionType"), @@ -47,6 +51,8 @@ class AwsGlacierSelectParameters: @define(eq=False, slots=False) class AwsGlacierBucketEncryption: kind: ClassVar[str] = "aws_glacier_bucket_encryption" + kind_display: ClassVar[str] = "AWS Glacier Bucket Encryption" + kind_description: ClassVar[str] = "AWS Glacier is a long-term archival storage service, and AWS Glacier Bucket Encryption provides the ability to encrypt data at rest in Glacier buckets to enhance data security and compliance." mapping: ClassVar[Dict[str, Bender]] = { "encryption_type": S("EncryptionType"), "kms_key_id": S("KMSKeyId"), @@ -60,6 +66,8 @@ class AwsGlacierBucketEncryption: @define(eq=False, slots=False) class AwsGlacierAcl: kind: ClassVar[str] = "aws_glacier_acl" + kind_display: ClassVar[str] = "AWS Glacier ACL" + kind_description: ClassVar[str] = "AWS Glacier ACL is an access control feature in Amazon Glacier that allows users to manage permissions for their Glacier vaults and archives." mapping: ClassVar[Dict[str, Bender]] = { "grantee": S("Grantee"), "permission": S("Permission"), @@ -71,6 +79,8 @@ class AwsGlacierAcl: @define(eq=False, slots=False) class AwsGlacierJobBucket: kind: ClassVar[str] = "aws_glacier_job_bucket" + kind_display: ClassVar[str] = "AWS Glacier Job Bucket" + kind_description: ClassVar[str] = "The AWS Glacier Job Bucket is a storage location used for managing jobs in Amazon Glacier, a secure and durable storage service for long-term data archiving and backup." mapping: ClassVar[Dict[str, Bender]] = { "bucket_name": S("BucketName"), "prefix": S("Prefix"), @@ -93,6 +103,8 @@ class AwsGlacierJobBucket: @define(eq=False, slots=False) class AwsGlacierJobOutputLocation: kind: ClassVar[str] = "aws_glacier_job_output_location" + kind_display: ClassVar[str] = "AWS Glacier Job Output Location" + kind_description: ClassVar[str] = "The AWS Glacier Job Output Location refers to the destination where the output of an AWS Glacier job is stored." mapping: ClassVar[Dict[str, Bender]] = { "s3": S("S3") >> Bend(AwsGlacierJobBucket.mapping), } @@ -102,6 +114,8 @@ class AwsGlacierJobOutputLocation: @define(eq=False, slots=False) class AwsGlacierJob(AwsResource): kind: ClassVar[str] = "aws_glacier_job" + kind_display: ClassVar[str] = "AWS Glacier Job" + kind_description: ClassVar[str] = "AWS Glacier Jobs are used to manage and execute operations on data stored in Amazon S3 Glacier, such as data retrieval or inventory retrieval." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["aws_kms_key"], @@ -169,6 +183,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsGlacierVault(AwsResource): kind: ClassVar[str] = "aws_glacier_vault" + kind_display: ClassVar[str] = "AWS Glacier Vault" + kind_description: ClassVar[str] = "AWS Glacier Vaults are used for long term data archiving and backup, providing a secure and durable storage solution with low cost." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-vaults", "VaultList") reference_kinds: ClassVar[ModelReference] = { "successors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/iam.py b/plugins/aws/resoto_plugin_aws/resource/iam.py index 354bb4edf6..70fe91f955 100644 --- a/plugins/aws/resoto_plugin_aws/resource/iam.py +++ b/plugins/aws/resoto_plugin_aws/resource/iam.py @@ -57,6 +57,8 @@ def iam_delete_tag(resource: AwsResource, client: AwsClient, action: str, key: s @define(eq=False, slots=False) class AwsIamPolicyDetail: kind: ClassVar[str] = "aws_iam_policy_detail" + kind_display: ClassVar[str] = "AWS IAM Policy Detail" + kind_description: ClassVar[str] = "IAM Policy Detail provides information about the permissions and access control settings defined in an IAM policy." mapping: ClassVar[Dict[str, Bender]] = {"policy_name": S("PolicyName"), "policy_document": S("PolicyDocument")} policy_name: Optional[str] = field(default=None) policy_document: Optional[Json] = field(default=None) @@ -65,6 +67,8 @@ class AwsIamPolicyDetail: @define(eq=False, slots=False) class AwsIamAttachedPermissionsBoundary: kind: ClassVar[str] = "aws_iam_attached_permissions_boundary" + kind_display: ClassVar[str] = "AWS IAM Attached Permissions Boundary" + kind_description: ClassVar[str] = "IAM Attached Permissions Boundary is a feature in AWS Identity and Access Management (IAM) that allows you to set a permissions boundary for an IAM entity (user or role), limiting the maximum permissions that the entity can have. This helps to enforce least privilege access for IAM entities within AWS." mapping: ClassVar[Dict[str, Bender]] = { "permissions_boundary_type": S("PermissionsBoundaryType"), "permissions_boundary_arn": S("PermissionsBoundaryArn"), @@ -76,6 +80,8 @@ class AwsIamAttachedPermissionsBoundary: @define(eq=False, slots=False) class AwsIamRoleLastUsed: kind: ClassVar[str] = "aws_iam_role_last_used" + kind_display: ClassVar[str] = "AWS IAM Role Last Used" + kind_description: ClassVar[str] = "IAM Role Last Used is a feature in AWS Identity and Access Management (IAM) that provides information on when an IAM role was last used to access resources." mapping: ClassVar[Dict[str, Bender]] = {"last_used": S("LastUsedDate"), "region": S("Region")} last_used: Optional[datetime] = field(default=None) region: Optional[str] = field(default=None) @@ -85,6 +91,8 @@ class AwsIamRoleLastUsed: class AwsIamRole(AwsResource): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_role" + kind_display: ClassVar[str] = "AWS IAM Role" + kind_description: ClassVar[str] = "IAM Roles are a way to delegate permissions to entities that you trust. IAM roles are similar to users, in that they are both AWS identity types. However, instead of being uniquely associated with one person, IAM roles are intended to be assumable by anyone who needs it." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["aws_iam_policy", "aws_iam_instance_profile"], @@ -191,6 +199,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsIamServerCertificate(AwsResource, BaseCertificate): kind: ClassVar[str] = "aws_iam_server_certificate" + kind_display: ClassVar[str] = "AWS IAM Server Certificate" + kind_description: ClassVar[str] = "AWS IAM Server Certificate is a digital certificate that AWS Identity and Access Management (IAM) uses to verify the identity of a resource like an HTTPS server. It enables secure communication between the server and AWS services." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-server-certificates", "ServerCertificateMetadataList" ) @@ -245,6 +255,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsIamPolicyVersion: kind: ClassVar[str] = "aws_iam_policy_version" + kind_display: ClassVar[str] = "AWS IAM Policy Version" + kind_description: ClassVar[str] = "IAM Policy Version represents a specific version of an IAM policy definition in AWS Identity and Access Management service, which defines permissions and access control for AWS resources." mapping: ClassVar[Dict[str, Bender]] = { "document": S("Document"), "version_id": S("VersionId"), @@ -270,6 +282,8 @@ def default_policy_document(policy: Json) -> Optional[AwsIamPolicyVersion]: class AwsIamPolicy(AwsResource, BasePolicy): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_policy" + kind_display: ClassVar[str] = "AWS IAM Policy" + kind_description: ClassVar[str] = "IAM Policies in AWS are used to define permissions and access controls for users, groups, and roles within the AWS ecosystem." mapping: ClassVar[Dict[str, Bender]] = { "id": S("PolicyId"), "tags": S("Tags", default=[]) >> ToDict(), @@ -338,6 +352,8 @@ def service_name(cls) -> str: class AwsIamGroup(AwsResource, BaseGroup): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_group" + kind_display: ClassVar[str] = "AWS IAM Group" + kind_description: ClassVar[str] = "IAM Groups are collections of IAM users. They allow you to manage permissions collectively for multiple users, making it easier to manage access to AWS resources." reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_iam_policy"], "delete": ["aws_iam_policy"]}, } @@ -408,6 +424,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsIamAccessKeyLastUsed: kind: ClassVar[str] = "aws_iam_access_key_last_used" + kind_display: ClassVar[str] = "AWS IAM Access Key Last Used" + kind_description: ClassVar[str] = "IAM Access Key Last Used is a feature in Amazon's Identity and Access Management (IAM) service that allows you to view the last time an IAM access key was used and the region from which the key was used. This helps you monitor the usage of access keys and detect any potential unauthorized access." mapping: ClassVar[Dict[str, Bender]] = { "last_used": S("LastUsedDate"), "last_rotated": S("LastRotated"), @@ -424,6 +442,8 @@ class AwsIamAccessKeyLastUsed: class AwsIamAccessKey(AwsResource, BaseAccessKey): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_access_key" + kind_display: ClassVar[str] = "AWS IAM Access Key" + kind_description: ClassVar[str] = "An AWS IAM Access Key is used to securely access AWS services and resources using API operations." mapping: ClassVar[Dict[str, Bender]] = { "id": S("AccessKeyId"), "tags": S("Tags", default=[]) >> ToDict(), @@ -534,6 +554,8 @@ def from_str(lines: str) -> Dict[str, "CredentialReportLine"]: @define(eq=False, slots=False) class AwsIamVirtualMfaDevice: kind: ClassVar[str] = "aws_iam_virtual_mfa_device" + kind_display: ClassVar[str] = "AWS IAM Virtual MFA Device" + kind_description: ClassVar[str] = "AWS IAM Virtual MFA Device is a virtual multi-factor authentication device that generates time-based one-time passwords (TOTP) for login use cases in AWS." mapping: ClassVar[Dict[str, Bender]] = { "serial_number": S("SerialNumber"), "enable_date": S("EnableDate"), @@ -545,6 +567,8 @@ class AwsIamVirtualMfaDevice: @define(eq=False, slots=False) class AwsRootUser(AwsResource, BaseUser): kind: ClassVar[str] = "aws_root_user" + kind_display: ClassVar[str] = "AWS Root User" + kind_description: ClassVar[str] = "The AWS Root User is the initial user created when setting up an AWS account and has unrestricted access to all resources in the account." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_account"]}, } @@ -559,6 +583,8 @@ class AwsRootUser(AwsResource, BaseUser): @define(eq=False, slots=False) class AwsIamUser(AwsResource, BaseUser): kind: ClassVar[str] = "aws_iam_user" + kind_display: ClassVar[str] = "AWS IAM User" + kind_description: ClassVar[str] = "IAM Users are identities created within AWS Identity and Access Management (IAM) that can be assigned permissions to access and manage AWS resources." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "get-account-authorization-details") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_group"]}, @@ -716,6 +742,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsIamInstanceProfile(AwsResource, BaseInstanceProfile): kind: ClassVar[str] = "aws_iam_instance_profile" + kind_display: ClassVar[str] = "AWS IAM Instance Profile" + kind_description: ClassVar[str] = "IAM Instance Profiles are used to associate IAM roles with EC2 instances, allowing the instances to securely access AWS services and resources." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-instance-profiles", "InstanceProfiles") mapping: ClassVar[Dict[str, Bender]] = { "id": S("InstanceProfileId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/kinesis.py b/plugins/aws/resoto_plugin_aws/resource/kinesis.py index 06c6c4ce49..024f950d78 100644 --- a/plugins/aws/resoto_plugin_aws/resource/kinesis.py +++ b/plugins/aws/resoto_plugin_aws/resource/kinesis.py @@ -18,6 +18,8 @@ @define(eq=False, slots=False) class AwsKinesisHashKeyRange: kind: ClassVar[str] = "aws_kinesis_hash_key_range" + kind_display: ClassVar[str] = "AWS Kinesis Hash Key Range" + kind_description: ClassVar[str] = "AWS Kinesis Hash Key Range is a range of hash keys used for partitioning data in Amazon Kinesis streams, allowing for efficient and scalable data processing and analysis." mapping: ClassVar[Dict[str, Bender]] = { "starting_hash_key": S("StartingHashKey"), "ending_hash_key": S("EndingHashKey"), @@ -29,6 +31,8 @@ class AwsKinesisHashKeyRange: @define(eq=False, slots=False) class AwsKinesisSequenceNumberRange: kind: ClassVar[str] = "aws_kinesis_sequence_number_range" + kind_display: ClassVar[str] = "AWS Kinesis Sequence Number Range" + kind_description: ClassVar[str] = "Kinesis Sequence Number Range represents a range of sequence numbers associated with data records in an Amazon Kinesis data stream. It is used to specify a starting and ending sequence number when retrieving records from the stream." mapping: ClassVar[Dict[str, Bender]] = { "starting_sequence_number": S("StartingSequenceNumber"), "ending_sequence_number": S("EndingSequenceNumber"), @@ -40,6 +44,8 @@ class AwsKinesisSequenceNumberRange: @define(eq=False, slots=False) class AwsKinesisShard: kind: ClassVar[str] = "aws_kinesis_shard" + kind_display: ClassVar[str] = "AWS Kinesis Shard" + kind_description: ClassVar[str] = "An AWS Kinesis Shard is a sequence of data records in an Amazon Kinesis stream, used for storing and processing real-time streaming data." mapping: ClassVar[Dict[str, Bender]] = { "shard_id": S("ShardId"), "parent_shard_id": S("ParentShardId"), @@ -57,6 +63,8 @@ class AwsKinesisShard: @define(eq=False, slots=False) class AwsKinesisEnhancedMetrics: kind: ClassVar[str] = "aws_kinesis_enhanced_metrics" + kind_display: ClassVar[str] = "AWS Kinesis Enhanced Metrics" + kind_description: ClassVar[str] = "Kinesis Enhanced Metrics is a feature provided by AWS Kinesis that enables enhanced monitoring and analysis of data streams with additional metrics and statistics." mapping: ClassVar[Dict[str, Bender]] = {"shard_level_metrics": S("ShardLevelMetrics", default=[])} shard_level_metrics: List[str] = field(factory=list) @@ -64,6 +72,8 @@ class AwsKinesisEnhancedMetrics: @define(eq=False, slots=False) class AwsKinesisStream(AwsResource): kind: ClassVar[str] = "aws_kinesis_stream" + kind_display: ClassVar[str] = "AWS Kinesis Stream" + kind_description: ClassVar[str] = "Kinesis Streams are scalable and durable real-time data streaming services in Amazon's cloud, enabling users to capture, process, and analyze data in real-time." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["aws_kms_key"], diff --git a/plugins/aws/resoto_plugin_aws/resource/kms.py b/plugins/aws/resoto_plugin_aws/resource/kms.py index 02e912cdb5..206226696e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/kms.py +++ b/plugins/aws/resoto_plugin_aws/resource/kms.py @@ -15,6 +15,8 @@ @define(eq=False, slots=False) class AwsKmsMultiRegionPrimaryKey: kind: ClassVar[str] = "aws_kms_multiregion_primary_key" + kind_display: ClassVar[str] = "AWS KMS Multiregion Primary Key" + kind_description: ClassVar[str] = "AWS KMS Multiregion Primary Key is a cryptographic key used for encryption and decryption of data in multiple AWS regions." mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "region": S("Region")} arn: Optional[str] = field(default=None) region: Optional[str] = field(default=None) @@ -23,6 +25,8 @@ class AwsKmsMultiRegionPrimaryKey: @define(eq=False, slots=False) class AwsKmsMultiRegionReplicaKey: kind: ClassVar[str] = "aws_kms_multiregion_replica_key" + kind_display: ClassVar[str] = "AWS KMS Multi-Region Replica Key" + kind_description: ClassVar[str] = "AWS KMS Multi-Region Replica Key is a feature of AWS Key Management Service (KMS) that allows for the replication of customer master keys (CMKs) across multiple AWS regions for improved availability and durability of encryption operations." mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "region": S("Region")} arn: Optional[str] = field(default=None) region: Optional[str] = field(default=None) @@ -31,6 +35,8 @@ class AwsKmsMultiRegionReplicaKey: @define(eq=False, slots=False) class AwsKmsMultiRegionConfig: kind: ClassVar[str] = "aws_kms_multiregion_config" + kind_display: ClassVar[str] = "AWS KMS Multi-Region Config" + kind_description: ClassVar[str] = "AWS KMS Multi-Region Config is a feature in Amazon Key Management Service (KMS) that allows you to configure cross-region replication of KMS keys. This helps you ensure availability and durability of your keys in multiple regions." mapping: ClassVar[Dict[str, Bender]] = { "multi_region_key_type": S("MultiRegionKeyType"), "primary_key": S("PrimaryKey") >> Bend(AwsKmsMultiRegionPrimaryKey.mapping), @@ -44,6 +50,8 @@ class AwsKmsMultiRegionConfig: @define(eq=False, slots=False) class AwsKmsKey(AwsResource, BaseAccessKey): kind: ClassVar[str] = "aws_kms_key" + kind_display: ClassVar[str] = "AWS KMS Key" + kind_description: ClassVar[str] = "AWS KMS (Key Management Service) Key is a managed service that allows you to create and control the encryption keys used to encrypt your data stored on various AWS services and applications." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-keys", "Keys") mapping: ClassVar[Dict[str, Bender]] = { "id": S("KeyId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/lambda_.py b/plugins/aws/resoto_plugin_aws/resource/lambda_.py index c0dd1b519f..f5e2ce4b5f 100644 --- a/plugins/aws/resoto_plugin_aws/resource/lambda_.py +++ b/plugins/aws/resoto_plugin_aws/resource/lambda_.py @@ -26,6 +26,8 @@ @define(eq=False, slots=False) class AwsLambdaPolicyStatement: kind: ClassVar[str] = "aws_lambda_policy_statement" + kind_display: ClassVar[str] = "AWS Lambda Policy Statement" + kind_description: ClassVar[str] = "Lambda Policy Statements are used to define permissions for AWS Lambda functions, specifying what actions can be performed and by whom." mapping: ClassVar[Dict[str, Bender]] = { "sid": S("Sid"), "effect": S("Effect"), @@ -45,6 +47,8 @@ class AwsLambdaPolicyStatement: @define(eq=False, slots=False) class AwsLambdaPolicy: kind: ClassVar[str] = "aws_lambda_policy" + kind_display: ClassVar[str] = "AWS Lambda Policy" + kind_description: ClassVar[str] = "AWS Lambda Policies are permissions policies that determine what actions a Lambda function can take and what resources it can access within the AWS environment." mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "version": S("Version"), @@ -58,6 +62,8 @@ class AwsLambdaPolicy: @define(eq=False, slots=False) class AwsLambdaEnvironmentError: kind: ClassVar[str] = "aws_lambda_environment_error" + kind_display: ClassVar[str] = "AWS Lambda Environment Error" + kind_description: ClassVar[str] = "An error occurring in the environment setup or configuration of an AWS Lambda function." mapping: ClassVar[Dict[str, Bender]] = {"error_code": S("ErrorCode"), "message": S("Message")} error_code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -66,6 +72,8 @@ class AwsLambdaEnvironmentError: @define(eq=False, slots=False) class AwsLambdaEnvironmentResponse: kind: ClassVar[str] = "aws_lambda_environment_response" + kind_display: ClassVar[str] = "AWS Lambda Environment Response" + kind_description: ClassVar[str] = "AWS Lambda Environment Response is a service that provides information about the runtime environment of an AWS Lambda function." mapping: ClassVar[Dict[str, Bender]] = { "variables": S("Variables"), "error": S("Error") >> Bend(AwsLambdaEnvironmentError.mapping), @@ -77,6 +85,8 @@ class AwsLambdaEnvironmentResponse: @define(eq=False, slots=False) class AwsLambdaLayer: kind: ClassVar[str] = "aws_lambda_layer" + kind_display: ClassVar[str] = "AWS Lambda Layer" + kind_description: ClassVar[str] = "Lambda Layers are a distribution mechanism for libraries, custom runtimes, or other function dependencies used by Lambda functions." mapping: ClassVar[Dict[str, Bender]] = { "arn": S("Arn"), "code_size": S("CodeSize"), @@ -92,6 +102,8 @@ class AwsLambdaLayer: @define(eq=False, slots=False) class AwsLambdaFileSystemConfig: kind: ClassVar[str] = "aws_lambda_file_system_config" + kind_display: ClassVar[str] = "AWS Lambda File System Config" + kind_description: ClassVar[str] = "AWS Lambda File System Config allows you to configure file systems for your Lambda functions, enabling them to access and store data in a file system outside of the Lambda execution environment." mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "local_mount_source_arn": S("LocalMountsource_arn")} arn: Optional[str] = field(default=None) local_mount_source_arn: Optional[str] = field(default=None) @@ -100,6 +112,8 @@ class AwsLambdaFileSystemConfig: @define(eq=False, slots=False) class AwsLambdaImageConfig: kind: ClassVar[str] = "aws_lambda_image_config" + kind_display: ClassVar[str] = "AWS Lambda Image Configuration" + kind_description: ClassVar[str] = "Lambda Image Configuration is a feature of AWS Lambda that allows you to build and deploy container images as Lambda function packages." mapping: ClassVar[Dict[str, Bender]] = { "entry_point": S("EntryPoint", default=[]), "command": S("Command", default=[]), @@ -113,6 +127,8 @@ class AwsLambdaImageConfig: @define(eq=False, slots=False) class AwsLambdaImageConfigError: kind: ClassVar[str] = "aws_lambda_image_config_error" + kind_display: ClassVar[str] = "AWS Lambda Image Config Error" + kind_description: ClassVar[str] = "AWS Lambda Image Config Error refers to an error that occurs when there is a configuration issue with an AWS Lambda function using container image. This error usually happens when there is an incorrect setup or mismatch in the configuration settings for the Lambda function's container image." mapping: ClassVar[Dict[str, Bender]] = {"error_code": S("ErrorCode"), "message": S("Message")} error_code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -121,6 +137,8 @@ class AwsLambdaImageConfigError: @define(eq=False, slots=False) class AwsLambdaImageConfigResponse: kind: ClassVar[str] = "aws_lambda_image_config_response" + kind_display: ClassVar[str] = "AWS Lambda Image Configuration Response" + kind_description: ClassVar[str] = "AWS Lambda Image Configuration Response is the response object returned when configuring an image for AWS Lambda, which is a compute service that lets you run code without provisioning or managing servers." mapping: ClassVar[Dict[str, Bender]] = { "image_config": S("ImageConfig") >> Bend(AwsLambdaImageConfig.mapping), "error": S("Error") >> Bend(AwsLambdaImageConfigError.mapping), @@ -132,6 +150,8 @@ class AwsLambdaImageConfigResponse: @define(eq=False, slots=False) class AwsLambdaCors: kind: ClassVar[str] = "aws_lambda_cors" + kind_display: ClassVar[str] = "AWS Lambda CORS" + kind_description: ClassVar[str] = "AWS Lambda CORS refers to the Cross-Origin Resource Sharing (CORS) configuration for AWS Lambda functions. CORS allows a server to indicate which origins have permissions to access its resources, helping to protect against cross-origin vulnerabilities." mapping: ClassVar[Dict[str, Bender]] = { "allow_credentials": S("AllowCredentials"), "allow_headers": S("AllowHeaders", default=[]), @@ -151,6 +171,8 @@ class AwsLambdaCors: @define(eq=False, slots=False) class AwsLambdaFunctionUrlConfig: kind: ClassVar[str] = "aws_lambda_function_url_config" + kind_display: ClassVar[str] = "AWS Lambda Function URL Config" + kind_description: ClassVar[str] = "URL configuration for AWS Lambda function, allowing users to specify the trigger URL and other related settings." mapping: ClassVar[Dict[str, Bender]] = { "function_url": S("FunctionUrl"), "function_arn": S("FunctionArn"), @@ -170,6 +192,8 @@ class AwsLambdaFunctionUrlConfig: @define(eq=False, slots=False) class AwsLambdaFunction(AwsResource, BaseServerlessFunction): kind: ClassVar[str] = "aws_lambda_function" + kind_display: ClassVar[str] = "AWS Lambda Function" + kind_description: ClassVar[str] = "AWS Lambda is a serverless computing service that lets you run your code without provisioning or managing servers. Lambda functions are the compute units that run your code in response to events." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-functions", "Functions") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/pricing.py b/plugins/aws/resoto_plugin_aws/resource/pricing.py index c28783b268..7f65c968af 100644 --- a/plugins/aws/resoto_plugin_aws/resource/pricing.py +++ b/plugins/aws/resoto_plugin_aws/resource/pricing.py @@ -57,6 +57,8 @@ def pricing_region(region: str) -> str: @frozen(eq=False) class AwsPricingProduct: kind: ClassVar[str] = "aws_pricing_product" + kind_display: ClassVar[str] = "AWS Pricing Product" + kind_description: ClassVar[str] = "AWS Pricing Product is a resource that provides information about the pricing of various Amazon Web Services products and services." mapping: ClassVar[Dict[str, Bender]] = { "product_family": S("productFamily"), "sku": S("sku"), @@ -70,6 +72,8 @@ class AwsPricingProduct: @frozen(eq=False) class AwsPricingPriceDimension: kind: ClassVar[str] = "aws_pricing_price_dimension" + kind_display: ClassVar[str] = "AWS Pricing Price Dimension" + kind_description: ClassVar[str] = "Price Dimensions in AWS Pricing are the specific unit for which usage is measured and priced, such as per hour or per GB." mapping: ClassVar[Dict[str, Bender]] = { "unit": S("unit"), "end_range": S("endRange"), @@ -91,6 +95,8 @@ class AwsPricingPriceDimension: @frozen(eq=False) class AwsPricingTerm: kind: ClassVar[str] = "aws_pricing_term" + kind_display: ClassVar[str] = "AWS Pricing Term" + kind_description: ClassVar[str] = "AWS Pricing Terms refer to the different pricing options and payment plans available for services on the Amazon Web Services platform." mapping: ClassVar[Dict[str, Bender]] = { "sku": S("sku"), "effective_date": S("effectiveDate"), @@ -110,6 +116,8 @@ class AwsPricingTerm: @frozen(eq=False) class AwsPricingPrice: kind: ClassVar[str] = "aws_pricing_price" + kind_display: ClassVar[str] = "AWS Pricing Price" + kind_description: ClassVar[str] = "AWS Pricing Price refers to the cost associated with using various AWS services and resources. It includes charges for compute, storage, network usage, data transfer, and other services provided by Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "product": S("product") >> Bend(AwsPricingProduct.mapping), "service_code": S("serviceCode"), diff --git a/plugins/aws/resoto_plugin_aws/resource/rds.py b/plugins/aws/resoto_plugin_aws/resource/rds.py index b9f690c0dd..06e636e773 100644 --- a/plugins/aws/resoto_plugin_aws/resource/rds.py +++ b/plugins/aws/resoto_plugin_aws/resource/rds.py @@ -55,6 +55,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsRdsEndpoint: kind: ClassVar[str] = "aws_rds_endpoint" + kind_display: ClassVar[str] = "AWS RDS Endpoint" + kind_description: ClassVar[str] = "An RDS Endpoint in AWS is the network address that applications use to connect to a database instance in the Amazon Relational Database Service (RDS). It allows users to access and interact with their database instances." mapping: ClassVar[Dict[str, Bender]] = { "address": S("Address"), "port": S("Port"), @@ -68,6 +70,8 @@ class AwsRdsEndpoint: @define(eq=False, slots=False) class AwsRdsDBSecurityGroupMembership: kind: ClassVar[str] = "aws_rds_db_security_group_membership" + kind_display: ClassVar[str] = "AWS RDS DB Security Group Membership" + kind_description: ClassVar[str] = "AWS RDS DB Security Group Membership is a resource that represents the membership of an Amazon RDS database instance in a security group. It allows controlling access to the database instance by defining inbound and outbound rules for the security group." mapping: ClassVar[Dict[str, Bender]] = {"db_security_group_name": S("DBSecurityGroupName"), "status": S("Status")} db_security_group_name: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -76,6 +80,8 @@ class AwsRdsDBSecurityGroupMembership: @define(eq=False, slots=False) class AwsRdsVpcSecurityGroupMembership: kind: ClassVar[str] = "aws_rds_vpc_security_group_membership" + kind_display: ClassVar[str] = "AWS RDS VPC Security Group Membership" + kind_description: ClassVar[str] = "AWS RDS VPC Security Group Membership represents the group membership of an Amazon RDS instance in a Virtual Private Cloud (VPC). It controls the inbound and outbound traffic for the RDS instance within the VPC." mapping: ClassVar[Dict[str, Bender]] = {"vpc_security_group_id": S("VpcSecurityGroupId"), "status": S("Status")} vpc_security_group_id: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -84,6 +90,8 @@ class AwsRdsVpcSecurityGroupMembership: @define(eq=False, slots=False) class AwsRdsDBParameterGroupStatus: kind: ClassVar[str] = "aws_rds_db_parameter_group_status" + kind_display: ClassVar[str] = "AWS RDS DB Parameter Group Status" + kind_description: ClassVar[str] = "The status of a parameter group in Amazon RDS, which is a collection of database engine parameter values that can be applied to one or more DB instances." mapping: ClassVar[Dict[str, Bender]] = { "db_parameter_group_name": S("DBParameterGroupName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -95,6 +103,8 @@ class AwsRdsDBParameterGroupStatus: @define(eq=False, slots=False) class AwsRdsSubnet: kind: ClassVar[str] = "aws_rds_subnet" + kind_display: ClassVar[str] = "AWS RDS Subnet" + kind_description: ClassVar[str] = "RDS Subnet refers to a network subnet in the Amazon Relational Database Service (RDS), which is used to isolate and manage database instances." mapping: ClassVar[Dict[str, Bender]] = { "subnet_identifier": S("SubnetIdentifier"), "subnet_availability_zone": S("SubnetAvailabilityZone", "Name"), @@ -110,6 +120,8 @@ class AwsRdsSubnet: @define(eq=False, slots=False) class AwsRdsDBSubnetGroup: kind: ClassVar[str] = "aws_rds_db_subnet_group" + kind_display: ClassVar[str] = "AWS RDS DB Subnet Group" + kind_description: ClassVar[str] = "DB Subnet Groups are used to specify the VPC subnets where Amazon RDS DB instances are created." mapping: ClassVar[Dict[str, Bender]] = { "db_subnet_group_name": S("DBSubnetGroupName"), "db_subnet_group_description": S("DBSubnetGroupDescription"), @@ -131,6 +143,8 @@ class AwsRdsDBSubnetGroup: @define(eq=False, slots=False) class AwsRdsPendingCloudwatchLogsExports: kind: ClassVar[str] = "aws_rds_pending_cloudwatch_logs_exports" + kind_display: ClassVar[str] = "AWS RDS Pending CloudWatch Logs Exports" + kind_description: ClassVar[str] = "RDS Pending CloudWatch Logs Exports represent the logs that are being exported from an Amazon RDS database to Amazon CloudWatch Logs but are still in a pending state." mapping: ClassVar[Dict[str, Bender]] = { "log_types_to_enable": S("LogTypesToEnable", default=[]), "log_types_to_disable": S("LogTypesToDisable", default=[]), @@ -142,6 +156,8 @@ class AwsRdsPendingCloudwatchLogsExports: @define(eq=False, slots=False) class AwsRdsProcessorFeature: kind: ClassVar[str] = "aws_rds_processor_feature" + kind_display: ClassVar[str] = "AWS RDS Processor Feature" + kind_description: ClassVar[str] = "RDS Processor Features are customizable settings for processor performance in Amazon Relational Database Service, allowing users to modify processor functionalities based on their specific requirements." mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "value": S("Value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -150,6 +166,8 @@ class AwsRdsProcessorFeature: @define(eq=False, slots=False) class AwsRdsPendingModifiedValues: kind: ClassVar[str] = "aws_rds_pending_modified_values" + kind_display: ClassVar[str] = "AWS RDS Pending Modified Values" + kind_description: ClassVar[str] = "RDS Pending Modified Values represent the changes that are pending to be applied to an RDS instance, such as changes to its database engine version or storage capacity." mapping: ClassVar[Dict[str, Bender]] = { "db_instance_class": S("DBInstanceClass"), "allocated_storage": S("AllocatedStorage"), @@ -194,6 +212,8 @@ class AwsRdsPendingModifiedValues: @define(eq=False, slots=False) class AwsRdsOptionGroupMembership: kind: ClassVar[str] = "aws_rds_option_group_membership" + kind_display: ClassVar[str] = "AWS RDS Option Group Membership" + kind_description: ClassVar[str] = "RDS Option Group Memberships are used to associate DB instances with option groups which contain a list of configurable options for the database engine." mapping: ClassVar[Dict[str, Bender]] = {"option_group_name": S("OptionGroupName"), "status": S("Status")} option_group_name: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -202,6 +222,8 @@ class AwsRdsOptionGroupMembership: @define(eq=False, slots=False) class AwsRdsDBInstanceStatusInfo: kind: ClassVar[str] = "aws_rds_db_instance_status_info" + kind_display: ClassVar[str] = "AWS RDS DB Instance Status Info" + kind_description: ClassVar[str] = "RDS DB Instance Status Info provides information about the status of an Amazon RDS database instance, including its current state and any pending actions." mapping: ClassVar[Dict[str, Bender]] = { "status_type": S("StatusType"), "normal": S("Normal"), @@ -217,6 +239,8 @@ class AwsRdsDBInstanceStatusInfo: @define(eq=False, slots=False) class AwsRdsDomainMembership: kind: ClassVar[str] = "aws_rds_domain_membership" + kind_display: ClassVar[str] = "AWS RDS Domain Membership" + kind_description: ClassVar[str] = "RDS Domain Membership is a feature in Amazon RDS that allows you to join an Amazon RDS DB instance to an existing Microsoft Active Directory domain." mapping: ClassVar[Dict[str, Bender]] = { "domain": S("Domain"), "status": S("Status"), @@ -232,6 +256,8 @@ class AwsRdsDomainMembership: @define(eq=False, slots=False) class AwsRdsDBRole: kind: ClassVar[str] = "aws_rds_db_role" + kind_display: ClassVar[str] = "AWS RDS DB Role" + kind_description: ClassVar[str] = "RDS DB Roles are a way to manage user access to Amazon RDS database instances using IAM." mapping: ClassVar[Dict[str, Bender]] = { "role_arn": S("RoleArn"), "feature_name": S("FeatureName"), @@ -245,6 +271,8 @@ class AwsRdsDBRole: @define(eq=False, slots=False) class AwsRdsTag: kind: ClassVar[str] = "aws_rds_tag" + kind_display: ClassVar[str] = "AWS RDS Tag" + kind_description: ClassVar[str] = "Tags for Amazon RDS instances and resources, which are key-value pairs to help manage and organize resources." mapping: ClassVar[Dict[str, Bender]] = {"key": S("Key"), "value": S("Value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -253,6 +281,8 @@ class AwsRdsTag: @define(eq=False, slots=False) class AwsRdsInstance(RdsTaggable, AwsResource, BaseDatabase): kind: ClassVar[str] = "aws_rds_instance" + kind_display: ClassVar[str] = "AWS RDS Instance" + kind_description: ClassVar[str] = "RDS instances are managed relational databases in Amazon's cloud, providing scalable and fast performance for applications." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-db-instances", "DBInstances") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -499,6 +529,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsRdsDBClusterOptionGroupStatus: kind: ClassVar[str] = "aws_rds_db_cluster_option_group_status" + kind_display: ClassVar[str] = "AWS RDS DB Cluster Option Group Status" + kind_description: ClassVar[str] = "The status of the option group for a DB cluster in Amazon RDS, which is a collection of database options and settings that can be applied to a DB instance." mapping: ClassVar[Dict[str, Bender]] = { "db_cluster_option_group_name": S("DBClusterOptionGroupName"), "status": S("Status"), @@ -510,6 +542,8 @@ class AwsRdsDBClusterOptionGroupStatus: @define(eq=False, slots=False) class AwsRdsDBClusterMember: kind: ClassVar[str] = "aws_rds_db_cluster_member" + kind_display: ClassVar[str] = "AWS RDS DB Cluster Member" + kind_description: ClassVar[str] = "DB Cluster Member is a participant in an Amazon RDS Database Cluster, which is a managed relational database service offered by AWS for scaling and high availability." mapping: ClassVar[Dict[str, Bender]] = { "db_instance_identifier": S("DBInstanceIdentifier"), "is_cluster_writer": S("IsClusterWriter"), @@ -525,6 +559,8 @@ class AwsRdsDBClusterMember: @define(eq=False, slots=False) class AwsRdsScalingConfigurationInfo: kind: ClassVar[str] = "aws_rds_scaling_configuration_info" + kind_display: ClassVar[str] = "AWS RDS Scaling Configuration Info" + kind_description: ClassVar[str] = "RDS Scaling Configuration Info provides information about the scaling configuration for Amazon RDS (Relational Database Service). It includes details about scaling policies, auto-scaling settings, and capacity planning for RDS instances." mapping: ClassVar[Dict[str, Bender]] = { "min_capacity": S("MinCapacity"), "max_capacity": S("MaxCapacity"), @@ -544,6 +580,8 @@ class AwsRdsScalingConfigurationInfo: @define(eq=False, slots=False) class AwsRdsClusterPendingModifiedValues: kind: ClassVar[str] = "aws_rds_cluster_pending_modified_values" + kind_display: ClassVar[str] = "AWS RDS Cluster Pending Modified Values" + kind_description: ClassVar[str] = "RDS Cluster Pending Modified Values represents the pending modifications made to an Amazon RDS Cluster, indicating changes that will be applied soon." mapping: ClassVar[Dict[str, Bender]] = { "pending_cloudwatch_logs_exports": S("PendingCloudwatchLogsExports") >> Bend(AwsRdsPendingCloudwatchLogsExports.mapping), @@ -568,6 +606,8 @@ class AwsRdsClusterPendingModifiedValues: @define(eq=False, slots=False) class AwsRdsServerlessV2ScalingConfigurationInfo: kind: ClassVar[str] = "aws_rds_serverless_v2_scaling_configuration_info" + kind_display: ClassVar[str] = "AWS RDS Serverless V2 Scaling Configuration Info" + kind_description: ClassVar[str] = "RDS Serverless V2 Scaling Configuration provides information about the configuration settings for scaling Amazon RDS Aurora Serverless v2. It allows users to specify the minimum and maximum capacity for their serverless clusters, as well as the target utilization and scaling thresholds." mapping: ClassVar[Dict[str, Bender]] = {"min_capacity": S("MinCapacity"), "max_capacity": S("MaxCapacity")} min_capacity: Optional[float] = field(default=None) max_capacity: Optional[float] = field(default=None) @@ -576,6 +616,8 @@ class AwsRdsServerlessV2ScalingConfigurationInfo: @define(eq=False, slots=False) class AwsRdsMasterUserSecret: kind: ClassVar[str] = "aws_rds_master_user_secret" + kind_display: ClassVar[str] = "AWS RDS Master User Secret" + kind_description: ClassVar[str] = "AWS RDS Master User Secret refers to the credentials used to authenticate the master user of an Amazon RDS (Relational Database Service) instance. These credentials are private and should be securely stored." mapping: ClassVar[Dict[str, Bender]] = { "secret_arn": S("SecretArn"), "secret_status": S("SecretStatus"), @@ -589,6 +631,8 @@ class AwsRdsMasterUserSecret: @define(eq=False, slots=False) class AwsRdsCluster(RdsTaggable, AwsResource, BaseDatabase): kind: ClassVar[str] = "aws_rds_cluster" + kind_display: ClassVar[str] = "AWS RDS Cluster" + kind_description: ClassVar[str] = "RDS Clusters are managed relational database services in Amazon's cloud, providing scalable and highly available databases for applications running on the Amazon Web Services infrastructure." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-db-clusters", "DBClusters") mapping: ClassVar[Dict[str, Bender]] = { "id": S("DBClusterIdentifier"), diff --git a/plugins/aws/resoto_plugin_aws/resource/redshift.py b/plugins/aws/resoto_plugin_aws/resource/redshift.py index d730499df9..f9d42bafd3 100644 --- a/plugins/aws/resoto_plugin_aws/resource/redshift.py +++ b/plugins/aws/resoto_plugin_aws/resource/redshift.py @@ -21,6 +21,8 @@ @define(eq=False, slots=False) class AwsRedshiftNetworkInterface: kind: ClassVar[str] = "aws_redshift_network_interface" + kind_display: ClassVar[str] = "AWS Redshift Network Interface" + kind_description: ClassVar[str] = "Redshift Network Interface is a network interface attached to an Amazon Redshift cluster, providing connectivity to the cluster from other resources in the same VPC." mapping: ClassVar[Dict[str, Bender]] = { "network_interface_id": S("NetworkInterfaceId"), "subnet_id": S("SubnetId"), @@ -36,6 +38,8 @@ class AwsRedshiftNetworkInterface: @define(eq=False, slots=False) class AwsRedshiftVpcEndpoint: kind: ClassVar[str] = "aws_redshift_vpc_endpoint" + kind_display: ClassVar[str] = "AWS Redshift VPC Endpoint" + kind_description: ClassVar[str] = "Redshift VPC Endpoint is a secure and private connection between Amazon Redshift and an Amazon Virtual Private Cloud (VPC). It allows data to be transferred between the VPC and Redshift cluster without going through the internet." mapping: ClassVar[Dict[str, Bender]] = { "vpc_endpoint_id": S("VpcEndpointId"), "vpc_id": S("VpcId"), @@ -49,6 +53,8 @@ class AwsRedshiftVpcEndpoint: @define(eq=False, slots=False) class AwsRedshiftEndpoint: kind: ClassVar[str] = "aws_redshift_endpoint" + kind_display: ClassVar[str] = "AWS Redshift Endpoint" + kind_description: ClassVar[str] = "An AWS Redshift Endpoint is the unique network address for connecting to an Amazon Redshift cluster, allowing users to run queries and perform data analysis on large datasets." mapping: ClassVar[Dict[str, Bender]] = { "address": S("Address"), "port": S("Port"), @@ -62,6 +68,8 @@ class AwsRedshiftEndpoint: @define(eq=False, slots=False) class AwsRedshiftClusterSecurityGroupMembership: kind: ClassVar[str] = "aws_redshift_cluster_security_group_membership" + kind_display: ClassVar[str] = "AWS Redshift Cluster Security Group Membership" + kind_description: ClassVar[str] = "Redshift Cluster Security Group Membership allows you to manage the security group membership for an Amazon Redshift cluster. Security groups control inbound and outbound traffic to your cluster." mapping: ClassVar[Dict[str, Bender]] = { "cluster_security_group_name": S("ClusterSecurityGroupName"), "status": S("Status"), @@ -73,6 +81,8 @@ class AwsRedshiftClusterSecurityGroupMembership: @define(eq=False, slots=False) class AwsRedshiftVpcSecurityGroupMembership: kind: ClassVar[str] = "aws_redshift_vpc_security_group_membership" + kind_display: ClassVar[str] = "AWS Redshift VPC Security Group Membership" + kind_description: ClassVar[str] = "Redshift VPC Security Group Membership is a feature in Amazon Redshift that allows you to associate Redshift clusters with Amazon Virtual Private Cloud (VPC) security groups for enhanced network security." mapping: ClassVar[Dict[str, Bender]] = {"vpc_security_group_id": S("VpcSecurityGroupId"), "status": S("Status")} vpc_security_group_id: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -81,6 +91,8 @@ class AwsRedshiftVpcSecurityGroupMembership: @define(eq=False, slots=False) class AwsRedshiftClusterParameterStatus: kind: ClassVar[str] = "aws_redshift_cluster_parameter_status" + kind_display: ClassVar[str] = "AWS Redshift Cluster Parameter Status" + kind_description: ClassVar[str] = "AWS Redshift Cluster Parameter Status provides information about the status and configuration of parameters for an Amazon Redshift cluster." mapping: ClassVar[Dict[str, Bender]] = { "parameter_name": S("ParameterName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -94,6 +106,8 @@ class AwsRedshiftClusterParameterStatus: @define(eq=False, slots=False) class AwsRedshiftClusterParameterGroupStatus: kind: ClassVar[str] = "aws_redshift_cluster_parameter_group_status" + kind_display: ClassVar[str] = "AWS Redshift Cluster Parameter Group Status" + kind_description: ClassVar[str] = "Redshift Cluster Parameter Group Status provides information about the status of a parameter group in Amazon Redshift, which is used to manage the configuration settings for a Redshift cluster." mapping: ClassVar[Dict[str, Bender]] = { "parameter_group_name": S("ParameterGroupName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -108,6 +122,8 @@ class AwsRedshiftClusterParameterGroupStatus: @define(eq=False, slots=False) class AwsRedshiftPendingModifiedValues: kind: ClassVar[str] = "aws_redshift_pending_modified_values" + kind_display: ClassVar[str] = "AWS Redshift Pending Modified Values" + kind_description: ClassVar[str] = "Redshift Pending Modified Values represents the configuration changes that are currently pending for an Amazon Redshift cluster." mapping: ClassVar[Dict[str, Bender]] = { "master_user_password": S("MasterUserPassword"), "node_type": S("NodeType"), @@ -137,6 +153,8 @@ class AwsRedshiftPendingModifiedValues: @define(eq=False, slots=False) class AwsRedshiftRestoreStatus: kind: ClassVar[str] = "aws_redshift_restore_status" + kind_display: ClassVar[str] = "AWS Redshift Restore Status" + kind_description: ClassVar[str] = "Redshift Restore Status refers to the current status of a restore operation in Amazon Redshift, which is a fully managed data warehouse service in the cloud." mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "current_restore_rate_in_mega_bytes_per_second": S("CurrentRestoreRateInMegaBytesPerSecond"), @@ -156,6 +174,8 @@ class AwsRedshiftRestoreStatus: @define(eq=False, slots=False) class AwsRedshiftDataTransferProgress: kind: ClassVar[str] = "aws_redshift_data_transfer_progress" + kind_display: ClassVar[str] = "AWS Redshift Data Transfer Progress" + kind_description: ClassVar[str] = "AWS Redshift Data Transfer Progress provides information about the progress of data transfer operations in Amazon Redshift, a fully-managed data warehouse service." mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "current_rate_in_mega_bytes_per_second": S("CurrentRateInMegaBytesPerSecond"), @@ -175,6 +195,8 @@ class AwsRedshiftDataTransferProgress: @define(eq=False, slots=False) class AwsRedshiftHsmStatus: kind: ClassVar[str] = "aws_redshift_hsm_status" + kind_display: ClassVar[str] = "AWS Redshift HSM Status" + kind_description: ClassVar[str] = "The AWS Redshift HSM Status provides information about the status of the Hardware Security Module (HSM) used to encrypt data in Amazon Redshift." mapping: ClassVar[Dict[str, Bender]] = { "hsm_client_certificate_identifier": S("HsmClientCertificateIdentifier"), "hsm_configuration_identifier": S("HsmConfigurationIdentifier"), @@ -188,6 +210,8 @@ class AwsRedshiftHsmStatus: @define(eq=False, slots=False) class AwsRedshiftClusterSnapshotCopyStatus: kind: ClassVar[str] = "aws_redshift_cluster_snapshot_copy_status" + kind_display: ClassVar[str] = "AWS Redshift Cluster Snapshot Copy Status" + kind_description: ClassVar[str] = "The status of the copy operation for a snapshot of an Amazon Redshift cluster." mapping: ClassVar[Dict[str, Bender]] = { "destination_region": S("DestinationRegion"), "retention_period": S("RetentionPeriod"), @@ -203,6 +227,8 @@ class AwsRedshiftClusterSnapshotCopyStatus: @define(eq=False, slots=False) class AwsRedshiftClusterNode: kind: ClassVar[str] = "aws_redshift_cluster_node" + kind_display: ClassVar[str] = "AWS Redshift Cluster Node" + kind_description: ClassVar[str] = "Redshift Cluster Node is a compute resource within an Amazon Redshift cluster that runs the database queries and stores the data in Redshift data warehouse." mapping: ClassVar[Dict[str, Bender]] = { "node_role": S("NodeRole"), "private_ip_address": S("PrivateIPAddress"), @@ -216,6 +242,8 @@ class AwsRedshiftClusterNode: @define(eq=False, slots=False) class AwsRedshiftElasticIpStatus: kind: ClassVar[str] = "aws_redshift_elastic_ip_status" + kind_display: ClassVar[str] = "AWS Redshift Elastic IP Status" + kind_description: ClassVar[str] = "The status of an Elastic IP assigned to an Amazon Redshift cluster." mapping: ClassVar[Dict[str, Bender]] = {"elastic_ip": S("ElasticIp"), "status": S("Status")} elastic_ip: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -224,6 +252,8 @@ class AwsRedshiftElasticIpStatus: @define(eq=False, slots=False) class AwsRedshiftClusterIamRole: kind: ClassVar[str] = "aws_redshift_cluster_iam_role" + kind_display: ClassVar[str] = "AWS Redshift Cluster IAM Role" + kind_description: ClassVar[str] = "An IAM role that is used to grant permissions to an Amazon Redshift cluster to access other AWS services." mapping: ClassVar[Dict[str, Bender]] = {"iam_role_arn": S("IamRoleArn"), "apply_status": S("ApplyStatus")} iam_role_arn: Optional[str] = field(default=None) apply_status: Optional[str] = field(default=None) @@ -232,6 +262,8 @@ class AwsRedshiftClusterIamRole: @define(eq=False, slots=False) class AwsRedshiftDeferredMaintenanceWindow: kind: ClassVar[str] = "aws_redshift_deferred_maintenance_window" + kind_display: ClassVar[str] = "AWS Redshift Deferred Maintenance Window" + kind_description: ClassVar[str] = "Deferred Maintenance Window is a feature in AWS Redshift that allows users to postpone maintenance activities for their Redshift clusters." mapping: ClassVar[Dict[str, Bender]] = { "defer_maintenance_identifier": S("DeferMaintenanceIdentifier"), "defer_maintenance_start_time": S("DeferMaintenanceStartTime"), @@ -245,6 +277,8 @@ class AwsRedshiftDeferredMaintenanceWindow: @define(eq=False, slots=False) class AwsRedshiftResizeInfo: kind: ClassVar[str] = "aws_redshift_resize_info" + kind_display: ClassVar[str] = "AWS Redshift Resize Info" + kind_description: ClassVar[str] = "Redshift Resize Info provides information about the resizing process of an AWS Redshift cluster, which allows users to easily scale their data warehouse to handle larger workloads." mapping: ClassVar[Dict[str, Bender]] = { "resize_type": S("ResizeType"), "allow_cancel_resize": S("AllowCancelResize"), @@ -256,6 +290,8 @@ class AwsRedshiftResizeInfo: @define(eq=False, slots=False) class AwsRedshiftAquaConfiguration: kind: ClassVar[str] = "aws_redshift_aqua_configuration" + kind_display: ClassVar[str] = "AWS Redshift Aqua Configuration" + kind_description: ClassVar[str] = "Aqua is a feature of Amazon Redshift that allows you to offload and accelerate the execution of certain types of queries using machine learning and columnar storage technology." mapping: ClassVar[Dict[str, Bender]] = { "aqua_status": S("AquaStatus"), "aqua_configuration_status": S("AquaConfigurationStatus"), @@ -267,6 +303,8 @@ class AwsRedshiftAquaConfiguration: @define(eq=False, slots=False) class AwsRedshiftReservedNodeExchangeStatus: kind: ClassVar[str] = "aws_redshift_reserved_node_exchange_status" + kind_display: ClassVar[str] = "AWS Redshift Reserved Node Exchange Status" + kind_description: ClassVar[str] = "Reserved Node Exchange Status provides information about the status of a reserved node exchange in Amazon Redshift, a fully managed data warehouse service." mapping: ClassVar[Dict[str, Bender]] = { "reserved_node_exchange_request_id": S("ReservedNodeExchangeRequestId"), "status": S("Status"), @@ -292,6 +330,8 @@ class AwsRedshiftReservedNodeExchangeStatus: @define(eq=False, slots=False) class AwsRedshiftCluster(AwsResource): kind: ClassVar[str] = "aws_redshift_cluster" + kind_display: ClassVar[str] = "AWS Redshift Cluster" + kind_description: ClassVar[str] = "Redshift Cluster is a fully managed, petabyte-scale data warehouse service provided by AWS." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-clusters", "Clusters") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/route53.py b/plugins/aws/resoto_plugin_aws/resource/route53.py index 5efdffccd6..5e49f90d6b 100644 --- a/plugins/aws/resoto_plugin_aws/resource/route53.py +++ b/plugins/aws/resoto_plugin_aws/resource/route53.py @@ -23,6 +23,8 @@ @define(eq=False, slots=False) class AwsRoute53ZoneConfig: kind: ClassVar[str] = "aws_route53_zone_config" + kind_display: ClassVar[str] = "AWS Route53 Zone Config" + kind_description: ClassVar[str] = "Route53 Zone Config is a service provided by Amazon Web Services that allows users to configure DNS settings for their domain names in the cloud." mapping: ClassVar[Dict[str, Bender]] = {"comment": S("Comment"), "private_zone": S("PrivateZone")} comment: Optional[str] = field(default=None) private_zone: Optional[bool] = field(default=None) @@ -31,6 +33,8 @@ class AwsRoute53ZoneConfig: @define(eq=False, slots=False) class AwsRoute53LinkedService: kind: ClassVar[str] = "aws_route53_linked_service" + kind_display: ClassVar[str] = "AWS Route 53 Linked Service" + kind_description: ClassVar[str] = "Route 53 Linked Service is a feature in AWS Route 53 that allows you to link your domain name to other AWS services, such as an S3 bucket or CloudFront distribution." mapping: ClassVar[Dict[str, Bender]] = {"service_principal": S("ServicePrincipal"), "description": S("Description")} service_principal: Optional[str] = field(default=None) description: Optional[str] = field(default=None) @@ -39,6 +43,8 @@ class AwsRoute53LinkedService: @define(eq=False, slots=False) class AwsRoute53Zone(AwsResource, BaseDNSZone): kind: ClassVar[str] = "aws_route53_zone" + kind_display: ClassVar[str] = "AWS Route 53 Zone" + kind_description: ClassVar[str] = "Route 53 is a scalable domain name system (DNS) web service designed to provide highly reliable and cost-effective domain registration, DNS routing, and health checking of resources within the AWS cloud." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-hosted-zones", "HostedZones") reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -142,6 +148,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsRoute53GeoLocation: kind: ClassVar[str] = "aws_route53_geo_location" + kind_display: ClassVar[str] = "AWS Route53 Geo Location" + kind_description: ClassVar[str] = "Route53 Geo Location is a feature of AWS Route53 DNS service that allows you to route traffic based on the geographic location of your users, providing low latency and improved user experience." mapping: ClassVar[Dict[str, Bender]] = { "continent_code": S("ContinentCode"), "country_code": S("CountryCode"), @@ -155,6 +163,8 @@ class AwsRoute53GeoLocation: @define(eq=False, slots=False) class AwsRoute53AliasTarget: kind: ClassVar[str] = "aws_route53_alias_target" + kind_display: ClassVar[str] = "AWS Route 53 Alias Target" + kind_description: ClassVar[str] = "AWS Route 53 Alias Target is a feature of Amazon Route 53, a scalable domain name system web service that translates domain names to IP addresses. Alias Target allows you to route traffic to other AWS resources such as Amazon S3 buckets, CloudFront distributions, and Elastic Load Balancers." mapping: ClassVar[Dict[str, Bender]] = { "hosted_zone_id": S("HostedZoneId"), "dns_name": S("DNSName"), @@ -168,6 +178,8 @@ class AwsRoute53AliasTarget: @define(eq=False, slots=False) class AwsRoute53CidrRoutingConfig: kind: ClassVar[str] = "aws_route53_cidr_routing_config" + kind_display: ClassVar[str] = "AWS Route 53 CIDR Routing Config" + kind_description: ClassVar[str] = "CIDR Routing Config is a feature in AWS Route 53 that allows you to route traffic based on CIDR blocks, enabling more granular control over how your DNS queries are resolved." mapping: ClassVar[Dict[str, Bender]] = {"collection_id": S("CollectionId"), "location_name": S("LocationName")} collection_id: Optional[str] = field(default=None) location_name: Optional[str] = field(default=None) @@ -176,6 +188,8 @@ class AwsRoute53CidrRoutingConfig: @define(eq=False, slots=False) class AwsRoute53ResourceRecord(AwsResource, BaseDNSRecord): kind: ClassVar[str] = "aws_route53_resource_record" + kind_display: ClassVar[str] = "AWS Route 53 Resource Record" + kind_description: ClassVar[str] = "Route 53 Resource Records are domain name system (DNS) records used by AWS Route 53 to route traffic to AWS resources or to external resources." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [], @@ -191,6 +205,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsRoute53ResourceRecordSet(AwsResource, BaseDNSRecordSet): kind: ClassVar[str] = "aws_route53_resource_record_set" + kind_display: ClassVar[str] = "AWS Route 53 Resource Record Set" + kind_description: ClassVar[str] = "Route 53 Resource Record Sets are DNS records that map domain names to IP addresses or other DNS resources, allowing users to manage domain name resolution in the Amazon Route 53 service." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["aws_route53_resource_record"], diff --git a/plugins/aws/resoto_plugin_aws/resource/s3.py b/plugins/aws/resoto_plugin_aws/resource/s3.py index 35c6a16079..181c2e23f3 100644 --- a/plugins/aws/resoto_plugin_aws/resource/s3.py +++ b/plugins/aws/resoto_plugin_aws/resource/s3.py @@ -20,6 +20,8 @@ @define(eq=False, slots=False) class AwsS3ServerSideEncryptionRule: kind: ClassVar[str] = "aws_s3_server_side_encryption_rule" + kind_display: ClassVar[str] = "AWS S3 Server-side Encryption Rule" + kind_description: ClassVar[str] = "Server-side encryption rules are used in AWS S3 to specify encryption settings for objects stored in the S3 bucket, ensuring data confidentiality and integrity." mapping: ClassVar[Dict[str, Bender]] = { "sse_algorithm": S("ApplyServerSideEncryptionByDefault", "SSEAlgorithm"), "kms_master_key_id": S("ApplyServerSideEncryptionByDefault", "KMSMasterKeyID"), @@ -33,6 +35,8 @@ class AwsS3ServerSideEncryptionRule: @define(eq=False, slots=False) class AwsS3PublicAccessBlockConfiguration: kind: ClassVar[str] = "aws_s3_public_access_block_configuration" + kind_display: ClassVar[str] = "AWS S3 Public Access Block Configuration" + kind_description: ClassVar[str] = "S3 Public Access Block Configuration is a feature in AWS S3 that allows users to manage and restrict public access to their S3 buckets and objects." mapping: ClassVar[Dict[str, Bender]] = { "block_public_acls": S("BlockPublicAcls"), "ignore_public_acls": S("IgnorePublicAcls"), @@ -48,6 +52,8 @@ class AwsS3PublicAccessBlockConfiguration: @define(eq=False, slots=False) class AwsS3Owner: kind: ClassVar[str] = "aws_s3_owner" + kind_display: ClassVar[str] = "AWS S3 Owner" + kind_description: ClassVar[str] = "The AWS S3 Owner refers to the account or entity that owns the Amazon S3 bucket, which is a storage resource provided by Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = {"display_name": S("DisplayName"), "id": S("ID")} display_name: Optional[str] = field(default=None) id: Optional[str] = field(default=None) @@ -56,6 +62,8 @@ class AwsS3Owner: @define(eq=False, slots=False) class AwsS3Grantee: kind: ClassVar[str] = "aws_s3_grantee" + kind_display: ClassVar[str] = "AWS S3 Grantee" + kind_description: ClassVar[str] = "AWS S3 Grantees are entities that have been given permission to access objects in an S3 bucket." mapping: ClassVar[Dict[str, Bender]] = { "display_name": S("DisplayName"), "email_address": S("EmailAddress"), @@ -73,6 +81,8 @@ class AwsS3Grantee: @define(eq=False, slots=False) class AwsS3Grant: kind: ClassVar[str] = "aws_s3_grant" + kind_display: ClassVar[str] = "AWS S3 Grant" + kind_description: ClassVar[str] = "AWS S3 Grant is a permission that allows a specific user or group to access and perform operations on an S3 bucket or object in the Amazon S3 storage service." mapping: ClassVar[Dict[str, Bender]] = { "grantee": S("Grantee") >> Bend(AwsS3Grantee.mapping), "permission": S("Permission"), @@ -84,6 +94,8 @@ class AwsS3Grant: @define(eq=False, slots=False) class AwsS3BucketAcl: kind: ClassVar[str] = "aws_s3_bucket_acl" + kind_display: ClassVar[str] = "AWS S3 Bucket ACL" + kind_description: ClassVar[str] = "S3 Bucket ACL (Access Control List) is a set of permissions that defines who can access objects (files) stored in an Amazon S3 bucket and what actions they can perform on those objects." mapping: ClassVar[Dict[str, Bender]] = { "owner": S("Owner") >> Bend(AwsS3Owner.mapping), "grants": S("Grants", default=[]) >> ForallBend(AwsS3Grant.mapping), @@ -95,6 +107,8 @@ class AwsS3BucketAcl: @define(eq=False, slots=False) class AwsS3TargetGrant: kind: ClassVar[str] = "aws_s3_target_grant" + kind_display: ClassVar[str] = "AWS S3 Target Grant" + kind_description: ClassVar[str] = "Target grants in AWS S3 provide permissions for cross-account replication, allowing one AWS S3 bucket to grant another AWS S3 bucket permissions to perform replication." mapping: ClassVar[Dict[str, Bender]] = { "grantee": S("Grantee") >> Bend(AwsS3Grantee.mapping), "permission": S("Permission"), @@ -106,6 +120,8 @@ class AwsS3TargetGrant: @define(eq=False, slots=False) class AwsS3Logging: kind: ClassVar[str] = "aws_s3_logging" + kind_display: ClassVar[str] = "AWS S3 Logging" + kind_description: ClassVar[str] = "S3 Logging is a feature in Amazon Simple Storage Service that allows users to track and record access logs for their S3 buckets." mapping: ClassVar[Dict[str, Bender]] = { "target_bucket": S("TargetBucket"), "target_grants": S("TargetGrants") >> ForallBend(AwsS3TargetGrant.mapping), @@ -119,6 +135,8 @@ class AwsS3Logging: @define(eq=False, slots=False) class AwsS3Bucket(AwsResource, BaseBucket): kind: ClassVar[str] = "aws_s3_bucket" + kind_display: ClassVar[str] = "AWS S3 Bucket" + kind_description: ClassVar[str] = "S3 buckets are simple storage containers in Amazon's cloud, offering a scalable storage solution for various types of data." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-buckets", "Buckets", override_iam_permission="s3:ListAllMyBuckets" ) @@ -313,6 +331,8 @@ class AwsS3AccountSettings(AwsResource, PhantomBaseResource): """ kind: ClassVar[str] = "aws_s3_account_settings" + kind_display: ClassVar[str] = "AWS S3 Account Settings" + kind_description: ClassVar[str] = "AWS S3 Account Settings refer to the configuration options and preferences available for an Amazon S3 (Simple Storage Service) account." reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_account"]}, } diff --git a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py index 1ee8307afd..180c89d3f9 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py +++ b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py @@ -70,6 +70,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerNotebook(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_notebook" + kind_display: ClassVar[str] = "AWS SageMaker Notebook" + kind_description: ClassVar[str] = "SageMaker Notebooks are a fully managed service by AWS that provides a Jupyter notebook environment for data scientists and developers to build, train, and deploy machine learning models." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_ec2_subnet", "aws_ec2_security_group", "aws_iam_role", "aws_sagemaker_code_repository"], @@ -183,6 +185,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerParameterRangeSpecification: kind: ClassVar[str] = "aws_sagemaker_integer_parameter_range_specification" + kind_display: ClassVar[str] = "AWS SageMaker Integer Parameter Range Specification" + kind_description: ClassVar[str] = "The Integer Parameter Range Specification is a configuration option in AWS SageMaker that allows users to define a range of integer values for a hyperparameter when training machine learning models." mapping: ClassVar[Dict[str, Bender]] = {"min_value": S("MinValue"), "max_value": S("MaxValue")} min_value: Optional[str] = field(default=None) max_value: Optional[str] = field(default=None) @@ -191,6 +195,8 @@ class AwsSagemakerParameterRangeSpecification: @define(eq=False, slots=False) class AwsSagemakerParameterRange: kind: ClassVar[str] = "aws_sagemaker_parameter_range" + kind_display: ClassVar[str] = "AWS SageMaker Parameter Range" + kind_description: ClassVar[str] = "SageMaker Parameter Range is a feature of Amazon SageMaker that allows you to define the range of values for hyperparameters in your machine learning models, enabling you to fine-tune the performance of your models." mapping: ClassVar[Dict[str, Bender]] = { "integer_parameter_range_specification": S("IntegerParameterRangeSpecification") >> Bend(AwsSagemakerParameterRangeSpecification.mapping), @@ -206,6 +212,8 @@ class AwsSagemakerParameterRange: @define(eq=False, slots=False) class AwsSagemakerHyperParameterSpecification: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_specification" + kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Specification" + kind_description: ClassVar[str] = "SageMaker Hyper Parameter Specification is used to define a set of hyperparameters for training machine learning models with Amazon SageMaker, which is a fully-managed service that enables users to build, train, and deploy machine learning models at scale." mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "description": S("Description"), @@ -227,6 +235,8 @@ class AwsSagemakerHyperParameterSpecification: @define(eq=False, slots=False) class AwsSagemakerMetricDefinition: kind: ClassVar[str] = "aws_sagemaker_metric_definition" + kind_display: ClassVar[str] = "AWS SageMaker Metric Definition" + kind_description: ClassVar[str] = "SageMaker Metric Definitions are custom metrics that can be used to monitor and evaluate the performance of machine learning models trained on Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "regex": S("Regex")} name: Optional[str] = field(default=None) regex: Optional[str] = field(default=None) @@ -235,6 +245,8 @@ class AwsSagemakerMetricDefinition: @define(eq=False, slots=False) class AwsSagemakerChannelSpecification: kind: ClassVar[str] = "aws_sagemaker_channel_specification" + kind_display: ClassVar[str] = "AWS SageMaker Channel Specification" + kind_description: ClassVar[str] = "Sagemaker Channel Specifications are used to define the input data for a SageMaker training job, including the S3 location of the data and any data preprocessing configuration." mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "description": S("Description"), @@ -254,6 +266,8 @@ class AwsSagemakerChannelSpecification: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTuningJobObjective: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_objective" + kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job Objective" + kind_description: ClassVar[str] = "The objective of a hyperparameter tuning job in Amazon SageMaker is to optimize machine learning models by searching for the best combination of hyperparameters to minimize or maximize a specific metric." mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "metric_name": S("MetricName")} type: Optional[str] = field(default=None) metric_name: Optional[str] = field(default=None) @@ -262,6 +276,8 @@ class AwsSagemakerHyperParameterTuningJobObjective: @define(eq=False, slots=False) class AwsSagemakerTrainingSpecification: kind: ClassVar[str] = "aws_sagemaker_training_specification" + kind_display: ClassVar[str] = "AWS SageMaker Training Specification" + kind_description: ClassVar[str] = "SageMaker Training Specification is a resource in AWS that provides the configuration details for training a machine learning model using Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "training_image": S("TrainingImage"), "training_image_digest": S("TrainingImageDigest"), @@ -287,6 +303,8 @@ class AwsSagemakerTrainingSpecification: @define(eq=False, slots=False) class AwsSagemakerModelPackageContainerDefinition: kind: ClassVar[str] = "aws_sagemaker_model_package_container_definition" + kind_display: ClassVar[str] = "AWS SageMaker Model Package Container Definition" + kind_description: ClassVar[str] = "AWS SageMaker Model Package Container Definition is a configuration that describes how to run a machine learning model as a container in Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "container_hostname": S("ContainerHostname"), "image": S("Image"), @@ -314,6 +332,8 @@ class AwsSagemakerModelPackageContainerDefinition: @define(eq=False, slots=False) class AwsSagemakerInferenceSpecification: kind: ClassVar[str] = "aws_sagemaker_inference_specification" + kind_display: ClassVar[str] = "AWS SageMaker Inference Specification" + kind_description: ClassVar[str] = "SageMaker Inference Specification is a specification file that defines the input and output formats for deploying machine learning models on Amazon SageMaker for making predictions." mapping: ClassVar[Dict[str, Bender]] = { "containers": S("Containers", default=[]) >> ForallBend(AwsSagemakerModelPackageContainerDefinition.mapping), "supported_transform_instance_types": S("SupportedTransformInstanceTypes", default=[]), @@ -331,6 +351,8 @@ class AwsSagemakerInferenceSpecification: @define(eq=False, slots=False) class AwsSagemakerS3DataSource: kind: ClassVar[str] = "aws_sagemaker_s3_data_source" + kind_display: ClassVar[str] = "AWS SageMaker S3 Data Source" + kind_description: ClassVar[str] = "SageMaker S3 Data Source is a cloud resource in Amazon SageMaker that allows users to access and process data stored in Amazon S3 for machine learning tasks." mapping: ClassVar[Dict[str, Bender]] = { "s3_data_type": S("S3DataType"), "s3_uri": S("S3Uri"), @@ -348,6 +370,8 @@ class AwsSagemakerS3DataSource: @define(eq=False, slots=False) class AwsSagemakerFileSystemDataSource: kind: ClassVar[str] = "aws_sagemaker_file_system_data_source" + kind_display: ClassVar[str] = "AWS SageMaker File System Data Source" + kind_description: ClassVar[str] = "SageMaker File System Data Source is a resource in AWS SageMaker that provides access to data stored in an Amazon Elastic File System (EFS) from your machine learning training job or processing job." mapping: ClassVar[Dict[str, Bender]] = { "file_system_id": S("FileSystemId"), "file_system_access_mode": S("FileSystemAccessMode"), @@ -363,6 +387,8 @@ class AwsSagemakerFileSystemDataSource: @define(eq=False, slots=False) class AwsSagemakerDataSource: kind: ClassVar[str] = "aws_sagemaker_data_source" + kind_display: ClassVar[str] = "AWS SageMaker Data Source" + kind_description: ClassVar[str] = "SageMaker Data Source is a resource in Amazon SageMaker that allows users to easily access and manage their data for machine learning tasks." mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource") >> Bend(AwsSagemakerS3DataSource.mapping), "file_system_data_source": S("FileSystemDataSource") >> Bend(AwsSagemakerFileSystemDataSource.mapping), @@ -374,6 +400,8 @@ class AwsSagemakerDataSource: @define(eq=False, slots=False) class AwsSagemakerChannel: kind: ClassVar[str] = "aws_sagemaker_channel" + kind_display: ClassVar[str] = "AWS SageMaker Channel" + kind_description: ClassVar[str] = "SageMaker Channels are data sources used for training machine learning models on Amazon SageMaker. They can be used to securely stream and preprocess data from various sources." mapping: ClassVar[Dict[str, Bender]] = { "channel_name": S("ChannelName"), "data_source": S("DataSource") >> Bend(AwsSagemakerDataSource.mapping), @@ -395,6 +423,8 @@ class AwsSagemakerChannel: @define(eq=False, slots=False) class AwsSagemakerOutputDataConfig: kind: ClassVar[str] = "aws_sagemaker_output_data_config" + kind_display: ClassVar[str] = "AWS SageMaker Output Data Config" + kind_description: ClassVar[str] = "SageMaker Output Data Config is a feature of Amazon SageMaker that allows users to specify where the output data from a training job should be stored." mapping: ClassVar[Dict[str, Bender]] = {"kms_key_id": S("KmsKeyId"), "s3_output_path": S("S3OutputPath")} kms_key_id: Optional[str] = field(default=None) s3_output_path: Optional[str] = field(default=None) @@ -403,6 +433,8 @@ class AwsSagemakerOutputDataConfig: @define(eq=False, slots=False) class AwsSagemakerInstanceGroup: kind: ClassVar[str] = "aws_sagemaker_instance_group" + kind_display: ClassVar[str] = "AWS SageMaker Instance Group" + kind_description: ClassVar[str] = "SageMaker Instance Groups are a collection of EC2 instances used for training and deploying machine learning models with Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -416,6 +448,8 @@ class AwsSagemakerInstanceGroup: @define(eq=False, slots=False) class AwsSagemakerResourceConfig: kind: ClassVar[str] = "aws_sagemaker_resource_config" + kind_display: ClassVar[str] = "AWS SageMaker Resource Config" + kind_description: ClassVar[str] = "SageMaker Resource Config is a configuration for AWS SageMaker, a fully managed machine learning service provided by Amazon Web Services, which allows users to build, train, and deploy machine learning models at scale." mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -435,6 +469,8 @@ class AwsSagemakerResourceConfig: @define(eq=False, slots=False) class AwsSagemakerStoppingCondition: kind: ClassVar[str] = "aws_sagemaker_stopping_condition" + kind_display: ClassVar[str] = "AWS SageMaker Stopping Condition" + kind_description: ClassVar[str] = "Stopping condition for an AWS SageMaker training job, which defines the criteria for stopping the training process based on time, accuracy, or other metrics." mapping: ClassVar[Dict[str, Bender]] = { "max_runtime_in_seconds": S("MaxRuntimeInSeconds"), "max_wait_time_in_seconds": S("MaxWaitTimeInSeconds"), @@ -446,6 +482,8 @@ class AwsSagemakerStoppingCondition: @define(eq=False, slots=False) class AwsSagemakerTrainingJobDefinition: kind: ClassVar[str] = "aws_sagemaker_training_job_definition" + kind_display: ClassVar[str] = "AWS SageMaker Training Job Definition" + kind_description: ClassVar[str] = "SageMaker Training Job Definition is a configuration that specifies how a machine learning model should be trained using Amazon SageMaker, which is a fully-managed service that enables developers and data scientists to build, train, and deploy machine learning models quickly and easily." mapping: ClassVar[Dict[str, Bender]] = { "training_input_mode": S("TrainingInputMode"), "hyper_parameters": S("HyperParameters"), @@ -465,6 +503,8 @@ class AwsSagemakerTrainingJobDefinition: @define(eq=False, slots=False) class AwsSagemakerTransformS3DataSource: kind: ClassVar[str] = "aws_sagemaker_transform_s3_data_source" + kind_display: ClassVar[str] = "AWS SageMaker Transform S3 Data Source" + kind_description: ClassVar[str] = "SageMaker Transform S3 Data Source is a data source used in Amazon SageMaker to specify the location of the input data that needs to be transformed." mapping: ClassVar[Dict[str, Bender]] = {"s3_data_type": S("S3DataType"), "s3_uri": S("S3Uri")} s3_data_type: Optional[str] = field(default=None) s3_uri: Optional[str] = field(default=None) @@ -473,6 +513,8 @@ class AwsSagemakerTransformS3DataSource: @define(eq=False, slots=False) class AwsSagemakerTransformDataSource: kind: ClassVar[str] = "aws_sagemaker_transform_data_source" + kind_display: ClassVar[str] = "AWS SageMaker Transform Data Source" + kind_description: ClassVar[str] = "SageMaker Transform Data Source is a resource in AWS SageMaker that provides the input data for a batch transform job, allowing users to preprocess and transform large datasets efficiently." mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource") >> Bend(AwsSagemakerTransformS3DataSource.mapping) } @@ -482,6 +524,8 @@ class AwsSagemakerTransformDataSource: @define(eq=False, slots=False) class AwsSagemakerTransformInput: kind: ClassVar[str] = "aws_sagemaker_transform_input" + kind_display: ClassVar[str] = "AWS SageMaker Transform Input" + kind_description: ClassVar[str] = "SageMaker Transform Input is a resource in the AWS SageMaker service that represents input data for batch transform jobs. It is used to provide the data that needs to be processed by machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "data_source": S("DataSource") >> Bend(AwsSagemakerTransformDataSource.mapping), "content_type": S("ContentType"), @@ -497,6 +541,8 @@ class AwsSagemakerTransformInput: @define(eq=False, slots=False) class AwsSagemakerTransformOutput: kind: ClassVar[str] = "aws_sagemaker_transform_output" + kind_display: ClassVar[str] = "AWS SageMaker Transform Output" + kind_description: ClassVar[str] = "SageMaker Transform Output is the result of a machine learning transformation job in Amazon SageMaker. It is the processed data generated by applying a trained model to input data." mapping: ClassVar[Dict[str, Bender]] = { "s3_output_path": S("S3OutputPath"), "accept": S("Accept"), @@ -512,6 +558,8 @@ class AwsSagemakerTransformOutput: @define(eq=False, slots=False) class AwsSagemakerTransformResources: kind: ClassVar[str] = "aws_sagemaker_transform_resources" + kind_display: ClassVar[str] = "AWS SageMaker Transform Resources" + kind_description: ClassVar[str] = "SageMaker Transform Resources are used in Amazon SageMaker for creating machine learning workflows to preprocess and transform data before making predictions or inferences." mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -525,6 +573,8 @@ class AwsSagemakerTransformResources: @define(eq=False, slots=False) class AwsSagemakerTransformJobDefinition: kind: ClassVar[str] = "aws_sagemaker_transform_job_definition" + kind_display: ClassVar[str] = "AWS SageMaker Transform Job Definition" + kind_description: ClassVar[str] = "SageMaker Transform Job Definition is a configuration that defines how data transformation should be performed on input data using Amazon SageMaker's built-in algorithms or custom models." mapping: ClassVar[Dict[str, Bender]] = { "max_concurrent_transforms": S("MaxConcurrentTransforms"), "max_payload_in_mb": S("MaxPayloadInMB"), @@ -546,6 +596,8 @@ class AwsSagemakerTransformJobDefinition: @define(eq=False, slots=False) class AwsSagemakerAlgorithmValidationProfile: kind: ClassVar[str] = "aws_sagemaker_algorithm_validation_profile" + kind_display: ClassVar[str] = "AWS SageMaker Algorithm Validation Profile" + kind_description: ClassVar[str] = "SageMaker Algorithm Validation Profile is a resource in Amazon SageMaker that allows you to define validation rules for algorithms used in machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "profile_name": S("ProfileName"), "training_job_definition": S("TrainingJobDefinition") >> Bend(AwsSagemakerTrainingJobDefinition.mapping), @@ -559,6 +611,8 @@ class AwsSagemakerAlgorithmValidationProfile: @define(eq=False, slots=False) class AwsSagemakerAlgorithmStatusItem: kind: ClassVar[str] = "aws_sagemaker_algorithm_status_item" + kind_display: ClassVar[str] = "AWS SageMaker Algorithm Status Item" + kind_description: ClassVar[str] = "SageMaker Algorithm Status Item is a resource in AWS SageMaker that represents the status of an algorithm used for machine learning tasks." mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "status": S("Status"), @@ -572,6 +626,8 @@ class AwsSagemakerAlgorithmStatusItem: @define(eq=False, slots=False) class AwsSagemakerAlgorithmStatusDetails: kind: ClassVar[str] = "aws_sagemaker_algorithm_status_details" + kind_display: ClassVar[str] = "AWS SageMaker Algorithm Status Details" + kind_description: ClassVar[str] = "SageMaker algorithm status details provide information about the status and progress of algorithms running on Amazon SageMaker, a fully managed machine learning service." mapping: ClassVar[Dict[str, Bender]] = { "validation_statuses": S("ValidationStatuses", default=[]) >> ForallBend(AwsSagemakerAlgorithmStatusItem.mapping), @@ -585,6 +641,8 @@ class AwsSagemakerAlgorithmStatusDetails: @define(eq=False, slots=False) class AwsSagemakerAlgorithm(AwsResource): kind: ClassVar[str] = "aws_sagemaker_algorithm" + kind_display: ClassVar[str] = "AWS SageMaker Algorithm" + kind_description: ClassVar[str] = "SageMaker Algorithms are pre-built machine learning algorithms provided by Amazon SageMaker, which can be used to train and deploy predictive models." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_iam_role"]} } @@ -648,6 +706,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerImageConfig: kind: ClassVar[str] = "aws_sagemaker_image_config" + kind_display: ClassVar[str] = "AWS SageMaker Image Configuration" + kind_description: ClassVar[str] = "SageMaker Image Configuration is a resource in AWS SageMaker that allows you to define and package custom ML environments for training and inference." mapping: ClassVar[Dict[str, Bender]] = { "repository_access_mode": S("RepositoryAccessMode"), "repository_auth_config": S("RepositoryAuthConfig", "RepositoryCredentialsProviderArn"), @@ -659,6 +719,8 @@ class AwsSagemakerImageConfig: @define(eq=False, slots=False) class AwsSagemakerContainerDefinition: kind: ClassVar[str] = "aws_sagemaker_container_definition" + kind_display: ClassVar[str] = "AWS SageMaker Container Definition" + kind_description: ClassVar[str] = "SageMaker Container Definition is a resource in AWS that allows you to define the container image and resources required to run your machine learning model in Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "container_hostname": S("ContainerHostname"), "image": S("Image"), @@ -684,6 +746,8 @@ class AwsSagemakerContainerDefinition: @define(eq=False, slots=False) class AwsSagemakerVpcConfig: kind: ClassVar[str] = "aws_sagemaker_vpc_config" + kind_display: ClassVar[str] = "AWS SageMaker VPC Config" + kind_description: ClassVar[str] = "SageMaker VPC Config is a configuration option in Amazon SageMaker that allows users to specify the VPC (Virtual Private Cloud) settings for training and deploying machine learning models in a private network environment." mapping: ClassVar[Dict[str, Bender]] = { "security_group_ids": S("SecurityGroupIds", default=[]), "subnets": S("Subnets", default=[]), @@ -695,6 +759,8 @@ class AwsSagemakerVpcConfig: @define(eq=False, slots=False) class AwsSagemakerModel(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_model" + kind_display: ClassVar[str] = "AWS SageMaker Model" + kind_description: ClassVar[str] = "SageMaker Models are machine learning models built and trained using Amazon SageMaker, a fully-managed machine learning service by Amazon Web Services." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_subnet", "aws_ec2_security_group"], @@ -763,6 +829,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerResourceSpec: kind: ClassVar[str] = "aws_sagemaker_resource_spec" + kind_display: ClassVar[str] = "AWS SageMaker Resource Spec" + kind_description: ClassVar[str] = "SageMaker Resource Spec is a specification for configuring the compute resources used in Amazon SageMaker for machine learning model training and deployment." mapping: ClassVar[Dict[str, Bender]] = { "sage_maker_image_arn": S("SageMakerImageArn"), "sage_maker_image_version_arn": S("SageMakerImageVersionArn"), @@ -778,6 +846,8 @@ class AwsSagemakerResourceSpec: @define(eq=False, slots=False) class AwsSagemakerApp(AwsResource): kind: ClassVar[str] = "aws_sagemaker_app" + kind_display: ClassVar[str] = "AWS SageMaker App" + kind_description: ClassVar[str] = "SageMaker App is a development environment provided by Amazon Web Services for building, training, and deploying machine learning models." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_sagemaker_domain", "aws_sagemaker_user_profile"], @@ -887,6 +957,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerSharingSettings: kind: ClassVar[str] = "aws_sagemaker_sharing_settings" + kind_display: ClassVar[str] = "AWS SageMaker Sharing Settings" + kind_description: ClassVar[str] = "SageMaker Sharing Settings allow users to share their Amazon SageMaker resources, such as notebooks and training jobs, with other users or AWS accounts." mapping: ClassVar[Dict[str, Bender]] = { "notebook_output_option": S("NotebookOutputOption"), "s3_output_path": S("S3OutputPath"), @@ -900,6 +972,8 @@ class AwsSagemakerSharingSettings: @define(eq=False, slots=False) class AwsSagemakerJupyterServerAppSettings: kind: ClassVar[str] = "aws_sagemaker_jupyter_server_app_settings" + kind_display: ClassVar[str] = "AWS SageMaker Jupyter Server App Settings" + kind_description: ClassVar[str] = "SageMaker Jupyter Server App Settings is a feature in AWS SageMaker that allows you to configure and customize the settings of your Jupyter server for machine learning development and training." mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), "lifecycle_config_arns": S("LifecycleConfigArns", default=[]), @@ -913,6 +987,8 @@ class AwsSagemakerJupyterServerAppSettings: @define(eq=False, slots=False) class AwsSagemakerCustomImage: kind: ClassVar[str] = "aws_sagemaker_custom_image" + kind_display: ClassVar[str] = "AWS SageMaker Custom Image" + kind_description: ClassVar[str] = "SageMaker Custom Images allow you to create and manage custom machine learning images for Amazon SageMaker, providing a pre-configured environment for training and deploying machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "image_name": S("ImageName"), "image_version_number": S("ImageVersionNumber"), @@ -926,6 +1002,8 @@ class AwsSagemakerCustomImage: @define(eq=False, slots=False) class AwsSagemakerKernelGatewayAppSettings: kind: ClassVar[str] = "aws_sagemaker_kernel_gateway_app_settings" + kind_display: ClassVar[str] = "AWS SageMaker Kernel Gateway App Settings" + kind_description: ClassVar[str] = "SageMaker Kernel Gateway App Settings is a service by AWS that allows users to configure and manage settings for their SageMaker kernel gateway applications." mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), "custom_images": S("CustomImages", default=[]) >> ForallBend(AwsSagemakerCustomImage.mapping), @@ -939,6 +1017,8 @@ class AwsSagemakerKernelGatewayAppSettings: @define(eq=False, slots=False) class AwsSagemakerTensorBoardAppSettings: kind: ClassVar[str] = "aws_sagemaker_tensor_board_app_settings" + kind_display: ClassVar[str] = "AWS SageMaker Tensor Board App Settings" + kind_description: ClassVar[str] = "SageMaker Tensor Board App Settings is a feature provided by Amazon SageMaker to configure and customize the settings for TensorBoard, a visualization tool for training and testing machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping) } @@ -948,6 +1028,8 @@ class AwsSagemakerTensorBoardAppSettings: @define(eq=False, slots=False) class AwsSagemakerRStudioServerProAppSettings: kind: ClassVar[str] = "aws_sagemaker_r_studio_server_pro_app_settings" + kind_display: ClassVar[str] = "AWS SageMaker RStudio Server Pro App Settings" + kind_description: ClassVar[str] = "SageMaker RStudio Server Pro App Settings is a feature in AWS SageMaker that allows configuring application settings for RStudio Server Pro, an integrated development environment for R programming language, running on SageMaker instances." mapping: ClassVar[Dict[str, Bender]] = {"access_status": S("AccessStatus"), "user_group": S("UserGroup")} access_status: Optional[str] = field(default=None) user_group: Optional[str] = field(default=None) @@ -956,6 +1038,8 @@ class AwsSagemakerRStudioServerProAppSettings: @define(eq=False, slots=False) class AwsSagemakerRSessionAppSettings: kind: ClassVar[str] = "aws_sagemaker_r_session_app_settings" + kind_display: ClassVar[str] = "AWS SageMaker R Session App Settings" + kind_description: ClassVar[str] = "SageMaker R Session App Settings is a resource in Amazon SageMaker that allows configuring and managing R session settings for machine learning workloads." mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), "custom_images": S("CustomImages", default=[]) >> ForallBend(AwsSagemakerCustomImage.mapping), @@ -967,6 +1051,8 @@ class AwsSagemakerRSessionAppSettings: @define(eq=False, slots=False) class AwsSagemakerTimeSeriesForecastingSettings: kind: ClassVar[str] = "aws_sagemaker_time_series_forecasting_settings" + kind_display: ClassVar[str] = "AWS SageMaker Time Series Forecasting Settings" + kind_description: ClassVar[str] = "AWS SageMaker Time Series Forecasting Settings provide configurations and options for training time series forecasting models on Amazon SageMaker platform." mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "amazon_forecast_role_arn": S("AmazonForecastRoleArn"), @@ -978,6 +1064,8 @@ class AwsSagemakerTimeSeriesForecastingSettings: @define(eq=False, slots=False) class AwsSagemakerCanvasAppSettings: kind: ClassVar[str] = "aws_sagemaker_canvas_app_settings" + kind_display: ClassVar[str] = "AWS SageMaker Canvas App Settings" + kind_description: ClassVar[str] = "SageMaker Canvas App Settings are configurations for custom user interfaces built using Amazon SageMaker's visual interface" mapping: ClassVar[Dict[str, Bender]] = { "time_series_forecasting_settings": S("TimeSeriesForecastingSettings") >> Bend(AwsSagemakerTimeSeriesForecastingSettings.mapping) @@ -988,6 +1076,8 @@ class AwsSagemakerCanvasAppSettings: @define(eq=False, slots=False) class AwsSagemakerUserSettings: kind: ClassVar[str] = "aws_sagemaker_user_settings" + kind_display: ClassVar[str] = "AWS SageMaker User Settings" + kind_description: ClassVar[str] = "SageMaker User Settings allows users to configure personal settings for Amazon SageMaker, a machine learning service provided by Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "execution_role": S("ExecutionRole"), "sharing_settings": S("SharingSettings") >> Bend(AwsSagemakerSharingSettings.mapping), @@ -1014,6 +1104,8 @@ class AwsSagemakerUserSettings: @define(eq=False, slots=False) class AwsSagemakerRStudioServerProDomainSettings: kind: ClassVar[str] = "aws_sagemaker_r_studio_server_pro_domain_settings" + kind_display: ClassVar[str] = "AWS SageMaker R Studio Server Pro Domain Settings" + kind_description: ClassVar[str] = "SageMaker R Studio Server Pro Domain Settings is a feature of Amazon SageMaker that allows users to customize the domain configuration for R Studio Server Pro instances in their SageMaker environment." mapping: ClassVar[Dict[str, Bender]] = { "domain_execution_role_arn": S("DomainExecutionRoleArn"), "r_studio_connect_url": S("RStudioConnectUrl"), @@ -1029,6 +1121,8 @@ class AwsSagemakerRStudioServerProDomainSettings: @define(eq=False, slots=False) class AwsSagemakerDomainSettings: kind: ClassVar[str] = "aws_sagemaker_domain_settings" + kind_display: ClassVar[str] = "AWS SageMaker Domain Settings" + kind_description: ClassVar[str] = "SageMaker Domain Settings allow you to configure and manage domains in Amazon SageMaker, a fully managed machine learning service. Domains provide a central location for managing notebooks, experiments, and models in SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "security_group_ids": S("SecurityGroupIds", default=[]), "r_studio_server_pro_domain_settings": S("RStudioServerProDomainSettings") @@ -1043,6 +1137,8 @@ class AwsSagemakerDomainSettings: @define(eq=False, slots=False) class AwsSagemakerDefaultSpaceSettings: kind: ClassVar[str] = "aws_sagemaker_default_space_settings" + kind_display: ClassVar[str] = "AWS SageMaker Default Space Settings" + kind_description: ClassVar[str] = "SageMaker Default Space Settings refer to the default configurations and preferences for organizing machine learning projects in Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "execution_role": S("ExecutionRole"), "security_groups": S("SecurityGroups", default=[]), @@ -1060,6 +1156,8 @@ class AwsSagemakerDefaultSpaceSettings: @define(eq=False, slots=False) class AwsSagemakerDomain(AwsResource): kind: ClassVar[str] = "aws_sagemaker_domain" + kind_display: ClassVar[str] = "AWS SageMaker Domain" + kind_description: ClassVar[str] = "SageMaker Domains are AWS services that provide a complete set of tools and resources for building, training, and deploying machine learning models." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -1241,6 +1339,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerExperimentSource: kind: ClassVar[str] = "aws_sagemaker_experiment_source" + kind_display: ClassVar[str] = "AWS SageMaker Experiment Source" + kind_description: ClassVar[str] = "SageMaker Experiment Source is a resource in AWS SageMaker that represents the source data used for machine learning experiments." mapping: ClassVar[Dict[str, Bender]] = {"source_arn": S("SourceArn"), "source_type": S("SourceType")} source_arn: Optional[str] = field(default=None) source_type: Optional[str] = field(default=None) @@ -1249,6 +1349,8 @@ class AwsSagemakerExperimentSource: @define(eq=False, slots=False) class AwsSagemakerExperiment(AwsResource): kind: ClassVar[str] = "aws_sagemaker_experiment" + kind_display: ClassVar[str] = "AWS SageMaker Experiment" + kind_description: ClassVar[str] = "SageMaker Experiment is a service in AWS that enables users to organize, track and compare machine learning experiments and their associated resources." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-experiments", "ExperimentSummaries") mapping: ClassVar[Dict[str, Bender]] = { "id": S("ExperimentName"), @@ -1276,6 +1378,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerTrialSource: kind: ClassVar[str] = "aws_sagemaker_trial_source" + kind_display: ClassVar[str] = "AWS SageMaker Trial Source" + kind_description: ClassVar[str] = "SageMaker Trial Source is a resource in Amazon SageMaker that allows users to define the data source for a machine learning trial." mapping: ClassVar[Dict[str, Bender]] = {"source_arn": S("SourceArn"), "source_type": S("SourceType")} source_arn: Optional[str] = field(default=None) source_type: Optional[str] = field(default=None) @@ -1284,6 +1388,8 @@ class AwsSagemakerTrialSource: @define(eq=False, slots=False) class AwsSagemakerUserContext: kind: ClassVar[str] = "aws_sagemaker_user_context" + kind_display: ClassVar[str] = "AWS SageMaker User Context" + kind_description: ClassVar[str] = "SageMaker User Context provides information and settings for an individual user's SageMaker environment in the AWS cloud." mapping: ClassVar[Dict[str, Bender]] = { "user_profile_arn": S("UserProfileArn"), "user_profile_name": S("UserProfileName"), @@ -1297,6 +1403,8 @@ class AwsSagemakerUserContext: @define(eq=False, slots=False) class AwsSagemakerMetadataProperties: kind: ClassVar[str] = "aws_sagemaker_metadata_properties" + kind_display: ClassVar[str] = "AWS SageMaker Metadata Properties" + kind_description: ClassVar[str] = "SageMaker Metadata Properties provide a way to store additional metadata about machine learning models trained using Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "commit_id": S("CommitId"), "generated_by": S("GeneratedBy"), @@ -1308,6 +1416,8 @@ class AwsSagemakerMetadataProperties: @define(eq=False, slots=False) class AwsSagemakerTrial(AwsResource): kind: ClassVar[str] = "aws_sagemaker_trial" + kind_display: ClassVar[str] = "AWS SageMaker Trial" + kind_description: ClassVar[str] = "SageMaker Trial is a service offered by Amazon Web Services that provides a platform for building, training, and deploying machine learning models." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -1387,6 +1497,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerProject(AwsResource): kind: ClassVar[str] = "aws_sagemaker_project" + kind_display: ClassVar[str] = "AWS SageMaker Project" + kind_description: ClassVar[str] = "SageMaker Projects in AWS provide a collaborative environment for machine learning teams to manage and track their ML workflows, datasets, models, and code." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-projects", "ProjectSummaryList") mapping: ClassVar[Dict[str, Bender]] = { "id": S("ProjectId"), @@ -1412,6 +1524,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerGitConfig: kind: ClassVar[str] = "aws_sagemaker_git_config" + kind_display: ClassVar[str] = "AWS SageMaker Git Config" + kind_description: ClassVar[str] = "SageMaker Git Config is a resource in AWS SageMaker that allows users to configure Git repositories for their machine learning projects." mapping: ClassVar[Dict[str, Bender]] = { "branch": S("Branch"), "secret_arn": S("SecretArn"), @@ -1424,6 +1538,8 @@ class AwsSagemakerGitConfig: @define(eq=False, slots=False) class AwsSagemakerCodeRepository(AwsResource): kind: ClassVar[str] = "aws_sagemaker_code_repository" + kind_display: ClassVar[str] = "AWS SageMaker Code Repository" + kind_description: ClassVar[str] = "SageMaker Code Repository is a managed service in Amazon SageMaker that allows you to store, share, and manage machine learning code artifacts such as notebooks, scripts, and libraries." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-code-repositories", "CodeRepositorySummaryList") mapping: ClassVar[Dict[str, Bender]] = { "id": S("CodeRepositoryName"), @@ -1454,6 +1570,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerDeployedImage: kind: ClassVar[str] = "aws_sagemaker_deployed_image" + kind_display: ClassVar[str] = "AWS SageMaker Deployed Image" + kind_description: ClassVar[str] = "An image that has been deployed and is used for running machine learning models on Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "specified_image": S("SpecifiedImage"), "resolved_image": S("ResolvedImage"), @@ -1467,6 +1585,8 @@ class AwsSagemakerDeployedImage: @define(eq=False, slots=False) class AwsSagemakerProductionVariantStatus: kind: ClassVar[str] = "aws_sagemaker_production_variant_status" + kind_display: ClassVar[str] = "AWS SageMaker Production Variant Status" + kind_description: ClassVar[str] = "SageMaker Production Variant Status represents the status of a production variant in Amazon SageMaker, which is a fully managed service that enables developers to build, train, and deploy machine learning models at scale." mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "status_message": S("StatusMessage"), @@ -1480,6 +1600,8 @@ class AwsSagemakerProductionVariantStatus: @define(eq=False, slots=False) class AwsSagemakerProductionVariantServerlessConfig: kind: ClassVar[str] = "aws_sagemaker_production_variant_serverless_config" + kind_display: ClassVar[str] = "AWS SageMaker Production Variant Serverless Config" + kind_description: ClassVar[str] = "This is a configuration for a serverless variant for production usage in AWS SageMaker, which is Amazon's fully managed machine learning service." mapping: ClassVar[Dict[str, Bender]] = { "memory_size_in_mb": S("MemorySizeInMB"), "max_concurrency": S("MaxConcurrency"), @@ -1491,6 +1613,8 @@ class AwsSagemakerProductionVariantServerlessConfig: @define(eq=False, slots=False) class AwsSagemakerProductionVariantSummary: kind: ClassVar[str] = "aws_sagemaker_production_variant_summary" + kind_display: ClassVar[str] = "AWS SageMaker Production Variant Summary" + kind_description: ClassVar[str] = "SageMaker Production Variant Summary provides an overview of the production variants in Amazon SageMaker, which are used for deploying ML models and serving predictions at scale." mapping: ClassVar[Dict[str, Bender]] = { "variant_name": S("VariantName"), "deployed_images": S("DeployedImages", default=[]) >> ForallBend(AwsSagemakerDeployedImage.mapping), @@ -1518,6 +1642,8 @@ class AwsSagemakerProductionVariantSummary: @define(eq=False, slots=False) class AwsSagemakerDataCaptureConfigSummary: kind: ClassVar[str] = "aws_sagemaker_data_capture_config_summary" + kind_display: ClassVar[str] = "AWS SageMaker Data Capture Config Summary" + kind_description: ClassVar[str] = "SageMaker Data Capture Config Summary provides a summary of the configuration settings for data capture in Amazon SageMaker, which enables you to continuously capture input and output data from your SageMaker endpoints for further analysis and monitoring." mapping: ClassVar[Dict[str, Bender]] = { "enable_capture": S("EnableCapture"), "capture_status": S("CaptureStatus"), @@ -1535,6 +1661,8 @@ class AwsSagemakerDataCaptureConfigSummary: @define(eq=False, slots=False) class AwsSagemakerCapacitySize: kind: ClassVar[str] = "aws_sagemaker_capacity_size" + kind_display: ClassVar[str] = "AWS SageMaker Capacity Size" + kind_description: ClassVar[str] = "SageMaker Capacity Size refers to the amount of computing resources available for running machine learning models on Amazon SageMaker, a fully-managed service for building, training, and deploying machine learning models at scale." mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "value": S("Value")} type: Optional[str] = field(default=None) value: Optional[int] = field(default=None) @@ -1543,6 +1671,8 @@ class AwsSagemakerCapacitySize: @define(eq=False, slots=False) class AwsSagemakerTrafficRoutingConfig: kind: ClassVar[str] = "aws_sagemaker_traffic_routing_config" + kind_display: ClassVar[str] = "AWS SageMaker Traffic Routing Config" + kind_description: ClassVar[str] = "SageMaker Traffic Routing Config is a feature of Amazon SageMaker that allows users to control the traffic distribution between different model variants deployed on SageMaker endpoints." mapping: ClassVar[Dict[str, Bender]] = { "type": S("Type"), "wait_interval_in_seconds": S("WaitIntervalInSeconds"), @@ -1558,6 +1688,8 @@ class AwsSagemakerTrafficRoutingConfig: @define(eq=False, slots=False) class AwsSagemakerBlueGreenUpdatePolicy: kind: ClassVar[str] = "aws_sagemaker_blue_green_update_policy" + kind_display: ClassVar[str] = "AWS SageMaker Blue-Green Update Policy" + kind_description: ClassVar[str] = "The SageMaker Blue-Green Update Policy is used to facilitate the deployment of machine learning models in a controlled manner, allowing for seamless updates and rollbacks of model versions." mapping: ClassVar[Dict[str, Bender]] = { "traffic_routing_configuration": S("TrafficRoutingConfiguration") >> Bend(AwsSagemakerTrafficRoutingConfig.mapping), @@ -1572,6 +1704,8 @@ class AwsSagemakerBlueGreenUpdatePolicy: @define(eq=False, slots=False) class AwsSagemakerAutoRollbackConfig: kind: ClassVar[str] = "aws_sagemaker_auto_rollback_config" + kind_display: ClassVar[str] = "AWS SageMaker Auto Rollback Configuration" + kind_description: ClassVar[str] = "SageMaker Auto Rollback Configuration is a feature in AWS SageMaker that allows you to configure automatic rollback of machine learning models in case of deployment errors or issues." mapping: ClassVar[Dict[str, Bender]] = {"alarms": S("Alarms", default=[]) >> ForallBend(S("AlarmName"))} alarms: List[str] = field(factory=list) @@ -1579,6 +1713,8 @@ class AwsSagemakerAutoRollbackConfig: @define(eq=False, slots=False) class AwsSagemakerDeploymentConfig: kind: ClassVar[str] = "aws_sagemaker_deployment_config" + kind_display: ClassVar[str] = "AWS SageMaker Deployment Configuration" + kind_description: ClassVar[str] = "SageMaker Deployment Configuration in AWS is used to create and manage configurations for deploying machine learning models on SageMaker endpoints." mapping: ClassVar[Dict[str, Bender]] = { "blue_green_update_policy": S("BlueGreenUpdatePolicy") >> Bend(AwsSagemakerBlueGreenUpdatePolicy.mapping), "auto_rollback_configuration": S("AutoRollbackConfiguration") >> Bend(AwsSagemakerAutoRollbackConfig.mapping), @@ -1590,6 +1726,8 @@ class AwsSagemakerDeploymentConfig: @define(eq=False, slots=False) class AwsSagemakerAsyncInferenceNotificationConfig: kind: ClassVar[str] = "aws_sagemaker_async_inference_notification_config" + kind_display: ClassVar[str] = "AWS SageMaker Async Inference Notification Config" + kind_description: ClassVar[str] = "SageMaker Async Inference Notification Config is a feature in Amazon SageMaker that allows users to receive notifications when asynchronous inference is completed." mapping: ClassVar[Dict[str, Bender]] = {"success_topic": S("SuccessTopic"), "error_topic": S("ErrorTopic")} success_topic: Optional[str] = field(default=None) error_topic: Optional[str] = field(default=None) @@ -1598,6 +1736,8 @@ class AwsSagemakerAsyncInferenceNotificationConfig: @define(eq=False, slots=False) class AwsSagemakerAsyncInferenceOutputConfig: kind: ClassVar[str] = "aws_sagemaker_async_inference_output_config" + kind_display: ClassVar[str] = "AWS SageMaker Async Inference Output Config" + kind_description: ClassVar[str] = "SageMaker Async Inference Output Config is a configuration option in Amazon SageMaker that allows users to specify the location where the output data of asynchronous inference requests should be stored." mapping: ClassVar[Dict[str, Bender]] = { "kms_key_id": S("KmsKeyId"), "s3_output_path": S("S3OutputPath"), @@ -1611,6 +1751,8 @@ class AwsSagemakerAsyncInferenceOutputConfig: @define(eq=False, slots=False) class AwsSagemakerAsyncInferenceConfig: kind: ClassVar[str] = "aws_sagemaker_async_inference_config" + kind_display: ClassVar[str] = "AWS Sagemaker Async Inference Config" + kind_description: ClassVar[str] = "Sagemaker Async Inference Config is a feature in Amazon Sagemaker that allows you to configure asynchronous inference for your machine learning models, enabling efficient handling of high volumes of prediction requests." mapping: ClassVar[Dict[str, Bender]] = { "client_config": S("ClientConfig", "MaxConcurrentInvocationsPerInstance"), "output_config": S("OutputConfig") >> Bend(AwsSagemakerAsyncInferenceOutputConfig.mapping), @@ -1622,6 +1764,8 @@ class AwsSagemakerAsyncInferenceConfig: @define(eq=False, slots=False) class AwsSagemakerPendingProductionVariantSummary: kind: ClassVar[str] = "aws_sagemaker_pending_production_variant_summary" + kind_display: ClassVar[str] = "AWS SageMaker Pending Production Variant Summary" + kind_description: ClassVar[str] = "SageMaker Pending Production Variant Summary represents the pending state of a production variant in Amazon SageMaker, which is a machine learning service provided by AWS." mapping: ClassVar[Dict[str, Bender]] = { "variant_name": S("VariantName"), "deployed_images": S("DeployedImages", default=[]) >> ForallBend(AwsSagemakerDeployedImage.mapping), @@ -1653,6 +1797,8 @@ class AwsSagemakerPendingProductionVariantSummary: @define(eq=False, slots=False) class AwsSagemakerPendingDeploymentSummary: kind: ClassVar[str] = "aws_sagemaker_pending_deployment_summary" + kind_display: ClassVar[str] = "AWS SageMaker Pending Deployment Summary" + kind_description: ClassVar[str] = "AWS SageMaker Pending Deployment Summary provides information about pending deployments in Amazon SageMaker, a fully managed machine learning service." mapping: ClassVar[Dict[str, Bender]] = { "endpoint_config_name": S("EndpointConfigName"), "production_variants": S("ProductionVariants", default=[]) @@ -1667,6 +1813,8 @@ class AwsSagemakerPendingDeploymentSummary: @define(eq=False, slots=False) class AwsSagemakerClarifyInferenceConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_inference_config" + kind_display: ClassVar[str] = "AWS SageMaker Clarify Inference Config" + kind_description: ClassVar[str] = "SageMaker Clarify Inference Config is a configuration for running inference on machine learning models using Amazon SageMaker Clarify. It provides tools for explaining and bringing transparency to model predictions." mapping: ClassVar[Dict[str, Bender]] = { "features_attribute": S("FeaturesAttribute"), "content_template": S("ContentTemplate"), @@ -1696,6 +1844,8 @@ class AwsSagemakerClarifyInferenceConfig: @define(eq=False, slots=False) class AwsSagemakerClarifyShapBaselineConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_shap_baseline_config" + kind_display: ClassVar[str] = "AWS SageMaker Clarify SHAP Baseline Config" + kind_description: ClassVar[str] = "The AWS SageMaker Clarify SHAP Baseline Config is a configuration for the SHAP (Shapley Additive exPlanations) baseline during model interpretability analysis in Amazon SageMaker. It allows users to specify a baseline dataset for calculating SHAP values, providing insights into feature importance and model behavior." mapping: ClassVar[Dict[str, Bender]] = { "mime_type": S("MimeType"), "shap_baseline": S("ShapBaseline"), @@ -1709,6 +1859,8 @@ class AwsSagemakerClarifyShapBaselineConfig: @define(eq=False, slots=False) class AwsSagemakerClarifyTextConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_text_config" + kind_display: ClassVar[str] = "AWS SageMaker Clarify Text Config" + kind_description: ClassVar[str] = "AWS SageMaker Clarify is a machine learning service that helps identify potential bias and explainability issues in text data by providing data insights and model explanations." mapping: ClassVar[Dict[str, Bender]] = {"language": S("Language"), "granularity": S("Granularity")} language: Optional[str] = field(default=None) granularity: Optional[str] = field(default=None) @@ -1717,6 +1869,8 @@ class AwsSagemakerClarifyTextConfig: @define(eq=False, slots=False) class AwsSagemakerClarifyShapConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_shap_config" + kind_display: ClassVar[str] = "AWS SageMaker Clarify SHAP Config" + kind_description: ClassVar[str] = "SageMaker Clarify SHAP Config is a configuration for Amazon SageMaker Clarify, a service that provides bias and explainability analysis for machine learning models using SHAP (SHapley Additive exPlanations) values." mapping: ClassVar[Dict[str, Bender]] = { "shap_baseline_config": S("ShapBaselineConfig") >> Bend(AwsSagemakerClarifyShapBaselineConfig.mapping), "number_of_samples": S("NumberOfSamples"), @@ -1734,6 +1888,8 @@ class AwsSagemakerClarifyShapConfig: @define(eq=False, slots=False) class AwsSagemakerClarifyExplainerConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_explainer_config" + kind_display: ClassVar[str] = "AWS SageMaker Clarify Explainer Config" + kind_description: ClassVar[str] = "SageMaker Clarify Explainer Config is a configuration resource in Amazon SageMaker that allows users to define configurations for explainability of machine learning models developed using SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "enable_explanations": S("EnableExplanations"), "inference_config": S("InferenceConfig") >> Bend(AwsSagemakerClarifyInferenceConfig.mapping), @@ -1747,6 +1903,8 @@ class AwsSagemakerClarifyExplainerConfig: @define(eq=False, slots=False) class AwsSagemakerExplainerConfig: kind: ClassVar[str] = "aws_sagemaker_explainer_config" + kind_display: ClassVar[str] = "AWS Sagemaker Explainer Config" + kind_description: ClassVar[str] = "Sagemaker Explainer Config is a configuration setting in AWS Sagemaker that allows users to specify how to explain the output of a machine learning model trained with Sagemaker." mapping: ClassVar[Dict[str, Bender]] = { "clarify_explainer_config": S("ClarifyExplainerConfig") >> Bend(AwsSagemakerClarifyExplainerConfig.mapping) } @@ -1756,6 +1914,8 @@ class AwsSagemakerExplainerConfig: @define(eq=False, slots=False) class AwsSagemakerEndpoint(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_endpoint" + kind_display: ClassVar[str] = "AWS SageMaker Endpoint" + kind_description: ClassVar[str] = "SageMaker Endpoints are the locations where deployed machine learning models are hosted and can be accessed for making predictions or inferences." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["aws_kms_key"], @@ -1843,6 +2003,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerImage(AwsResource): kind: ClassVar[str] = "aws_sagemaker_image" + kind_display: ClassVar[str] = "AWS SageMaker Image" + kind_description: ClassVar[str] = "AWS SageMaker Images are pre-built machine learning environments that include all necessary frameworks and packages to train and deploy models using Amazon SageMaker." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role"], @@ -1894,6 +2056,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerArtifactSourceType: kind: ClassVar[str] = "aws_sagemaker_artifact_source_type" + kind_display: ClassVar[str] = "AWS SageMaker Artifact Source Type" + kind_description: ClassVar[str] = "SageMaker Artifact Source Type is a resource in Amazon SageMaker that represents the type of artifact source used for machine learning workloads." mapping: ClassVar[Dict[str, Bender]] = {"source_id_type": S("SourceIdType"), "value": S("Value")} source_id_type: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1902,6 +2066,8 @@ class AwsSagemakerArtifactSourceType: @define(eq=False, slots=False) class AwsSagemakerArtifactSource: kind: ClassVar[str] = "aws_sagemaker_artifact_source" + kind_display: ClassVar[str] = "AWS SageMaker Artifact Source" + kind_description: ClassVar[str] = "SageMaker Artifact Source refers to the storage location for artifacts such as trained models and datasets in Amazon SageMaker, a managed service for building, training, and deploying machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "source_uri": S("SourceUri"), "source_types": S("SourceTypes", default=[]) >> ForallBend(AwsSagemakerArtifactSourceType.mapping), @@ -1913,6 +2079,8 @@ class AwsSagemakerArtifactSource: @define(eq=False, slots=False) class AwsSagemakerArtifact(AwsResource): kind: ClassVar[str] = "aws_sagemaker_artifact" + kind_display: ClassVar[str] = "AWS SageMaker Artifact" + kind_description: ClassVar[str] = "SageMaker Artifacts are reusable machine learning assets, such as algorithms and models, that can be stored and accessed in Amazon SageMaker." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -1987,6 +2155,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerUserProfile(AwsResource): kind: ClassVar[str] = "aws_sagemaker_user_profile" + kind_display: ClassVar[str] = "AWS SageMaker User Profile" + kind_description: ClassVar[str] = "SageMaker User Profiles are user-specific configurations in Amazon SageMaker that define settings and permissions for users accessing the SageMaker Studio environment." reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_sagemaker_domain"]}, "successors": {"delete": ["aws_sagemaker_domain"]}, @@ -2025,6 +2195,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerPipeline(AwsResource): kind: ClassVar[str] = "aws_sagemaker_pipeline" + kind_display: ClassVar[str] = "AWS SageMaker Pipeline" + kind_description: ClassVar[str] = "SageMaker Pipelines is a fully managed, easy-to-use CI/CD service for building, automating, and managing end-to-end machine learning workflows on Amazon SageMaker." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_sagemaker_user_profile", "aws_sagemaker_domain"], @@ -2096,6 +2268,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerCognitoMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_cognito_member_definition" + kind_display: ClassVar[str] = "AWS SageMaker Cognito Member Definition" + kind_description: ClassVar[str] = "SageMaker Cognito Member Definitions are used to define the access policies for Amazon Cognito users in Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "user_pool": S("UserPool"), "user_group": S("UserGroup"), @@ -2109,6 +2283,8 @@ class AwsSagemakerCognitoMemberDefinition: @define(eq=False, slots=False) class AwsSagemakerOidcMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_oidc_member_definition" + kind_display: ClassVar[str] = "AWS SageMaker OIDC Member Definition" + kind_description: ClassVar[str] = "SageMaker OIDC Member Definition is a resource in AWS SageMaker that allows you to define an OpenID Connect (OIDC) user or group and their access permissions for a specific SageMaker resource." mapping: ClassVar[Dict[str, Bender]] = {"groups": S("Groups", default=[])} groups: List[str] = field(factory=list) @@ -2116,6 +2292,8 @@ class AwsSagemakerOidcMemberDefinition: @define(eq=False, slots=False) class AwsSagemakerMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_member_definition" + kind_display: ClassVar[str] = "AWS SageMaker Member Definition" + kind_description: ClassVar[str] = "SageMaker Member Definition is a resource in AWS SageMaker that allows users to define and manage members for their SageMaker projects, enabling collaboration and shared access to machine learning resources." mapping: ClassVar[Dict[str, Bender]] = { "cognito_member_definition": S("CognitoMemberDefinition") >> Bend(AwsSagemakerCognitoMemberDefinition.mapping), "oidc_member_definition": S("OidcMemberDefinition") >> Bend(AwsSagemakerOidcMemberDefinition.mapping), @@ -2127,6 +2305,8 @@ class AwsSagemakerMemberDefinition: @define(eq=False, slots=False) class AwsSagemakerWorkteam(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_workteam" + kind_display: ClassVar[str] = "AWS SageMaker Workteam" + kind_description: ClassVar[str] = "SageMaker Workteam is a service in Amazon's cloud that allows organizations to create and manage teams of workers to label data for machine learning models." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["aws_cognito_user_pool", "aws_cognito_group", "aws_sns_topic"], @@ -2192,11 +2372,15 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSagemakerJob(AwsResource): kind: ClassVar[str] = "aws_sagemaker_job" + kind_display: ClassVar[str] = "AWS SageMaker Job" + kind_description: ClassVar[str] = "SageMaker Jobs in AWS are used to train and deploy machine learning models at scale, with built-in algorithms and frameworks provided by Amazon SageMaker." @define(eq=False, slots=False) class AwsSagemakerAutoMLS3DataSource: kind: ClassVar[str] = "aws_sagemaker_auto_mls3_data_source" + kind_display: ClassVar[str] = "AWS SageMaker AutoML S3 Data Source" + kind_description: ClassVar[str] = "SageMaker AutoML S3 Data Source is a service in AWS SageMaker that allows users to automatically select and preprocess data from an S3 bucket for machine learning model training." mapping: ClassVar[Dict[str, Bender]] = {"s3_data_type": S("S3DataType"), "s3_uri": S("S3Uri")} s3_data_type: Optional[str] = field(default=None) s3_uri: Optional[str] = field(default=None) @@ -2205,6 +2389,8 @@ class AwsSagemakerAutoMLS3DataSource: @define(eq=False, slots=False) class AwsSagemakerAutoMLDataSource: kind: ClassVar[str] = "aws_sagemaker_auto_ml_data_source" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Data Source" + kind_description: ClassVar[str] = "SageMaker AutoML Data Source is a resource in Amazon SageMaker that allows users to specify the location of their training data for the automated machine learning process." mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource") >> Bend(AwsSagemakerAutoMLS3DataSource.mapping) } @@ -2214,6 +2400,8 @@ class AwsSagemakerAutoMLDataSource: @define(eq=False, slots=False) class AwsSagemakerAutoMLChannel: kind: ClassVar[str] = "aws_sagemaker_auto_ml_channel" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Channel" + kind_description: ClassVar[str] = "SageMaker AutoML Channel is a cloud resource in AWS SageMaker that allows you to define input data channels for training an AutoML model." mapping: ClassVar[Dict[str, Bender]] = { "data_source": S("DataSource") >> Bend(AwsSagemakerAutoMLDataSource.mapping), "compression_type": S("CompressionType"), @@ -2231,6 +2419,8 @@ class AwsSagemakerAutoMLChannel: @define(eq=False, slots=False) class AwsSagemakerAutoMLOutputDataConfig: kind: ClassVar[str] = "aws_sagemaker_auto_ml_output_data_config" + kind_display: ClassVar[str] = "AWS Sagemaker Auto ML Output Data Config" + kind_description: ClassVar[str] = "Sagemaker Auto ML Output Data Config is a feature of AWS Sagemaker that allows users to specify the location where the output data generated by the Auto ML job should be stored." mapping: ClassVar[Dict[str, Bender]] = {"kms_key_id": S("KmsKeyId"), "s3_output_path": S("S3OutputPath")} kms_key_id: Optional[str] = field(default=None) s3_output_path: Optional[str] = field(default=None) @@ -2239,6 +2429,8 @@ class AwsSagemakerAutoMLOutputDataConfig: @define(eq=False, slots=False) class AwsSagemakerAutoMLJobCompletionCriteria: kind: ClassVar[str] = "aws_sagemaker_auto_ml_job_completion_criteria" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Job Completion Criteria" + kind_description: ClassVar[str] = "Sagemaker AutoML Job Completion Criteria represents the conditions based on which the automatic machine learning job will be considered complete." mapping: ClassVar[Dict[str, Bender]] = { "max_candidates": S("MaxCandidates"), "max_runtime_per_training_job_in_seconds": S("MaxRuntimePerTrainingJobInSeconds"), @@ -2252,6 +2444,8 @@ class AwsSagemakerAutoMLJobCompletionCriteria: @define(eq=False, slots=False) class AwsSagemakerAutoMLSecurityConfig: kind: ClassVar[str] = "aws_sagemaker_auto_ml_security_config" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Security Config" + kind_description: ClassVar[str] = "This resource pertains to the security configuration for the AWS SageMaker AutoML service, which enables automatic machine learning model development and deployment on AWS SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "volume_kms_key_id": S("VolumeKmsKeyId"), "enable_inter_container_traffic_encryption": S("EnableInterContainerTrafficEncryption"), @@ -2265,6 +2459,8 @@ class AwsSagemakerAutoMLSecurityConfig: @define(eq=False, slots=False) class AwsSagemakerAutoMLJobConfig: kind: ClassVar[str] = "aws_sagemaker_auto_ml_job_config" + kind_display: ClassVar[str] = "AWS SageMaker Auto ML Job Config" + kind_description: ClassVar[str] = "SageMaker Auto ML Job Config provides a configuration for running automated machine learning jobs on AWS SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "completion_criteria": S("CompletionCriteria") >> Bend(AwsSagemakerAutoMLJobCompletionCriteria.mapping), "security_config": S("SecurityConfig") >> Bend(AwsSagemakerAutoMLSecurityConfig.mapping), @@ -2282,6 +2478,8 @@ class AwsSagemakerAutoMLJobConfig: @define(eq=False, slots=False) class AwsSagemakerFinalAutoMLJobObjectiveMetric: kind: ClassVar[str] = "aws_sagemaker_final_auto_ml_job_objective_metric" + kind_display: ClassVar[str] = "AWS SageMaker Final AutoML Job Objective Metric" + kind_description: ClassVar[str] = "The final objective metric value calculated at the end of an Amazon SageMaker AutoML job." mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "metric_name": S("MetricName"), "value": S("Value")} type: Optional[str] = field(default=None) metric_name: Optional[str] = field(default=None) @@ -2291,6 +2489,8 @@ class AwsSagemakerFinalAutoMLJobObjectiveMetric: @define(eq=False, slots=False) class AwsSagemakerAutoMLCandidateStep: kind: ClassVar[str] = "aws_sagemaker_auto_ml_candidate_step" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Candidate Step" + kind_description: ClassVar[str] = "AWS SageMaker AutoML Candidate Step is a step in the SageMaker AutoML workflow that represents a candidate model trained by AutoML." mapping: ClassVar[Dict[str, Bender]] = { "candidate_step_type": S("CandidateStepType"), "candidate_step_arn": S("CandidateStepArn"), @@ -2304,6 +2504,8 @@ class AwsSagemakerAutoMLCandidateStep: @define(eq=False, slots=False) class AwsSagemakerAutoMLContainerDefinition: kind: ClassVar[str] = "aws_sagemaker_auto_ml_container_definition" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Container Definition" + kind_description: ClassVar[str] = "SageMaker AutoML Container Definition is a resource in AWS SageMaker that specifies the container image to be used for training and inference in an AutoML job." mapping: ClassVar[Dict[str, Bender]] = { "image": S("Image"), "model_data_url": S("ModelDataUrl"), @@ -2317,6 +2519,8 @@ class AwsSagemakerAutoMLContainerDefinition: @define(eq=False, slots=False) class AwsSagemakerCandidateArtifactLocations: kind: ClassVar[str] = "aws_sagemaker_candidate_artifact_locations" + kind_display: ClassVar[str] = "AWS SageMaker Candidate Artifact Locations" + kind_description: ClassVar[str] = "SageMaker Candidate Artifact Locations are the locations in which candidate models generated during Amazon SageMaker training jobs are stored." mapping: ClassVar[Dict[str, Bender]] = {"explainability": S("Explainability"), "model_insights": S("ModelInsights")} explainability: Optional[str] = field(default=None) model_insights: Optional[str] = field(default=None) @@ -2325,6 +2529,8 @@ class AwsSagemakerCandidateArtifactLocations: @define(eq=False, slots=False) class AwsSagemakerMetricDatum: kind: ClassVar[str] = "aws_sagemaker_metric_datum" + kind_display: ClassVar[str] = "AWS SageMaker Metric Datum" + kind_description: ClassVar[str] = "SageMaker Metric Datum is a unit of data used for tracking and monitoring machine learning metrics in Amazon SageMaker, a fully managed machine learning service." mapping: ClassVar[Dict[str, Bender]] = { "metric_name": S("MetricName"), "value": S("Value"), @@ -2340,6 +2546,8 @@ class AwsSagemakerMetricDatum: @define(eq=False, slots=False) class AwsSagemakerCandidateProperties: kind: ClassVar[str] = "aws_sagemaker_candidate_properties" + kind_display: ClassVar[str] = "AWS SageMaker Candidate Properties" + kind_description: ClassVar[str] = "SageMaker Candidate Properties are the attributes and characteristics of a machine learning model candidate that is trained and optimized using Amazon SageMaker, a fully-managed service for building, training, and deploying machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "candidate_artifact_locations": S("CandidateArtifactLocations") >> Bend(AwsSagemakerCandidateArtifactLocations.mapping), @@ -2352,6 +2560,8 @@ class AwsSagemakerCandidateProperties: @define(eq=False, slots=False) class AwsSagemakerAutoMLCandidate: kind: ClassVar[str] = "aws_sagemaker_auto_ml_candidate" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Candidate" + kind_description: ClassVar[str] = "SageMaker AutoML Candidates refer to the generated machine learning models during the automated machine learning process in Amazon SageMaker, where multiple models are trained and evaluated for a given dataset and objective." mapping: ClassVar[Dict[str, Bender]] = { "candidate_name": S("CandidateName"), "final_auto_ml_job_objective_metric": S("FinalAutoMLJobObjectiveMetric") @@ -2383,6 +2593,8 @@ class AwsSagemakerAutoMLCandidate: @define(eq=False, slots=False) class AwsSagemakerAutoMLJobArtifacts: kind: ClassVar[str] = "aws_sagemaker_auto_ml_job_artifacts" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Job Artifacts" + kind_description: ClassVar[str] = "SageMaker AutoML Job Artifacts are the output files and artifacts generated during the AutoML job on Amazon SageMaker. These artifacts can include trained models, evaluation metrics, and other relevant information." mapping: ClassVar[Dict[str, Bender]] = { "candidate_definition_notebook_location": S("CandidateDefinitionNotebookLocation"), "data_exploration_notebook_location": S("DataExplorationNotebookLocation"), @@ -2394,6 +2606,8 @@ class AwsSagemakerAutoMLJobArtifacts: @define(eq=False, slots=False) class AwsSagemakerResolvedAttributes: kind: ClassVar[str] = "aws_sagemaker_resolved_attributes" + kind_display: ClassVar[str] = "AWS SageMaker Resolved Attributes" + kind_description: ClassVar[str] = "SageMaker Resolved Attributes are the feature groups used in Amazon SageMaker for model training and inference. They provide an organized and structured way to input and process data for machine learning tasks." mapping: ClassVar[Dict[str, Bender]] = { "auto_ml_job_objective": S("AutoMLJobObjective", "MetricName"), "problem_type": S("ProblemType"), @@ -2407,6 +2621,8 @@ class AwsSagemakerResolvedAttributes: @define(eq=False, slots=False) class AwsSagemakerModelDeployConfig: kind: ClassVar[str] = "aws_sagemaker_model_deploy_config" + kind_display: ClassVar[str] = "AWS SageMaker Model Deploy Config" + kind_description: ClassVar[str] = "SageMaker Model Deploy Config is a configuration for deploying machine learning models on Amazon SageMaker, a fully managed machine learning service by AWS." mapping: ClassVar[Dict[str, Bender]] = { "auto_generate_endpoint_name": S("AutoGenerateEndpointName"), "endpoint_name": S("EndpointName"), @@ -2418,6 +2634,8 @@ class AwsSagemakerModelDeployConfig: @define(eq=False, slots=False) class AwsSagemakerAutoMLJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_auto_ml_job" + kind_display: ClassVar[str] = "AWS SageMaker AutoML Job" + kind_description: ClassVar[str] = "SageMaker AutoML Jobs in AWS provide automated machine learning capabilities, allowing users to automatically discover and build optimal machine learning models without manual intervention." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -2540,6 +2758,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerInputConfig: kind: ClassVar[str] = "aws_sagemaker_input_config" + kind_display: ClassVar[str] = "AWS SageMaker Input Config" + kind_description: ClassVar[str] = "SageMaker Input Config is a configuration file that defines the input data to be used for training a machine learning model on Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "s3_uri": S("S3Uri"), "data_input_config": S("DataInputConfig"), @@ -2555,6 +2775,8 @@ class AwsSagemakerInputConfig: @define(eq=False, slots=False) class AwsSagemakerTargetPlatform: kind: ClassVar[str] = "aws_sagemaker_target_platform" + kind_display: ClassVar[str] = "AWS SageMaker Target Platform" + kind_description: ClassVar[str] = "SageMaker Target Platform is a service provided by Amazon Web Services that allows users to specify the target platform for training and deploying machine learning models using Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = {"os": S("Os"), "arch": S("Arch"), "accelerator": S("Accelerator")} os: Optional[str] = field(default=None) arch: Optional[str] = field(default=None) @@ -2564,6 +2786,8 @@ class AwsSagemakerTargetPlatform: @define(eq=False, slots=False) class AwsSagemakerOutputConfig: kind: ClassVar[str] = "aws_sagemaker_output_config" + kind_display: ClassVar[str] = "AWS SageMaker Output Config" + kind_description: ClassVar[str] = "SageMaker Output Config is a resource in AWS SageMaker that allows users to configure the output location for trained machine learning models and associated results." mapping: ClassVar[Dict[str, Bender]] = { "s3_output_location": S("S3OutputLocation"), "target_device": S("TargetDevice"), @@ -2581,6 +2805,8 @@ class AwsSagemakerOutputConfig: @define(eq=False, slots=False) class AwsSagemakerNeoVpcConfig: kind: ClassVar[str] = "aws_sagemaker_neo_vpc_config" + kind_display: ClassVar[str] = "AWS SageMaker Neo VPC Config" + kind_description: ClassVar[str] = "SageMaker Neo VPC Config is a configuration setting for Amazon SageMaker's Neo service, which allows you to optimize deep learning models for various hardware platforms." mapping: ClassVar[Dict[str, Bender]] = { "security_group_ids": S("SecurityGroupIds", default=[]), "subnets": S("Subnets", default=[]), @@ -2592,6 +2818,8 @@ class AwsSagemakerNeoVpcConfig: @define(eq=False, slots=False) class AwsSagemakerCompilationJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_compilation_job" + kind_display: ClassVar[str] = "AWS SageMaker Compilation Job" + kind_description: ClassVar[str] = "SageMaker Compilation Job is a resource in Amazon SageMaker that allows users to compile machine learning models for deployment on edge devices or inference in the cloud." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -2678,6 +2906,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerEdgeOutputConfig: kind: ClassVar[str] = "aws_sagemaker_edge_output_config" + kind_display: ClassVar[str] = "AWS SageMaker Edge Output Configuration" + kind_description: ClassVar[str] = "SageMaker Edge Output Config is a feature in Amazon SageMaker that enables you to configure the destination for edge device output when using SageMaker Edge Manager. It allows you to specify the S3 bucket where the output artifacts from the edge devices will be stored." mapping: ClassVar[Dict[str, Bender]] = { "s3_output_location": S("S3OutputLocation"), "kms_key_id": S("KmsKeyId"), @@ -2693,6 +2923,8 @@ class AwsSagemakerEdgeOutputConfig: @define(eq=False, slots=False) class AwsSagemakerEdgePresetDeploymentOutput: kind: ClassVar[str] = "aws_sagemaker_edge_preset_deployment_output" + kind_display: ClassVar[str] = "AWS SageMaker Edge Preset Deployment Output" + kind_description: ClassVar[str] = "The output of a deployment of an edge preset in Amazon SageMaker. It represents the processed data and predictions generated by a machine learning model that has been deployed to edge devices." mapping: ClassVar[Dict[str, Bender]] = { "type": S("Type"), "artifact": S("Artifact"), @@ -2708,6 +2940,8 @@ class AwsSagemakerEdgePresetDeploymentOutput: @define(eq=False, slots=False) class AwsSagemakerEdgePackagingJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_edge_packaging_job" + kind_display: ClassVar[str] = "AWS SageMaker Edge Packaging Job" + kind_description: ClassVar[str] = "SageMaker Edge Packaging Jobs allow users to package machine learning models and dependencies for deployment on edge devices using AWS SageMaker Edge Manager." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_sagemaker_model"], @@ -2789,6 +3023,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerHyperbandStrategyConfig: kind: ClassVar[str] = "aws_sagemaker_hyperband_strategy_config" + kind_display: ClassVar[str] = "AWS SageMaker Hyperband Strategy Config" + kind_description: ClassVar[str] = "SageMaker Hyperband Strategy Config is a configuration setting for the Hyperband strategy in Amazon SageMaker. It allows users to optimize their machine learning models by automatically tuning hyperparameters." mapping: ClassVar[Dict[str, Bender]] = {"min_resource": S("MinResource"), "max_resource": S("MaxResource")} min_resource: Optional[int] = field(default=None) max_resource: Optional[int] = field(default=None) @@ -2797,6 +3033,8 @@ class AwsSagemakerHyperbandStrategyConfig: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTuningJobStrategyConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_strategy_config" + kind_display: ClassVar[str] = "AWS Sagemaker Hyper Parameter Tuning Job Strategy Config" + kind_description: ClassVar[str] = "The AWS Sagemaker Hyper Parameter Tuning Job Strategy Config is a configuration that defines the strategy for searching hyperparameter combinations during hyperparameter tuning in Amazon Sagemaker." mapping: ClassVar[Dict[str, Bender]] = { "hyperband_strategy_config": S("HyperbandStrategyConfig") >> Bend(AwsSagemakerHyperbandStrategyConfig.mapping) } @@ -2806,6 +3044,8 @@ class AwsSagemakerHyperParameterTuningJobStrategyConfig: @define(eq=False, slots=False) class AwsSagemakerResourceLimits: kind: ClassVar[str] = "aws_sagemaker_resource_limits" + kind_display: ClassVar[str] = "AWS SageMaker Resource Limits" + kind_description: ClassVar[str] = "SageMaker Resource Limits allows you to manage and control the amount of resources (such as compute instances, storage, and data transfer) that your SageMaker resources can consume in order to optimize cost and performance." mapping: ClassVar[Dict[str, Bender]] = { "max_number_of_training_jobs": S("MaxNumberOfTrainingJobs"), "max_parallel_training_jobs": S("MaxParallelTrainingJobs"), @@ -2817,6 +3057,8 @@ class AwsSagemakerResourceLimits: @define(eq=False, slots=False) class AwsSagemakerScalingParameterRange: kind: ClassVar[str] = "aws_sagemaker_scaling_parameter_range" + kind_display: ClassVar[str] = "AWS SageMaker Scaling Parameter Range" + kind_description: ClassVar[str] = "SageMaker Scaling Parameter Range is a feature in AWS SageMaker, which allows users to define the range of scaling parameters for their machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "min_value": S("MinValue"), @@ -2832,6 +3074,8 @@ class AwsSagemakerScalingParameterRange: @define(eq=False, slots=False) class AwsSagemakerCategoricalParameterRange: kind: ClassVar[str] = "aws_sagemaker_categorical_parameter_range" + kind_display: ClassVar[str] = "AWS SageMaker Categorical Parameter Range" + kind_description: ClassVar[str] = "SageMaker Categorical Parameter Range is a cloud resource provided by AWS that allows users to define a range of categorical hyperparameters for machine learning models developed using Amazon SageMaker, which is a fully managed machine learning service." mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "values": S("Values", default=[])} name: Optional[str] = field(default=None) values: List[str] = field(factory=list) @@ -2840,6 +3084,8 @@ class AwsSagemakerCategoricalParameterRange: @define(eq=False, slots=False) class AwsSagemakerParameterRanges: kind: ClassVar[str] = "aws_sagemaker_parameter_ranges" + kind_display: ClassVar[str] = "AWS SageMaker Parameter Ranges" + kind_description: ClassVar[str] = "SageMaker Parameter Ranges are set of possible values or ranges for hyperparameters used in training machine learning models with AWS SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "integer_parameter_ranges": S("IntegerParameterRanges", default=[]) >> ForallBend(AwsSagemakerScalingParameterRange.mapping), @@ -2856,6 +3102,8 @@ class AwsSagemakerParameterRanges: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTuningJobConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_config" + kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Tuning Job Config" + kind_description: ClassVar[str] = "SageMaker Hyper Parameter Tuning Job Config is a configuration resource in AWS SageMaker that helps to optimize the hyperparameters of machine learning models by systematically testing and fine-tuning their values." mapping: ClassVar[Dict[str, Bender]] = { "strategy": S("Strategy"), "strategy_config": S("StrategyConfig") >> Bend(AwsSagemakerHyperParameterTuningJobStrategyConfig.mapping), @@ -2878,6 +3126,8 @@ class AwsSagemakerHyperParameterTuningJobConfig: @define(eq=False, slots=False) class AwsSagemakerHyperParameterAlgorithmSpecification: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_algorithm_specification" + kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Algorithm Specification" + kind_description: ClassVar[str] = "SageMaker Hyper Parameter Algorithm Specification is a feature in AWS SageMaker that allows users to define and customize the hyperparameters for training machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "training_image": S("TrainingImage"), "training_input_mode": S("TrainingInputMode"), @@ -2893,6 +3143,8 @@ class AwsSagemakerHyperParameterAlgorithmSpecification: @define(eq=False, slots=False) class AwsSagemakerCheckpointConfig: kind: ClassVar[str] = "aws_sagemaker_checkpoint_config" + kind_display: ClassVar[str] = "AWS SageMaker Checkpoint Config" + kind_description: ClassVar[str] = "SageMaker Checkpoint Config is a feature of Amazon SageMaker that allows you to automatically save and load model checkpoints during the training process, ensuring that the progress of the model is not lost in case of errors or interruptions." mapping: ClassVar[Dict[str, Bender]] = {"s3_uri": S("S3Uri"), "local_path": S("LocalPath")} s3_uri: Optional[str] = field(default=None) local_path: Optional[str] = field(default=None) @@ -2901,6 +3153,8 @@ class AwsSagemakerCheckpointConfig: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTuningInstanceConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_instance_config" + kind_display: ClassVar[str] = "AWS SageMaker HyperParameter Tuning Instance Configuration" + kind_description: ClassVar[str] = "SageMaker HyperParameter Tuning Instance Configuration is a resource used in the Amazon SageMaker service to configure the instance type and quantity for hyperparameter tuning of machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -2914,6 +3168,8 @@ class AwsSagemakerHyperParameterTuningInstanceConfig: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTuningResourceConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_resource_config" + kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Tuning Resource Config" + kind_description: ClassVar[str] = "SageMaker Hyper Parameter Tuning Resource Config is a resource configuration used for optimizing machine learning models in the Amazon SageMaker cloud platform." mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -2934,6 +3190,8 @@ class AwsSagemakerHyperParameterTuningResourceConfig: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTrainingJobDefinition: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_training_job_definition" + kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Training Job Definition" + kind_description: ClassVar[str] = "SageMaker Hyperparameter Training Job Definition is a configuration for running a training job in Amazon SageMaker, which allows the user to specify the hyperparameters, input data locations, and output data locations for the training job." mapping: ClassVar[Dict[str, Bender]] = { "definition_name": S("DefinitionName"), "tuning_objective": S("TuningObjective") >> Bend(AwsSagemakerHyperParameterTuningJobObjective.mapping), @@ -2979,6 +3237,8 @@ class AwsSagemakerHyperParameterTrainingJobDefinition: @define(eq=False, slots=False) class AwsSagemakerTrainingJobStatusCounters: kind: ClassVar[str] = "aws_sagemaker_training_job_status_counters" + kind_display: ClassVar[str] = "AWS SageMaker Training Job Status Counters" + kind_description: ClassVar[str] = "SageMaker Training Job Status Counters represent the counts of training job statuses in AWS SageMaker, which is a service for training and deploying machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "completed": S("Completed"), "in_progress": S("InProgress"), @@ -2996,6 +3256,8 @@ class AwsSagemakerTrainingJobStatusCounters: @define(eq=False, slots=False) class AwsSagemakerObjectiveStatusCounters: kind: ClassVar[str] = "aws_sagemaker_objective_status_counters" + kind_display: ClassVar[str] = "AWS SageMaker Objective Status Counters" + kind_description: ClassVar[str] = "AWS SageMaker Objective Status Counters are metrics or counters that track the progress and status of objectives in Amazon SageMaker, a fully-managed machine learning service by AWS." mapping: ClassVar[Dict[str, Bender]] = {"succeeded": S("Succeeded"), "pending": S("Pending"), "failed": S("Failed")} succeeded: Optional[int] = field(default=None) pending: Optional[int] = field(default=None) @@ -3005,6 +3267,8 @@ class AwsSagemakerObjectiveStatusCounters: @define(eq=False, slots=False) class AwsSagemakerFinalHyperParameterTuningJobObjectiveMetric: kind: ClassVar[str] = "aws_sagemaker_final_hyper_parameter_tuning_job_objective_metric" + kind_display: ClassVar[str] = "AWS SageMaker Final Hyper Parameter Tuning Job Objective Metric" + kind_description: ClassVar[str] = "SageMaker is a fully managed machine learning service provided by AWS that enables developers to build, train, and deploy machine learning models. The Final Hyper Parameter Tuning Job Objective Metric is the metric used to evaluate the performance of a machine learning model after hyperparameter tuning." mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "metric_name": S("MetricName"), "value": S("Value")} type: Optional[str] = field(default=None) metric_name: Optional[str] = field(default=None) @@ -3014,6 +3278,8 @@ class AwsSagemakerFinalHyperParameterTuningJobObjectiveMetric: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTrainingJobSummary: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_training_job_summary" + kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Training Job Summary" + kind_description: ClassVar[str] = "SageMaker Hyper Parameter Training Job Summary provides a summary of hyperparameter training jobs in AWS SageMaker. It enables users to view key details and metrics of the training jobs for machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "training_job_definition_name": S("TrainingJobDefinitionName"), "training_job_name": S("TrainingJobName"), @@ -3048,6 +3314,8 @@ class AwsSagemakerHyperParameterTrainingJobSummary: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTuningJobWarmStartConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_warm_start_config" + kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job Warm Start Config" + kind_description: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job Warm Start Config allows you to reuse the results of previous tuning jobs in order to accelerate the optimization process for machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "parent_hyper_parameter_tuning_jobs": S("ParentHyperParameterTuningJobs", default=[]) >> ForallBend(S("HyperParameterTuningJobName")), @@ -3060,6 +3328,8 @@ class AwsSagemakerHyperParameterTuningJobWarmStartConfig: @define(eq=False, slots=False) class AwsSagemakerHyperParameterTuningJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job" + kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job" + kind_description: ClassVar[str] = "SageMaker Hyperparameter Tuning Job is an automated process in Amazon SageMaker that helps optimize the hyperparameters of a machine learning model to achieve better performance." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -3197,6 +3467,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerPhase: kind: ClassVar[str] = "aws_sagemaker_phase" + kind_display: ClassVar[str] = "AWS SageMaker Phase" + kind_description: ClassVar[str] = "SageMaker Phase is a component of Amazon SageMaker, which is a fully-managed machine learning service that enables developers to build, train, and deploy machine learning models at scale." mapping: ClassVar[Dict[str, Bender]] = { "initial_number_of_users": S("InitialNumberOfUsers"), "spawn_rate": S("SpawnRate"), @@ -3210,6 +3482,8 @@ class AwsSagemakerPhase: @define(eq=False, slots=False) class AwsSagemakerTrafficPattern: kind: ClassVar[str] = "aws_sagemaker_traffic_pattern" + kind_display: ClassVar[str] = "AWS SageMaker Traffic Pattern" + kind_description: ClassVar[str] = "SageMaker Traffic Pattern in AWS refers to the traffic distribution or routing rules for deploying machine learning models in Amazon SageMaker, allowing users to define how incoming requests are routed to the deployed models." mapping: ClassVar[Dict[str, Bender]] = { "traffic_type": S("TrafficType"), "phases": S("Phases", default=[]) >> ForallBend(AwsSagemakerPhase.mapping), @@ -3221,6 +3495,8 @@ class AwsSagemakerTrafficPattern: @define(eq=False, slots=False) class AwsSagemakerRecommendationJobResourceLimit: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_resource_limit" + kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Resource Limit" + kind_description: ClassVar[str] = "SageMaker Recommendation Job Resource Limit specifies the maximum resources, such as memory and compute, that can be allocated to a recommendation job in Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "max_number_of_tests": S("MaxNumberOfTests"), "max_parallel_of_tests": S("MaxParallelOfTests"), @@ -3232,6 +3508,8 @@ class AwsSagemakerRecommendationJobResourceLimit: @define(eq=False, slots=False) class AwsSagemakerEnvironmentParameterRanges: kind: ClassVar[str] = "aws_sagemaker_environment_parameter_ranges" + kind_display: ClassVar[str] = "AWS SageMaker Environment Parameter Ranges" + kind_description: ClassVar[str] = "SageMaker Environment Parameter Ranges are a set of constraints or boundaries for the hyperparameters used in Amazon SageMaker. These ranges define the valid values that can be used for tuning machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "categorical_parameter_ranges": S("CategoricalParameterRanges", "Value", default=[]) } @@ -3241,6 +3519,8 @@ class AwsSagemakerEnvironmentParameterRanges: @define(eq=False, slots=False) class AwsSagemakerEndpointInputConfiguration: kind: ClassVar[str] = "aws_sagemaker_endpoint_input_configuration" + kind_display: ClassVar[str] = "AWS SageMaker Endpoint Input Configuration" + kind_description: ClassVar[str] = "Input configuration for a SageMaker endpoint, which defines the data input format and location for real-time inference." mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "inference_specification_name": S("InferenceSpecificationName"), @@ -3255,6 +3535,8 @@ class AwsSagemakerEndpointInputConfiguration: @define(eq=False, slots=False) class AwsSagemakerRecommendationJobPayloadConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_payload_config" + kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Payload Config" + kind_description: ClassVar[str] = "SageMaker recommendation job payload configuration specifies the data format and location of the input payload for a recommendation job on AWS SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "sample_payload_url": S("SamplePayloadUrl"), "supported_content_types": S("SupportedContentTypes", default=[]), @@ -3266,6 +3548,8 @@ class AwsSagemakerRecommendationJobPayloadConfig: @define(eq=False, slots=False) class AwsSagemakerRecommendationJobContainerConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_container_config" + kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Container Config" + kind_description: ClassVar[str] = "This resource represents the container configuration for a recommendation job in AWS SageMaker. SageMaker is a fully-managed machine learning service by Amazon that allows you to build, train, and deploy machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "domain": S("Domain"), "task": S("Task"), @@ -3287,6 +3571,8 @@ class AwsSagemakerRecommendationJobContainerConfig: @define(eq=False, slots=False) class AwsSagemakerRecommendationJobInputConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_input_config" + kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Input Config" + kind_description: ClassVar[str] = "The input configuration for a recommendation job in Amazon SageMaker, which specifies the location of the input data for the recommendation model." mapping: ClassVar[Dict[str, Bender]] = { "model_package_version_arn": S("ModelPackageVersionArn"), "job_duration_in_seconds": S("JobDurationInSeconds"), @@ -3311,6 +3597,8 @@ class AwsSagemakerRecommendationJobInputConfig: @define(eq=False, slots=False) class AwsSagemakerModelLatencyThreshold: kind: ClassVar[str] = "aws_sagemaker_model_latency_threshold" + kind_display: ClassVar[str] = "AWS SageMaker Model Latency Threshold" + kind_description: ClassVar[str] = "SageMaker Model Latency Threshold is a parameter used to set the maximum acceptable latency for predictions made by a model deployed on Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "percentile": S("Percentile"), "value_in_milliseconds": S("ValueInMilliseconds"), @@ -3322,6 +3610,8 @@ class AwsSagemakerModelLatencyThreshold: @define(eq=False, slots=False) class AwsSagemakerRecommendationJobStoppingConditions: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_stopping_conditions" + kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Stopping Conditions" + kind_description: ClassVar[str] = "SageMaker Recommendation Job Stopping Conditions in AWS allow you to specify conditions that determine when the recommendation job should stop, based on factors such as maximum runtime or model metric threshold." mapping: ClassVar[Dict[str, Bender]] = { "max_invocations": S("MaxInvocations"), "model_latency_thresholds": S("ModelLatencyThresholds", default=[]) @@ -3334,6 +3624,8 @@ class AwsSagemakerRecommendationJobStoppingConditions: @define(eq=False, slots=False) class AwsSagemakerRecommendationMetrics: kind: ClassVar[str] = "aws_sagemaker_recommendation_metrics" + kind_display: ClassVar[str] = "AWS SageMaker Recommendation Metrics" + kind_description: ClassVar[str] = "SageMaker Recommendation Metrics are performance evaluation metrics used in Amazon SageMaker to measure the accuracy and effectiveness of recommendation algorithms." mapping: ClassVar[Dict[str, Bender]] = { "cost_per_hour": S("CostPerHour"), "cost_per_inference": S("CostPerInference"), @@ -3349,6 +3641,8 @@ class AwsSagemakerRecommendationMetrics: @define(eq=False, slots=False) class AwsSagemakerEndpointOutputConfiguration: kind: ClassVar[str] = "aws_sagemaker_endpoint_output_configuration" + kind_display: ClassVar[str] = "AWS SageMaker Endpoint Output Configuration" + kind_description: ClassVar[str] = "The output configuration for the SageMaker endpoint, specifying where the predictions should be stored or streamed." mapping: ClassVar[Dict[str, Bender]] = { "endpoint_name": S("EndpointName"), "variant_name": S("VariantName"), @@ -3364,6 +3658,8 @@ class AwsSagemakerEndpointOutputConfiguration: @define(eq=False, slots=False) class AwsSagemakerEnvironmentParameter: kind: ClassVar[str] = "aws_sagemaker_environment_parameter" + kind_display: ClassVar[str] = "AWS SageMaker Environment Parameter" + kind_description: ClassVar[str] = "SageMaker Environment Parameters are key-value pairs that can be used to pass environment variables to a training job or a hosting job in Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = {"key": S("Key"), "value_type": S("ValueType"), "value": S("Value")} key: Optional[str] = field(default=None) value_type: Optional[str] = field(default=None) @@ -3373,6 +3669,8 @@ class AwsSagemakerEnvironmentParameter: @define(eq=False, slots=False) class AwsSagemakerModelConfiguration: kind: ClassVar[str] = "aws_sagemaker_model_configuration" + kind_display: ClassVar[str] = "AWS SageMaker Model Configuration" + kind_description: ClassVar[str] = "SageMaker Model Configuration is a resource in AWS that allows users to define and configure machine learning models for use in Amazon SageMaker, a fully managed machine learning service." mapping: ClassVar[Dict[str, Bender]] = { "inference_specification_name": S("InferenceSpecificationName"), "environment_parameters": S("EnvironmentParameters", default=[]) @@ -3385,6 +3683,8 @@ class AwsSagemakerModelConfiguration: @define(eq=False, slots=False) class AwsSagemakerInferenceRecommendation: kind: ClassVar[str] = "aws_sagemaker_inference_recommendation" + kind_display: ClassVar[str] = "AWS SageMaker Inference Recommendation" + kind_description: ClassVar[str] = "Amazon SageMaker Inference Recommendation is a service that provides real-time recommendations using machine learning models deployed on the Amazon SageMaker platform." mapping: ClassVar[Dict[str, Bender]] = { "metrics": S("Metrics") >> Bend(AwsSagemakerRecommendationMetrics.mapping), "endpoint_configuration": S("EndpointConfiguration") >> Bend(AwsSagemakerEndpointOutputConfiguration.mapping), @@ -3398,6 +3698,8 @@ class AwsSagemakerInferenceRecommendation: @define(eq=False, slots=False) class AwsSagemakerInferenceMetrics: kind: ClassVar[str] = "aws_sagemaker_inference_metrics" + kind_display: ClassVar[str] = "AWS SageMaker Inference Metrics" + kind_description: ClassVar[str] = "SageMaker Inference Metrics provide performance metrics for machine learning models deployed on the SageMaker platform, allowing users to track the accuracy and efficiency of their model predictions." mapping: ClassVar[Dict[str, Bender]] = {"max_invocations": S("MaxInvocations"), "model_latency": S("ModelLatency")} max_invocations: Optional[int] = field(default=None) model_latency: Optional[int] = field(default=None) @@ -3406,6 +3708,8 @@ class AwsSagemakerInferenceMetrics: @define(eq=False, slots=False) class AwsSagemakerEndpointPerformance: kind: ClassVar[str] = "aws_sagemaker_endpoint_performance" + kind_display: ClassVar[str] = "AWS SageMaker Endpoint Performance" + kind_description: ClassVar[str] = "SageMaker Endpoint Performance is a service provided by Amazon Web Services for monitoring and optimizing the performance of machine learning models deployed on SageMaker endpoints." mapping: ClassVar[Dict[str, Bender]] = { "metrics": S("Metrics") >> Bend(AwsSagemakerInferenceMetrics.mapping), "endpoint_info": S("EndpointInfo", "EndpointName"), @@ -3417,6 +3721,8 @@ class AwsSagemakerEndpointPerformance: @define(eq=False, slots=False) class AwsSagemakerInferenceRecommendationsJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_inference_recommendations_job" + kind_display: ClassVar[str] = "AWS SageMaker Inference Recommendations Job" + kind_description: ClassVar[str] = "SageMaker Inference Recommendations Jobs are used in Amazon SageMaker to create recommendation models that can generate personalized recommendations based on user data." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -3521,6 +3827,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerLabelCounters: kind: ClassVar[str] = "aws_sagemaker_label_counters" + kind_display: ClassVar[str] = "AWS SageMaker Label Counters" + kind_description: ClassVar[str] = "SageMaker Label Counters are a feature in Amazon SageMaker that enables you to track the distribution of labels in your dataset, helping you analyze and manage label imbalances." mapping: ClassVar[Dict[str, Bender]] = { "total_labeled": S("TotalLabeled"), "human_labeled": S("HumanLabeled"), @@ -3538,6 +3846,8 @@ class AwsSagemakerLabelCounters: @define(eq=False, slots=False) class AwsSagemakerLabelingJobDataSource: kind: ClassVar[str] = "aws_sagemaker_labeling_job_data_source" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Data Source" + kind_description: ClassVar[str] = "SageMaker Labeling Job Data Source is a source of data used for machine learning labeling tasks in Amazon SageMaker. It can include various types of data such as text, images, or videos." mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource", "ManifestS3Uri"), "sns_data_source": S("SnsDataSource", "SnsTopicArn"), @@ -3549,6 +3859,8 @@ class AwsSagemakerLabelingJobDataSource: @define(eq=False, slots=False) class AwsSagemakerLabelingJobInputConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_input_config" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Input Config" + kind_description: ClassVar[str] = "SageMaker Labeling Job Input Config is a configuration for specifying the input data for a labeling job in Amazon SageMaker. It includes information such as the input data source location and format." mapping: ClassVar[Dict[str, Bender]] = { "data_source": S("DataSource") >> Bend(AwsSagemakerLabelingJobDataSource.mapping), "data_attributes": S("DataAttributes", "ContentClassifiers", default=[]), @@ -3560,6 +3872,8 @@ class AwsSagemakerLabelingJobInputConfig: @define(eq=False, slots=False) class AwsSagemakerLabelingJobOutputConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_output_config" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Output Config" + kind_description: ClassVar[str] = "The output configuration for a labeling job in Amazon SageMaker. It specifies the location that the generated manifest file and labeled data objects will be saved to." mapping: ClassVar[Dict[str, Bender]] = { "s3_output_path": S("S3OutputPath"), "kms_key_id": S("KmsKeyId"), @@ -3573,6 +3887,8 @@ class AwsSagemakerLabelingJobOutputConfig: @define(eq=False, slots=False) class AwsSagemakerLabelingJobStoppingConditions: kind: ClassVar[str] = "aws_sagemaker_labeling_job_stopping_conditions" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Stopping Conditions" + kind_description: ClassVar[str] = "SageMaker Labeling Job Stopping Conditions is a feature in Amazon SageMaker that allows users to define conditions for stopping an active labeling job, such as when a certain number of data points have been labeled or when a certain level of accuracy has been achieved." mapping: ClassVar[Dict[str, Bender]] = { "max_human_labeled_object_count": S("MaxHumanLabeledObjectCount"), "max_percentage_of_input_dataset_labeled": S("MaxPercentageOfInputDatasetLabeled"), @@ -3584,6 +3900,8 @@ class AwsSagemakerLabelingJobStoppingConditions: @define(eq=False, slots=False) class AwsSagemakerLabelingJobResourceConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_resource_config" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Resource Config" + kind_description: ClassVar[str] = "SageMaker Labeling Job Resource Config is used to configure the resources required to run a labeling job in Amazon SageMaker, which provides a fully managed machine learning service." mapping: ClassVar[Dict[str, Bender]] = { "volume_kms_key_id": S("VolumeKmsKeyId"), "vpc_config": S("VpcConfig") >> Bend(AwsSagemakerVpcConfig.mapping), @@ -3595,6 +3913,8 @@ class AwsSagemakerLabelingJobResourceConfig: @define(eq=False, slots=False) class AwsSagemakerLabelingJobAlgorithmsConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_algorithms_config" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Algorithms Config" + kind_description: ClassVar[str] = "SageMaker Labeling Job Algorithms Config is a configuration that allows you to define the algorithms used in SageMaker labeling job." mapping: ClassVar[Dict[str, Bender]] = { "labeling_job_algorithm_specification_arn": S("LabelingJobAlgorithmSpecificationArn"), "initial_active_learning_model_arn": S("InitialActiveLearningModelArn"), @@ -3609,6 +3929,8 @@ class AwsSagemakerLabelingJobAlgorithmsConfig: @define(eq=False, slots=False) class AwsSagemakerUiConfig: kind: ClassVar[str] = "aws_sagemaker_ui_config" + kind_display: ClassVar[str] = "AWS SageMaker UI Config" + kind_description: ClassVar[str] = "SageMaker UI Config is a feature of Amazon SageMaker, a machine learning service provided by AWS. It allows users to configure the user interface for their SageMaker notebooks and experiments." mapping: ClassVar[Dict[str, Bender]] = { "ui_template_s3_uri": S("UiTemplateS3Uri"), "human_task_ui_arn": S("HumanTaskUiArn"), @@ -3620,6 +3942,8 @@ class AwsSagemakerUiConfig: @define(eq=False, slots=False) class AwsSagemakerUSD: kind: ClassVar[str] = "aws_sagemaker_usd" + kind_display: ClassVar[str] = "AWS SageMaker USD" + kind_description: ClassVar[str] = "SageMaker USD is a service offered by Amazon Web Services that allows machine learning developers to build, train, and deploy machine learning models using Universal Scene Description (USD) format." mapping: ClassVar[Dict[str, Bender]] = { "dollars": S("Dollars"), "cents": S("Cents"), @@ -3633,6 +3957,8 @@ class AwsSagemakerUSD: @define(eq=False, slots=False) class AwsSagemakerPublicWorkforceTaskPrice: kind: ClassVar[str] = "aws_sagemaker_public_workforce_task_price" + kind_display: ClassVar[str] = "AWS SageMaker Public Workforce Task Price" + kind_description: ClassVar[str] = "SageMaker Public Workforce Task Price is the cost associated with using Amazon SageMaker Public Workforce to create tasks for labeling and annotation of data." mapping: ClassVar[Dict[str, Bender]] = {"amount_in_usd": S("AmountInUsd") >> Bend(AwsSagemakerUSD.mapping)} amount_in_usd: Optional[AwsSagemakerUSD] = field(default=None) @@ -3640,6 +3966,8 @@ class AwsSagemakerPublicWorkforceTaskPrice: @define(eq=False, slots=False) class AwsSagemakerHumanTaskConfig: kind: ClassVar[str] = "aws_sagemaker_human_task_config" + kind_display: ClassVar[str] = "AWS SageMaker Human Task Config" + kind_description: ClassVar[str] = "AWS SageMaker Human Task Config is a configuration that allows you to create and manage human annotation jobs on your data using Amazon SageMaker. It enables you to build, train, and deploy machine learning models with human intelligence." mapping: ClassVar[Dict[str, Bender]] = { "workteam_arn": S("WorkteamArn"), "ui_config": S("UiConfig") >> Bend(AwsSagemakerUiConfig.mapping), @@ -3672,6 +4000,8 @@ class AwsSagemakerHumanTaskConfig: @define(eq=False, slots=False) class AwsSagemakerLabelingJobOutput: kind: ClassVar[str] = "aws_sagemaker_labeling_job_output" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Output" + kind_description: ClassVar[str] = "SageMaker Labeling Job Output is the result of a machine learning labeling job on the AWS SageMaker platform, which provides a managed environment for building, training, and deploying machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "output_dataset_s3_uri": S("OutputDatasetS3Uri"), "final_active_learning_model_arn": S("FinalActiveLearningModelArn"), @@ -3683,6 +4013,8 @@ class AwsSagemakerLabelingJobOutput: @define(eq=False, slots=False) class AwsSagemakerLabelingJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_labeling_job" + kind_display: ClassVar[str] = "AWS SageMaker Labeling Job" + kind_description: ClassVar[str] = "SageMaker Labeling Jobs are used to annotate and label data for training machine learning models in Amazon SageMaker." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -3812,6 +4144,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerProcessingS3Input: kind: ClassVar[str] = "aws_sagemaker_processing_s3_input" + kind_display: ClassVar[str] = "AWS SageMaker Processing S3 Input" + kind_description: ClassVar[str] = "S3 Input is used in Amazon SageMaker Processing, a service that runs processing tasks on large volumes of data in a distributed and managed way on AWS SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "s3_uri": S("S3Uri"), "local_path": S("LocalPath"), @@ -3831,6 +4165,8 @@ class AwsSagemakerProcessingS3Input: @define(eq=False, slots=False) class AwsSagemakerAthenaDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_athena_dataset_definition" + kind_display: ClassVar[str] = "AWS SageMaker Athena Dataset Definition" + kind_description: ClassVar[str] = "Athena Dataset Definitions in SageMaker is used to define and create datasets that can be accessed and used for machine learning projects in AWS SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "catalog": S("Catalog"), "database": S("Database"), @@ -3854,6 +4190,8 @@ class AwsSagemakerAthenaDatasetDefinition: @define(eq=False, slots=False) class AwsSagemakerRedshiftDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_redshift_dataset_definition" + kind_display: ClassVar[str] = "AWS SageMaker Redshift Dataset Definition" + kind_description: ClassVar[str] = "SageMaker Redshift Dataset Definition is a resource in Amazon SageMaker that allows you to define datasets for training machine learning models using data stored in Amazon Redshift." mapping: ClassVar[Dict[str, Bender]] = { "cluster_id": S("ClusterId"), "database": S("Database"), @@ -3879,6 +4217,8 @@ class AwsSagemakerRedshiftDatasetDefinition: @define(eq=False, slots=False) class AwsSagemakerDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_dataset_definition" + kind_display: ClassVar[str] = "AWS SageMaker Dataset Definition" + kind_description: ClassVar[str] = "SageMaker Dataset Definition is a resource in Amazon SageMaker that specifies the location and format of input data for training and inference." mapping: ClassVar[Dict[str, Bender]] = { "athena_dataset_definition": S("AthenaDatasetDefinition") >> Bend(AwsSagemakerAthenaDatasetDefinition.mapping), "redshift_dataset_definition": S("RedshiftDatasetDefinition") @@ -3897,6 +4237,8 @@ class AwsSagemakerDatasetDefinition: @define(eq=False, slots=False) class AwsSagemakerProcessingInput: kind: ClassVar[str] = "aws_sagemaker_processing_input" + kind_display: ClassVar[str] = "AWS SageMaker Processing Input" + kind_description: ClassVar[str] = "SageMaker Processing Input is a resource in Amazon SageMaker that represents the input data for a processing job. It is used to provide data to be processed by SageMaker algorithms or custom code." mapping: ClassVar[Dict[str, Bender]] = { "input_name": S("InputName"), "app_managed": S("AppManaged"), @@ -3912,6 +4254,8 @@ class AwsSagemakerProcessingInput: @define(eq=False, slots=False) class AwsSagemakerProcessingS3Output: kind: ClassVar[str] = "aws_sagemaker_processing_s3_output" + kind_display: ClassVar[str] = "AWS SageMaker Processing S3 Output" + kind_description: ClassVar[str] = "SageMaker Processing S3 Output is the output location in Amazon S3 for the output artifacts generated during the data processing tasks performed by Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "s3_uri": S("S3Uri"), "local_path": S("LocalPath"), @@ -3925,6 +4269,8 @@ class AwsSagemakerProcessingS3Output: @define(eq=False, slots=False) class AwsSagemakerProcessingOutput: kind: ClassVar[str] = "aws_sagemaker_processing_output" + kind_display: ClassVar[str] = "AWS SageMaker Processing Output" + kind_description: ClassVar[str] = "SageMaker Processing Output is the result of running data processing operations on the Amazon SageMaker platform, which is used for building, training, and deploying machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "output_name": S("OutputName"), "s3_output": S("S3Output") >> Bend(AwsSagemakerProcessingS3Output.mapping), @@ -3940,6 +4286,8 @@ class AwsSagemakerProcessingOutput: @define(eq=False, slots=False) class AwsSagemakerProcessingOutputConfig: kind: ClassVar[str] = "aws_sagemaker_processing_output_config" + kind_display: ClassVar[str] = "AWS SageMaker Processing Output Config" + kind_description: ClassVar[str] = "SageMaker Processing Output Config is a configuration that specifies where and how the output of a SageMaker processing job should be stored." mapping: ClassVar[Dict[str, Bender]] = { "outputs": S("Outputs", default=[]) >> ForallBend(AwsSagemakerProcessingOutput.mapping), "kms_key_id": S("KmsKeyId"), @@ -3951,6 +4299,8 @@ class AwsSagemakerProcessingOutputConfig: @define(eq=False, slots=False) class AwsSagemakerProcessingClusterConfig: kind: ClassVar[str] = "aws_sagemaker_processing_cluster_config" + kind_display: ClassVar[str] = "AWS SageMaker Processing Cluster Config" + kind_description: ClassVar[str] = "SageMaker Processing Cluster Config provides configuration settings for creating and managing processing clusters in Amazon SageMaker. Processing clusters allow users to run data processing tasks on large datasets in a distributed and scalable manner." mapping: ClassVar[Dict[str, Bender]] = { "instance_count": S("InstanceCount"), "instance_type": S("InstanceType"), @@ -3966,6 +4316,8 @@ class AwsSagemakerProcessingClusterConfig: @define(eq=False, slots=False) class AwsSagemakerProcessingResources: kind: ClassVar[str] = "aws_sagemaker_processing_resources" + kind_display: ClassVar[str] = "AWS SageMaker Processing Resources" + kind_description: ClassVar[str] = "SageMaker processing resources in AWS are used for running data processing workloads, allowing users to perform data transformations, feature engineering, and other preprocessing tasks efficiently." mapping: ClassVar[Dict[str, Bender]] = { "cluster_config": S("ClusterConfig") >> Bend(AwsSagemakerProcessingClusterConfig.mapping) } @@ -3975,6 +4327,8 @@ class AwsSagemakerProcessingResources: @define(eq=False, slots=False) class AwsSagemakerAppSpecification: kind: ClassVar[str] = "aws_sagemaker_app_specification" + kind_display: ClassVar[str] = "AWS SageMaker App Specification" + kind_description: ClassVar[str] = "SageMaker App Specification is a resource in AWS that allows you to define the container environment and dependencies for running an application on Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "image_uri": S("ImageUri"), "container_entrypoint": S("ContainerEntrypoint", default=[]), @@ -3988,6 +4342,8 @@ class AwsSagemakerAppSpecification: @define(eq=False, slots=False) class AwsSagemakerNetworkConfig: kind: ClassVar[str] = "aws_sagemaker_network_config" + kind_display: ClassVar[str] = "AWS SageMaker Network Config" + kind_description: ClassVar[str] = "SageMaker Network Config is a configuration option in Amazon SageMaker that allows you to customize the network settings for your machine learning models, such as VPC configurations and security group configurations." mapping: ClassVar[Dict[str, Bender]] = { "enable_inter_container_traffic_encryption": S("EnableInterContainerTrafficEncryption"), "enable_network_isolation": S("EnableNetworkIsolation"), @@ -4001,6 +4357,8 @@ class AwsSagemakerNetworkConfig: @define(eq=False, slots=False) class AwsSagemakerProcessingJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_processing_job" + kind_display: ClassVar[str] = "AWS SageMaker Processing Job" + kind_description: ClassVar[str] = "SageMaker Processing Jobs provide a managed infrastructure for executing data processing tasks in Amazon SageMaker, enabling users to preprocess and analyze data efficiently." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -4139,6 +4497,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerAlgorithmSpecification: kind: ClassVar[str] = "aws_sagemaker_algorithm_specification" + kind_display: ClassVar[str] = "AWS SageMaker Algorithm Specification" + kind_description: ClassVar[str] = "The AWS SageMaker Algorithm Specification is a specification that defines the characteristics and requirements of custom algorithms for Amazon SageMaker, a fully-managed machine learning service provided by Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "training_image": S("TrainingImage"), "algorithm_name": S("AlgorithmName"), @@ -4160,6 +4520,8 @@ class AwsSagemakerAlgorithmSpecification: @define(eq=False, slots=False) class AwsSagemakerSecondaryStatusTransition: kind: ClassVar[str] = "aws_sagemaker_secondary_status_transition" + kind_display: ClassVar[str] = "AWS SageMaker Secondary Status Transition" + kind_description: ClassVar[str] = "Secondary status transition in Amazon SageMaker represents the state of the training or processing job after reaching a certain status." mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "start_time": S("StartTime"), @@ -4175,6 +4537,8 @@ class AwsSagemakerSecondaryStatusTransition: @define(eq=False, slots=False) class AwsSagemakerMetricData: kind: ClassVar[str] = "aws_sagemaker_metric_data" + kind_display: ClassVar[str] = "AWS SageMaker Metric Data" + kind_description: ClassVar[str] = "SageMaker Metric Data is a feature of AWS SageMaker that allows users to monitor and track machine learning model metrics during training and inference." mapping: ClassVar[Dict[str, Bender]] = { "metric_name": S("MetricName"), "value": S("Value"), @@ -4188,6 +4552,8 @@ class AwsSagemakerMetricData: @define(eq=False, slots=False) class AwsSagemakerCollectionConfiguration: kind: ClassVar[str] = "aws_sagemaker_collection_configuration" + kind_display: ClassVar[str] = "AWS SageMaker Collection Configuration" + kind_description: ClassVar[str] = "SageMaker Collection Configuration is a feature in Amazon SageMaker that allows users to configure data collection during model training, enabling the capturing of input data for further analysis and improvement." mapping: ClassVar[Dict[str, Bender]] = { "collection_name": S("CollectionName"), "collection_parameters": S("CollectionParameters"), @@ -4199,6 +4565,8 @@ class AwsSagemakerCollectionConfiguration: @define(eq=False, slots=False) class AwsSagemakerDebugHookConfig: kind: ClassVar[str] = "aws_sagemaker_debug_hook_config" + kind_display: ClassVar[str] = "AWS SageMaker Debug Hook Config" + kind_description: ClassVar[str] = "SageMaker Debug Hook Config is a feature of Amazon SageMaker, a fully managed service that enables developers to build, train, and deploy machine learning models. The Debug Hook Config allows for monitoring and debugging of the models during training." mapping: ClassVar[Dict[str, Bender]] = { "local_path": S("LocalPath"), "s3_output_path": S("S3OutputPath"), @@ -4215,6 +4583,8 @@ class AwsSagemakerDebugHookConfig: @define(eq=False, slots=False) class AwsSagemakerDebugRuleConfiguration: kind: ClassVar[str] = "aws_sagemaker_debug_rule_configuration" + kind_display: ClassVar[str] = "AWS SageMaker Debug Rule Configuration" + kind_description: ClassVar[str] = "SageMaker Debug Rule Configuration is a feature in Amazon SageMaker that allows users to define debugging rules for machine learning models, helping to identify and fix issues in the training or deployment process." mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "local_path": S("LocalPath"), @@ -4236,6 +4606,8 @@ class AwsSagemakerDebugRuleConfiguration: @define(eq=False, slots=False) class AwsSagemakerTensorBoardOutputConfig: kind: ClassVar[str] = "aws_sagemaker_tensor_board_output_config" + kind_display: ClassVar[str] = "AWS SageMaker TensorBoard Output Config" + kind_description: ClassVar[str] = "SageMaker TensorBoard Output Config is a resource in AWS SageMaker that specifies the configuration for exporting training job tensorboard data to an S3 bucket for visualization and analysis." mapping: ClassVar[Dict[str, Bender]] = {"local_path": S("LocalPath"), "s3_output_path": S("S3OutputPath")} local_path: Optional[str] = field(default=None) s3_output_path: Optional[str] = field(default=None) @@ -4244,6 +4616,8 @@ class AwsSagemakerTensorBoardOutputConfig: @define(eq=False, slots=False) class AwsSagemakerDebugRuleEvaluationStatus: kind: ClassVar[str] = "aws_sagemaker_debug_rule_evaluation_status" + kind_display: ClassVar[str] = "AWS SageMaker Debug Rule Evaluation Status" + kind_description: ClassVar[str] = "SageMaker Debug Rule Evaluation Status represents the evaluation status of the debug rules in Amazon SageMaker, which helps in debugging and monitoring machine learning models during training and deployment." mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "rule_evaluation_job_arn": S("RuleEvaluationJobArn"), @@ -4261,6 +4635,8 @@ class AwsSagemakerDebugRuleEvaluationStatus: @define(eq=False, slots=False) class AwsSagemakerProfilerConfig: kind: ClassVar[str] = "aws_sagemaker_profiler_config" + kind_display: ClassVar[str] = "AWS SageMaker Profiler Configuration" + kind_description: ClassVar[str] = "SageMaker Profiler is an Amazon Web Services capability that automatically analyzes your model's training data and provides recommendations for optimizing performance." mapping: ClassVar[Dict[str, Bender]] = { "s3_output_path": S("S3OutputPath"), "profiling_interval_in_milliseconds": S("ProfilingIntervalInMilliseconds"), @@ -4274,6 +4650,8 @@ class AwsSagemakerProfilerConfig: @define(eq=False, slots=False) class AwsSagemakerProfilerRuleConfiguration: kind: ClassVar[str] = "aws_sagemaker_profiler_rule_configuration" + kind_display: ClassVar[str] = "AWS SageMaker Profiler Rule Configuration" + kind_description: ClassVar[str] = "SageMaker Profiler Rule Configuration is a feature provided by AWS SageMaker that allows defining rules for profiling machine learning models during training to identify potential performance and resource utilization issues." mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "local_path": S("LocalPath"), @@ -4295,6 +4673,8 @@ class AwsSagemakerProfilerRuleConfiguration: @define(eq=False, slots=False) class AwsSagemakerProfilerRuleEvaluationStatus: kind: ClassVar[str] = "aws_sagemaker_profiler_rule_evaluation_status" + kind_display: ClassVar[str] = "AWS SageMaker Profiler Rule Evaluation Status" + kind_description: ClassVar[str] = "SageMaker Profiler Rule Evaluation Status is a feature in Amazon SageMaker that allows users to monitor and assess the performance of machine learning models by evaluating predefined rules." mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "rule_evaluation_job_arn": S("RuleEvaluationJobArn"), @@ -4312,6 +4692,8 @@ class AwsSagemakerProfilerRuleEvaluationStatus: @define(eq=False, slots=False) class AwsSagemakerWarmPoolStatus: kind: ClassVar[str] = "aws_sagemaker_warm_pool_status" + kind_display: ClassVar[str] = "AWS SageMaker Warm Pool Status" + kind_description: ClassVar[str] = "SageMaker Warm Pool Status refers to the current state of a warm pool in AWS SageMaker, which is a collection of pre-initialized instances that can be used to speed up the deployment and inference process for machine learning models." mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "resource_retained_billable_time_in_seconds": S("ResourceRetainedBillableTimeInSeconds"), @@ -4325,6 +4707,8 @@ class AwsSagemakerWarmPoolStatus: @define(eq=False, slots=False) class AwsSagemakerTrainingJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_training_job" + kind_display: ClassVar[str] = "AWS SageMaker Training Job" + kind_description: ClassVar[str] = "SageMaker Training Job is a service provided by AWS that allows users to train machine learning models and build high-quality custom models." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -4509,6 +4893,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class AwsSagemakerModelClientConfig: kind: ClassVar[str] = "aws_sagemaker_model_client_config" + kind_display: ClassVar[str] = "AWS SageMaker Model Client Config" + kind_description: ClassVar[str] = "SageMaker Model Client Config is a configuration for the SageMaker Python SDK to interact with SageMaker models. It contains information such as the endpoint name, instance type, and model name." mapping: ClassVar[Dict[str, Bender]] = { "invocations_timeout_in_seconds": S("InvocationsTimeoutInSeconds"), "invocations_max_retries": S("InvocationsMaxRetries"), @@ -4520,6 +4906,8 @@ class AwsSagemakerModelClientConfig: @define(eq=False, slots=False) class AwsSagemakerBatchDataCaptureConfig: kind: ClassVar[str] = "aws_sagemaker_batch_data_capture_config" + kind_display: ClassVar[str] = "AWS SageMaker Batch Data Capture Config" + kind_description: ClassVar[str] = "SageMaker Batch Data Capture Config is a feature of AWS SageMaker that allows capturing data for model monitoring and analysis during batch processing." mapping: ClassVar[Dict[str, Bender]] = { "destination_s3_uri": S("DestinationS3Uri"), "kms_key_id": S("KmsKeyId"), @@ -4533,6 +4921,8 @@ class AwsSagemakerBatchDataCaptureConfig: @define(eq=False, slots=False) class AwsSagemakerDataProcessing: kind: ClassVar[str] = "aws_sagemaker_data_processing" + kind_display: ClassVar[str] = "AWS SageMaker Data Processing" + kind_description: ClassVar[str] = "SageMaker Data Processing is a service offered by AWS that allows data scientists and developers to easily preprocess and transform large amounts of data for machine learning purposes." mapping: ClassVar[Dict[str, Bender]] = { "input_filter": S("InputFilter"), "output_filter": S("OutputFilter"), @@ -4546,6 +4936,8 @@ class AwsSagemakerDataProcessing: @define(eq=False, slots=False) class AwsSagemakerTransformJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_transform_job" + kind_display: ClassVar[str] = "AWS SageMaker Transform Job" + kind_description: ClassVar[str] = "SageMaker Transform Jobs are used in Amazon SageMaker to transform input data using a trained model, generating output results for further analysis or inference." reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ diff --git a/plugins/aws/resoto_plugin_aws/resource/service_quotas.py b/plugins/aws/resoto_plugin_aws/resource/service_quotas.py index 7bdf65793f..9ac8339fa2 100644 --- a/plugins/aws/resoto_plugin_aws/resource/service_quotas.py +++ b/plugins/aws/resoto_plugin_aws/resource/service_quotas.py @@ -18,6 +18,8 @@ @define(eq=False, slots=False) class AwsQuotaMetricInfo: kind: ClassVar[str] = "aws_quota_metric_info" + kind_display: ClassVar[str] = "AWS Quota Metric Info" + kind_description: ClassVar[str] = "Quota Metric Info provides information about the quotas and limits set for various services and resource types in Amazon Web Services." mapping: ClassVar[Dict[str, Bender]] = { "metric_namespace": S("MetricNamespace"), "metric_name": S("MetricName"), @@ -33,6 +35,8 @@ class AwsQuotaMetricInfo: @define(eq=False, slots=False) class AwsQuotaPeriod: kind: ClassVar[str] = "aws_quota_period" + kind_display: ClassVar[str] = "AWS Quota Period" + kind_description: ClassVar[str] = "Quota Period refers to the timeframe for which resource usage is measured and restrictions are imposed by AWS." mapping: ClassVar[Dict[str, Bender]] = {"period_value": S("PeriodValue"), "period_unit": S("PeriodUnit")} period_value: Optional[int] = field(default=None) period_unit: Optional[str] = field(default=None) @@ -41,6 +45,8 @@ class AwsQuotaPeriod: @define(eq=False, slots=False) class AwsQuotaErrorReason: kind: ClassVar[str] = "aws_quota_error_reason" + kind_display: ClassVar[str] = "AWS Quota Error Reason" + kind_description: ClassVar[str] = "AWS Quota Error Reason refers to the reason for a quota error in Amazon Web Services. It indicates the cause of exceeding the resource limits set by AWS quotas." mapping: ClassVar[Dict[str, Bender]] = {"error_code": S("ErrorCode"), "error_message": S("ErrorMessage")} error_code: Optional[str] = field(default=None) error_message: Optional[str] = field(default=None) @@ -49,6 +55,8 @@ class AwsQuotaErrorReason: @define(eq=False, slots=False) class AwsServiceQuota(AwsResource, BaseQuota): kind: ClassVar[str] = "aws_service_quota" + kind_display: ClassVar[str] = "AWS Service Quota" + kind_description: ClassVar[str] = "AWS Service Quota is a feature that enables you to view and manage your quotas (also referred to as limits) for AWS services." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ diff --git a/plugins/aws/resoto_plugin_aws/resource/sns.py b/plugins/aws/resoto_plugin_aws/resource/sns.py index 03e9fee971..43a425c3d8 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sns.py +++ b/plugins/aws/resoto_plugin_aws/resource/sns.py @@ -16,6 +16,8 @@ @define(eq=False, slots=False) class AwsSnsTopic(AwsResource): kind: ClassVar[str] = "aws_sns_topic" + kind_display: ClassVar[str] = "AWS SNS Topic" + kind_description: ClassVar[str] = "AWS SNS (Simple Notification Service) Topic is a publish-subscribe messaging service provided by Amazon Web Services. It allows applications, services, and devices to send and receive notifications via email, SMS, push notifications, and more." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-topics", "Topics") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -115,6 +117,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsSnsSubscription(AwsResource): kind: ClassVar[str] = "aws_sns_subscription" + kind_display: ClassVar[str] = "AWS SNS Subscription" + kind_description: ClassVar[str] = "SNS Subscriptions in AWS allow applications to receive messages from topics of interest using different protocols such as HTTP, email, SMS, or Lambda function invocation." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-subscriptions", "Subscriptions") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_sns_topic", "aws_iam_role"], "delete": ["aws_iam_role"]}, @@ -192,6 +196,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSnsEndpoint(AwsResource): # collection of endpoint resources happens in AwsSnsPlatformApplication.collect() kind: ClassVar[str] = "aws_sns_endpoint" + kind_display: ClassVar[str] = "AWS SNS Endpoint" + kind_description: ClassVar[str] = "An endpoint in the AWS Simple Notification Service (SNS), which is used to send push notifications or SMS messages to mobile devices or other applications." mapping: ClassVar[Dict[str, Bender]] = { "id": S("Arn"), "arn": S("Arn"), @@ -217,6 +223,8 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsSnsPlatformApplication(AwsResource): kind: ClassVar[str] = "aws_sns_platform_application" + kind_display: ClassVar[str] = "AWS SNS Platform Application" + kind_description: ClassVar[str] = "AWS SNS Platform Application is a service that allows you to create a platform application and register it with Amazon SNS so that your application can receive push notifications." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-platform-applications", "PlatformApplications", expected_errors=["InvalidAction"] ) diff --git a/plugins/aws/resoto_plugin_aws/resource/sqs.py b/plugins/aws/resoto_plugin_aws/resource/sqs.py index 146b0d84fe..331af5a2a3 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sqs.py +++ b/plugins/aws/resoto_plugin_aws/resource/sqs.py @@ -18,6 +18,8 @@ @define(eq=False, slots=False) class AwsSqsRedrivePolicy: kind: ClassVar[str] = "aws_sqs_redrive_policy" + kind_display: ClassVar[str] = "AWS SQS Redrive Policy" + kind_description: ClassVar[str] = "The AWS SQS Redrive Policy enables you to configure dead-letter queues for your Amazon Simple Queue Service (SQS) queues. Dead-letter queues are used to store messages that cannot be processed successfully by the main queue." mapping: ClassVar[Dict[str, Bender]] = { "dead_letter_target_arn": S("deadLetterTargetArn"), "max_receive_count": S("maxReceiveCount"), @@ -29,6 +31,8 @@ class AwsSqsRedrivePolicy: @define(eq=False, slots=False) class AwsSqsQueue(AwsResource): kind: ClassVar[str] = "aws_sqs_queue" + kind_display: ClassVar[str] = "AWS SQS Queue" + kind_description: ClassVar[str] = "SQS (Simple Queue Service) is a fully managed message queuing service provided by Amazon Web Services. It enables you to decouple and scale microservices, distributed systems, and serverless applications." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-queues", "QueueUrls") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_kms_key"]}, From 982055debabf8ff0cb91d0303baaa45785dd4fb9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 23:58:41 +0100 Subject: [PATCH 12/27] Update AWS linefeeds --- .../resoto_plugin_aws/resource/apigateway.py | 74 +- .../aws/resoto_plugin_aws/resource/athena.py | 32 +- .../resoto_plugin_aws/resource/autoscaling.py | 76 +- .../aws/resoto_plugin_aws/resource/base.py | 22 +- .../resource/cloudformation.py | 48 +- .../resoto_plugin_aws/resource/cloudfront.py | 304 ++++- .../resoto_plugin_aws/resource/cloudtrail.py | 25 +- .../resoto_plugin_aws/resource/cloudwatch.py | 46 + .../aws/resoto_plugin_aws/resource/cognito.py | 46 +- .../aws/resoto_plugin_aws/resource/config.py | 18 +- .../resoto_plugin_aws/resource/dynamodb.py | 92 +- plugins/aws/resoto_plugin_aws/resource/ec2.py | 509 ++++++-- plugins/aws/resoto_plugin_aws/resource/ecs.py | 395 +++++- plugins/aws/resoto_plugin_aws/resource/efs.py | 31 +- plugins/aws/resoto_plugin_aws/resource/eks.py | 99 +- .../resoto_plugin_aws/resource/elasticache.py | 111 +- .../resource/elasticbeanstalk.py | 77 +- plugins/aws/resoto_plugin_aws/resource/elb.py | 54 +- .../aws/resoto_plugin_aws/resource/elbv2.py | 114 +- .../aws/resoto_plugin_aws/resource/glacier.py | 42 +- plugins/aws/resoto_plugin_aws/resource/iam.py | 84 +- .../aws/resoto_plugin_aws/resource/kinesis.py | 30 +- plugins/aws/resoto_plugin_aws/resource/kms.py | 25 +- .../aws/resoto_plugin_aws/resource/lambda_.py | 68 +- .../aws/resoto_plugin_aws/resource/pricing.py | 21 +- plugins/aws/resoto_plugin_aws/resource/rds.py | 128 +- .../resoto_plugin_aws/resource/redshift.py | 112 +- .../aws/resoto_plugin_aws/resource/route53.py | 47 +- plugins/aws/resoto_plugin_aws/resource/s3.py | 54 +- .../resoto_plugin_aws/resource/sagemaker.py | 1156 ++++++++++++++--- .../resource/service_quotas.py | 21 +- plugins/aws/resoto_plugin_aws/resource/sns.py | 25 +- plugins/aws/resoto_plugin_aws/resource/sqs.py | 12 +- 33 files changed, 3322 insertions(+), 676 deletions(-) diff --git a/plugins/aws/resoto_plugin_aws/resource/apigateway.py b/plugins/aws/resoto_plugin_aws/resource/apigateway.py index d8fd68982e..4f20ee1c46 100644 --- a/plugins/aws/resoto_plugin_aws/resource/apigateway.py +++ b/plugins/aws/resoto_plugin_aws/resource/apigateway.py @@ -64,7 +64,11 @@ def service_name(cls) -> str: class AwsApiGatewayMethodResponse: kind: ClassVar[str] = "aws_api_gateway_method_response" kind_display: ClassVar[str] = "AWS API Gateway Method Response" - kind_description: ClassVar[str] = "API Gateway Method Response allows users to define the response parameters and models for a particular method in the API Gateway service, which helps in shaping the output of API responses." + kind_description: ClassVar[str] = ( + "API Gateway Method Response allows users to define the response parameters" + " and models for a particular method in the API Gateway service, which helps" + " in shaping the output of API responses." + ) mapping: ClassVar[Dict[str, Bender]] = { "status_code": S("statusCode"), "response_parameters": S("responseParameters"), @@ -79,7 +83,10 @@ class AwsApiGatewayMethodResponse: class AwsApiGatewayIntegrationResponse: kind: ClassVar[str] = "aws_api_gateway_integration_response" kind_display: ClassVar[str] = "AWS API Gateway Integration Response" - kind_description: ClassVar[str] = "API Gateway Integration Response is used to define the response structure and mapping for an API Gateway integration." + kind_description: ClassVar[str] = ( + "API Gateway Integration Response is used to define the response structure" + " and mapping for an API Gateway integration." + ) mapping: ClassVar[Dict[str, Bender]] = { "status_code": S("statusCode"), "selection_pattern": S("selectionPattern"), @@ -98,7 +105,11 @@ class AwsApiGatewayIntegrationResponse: class AwsApiGatewayIntegration: kind: ClassVar[str] = "aws_api_gateway_integration" kind_display: ClassVar[str] = "AWS API Gateway Integration" - kind_description: ClassVar[str] = "API Gateway Integration is a feature provided by AWS API Gateway that allows users to connect their APIs to other AWS services or external HTTP endpoints." + kind_description: ClassVar[str] = ( + "API Gateway Integration is a feature provided by AWS API Gateway that allows" + " users to connect their APIs to other AWS services or external HTTP" + " endpoints." + ) mapping: ClassVar[Dict[str, Bender]] = { "integration_type": S("type"), "http_method": S("httpMethod"), @@ -137,7 +148,11 @@ class AwsApiGatewayIntegration: class AwsApiGatewayMethod: kind: ClassVar[str] = "aws_api_gateway_method" kind_display: ClassVar[str] = "AWS API Gateway Method" - kind_description: ClassVar[str] = "AWS API Gateway Method allows users to define the individual methods that are available in a REST API, including the HTTP method and the integration with backend services." + kind_description: ClassVar[str] = ( + "AWS API Gateway Method allows users to define the individual methods that" + " are available in a REST API, including the HTTP method and the integration" + " with backend services." + ) mapping: ClassVar[Dict[str, Bender]] = { "http_method": S("httpMethod"), "authorization_type": S("authorizationType"), @@ -169,7 +184,10 @@ class AwsApiGatewayResource(AwsResource): # collection of resource resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_resource" kind_display: ClassVar[str] = "AWS API Gateway Resource" - kind_description: ClassVar[str] = "API Gateway Resource is a logical unit used in API Gateway to represent a part of an API's resource hierarchy." + kind_description: ClassVar[str] = ( + "API Gateway Resource is a logical unit used in API Gateway to represent a" + " part of an API's resource hierarchy." + ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_api_gateway_authorizer"]}} mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), @@ -218,7 +236,11 @@ class AwsApiGatewayAuthorizer(AwsResource): # collection of authorizer resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_authorizer" kind_display: ClassVar[str] = "AWS API Gateway Authorizer" - kind_description: ClassVar[str] = "API Gateway Authorizers are mechanisms that help control access to APIs deployed on AWS API Gateway by authenticating and authorizing client requests." + kind_description: ClassVar[str] = ( + "API Gateway Authorizers are mechanisms that help control access to APIs" + " deployed on AWS API Gateway by authenticating and authorizing client" + " requests." + ) reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_lambda_function"]}, "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_lambda_function", "aws_iam_role"]}, @@ -283,7 +305,11 @@ def service_name(cls) -> str: class AwsApiGatewayCanarySetting: kind: ClassVar[str] = "aws_api_gateway_canary_setting" kind_display: ClassVar[str] = "AWS API Gateway Canary Setting" - kind_description: ClassVar[str] = "API Gateway Canary Setting is a feature in AWS API Gateway that allows you to test new deployments or changes to your APIs on a small percentage of your traffic before rolling them out to the entire API." + kind_description: ClassVar[str] = ( + "API Gateway Canary Setting is a feature in AWS API Gateway that allows you" + " to test new deployments or changes to your APIs on a small percentage of" + " your traffic before rolling them out to the entire API." + ) mapping: ClassVar[Dict[str, Bender]] = { "percent_traffic": S("percentTraffic"), "deployment_id": S("deploymentId"), @@ -301,7 +327,10 @@ class AwsApiGatewayStage(ApiGatewayTaggable, AwsResource): # collection of stage resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_stage" kind_display: ClassVar[str] = "AWS API Gateway Stage" - kind_description: ClassVar[str] = "API Gateway Stages are environment configurations for deploying and managing APIs in the AWS API Gateway service." + kind_description: ClassVar[str] = ( + "API Gateway Stages are environment configurations for deploying and managing" + " APIs in the AWS API Gateway service." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("syntheticId"), # created by Resoto to avoid collision with duplicate stage names "name": S("stageName"), @@ -359,7 +388,11 @@ class AwsApiGatewayDeployment(AwsResource): # collection of deployment resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_api_gateway_deployment" kind_display: ClassVar[str] = "AWS API Gateway Deployment" - kind_description: ClassVar[str] = "API Gateway Deployments refer to the process of deploying the API configurations created in AWS API Gateway to make them accessible for clients." + kind_description: ClassVar[str] = ( + "API Gateway Deployments refer to the process of deploying the API" + " configurations created in AWS API Gateway to make them accessible for" + " clients." + ) # edge to aws_api_gateway_stage is established in AwsApiGatewayRestApi.collect() reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_api_gateway_stage"]}} @@ -398,7 +431,11 @@ def service_name(cls) -> str: class AwsApiGatewayEndpointConfiguration: kind: ClassVar[str] = "aws_api_gateway_endpoint_configuration" kind_display: ClassVar[str] = "AWS API Gateway Endpoint Configuration" - kind_description: ClassVar[str] = "API Gateway Endpoint Configuration is a configuration that defines the settings for an API Gateway endpoint, including the protocol, SSL certificate, and custom domain name." + kind_description: ClassVar[str] = ( + "API Gateway Endpoint Configuration is a configuration that defines the" + " settings for an API Gateway endpoint, including the protocol, SSL" + " certificate, and custom domain name." + ) mapping: ClassVar[Dict[str, Bender]] = { "types": S("types", default=[]), "vpc_endpoint_ids": S("vpcEndpointIds", default=[]), @@ -411,7 +448,10 @@ class AwsApiGatewayEndpointConfiguration: class AwsApiGatewayRestApi(ApiGatewayTaggable, AwsResource): kind: ClassVar[str] = "aws_api_gateway_rest_api" kind_display: ClassVar[str] = "AWS API Gateway REST API" - kind_description: ClassVar[str] = "API Gateway is a fully managed service that makes it easy for developers to create, publish, and manage APIs at any scale." + kind_description: ClassVar[str] = ( + "API Gateway is a fully managed service that makes it easy for developers to" + " create, publish, and manage APIs at any scale." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "get-rest-apis", "items", override_iam_permission="apigateway:GET" ) @@ -544,7 +584,11 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsApiGatewayMutualTlsAuthentication: kind: ClassVar[str] = "aws_api_gateway_mutual_tls_authentication" kind_display: ClassVar[str] = "AWS API Gateway Mutual TLS Authentication" - kind_description: ClassVar[str] = "API Gateway Mutual TLS Authentication enables mutual TLS authentication for secure communication between clients and API Gateway, providing an additional layer of security to protect the API endpoints." + kind_description: ClassVar[str] = ( + "API Gateway Mutual TLS Authentication enables mutual TLS authentication for" + " secure communication between clients and API Gateway, providing an" + " additional layer of security to protect the API endpoints." + ) mapping: ClassVar[Dict[str, Bender]] = { "truststore_uri": S("truststoreUri"), "truststore_version": S("truststoreVersion"), @@ -559,7 +603,11 @@ class AwsApiGatewayMutualTlsAuthentication: class AwsApiGatewayDomainName(ApiGatewayTaggable, AwsResource): kind: ClassVar[str] = "aws_api_gateway_domain_name" kind_display: ClassVar[str] = "AWS API Gateway Domain Name" - kind_description: ClassVar[str] = "API Gateway Domain Name is a custom domain name that you can associate with your API in Amazon API Gateway, allowing you to have a more branded and user-friendly endpoint for your API." + kind_description: ClassVar[str] = ( + "API Gateway Domain Name is a custom domain name that you can associate with" + " your API in Amazon API Gateway, allowing you to have a more branded and" + " user-friendly endpoint for your API." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "get-domain-names", "items", override_iam_permission="apigateway:GET" ) diff --git a/plugins/aws/resoto_plugin_aws/resource/athena.py b/plugins/aws/resoto_plugin_aws/resource/athena.py index d48789feed..8aff2e50b7 100644 --- a/plugins/aws/resoto_plugin_aws/resource/athena.py +++ b/plugins/aws/resoto_plugin_aws/resource/athena.py @@ -20,7 +20,10 @@ class AwsAthenaEncryptionConfiguration: kind: ClassVar[str] = "aws_athena_encryption_configuration" kind_display: ClassVar[str] = "AWS Athena Encryption Configuration" - kind_description: ClassVar[str] = "Athena Encryption Configuration is a feature in AWS Athena that allows users to configure encryption settings for their query results." + kind_description: ClassVar[str] = ( + "Athena Encryption Configuration is a feature in AWS Athena that allows users" + " to configure encryption settings for their query results." + ) mapping: ClassVar[Dict[str, Bender]] = {"encryption_option": S("EncryptionOption"), "kms_key": S("KmsKey")} encryption_option: Optional[str] = None kms_key: Optional[str] = None @@ -30,7 +33,10 @@ class AwsAthenaEncryptionConfiguration: class AwsAthenaResultConfiguration: kind: ClassVar[str] = "aws_athena_result_configuration" kind_display: ClassVar[str] = "AWS Athena Result Configuration" - kind_description: ClassVar[str] = "AWS Athena Result Configuration allows users to specify where query results should be stored in Amazon S3 and how they should be encrypted." + kind_description: ClassVar[str] = ( + "AWS Athena Result Configuration allows users to specify where query results" + " should be stored in Amazon S3 and how they should be encrypted." + ) mapping: ClassVar[Dict[str, Bender]] = { "output_location": S("OutputLocation"), "encryption_configuration": S("EncryptionConfiguration") >> Bend(AwsAthenaEncryptionConfiguration.mapping), @@ -45,7 +51,11 @@ class AwsAthenaResultConfiguration: class AwsAthenaEngineVersion: kind: ClassVar[str] = "aws_athena_engine_version" kind_display: ClassVar[str] = "AWS Athena Engine Version" - kind_description: ClassVar[str] = "AWS Athena Engine Version is a service provided by Amazon Web Services for querying and analyzing data stored in Amazon S3 using standard SQL statements." + kind_description: ClassVar[str] = ( + "AWS Athena Engine Version is a service provided by Amazon Web Services for" + " querying and analyzing data stored in Amazon S3 using standard SQL" + " statements." + ) mapping: ClassVar[Dict[str, Bender]] = { "selected_engine_version": S("SelectedEngineVersion"), "effective_engine_version": S("EffectiveEngineVersion"), @@ -58,7 +68,10 @@ class AwsAthenaEngineVersion: class AwsAthenaWorkGroupConfiguration: kind: ClassVar[str] = "aws_athena_work_group_configuration" kind_display: ClassVar[str] = "AWS Athena Work Group Configuration" - kind_description: ClassVar[str] = "Athena work group configuration in Amazon Web Services, which allows users to configure settings for managing and executing queries in Athena." + kind_description: ClassVar[str] = ( + "Athena work group configuration in Amazon Web Services, which allows users" + " to configure settings for managing and executing queries in Athena." + ) mapping: ClassVar[Dict[str, Bender]] = { "result_configuration": S("ResultConfiguration") >> Bend(AwsAthenaResultConfiguration.mapping), "enforce_work_group_configuration": S("EnforceWorkGroupConfiguration"), @@ -79,7 +92,10 @@ class AwsAthenaWorkGroupConfiguration: class AwsAthenaWorkGroup(AwsResource): kind: ClassVar[str] = "aws_athena_work_group" kind_display: ClassVar[str] = "AWS Athena Work Group" - kind_description: ClassVar[str] = "Athena Work Group is a logical container for AWS Glue Data Catalog metadata and query statistics." + kind_description: ClassVar[str] = ( + "Athena Work Group is a logical container for AWS Glue Data Catalog metadata" + " and query statistics." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-work-groups", "WorkGroups") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), @@ -196,7 +212,11 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsAthenaDataCatalog(AwsResource): kind: ClassVar[str] = "aws_athena_data_catalog" kind_display: ClassVar[str] = "AWS Athena Data Catalog" - kind_description: ClassVar[str] = "Athena Data Catalog is a managed metadata repository in AWS that allows you to store and organize metadata about your data sources, such as databases, tables, and partitions." + kind_description: ClassVar[str] = ( + "Athena Data Catalog is a managed metadata repository in AWS that allows you" + " to store and organize metadata about your data sources, such as databases," + " tables, and partitions." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-data-catalogs", "DataCatalogsSummary") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), diff --git a/plugins/aws/resoto_plugin_aws/resource/autoscaling.py b/plugins/aws/resoto_plugin_aws/resource/autoscaling.py index fbc0c0f4a7..a1839f15f6 100644 --- a/plugins/aws/resoto_plugin_aws/resource/autoscaling.py +++ b/plugins/aws/resoto_plugin_aws/resource/autoscaling.py @@ -18,7 +18,12 @@ class AwsAutoScalingLaunchTemplateSpecification: kind: ClassVar[str] = "aws_autoscaling_launch_template_specification" kind_display: ClassVar[str] = "AWS Auto Scaling Launch Template Specification" - kind_description: ClassVar[str] = "An Auto Scaling Launch Template Specification is a configuration template for launching instances in an Auto Scaling group in Amazon Web Services. It allows users to define the instance specifications, such as the AMI, instance type, security groups, and more." + kind_description: ClassVar[str] = ( + "An Auto Scaling Launch Template Specification is a configuration template" + " for launching instances in an Auto Scaling group in Amazon Web Services. It" + " allows users to define the instance specifications, such as the AMI," + " instance type, security groups, and more." + ) mapping: ClassVar[Dict[str, Bender]] = { "launch_template_id": S("LaunchTemplateId"), "launch_template_name": S("LaunchTemplateName"), @@ -33,7 +38,12 @@ class AwsAutoScalingLaunchTemplateSpecification: class AwsAutoScalingMinMax: kind: ClassVar[str] = "aws_autoscaling_min_max" kind_display: ClassVar[str] = "AWS Auto Scaling Min Max" - kind_description: ClassVar[str] = "AWS Auto Scaling Min Max is a feature of Amazon Web Services that allows users to set minimum and maximum limits for the number of instances in an auto scaling group. This helps to ensure that the group scales within desired bounds based on resource needs." + kind_description: ClassVar[str] = ( + "AWS Auto Scaling Min Max is a feature of Amazon Web Services that allows" + " users to set minimum and maximum limits for the number of instances in an" + " auto scaling group. This helps to ensure that the group scales within" + " desired bounds based on resource needs." + ) mapping: ClassVar[Dict[str, Bender]] = {"min": S("Min"), "max": S("Max")} min: Optional[int] = field(default=None) max: Optional[int] = field(default=None) @@ -43,7 +53,12 @@ class AwsAutoScalingMinMax: class AwsAutoScalingInstanceRequirements: kind: ClassVar[str] = "aws_autoscaling_instance_requirements" kind_display: ClassVar[str] = "AWS Auto Scaling Instance Requirements" - kind_description: ClassVar[str] = "Auto Scaling Instance Requirements refer to the specific requirements that need to be fulfilled by instances in an Auto Scaling group, such as specifying the minimum and maximum number of instances, instance types, and availability zones." + kind_description: ClassVar[str] = ( + "Auto Scaling Instance Requirements refer to the specific requirements that" + " need to be fulfilled by instances in an Auto Scaling group, such as" + " specifying the minimum and maximum number of instances, instance types, and" + " availability zones." + ) mapping: ClassVar[Dict[str, Bender]] = { "v_cpu_count": S("VCpuCount") >> Bend(AwsAutoScalingMinMax.mapping), "memory_mi_b": S("MemoryMiB") >> Bend(AwsAutoScalingMinMax.mapping), @@ -94,7 +109,10 @@ class AwsAutoScalingInstanceRequirements: class AwsAutoScalingLaunchTemplateOverrides: kind: ClassVar[str] = "aws_autoscaling_launch_template_overrides" kind_display: ClassVar[str] = "AWS Autoscaling Launch Template Overrides" - kind_description: ClassVar[str] = "Launch Template Overrides are used in AWS Autoscaling to customize the configuration of instances launched by an autoscaling group." + kind_description: ClassVar[str] = ( + "Launch Template Overrides are used in AWS Autoscaling to customize the" + " configuration of instances launched by an autoscaling group." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "weighted_capacity": S("WeightedCapacity"), @@ -112,7 +130,11 @@ class AwsAutoScalingLaunchTemplateOverrides: class AwsAutoScalingLaunchTemplate: kind: ClassVar[str] = "aws_autoscaling_launch_template" kind_display: ClassVar[str] = "AWS Autoscaling Launch Template" - kind_description: ClassVar[str] = "An Autoscaling Launch Template is a reusable configuration that defines the launch parameters and instance settings for instances created by Autoscaling groups in AWS." + kind_description: ClassVar[str] = ( + "An Autoscaling Launch Template is a reusable configuration that defines the" + " launch parameters and instance settings for instances created by Autoscaling" + " groups in AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "launch_template_specification": S("LaunchTemplateSpecification") >> Bend(AwsAutoScalingLaunchTemplateSpecification.mapping), @@ -126,7 +148,11 @@ class AwsAutoScalingLaunchTemplate: class AwsAutoScalingInstancesDistribution: kind: ClassVar[str] = "aws_autoscaling_instances_distribution" kind_display: ClassVar[str] = "AWS Autoscaling Instances Distribution" - kind_description: ClassVar[str] = "Autoscaling Instances Distribution in AWS allows for automatic scaling of EC2 instances based on predefined conditions, ensuring optimized resource allocation and workload management." + kind_description: ClassVar[str] = ( + "Autoscaling Instances Distribution in AWS allows for automatic scaling of" + " EC2 instances based on predefined conditions, ensuring optimized resource" + " allocation and workload management." + ) mapping: ClassVar[Dict[str, Bender]] = { "on_demand_allocation_strategy": S("OnDemandAllocationStrategy"), "on_demand_base_capacity": S("OnDemandBaseCapacity"), @@ -147,7 +173,11 @@ class AwsAutoScalingInstancesDistribution: class AwsAutoScalingMixedInstancesPolicy: kind: ClassVar[str] = "aws_autoscaling_mixed_instances_policy" kind_display: ClassVar[str] = "AWS Autoscaling Mixed Instances Policy" - kind_description: ClassVar[str] = "AWS Autoscaling Mixed Instances Policy allows users to define a policy for autoscaling groups that specifies a mixture of instance types and purchase options." + kind_description: ClassVar[str] = ( + "AWS Autoscaling Mixed Instances Policy allows users to define a policy for" + " autoscaling groups that specifies a mixture of instance types and purchase" + " options." + ) mapping: ClassVar[Dict[str, Bender]] = { "launch_template": S("LaunchTemplate") >> Bend(AwsAutoScalingLaunchTemplate.mapping), "instances_distribution": S("InstancesDistribution") >> Bend(AwsAutoScalingInstancesDistribution.mapping), @@ -160,7 +190,12 @@ class AwsAutoScalingMixedInstancesPolicy: class AwsAutoScalingInstance: kind: ClassVar[str] = "aws_autoscaling_instance" kind_display: ClassVar[str] = "AWS Auto Scaling Instance" - kind_description: ClassVar[str] = "Auto Scaling Instances are automatically provisioned and terminated instances managed by the AWS Auto Scaling service, which helps maintain application availability and optimize resource usage based on user-defined scaling policies." + kind_description: ClassVar[str] = ( + "Auto Scaling Instances are automatically provisioned and terminated" + " instances managed by the AWS Auto Scaling service, which helps maintain" + " application availability and optimize resource usage based on user-defined" + " scaling policies." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_id": S("InstanceId"), "instance_type": S("InstanceType"), @@ -187,7 +222,13 @@ class AwsAutoScalingInstance: class AwsAutoScalingSuspendedProcess: kind: ClassVar[str] = "aws_autoscaling_suspended_process" kind_display: ClassVar[str] = "AWS Autoscaling Suspended Process" - kind_description: ClassVar[str] = "Autoscaling Suspended Process is a feature in Amazon EC2 Auto Scaling that allows you to suspend and resume specific scaling processes for your Auto Scaling group. It allows you to temporarily stop scaling activities for a specific process, such as launching new instances or terminating instances, while keeping your existing resources running." + kind_description: ClassVar[str] = ( + "Autoscaling Suspended Process is a feature in Amazon EC2 Auto Scaling that" + " allows you to suspend and resume specific scaling processes for your Auto" + " Scaling group. It allows you to temporarily stop scaling activities for a" + " specific process, such as launching new instances or terminating instances," + " while keeping your existing resources running." + ) mapping: ClassVar[Dict[str, Bender]] = { "process_name": S("ProcessName"), "suspension_reason": S("SuspensionReason"), @@ -200,7 +241,11 @@ class AwsAutoScalingSuspendedProcess: class AwsAutoScalingEnabledMetric: kind: ClassVar[str] = "aws_autoscaling_enabled_metric" kind_display: ClassVar[str] = "AWS Auto Scaling Enabled Metric" - kind_description: ClassVar[str] = "Auto Scaling Enabled Metric is a feature in AWS Auto Scaling that scales resources based on a specified metric, such as CPU utilization or request count." + kind_description: ClassVar[str] = ( + "Auto Scaling Enabled Metric is a feature in AWS Auto Scaling that scales" + " resources based on a specified metric, such as CPU utilization or request" + " count." + ) mapping: ClassVar[Dict[str, Bender]] = {"metric": S("Metric"), "granularity": S("Granularity")} metric: Optional[str] = field(default=None) granularity: Optional[str] = field(default=None) @@ -210,7 +255,10 @@ class AwsAutoScalingEnabledMetric: class AwsAutoScalingWarmPoolConfiguration: kind: ClassVar[str] = "aws_autoscaling_warm_pool_configuration" kind_display: ClassVar[str] = "AWS Auto Scaling Warm Pool Configuration" - kind_description: ClassVar[str] = "AWS Auto Scaling Warm Pool Configuration is a feature that allows you to provision and maintain a pool of pre-warmed instances for faster scaling." + kind_description: ClassVar[str] = ( + "AWS Auto Scaling Warm Pool Configuration is a feature that allows you to" + " provision and maintain a pool of pre-warmed instances for faster scaling." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_group_prepared_capacity": S("MaxGroupPreparedCapacity"), "min_size": S("MinSize"), @@ -229,7 +277,11 @@ class AwsAutoScalingWarmPoolConfiguration: class AwsAutoScalingGroup(AwsResource, BaseAutoScalingGroup): kind: ClassVar[str] = "aws_autoscaling_group" kind_display: ClassVar[str] = "AWS Autoscaling Group" - kind_description: ClassVar[str] = "An AWS Autoscaling Group is a collection of Amazon EC2 instances that are treated as a logical grouping for the purpose of automatic scaling and management." + kind_description: ClassVar[str] = ( + "An AWS Autoscaling Group is a collection of Amazon EC2 instances that are" + " treated as a logical grouping for the purpose of automatic scaling and" + " management." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-auto-scaling-groups", "AutoScalingGroups") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_ec2_instance"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/base.py b/plugins/aws/resoto_plugin_aws/resource/base.py index aeeb5a2b97..deab607cd7 100644 --- a/plugins/aws/resoto_plugin_aws/resource/base.py +++ b/plugins/aws/resoto_plugin_aws/resource/base.py @@ -100,7 +100,10 @@ class AwsResource(BaseResource, ABC): # The name of the kind of all resources. Needs to be globally unique. kind: ClassVar[str] = "aws_resource" kind_display: ClassVar[str] = "AWS Resource" - kind_description: ClassVar[str] = "AWS Resource is a generic term used to refer to any type of resource available in Amazon Web Services cloud." + kind_description: ClassVar[str] = ( + "AWS Resource is a generic term used to refer to any type of resource" + " available in Amazon Web Services cloud." + ) # The mapping to transform the incoming API json into the internal representation. mapping: ClassVar[Dict[str, Bender]] = {} # Which API to call and what to expect in the result. @@ -242,7 +245,11 @@ def __str__(self) -> str: class AwsAccount(BaseAccount, AwsResource): kind: ClassVar[str] = "aws_account" kind_display: ClassVar[str] = "AWS Account" - kind_description: ClassVar[str] = "An AWS Account is a container for AWS resources, such as EC2 instances, S3 buckets, and RDS databases. It allows users to access and manage their resources on the Amazon Web Services platform." + kind_description: ClassVar[str] = ( + "An AWS Account is a container for AWS resources, such as EC2 instances, S3" + " buckets, and RDS databases. It allows users to access and manage their" + " resources on the Amazon Web Services platform." + ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_region"]}} account_alias: Optional[str] = "" @@ -279,7 +286,11 @@ class AwsAccount(BaseAccount, AwsResource): class AwsRegion(BaseRegion, AwsResource): kind: ClassVar[str] = "aws_region" kind_display: ClassVar[str] = "AWS Region" - kind_description: ClassVar[str] = "An AWS Region is a physical location where AWS has multiple data centers, allowing users to choose the geographic area in which their resources are located." + kind_description: ClassVar[str] = ( + "An AWS Region is a physical location where AWS has multiple data centers," + " allowing users to choose the geographic area in which their resources are" + " located." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -327,7 +338,10 @@ class AwsRegion(BaseRegion, AwsResource): class AwsEc2VolumeType(AwsResource, BaseVolumeType): kind: ClassVar[str] = "aws_ec2_volume_type" kind_display: ClassVar[str] = "AWS EC2 Volume Type" - kind_description: ClassVar[str] = "EC2 Volume Types are different storage options for Amazon Elastic Block Store (EBS) volumes, such as General Purpose (SSD) and Magnetic." + kind_description: ClassVar[str] = ( + "EC2 Volume Types are different storage options for Amazon Elastic Block" + " Store (EBS) volumes, such as General Purpose (SSD) and Magnetic." + ) class GraphBuilder: diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudformation.py b/plugins/aws/resoto_plugin_aws/resource/cloudformation.py index ebea03a11e..931f835822 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudformation.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudformation.py @@ -19,7 +19,13 @@ class AwsCloudFormationRollbackTrigger: kind: ClassVar[str] = "aws_cloudformation_rollback_trigger" kind_display: ClassVar[str] = "AWS CloudFormation Rollback Trigger" - kind_description: ClassVar[str] = "AWS CloudFormation Rollback Trigger is a feature that allows you to specify criteria to determine when CloudFormation should roll back a stack operation. When the specified criteria are met, CloudFormation automatically rolls back any changes made during the stack operation to the previously deployed state." + kind_description: ClassVar[str] = ( + "AWS CloudFormation Rollback Trigger is a feature that allows you to specify" + " criteria to determine when CloudFormation should roll back a stack" + " operation. When the specified criteria are met, CloudFormation automatically" + " rolls back any changes made during the stack operation to the previously" + " deployed state." + ) mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "type": S("Type")} arn: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -29,7 +35,10 @@ class AwsCloudFormationRollbackTrigger: class AwsCloudFormationRollbackConfiguration: kind: ClassVar[str] = "aws_cloudformation_rollback_configuration" kind_display: ClassVar[str] = "AWS CloudFormation Rollback Configuration" - kind_description: ClassVar[str] = "AWS CloudFormation Rollback Configuration allows users to specify the conditions under which an AWS CloudFormation stack rollback is triggered." + kind_description: ClassVar[str] = ( + "AWS CloudFormation Rollback Configuration allows users to specify the" + " conditions under which an AWS CloudFormation stack rollback is triggered." + ) mapping: ClassVar[Dict[str, Bender]] = { "rollback_triggers": S("RollbackTriggers", default=[]) >> ForallBend(AwsCloudFormationRollbackTrigger.mapping), "monitoring_time_in_minutes": S("MonitoringTimeInMinutes"), @@ -42,7 +51,11 @@ class AwsCloudFormationRollbackConfiguration: class AwsCloudFormationOutput: kind: ClassVar[str] = "aws_cloudformation_output" kind_display: ClassVar[str] = "AWS CloudFormation Output" - kind_description: ClassVar[str] = "AWS CloudFormation Output represents the values that are provided by a CloudFormation stack and can be accessed by other resources in the same stack." + kind_description: ClassVar[str] = ( + "AWS CloudFormation Output represents the values that are provided by a" + " CloudFormation stack and can be accessed by other resources in the same" + " stack." + ) mapping: ClassVar[Dict[str, Bender]] = { "output_key": S("OutputKey"), "output_value": S("OutputValue"), @@ -59,7 +72,12 @@ class AwsCloudFormationOutput: class AwsCloudFormationStackDriftInformation: kind: ClassVar[str] = "aws_cloudformation_stack_drift_information" kind_display: ClassVar[str] = "AWS CloudFormation Stack Drift Information" - kind_description: ClassVar[str] = "CloudFormation Stack Drift Information provides details about any drift that has occurred in an AWS CloudFormation stack. Stack drift occurs when the actual state of the stack resources diverges from their expected state as defined in the stack template." + kind_description: ClassVar[str] = ( + "CloudFormation Stack Drift Information provides details about any drift that" + " has occurred in an AWS CloudFormation stack. Stack drift occurs when the" + " actual state of the stack resources diverges from their expected state as" + " defined in the stack template." + ) mapping: ClassVar[Dict[str, Bender]] = { "stack_drift_status": S("StackDriftStatus"), "last_check_timestamp": S("LastCheckTimestamp"), @@ -72,7 +90,10 @@ class AwsCloudFormationStackDriftInformation: class AwsCloudFormationStack(AwsResource, BaseStack): kind: ClassVar[str] = "aws_cloudformation_stack" kind_display: ClassVar[str] = "AWS CloudFormation Stack" - kind_description: ClassVar[str] = "CloudFormation Stacks are a collection of AWS resources that are created, updated, or deleted together as a single unit." + kind_description: ClassVar[str] = ( + "CloudFormation Stacks are a collection of AWS resources that are created," + " updated, or deleted together as a single unit." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-stacks", "Stacks") mapping: ClassVar[Dict[str, Bender]] = { "id": S("StackId"), @@ -192,7 +213,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsCloudFormationAutoDeployment: kind: ClassVar[str] = "aws_cloudformation_auto_deployment" kind_display: ClassVar[str] = "AWS CloudFormation Auto Deployment" - kind_description: ClassVar[str] = "AWS CloudFormation Auto Deployment is a service that automates the deployment of CloudFormation templates in the AWS Cloud, making it easier to provision and manage a stack of AWS resources." + kind_description: ClassVar[str] = ( + "AWS CloudFormation Auto Deployment is a service that automates the" + " deployment of CloudFormation templates in the AWS Cloud, making it easier to" + " provision and manage a stack of AWS resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("Enabled"), "retain_stacks_on_account_removal": S("RetainStacksOnAccountRemoval"), @@ -205,7 +230,11 @@ class AwsCloudFormationAutoDeployment: class AwsCloudFormationStackSet(AwsResource): kind: ClassVar[str] = "aws_cloudformation_stack_set" kind_display: ClassVar[str] = "AWS CloudFormation Stack Set" - kind_description: ClassVar[str] = "CloudFormation Stack Set is a feature in AWS CloudFormation that enables you to create, update, or delete stacks across multiple accounts and regions with a single CloudFormation template." + kind_description: ClassVar[str] = ( + "CloudFormation Stack Set is a feature in AWS CloudFormation that enables you" + " to create, update, or delete stacks across multiple accounts and regions" + " with a single CloudFormation template." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-stack-sets", "Summaries", dict(Status="ACTIVE")) mapping: ClassVar[Dict[str, Bender]] = { "id": S("StackSetId"), @@ -319,7 +348,10 @@ class AwsCloudFormationStackInstanceSummary(AwsResource): # note: resource is collected via AwsCloudFormationStackSet kind: ClassVar[str] = "aws_cloud_formation_stack_instance_summary" kind_display: ClassVar[str] = "AWS CloudFormation Stack Instance Summary" - kind_description: ClassVar[str] = "CloudFormation Stack Instance Summary provides a summary of instances in a CloudFormation stack, including instance ID, status, and stack name." + kind_description: ClassVar[str] = ( + "CloudFormation Stack Instance Summary provides a summary of instances in a" + " CloudFormation stack, including instance ID, status, and stack name." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": F(_stack_instance_id), "stack_instance_stack_set_id": S("StackSetId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py index 4e6942e0ca..2c0f59cff5 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py @@ -86,7 +86,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsCloudFrontOriginCustomHeader: kind: ClassVar[str] = "aws_cloudfront_origin_custom_header" kind_display: ClassVar[str] = "AWS CloudFront Origin Custom Header" - kind_description: ClassVar[str] = "AWS CloudFront Origin Custom Header is a feature of Amazon CloudFront that allows users to add custom headers to requests sent to the origin server." + kind_description: ClassVar[str] = ( + "AWS CloudFront Origin Custom Header is a feature of Amazon CloudFront that" + " allows users to add custom headers to requests sent to the origin server." + ) mapping: ClassVar[Dict[str, Bender]] = {"header_name": S("HeaderName"), "header_value": S("HeaderValue")} header_name: Optional[str] = field(default=None) header_value: Optional[str] = field(default=None) @@ -96,7 +99,12 @@ class AwsCloudFrontOriginCustomHeader: class AwsCloudFrontCustomOriginConfig: kind: ClassVar[str] = "aws_cloudfront_custom_origin_config" kind_display: ClassVar[str] = "AWS CloudFront Custom Origin Configuration" - kind_description: ClassVar[str] = "CloudFront Custom Origin Configuration allows users to customize the settings of the origin (source) server for their CloudFront distribution. This includes specifying the origin server's domain name, port, and protocol settings." + kind_description: ClassVar[str] = ( + "CloudFront Custom Origin Configuration allows users to customize the" + " settings of the origin (source) server for their CloudFront distribution." + " This includes specifying the origin server's domain name, port, and protocol" + " settings." + ) mapping: ClassVar[Dict[str, Bender]] = { "http_port": S("HTTPPort"), "https_port": S("HTTPSPort"), @@ -117,7 +125,11 @@ class AwsCloudFrontCustomOriginConfig: class AwsCloudFrontOriginShield: kind: ClassVar[str] = "aws_cloudfront_origin_shield" kind_display: ClassVar[str] = "AWS CloudFront Origin Shield" - kind_description: ClassVar[str] = "CloudFront Origin Shield is a feature offered by AWS CloudFront that adds an additional layer of protection and reliability to the origin servers by caching the content at an intermediate layer." + kind_description: ClassVar[str] = ( + "CloudFront Origin Shield is a feature offered by AWS CloudFront that adds an" + " additional layer of protection and reliability to the origin servers by" + " caching the content at an intermediate layer." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("Enabled"), "origin_shield_region": S("OriginShieldRegion")} enabled: Optional[bool] = field(default=None) origin_shield_region: Optional[str] = field(default=None) @@ -127,7 +139,10 @@ class AwsCloudFrontOriginShield: class AwsCloudFrontOrigin: kind: ClassVar[str] = "aws_cloudfront_origin" kind_display: ClassVar[str] = "AWS CloudFront Origin" - kind_description: ClassVar[str] = "CloudFront Origin represents the source of content for distribution through the Amazon CloudFront content delivery network." + kind_description: ClassVar[str] = ( + "CloudFront Origin represents the source of content for distribution through" + " the Amazon CloudFront content delivery network." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "domain_name": S("DomainName"), @@ -156,7 +171,11 @@ class AwsCloudFrontOrigin: class AwsCloudFrontOriginGroupFailoverCriteria: kind: ClassVar[str] = "aws_cloudfront_origin_group_failover_criteria" kind_display: ClassVar[str] = "AWS CloudFront Origin Group Failover Criteria" - kind_description: ClassVar[str] = "Failover criteria for AWS CloudFront origin groups, which determine when a secondary origin server is used as a fallback in case the primary origin server fails." + kind_description: ClassVar[str] = ( + "Failover criteria for AWS CloudFront origin groups, which determine when a" + " secondary origin server is used as a fallback in case the primary origin" + " server fails." + ) mapping: ClassVar[Dict[str, Bender]] = {"status_codes": S("StatusCodes", "Items", default=[])} status_codes: List[str] = field(factory=list) @@ -165,7 +184,11 @@ class AwsCloudFrontOriginGroupFailoverCriteria: class AwsCloudFrontOriginGroupMembers: kind: ClassVar[str] = "aws_cloudfront_origin_group_members" kind_display: ClassVar[str] = "AWS CloudFront Origin Group Members" - kind_description: ClassVar[str] = "CloudFront Origin Group Members are the origin servers that are part of an Origin Group in AWS CloudFront. They serve as the source for content delivered by CloudFront distributions." + kind_description: ClassVar[str] = ( + "CloudFront Origin Group Members are the origin servers that are part of an" + " Origin Group in AWS CloudFront. They serve as the source for content" + " delivered by CloudFront distributions." + ) mapping: ClassVar[Dict[str, Bender]] = { "origin_id": S("OriginId"), } @@ -176,7 +199,11 @@ class AwsCloudFrontOriginGroupMembers: class AwsCloudFrontOriginGroup: kind: ClassVar[str] = "aws_cloudfront_origin_group" kind_display: ClassVar[str] = "AWS CloudFront Origin Group" - kind_description: ClassVar[str] = "An AWS CloudFront Origin Group is a collection of origins that you can associate with a distribution, allowing you to specify multiple origin resources for content delivery." + kind_description: ClassVar[str] = ( + "An AWS CloudFront Origin Group is a collection of origins that you can" + " associate with a distribution, allowing you to specify multiple origin" + " resources for content delivery." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "failover_criteria": S("FailoverCriteria") >> Bend(AwsCloudFrontOriginGroupFailoverCriteria.mapping), @@ -191,7 +218,11 @@ class AwsCloudFrontOriginGroup: class AwsCloudFrontLambdaFunctionAssociation: kind: ClassVar[str] = "aws_cloudfront_lambda_function_association" kind_display: ClassVar[str] = "AWS CloudFront Lambda Function Association" - kind_description: ClassVar[str] = "CloudFront Lambda Function Association allows users to associate Lambda functions with CloudFront distributions, allowing them to modify the request or response and customize the content delivery process." + kind_description: ClassVar[str] = ( + "CloudFront Lambda Function Association allows users to associate Lambda" + " functions with CloudFront distributions, allowing them to modify the request" + " or response and customize the content delivery process." + ) mapping: ClassVar[Dict[str, Bender]] = { "lambda_function_arn": S("LambdaFunctionARN"), "event_type": S("EventType"), @@ -206,7 +237,11 @@ class AwsCloudFrontLambdaFunctionAssociation: class AwsCloudFrontFunctionAssociation: kind: ClassVar[str] = "aws_cloudfront_function_association" kind_display: ClassVar[str] = "AWS CloudFront Function Association" - kind_description: ClassVar[str] = "CloudFront Function Association is a feature in Amazon CloudFront that allows associating a CloudFront function with a CloudFront distribution to modify the behavior of the distribution." + kind_description: ClassVar[str] = ( + "CloudFront Function Association is a feature in Amazon CloudFront that" + " allows associating a CloudFront function with a CloudFront distribution to" + " modify the behavior of the distribution." + ) mapping: ClassVar[Dict[str, Bender]] = {"function_arn": S("FunctionARN"), "event_type": S("EventType")} function_arn: Optional[str] = field(default=None) event_type: Optional[str] = field(default=None) @@ -216,7 +251,11 @@ class AwsCloudFrontFunctionAssociation: class AwsCloudFrontCookiePreference: kind: ClassVar[str] = "aws_cloudfront_cookie_preference" kind_display: ClassVar[str] = "AWS CloudFront Cookie Preference" - kind_description: ClassVar[str] = "AWS CloudFront Cookie Preference is a feature of Amazon CloudFront that enables users to specify how CloudFront handles cookies in the client request and response headers." + kind_description: ClassVar[str] = ( + "AWS CloudFront Cookie Preference is a feature of Amazon CloudFront that" + " enables users to specify how CloudFront handles cookies in the client" + " request and response headers." + ) mapping: ClassVar[Dict[str, Bender]] = { "forward": S("Forward"), "whitelisted_names": S("WhitelistedNames", "Items", default=[]), @@ -229,7 +268,10 @@ class AwsCloudFrontCookiePreference: class AwsCloudFrontForwardedValues: kind: ClassVar[str] = "aws_cloudfront_forwarded_values" kind_display: ClassVar[str] = "AWS CloudFront Forwarded Values" - kind_description: ClassVar[str] = "CloudFront Forwarded Values allows you to customize how CloudFront handles and forwards specific HTTP headers in viewer requests to the origin." + kind_description: ClassVar[str] = ( + "CloudFront Forwarded Values allows you to customize how CloudFront handles" + " and forwards specific HTTP headers in viewer requests to the origin." + ) mapping: ClassVar[Dict[str, Bender]] = { "query_string": S("QueryString"), "cookies": S("Cookies") >> Bend(AwsCloudFrontCookiePreference.mapping), @@ -246,7 +288,11 @@ class AwsCloudFrontForwardedValues: class AwsCloudFrontDefaultCacheBehavior: kind: ClassVar[str] = "aws_cloudfront_default_cache_behavior" kind_display: ClassVar[str] = "AWS CloudFront Default Cache Behavior" - kind_description: ClassVar[str] = "CloudFront Default Cache Behavior is a configuration setting in AWS CloudFront that defines the default behavior for caching content on the edge locations." + kind_description: ClassVar[str] = ( + "CloudFront Default Cache Behavior is a configuration setting in AWS" + " CloudFront that defines the default behavior for caching content on the edge" + " locations." + ) mapping: ClassVar[Dict[str, Bender]] = { "target_origin_id": S("TargetOriginId"), "trusted_signers": S("TrustedSigners", "Items", default=[]), @@ -293,7 +339,10 @@ class AwsCloudFrontDefaultCacheBehavior: class AwsCloudFrontCacheBehavior: kind: ClassVar[str] = "aws_cloudfront_cache_behavior" kind_display: ClassVar[str] = "AWS CloudFront Cache Behavior" - kind_description: ClassVar[str] = "CloudFront Cache Behavior is a configuration setting that determines how CloudFront behaves when serving content from cache." + kind_description: ClassVar[str] = ( + "CloudFront Cache Behavior is a configuration setting that determines how" + " CloudFront behaves when serving content from cache." + ) mapping: ClassVar[Dict[str, Bender]] = { "path_pattern": S("PathPattern"), "target_origin_id": S("TargetOriginId"), @@ -342,7 +391,11 @@ class AwsCloudFrontCacheBehavior: class AwsCloudFrontCustomErrorResponse: kind: ClassVar[str] = "aws_cloudfront_custom_error_response" kind_display: ClassVar[str] = "AWS CloudFront Custom Error Response" - kind_description: ClassVar[str] = "AWS CloudFront Custom Error Response allows users to customize the error responses for their CloudFront distributions, providing a more personalized and user-friendly experience for website visitors when errors occur." + kind_description: ClassVar[str] = ( + "AWS CloudFront Custom Error Response allows users to customize the error" + " responses for their CloudFront distributions, providing a more personalized" + " and user-friendly experience for website visitors when errors occur." + ) mapping: ClassVar[Dict[str, Bender]] = { "error_code": S("ErrorCode"), "response_page_path": S("ResponsePagePath"), @@ -359,7 +412,11 @@ class AwsCloudFrontCustomErrorResponse: class AwsCloudFrontViewerCertificate: kind: ClassVar[str] = "aws_cloudfront_viewer_certificate" kind_display: ClassVar[str] = "AWS CloudFront Viewer Certificate" - kind_description: ClassVar[str] = "AWS CloudFront Viewer Certificate is a SSL/TLS certificate that is used to encrypt the communication between the viewer (client) and the CloudFront distribution." + kind_description: ClassVar[str] = ( + "AWS CloudFront Viewer Certificate is a SSL/TLS certificate that is used to" + " encrypt the communication between the viewer (client) and the CloudFront" + " distribution." + ) mapping: ClassVar[Dict[str, Bender]] = { "cloudfront_default_certificate": S("CloudFrontDefaultCertificate"), "iam_certificate_id": S("IAMCertificateId"), @@ -382,7 +439,11 @@ class AwsCloudFrontViewerCertificate: class AwsCloudFrontRestrictions: kind: ClassVar[str] = "aws_cloudfront_restrictions" kind_display: ClassVar[str] = "AWS CloudFront Restrictions" - kind_description: ClassVar[str] = "CloudFront Restrictions in AWS allow users to control access to their content by specifying the locations or IP addresses that are allowed to access it." + kind_description: ClassVar[str] = ( + "CloudFront Restrictions in AWS allow users to control access to their" + " content by specifying the locations or IP addresses that are allowed to" + " access it." + ) mapping: ClassVar[Dict[str, Bender]] = {"geo_restriction": S("GeoRestriction", "Items", default=[])} geo_restriction: List[str] = field(factory=list) @@ -391,7 +452,11 @@ class AwsCloudFrontRestrictions: class AwsCloudFrontAliasICPRecordal: kind: ClassVar[str] = "aws_cloudfront_alias_icp_recordal" kind_display: ClassVar[str] = "AWS CloudFront Alias ICP Recordal" - kind_description: ClassVar[str] = "AWS CloudFront Alias ICP Recordal is a feature that allows you to associate an Internet Content Provider (ICP) record with a CloudFront distribution in China." + kind_description: ClassVar[str] = ( + "AWS CloudFront Alias ICP Recordal is a feature that allows you to associate" + " an Internet Content Provider (ICP) record with a CloudFront distribution in" + " China." + ) mapping: ClassVar[Dict[str, Bender]] = {"cname": S("CNAME"), "icp_recordal_status": S("ICPRecordalStatus")} cname: Optional[str] = field(default=None) icp_recordal_status: Optional[str] = field(default=None) @@ -401,7 +466,11 @@ class AwsCloudFrontAliasICPRecordal: class AwsCloudFrontDistribution(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_distribution" kind_display: ClassVar[str] = "AWS CloudFront Distribution" - kind_description: ClassVar[str] = "CloudFront Distributions are a content delivery network (CDN) offered by Amazon Web Services, which enables users to deliver their content to end-users with low latency and high transfer speeds." + kind_description: ClassVar[str] = ( + "CloudFront Distributions are a content delivery network (CDN) offered by" + " Amazon Web Services, which enables users to deliver their content to end-" + " users with low latency and high transfer speeds." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-distributions", "DistributionList.Items") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_lambda_function"]}, @@ -547,7 +616,12 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontFunctionConfig: kind: ClassVar[str] = "aws_cloudfront_function_config" kind_display: ClassVar[str] = "AWS CloudFront Function Config" - kind_description: ClassVar[str] = "CloudFront Function Config is a configuration for a CloudFront function in the AWS CloudFront service, which allows users to run custom code at the edge locations of the CloudFront CDN to modify the content delivery behavior." + kind_description: ClassVar[str] = ( + "CloudFront Function Config is a configuration for a CloudFront function in" + " the AWS CloudFront service, which allows users to run custom code at the" + " edge locations of the CloudFront CDN to modify the content delivery" + " behavior." + ) mapping: ClassVar[Dict[str, Bender]] = {"comment": S("Comment"), "runtime": S("Runtime")} comment: Optional[str] = field(default=None) runtime: Optional[str] = field(default=None) @@ -557,7 +631,11 @@ class AwsCloudFrontFunctionConfig: class AwsCloudFrontFunction(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_function" kind_display: ClassVar[str] = "AWS CloudFront Function" - kind_description: ClassVar[str] = "CloudFront Functions are serverless functions that allow developers to customize and extend the functionality of CloudFront content delivery network, enabling advanced edge processing of HTTP requests and responses." + kind_description: ClassVar[str] = ( + "CloudFront Functions are serverless functions that allow developers to" + " customize and extend the functionality of CloudFront content delivery" + " network, enabling advanced edge processing of HTTP requests and responses." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-functions", "FunctionList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), @@ -602,7 +680,10 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontPublicKey(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_public_key" kind_display: ClassVar[str] = "AWS CloudFront Public Key" - kind_description: ClassVar[str] = "AWS CloudFront Public Key is a public key used for encrypting content stored on AWS CloudFront." + kind_description: ClassVar[str] = ( + "AWS CloudFront Public Key is a public key used for encrypting content stored" + " on AWS CloudFront." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-public-keys", "PublicKeyList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), @@ -629,7 +710,11 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontKinesisStreamConfig: kind: ClassVar[str] = "aws_cloudfront_kinesis_stream_config" kind_display: ClassVar[str] = "AWS CloudFront Kinesis Stream Config" - kind_description: ClassVar[str] = "The AWS CloudFront Kinesis Stream Config allows users to configure the integration between CloudFront and Kinesis Streams, enabling real-time data streaming and processing." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Kinesis Stream Config allows users to configure the" + " integration between CloudFront and Kinesis Streams, enabling real-time data" + " streaming and processing." + ) mapping: ClassVar[Dict[str, Bender]] = {"role_arn": S("RoleARN"), "stream_arn": S("StreamARN")} role_arn: Optional[str] = field(default=None) stream_arn: Optional[str] = field(default=None) @@ -639,7 +724,11 @@ class AwsCloudFrontKinesisStreamConfig: class AwsCloudFrontEndPoint: kind: ClassVar[str] = "aws_cloudfront_end_point" kind_display: ClassVar[str] = "AWS CloudFront End Point" - kind_description: ClassVar[str] = "CloudFront End Points provide a globally distributed content delivery network (CDN) that delivers data, videos, applications, and APIs to viewers with low latency and high transfer speeds." + kind_description: ClassVar[str] = ( + "CloudFront End Points provide a globally distributed content delivery" + " network (CDN) that delivers data, videos, applications, and APIs to viewers" + " with low latency and high transfer speeds." + ) mapping: ClassVar[Dict[str, Bender]] = { "stream_type": S("StreamType"), "kinesis_stream_config": S("KinesisStreamConfig") >> Bend(AwsCloudFrontKinesisStreamConfig.mapping), @@ -652,7 +741,11 @@ class AwsCloudFrontEndPoint: class AwsCloudFrontRealtimeLogConfig(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_realtime_log_config" kind_display: ClassVar[str] = "AWS CloudFront Real-time Log Configuration" - kind_description: ClassVar[str] = "CloudFront Real-time Log Configuration allows you to configure real-time logging for your CloudFront distribution, enabling you to receive real-time logs for your web traffic." + kind_description: ClassVar[str] = ( + "CloudFront Real-time Log Configuration allows you to configure real-time" + " logging for your CloudFront distribution, enabling you to receive real-time" + " logs for your web traffic." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-realtime-log-configs", "RealtimeLogConfigs.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), @@ -681,7 +774,11 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontResponseHeadersPolicyCorsConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_cors_config" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy CORS Config" - kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy CORS (Cross-Origin Resource Sharing) Config allows users to specify how CloudFront should handle CORS headers in the response for a specific CloudFront distribution." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Response Headers Policy CORS (Cross-Origin Resource" + " Sharing) Config allows users to specify how CloudFront should handle CORS" + " headers in the response for a specific CloudFront distribution." + ) mapping: ClassVar[Dict[str, Bender]] = { "access_control_allow_origins": S("AccessControlAllowOrigins", "Items", default=[]), "access_control_allow_headers": S("AccessControlAllowHeaders", "Items", default=[]), @@ -704,7 +801,11 @@ class AwsCloudFrontResponseHeadersPolicyCorsConfig: class AwsCloudFrontResponseHeadersPolicyXSSProtection: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_xss_protection" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy XSS Protection" - kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy XSS Protection allows users to configure Cross-Site Scripting (XSS) protection in the response headers of their CloudFront distributions." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Response Headers Policy XSS Protection allows users to" + " configure Cross-Site Scripting (XSS) protection in the response headers of" + " their CloudFront distributions." + ) mapping: ClassVar[Dict[str, Bender]] = { "override": S("Override"), "protection": S("Protection"), @@ -721,7 +822,11 @@ class AwsCloudFrontResponseHeadersPolicyXSSProtection: class AwsCloudFrontResponseHeadersPolicyFrameOptions: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_frame_options" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Frame Options" - kind_description: ClassVar[str] = "CloudFront Response Headers Policy Frame Options is a feature of Amazon CloudFront that allows you to control the frame options in HTTP responses sent by CloudFront distributions." + kind_description: ClassVar[str] = ( + "CloudFront Response Headers Policy Frame Options is a feature of Amazon" + " CloudFront that allows you to control the frame options in HTTP responses" + " sent by CloudFront distributions." + ) mapping: ClassVar[Dict[str, Bender]] = {"override": S("Override"), "frame_option": S("FrameOption")} override: Optional[bool] = field(default=None) frame_option: Optional[str] = field(default=None) @@ -731,7 +836,10 @@ class AwsCloudFrontResponseHeadersPolicyFrameOptions: class AwsCloudFrontResponseHeadersPolicyReferrerPolicy: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_referrer_policy" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Referrer Policy" - kind_description: ClassVar[str] = "The Referrer Policy in CloudFront determines how the browser should send the 'Referer' HTTP header when making requests to CloudFront distributions." + kind_description: ClassVar[str] = ( + "The Referrer Policy in CloudFront determines how the browser should send the" + " 'Referer' HTTP header when making requests to CloudFront distributions." + ) mapping: ClassVar[Dict[str, Bender]] = {"override": S("Override"), "referrer_policy": S("ReferrerPolicy")} override: Optional[bool] = field(default=None) referrer_policy: Optional[str] = field(default=None) @@ -741,7 +849,11 @@ class AwsCloudFrontResponseHeadersPolicyReferrerPolicy: class AwsCloudFrontResponseHeadersPolicyContentSecurityPolicy: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_content_security_policy" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy - Content-Security-Policy" - kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy - Content-Security-Policy allows users to define the content security policy (CSP) for their CloudFront distributions, specifying which content sources are allowed and disallowed." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Response Headers Policy - Content-Security-Policy allows" + " users to define the content security policy (CSP) for their CloudFront" + " distributions, specifying which content sources are allowed and disallowed." + ) mapping: ClassVar[Dict[str, Bender]] = { "override": S("Override"), "content_security_policy": S("ContentSecurityPolicy"), @@ -754,7 +866,12 @@ class AwsCloudFrontResponseHeadersPolicyContentSecurityPolicy: class AwsCloudFrontResponseHeadersPolicyStrictTransportSecurity: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_strict_transport_security" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy - Strict Transport Security" - kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy - Strict Transport Security is a security feature that enables websites to declare that their content should only be accessed over HTTPS, and defines the duration for which the browser should automatically choose HTTPS for subsequent requests." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Response Headers Policy - Strict Transport Security is a" + " security feature that enables websites to declare that their content should" + " only be accessed over HTTPS, and defines the duration for which the browser" + " should automatically choose HTTPS for subsequent requests." + ) mapping: ClassVar[Dict[str, Bender]] = { "override": S("Override"), "include_subdomains": S("IncludeSubdomains"), @@ -771,7 +888,11 @@ class AwsCloudFrontResponseHeadersPolicyStrictTransportSecurity: class AwsCloudFrontResponseHeadersPolicySecurityHeadersConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_security_headers_config" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Security Headers Config" - kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy Security Headers Config allows configuring security headers for responses served by AWS CloudFront, providing additional security measures for web applications." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Response Headers Policy Security Headers Config allows" + " configuring security headers for responses served by AWS CloudFront," + " providing additional security measures for web applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "xss_protection": S("XSSProtection") >> Bend(AwsCloudFrontResponseHeadersPolicyXSSProtection.mapping), "frame_options": S("FrameOptions") >> Bend(AwsCloudFrontResponseHeadersPolicyFrameOptions.mapping), @@ -794,7 +915,11 @@ class AwsCloudFrontResponseHeadersPolicySecurityHeadersConfig: class AwsCloudFrontResponseHeadersPolicyServerTimingHeadersConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_server_timing_headers_config" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Server Timing Headers Config" - kind_description: ClassVar[str] = "CloudFront Response Headers Policy Server Timing Headers Config is a configuration option in AWS CloudFront that allows you to control the inclusion of Server Timing headers in the response sent to clients." + kind_description: ClassVar[str] = ( + "CloudFront Response Headers Policy Server Timing Headers Config is a" + " configuration option in AWS CloudFront that allows you to control the" + " inclusion of Server Timing headers in the response sent to clients." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("Enabled"), "sampling_rate": S("SamplingRate")} enabled: Optional[bool] = field(default=None) sampling_rate: Optional[float] = field(default=None) @@ -804,7 +929,11 @@ class AwsCloudFrontResponseHeadersPolicyServerTimingHeadersConfig: class AwsCloudFrontResponseHeadersPolicyCustomHeader: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_custom_header" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Custom Header" - kind_description: ClassVar[str] = "The custom header response policy allows you to add custom headers to the responses served by CloudFront distributions. This can be used to control caching behavior or add additional information to the responses." + kind_description: ClassVar[str] = ( + "The custom header response policy allows you to add custom headers to the" + " responses served by CloudFront distributions. This can be used to control" + " caching behavior or add additional information to the responses." + ) mapping: ClassVar[Dict[str, Bender]] = {"header": S("Header"), "value": S("Value"), "override": S("Override")} header: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -815,7 +944,11 @@ class AwsCloudFrontResponseHeadersPolicyCustomHeader: class AwsCloudFrontResponseHeadersPolicyConfig: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_config" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Configuration" - kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy Configuration allows users to define and control the HTTP response headers that are included in the responses served by CloudFront." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Response Headers Policy Configuration allows users to" + " define and control the HTTP response headers that are included in the" + " responses served by CloudFront." + ) mapping: ClassVar[Dict[str, Bender]] = { "comment": S("Comment"), "name": S("Name"), @@ -841,7 +974,11 @@ class AwsCloudFrontResponseHeadersPolicyConfig: class AwsCloudFrontResponseHeadersPolicy(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_response_headers_policy" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy" - kind_description: ClassVar[str] = "The AWS CloudFront Response Headers Policy is a configuration that allows you to manage and control the response headers that are included in the HTTP responses delivered by CloudFront." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Response Headers Policy is a configuration that allows" + " you to manage and control the response headers that are included in the HTTP" + " responses delivered by CloudFront." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-response-headers-policies", "ResponseHeadersPolicyList.Items" ) @@ -871,7 +1008,12 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontS3Origin: kind: ClassVar[str] = "aws_cloudfront_s3_origin" kind_display: ClassVar[str] = "AWS CloudFront S3 Origin" - kind_description: ClassVar[str] = "CloudFront S3 Origin is an Amazon Web Services (AWS) service that allows you to use an Amazon S3 bucket as the origin for your CloudFront distribution. It enables faster content delivery by caching and distributing web content from the S3 bucket to edge locations around the world." + kind_description: ClassVar[str] = ( + "CloudFront S3 Origin is an Amazon Web Services (AWS) service that allows you" + " to use an Amazon S3 bucket as the origin for your CloudFront distribution." + " It enables faster content delivery by caching and distributing web content" + " from the S3 bucket to edge locations around the world." + ) mapping: ClassVar[Dict[str, Bender]] = { "domain_name": S("DomainName"), "origin_access_identity": S("OriginAccessIdentity"), @@ -884,7 +1026,11 @@ class AwsCloudFrontS3Origin: class AwsCloudFrontStreamingDistribution(CloudFrontTaggable, CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_streaming_distribution" kind_display: ClassVar[str] = "AWS CloudFront Streaming Distribution" - kind_description: ClassVar[str] = "CloudFront Streaming Distribution is a content delivery network (CDN) service provided by AWS that allows for fast and secure streaming of audio and video content over the internet." + kind_description: ClassVar[str] = ( + "CloudFront Streaming Distribution is a content delivery network (CDN)" + " service provided by AWS that allows for fast and secure streaming of audio" + " and video content over the internet." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-streaming-distributions", "StreamingDistributionList.Items" ) @@ -916,7 +1062,11 @@ class AwsCloudFrontStreamingDistribution(CloudFrontTaggable, CloudFrontResource, class AwsCloudFrontOriginAccessControl(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_origin_access_control" kind_display: ClassVar[str] = "AWS CloudFront Origin Access Control" - kind_description: ClassVar[str] = "CloudFront Origin Access Control is a feature in AWS CloudFront that allows you to restrict access to your origin server by using an Amazon S3 bucket or an HTTP server as the source for your website or application files." + kind_description: ClassVar[str] = ( + "CloudFront Origin Access Control is a feature in AWS CloudFront that allows" + " you to restrict access to your origin server by using an Amazon S3 bucket or" + " an HTTP server as the source for your website or application files." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-origin-access-controls", "OriginAccessControlList.Items" ) @@ -948,7 +1098,11 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontCachePolicyHeadersConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_headers_config" kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Headers Config" - kind_description: ClassVar[str] = "The AWS CloudFront Cache Policy Headers Config allows users to configure the cache headers for content in the CloudFront CDN, determining how long content is cached and how it is delivered to end users." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Cache Policy Headers Config allows users to configure the" + " cache headers for content in the CloudFront CDN, determining how long" + " content is cached and how it is delivered to end users." + ) mapping: ClassVar[Dict[str, Bender]] = { "header_behavior": S("HeaderBehavior"), "headers": S("Headers", "Items", default=[]), @@ -961,7 +1115,11 @@ class AwsCloudFrontCachePolicyHeadersConfig: class AwsCloudFrontCachePolicyCookiesConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_cookies_config" kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Cookies Config" - kind_description: ClassVar[str] = "The AWS CloudFront Cache Policy Cookies Config is a configuration for customizing caching behavior based on cookies when using AWS CloudFront, a global content delivery network (CDN) service." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Cache Policy Cookies Config is a configuration for" + " customizing caching behavior based on cookies when using AWS CloudFront, a" + " global content delivery network (CDN) service." + ) mapping: ClassVar[Dict[str, Bender]] = { "cookie_behavior": S("CookieBehavior"), "cookies": S("Cookies", default=[]), @@ -974,7 +1132,11 @@ class AwsCloudFrontCachePolicyCookiesConfig: class AwsCloudFrontCachePolicyQueryStringsConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_query_strings_config" kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Query Strings Config" - kind_description: ClassVar[str] = "The AWS CloudFront Cache Policy Query Strings Config provides configuration settings for how CloudFront handles caching of resources based on query string parameters." + kind_description: ClassVar[str] = ( + "The AWS CloudFront Cache Policy Query Strings Config provides configuration" + " settings for how CloudFront handles caching of resources based on query" + " string parameters." + ) mapping: ClassVar[Dict[str, Bender]] = { "query_string_behavior": S("QueryStringBehavior"), "query_strings": S("QueryStrings", "Items", default=[]), @@ -987,7 +1149,11 @@ class AwsCloudFrontCachePolicyQueryStringsConfig: class AwsCloudFrontParametersInCacheKeyAndForwardedToOrigin: kind: ClassVar[str] = "aws_cloudfront_parameters_in_cache_key_and_forwarded_to_origin" kind_display: ClassVar[str] = "AWS CloudFront Parameters in Cache Key and Forwarded to Origin" - kind_description: ClassVar[str] = "AWS CloudFront allows users to customize the cache key and specify which parameters are forwarded to the origin server for improved caching and origin response." + kind_description: ClassVar[str] = ( + "AWS CloudFront allows users to customize the cache key and specify which" + " parameters are forwarded to the origin server for improved caching and" + " origin response." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_accept_encoding_gzip": S("EnableAcceptEncodingGzip"), "enable_accept_encoding_brotli": S("EnableAcceptEncodingBrotli"), @@ -1006,7 +1172,11 @@ class AwsCloudFrontParametersInCacheKeyAndForwardedToOrigin: class AwsCloudFrontCachePolicyConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_config" kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Configuration" - kind_description: ClassVar[str] = "CloudFront Cache Policies allow you to define caching behavior for your content. This resource represents the configuration settings for a cache policy in Amazon CloudFront." + kind_description: ClassVar[str] = ( + "CloudFront Cache Policies allow you to define caching behavior for your" + " content. This resource represents the configuration settings for a cache" + " policy in Amazon CloudFront." + ) mapping: ClassVar[Dict[str, Bender]] = { "comment": S("Comment"), "name": S("Name"), @@ -1030,7 +1200,11 @@ class AwsCloudFrontCachePolicyConfig: class AwsCloudFrontCachePolicy(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_cache_policy" kind_display: ClassVar[str] = "AWS CloudFront Cache Policy" - kind_description: ClassVar[str] = "CloudFront Cache Policies in AWS specify the caching behavior for CloudFront distributions, allowing users to control how content is cached and delivered to end users." + kind_description: ClassVar[str] = ( + "CloudFront Cache Policies in AWS specify the caching behavior for CloudFront" + " distributions, allowing users to control how content is cached and delivered" + " to end users." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-cache-policies", "CachePolicyList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("CachePolicy", "Id"), @@ -1055,7 +1229,11 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontQueryArgProfile: kind: ClassVar[str] = "aws_cloudfront_query_arg_profile" kind_display: ClassVar[str] = "AWS CloudFront Query Argument Profile" - kind_description: ClassVar[str] = "CloudFront Query Argument Profile in AWS is a configuration that allows you to control how CloudFront caches and forwards query strings in the URLs of your content." + kind_description: ClassVar[str] = ( + "CloudFront Query Argument Profile in AWS is a configuration that allows you" + " to control how CloudFront caches and forwards query strings in the URLs of" + " your content." + ) mapping: ClassVar[Dict[str, Bender]] = {"query_arg": S("QueryArg"), "profile_id": S("ProfileId")} query_arg: Optional[str] = field(default=None) profile_id: Optional[str] = field(default=None) @@ -1065,7 +1243,11 @@ class AwsCloudFrontQueryArgProfile: class AwsCloudFrontQueryArgProfileConfig: kind: ClassVar[str] = "aws_cloudfront_query_arg_profile_config" kind_display: ClassVar[str] = "AWS CloudFront Query Arg Profile Config" - kind_description: ClassVar[str] = "CloudFront Query Arg Profile Config is a feature in AWS CloudFront that allows you to configure personalized caching behavior for different query strings on your website." + kind_description: ClassVar[str] = ( + "CloudFront Query Arg Profile Config is a feature in AWS CloudFront that" + " allows you to configure personalized caching behavior for different query" + " strings on your website." + ) mapping: ClassVar[Dict[str, Bender]] = { "forward_when_query_arg_profile_is_unknown": S("ForwardWhenQueryArgProfileIsUnknown"), "query_arg_profiles": S("QueryArgProfiles", "Items", default=[]) @@ -1079,7 +1261,11 @@ class AwsCloudFrontQueryArgProfileConfig: class AwsCloudFrontContentTypeProfile: kind: ClassVar[str] = "aws_cloudfront_content_type_profile" kind_display: ClassVar[str] = "AWS CloudFront Content Type Profile" - kind_description: ClassVar[str] = "AWS CloudFront Content Type Profiles help you manage the behavior of CloudFront by configuring how it handles content types for different file extensions or MIME types." + kind_description: ClassVar[str] = ( + "AWS CloudFront Content Type Profiles help you manage the behavior of" + " CloudFront by configuring how it handles content types for different file" + " extensions or MIME types." + ) mapping: ClassVar[Dict[str, Bender]] = { "format": S("Format"), "profile_id": S("ProfileId"), @@ -1094,7 +1280,11 @@ class AwsCloudFrontContentTypeProfile: class AwsCloudFrontContentTypeProfileConfig: kind: ClassVar[str] = "aws_cloudfront_content_type_profile_config" kind_display: ClassVar[str] = "AWS CloudFront Content Type Profile Config" - kind_description: ClassVar[str] = "AWS CloudFront Content Type Profile Config is a configuration object that allows you to specify how CloudFront should interpret and act upon the Content-Type header of viewer requests for your content." + kind_description: ClassVar[str] = ( + "AWS CloudFront Content Type Profile Config is a configuration object that" + " allows you to specify how CloudFront should interpret and act upon the" + " Content-Type header of viewer requests for your content." + ) mapping: ClassVar[Dict[str, Bender]] = { "forward_when_content_type_is_unknown": S("ForwardWhenContentTypeIsUnknown"), "content_type_profiles": S("ContentTypeProfiles", "Items", default=[]) @@ -1108,7 +1298,11 @@ class AwsCloudFrontContentTypeProfileConfig: class AwsCloudFrontFieldLevelEncryptionConfig(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_field_level_encryption_config" kind_display: ClassVar[str] = "AWS CloudFront Field-Level Encryption Configuration" - kind_description: ClassVar[str] = "AWS CloudFront Field-Level Encryption Configuration is a feature that allows you to encrypt selected fields in HTTP requests and responses before they are sent and after they are received by CloudFront." + kind_description: ClassVar[str] = ( + "AWS CloudFront Field-Level Encryption Configuration is a feature that allows" + " you to encrypt selected fields in HTTP requests and responses before they" + " are sent and after they are received by CloudFront." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-field-level-encryption-configs", "FieldLevelEncryptionList.Items" ) @@ -1159,7 +1353,11 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontEncryptionEntity: kind: ClassVar[str] = "aws_cloudfront_encryption_entity" kind_display: ClassVar[str] = "AWS CloudFront Encryption Entity" - kind_description: ClassVar[str] = "CloudFront Encryption Entities represent the security configuration for content delivery, ensuring secure and encrypted data transfer between the user and the CloudFront edge servers." + kind_description: ClassVar[str] = ( + "CloudFront Encryption Entities represent the security configuration for" + " content delivery, ensuring secure and encrypted data transfer between the" + " user and the CloudFront edge servers." + ) mapping: ClassVar[Dict[str, Bender]] = { "public_key_id": S("PublicKeyId"), "provider_id": S("ProviderId"), @@ -1174,7 +1372,11 @@ class AwsCloudFrontEncryptionEntity: class AwsCloudFrontFieldLevelEncryptionProfile(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_field_level_encryption_profile" kind_display: ClassVar[str] = "AWS CloudFront Field Level Encryption Profile" - kind_description: ClassVar[str] = "Field Level Encryption Profiles in AWS CloudFront allow users to encrypt specific fields in a web form, providing an extra layer of security to sensitive data." + kind_description: ClassVar[str] = ( + "Field Level Encryption Profiles in AWS CloudFront allow users to encrypt" + " specific fields in a web form, providing an extra layer of security to" + " sensitive data." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-field-level-encryption-profiles", "FieldLevelEncryptionProfileList.Items" ) diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py b/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py index e1d67dd431..1b9b6083fa 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py @@ -23,7 +23,11 @@ class AwsCloudTrailAdvancedFieldSelector: kind: ClassVar[str] = "aws_cloud_trail_advanced_field_selector" kind_display: ClassVar[str] = "AWS CloudTrail Advanced Field Selector" - kind_description: ClassVar[str] = "AWS CloudTrail Advanced Field Selector provides fine-grained control over the fields returned in CloudTrail log events, allowing users to filter and retrieve specific data of interest." + kind_description: ClassVar[str] = ( + "AWS CloudTrail Advanced Field Selector provides fine-grained control over" + " the fields returned in CloudTrail log events, allowing users to filter and" + " retrieve specific data of interest." + ) mapping: ClassVar[Dict[str, Bender]] = { "field": S("Field"), "equals": S("Equals"), @@ -45,7 +49,11 @@ class AwsCloudTrailAdvancedFieldSelector: class AwsCloudTrailEventSelector: kind: ClassVar[str] = "aws_cloud_trail_event_selector" kind_display: ClassVar[str] = "AWS CloudTrail Event Selector" - kind_description: ClassVar[str] = "CloudTrail Event Selector is a feature in AWS CloudTrail that allows you to choose which events to record and store in your Amazon S3 bucket for auditing and compliance purposes." + kind_description: ClassVar[str] = ( + "CloudTrail Event Selector is a feature in AWS CloudTrail that allows you to" + " choose which events to record and store in your Amazon S3 bucket for" + " auditing and compliance purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "field_selectors": S("FieldSelectors", default=[]) @@ -60,7 +68,13 @@ class AwsCloudTrailEventSelector: class AwsCloudTrailStatus: kind: ClassVar[str] = "aws_cloud_trail_status" kind_display: ClassVar[str] = "AWS CloudTrail Status" - kind_description: ClassVar[str] = "CloudTrail is a service that enables governance, compliance, operational auditing, and risk auditing of your AWS account. CloudTrail provides event history of your AWS account activity, including actions taken through the AWS Management Console, AWS SDKs, command line tools, and other AWS services." + kind_description: ClassVar[str] = ( + "CloudTrail is a service that enables governance, compliance, operational" + " auditing, and risk auditing of your AWS account. CloudTrail provides event" + " history of your AWS account activity, including actions taken through the" + " AWS Management Console, AWS SDKs, command line tools, and other AWS" + " services." + ) mapping: ClassVar[Dict[str, Bender]] = { "is_logging": S("IsLogging"), "latest_delivery_error": S("LatestDeliveryError"), @@ -103,7 +117,10 @@ class AwsCloudTrailStatus: class AwsCloudTrail(AwsResource): kind: ClassVar[str] = "aws_cloud_trail" kind_display: ClassVar[str] = "AWS CloudTrail" - kind_description: ClassVar[str] = "CloudTrail is a service that enables governance, compliance, operational auditing, and risk auditing of your AWS account." + kind_description: ClassVar[str] = ( + "CloudTrail is a service that enables governance, compliance, operational" + " auditing, and risk auditing of your AWS account." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-trails", "Trails") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py b/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py index 60c0018be3..3970aac7ce 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py @@ -85,6 +85,12 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsCloudwatchDimension: kind: ClassVar[str] = "aws_cloudwatch_dimension" + kind_display: ClassVar[str] = "AWS CloudWatch Dimension" + kind_description: ClassVar[str] = ( + "CloudWatch Dimensions are used to categorize and filter metrics in Amazon" + " CloudWatch. They can be used to add more context to the metrics and make it" + " easier to monitor and analyze cloud resources." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "value": S("Value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -93,6 +99,11 @@ class AwsCloudwatchDimension: @define(eq=False, slots=False) class AwsCloudwatchMetric: kind: ClassVar[str] = "aws_cloudwatch_metric" + kind_display: ClassVar[str] = "AWS CloudWatch Metric" + kind_description: ClassVar[str] = ( + "AWS CloudWatch Metric is a service that provides monitoring for AWS" + " resources and the applications you run on AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "namespace": S("Namespace"), "metric_name": S("MetricName"), @@ -106,6 +117,12 @@ class AwsCloudwatchMetric: @define(eq=False, slots=False) class AwsCloudwatchMetricStat: kind: ClassVar[str] = "aws_cloudwatch_metric_stat" + kind_display: ClassVar[str] = "AWS CloudWatch Metric Stat" + kind_description: ClassVar[str] = ( + "CloudWatch Metric Stat is a service provided by AWS that allows users to" + " collect and track metrics, monitor log files, and set alarms for their AWS" + " resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "metric": S("Metric") >> Bend(AwsCloudwatchMetric.mapping), "period": S("Period"), @@ -121,6 +138,12 @@ class AwsCloudwatchMetricStat: @define(eq=False, slots=False) class AwsCloudwatchMetricDataQuery: kind: ClassVar[str] = "aws_cloudwatch_metric_data_query" + kind_display: ClassVar[str] = "AWS CloudWatch Metric Data Query" + kind_description: ClassVar[str] = ( + "CloudWatch Metric Data Query is a feature in Amazon CloudWatch that allows" + " you to retrieve and analyze metric data across multiple resources and time" + " periods." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "metric_stat": S("MetricStat") >> Bend(AwsCloudwatchMetricStat.mapping), @@ -142,6 +165,11 @@ class AwsCloudwatchMetricDataQuery: @define(eq=False, slots=False) class AwsCloudwatchAlarm(CloudwatchTaggable, AwsResource): kind: ClassVar[str] = "aws_cloudwatch_alarm" + kind_display: ClassVar[str] = "AWS CloudWatch Alarm" + kind_description: ClassVar[str] = ( + "CloudWatch Alarms allow you to monitor metrics and send notifications based" + " on the thresholds you set." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-alarms", "MetricAlarms") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_ec2_instance"], "delete": ["aws_ec2_instance"]}, @@ -233,6 +261,12 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: @define(eq=False, slots=False) class AwsCloudwatchLogGroup(LogsTaggable, AwsResource): kind: ClassVar[str] = "aws_cloudwatch_log_group" + kind_display: ClassVar[str] = "AWS CloudWatch Log Group" + kind_description: ClassVar[str] = ( + "CloudWatch Log Groups are containers for log streams in Amazon's CloudWatch" + " service, enabling centralized storage and analysis of log data from various" + " AWS resources." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec("logs", "describe-log-groups", "logGroups") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_kms_key"]}, @@ -270,6 +304,12 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: @define(eq=False, slots=False) class AwsCloudwatchMetricTransformation: kind: ClassVar[str] = "aws_cloudwatch_metric_transformation" + kind_display: ClassVar[str] = "AWS CloudWatch Metric Transformation" + kind_description: ClassVar[str] = ( + "CloudWatch Metric Transformation is a service provided by Amazon Web" + " Services that allows users to create custom metrics by manipulating existing" + " CloudWatch metrics." + ) mapping: ClassVar[Dict[str, Bender]] = { "metric_name": S("metricName"), "metric_namespace": S("metricNamespace"), @@ -289,6 +329,12 @@ class AwsCloudwatchMetricTransformation: @define(eq=False, slots=False) class AwsCloudwatchMetricFilter(AwsResource): kind: ClassVar[str] = "aws_cloudwatch_metric_filter" + kind_display: ClassVar[str] = "AWS CloudWatch Metric Filter" + kind_description: ClassVar[str] = ( + "CloudWatch Metric Filter is a feature in Amazon CloudWatch that allows you" + " to define a pattern to extract information from your log events and use it" + " to create CloudWatch metrics." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec("logs", "describe-metric-filters", "metricFilters") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_cloudwatch_log_group"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/cognito.py b/plugins/aws/resoto_plugin_aws/resource/cognito.py index 2aeff800db..a18455e9c7 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cognito.py +++ b/plugins/aws/resoto_plugin_aws/resource/cognito.py @@ -18,7 +18,11 @@ class AwsCognitoGroup(AwsResource): # collection of group resources happens in AwsCognitoUserPool.collect() kind: ClassVar[str] = "aws_cognito_group" kind_display: ClassVar[str] = "AWS Cognito Group" - kind_description: ClassVar[str] = "Cognito Groups are a way to manage and organize users in AWS Cognito, a fully managed service for user authentication, registration, and access control." + kind_description: ClassVar[str] = ( + "Cognito Groups are a way to manage and organize users in AWS Cognito, a" + " fully managed service for user authentication, registration, and access" + " control." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_iam_role"]} } @@ -60,7 +64,10 @@ def service_name(cls) -> str: class AwsCognitoAttributeType: kind: ClassVar[str] = "aws_cognito_attribute_type" kind_display: ClassVar[str] = "AWS Cognito Attribute Type" - kind_description: ClassVar[str] = "Cognito Attribute Type is used in AWS Cognito to define the type of user attribute, such as string, number, or boolean." + kind_description: ClassVar[str] = ( + "Cognito Attribute Type is used in AWS Cognito to define the type of user" + " attribute, such as string, number, or boolean." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "value": S("Value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -70,7 +77,10 @@ class AwsCognitoAttributeType: class AwsCognitoMFAOptionType: kind: ClassVar[str] = "aws_cognito_mfa_option_type" kind_display: ClassVar[str] = "AWS Cognito MFA Option Type" - kind_description: ClassVar[str] = "MFA Option Type is a setting in AWS Cognito that allows users to enable or disable Multi-Factor Authentication (MFA) for their accounts." + kind_description: ClassVar[str] = ( + "MFA Option Type is a setting in AWS Cognito that allows users to enable or" + " disable Multi-Factor Authentication (MFA) for their accounts." + ) mapping: ClassVar[Dict[str, Bender]] = { "delivery_medium": S("DeliveryMedium"), "attribute_name": S("AttributeName"), @@ -84,7 +94,11 @@ class AwsCognitoUser(AwsResource, BaseUser): # collection of user resources happens in AwsCognitoUserPool.collect() kind: ClassVar[str] = "aws_cognito_user" kind_display: ClassVar[str] = "AWS Cognito User" - kind_description: ClassVar[str] = "AWS Cognito User represents a user account in the AWS Cognito service, which provides secure user authentication and authorization for web and mobile applications." + kind_description: ClassVar[str] = ( + "AWS Cognito User represents a user account in the AWS Cognito service, which" + " provides secure user authentication and authorization for web and mobile" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Username"), "name": S("Username"), @@ -109,7 +123,11 @@ def service_name(cls) -> str: class AwsCognitoCustomSMSLambdaVersionConfigType: kind: ClassVar[str] = "aws_cognito_custom_sms_lambda_version_config_type" kind_display: ClassVar[str] = "AWS Cognito Custom SMS Lambda Version Config Type" - kind_description: ClassVar[str] = "AWS Cognito Custom SMS Lambda Version Config Type defines the configuration for a custom SMS Lambda version in AWS Cognito, allowing users to customize the behavior of SMS messages sent during user authentication." + kind_description: ClassVar[str] = ( + "AWS Cognito Custom SMS Lambda Version Config Type defines the configuration" + " for a custom SMS Lambda version in AWS Cognito, allowing users to customize" + " the behavior of SMS messages sent during user authentication." + ) mapping: ClassVar[Dict[str, Bender]] = {"lambda_version": S("LambdaVersion"), "lambda_arn": S("LambdaArn")} lambda_version: Optional[str] = field(default=None) lambda_arn: Optional[str] = field(default=None) @@ -119,7 +137,11 @@ class AwsCognitoCustomSMSLambdaVersionConfigType: class AwsCognitoCustomEmailLambdaVersionConfigType: kind: ClassVar[str] = "aws_cognito_custom_email_lambda_version_config_type" kind_display: ClassVar[str] = "AWS Cognito Custom Email Lambda Version Config Type" - kind_description: ClassVar[str] = "This resource represents the configuration type for a custom email lambda version in AWS Cognito. It allows you to customize the email delivery process for user verification and notification emails in Cognito." + kind_description: ClassVar[str] = ( + "This resource represents the configuration type for a custom email lambda" + " version in AWS Cognito. It allows you to customize the email delivery" + " process for user verification and notification emails in Cognito." + ) mapping: ClassVar[Dict[str, Bender]] = {"lambda_version": S("LambdaVersion"), "lambda_arn": S("LambdaArn")} lambda_version: Optional[str] = field(default=None) lambda_arn: Optional[str] = field(default=None) @@ -129,7 +151,11 @@ class AwsCognitoCustomEmailLambdaVersionConfigType: class AwsCognitoLambdaConfigType: kind: ClassVar[str] = "aws_cognito_lambda_config_type" kind_display: ClassVar[str] = "AWS Cognito Lambda Config Type" - kind_description: ClassVar[str] = "The AWS Cognito Lambda Config Type refers to the configuration for Lambda functions used with AWS Cognito, which allows developers to customize user sign-in and sign-up experiences in their applications." + kind_description: ClassVar[str] = ( + "The AWS Cognito Lambda Config Type refers to the configuration for Lambda" + " functions used with AWS Cognito, which allows developers to customize user" + " sign-in and sign-up experiences in their applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "pre_sign_up": S("PreSignUp"), "custom_message": S("CustomMessage"), @@ -164,7 +190,11 @@ class AwsCognitoLambdaConfigType: class AwsCognitoUserPool(AwsResource): kind: ClassVar[str] = "aws_cognito_user_pool" kind_display: ClassVar[str] = "AWS Cognito User Pool" - kind_description: ClassVar[str] = "An AWS Cognito User Pool is a managed user directory that enables user registration, authentication, and access control for your web and mobile apps." + kind_description: ClassVar[str] = ( + "An AWS Cognito User Pool is a managed user directory that enables user" + " registration, authentication, and access control for your web and mobile" + " apps." + ) # this call requires the MaxResult parameter, 60 is the maximum valid input api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-user-pools", "UserPools", {"MaxResults": 60}) reference_kinds: ClassVar[ModelReference] = { diff --git a/plugins/aws/resoto_plugin_aws/resource/config.py b/plugins/aws/resoto_plugin_aws/resource/config.py index ee3353b319..d31563579e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/config.py +++ b/plugins/aws/resoto_plugin_aws/resource/config.py @@ -18,7 +18,11 @@ class AwsConfigRecorderStatus: kind: ClassVar[str] = "aws_config_recorder_status" kind_display: ClassVar[str] = "AWS Config Recorder Status" - kind_description: ClassVar[str] = "AWS Config Recorder Status is a service that records configuration changes made to AWS resources and evaluates the recorded configurations for rule compliance." + kind_description: ClassVar[str] = ( + "AWS Config Recorder Status is a service that records configuration changes" + " made to AWS resources and evaluates the recorded configurations for rule" + " compliance." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_start_time": S("lastStartTime"), "last_stop_time": S("lastStopTime"), @@ -41,7 +45,11 @@ class AwsConfigRecorderStatus: class AwsConfigRecordingGroup: kind: ClassVar[str] = "aws_config_recording_group" kind_display: ClassVar[str] = "AWS Config Recording Group" - kind_description: ClassVar[str] = "AWS Config Recording Group is a feature of AWS Config that allows users to specify the types of AWS resources to be recorded and the details to include in the recorded configurations." + kind_description: ClassVar[str] = ( + "AWS Config Recording Group is a feature of AWS Config that allows users to" + " specify the types of AWS resources to be recorded and the details to include" + " in the recorded configurations." + ) mapping: ClassVar[Dict[str, Bender]] = { "all_supported": S("allSupported"), "include_global_resource_types": S("includeGlobalResourceTypes"), @@ -56,7 +64,11 @@ class AwsConfigRecordingGroup: class AwsConfigRecorder(AwsResource): kind: ClassVar[str] = "aws_config_recorder" kind_display: ClassVar[str] = "AWS Config Recorder" - kind_description: ClassVar[str] = "AWS Config Recorder is a service provided by Amazon Web Services that continuously records the configuration changes made to resources in an AWS account." + kind_description: ClassVar[str] = ( + "AWS Config Recorder is a service provided by Amazon Web Services that" + " continuously records the configuration changes made to resources in an AWS" + " account." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-configuration-recorders", "ConfigurationRecorders" ) diff --git a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py index b47a659224..a7361fdc8b 100644 --- a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py +++ b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py @@ -49,7 +49,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsDynamoDbAttributeDefinition: kind: ClassVar[str] = "aws_dynamo_db_attribute_definition" kind_display: ClassVar[str] = "AWS DynamoDB Attribute Definition" - kind_description: ClassVar[str] = "An attribute definition in AWS DynamoDB describes the data type and name of an attribute for a table." + kind_description: ClassVar[str] = ( + "An attribute definition in AWS DynamoDB describes the data type and name of" + " an attribute for a table." + ) mapping: ClassVar[Dict[str, Bender]] = {"attribute_name": S("AttributeName"), "attribute_type": S("AttributeType")} attribute_name: Optional[str] = field(default=None) attribute_type: Optional[str] = field(default=None) @@ -59,7 +62,10 @@ class AwsDynamoDbAttributeDefinition: class AwsDynamoDbKeySchemaElement: kind: ClassVar[str] = "aws_dynamo_db_key_schema_element" kind_display: ClassVar[str] = "AWS DynamoDB Key Schema Element" - kind_description: ClassVar[str] = "DynamoDB Key Schema Element represents the key attributes used to uniquely identify an item in a DynamoDB table." + kind_description: ClassVar[str] = ( + "DynamoDB Key Schema Element represents the key attributes used to uniquely" + " identify an item in a DynamoDB table." + ) mapping: ClassVar[Dict[str, Bender]] = {"attribute_name": S("AttributeName"), "key_type": S("KeyType")} attribute_name: Optional[str] = field(default=None) key_type: Optional[str] = field(default=None) @@ -69,7 +75,11 @@ class AwsDynamoDbKeySchemaElement: class AwsDynamoDbProvisionedThroughputDescription: kind: ClassVar[str] = "aws_dynamo_db_provisioned_throughput_description" kind_display: ClassVar[str] = "AWS DynamoDB Provisioned Throughput Description" - kind_description: ClassVar[str] = "DynamoDB Provisioned Throughput is the measurement of the capacity provisioned to handle request traffic for a DynamoDB table. It determines the read and write capacity units available for the table." + kind_description: ClassVar[str] = ( + "DynamoDB Provisioned Throughput is the measurement of the capacity" + " provisioned to handle request traffic for a DynamoDB table. It determines" + " the read and write capacity units available for the table." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_increase_date_time": S("LastIncreaseDateTime"), "last_decrease_date_time": S("LastDecreaseDateTime"), @@ -88,7 +98,11 @@ class AwsDynamoDbProvisionedThroughputDescription: class AwsDynamoDbBillingModeSummary: kind: ClassVar[str] = "aws_dynamo_db_billing_mode_summary" kind_display: ClassVar[str] = "AWS DynamoDB Billing Mode Summary" - kind_description: ClassVar[str] = "DynamoDB Billing Mode Summary provides information about the billing mode configured for DynamoDB tables in AWS. DynamoDB is a NoSQL database service provided by Amazon." + kind_description: ClassVar[str] = ( + "DynamoDB Billing Mode Summary provides information about the billing mode" + " configured for DynamoDB tables in AWS. DynamoDB is a NoSQL database service" + " provided by Amazon." + ) mapping: ClassVar[Dict[str, Bender]] = { "billing_mode": S("BillingMode"), "last_update_to_pay_per_request_date_time": S("LastUpdateToPayPerRequestDateTime"), @@ -101,7 +115,10 @@ class AwsDynamoDbBillingModeSummary: class AwsDynamoDbProjection: kind: ClassVar[str] = "aws_dynamo_db_projection" kind_display: ClassVar[str] = "AWS DynamoDB Projection" - kind_description: ClassVar[str] = "DynamoDB Projections allow you to specify which attributes should be included in the index of a table for efficient querying." + kind_description: ClassVar[str] = ( + "DynamoDB Projections allow you to specify which attributes should be" + " included in the index of a table for efficient querying." + ) mapping: ClassVar[Dict[str, Bender]] = { "projection_type": S("ProjectionType"), "non_key_attributes": S("NonKeyAttributes", default=[]), @@ -114,7 +131,11 @@ class AwsDynamoDbProjection: class AwsDynamoDbLocalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_local_secondary_index_description" kind_display: ClassVar[str] = "AWS DynamoDB Local Secondary Index Description" - kind_description: ClassVar[str] = "DynamoDB Local Secondary Indexes provide additional querying flexibility on non-key attributes in DynamoDB tables, enhancing the performance and efficiency of data retrieval in Amazon's NoSQL database service." + kind_description: ClassVar[str] = ( + "DynamoDB Local Secondary Indexes provide additional querying flexibility on" + " non-key attributes in DynamoDB tables, enhancing the performance and" + " efficiency of data retrieval in Amazon's NoSQL database service." + ) mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), "key_schema": S("KeySchema", default=[]) >> ForallBend(AwsDynamoDbKeySchemaElement.mapping), @@ -135,7 +156,10 @@ class AwsDynamoDbLocalSecondaryIndexDescription: class AwsDynamoDbGlobalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_global_secondary_index_description" kind_display: ClassVar[str] = "AWS DynamoDB Global Secondary Index Description" - kind_description: ClassVar[str] = "A Global Secondary Index (GSI) in DynamoDB is an additional index that you can create on your table to support fast and efficient data access patterns." + kind_description: ClassVar[str] = ( + "A Global Secondary Index (GSI) in DynamoDB is an additional index that you" + " can create on your table to support fast and efficient data access patterns." + ) mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), "key_schema": S("KeySchema", default=[]) >> ForallBend(AwsDynamoDbKeySchemaElement.mapping), @@ -163,7 +187,10 @@ class AwsDynamoDbGlobalSecondaryIndexDescription: class AwsDynamoDbStreamSpecification: kind: ClassVar[str] = "aws_dynamo_db_stream_specification" kind_display: ClassVar[str] = "AWS DynamoDB Stream Specification" - kind_description: ClassVar[str] = "DynamoDB Streams provide a time-ordered sequence of item-level modifications made to data in a DynamoDB table." + kind_description: ClassVar[str] = ( + "DynamoDB Streams provide a time-ordered sequence of item-level modifications" + " made to data in a DynamoDB table." + ) mapping: ClassVar[Dict[str, Bender]] = { "stream_enabled": S("StreamEnabled"), "stream_view_type": S("StreamViewType"), @@ -176,7 +203,11 @@ class AwsDynamoDbStreamSpecification: class AwsDynamoDbReplicaGlobalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_replica_global_secondary_index_description" kind_display: ClassVar[str] = "AWS DynamoDB Replica Global Secondary Index Description" - kind_description: ClassVar[str] = "DynamoDB Replica Global Secondary Index is a replicated index in DynamoDB that allows you to perform fast and efficient queries on replicated data across multiple AWS Regions." + kind_description: ClassVar[str] = ( + "DynamoDB Replica Global Secondary Index is a replicated index in DynamoDB" + " that allows you to perform fast and efficient queries on replicated data" + " across multiple AWS Regions." + ) mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), "provisioned_throughput_override": S("ProvisionedThroughputOverride", "ReadCapacityUnits"), @@ -189,7 +220,12 @@ class AwsDynamoDbReplicaGlobalSecondaryIndexDescription: class AwsDynamoDbTableClassSummary: kind: ClassVar[str] = "aws_dynamo_db_table_class_summary" kind_display: ClassVar[str] = "AWS DynamoDB Table Class Summary" - kind_description: ClassVar[str] = "DynamoDB Table Class Summary provides information about the classes of tables in Amazon DynamoDB, a fully managed NoSQL database service provided by AWS. It enables users to store and retrieve any amount of data with high availability and durability." + kind_description: ClassVar[str] = ( + "DynamoDB Table Class Summary provides information about the classes of" + " tables in Amazon DynamoDB, a fully managed NoSQL database service provided" + " by AWS. It enables users to store and retrieve any amount of data with high" + " availability and durability." + ) mapping: ClassVar[Dict[str, Bender]] = { "table_class": S("TableClass"), "last_update_date_time": S("LastUpdateDateTime"), @@ -202,7 +238,10 @@ class AwsDynamoDbTableClassSummary: class AwsDynamoDbReplicaDescription: kind: ClassVar[str] = "aws_dynamo_db_replica_description" kind_display: ClassVar[str] = "AWS DynamoDB Replica Description" - kind_description: ClassVar[str] = "DynamoDB Replica Description provides detailed information about the replica configuration and status of an Amazon DynamoDB table in the AWS cloud." + kind_description: ClassVar[str] = ( + "DynamoDB Replica Description provides detailed information about the replica" + " configuration and status of an Amazon DynamoDB table in the AWS cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "region_name": S("RegionName"), "replica_status": S("ReplicaStatus"), @@ -230,7 +269,11 @@ class AwsDynamoDbReplicaDescription: class AwsDynamoDbRestoreSummary: kind: ClassVar[str] = "aws_dynamo_db_restore_summary" kind_display: ClassVar[str] = "AWS DynamoDB Restore Summary" - kind_description: ClassVar[str] = "DynamoDB Restore Summary provides an overview of the restore process for Amazon DynamoDB backups, including information on restore progress, completion time, and any errors encountered during the restore." + kind_description: ClassVar[str] = ( + "DynamoDB Restore Summary provides an overview of the restore process for" + " Amazon DynamoDB backups, including information on restore progress," + " completion time, and any errors encountered during the restore." + ) mapping: ClassVar[Dict[str, Bender]] = { "source_backup_arn": S("SourceBackupArn"), "source_table_arn": S("SourceTableArn"), @@ -247,7 +290,11 @@ class AwsDynamoDbRestoreSummary: class AwsDynamoDbSSEDescription: kind: ClassVar[str] = "aws_dynamo_db_sse_description" kind_display: ClassVar[str] = "AWS DynamoDB SSE Description" - kind_description: ClassVar[str] = "DynamoDB SSE (Server-Side Encryption) provides automatic encryption at rest for DynamoDB tables, ensuring data security and compliance with privacy regulations." + kind_description: ClassVar[str] = ( + "DynamoDB SSE (Server-Side Encryption) provides automatic encryption at rest" + " for DynamoDB tables, ensuring data security and compliance with privacy" + " regulations." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "sse_type": S("SSEType"), @@ -264,7 +311,12 @@ class AwsDynamoDbSSEDescription: class AwsDynamoDbArchivalSummary: kind: ClassVar[str] = "aws_dynamo_db_archival_summary" kind_display: ClassVar[str] = "AWS DynamoDB Archival Summary" - kind_description: ClassVar[str] = "DynamoDB Archival Summary provides information about the archival status and details for DynamoDB tables in Amazon's cloud. Archival allows you to automatically store older data in a cost-effective manner while keeping active data readily available." + kind_description: ClassVar[str] = ( + "DynamoDB Archival Summary provides information about the archival status and" + " details for DynamoDB tables in Amazon's cloud. Archival allows you to" + " automatically store older data in a cost-effective manner while keeping" + " active data readily available." + ) mapping: ClassVar[Dict[str, Bender]] = { "archival_date_time": S("ArchivalDateTime"), "archival_reason": S("ArchivalReason"), @@ -279,7 +331,11 @@ class AwsDynamoDbArchivalSummary: class AwsDynamoDbTable(DynamoDbTaggable, AwsResource): kind: ClassVar[str] = "aws_dynamo_db_table" kind_display: ClassVar[str] = "AWS DynamoDB Table" - kind_description: ClassVar[str] = "DynamoDB is a NoSQL database service provided by Amazon Web Services, allowing users to store and retrieve data using flexible schema and high-performance queries." + kind_description: ClassVar[str] = ( + "DynamoDB is a NoSQL database service provided by Amazon Web Services," + " allowing users to store and retrieve data using flexible schema and high-" + " performance queries." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-tables", "TableNames") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_kinesis_stream", "aws_kms_key"]}, @@ -393,7 +449,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsDynamoDbGlobalTable(DynamoDbTaggable, AwsResource): kind: ClassVar[str] = "aws_dynamo_db_global_table" kind_display: ClassVar[str] = "AWS DynamoDB Global Table" - kind_description: ClassVar[str] = "AWS DynamoDB Global Tables provide fully managed, multi-region, and globally distributed replicas of DynamoDB tables, enabling low-latency and high-performance global access to data." + kind_description: ClassVar[str] = ( + "AWS DynamoDB Global Tables provide fully managed, multi-region, and globally" + " distributed replicas of DynamoDB tables, enabling low-latency and high-" + " performance global access to data." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-global-tables", "GlobalTables") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_kms_key"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/ec2.py b/plugins/aws/resoto_plugin_aws/resource/ec2.py index de0587a8e2..bf83eac9b8 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ec2.py +++ b/plugins/aws/resoto_plugin_aws/resource/ec2.py @@ -82,7 +82,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2ProcessorInfo: kind: ClassVar[str] = "aws_ec2_processor_info" kind_display: ClassVar[str] = "AWS EC2 Processor Info" - kind_description: ClassVar[str] = "EC2 Processor Info provides detailed information about the processors used in Amazon EC2 instances, such as the model, clock speed, and number of cores." + kind_description: ClassVar[str] = ( + "EC2 Processor Info provides detailed information about the processors used" + " in Amazon EC2 instances, such as the model, clock speed, and number of" + " cores." + ) mapping: ClassVar[Dict[str, Bender]] = { "supported_architectures": S("SupportedArchitectures", default=[]), "sustained_clock_speed_in_ghz": S("SustainedClockSpeedInGhz"), @@ -96,7 +100,10 @@ class AwsEc2ProcessorInfo: class AwsEc2VCpuInfo: kind: ClassVar[str] = "aws_ec2_v_cpu_info" kind_display: ClassVar[str] = "AWS EC2 vCPU Info" - kind_description: ClassVar[str] = "EC2 vCPU Info provides detailed information about the virtual CPU capabilities of Amazon EC2 instances." + kind_description: ClassVar[str] = ( + "EC2 vCPU Info provides detailed information about the virtual CPU" + " capabilities of Amazon EC2 instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "default_v_cpus": S("DefaultVCpus"), "default_cores": S("DefaultCores"), @@ -115,7 +122,11 @@ class AwsEc2VCpuInfo: class AwsEc2DiskInfo: kind: ClassVar[str] = "aws_ec2_disk_info" kind_display: ClassVar[str] = "AWS EC2 Disk Info" - kind_description: ClassVar[str] = "EC2 Disk Info refers to the information about the disk storage associated with an EC2 instance in Amazon Web Services. It provides details such as disk size, type, and usage statistics." + kind_description: ClassVar[str] = ( + "EC2 Disk Info refers to the information about the disk storage associated" + " with an EC2 instance in Amazon Web Services. It provides details such as" + " disk size, type, and usage statistics." + ) mapping: ClassVar[Dict[str, Bender]] = {"size_in_gb": S("SizeInGB"), "count": S("Count"), "type": S("Type")} size_in_gb: Optional[int] = field(default=None) count: Optional[int] = field(default=None) @@ -126,7 +137,10 @@ class AwsEc2DiskInfo: class AwsEc2InstanceStorageInfo: kind: ClassVar[str] = "aws_ec2_instance_storage_info" kind_display: ClassVar[str] = "AWS EC2 Instance Storage Info" - kind_description: ClassVar[str] = "EC2 Instance Storage Info provides information about the storage configuration and details of an EC2 instance in Amazon Web Services." + kind_description: ClassVar[str] = ( + "EC2 Instance Storage Info provides information about the storage" + " configuration and details of an EC2 instance in Amazon Web Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "total_size_in_gb": S("TotalSizeInGB"), "disks": S("Disks", default=[]) >> ForallBend(AwsEc2DiskInfo.mapping), @@ -143,7 +157,10 @@ class AwsEc2InstanceStorageInfo: class AwsEc2EbsOptimizedInfo: kind: ClassVar[str] = "aws_ec2_ebs_optimized_info" kind_display: ClassVar[str] = "AWS EC2 EBS Optimized Info" - kind_description: ClassVar[str] = "EBS optimization is an Amazon EC2 feature that enables EC2 instances to fully utilize the IOPS provisioned on an EBS volume." + kind_description: ClassVar[str] = ( + "EBS optimization is an Amazon EC2 feature that enables EC2 instances to" + " fully utilize the IOPS provisioned on an EBS volume." + ) mapping: ClassVar[Dict[str, Bender]] = { "baseline_bandwidth_in_mbps": S("BaselineBandwidthInMbps"), "baseline_throughput_in_mbps": S("BaselineThroughputInMBps"), @@ -164,7 +181,10 @@ class AwsEc2EbsOptimizedInfo: class AwsEc2EbsInfo: kind: ClassVar[str] = "aws_ec2_ebs_info" kind_display: ClassVar[str] = "AWS EC2 EBS Info" - kind_description: ClassVar[str] = "EBS (Elastic Block Store) is a block storage service provided by AWS. It provides persistent storage volumes that can be attached to EC2 instances." + kind_description: ClassVar[str] = ( + "EBS (Elastic Block Store) is a block storage service provided by AWS. It" + " provides persistent storage volumes that can be attached to EC2 instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "ebs_optimized_support": S("EbsOptimizedSupport"), "encryption_support": S("EncryptionSupport"), @@ -181,7 +201,12 @@ class AwsEc2EbsInfo: class AwsEc2NetworkCardInfo: kind: ClassVar[str] = "aws_ec2_network_card_info" kind_display: ClassVar[str] = "AWS EC2 Network Card Info" - kind_description: ClassVar[str] = "AWS EC2 Network Card Info refers to the information related to the network cards associated with EC2 instances in Amazon Web Services. It includes details such as the network card ID, description, and network interface attachments." + kind_description: ClassVar[str] = ( + "AWS EC2 Network Card Info refers to the information related to the network" + " cards associated with EC2 instances in Amazon Web Services. It includes" + " details such as the network card ID, description, and network interface" + " attachments." + ) mapping: ClassVar[Dict[str, Bender]] = { "network_card_index": S("NetworkCardIndex"), "network_performance": S("NetworkPerformance"), @@ -196,7 +221,10 @@ class AwsEc2NetworkCardInfo: class AwsEc2NetworkInfo: kind: ClassVar[str] = "aws_ec2_network_info" kind_display: ClassVar[str] = "AWS EC2 Network Info" - kind_description: ClassVar[str] = "EC2 Network Info provides information about the networking details of EC2 instances in Amazon's cloud." + kind_description: ClassVar[str] = ( + "EC2 Network Info provides information about the networking details of EC2" + " instances in Amazon's cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "network_performance": S("NetworkPerformance"), "maximum_network_interfaces": S("MaximumNetworkInterfaces"), @@ -229,7 +257,12 @@ class AwsEc2NetworkInfo: class AwsEc2GpuDeviceInfo: kind: ClassVar[str] = "aws_ec2_gpu_device_info" kind_display: ClassVar[str] = "AWS EC2 GPU Device Info" - kind_description: ClassVar[str] = "EC2 GPU Device Info provides information about the GPU devices available in the Amazon EC2 instances. It includes details such as GPU model, memory size, and utilization. This information is useful for optimizing performance and managing GPU resources in EC2 instances." + kind_description: ClassVar[str] = ( + "EC2 GPU Device Info provides information about the GPU devices available in" + " the Amazon EC2 instances. It includes details such as GPU model, memory" + " size, and utilization. This information is useful for optimizing performance" + " and managing GPU resources in EC2 instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "manufacturer": S("Manufacturer"), @@ -246,7 +279,11 @@ class AwsEc2GpuDeviceInfo: class AwsEc2GpuInfo: kind: ClassVar[str] = "aws_ec2_gpu_info" kind_display: ClassVar[str] = "AWS EC2 GPU Info" - kind_description: ClassVar[str] = "EC2 GPU Info provides detailed information about the Graphics Processing Units (GPUs) available in Amazon EC2 instances. This includes information about the GPU type, memory, and performance capabilities." + kind_description: ClassVar[str] = ( + "EC2 GPU Info provides detailed information about the Graphics Processing" + " Units (GPUs) available in Amazon EC2 instances. This includes information" + " about the GPU type, memory, and performance capabilities." + ) mapping: ClassVar[Dict[str, Bender]] = { "gpus": S("Gpus", default=[]) >> ForallBend(AwsEc2GpuDeviceInfo.mapping), "total_gpu_memory_in_mi_b": S("TotalGpuMemoryInMiB"), @@ -260,7 +297,11 @@ class AwsEc2GpuInfo: class AwsEc2FpgaDeviceInfo: kind: ClassVar[str] = "aws_ec2_fpga_device_info" kind_display: ClassVar[str] = "AWS EC2 FPGA Device Info" - kind_description: ClassVar[str] = "Provides information about FPGA devices available in EC2 instances. FPGA devices in EC2 instances provide customizable and programmable hardware acceleration for various workloads." + kind_description: ClassVar[str] = ( + "Provides information about FPGA devices available in EC2 instances. FPGA" + " devices in EC2 instances provide customizable and programmable hardware" + " acceleration for various workloads." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "manufacturer": S("Manufacturer"), @@ -277,7 +318,11 @@ class AwsEc2FpgaDeviceInfo: class AwsEc2FpgaInfo: kind: ClassVar[str] = "aws_ec2_fpga_info" kind_display: ClassVar[str] = "AWS EC2 FPGA Info" - kind_description: ClassVar[str] = "FPGAs (Field-Programmable Gate Arrays) in AWS EC2 provide hardware acceleration capabilities for your applications, enabling you to optimize performance and efficiency for specific workloads." + kind_description: ClassVar[str] = ( + "FPGAs (Field-Programmable Gate Arrays) in AWS EC2 provide hardware" + " acceleration capabilities for your applications, enabling you to optimize" + " performance and efficiency for specific workloads." + ) mapping: ClassVar[Dict[str, Bender]] = { "fpgas": S("Fpgas", default=[]) >> ForallBend(AwsEc2FpgaDeviceInfo.mapping), "total_fpga_memory_in_mi_b": S("TotalFpgaMemoryInMiB"), @@ -290,7 +335,11 @@ class AwsEc2FpgaInfo: class AwsEc2PlacementGroupInfo: kind: ClassVar[str] = "aws_ec2_placement_group_info" kind_display: ClassVar[str] = "AWS EC2 Placement Group Info" - kind_description: ClassVar[str] = "EC2 Placement Groups are logical groupings of instances within a single Availability Zone that enables applications to take advantage of low-latency network connections between instances." + kind_description: ClassVar[str] = ( + "EC2 Placement Groups are logical groupings of instances within a single" + " Availability Zone that enables applications to take advantage of low-latency" + " network connections between instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"supported_strategies": S("SupportedStrategies", default=[])} supported_strategies: List[str] = field(factory=list) @@ -299,7 +348,12 @@ class AwsEc2PlacementGroupInfo: class AwsEc2InferenceDeviceInfo: kind: ClassVar[str] = "aws_ec2_inference_device_info" kind_display: ClassVar[str] = "AWS EC2 Inference Device Info" - kind_description: ClassVar[str] = "EC2 Inference Device Info provides information about the inference devices available for EC2 instances. Inference devices are specialized hardware accelerators that can be used to optimize the performance of machine learning or deep learning workloads on EC2 instances." + kind_description: ClassVar[str] = ( + "EC2 Inference Device Info provides information about the inference devices" + " available for EC2 instances. Inference devices are specialized hardware" + " accelerators that can be used to optimize the performance of machine" + " learning or deep learning workloads on EC2 instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"count": S("Count"), "name": S("Name"), "manufacturer": S("Manufacturer")} count: Optional[int] = field(default=None) name: Optional[str] = field(default=None) @@ -310,7 +364,11 @@ class AwsEc2InferenceDeviceInfo: class AwsEc2InferenceAcceleratorInfo: kind: ClassVar[str] = "aws_ec2_inference_accelerator_info" kind_display: ClassVar[str] = "AWS EC2 Inference Accelerator Info" - kind_description: ClassVar[str] = "EC2 Inference Accelerator Info provides information about acceleration options available for Amazon EC2 instances, allowing users to enhance performance of their machine learning inference workloads." + kind_description: ClassVar[str] = ( + "EC2 Inference Accelerator Info provides information about acceleration" + " options available for Amazon EC2 instances, allowing users to enhance" + " performance of their machine learning inference workloads." + ) mapping: ClassVar[Dict[str, Bender]] = { "accelerators": S("Accelerators", default=[]) >> ForallBend(AwsEc2InferenceDeviceInfo.mapping) } @@ -321,7 +379,11 @@ class AwsEc2InferenceAcceleratorInfo: class AwsEc2InstanceType(AwsResource, BaseInstanceType): kind: ClassVar[str] = "aws_ec2_instance_type" kind_display: ClassVar[str] = "AWS EC2 Instance Type" - kind_description: ClassVar[str] = "The type of EC2 instance determines the hardware of the host computer used for the instance and the number of virtual CPUs, amount of memory, and storage capacity provided." + kind_description: ClassVar[str] = ( + "The type of EC2 instance determines the hardware of the host computer used" + " for the instance and the number of virtual CPUs, amount of memory, and" + " storage capacity provided." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-instance-types", "InstanceTypes") reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -408,7 +470,10 @@ def collect(cls: Type[AwsResource], json: List[Json], builder: GraphBuilder) -> class AwsEc2VolumeAttachment: kind: ClassVar[str] = "aws_ec2_volume_attachment" kind_display: ClassVar[str] = "AWS EC2 Volume Attachment" - kind_description: ClassVar[str] = "AWS EC2 Volume Attachment is a resource that represents the attachment of an Amazon Elastic Block Store (EBS) volume to an EC2 instance." + kind_description: ClassVar[str] = ( + "AWS EC2 Volume Attachment is a resource that represents the attachment of an" + " Amazon Elastic Block Store (EBS) volume to an EC2 instance." + ) mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "device": S("Device"), @@ -439,7 +504,11 @@ class AwsEc2VolumeAttachment: class AwsEc2Volume(EC2Taggable, AwsResource, BaseVolume): kind: ClassVar[str] = "aws_ec2_volume" kind_display: ClassVar[str] = "AWS EC2 Volume" - kind_description: ClassVar[str] = "EC2 Volumes are block-level storage devices that can be attached to EC2 instances in Amazon's cloud, providing additional storage for applications and data." + kind_description: ClassVar[str] = ( + "EC2 Volumes are block-level storage devices that can be attached to EC2" + " instances in Amazon's cloud, providing additional storage for applications" + " and data." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-volumes", "Volumes") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_ec2_volume_type", "aws_ec2_instance"], "delete": ["aws_kms_key"]}, @@ -639,7 +708,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2Snapshot(EC2Taggable, AwsResource, BaseSnapshot): kind: ClassVar[str] = "aws_ec2_snapshot" kind_display: ClassVar[str] = "AWS EC2 Snapshot" - kind_description: ClassVar[str] = "EC2 Snapshots are incremental backups of Amazon Elastic Block Store (EBS) volumes, allowing users to capture and store point-in-time copies of their data." + kind_description: ClassVar[str] = ( + "EC2 Snapshots are incremental backups of Amazon Elastic Block Store (EBS)" + " volumes, allowing users to capture and store point-in-time copies of their" + " data." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-snapshots", "Snapshots", dict(OwnerIds=["self"]) ) @@ -704,7 +777,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2KeyPair(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_keypair" kind_display: ClassVar[str] = "AWS EC2 Keypair" - kind_description: ClassVar[str] = "EC2 Keypairs are SSH key pairs used to securely connect to EC2 instances in Amazon's cloud." + kind_description: ClassVar[str] = ( + "EC2 Keypairs are SSH key pairs used to securely connect to EC2 instances in" + " Amazon's cloud." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-key-pairs", "KeyPairs") reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -748,7 +824,12 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2Placement: kind: ClassVar[str] = "aws_ec2_placement" kind_display: ClassVar[str] = "AWS EC2 Placement" - kind_description: ClassVar[str] = "EC2 Placement refers to the process of selecting a suitable physical host within an AWS Availability Zone to run an EC2 instance. It helps optimize performance, availability, and cost by considering factors such as instance type, size, and availability of resources on the host." + kind_description: ClassVar[str] = ( + "EC2 Placement refers to the process of selecting a suitable physical host" + " within an AWS Availability Zone to run an EC2 instance. It helps optimize" + " performance, availability, and cost by considering factors such as instance" + " type, size, and availability of resources on the host." + ) mapping: ClassVar[Dict[str, Bender]] = { "availability_zone": S("AvailabilityZone"), "affinity": S("Affinity"), @@ -773,7 +854,11 @@ class AwsEc2Placement: class AwsEc2ProductCode: kind: ClassVar[str] = "aws_ec2_product_code" kind_display: ClassVar[str] = "AWS EC2 Product Code" - kind_description: ClassVar[str] = "An EC2 Product Code is a unique identifier assigned to an Amazon Machine Image (AMI) to facilitate tracking and licensing of software packages included in the image." + kind_description: ClassVar[str] = ( + "An EC2 Product Code is a unique identifier assigned to an Amazon Machine" + " Image (AMI) to facilitate tracking and licensing of software packages" + " included in the image." + ) mapping: ClassVar[Dict[str, Bender]] = { "product_code_id": S("ProductCodeId"), "product_code_type": S("ProductCodeType"), @@ -786,7 +871,10 @@ class AwsEc2ProductCode: class AwsEc2InstanceState: kind: ClassVar[str] = "aws_ec2_instance_state" kind_display: ClassVar[str] = "AWS EC2 Instance State" - kind_description: ClassVar[str] = "AWS EC2 Instance State represents the current state of an EC2 instance in Amazon's cloud, such as running, stopped, terminated, or pending." + kind_description: ClassVar[str] = ( + "AWS EC2 Instance State represents the current state of an EC2 instance in" + " Amazon's cloud, such as running, stopped, terminated, or pending." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "name": S("Name")} code: Optional[int] = field(default=None) name: Optional[str] = field(default=None) @@ -796,7 +884,10 @@ class AwsEc2InstanceState: class AwsEc2EbsInstanceBlockDevice: kind: ClassVar[str] = "aws_ec2_ebs_instance_block_device" kind_display: ClassVar[str] = "AWS EC2 EBS Instance Block Device" - kind_description: ClassVar[str] = "EC2 EBS Instance Block Device is a storage volume attached to an Amazon EC2 instance for persistent data storage." + kind_description: ClassVar[str] = ( + "EC2 EBS Instance Block Device is a storage volume attached to an Amazon EC2" + " instance for persistent data storage." + ) mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "delete_on_termination": S("DeleteOnTermination"), @@ -813,7 +904,10 @@ class AwsEc2EbsInstanceBlockDevice: class AwsEc2InstanceBlockDeviceMapping: kind: ClassVar[str] = "aws_ec2_instance_block_device_mapping" kind_display: ClassVar[str] = "AWS EC2 Instance Block Device Mapping" - kind_description: ClassVar[str] = "Block device mapping is a feature in Amazon EC2 that allows users to specify the block devices to attach to an EC2 instance at launch time." + kind_description: ClassVar[str] = ( + "Block device mapping is a feature in Amazon EC2 that allows users to specify" + " the block devices to attach to an EC2 instance at launch time." + ) mapping: ClassVar[Dict[str, Bender]] = { "device_name": S("DeviceName"), "ebs": S("Ebs") >> Bend(AwsEc2EbsInstanceBlockDevice.mapping), @@ -826,7 +920,11 @@ class AwsEc2InstanceBlockDeviceMapping: class AwsEc2IamInstanceProfile: kind: ClassVar[str] = "aws_ec2_iam_instance_profile" kind_display: ClassVar[str] = "AWS EC2 IAM Instance Profile" - kind_description: ClassVar[str] = "IAM Instance Profiles are used to associate IAM roles with EC2 instances, allowing applications running on the instances to securely access other AWS services." + kind_description: ClassVar[str] = ( + "IAM Instance Profiles are used to associate IAM roles with EC2 instances," + " allowing applications running on the instances to securely access other AWS" + " services." + ) mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "id": S("Id")} arn: Optional[str] = field(default=None) id: Optional[str] = field(default=None) @@ -836,7 +934,11 @@ class AwsEc2IamInstanceProfile: class AwsEc2ElasticGpuAssociation: kind: ClassVar[str] = "aws_ec2_elastic_gpu_association" kind_display: ClassVar[str] = "AWS EC2 Elastic GPU Association" - kind_description: ClassVar[str] = "Elastic GPU Association is a feature in AWS EC2 that allows attaching an Elastic GPU to an EC2 instance, providing additional GPU resources for graphics-intensive applications." + kind_description: ClassVar[str] = ( + "Elastic GPU Association is a feature in AWS EC2 that allows attaching an" + " Elastic GPU to an EC2 instance, providing additional GPU resources for" + " graphics-intensive applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "elastic_gpu_id": S("ElasticGpuId"), "elastic_gpu_association_id": S("ElasticGpuAssociationId"), @@ -853,7 +955,11 @@ class AwsEc2ElasticGpuAssociation: class AwsEc2ElasticInferenceAcceleratorAssociation: kind: ClassVar[str] = "aws_ec2_elastic_inference_accelerator_association" kind_display: ClassVar[str] = "AWS EC2 Elastic Inference Accelerator Association" - kind_description: ClassVar[str] = "Elastic Inference Accelerator Association allows users to attach elastic inference accelerators to EC2 instances in order to accelerate their machine learning inference workloads." + kind_description: ClassVar[str] = ( + "Elastic Inference Accelerator Association allows users to attach elastic" + " inference accelerators to EC2 instances in order to accelerate their machine" + " learning inference workloads." + ) mapping: ClassVar[Dict[str, Bender]] = { "elastic_inference_accelerator_arn": S("ElasticInferenceAcceleratorArn"), "elastic_inference_accelerator_association_id": S("ElasticInferenceAcceleratorAssociationId"), @@ -870,7 +976,11 @@ class AwsEc2ElasticInferenceAcceleratorAssociation: class AwsEc2InstanceNetworkInterfaceAssociation: kind: ClassVar[str] = "aws_ec2_instance_network_interface_association" kind_display: ClassVar[str] = "AWS EC2 Instance Network Interface Association" - kind_description: ClassVar[str] = "A network interface association for an EC2 instance in Amazon's cloud, which helps manage the connection between the instance and its associated network interface." + kind_description: ClassVar[str] = ( + "A network interface association for an EC2 instance in Amazon's cloud, which" + " helps manage the connection between the instance and its associated network" + " interface." + ) mapping: ClassVar[Dict[str, Bender]] = { "carrier_ip": S("CarrierIp"), "customer_owned_ip": S("CustomerOwnedIp"), @@ -889,7 +999,10 @@ class AwsEc2InstanceNetworkInterfaceAssociation: class AwsEc2InstanceNetworkInterfaceAttachment: kind: ClassVar[str] = "aws_ec2_instance_network_interface_attachment" kind_display: ClassVar[str] = "AWS EC2 Instance Network Interface Attachment" - kind_description: ClassVar[str] = "An attachment of a network interface to an EC2 instance in the Amazon Web Services cloud." + kind_description: ClassVar[str] = ( + "An attachment of a network interface to an EC2 instance in the Amazon Web" + " Services cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "attachment_id": S("AttachmentId"), @@ -910,7 +1023,10 @@ class AwsEc2InstanceNetworkInterfaceAttachment: class AwsEc2GroupIdentifier: kind: ClassVar[str] = "aws_ec2_group_identifier" kind_display: ClassVar[str] = "AWS EC2 Group Identifier" - kind_description: ClassVar[str] = "An EC2 Group Identifier is a unique identifier for a group of EC2 instances that are associated with a security group in Amazon's cloud." + kind_description: ClassVar[str] = ( + "An EC2 Group Identifier is a unique identifier for a group of EC2 instances" + " that are associated with a security group in Amazon's cloud." + ) mapping: ClassVar[Dict[str, Bender]] = {"group_name": S("GroupName"), "group_id": S("GroupId")} group_name: Optional[str] = field(default=None) group_id: Optional[str] = field(default=None) @@ -920,7 +1036,10 @@ class AwsEc2GroupIdentifier: class AwsEc2InstancePrivateIpAddress: kind: ClassVar[str] = "aws_ec2_instance_private_ip_address" kind_display: ClassVar[str] = "AWS EC2 Instance Private IP Address" - kind_description: ClassVar[str] = "The private IP address is the internal IP address assigned to the EC2 instance within the Amazon VPC (Virtual Private Cloud) network." + kind_description: ClassVar[str] = ( + "The private IP address is the internal IP address assigned to the EC2" + " instance within the Amazon VPC (Virtual Private Cloud) network." + ) mapping: ClassVar[Dict[str, Bender]] = { "association": S("Association") >> Bend(AwsEc2InstanceNetworkInterfaceAssociation.mapping), "primary": S("Primary"), @@ -937,7 +1056,10 @@ class AwsEc2InstancePrivateIpAddress: class AwsEc2InstanceNetworkInterface: kind: ClassVar[str] = "aws_ec2_instance_network_interface" kind_display: ClassVar[str] = "AWS EC2 Instance Network Interface" - kind_description: ClassVar[str] = "A network interface is a virtual network card that allows an EC2 instance to connect to networks and communicate with other resources." + kind_description: ClassVar[str] = ( + "A network interface is a virtual network card that allows an EC2 instance to" + " connect to networks and communicate with other resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "association": S("Association") >> Bend(AwsEc2InstanceNetworkInterfaceAssociation.mapping), "attachment": S("Attachment") >> Bend(AwsEc2InstanceNetworkInterfaceAttachment.mapping), @@ -980,7 +1102,10 @@ class AwsEc2InstanceNetworkInterface: class AwsEc2StateReason: kind: ClassVar[str] = "aws_ec2_state_reason" kind_display: ClassVar[str] = "AWS EC2 State Reason" - kind_description: ClassVar[str] = "EC2 State Reason provides information about the reason a certain EC2 instance is in its current state, such as running, stopped, or terminated." + kind_description: ClassVar[str] = ( + "EC2 State Reason provides information about the reason a certain EC2" + " instance is in its current state, such as running, stopped, or terminated." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "message": S("Message")} code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -990,7 +1115,10 @@ class AwsEc2StateReason: class AwsEc2CpuOptions: kind: ClassVar[str] = "aws_ec2_cpu_options" kind_display: ClassVar[str] = "AWS EC2 CPU Options" - kind_description: ClassVar[str] = "EC2 CPU Options allow users to customize the number of vCPUs (virtual CPUs) and the processor generation of their EC2 instances in Amazon's cloud." + kind_description: ClassVar[str] = ( + "EC2 CPU Options allow users to customize the number of vCPUs (virtual CPUs)" + " and the processor generation of their EC2 instances in Amazon's cloud." + ) mapping: ClassVar[Dict[str, Bender]] = {"core_count": S("CoreCount"), "threads_per_core": S("ThreadsPerCore")} core_count: Optional[int] = field(default=None) threads_per_core: Optional[int] = field(default=None) @@ -1000,7 +1128,11 @@ class AwsEc2CpuOptions: class AwsEc2CapacityReservationTargetResponse: kind: ClassVar[str] = "aws_ec2_capacity_reservation_target_response" kind_display: ClassVar[str] = "AWS EC2 Capacity Reservation Target Response" - kind_description: ClassVar[str] = "This resource represents the response for querying capacity reservation targets available for EC2 instances in AWS. It provides information about the different capacity reservation options and their availability." + kind_description: ClassVar[str] = ( + "This resource represents the response for querying capacity reservation" + " targets available for EC2 instances in AWS. It provides information about" + " the different capacity reservation options and their availability." + ) mapping: ClassVar[Dict[str, Bender]] = { "capacity_reservation_id": S("CapacityReservationId"), "capacity_reservation_resource_group_arn": S("CapacityReservationResourceGroupArn"), @@ -1013,7 +1145,11 @@ class AwsEc2CapacityReservationTargetResponse: class AwsEc2CapacityReservationSpecificationResponse: kind: ClassVar[str] = "aws_ec2_capacity_reservation_specification_response" kind_display: ClassVar[str] = "AWS EC2 Capacity Reservation Specification Response" - kind_description: ClassVar[str] = "The Capacity Reservation Specification Response is a response object that provides information about the capacity reservations for an EC2 instance in Amazon's cloud." + kind_description: ClassVar[str] = ( + "The Capacity Reservation Specification Response is a response object that" + " provides information about the capacity reservations for an EC2 instance in" + " Amazon's cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "capacity_reservation_preference": S("CapacityReservationPreference"), "capacity_reservation_target": S("CapacityReservationTarget") @@ -1027,7 +1163,11 @@ class AwsEc2CapacityReservationSpecificationResponse: class AwsEc2InstanceMetadataOptionsResponse: kind: ClassVar[str] = "aws_ec2_instance_metadata_options_response" kind_display: ClassVar[str] = "AWS EC2 Instance Metadata Options Response" - kind_description: ClassVar[str] = "The AWS EC2 Instance Metadata Options Response is a configuration response from Amazon EC2 that provides information about the metadata service options enabled for an EC2 instance." + kind_description: ClassVar[str] = ( + "The AWS EC2 Instance Metadata Options Response is a configuration response" + " from Amazon EC2 that provides information about the metadata service options" + " enabled for an EC2 instance." + ) mapping: ClassVar[Dict[str, Bender]] = { "state": S("State"), "http_tokens": S("HttpTokens"), @@ -1048,7 +1188,11 @@ class AwsEc2InstanceMetadataOptionsResponse: class AwsEc2PrivateDnsNameOptionsResponse: kind: ClassVar[str] = "aws_ec2_private_dns_name_options_response" kind_display: ClassVar[str] = "AWS EC2 Private DNS Name Options Response" - kind_description: ClassVar[str] = "Private DNS Name Options Response is a response object in the AWS EC2 service that provides options for configuring the private DNS name of a resource in a virtual private cloud (VPC)." + kind_description: ClassVar[str] = ( + "Private DNS Name Options Response is a response object in the AWS EC2" + " service that provides options for configuring the private DNS name of a" + " resource in a virtual private cloud (VPC)." + ) mapping: ClassVar[Dict[str, Bender]] = { "hostname_type": S("HostnameType"), "enable_resource_name_dns_a_record": S("EnableResourceNameDnsARecord"), @@ -1073,7 +1217,10 @@ class AwsEc2PrivateDnsNameOptionsResponse: class AwsEc2Instance(EC2Taggable, AwsResource, BaseInstance): kind: ClassVar[str] = "aws_ec2_instance" kind_display: ClassVar[str] = "AWS EC2 Instance" - kind_description: ClassVar[str] = "EC2 Instances are virtual servers in Amazon's cloud, allowing users to run applications on the Amazon Web Services infrastructure." + kind_description: ClassVar[str] = ( + "EC2 Instances are virtual servers in Amazon's cloud, allowing users to run" + " applications on the Amazon Web Services infrastructure." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-instances", "Reservations") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_ec2_keypair", "aws_vpc"]}, @@ -1339,7 +1486,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2RecurringCharge: kind: ClassVar[str] = "aws_ec2_recurring_charge" kind_display: ClassVar[str] = "AWS EC2 Recurring Charge" - kind_description: ClassVar[str] = "There is no specific resource or service named 'aws_ec2_recurring_charge' in AWS. Please provide a valid resource name." + kind_description: ClassVar[str] = ( + "There is no specific resource or service named 'aws_ec2_recurring_charge' in" + " AWS. Please provide a valid resource name." + ) mapping: ClassVar[Dict[str, Bender]] = {"amount": S("Amount"), "frequency": S("Frequency")} amount: Optional[float] = field(default=None) frequency: Optional[str] = field(default=None) @@ -1349,7 +1499,11 @@ class AwsEc2RecurringCharge: class AwsEc2ReservedInstances(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_reserved_instances" kind_display: ClassVar[str] = "AWS EC2 Reserved Instances" - kind_description: ClassVar[str] = "Reserved Instances are a purchasing option to save money on EC2 instance usage. Users can reserve instances for a one- or three-year term, allowing them to pay a lower hourly rate compared to on-demand instances." + kind_description: ClassVar[str] = ( + "Reserved Instances are a purchasing option to save money on EC2 instance" + " usage. Users can reserve instances for a one- or three-year term, allowing" + " them to pay a lower hourly rate compared to on-demand instances." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-reserved-instances", "ReservedInstances") reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["aws_ec2_instance_type"]}} mapping: ClassVar[Dict[str, Bender]] = { @@ -1408,7 +1562,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsEc2NetworkAclAssociation: kind: ClassVar[str] = "aws_ec2_network_acl_association" kind_display: ClassVar[str] = "AWS EC2 Network ACL Association" - kind_description: ClassVar[str] = "Network ACL Associations are used to associate a network ACL with a subnet in an Amazon VPC, allowing the network ACL to control inbound and outbound traffic to and from the subnet." + kind_description: ClassVar[str] = ( + "Network ACL Associations are used to associate a network ACL with a subnet" + " in an Amazon VPC, allowing the network ACL to control inbound and outbound" + " traffic to and from the subnet." + ) mapping: ClassVar[Dict[str, Bender]] = { "network_acl_association_id": S("NetworkAclAssociationId"), "network_acl_id": S("NetworkAclId"), @@ -1423,7 +1581,10 @@ class AwsEc2NetworkAclAssociation: class AwsEc2IcmpTypeCode: kind: ClassVar[str] = "aws_ec2_icmp_type_code" kind_display: ClassVar[str] = "AWS EC2 ICMP Type Code" - kind_description: ClassVar[str] = "ICMP Type Code is a parameter used in AWS EC2 to specify the type and code of Internet Control Message Protocol (ICMP) messages." + kind_description: ClassVar[str] = ( + "ICMP Type Code is a parameter used in AWS EC2 to specify the type and code" + " of Internet Control Message Protocol (ICMP) messages." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "type": S("Type")} code: Optional[int] = field(default=None) type: Optional[int] = field(default=None) @@ -1433,7 +1594,10 @@ class AwsEc2IcmpTypeCode: class AwsEc2PortRange: kind: ClassVar[str] = "aws_ec2_port_range" kind_display: ClassVar[str] = "AWS EC2 Port Range" - kind_description: ClassVar[str] = "A range of port numbers that can be used to control inbound and outbound traffic for an AWS EC2 instance." + kind_description: ClassVar[str] = ( + "A range of port numbers that can be used to control inbound and outbound" + " traffic for an AWS EC2 instance." + ) mapping: ClassVar[Dict[str, Bender]] = {"from_range": S("From"), "to_range": S("To")} from_range: Optional[int] = field(default=None) to_range: Optional[int] = field(default=None) @@ -1443,7 +1607,10 @@ class AwsEc2PortRange: class AwsEc2NetworkAclEntry: kind: ClassVar[str] = "aws_ec2_network_acl_entry" kind_display: ClassVar[str] = "AWS EC2 Network ACL Entry" - kind_description: ClassVar[str] = "EC2 Network ACL Entry is an access control entry for a network ACL in Amazon EC2, which controls inbound and outbound traffic flow for subnets." + kind_description: ClassVar[str] = ( + "EC2 Network ACL Entry is an access control entry for a network ACL in Amazon" + " EC2, which controls inbound and outbound traffic flow for subnets." + ) mapping: ClassVar[Dict[str, Bender]] = { "cidr_block": S("CidrBlock"), "egress": S("Egress"), @@ -1468,7 +1635,10 @@ class AwsEc2NetworkAclEntry: class AwsEc2NetworkAcl(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_network_acl" kind_display: ClassVar[str] = "AWS EC2 Network ACL" - kind_description: ClassVar[str] = "EC2 Network ACLs are virtual stateless firewalls that control inbound and outbound traffic for EC2 instances in Amazon's cloud." + kind_description: ClassVar[str] = ( + "EC2 Network ACLs are virtual stateless firewalls that control inbound and" + " outbound traffic for EC2 instances in Amazon's cloud." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-network-acls", "NetworkAcls") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc", "aws_ec2_subnet"]}, @@ -1515,7 +1685,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2ElasticIp(EC2Taggable, AwsResource, BaseIPAddress): kind: ClassVar[str] = "aws_ec2_elastic_ip" kind_display: ClassVar[str] = "AWS EC2 Elastic IP" - kind_description: ClassVar[str] = "Elastic IP addresses are static, IPv4 addresses designed for dynamic cloud computing. They allow you to mask the failure or replacement of an instance by rapidly remapping the address to another instance in your account." + kind_description: ClassVar[str] = ( + "Elastic IP addresses are static, IPv4 addresses designed for dynamic cloud" + " computing. They allow you to mask the failure or replacement of an instance" + " by rapidly remapping the address to another instance in your account." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-addresses", "Addresses") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_ec2_instance", "aws_ec2_network_interface"]}, @@ -1595,7 +1769,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2NetworkInterfaceAssociation: kind: ClassVar[str] = "aws_ec2_network_interface_association" kind_display: ClassVar[str] = "AWS EC2 Network Interface Association" - kind_description: ClassVar[str] = "The association between a network interface and an EC2 instance, allowing the instance to access the network." + kind_description: ClassVar[str] = ( + "The association between a network interface and an EC2 instance, allowing" + " the instance to access the network." + ) mapping: ClassVar[Dict[str, Bender]] = { "allocation_id": S("AllocationId"), "association_id": S("AssociationId"), @@ -1617,7 +1794,10 @@ class AwsEc2NetworkInterfaceAssociation: class AwsEc2NetworkInterfaceAttachment: kind: ClassVar[str] = "aws_ec2_network_interface_attachment" kind_display: ClassVar[str] = "AWS EC2 Network Interface Attachment" - kind_description: ClassVar[str] = "An attachment of a network interface to an EC2 instance, allowing the instance to communicate over the network." + kind_description: ClassVar[str] = ( + "An attachment of a network interface to an EC2 instance, allowing the" + " instance to communicate over the network." + ) mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "attachment_id": S("AttachmentId"), @@ -1641,7 +1821,11 @@ class AwsEc2NetworkInterfaceAttachment: class AwsEc2NetworkInterfacePrivateIpAddress: kind: ClassVar[str] = "aws_ec2_network_interface_private_ip_address" kind_display: ClassVar[str] = "AWS EC2 Network Interface Private IP Address" - kind_description: ClassVar[str] = "The private IP address assigned to a network interface of an Amazon EC2 instance. This IP address is used for communication within the Amazon VPC (Virtual Private Cloud) network." + kind_description: ClassVar[str] = ( + "The private IP address assigned to a network interface of an Amazon EC2" + " instance. This IP address is used for communication within the Amazon VPC" + " (Virtual Private Cloud) network." + ) mapping: ClassVar[Dict[str, Bender]] = { "association": S("Association") >> Bend(AwsEc2NetworkInterfaceAssociation.mapping), "primary": S("Primary"), @@ -1658,7 +1842,10 @@ class AwsEc2NetworkInterfacePrivateIpAddress: class AwsEc2Tag: kind: ClassVar[str] = "aws_ec2_tag" kind_display: ClassVar[str] = "AWS EC2 Tag" - kind_description: ClassVar[str] = "EC2 tags are key-value pairs that can be assigned to EC2 instances, images, volumes, and other resources for easier management and organization." + kind_description: ClassVar[str] = ( + "EC2 tags are key-value pairs that can be assigned to EC2 instances, images," + " volumes, and other resources for easier management and organization." + ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("Key"), "value": S("Value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1668,7 +1855,11 @@ class AwsEc2Tag: class AwsEc2NetworkInterface(EC2Taggable, AwsResource, BaseNetworkInterface): kind: ClassVar[str] = "aws_ec2_network_interface" kind_display: ClassVar[str] = "AWS EC2 Network Interface" - kind_description: ClassVar[str] = "An EC2 Network Interface is a virtual network interface that can be attached to EC2 instances in the AWS cloud, allowing for communication between instances and with external networks." + kind_description: ClassVar[str] = ( + "An EC2 Network Interface is a virtual network interface that can be attached" + " to EC2 instances in the AWS cloud, allowing for communication between" + " instances and with external networks." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-network-interfaces", "NetworkInterfaces") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -1777,7 +1968,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2VpcCidrBlockState: kind: ClassVar[str] = "aws_vpc_cidr_block_state" kind_display: ClassVar[str] = "AWS VPC CIDR Block State" - kind_description: ClassVar[str] = "The state of a CIDR block in an Amazon Virtual Private Cloud (VPC) which provides networking functionality for Amazon Elastic Compute Cloud (EC2) instances." + kind_description: ClassVar[str] = ( + "The state of a CIDR block in an Amazon Virtual Private Cloud (VPC) which" + " provides networking functionality for Amazon Elastic Compute Cloud (EC2)" + " instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "status_message": S("StatusMessage")} state: Optional[str] = field(default=None) status_message: Optional[str] = field(default=None) @@ -1787,7 +1982,11 @@ class AwsEc2VpcCidrBlockState: class AwsEc2VpcIpv6CidrBlockAssociation: kind: ClassVar[str] = "aws_vpc_ipv6_cidr_block_association" kind_display: ClassVar[str] = "AWS VPC IPv6 CIDR Block Association" - kind_description: ClassVar[str] = "AWS VPC IPv6 CIDR Block Association represents the association between an Amazon Virtual Private Cloud (VPC) and an IPv6 CIDR block, enabling communication over IPv6 in the VPC." + kind_description: ClassVar[str] = ( + "AWS VPC IPv6 CIDR Block Association represents the association between an" + " Amazon Virtual Private Cloud (VPC) and an IPv6 CIDR block, enabling" + " communication over IPv6 in the VPC." + ) mapping: ClassVar[Dict[str, Bender]] = { "association_id": S("AssociationId"), "ipv6_cidr_block": S("Ipv6CidrBlock"), @@ -1806,7 +2005,12 @@ class AwsEc2VpcIpv6CidrBlockAssociation: class AwsEc2VpcCidrBlockAssociation: kind: ClassVar[str] = "aws_vpc_cidr_block_association" kind_display: ClassVar[str] = "AWS VPC CIDR Block Association" - kind_description: ClassVar[str] = "CIDR Block Association is used to associate a specific range of IP addresses (CIDR block) with a Virtual Private Cloud (VPC) in the AWS cloud. It allows the VPC to have a defined IP range for its resources and enables secure communication within the VPC." + kind_description: ClassVar[str] = ( + "CIDR Block Association is used to associate a specific range of IP addresses" + " (CIDR block) with a Virtual Private Cloud (VPC) in the AWS cloud. It allows" + " the VPC to have a defined IP range for its resources and enables secure" + " communication within the VPC." + ) mapping: ClassVar[Dict[str, Bender]] = { "association_id": S("AssociationId"), "cidr_block": S("CidrBlock"), @@ -1821,7 +2025,11 @@ class AwsEc2VpcCidrBlockAssociation: class AwsEc2Vpc(EC2Taggable, AwsResource, BaseNetwork): kind: ClassVar[str] = "aws_vpc" kind_display: ClassVar[str] = "AWS VPC" - kind_description: ClassVar[str] = "AWS VPC stands for Amazon Virtual Private Cloud. It is a virtual network dedicated to your AWS account, allowing you to launch AWS resources in a defined virtual network environment." + kind_description: ClassVar[str] = ( + "AWS VPC stands for Amazon Virtual Private Cloud. It is a virtual network" + " dedicated to your AWS account, allowing you to launch AWS resources in a" + " defined virtual network environment." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-vpcs", "Vpcs") mapping: ClassVar[Dict[str, Bender]] = { "id": S("VpcId"), @@ -1867,7 +2075,12 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2VpcPeeringConnectionOptionsDescription: kind: ClassVar[str] = "aws_vpc_peering_connection_options_description" kind_display: ClassVar[str] = "AWS VPC Peering Connection Options Description" - kind_description: ClassVar[str] = "VPC Peering Connection Options Description provides the different options and configurations for establishing a peering connection between two Amazon Virtual Private Clouds (VPCs). This allows communication between the VPCs using private IP addresses." + kind_description: ClassVar[str] = ( + "VPC Peering Connection Options Description provides the different options" + " and configurations for establishing a peering connection between two Amazon" + " Virtual Private Clouds (VPCs). This allows communication between the VPCs" + " using private IP addresses." + ) mapping: ClassVar[Dict[str, Bender]] = { "allow_dns_resolution_from_remote_vpc": S("AllowDnsResolutionFromRemoteVpc"), "allow_egress_from_local_classic_link_to_remote_vpc": S("AllowEgressFromLocalClassicLinkToRemoteVpc"), @@ -1882,7 +2095,11 @@ class AwsEc2VpcPeeringConnectionOptionsDescription: class AwsEc2VpcPeeringConnectionVpcInfo: kind: ClassVar[str] = "aws_vpc_peering_connection_vpc_info" kind_display: ClassVar[str] = "AWS VPC Peering Connection VPC Info" - kind_description: ClassVar[str] = "VPC Peering Connection VPC Info provides information about the virtual private cloud (VPC) involved in a VPC peering connection in Amazon Web Services." + kind_description: ClassVar[str] = ( + "VPC Peering Connection VPC Info provides information about the virtual" + " private cloud (VPC) involved in a VPC peering connection in Amazon Web" + " Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "cidr_block": S("CidrBlock"), "ipv6_cidr_block_set": S("Ipv6CidrBlockSet", default=[]) >> ForallBend(S("Ipv6CidrBlock")), @@ -1905,7 +2122,10 @@ class AwsEc2VpcPeeringConnectionVpcInfo: class AwsEc2VpcPeeringConnectionStateReason: kind: ClassVar[str] = "aws_vpc_peering_connection_state_reason" kind_display: ClassVar[str] = "AWS VPC Peering Connection State Reason" - kind_description: ClassVar[str] = "This resource represents the reason for the current state of a VPC peering connection in Amazon Web Services." + kind_description: ClassVar[str] = ( + "This resource represents the reason for the current state of a VPC peering" + " connection in Amazon Web Services." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "message": S("Message")} code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -1915,7 +2135,11 @@ class AwsEc2VpcPeeringConnectionStateReason: class AwsEc2VpcPeeringConnection(EC2Taggable, AwsResource, BasePeeringConnection): kind: ClassVar[str] = "aws_vpc_peering_connection" kind_display: ClassVar[str] = "AWS VPC Peering Connection" - kind_description: ClassVar[str] = "VPC Peering Connection is a networking connection between two Amazon Virtual Private Clouds (VPCs) that enables you to route traffic between them using private IP addresses." + kind_description: ClassVar[str] = ( + "VPC Peering Connection is a networking connection between two Amazon Virtual" + " Private Clouds (VPCs) that enables you to route traffic between them using" + " private IP addresses." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-vpc-peering-connections", "VpcPeeringConnections" ) @@ -1967,7 +2191,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2DnsEntry: kind: ClassVar[str] = "aws_ec2_dns_entry" kind_display: ClassVar[str] = "AWS EC2 DNS Entry" - kind_description: ClassVar[str] = "An EC2 DNS Entry is a domain name assigned to an Amazon EC2 instance, allowing users to access the instance's applications using a human-readable name instead of its IP address." + kind_description: ClassVar[str] = ( + "An EC2 DNS Entry is a domain name assigned to an Amazon EC2 instance," + " allowing users to access the instance's applications using a human-readable" + " name instead of its IP address." + ) mapping: ClassVar[Dict[str, Bender]] = {"dns_name": S("DnsName"), "hosted_zone_id": S("HostedZoneId")} dns_name: Optional[str] = field(default=None) hosted_zone_id: Optional[str] = field(default=None) @@ -1977,7 +2205,11 @@ class AwsEc2DnsEntry: class AwsEc2LastError: kind: ClassVar[str] = "aws_ec2_last_error" kind_display: ClassVar[str] = "AWS EC2 Last Error" - kind_description: ClassVar[str] = "The AWS EC2 Last Error is a description of the last error occurred in relation to an EC2 instance. It helps in troubleshooting and identifying issues with the EC2 instances in Amazon's cloud." + kind_description: ClassVar[str] = ( + "The AWS EC2 Last Error is a description of the last error occurred in" + " relation to an EC2 instance. It helps in troubleshooting and identifying" + " issues with the EC2 instances in Amazon's cloud." + ) mapping: ClassVar[Dict[str, Bender]] = {"message": S("Message"), "code": S("Code")} message: Optional[str] = field(default=None) code: Optional[str] = field(default=None) @@ -1987,7 +2219,11 @@ class AwsEc2LastError: class AwsEc2VpcEndpoint(EC2Taggable, AwsResource, BaseEndpoint): kind: ClassVar[str] = "aws_vpc_endpoint" kind_display: ClassVar[str] = "AWS VPC Endpoint" - kind_description: ClassVar[str] = "VPC Endpoints enable secure and private communication between your VPC and supported AWS services without using public IPs or requiring traffic to traverse the internet." + kind_description: ClassVar[str] = ( + "VPC Endpoints enable secure and private communication between your VPC and" + " supported AWS services without using public IPs or requiring traffic to" + " traverse the internet." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-vpc-endpoints", "VpcEndpoints") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -2075,7 +2311,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2SubnetCidrBlockState: kind: ClassVar[str] = "aws_ec2_subnet_cidr_block_state" kind_display: ClassVar[str] = "AWS EC2 Subnet CIDR Block State" - kind_description: ClassVar[str] = "The state of the CIDR block for a subnet in AWS EC2. It indicates whether the CIDR block is associated with a subnet or not." + kind_description: ClassVar[str] = ( + "The state of the CIDR block for a subnet in AWS EC2. It indicates whether" + " the CIDR block is associated with a subnet or not." + ) mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "status_message": S("StatusMessage")} state: Optional[str] = field(default=None) status_message: Optional[str] = field(default=None) @@ -2085,7 +2324,10 @@ class AwsEc2SubnetCidrBlockState: class AwsEc2SubnetIpv6CidrBlockAssociation: kind: ClassVar[str] = "aws_ec2_subnet_ipv6_cidr_block_association" kind_display: ClassVar[str] = "AWS EC2 Subnet IPv6 CIDR Block Association" - kind_description: ClassVar[str] = "IPv6 CIDR Block Association is used to associate an IPv6 CIDR block with a subnet in Amazon EC2, enabling the subnet to use IPv6 addresses." + kind_description: ClassVar[str] = ( + "IPv6 CIDR Block Association is used to associate an IPv6 CIDR block with a" + " subnet in Amazon EC2, enabling the subnet to use IPv6 addresses." + ) mapping: ClassVar[Dict[str, Bender]] = { "association_id": S("AssociationId"), "ipv6_cidr_block": S("Ipv6CidrBlock"), @@ -2100,7 +2342,10 @@ class AwsEc2SubnetIpv6CidrBlockAssociation: class AwsEc2PrivateDnsNameOptionsOnLaunch: kind: ClassVar[str] = "aws_ec2_private_dns_name_options_on_launch" kind_display: ClassVar[str] = "AWS EC2 Private DNS Name Options on Launch" - kind_description: ClassVar[str] = "The option to enable or disable assigning a private DNS name to an Amazon EC2 instance on launch." + kind_description: ClassVar[str] = ( + "The option to enable or disable assigning a private DNS name to an Amazon" + " EC2 instance on launch." + ) mapping: ClassVar[Dict[str, Bender]] = { "hostname_type": S("HostnameType"), "enable_resource_name_dns_a_record": S("EnableResourceNameDnsARecord"), @@ -2115,7 +2360,11 @@ class AwsEc2PrivateDnsNameOptionsOnLaunch: class AwsEc2Subnet(EC2Taggable, AwsResource, BaseSubnet): kind: ClassVar[str] = "aws_ec2_subnet" kind_display: ClassVar[str] = "AWS EC2 Subnet" - kind_description: ClassVar[str] = "An AWS EC2 Subnet is a logical subdivision of a VPC (Virtual Private Cloud) in Amazon's cloud, allowing users to group resources and control network access within a specific network segment." + kind_description: ClassVar[str] = ( + "An AWS EC2 Subnet is a logical subdivision of a VPC (Virtual Private Cloud)" + " in Amazon's cloud, allowing users to group resources and control network" + " access within a specific network segment." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-subnets", "Subnets") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2188,7 +2437,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2IpRange: kind: ClassVar[str] = "aws_ec2_ip_range" kind_display: ClassVar[str] = "AWS EC2 IP Range" - kind_description: ClassVar[str] = "An IP range in the Amazon EC2 service that is used to define a range of IP addresses available for EC2 instances. It allows users to control inbound and outbound traffic to their virtual servers within the specified IP range." + kind_description: ClassVar[str] = ( + "An IP range in the Amazon EC2 service that is used to define a range of IP" + " addresses available for EC2 instances. It allows users to control inbound" + " and outbound traffic to their virtual servers within the specified IP range." + ) mapping: ClassVar[Dict[str, Bender]] = {"cidr_ip": S("CidrIp"), "description": S("Description")} cidr_ip: Optional[str] = field(default=None) description: Optional[str] = field(default=None) @@ -2198,7 +2451,10 @@ class AwsEc2IpRange: class AwsEc2Ipv6Range: kind: ClassVar[str] = "aws_ec2_ipv6_range" kind_display: ClassVar[str] = "AWS EC2 IPv6 Range" - kind_description: ClassVar[str] = "AWS EC2 IPv6 Range is a range of IPv6 addresses that can be assigned to EC2 instances in the Amazon Web Services cloud." + kind_description: ClassVar[str] = ( + "AWS EC2 IPv6 Range is a range of IPv6 addresses that can be assigned to EC2" + " instances in the Amazon Web Services cloud." + ) mapping: ClassVar[Dict[str, Bender]] = {"cidr_ipv6": S("CidrIpv6"), "description": S("Description")} cidr_ipv6: Optional[str] = field(default=None) description: Optional[str] = field(default=None) @@ -2208,7 +2464,10 @@ class AwsEc2Ipv6Range: class AwsEc2PrefixListId: kind: ClassVar[str] = "aws_ec2_prefix_list_id" kind_display: ClassVar[str] = "AWS EC2 Prefix List ID" - kind_description: ClassVar[str] = "A prefix list is a set of CIDR blocks that can be used as a firewall rule in AWS VPC to allow or deny traffic." + kind_description: ClassVar[str] = ( + "A prefix list is a set of CIDR blocks that can be used as a firewall rule in" + " AWS VPC to allow or deny traffic." + ) mapping: ClassVar[Dict[str, Bender]] = {"description": S("Description"), "prefix_list_id": S("PrefixListId")} description: Optional[str] = field(default=None) prefix_list_id: Optional[str] = field(default=None) @@ -2218,7 +2477,11 @@ class AwsEc2PrefixListId: class AwsEc2UserIdGroupPair: kind: ClassVar[str] = "aws_ec2_user_id_group_pair" kind_display: ClassVar[str] = "AWS EC2 User ID Group Pair" - kind_description: ClassVar[str] = "User ID Group Pair is a configuration in EC2 that associates a user ID with a security group, allowing or denying traffic based on the specified source or destination IP address range." + kind_description: ClassVar[str] = ( + "User ID Group Pair is a configuration in EC2 that associates a user ID with" + " a security group, allowing or denying traffic based on the specified source" + " or destination IP address range." + ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("Description"), "group_id": S("GroupId"), @@ -2241,7 +2504,10 @@ class AwsEc2UserIdGroupPair: class AwsEc2IpPermission: kind: ClassVar[str] = "aws_ec2_ip_permission" kind_display: ClassVar[str] = "AWS EC2 IP Permission" - kind_description: ClassVar[str] = "IP Permission in AWS EC2 allows you to control inbound and outbound traffic to an EC2 instance based on IP addresses." + kind_description: ClassVar[str] = ( + "IP Permission in AWS EC2 allows you to control inbound and outbound traffic" + " to an EC2 instance based on IP addresses." + ) mapping: ClassVar[Dict[str, Bender]] = { "from_port": S("FromPort"), "ip_protocol": S("IpProtocol"), @@ -2264,7 +2530,10 @@ class AwsEc2IpPermission: class AwsEc2SecurityGroup(EC2Taggable, AwsResource, BaseSecurityGroup): kind: ClassVar[str] = "aws_ec2_security_group" kind_display: ClassVar[str] = "AWS EC2 Security Group" - kind_description: ClassVar[str] = "An EC2 Security Group acts as a virtual firewall that controls inbound and outbound traffic for EC2 instances within a VPC." + kind_description: ClassVar[str] = ( + "An EC2 Security Group acts as a virtual firewall that controls inbound and" + " outbound traffic for EC2 instances within a VPC." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-security-groups", "SecurityGroups") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2357,7 +2626,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2NatGatewayAddress: kind: ClassVar[str] = "aws_ec2_nat_gateway_address" kind_display: ClassVar[str] = "AWS EC2 NAT Gateway Address" - kind_description: ClassVar[str] = "The NAT Gateway Address is a public IP address assigned to an AWS EC2 NAT Gateway, which allows instances within a private subnet to communicate with the internet." + kind_description: ClassVar[str] = ( + "The NAT Gateway Address is a public IP address assigned to an AWS EC2 NAT" + " Gateway, which allows instances within a private subnet to communicate with" + " the internet." + ) mapping: ClassVar[Dict[str, Bender]] = { "allocation_id": S("AllocationId"), "network_interface_id": S("NetworkInterfaceId"), @@ -2374,7 +2647,10 @@ class AwsEc2NatGatewayAddress: class AwsEc2ProvisionedBandwidth: kind: ClassVar[str] = "aws_ec2_provisioned_bandwidth" kind_display: ClassVar[str] = "AWS EC2 Provisioned Bandwidth" - kind_description: ClassVar[str] = "EC2 Provisioned Bandwidth refers to the ability to provision high-bandwidth connections between EC2 instances and other AWS services." + kind_description: ClassVar[str] = ( + "EC2 Provisioned Bandwidth refers to the ability to provision high-bandwidth" + " connections between EC2 instances and other AWS services." + ) mapping: ClassVar[Dict[str, Bender]] = { "provision_time": S("ProvisionTime"), "provisioned": S("Provisioned"), @@ -2393,7 +2669,12 @@ class AwsEc2ProvisionedBandwidth: class AwsEc2NatGateway(EC2Taggable, AwsResource, BaseGateway): kind: ClassVar[str] = "aws_ec2_nat_gateway" kind_display: ClassVar[str] = "AWS EC2 NAT Gateway" - kind_description: ClassVar[str] = "A NAT Gateway is a fully managed network address translation (NAT) service provided by Amazon Web Services (AWS) that allows instances within a private subnet to connect outbound to the Internet while also preventing inbound connections from the outside." + kind_description: ClassVar[str] = ( + "A NAT Gateway is a fully managed network address translation (NAT) service" + " provided by Amazon Web Services (AWS) that allows instances within a private" + " subnet to connect outbound to the Internet while also preventing inbound" + " connections from the outside." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-nat-gateways", "NatGateways") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_ec2_network_interface", "aws_vpc", "aws_ec2_subnet"]}, @@ -2449,7 +2730,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2InternetGatewayAttachment: kind: ClassVar[str] = "aws_ec2_internet_gateway_attachment" kind_display: ClassVar[str] = "AWS EC2 Internet Gateway Attachment" - kind_description: ClassVar[str] = "EC2 Internet Gateway Attachment is a resource that represents the attachment of an Internet Gateway to a VPC in Amazon's cloud, enabling outbound internet access for instances in the VPC." + kind_description: ClassVar[str] = ( + "EC2 Internet Gateway Attachment is a resource that represents the attachment" + " of an Internet Gateway to a VPC in Amazon's cloud, enabling outbound" + " internet access for instances in the VPC." + ) mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "vpc_id": S("VpcId")} state: Optional[str] = field(default=None) vpc_id: Optional[str] = field(default=None) @@ -2459,7 +2744,11 @@ class AwsEc2InternetGatewayAttachment: class AwsEc2InternetGateway(EC2Taggable, AwsResource, BaseGateway): kind: ClassVar[str] = "aws_ec2_internet_gateway" kind_display: ClassVar[str] = "AWS EC2 Internet Gateway" - kind_description: ClassVar[str] = "An Internet Gateway is a horizontally scalable, redundant, and highly available VPC component that allows communication between instances in your VPC and the internet." + kind_description: ClassVar[str] = ( + "An Internet Gateway is a horizontally scalable, redundant, and highly" + " available VPC component that allows communication between instances in your" + " VPC and the internet." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-internet-gateways", "InternetGateways") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2519,7 +2808,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2RouteTableAssociationState: kind: ClassVar[str] = "aws_ec2_route_table_association_state" kind_display: ClassVar[str] = "AWS EC2 Route Table Association State" - kind_description: ClassVar[str] = "Route Table Association State represents the state of association between a subnet and a route table in Amazon EC2." + kind_description: ClassVar[str] = ( + "Route Table Association State represents the state of association between a" + " subnet and a route table in Amazon EC2." + ) mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "status_message": S("StatusMessage")} state: Optional[str] = field(default=None) status_message: Optional[str] = field(default=None) @@ -2529,7 +2821,11 @@ class AwsEc2RouteTableAssociationState: class AwsEc2RouteTableAssociation: kind: ClassVar[str] = "aws_ec2_route_table_association" kind_display: ClassVar[str] = "AWS EC2 Route Table Association" - kind_description: ClassVar[str] = "A Route Table Association is used to associate a route table with a subnet in Amazon EC2, allowing for traffic routing within the virtual private cloud (VPC)" + kind_description: ClassVar[str] = ( + "A Route Table Association is used to associate a route table with a subnet" + " in Amazon EC2, allowing for traffic routing within the virtual private cloud" + " (VPC)" + ) mapping: ClassVar[Dict[str, Bender]] = { "main": S("Main"), "route_table_association_id": S("RouteTableAssociationId"), @@ -2550,7 +2846,11 @@ class AwsEc2RouteTableAssociation: class AwsEc2Route: kind: ClassVar[str] = "aws_ec2_route" kind_display: ClassVar[str] = "AWS EC2 Route" - kind_description: ClassVar[str] = "Routes in AWS EC2 are used to direct network traffic from one subnet to another, allowing communication between different instances and networks within the Amazon EC2 service." + kind_description: ClassVar[str] = ( + "Routes in AWS EC2 are used to direct network traffic from one subnet to" + " another, allowing communication between different instances and networks" + " within the Amazon EC2 service." + ) mapping: ClassVar[Dict[str, Bender]] = { "destination_cidr_block": S("DestinationCidrBlock"), "destination_ipv6_cidr_block": S("DestinationIpv6CidrBlock"), @@ -2591,7 +2891,10 @@ class AwsEc2Route: class AwsEc2RouteTable(EC2Taggable, AwsResource, BaseRoutingTable): kind: ClassVar[str] = "aws_ec2_route_table" kind_display: ClassVar[str] = "AWS EC2 Route Table" - kind_description: ClassVar[str] = "EC2 Route Tables are used to determine where network traffic is directed within a Virtual Private Cloud (VPC) in Amazon's cloud infrastructure." + kind_description: ClassVar[str] = ( + "EC2 Route Tables are used to determine where network traffic is directed" + " within a Virtual Private Cloud (VPC) in Amazon's cloud infrastructure." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-route-tables", "RouteTables") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_vpc"], "delete": ["aws_vpc"]}, @@ -2652,7 +2955,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2InstanceCapacity: kind: ClassVar[str] = "aws_ec2_instance_capacity" kind_display: ClassVar[str] = "AWS EC2 Instance Capacity" - kind_description: ClassVar[str] = "AWS EC2 Instance Capacity refers to the amount of computing power, expressed in terms of CPU, memory, and networking resources, that an EC2 instance can provide to run applications in the Amazon Web Services cloud." + kind_description: ClassVar[str] = ( + "AWS EC2 Instance Capacity refers to the amount of computing power, expressed" + " in terms of CPU, memory, and networking resources, that an EC2 instance can" + " provide to run applications in the Amazon Web Services cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "available_capacity": S("AvailableCapacity"), "instance_type": S("InstanceType"), @@ -2667,7 +2974,11 @@ class AwsEc2InstanceCapacity: class AwsEc2AvailableCapacity: kind: ClassVar[str] = "aws_ec2_available_capacity" kind_display: ClassVar[str] = "AWS EC2 Available Capacity" - kind_description: ClassVar[str] = "The available capacity refers to the amount of resources (such as CPU, memory, and storage) that are currently available for new EC2 instances to be launched in the Amazon Web Services infrastructure." + kind_description: ClassVar[str] = ( + "The available capacity refers to the amount of resources (such as CPU," + " memory, and storage) that are currently available for new EC2 instances to" + " be launched in the Amazon Web Services infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "available_instance_capacity": S("AvailableInstanceCapacity", default=[]) >> ForallBend(AwsEc2InstanceCapacity.mapping), @@ -2681,7 +2992,10 @@ class AwsEc2AvailableCapacity: class AwsEc2HostProperties: kind: ClassVar[str] = "aws_ec2_host_properties" kind_display: ClassVar[str] = "AWS EC2 Host Properties" - kind_description: ClassVar[str] = "EC2 Host Properties provide detailed information and configuration options for the physical hosts within the Amazon EC2 infrastructure." + kind_description: ClassVar[str] = ( + "EC2 Host Properties provide detailed information and configuration options" + " for the physical hosts within the Amazon EC2 infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "cores": S("Cores"), "instance_type": S("InstanceType"), @@ -2700,7 +3014,12 @@ class AwsEc2HostProperties: class AwsEc2HostInstance: kind: ClassVar[str] = "aws_ec2_host_instance" kind_display: ClassVar[str] = "AWS EC2 Host Instance" - kind_description: ClassVar[str] = "EC2 Host Instances are physical servers in Amazon's cloud that are dedicated to hosting EC2 instances, providing you with more control over your infrastructure and allowing you to easily manage your own host-level resources." + kind_description: ClassVar[str] = ( + "EC2 Host Instances are physical servers in Amazon's cloud that are dedicated" + " to hosting EC2 instances, providing you with more control over your" + " infrastructure and allowing you to easily manage your own host-level" + " resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_id": S("InstanceId"), "instance_type": S("InstanceType"), @@ -2715,7 +3034,10 @@ class AwsEc2HostInstance: class AwsEc2Host(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_host" kind_display: ClassVar[str] = "AWS EC2 Host" - kind_description: ClassVar[str] = "EC2 Hosts are physical servers in Amazon's cloud that are used to run EC2 instances." + kind_description: ClassVar[str] = ( + "EC2 Hosts are physical servers in Amazon's cloud that are used to run EC2" + " instances." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-hosts", "Hosts") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_ec2_instance"], "delete": ["aws_ec2_instance"]} @@ -2785,7 +3107,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2DestinationOption: kind: ClassVar[str] = "aws_ec2_destination_option" kind_display: ClassVar[str] = "AWS EC2 Destination Option" - kind_description: ClassVar[str] = "EC2 Destination Options allow users to specify the destinations for traffic within a VPC, providing flexibility and control over network traffic flows." + kind_description: ClassVar[str] = ( + "EC2 Destination Options allow users to specify the destinations for traffic" + " within a VPC, providing flexibility and control over network traffic flows." + ) mapping: ClassVar[Dict[str, Bender]] = { "file_format": S("FileFormat"), "hive_compatible_partitions": S("HiveCompatiblePartitions"), @@ -2805,7 +3130,11 @@ class AwsEc2DestinationOption: class AwsEc2FlowLog(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_flow_log" kind_display: ClassVar[str] = "AWS EC2 Flow Log" - kind_description: ClassVar[str] = "EC2 Flow Logs capture information about the IP traffic going to and from network interfaces in an Amazon EC2 instance, helping to troubleshoot network connectivity issues." + kind_description: ClassVar[str] = ( + "EC2 Flow Logs capture information about the IP traffic going to and from" + " network interfaces in an Amazon EC2 instance, helping to troubleshoot" + " network connectivity issues." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-flow-logs", "FlowLogs") mapping: ClassVar[Dict[str, Bender]] = { "id": S("FlowLogId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/ecs.py b/plugins/aws/resoto_plugin_aws/resource/ecs.py index ee21d9dd29..68dd4df975 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ecs.py +++ b/plugins/aws/resoto_plugin_aws/resource/ecs.py @@ -60,7 +60,11 @@ def service_name(cls) -> str: class AwsEcsManagedScaling: kind: ClassVar[str] = "aws_ecs_managed_scaling" kind_display: ClassVar[str] = "AWS ECS Managed Scaling" - kind_description: ClassVar[str] = "ECS Managed Scaling is a feature of Amazon Elastic Container Service (ECS) that automatically adjusts the number of running tasks in an ECS service based on demand or a specified scaling policy." + kind_description: ClassVar[str] = ( + "ECS Managed Scaling is a feature of Amazon Elastic Container Service (ECS)" + " that automatically adjusts the number of running tasks in an ECS service" + " based on demand or a specified scaling policy." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("status"), "target_capacity": S("targetCapacity"), @@ -79,7 +83,11 @@ class AwsEcsManagedScaling: class AwsEcsAutoScalingGroupProvider: kind: ClassVar[str] = "aws_ecs_auto_scaling_group_provider" kind_display: ClassVar[str] = "AWS ECS Auto Scaling Group Provider" - kind_description: ClassVar[str] = "ECS Auto Scaling Group Provider is a service in AWS that allows for automatic scaling of a containerized application deployed on Amazon ECS (Elastic Container Service) using Auto Scaling Groups." + kind_description: ClassVar[str] = ( + "ECS Auto Scaling Group Provider is a service in AWS that allows for" + " automatic scaling of a containerized application deployed on Amazon ECS" + " (Elastic Container Service) using Auto Scaling Groups." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_group_arn": S("autoScalingGroupArn"), "managed_scaling": S("managedScaling") >> Bend(AwsEcsManagedScaling.mapping), @@ -95,7 +103,10 @@ class AwsEcsCapacityProvider(EcsTaggable, AwsResource): # collection of capacity provider resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_capacity_provider" kind_display: ClassVar[str] = "AWS ECS Capacity Provider" - kind_description: ClassVar[str] = "ECS Capacity Providers are used in Amazon's Elastic Container Service to manage the capacity and scaling for containerized applications." + kind_description: ClassVar[str] = ( + "ECS Capacity Providers are used in Amazon's Elastic Container Service to" + " manage the capacity and scaling for containerized applications." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_autoscaling_group"]}, "successors": {"default": ["aws_autoscaling_group"]}, @@ -150,7 +161,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEcsKeyValuePair: kind: ClassVar[str] = "aws_ecs_key_value_pair" kind_display: ClassVar[str] = "AWS ECS Key Value Pair" - kind_description: ClassVar[str] = "A key value pair is a simple data structure used in AWS ECS (Elastic Container Service) to store and manage the metadata associated with containers." + kind_description: ClassVar[str] = ( + "A key value pair is a simple data structure used in AWS ECS (Elastic" + " Container Service) to store and manage the metadata associated with" + " containers." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -160,7 +175,11 @@ class AwsEcsKeyValuePair: class AwsEcsAttachment: kind: ClassVar[str] = "aws_ecs_attachment" kind_display: ClassVar[str] = "AWS ECS Attachment" - kind_description: ClassVar[str] = "ECS Attachments are links between ECS tasks and Elastic Network Interfaces (ENIs) that enable containerized applications running in the ECS service to communicate with other resources within a Virtual Private Cloud (VPC)." + kind_description: ClassVar[str] = ( + "ECS Attachments are links between ECS tasks and Elastic Network Interfaces" + " (ENIs) that enable containerized applications running in the ECS service to" + " communicate with other resources within a Virtual Private Cloud (VPC)." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "type": S("type"), @@ -177,7 +196,11 @@ class AwsEcsAttachment: class AwsEcsAttribute: kind: ClassVar[str] = "aws_ecs_attribute" kind_display: ClassVar[str] = "AWS ECS Attribute" - kind_description: ClassVar[str] = "ECS (Elastic Container Service) Attribute is a key-value pair that can be assigned to a specific ECS resource, such as a task definition or a service, to provide additional information or configuration settings." + kind_description: ClassVar[str] = ( + "ECS (Elastic Container Service) Attribute is a key-value pair that can be" + " assigned to a specific ECS resource, such as a task definition or a service," + " to provide additional information or configuration settings." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "value": S("value"), @@ -194,7 +217,11 @@ class AwsEcsAttribute: class AwsEcsNetworkBinding: kind: ClassVar[str] = "aws_ecs_network_binding" kind_display: ClassVar[str] = "AWS ECS Network Binding" - kind_description: ClassVar[str] = "ECS network binding is a service in Amazon's Elastic Container Service that allows containers within a task to communicate with each other and external services securely." + kind_description: ClassVar[str] = ( + "ECS network binding is a service in Amazon's Elastic Container Service that" + " allows containers within a task to communicate with each other and external" + " services securely." + ) mapping: ClassVar[Dict[str, Bender]] = { "bind_ip": S("bindIP"), "container_port": S("containerPort"), @@ -211,7 +238,11 @@ class AwsEcsNetworkBinding: class AwsEcsNetworkInterface: kind: ClassVar[str] = "aws_ecs_network_interface" kind_display: ClassVar[str] = "AWS ECS Network Interface" - kind_description: ClassVar[str] = "ECS Network Interface is a networking component used by the Amazon Elastic Container Service (ECS) to connect containers to network resources within the AWS cloud." + kind_description: ClassVar[str] = ( + "ECS Network Interface is a networking component used by the Amazon Elastic" + " Container Service (ECS) to connect containers to network resources within" + " the AWS cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "attachment_id": S("attachmentId"), "private_ipv4_address": S("privateIpv4Address"), @@ -226,7 +257,11 @@ class AwsEcsNetworkInterface: class AwsEcsManagedAgent: kind: ClassVar[str] = "aws_ecs_managed_agent" kind_display: ClassVar[str] = "AWS ECS Managed Agent" - kind_description: ClassVar[str] = "The AWS ECS Managed Agent is a component of Amazon Elastic Container Service (ECS) that runs on each EC2 instance in an ECS cluster and manages the lifecycle of tasks and container instances." + kind_description: ClassVar[str] = ( + "The AWS ECS Managed Agent is a component of Amazon Elastic Container Service" + " (ECS) that runs on each EC2 instance in an ECS cluster and manages the" + " lifecycle of tasks and container instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_started_at": S("lastStartedAt"), "name": S("name"), @@ -243,7 +278,11 @@ class AwsEcsManagedAgent: class AwsEcsContainer: kind: ClassVar[str] = "aws_ecs_container" kind_display: ClassVar[str] = "AWS ECS Container" - kind_description: ClassVar[str] = "ECS Containers are a lightweight and portable way to package, deploy, and run applications in a highly scalable and managed container environment provided by Amazon Elastic Container Service (ECS)." + kind_description: ClassVar[str] = ( + "ECS Containers are a lightweight and portable way to package, deploy, and" + " run applications in a highly scalable and managed container environment" + " provided by Amazon Elastic Container Service (ECS)." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_arn": S("containerArn"), "task_arn": S("taskArn"), @@ -286,7 +325,11 @@ class AwsEcsContainer: class AwsEcsInferenceAccelerator: kind: ClassVar[str] = "aws_ecs_inference_accelerator" kind_display: ClassVar[str] = "AWS ECS Inference Accelerator" - kind_description: ClassVar[str] = "ECS Inference Accelerators are resources used by Amazon ECS to accelerate deep learning inference workloads, improving performance and reducing latency." + kind_description: ClassVar[str] = ( + "ECS Inference Accelerators are resources used by Amazon ECS to accelerate" + " deep learning inference workloads, improving performance and reducing" + " latency." + ) mapping: ClassVar[Dict[str, Bender]] = {"device_name": S("deviceName"), "device_type": S("deviceType")} device_name: Optional[str] = field(default=None) device_type: Optional[str] = field(default=None) @@ -296,7 +339,11 @@ class AwsEcsInferenceAccelerator: class AwsEcsEnvironmentFile: kind: ClassVar[str] = "aws_ecs_environment_file" kind_display: ClassVar[str] = "AWS ECS Environment File" - kind_description: ClassVar[str] = "ECS Environment Files are used to store environment variables for containers in Amazon Elastic Container Service (ECS), allowing users to easily manage and configure these variables for their applications." + kind_description: ClassVar[str] = ( + "ECS Environment Files are used to store environment variables for containers" + " in Amazon Elastic Container Service (ECS), allowing users to easily manage" + " and configure these variables for their applications." + ) mapping: ClassVar[Dict[str, Bender]] = {"value": S("value"), "type": S("type")} value: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -306,7 +353,10 @@ class AwsEcsEnvironmentFile: class AwsEcsResourceRequirement: kind: ClassVar[str] = "aws_ecs_resource_requirement" kind_display: ClassVar[str] = "AWS ECS Resource Requirement" - kind_description: ClassVar[str] = "Resource requirements for running containerized applications on Amazon Elastic Container Service (ECS), including CPU and memory allocation." + kind_description: ClassVar[str] = ( + "Resource requirements for running containerized applications on Amazon" + " Elastic Container Service (ECS), including CPU and memory allocation." + ) mapping: ClassVar[Dict[str, Bender]] = {"value": S("value"), "type": S("type")} value: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -316,7 +366,11 @@ class AwsEcsResourceRequirement: class AwsEcsContainerOverride: kind: ClassVar[str] = "aws_ecs_container_override" kind_display: ClassVar[str] = "AWS ECS Container Override" - kind_description: ClassVar[str] = "ECS Container Overrides allow users to override the default values of container instance attributes defined in a task definition for a specific task run." + kind_description: ClassVar[str] = ( + "ECS Container Overrides allow users to override the default values of" + " container instance attributes defined in a task definition for a specific" + " task run." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "command": S("command", default=[]), @@ -341,7 +395,10 @@ class AwsEcsContainerOverride: class AwsEcsTaskOverride: kind: ClassVar[str] = "aws_ecs_task_override" kind_display: ClassVar[str] = "AWS ECS Task Override" - kind_description: ClassVar[str] = "ECS Task Overrides allow you to change the default values of a task definition when running an ECS task." + kind_description: ClassVar[str] = ( + "ECS Task Overrides allow you to change the default values of a task" + " definition when running an ECS task." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_overrides": S("containerOverrides", default=[]) >> ForallBend(AwsEcsContainerOverride.mapping), "cpu": S("cpu"), @@ -366,7 +423,10 @@ class AwsEcsTask(EcsTaggable, AwsResource): # collection of task resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_task" kind_display: ClassVar[str] = "AWS ECS Task" - kind_description: ClassVar[str] = "ECS Tasks are containers managed by Amazon Elastic Container Service, which allow users to run and scale applications easily using Docker containers." + kind_description: ClassVar[str] = ( + "ECS Tasks are containers managed by Amazon Elastic Container Service, which" + " allow users to run and scale applications easily using Docker containers." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ecs_task_definition"], @@ -487,7 +547,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEcsPortMapping: kind: ClassVar[str] = "aws_ecs_port_mapping" kind_display: ClassVar[str] = "AWS ECS Port Mapping" - kind_description: ClassVar[str] = "Port mapping in Amazon Elastic Container Service (ECS) allows containers running within a task to receive inbound traffic on specified port numbers." + kind_description: ClassVar[str] = ( + "Port mapping in Amazon Elastic Container Service (ECS) allows containers" + " running within a task to receive inbound traffic on specified port numbers." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_port": S("containerPort"), "host_port": S("hostPort"), @@ -502,7 +565,10 @@ class AwsEcsPortMapping: class AwsEcsMountPoint: kind: ClassVar[str] = "aws_ecs_mount_point" kind_display: ClassVar[str] = "AWS ECS Mount Point" - kind_description: ClassVar[str] = "ECS Mount Points are used in Amazon EC2 Container Service to attach persistent storage volumes to containers in a task definition." + kind_description: ClassVar[str] = ( + "ECS Mount Points are used in Amazon EC2 Container Service to attach" + " persistent storage volumes to containers in a task definition." + ) mapping: ClassVar[Dict[str, Bender]] = { "source_volume": S("sourceVolume"), "container_path": S("containerPath"), @@ -517,7 +583,11 @@ class AwsEcsMountPoint: class AwsEcsVolumeFrom: kind: ClassVar[str] = "aws_ecs_volume_from" kind_display: ClassVar[str] = "AWS ECS Volume From" - kind_description: ClassVar[str] = "Volume From is a feature in Amazon Elastic Container Service (ECS) that allows a container to access the contents of another container's mounted volumes." + kind_description: ClassVar[str] = ( + "Volume From is a feature in Amazon Elastic Container Service (ECS) that" + " allows a container to access the contents of another container's mounted" + " volumes." + ) mapping: ClassVar[Dict[str, Bender]] = {"source_container": S("sourceContainer"), "read_only": S("readOnly")} source_container: Optional[str] = field(default=None) read_only: Optional[bool] = field(default=None) @@ -527,7 +597,11 @@ class AwsEcsVolumeFrom: class AwsEcsKernelCapabilities: kind: ClassVar[str] = "aws_ecs_kernel_capabilities" kind_display: ClassVar[str] = "AWS ECS Kernel Capabilities" - kind_description: ClassVar[str] = "Kernel capabilities allow fine-grained control over privileged operations, such as modifying network settings or accessing hardware resources, for tasks running in Amazon ECS." + kind_description: ClassVar[str] = ( + "Kernel capabilities allow fine-grained control over privileged operations," + " such as modifying network settings or accessing hardware resources, for" + " tasks running in Amazon ECS." + ) mapping: ClassVar[Dict[str, Bender]] = {"add": S("add", default=[]), "drop": S("drop", default=[])} add: List[str] = field(factory=list) drop: List[str] = field(factory=list) @@ -537,7 +611,11 @@ class AwsEcsKernelCapabilities: class AwsEcsDevice: kind: ClassVar[str] = "aws_ecs_device" kind_display: ClassVar[str] = "AWS ECS Device" - kind_description: ClassVar[str] = "ECS Device refers to a device connected to Amazon Elastic Container Service, which is a container management service that allows you to easily run and scale containerized applications." + kind_description: ClassVar[str] = ( + "ECS Device refers to a device connected to Amazon Elastic Container Service," + " which is a container management service that allows you to easily run and" + " scale containerized applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "host_path": S("hostPath"), "container_path": S("containerPath"), @@ -552,7 +630,12 @@ class AwsEcsDevice: class AwsEcsTmpfs: kind: ClassVar[str] = "aws_ecs_tmpfs" kind_display: ClassVar[str] = "AWS ECS Tmpfs" - kind_description: ClassVar[str] = "Tmpfs is a temporary file storage system in AWS Elastic Container Service (ECS) that can be mounted as a memory-backed file system for containers. It provides fast and volatile storage for temporary files during container runtime." + kind_description: ClassVar[str] = ( + "Tmpfs is a temporary file storage system in AWS Elastic Container Service" + " (ECS) that can be mounted as a memory-backed file system for containers. It" + " provides fast and volatile storage for temporary files during container" + " runtime." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_path": S("containerPath"), "size": S("size"), @@ -567,7 +650,11 @@ class AwsEcsTmpfs: class AwsEcsLinuxParameters: kind: ClassVar[str] = "aws_ecs_linux_parameters" kind_display: ClassVar[str] = "AWS ECS Linux Parameters" - kind_description: ClassVar[str] = "ECS Linux Parameters are configuration settings for Amazon Elastic Container Service (ECS) that enable you to modify container behavior on Linux instances within an ECS cluster." + kind_description: ClassVar[str] = ( + "ECS Linux Parameters are configuration settings for Amazon Elastic Container" + " Service (ECS) that enable you to modify container behavior on Linux" + " instances within an ECS cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "capabilities": S("capabilities") >> Bend(AwsEcsKernelCapabilities.mapping), "devices": S("devices", default=[]) >> ForallBend(AwsEcsDevice.mapping), @@ -590,7 +677,11 @@ class AwsEcsLinuxParameters: class AwsEcsSecret: kind: ClassVar[str] = "aws_ecs_secret" kind_display: ClassVar[str] = "AWS ECS Secret" - kind_description: ClassVar[str] = "ECS Secrets provide a secure way to store and manage sensitive information, such as database credentials or API keys, for use by applications running on AWS Elastic Container Service." + kind_description: ClassVar[str] = ( + "ECS Secrets provide a secure way to store and manage sensitive information," + " such as database credentials or API keys, for use by applications running on" + " AWS Elastic Container Service." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value_from": S("valueFrom")} name: Optional[str] = field(default=None) value_from: Optional[str] = field(default=None) @@ -600,7 +691,12 @@ class AwsEcsSecret: class AwsEcsContainerDependency: kind: ClassVar[str] = "aws_ecs_container_dependency" kind_display: ClassVar[str] = "AWS ECS Container Dependency" - kind_description: ClassVar[str] = "ECS Container Dependency is a feature in AWS ECS (Elastic Container Service) that allows you to define dependencies between containers within a task definition to ensure proper sequencing and synchronization of container startup and shutdown." + kind_description: ClassVar[str] = ( + "ECS Container Dependency is a feature in AWS ECS (Elastic Container Service)" + " that allows you to define dependencies between containers within a task" + " definition to ensure proper sequencing and synchronization of container" + " startup and shutdown." + ) mapping: ClassVar[Dict[str, Bender]] = {"container_name": S("containerName"), "condition": S("condition")} container_name: Optional[str] = field(default=None) condition: Optional[str] = field(default=None) @@ -610,7 +706,11 @@ class AwsEcsContainerDependency: class AwsEcsHostEntry: kind: ClassVar[str] = "aws_ecs_host_entry" kind_display: ClassVar[str] = "AWS ECS Host Entry" - kind_description: ClassVar[str] = "ECS Host Entries are configurations that specify the IP address and hostname of a registered container instance in Amazon Elastic Container Service (ECS)." + kind_description: ClassVar[str] = ( + "ECS Host Entries are configurations that specify the IP address and hostname" + " of a registered container instance in Amazon Elastic Container Service" + " (ECS)." + ) mapping: ClassVar[Dict[str, Bender]] = {"hostname": S("hostname"), "ip_address": S("ipAddress")} hostname: Optional[str] = field(default=None) ip_address: Optional[str] = field(default=None) @@ -620,7 +720,12 @@ class AwsEcsHostEntry: class AwsEcsUlimit: kind: ClassVar[str] = "aws_ecs_ulimit" kind_display: ClassVar[str] = "AWS ECS Ulimit" - kind_description: ClassVar[str] = "ECS Ulimit is a resource limit configuration for Amazon Elastic Container Service (ECS) tasks, which allows users to set specific limits on various system resources such as the number of open files or maximum memory usage for each container." + kind_description: ClassVar[str] = ( + "ECS Ulimit is a resource limit configuration for Amazon Elastic Container" + " Service (ECS) tasks, which allows users to set specific limits on various" + " system resources such as the number of open files or maximum memory usage" + " for each container." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "soft_limit": S("softLimit"), @@ -635,7 +740,11 @@ class AwsEcsUlimit: class AwsEcsLogConfiguration: kind: ClassVar[str] = "aws_ecs_log_configuration" kind_display: ClassVar[str] = "AWS ECS Log Configuration" - kind_description: ClassVar[str] = "ECS Log Configuration is a feature of Amazon Elastic Container Service that allows you to configure logging for your containerized applications and view the logs in various destinations such as CloudWatch Logs or Amazon S3." + kind_description: ClassVar[str] = ( + "ECS Log Configuration is a feature of Amazon Elastic Container Service that" + " allows you to configure logging for your containerized applications and view" + " the logs in various destinations such as CloudWatch Logs or Amazon S3." + ) mapping: ClassVar[Dict[str, Bender]] = { "log_driver": S("logDriver"), "options": S("options"), @@ -650,7 +759,11 @@ class AwsEcsLogConfiguration: class AwsEcsHealthCheck: kind: ClassVar[str] = "aws_ecs_health_check" kind_display: ClassVar[str] = "AWS ECS Health Check" - kind_description: ClassVar[str] = "ECS Health Check is a feature of Amazon Elastic Container Service (ECS) that allows you to monitor the health of your containers by conducting periodic health checks and reporting the results." + kind_description: ClassVar[str] = ( + "ECS Health Check is a feature of Amazon Elastic Container Service (ECS) that" + " allows you to monitor the health of your containers by conducting periodic" + " health checks and reporting the results." + ) mapping: ClassVar[Dict[str, Bender]] = { "command": S("command", default=[]), "interval": S("interval"), @@ -669,7 +782,11 @@ class AwsEcsHealthCheck: class AwsEcsSystemControl: kind: ClassVar[str] = "aws_ecs_system_control" kind_display: ClassVar[str] = "AWS ECS System Control" - kind_description: ClassVar[str] = "ECS System Control is a service in AWS ECS (Elastic Container Service) that allows users to manage and control the deployment of containers on a cloud environment." + kind_description: ClassVar[str] = ( + "ECS System Control is a service in AWS ECS (Elastic Container Service) that" + " allows users to manage and control the deployment of containers on a cloud" + " environment." + ) mapping: ClassVar[Dict[str, Bender]] = {"namespace": S("namespace"), "value": S("value")} namespace: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -679,7 +796,11 @@ class AwsEcsSystemControl: class AwsEcsFirelensConfiguration: kind: ClassVar[str] = "aws_ecs_firelens_configuration" kind_display: ClassVar[str] = "AWS ECS FireLens Configuration" - kind_description: ClassVar[str] = "AWS ECS FireLens Configuration is a feature of Amazon Elastic Container Service (ECS) that allows you to collect, process, and route logs from your containers to different storage and analytics services." + kind_description: ClassVar[str] = ( + "AWS ECS FireLens Configuration is a feature of Amazon Elastic Container" + " Service (ECS) that allows you to collect, process, and route logs from your" + " containers to different storage and analytics services." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "options": S("options")} type: Optional[str] = field(default=None) options: Optional[Dict[str, str]] = field(default=None) @@ -689,7 +810,12 @@ class AwsEcsFirelensConfiguration: class AwsEcsContainerDefinition: kind: ClassVar[str] = "aws_ecs_container_definition" kind_display: ClassVar[str] = "AWS ECS Container Definition" - kind_description: ClassVar[str] = "ECS Container Definition is a configuration that defines how a container should be run within an Amazon ECS cluster. It includes details such as image, CPU and memory resources, environment variables, and networking settings." + kind_description: ClassVar[str] = ( + "ECS Container Definition is a configuration that defines how a container" + " should be run within an Amazon ECS cluster. It includes details such as" + " image, CPU and memory resources, environment variables, and networking" + " settings." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "image": S("image"), @@ -776,7 +902,11 @@ class AwsEcsContainerDefinition: class AwsEcsDockerVolumeConfiguration: kind: ClassVar[str] = "aws_ecs_docker_volume_configuration" kind_display: ClassVar[str] = "AWS ECS Docker Volume Configuration" - kind_description: ClassVar[str] = "ECS Docker Volume Configuration is a feature in Amazon ECS (Elastic Container Service) that allows you to specify how Docker volumes should be configured for containers running in an ECS cluster." + kind_description: ClassVar[str] = ( + "ECS Docker Volume Configuration is a feature in Amazon ECS (Elastic" + " Container Service) that allows you to specify how Docker volumes should be" + " configured for containers running in an ECS cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "scope": S("scope"), "autoprovision": S("autoprovision"), @@ -795,7 +925,11 @@ class AwsEcsDockerVolumeConfiguration: class AwsEcsEFSAuthorizationConfig: kind: ClassVar[str] = "aws_ecs_efs_authorization_config" kind_display: ClassVar[str] = "AWS ECS EFS Authorization Config" - kind_description: ClassVar[str] = "ECS EFS Authorization Config is a feature in AWS ECS (Elastic Container Service) that allows fine-grained permission control for using Amazon EFS (Elastic File System) with ECS tasks." + kind_description: ClassVar[str] = ( + "ECS EFS Authorization Config is a feature in AWS ECS (Elastic Container" + " Service) that allows fine-grained permission control for using Amazon EFS" + " (Elastic File System) with ECS tasks." + ) mapping: ClassVar[Dict[str, Bender]] = {"access_point_id": S("accessPointId"), "iam": S("iam")} access_point_id: Optional[str] = field(default=None) iam: Optional[str] = field(default=None) @@ -805,7 +939,11 @@ class AwsEcsEFSAuthorizationConfig: class AwsEcsEFSVolumeConfiguration: kind: ClassVar[str] = "aws_ecs_efs_volume_configuration" kind_display: ClassVar[str] = "AWS ECS EFS Volume Configuration" - kind_description: ClassVar[str] = "ECS EFS Volume Configuration is a feature in AWS Elastic Container Service (ECS) that allows you to configure volumes using Amazon Elastic File System (EFS) for storing persistent data in containers." + kind_description: ClassVar[str] = ( + "ECS EFS Volume Configuration is a feature in AWS Elastic Container Service" + " (ECS) that allows you to configure volumes using Amazon Elastic File System" + " (EFS) for storing persistent data in containers." + ) mapping: ClassVar[Dict[str, Bender]] = { "file_system_id": S("fileSystemId"), "root_directory": S("rootDirectory"), @@ -824,7 +962,11 @@ class AwsEcsEFSVolumeConfiguration: class AwsEcsFSxWindowsFileServerAuthorizationConfig: kind: ClassVar[str] = "aws_ecs_f_sx_windows_file_server_authorization_config" kind_display: ClassVar[str] = "AWS ECS FSx Windows File Server Authorization Config" - kind_description: ClassVar[str] = "ECS FSx Windows File Server Authorization Config is a configuration resource in AWS Elastic Container Service (ECS) that allows secure access to an FSx for Windows File Server from ECS tasks running on Amazon EC2 instances." + kind_description: ClassVar[str] = ( + "ECS FSx Windows File Server Authorization Config is a configuration resource" + " in AWS Elastic Container Service (ECS) that allows secure access to an FSx" + " for Windows File Server from ECS tasks running on Amazon EC2 instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"credentials_parameter": S("credentialsParameter"), "domain": S("domain")} credentials_parameter: Optional[str] = field(default=None) domain: Optional[str] = field(default=None) @@ -834,7 +976,11 @@ class AwsEcsFSxWindowsFileServerAuthorizationConfig: class AwsEcsFSxWindowsFileServerVolumeConfiguration: kind: ClassVar[str] = "aws_ecs_f_sx_windows_file_server_volume_configuration" kind_display: ClassVar[str] = "AWS ECS FSx Windows File Server Volume Configuration" - kind_description: ClassVar[str] = "FSx Windows File Server Volume Configuration provides persistent and scalable storage for ECS tasks running on Windows instances in Amazon's cloud." + kind_description: ClassVar[str] = ( + "FSx Windows File Server Volume Configuration provides persistent and" + " scalable storage for ECS tasks running on Windows instances in Amazon's" + " cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "file_system_id": S("fileSystemId"), "root_directory": S("rootDirectory"), @@ -849,7 +995,11 @@ class AwsEcsFSxWindowsFileServerVolumeConfiguration: class AwsEcsVolume: kind: ClassVar[str] = "aws_ecs_volume" kind_display: ClassVar[str] = "AWS ECS Volume" - kind_description: ClassVar[str] = "ECS Volumes are persistent block storage devices that can be attached to Amazon ECS containers, providing data storage for applications running on the Amazon Elastic Container Service." + kind_description: ClassVar[str] = ( + "ECS Volumes are persistent block storage devices that can be attached to" + " Amazon ECS containers, providing data storage for applications running on" + " the Amazon Elastic Container Service." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "host": S("host", "sourcePath"), @@ -871,7 +1021,11 @@ class AwsEcsVolume: class AwsEcsTaskDefinitionPlacementConstraint: kind: ClassVar[str] = "aws_ecs_task_definition_placement_constraint" kind_display: ClassVar[str] = "AWS ECS Task Definition Placement Constraint" - kind_description: ClassVar[str] = "ECS Task Definition Placement Constraints are rules that specify the placement of tasks within an Amazon ECS cluster based on resource requirements or custom expressions." + kind_description: ClassVar[str] = ( + "ECS Task Definition Placement Constraints are rules that specify the" + " placement of tasks within an Amazon ECS cluster based on resource" + " requirements or custom expressions." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "expression": S("expression")} type: Optional[str] = field(default=None) expression: Optional[str] = field(default=None) @@ -881,7 +1035,11 @@ class AwsEcsTaskDefinitionPlacementConstraint: class AwsEcsRuntimePlatform: kind: ClassVar[str] = "aws_ecs_runtime_platform" kind_display: ClassVar[str] = "AWS ECS Runtime Platform" - kind_description: ClassVar[str] = "The AWS ECS Runtime Platform is a container management service provided by Amazon Web Services, allowing users to easily run and scale containerized applications on AWS." + kind_description: ClassVar[str] = ( + "The AWS ECS Runtime Platform is a container management service provided by" + " Amazon Web Services, allowing users to easily run and scale containerized" + " applications on AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "cpu_architecture": S("cpuArchitecture"), "operating_system_family": S("operatingSystemFamily"), @@ -894,7 +1052,11 @@ class AwsEcsRuntimePlatform: class AwsEcsProxyConfiguration: kind: ClassVar[str] = "aws_ecs_proxy_configuration" kind_display: ClassVar[str] = "AWS ECS Proxy Configuration" - kind_description: ClassVar[str] = "ECS Proxy Configuration is a feature in Amazon Elastic Container Service that allows for configuring the proxy settings for containers running in an ECS cluster." + kind_description: ClassVar[str] = ( + "ECS Proxy Configuration is a feature in Amazon Elastic Container Service" + " that allows for configuring the proxy settings for containers running in an" + " ECS cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "type": S("type"), "container_name": S("containerName"), @@ -909,7 +1071,11 @@ class AwsEcsProxyConfiguration: class AwsEcsTaskDefinition(EcsTaggable, AwsResource): kind: ClassVar[str] = "aws_ecs_task_definition" kind_display: ClassVar[str] = "AWS ECS Task Definition" - kind_description: ClassVar[str] = "An ECS Task Definition is a blueprint for running tasks in AWS Elastic Container Service (ECS), providing information such as the Docker image, CPU, memory, network configuration, and other parameters." + kind_description: ClassVar[str] = ( + "An ECS Task Definition is a blueprint for running tasks in AWS Elastic" + " Container Service (ECS), providing information such as the Docker image," + " CPU, memory, network configuration, and other parameters." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-task-definitions", "taskDefinitionArns") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_iam_role"]}, @@ -1019,7 +1185,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEcsLoadBalancer: kind: ClassVar[str] = "aws_ecs_load_balancer" kind_display: ClassVar[str] = "AWS ECS Load Balancer" - kind_description: ClassVar[str] = "ECS Load Balancers are elastic load balancing services provided by AWS for distributing incoming traffic to multiple targets within an Amazon Elastic Container Service (ECS) cluster." + kind_description: ClassVar[str] = ( + "ECS Load Balancers are elastic load balancing services provided by AWS for" + " distributing incoming traffic to multiple targets within an Amazon Elastic" + " Container Service (ECS) cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "target_group_arn": S("targetGroupArn"), "load_balancer_name": S("loadBalancerName"), @@ -1036,7 +1206,11 @@ class AwsEcsLoadBalancer: class AwsEcsServiceRegistry: kind: ClassVar[str] = "aws_ecs_service_registry" kind_display: ClassVar[str] = "AWS ECS Service Registry" - kind_description: ClassVar[str] = "The AWS ECS Service Registry is a service provided by Amazon Web Services for managing the registry of services in ECS (Elastic Container Service) tasks and clusters." + kind_description: ClassVar[str] = ( + "The AWS ECS Service Registry is a service provided by Amazon Web Services" + " for managing the registry of services in ECS (Elastic Container Service)" + " tasks and clusters." + ) mapping: ClassVar[Dict[str, Bender]] = { "registry_arn": S("registryArn"), "port": S("port"), @@ -1053,7 +1227,11 @@ class AwsEcsServiceRegistry: class AwsEcsCapacityProviderStrategyItem: kind: ClassVar[str] = "aws_ecs_capacity_provider_strategy_item" kind_display: ClassVar[str] = "AWS ECS Capacity Provider Strategy Item" - kind_description: ClassVar[str] = "ECS Capacity Provider Strategy Item is a configuration option used in Amazon Elastic Container Service (ECS) for managing the capacity of EC2 instances in an ECS cluster." + kind_description: ClassVar[str] = ( + "ECS Capacity Provider Strategy Item is a configuration option used in Amazon" + " Elastic Container Service (ECS) for managing the capacity of EC2 instances" + " in an ECS cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "capacity_provider": S("capacityProvider"), "weight": S("weight"), @@ -1068,7 +1246,11 @@ class AwsEcsCapacityProviderStrategyItem: class AwsEcsDeploymentCircuitBreaker: kind: ClassVar[str] = "aws_ecs_deployment_circuit_breaker" kind_display: ClassVar[str] = "AWS ECS Deployment Circuit Breaker" - kind_description: ClassVar[str] = "Circuit Breaker is a feature in Amazon Elastic Container Service (ECS) that helps prevent application failures by stopping the deployment of a new version if it exceeds a specified error rate or latency threshold." + kind_description: ClassVar[str] = ( + "Circuit Breaker is a feature in Amazon Elastic Container Service (ECS) that" + " helps prevent application failures by stopping the deployment of a new" + " version if it exceeds a specified error rate or latency threshold." + ) mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "rollback": S("rollback")} enable: Optional[bool] = field(default=None) rollback: Optional[bool] = field(default=None) @@ -1078,7 +1260,11 @@ class AwsEcsDeploymentCircuitBreaker: class AwsEcsDeploymentConfiguration: kind: ClassVar[str] = "aws_ecs_deployment_configuration" kind_display: ClassVar[str] = "AWS ECS Deployment Configuration" - kind_description: ClassVar[str] = "ECS Deployment Configurations are used to manage the deployment of containers in Amazon ECS, allowing users to specify various properties and settings for their container deployments." + kind_description: ClassVar[str] = ( + "ECS Deployment Configurations are used to manage the deployment of" + " containers in Amazon ECS, allowing users to specify various properties and" + " settings for their container deployments." + ) mapping: ClassVar[Dict[str, Bender]] = { "deployment_circuit_breaker": S("deploymentCircuitBreaker") >> Bend(AwsEcsDeploymentCircuitBreaker.mapping), "maximum_percent": S("maximumPercent"), @@ -1093,7 +1279,11 @@ class AwsEcsDeploymentConfiguration: class AwsEcsAwsVpcConfiguration: kind: ClassVar[str] = "aws_ecs_aws_vpc_configuration" kind_display: ClassVar[str] = "AWS ECS AWS VPC Configuration" - kind_description: ClassVar[str] = "ECS AWS VPC Configuration is a configuration setting for Amazon Elastic Container Service (ECS) that allows you to specify the virtual private cloud (VPC) configuration for your ECS tasks and services." + kind_description: ClassVar[str] = ( + "ECS AWS VPC Configuration is a configuration setting for Amazon Elastic" + " Container Service (ECS) that allows you to specify the virtual private cloud" + " (VPC) configuration for your ECS tasks and services." + ) mapping: ClassVar[Dict[str, Bender]] = { "subnets": S("subnets", default=[]), "security_groups": S("securityGroups", default=[]), @@ -1108,7 +1298,12 @@ class AwsEcsAwsVpcConfiguration: class AwsEcsNetworkConfiguration: kind: ClassVar[str] = "aws_ecs_network_configuration" kind_display: ClassVar[str] = "AWS ECS Network Configuration" - kind_description: ClassVar[str] = "ECS Network Configuration is a feature in Amazon Elastic Container Service (ECS) that allows users to configure networking settings for their containerized applications running on ECS. It includes specifications for the VPC, subnet, security groups, and other network resources." + kind_description: ClassVar[str] = ( + "ECS Network Configuration is a feature in Amazon Elastic Container Service" + " (ECS) that allows users to configure networking settings for their" + " containerized applications running on ECS. It includes specifications for" + " the VPC, subnet, security groups, and other network resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "awsvpc_configuration": S("awsvpcConfiguration") >> Bend(AwsEcsAwsVpcConfiguration.mapping) } @@ -1119,7 +1314,11 @@ class AwsEcsNetworkConfiguration: class AwsEcsScale: kind: ClassVar[str] = "aws_ecs_scale" kind_display: ClassVar[str] = "AWS ECS Scale" - kind_description: ClassVar[str] = "ECS Scale is a feature in AWS Elastic Container Service (ECS) that allows you to automatically scale the number of containers running in a cluster based on application load and resource utilization." + kind_description: ClassVar[str] = ( + "ECS Scale is a feature in AWS Elastic Container Service (ECS) that allows" + " you to automatically scale the number of containers running in a cluster" + " based on application load and resource utilization." + ) mapping: ClassVar[Dict[str, Bender]] = {"value": S("value"), "unit": S("unit")} value: Optional[float] = field(default=None) unit: Optional[str] = field(default=None) @@ -1129,7 +1328,11 @@ class AwsEcsScale: class AwsEcsTaskSet: kind: ClassVar[str] = "aws_ecs_task_set" kind_display: ClassVar[str] = "AWS ECS Task Set" - kind_description: ClassVar[str] = "ECS Task Sets are a way to manage multiple versions of a task definition in Amazon ECS, allowing users to create and manage a set of tasks running in a service." + kind_description: ClassVar[str] = ( + "ECS Task Sets are a way to manage multiple versions of a task definition in" + " Amazon ECS, allowing users to create and manage a set of tasks running in a" + " service." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "task_set_arn": S("taskSetArn"), @@ -1185,7 +1388,11 @@ class AwsEcsTaskSet: class AwsEcsDeployment: kind: ClassVar[str] = "aws_ecs_deployment" kind_display: ClassVar[str] = "AWS ECS Deployment" - kind_description: ClassVar[str] = "ECS (Elastic Container Service) Deployment is a service provided by AWS that allows you to run and manage Docker containers on a cluster of EC2 instances." + kind_description: ClassVar[str] = ( + "ECS (Elastic Container Service) Deployment is a service provided by AWS that" + " allows you to run and manage Docker containers on a cluster of EC2" + " instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "status": S("status"), @@ -1227,7 +1434,11 @@ class AwsEcsDeployment: class AwsEcsServiceEvent: kind: ClassVar[str] = "aws_ecs_service_event" kind_display: ClassVar[str] = "AWS ECS Service Event" - kind_description: ClassVar[str] = "ECS service events are used to monitor and track changes in the state of Amazon Elastic Container Service (ECS) services, such as task placement or service scaling events." + kind_description: ClassVar[str] = ( + "ECS service events are used to monitor and track changes in the state of" + " Amazon Elastic Container Service (ECS) services, such as task placement or" + " service scaling events." + ) mapping: ClassVar[Dict[str, Bender]] = {"id": S("id"), "created_at": S("createdAt"), "message": S("message")} id: Optional[str] = field(default=None) created_at: Optional[datetime] = field(default=None) @@ -1238,7 +1449,11 @@ class AwsEcsServiceEvent: class AwsEcsPlacementConstraint: kind: ClassVar[str] = "aws_ecs_placement_constraint" kind_display: ClassVar[str] = "AWS ECS Placement Constraint" - kind_description: ClassVar[str] = "ECS Placement Constraints are rules used to define where tasks or services can be placed within an Amazon ECS cluster, based on attributes such as instance type, availability zone, or custom metadata." + kind_description: ClassVar[str] = ( + "ECS Placement Constraints are rules used to define where tasks or services" + " can be placed within an Amazon ECS cluster, based on attributes such as" + " instance type, availability zone, or custom metadata." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "expression": S("expression")} type: Optional[str] = field(default=None) expression: Optional[str] = field(default=None) @@ -1248,7 +1463,12 @@ class AwsEcsPlacementConstraint: class AwsEcsPlacementStrategy: kind: ClassVar[str] = "aws_ecs_placement_strategy" kind_display: ClassVar[str] = "AWS ECS Placement Strategy" - kind_description: ClassVar[str] = "ECS Placement Strategies help you define how tasks in Amazon Elastic Container Service (ECS) are placed on container instances within a cluster, taking into consideration factors like instance attributes, availability zones, and task resource requirements." + kind_description: ClassVar[str] = ( + "ECS Placement Strategies help you define how tasks in Amazon Elastic" + " Container Service (ECS) are placed on container instances within a cluster," + " taking into consideration factors like instance attributes, availability" + " zones, and task resource requirements." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("type"), "field": S("field")} type: Optional[str] = field(default=None) field: Optional[str] = field(default=None) @@ -1259,7 +1479,11 @@ class AwsEcsService(EcsTaggable, AwsResource): # collection of service resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_service" kind_display: ClassVar[str] = "AWS ECS Service" - kind_description: ClassVar[str] = "ECS (Elastic Container Service) is a scalable container orchestration service provided by AWS, allowing users to easily manage, deploy, and scale containerized applications." + kind_description: ClassVar[str] = ( + "ECS (Elastic Container Service) is a scalable container orchestration" + " service provided by AWS, allowing users to easily manage, deploy, and scale" + " containerized applications." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_subnet", "aws_ec2_security_group"], @@ -1460,7 +1684,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEcsVersionInfo: kind: ClassVar[str] = "aws_ecs_version_info" kind_display: ClassVar[str] = "AWS ECS Version Info" - kind_description: ClassVar[str] = "ECS Version Info provides information about the different versions of Amazon Elastic Container Service (ECS) available in the AWS cloud." + kind_description: ClassVar[str] = ( + "ECS Version Info provides information about the different versions of Amazon" + " Elastic Container Service (ECS) available in the AWS cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "agent_version": S("agentVersion"), "agent_hash": S("agentHash"), @@ -1475,7 +1702,10 @@ class AwsEcsVersionInfo: class AwsEcsResource: kind: ClassVar[str] = "aws_ecs_resource" kind_display: ClassVar[str] = "AWS ECS Resource" - kind_description: ClassVar[str] = "ECS Resources are computing resources that can be used in Amazon Elastic Container Service (ECS) to deploy and run containerized applications." + kind_description: ClassVar[str] = ( + "ECS Resources are computing resources that can be used in Amazon Elastic" + " Container Service (ECS) to deploy and run containerized applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "type": S("type"), @@ -1496,7 +1726,11 @@ class AwsEcsResource: class AwsEcsInstanceHealthCheckResult: kind: ClassVar[str] = "aws_ecs_instance_health_check_result" kind_display: ClassVar[str] = "AWS ECS Instance Health Check Result" - kind_description: ClassVar[str] = "ECS Instance Health Check Result is the outcome of the health check performed on an Amazon ECS instance, indicating whether the instance is healthy or not." + kind_description: ClassVar[str] = ( + "ECS Instance Health Check Result is the outcome of the health check" + " performed on an Amazon ECS instance, indicating whether the instance is" + " healthy or not." + ) mapping: ClassVar[Dict[str, Bender]] = { "type": S("type"), "status": S("status"), @@ -1513,7 +1747,12 @@ class AwsEcsInstanceHealthCheckResult: class AwsEcsContainerInstanceHealthStatus: kind: ClassVar[str] = "aws_ecs_container_instance_health_status" kind_display: ClassVar[str] = "AWS ECS Container Instance Health Status" - kind_description: ClassVar[str] = "ECS Container Instance Health Status represents the health status of a container instance in Amazon ECS (Elastic Container Service). It indicates whether the container instance is healthy or not based on the reported health status of the underlying resources." + kind_description: ClassVar[str] = ( + "ECS Container Instance Health Status represents the health status of a" + " container instance in Amazon ECS (Elastic Container Service). It indicates" + " whether the container instance is healthy or not based on the reported" + " health status of the underlying resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "overall_status": S("overallStatus"), "details": S("details", default=[]) >> ForallBend(AwsEcsInstanceHealthCheckResult.mapping), @@ -1527,7 +1766,11 @@ class AwsEcsContainerInstance(EcsTaggable, AwsResource): # collection of container instance resources happens in AwsEcsCluster.collect() kind: ClassVar[str] = "aws_ecs_container_instance" kind_display: ClassVar[str] = "AWS ECS Container Instance" - kind_description: ClassVar[str] = "ECS Container Instances are virtual servers in Amazon's Elastic Container Service (ECS) that are used to run and manage containers within the ECS environment." + kind_description: ClassVar[str] = ( + "ECS Container Instances are virtual servers in Amazon's Elastic Container" + " Service (ECS) that are used to run and manage containers within the ECS" + " environment." + ) reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_ec2_instance"], "delete": ["aws_ec2_instance"]}, } @@ -1594,7 +1837,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEcsExecuteCommandLogConfiguration: kind: ClassVar[str] = "aws_ecs_execute_command_log_configuration" kind_display: ClassVar[str] = "AWS ECS Execute Command Log Configuration" - kind_description: ClassVar[str] = "ECS Execute Command Log Configuration is used to configure the logging for Execute Command feature in Amazon Elastic Container Service (ECS)." + kind_description: ClassVar[str] = ( + "ECS Execute Command Log Configuration is used to configure the logging for" + " Execute Command feature in Amazon Elastic Container Service (ECS)." + ) mapping: ClassVar[Dict[str, Bender]] = { "cloud_watch_log_group_name": S("cloudWatchLogGroupName"), "cloud_watch_encryption_enabled": S("cloudWatchEncryptionEnabled"), @@ -1613,7 +1859,11 @@ class AwsEcsExecuteCommandLogConfiguration: class AwsEcsExecuteCommandConfiguration: kind: ClassVar[str] = "aws_ecs_execute_command_configuration" kind_display: ClassVar[str] = "AWS ECS Execute Command Configuration" - kind_description: ClassVar[str] = "ECS Execute Command Configuration is a feature in AWS ECS that allows users to run commands on their ECS containers for debugging and troubleshooting purposes." + kind_description: ClassVar[str] = ( + "ECS Execute Command Configuration is a feature in AWS ECS that allows users" + " to run commands on their ECS containers for debugging and troubleshooting" + " purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "kms_key_id": S("kmsKeyId"), "logging": S("logging"), @@ -1628,7 +1878,13 @@ class AwsEcsExecuteCommandConfiguration: class AwsEcsClusterConfiguration: kind: ClassVar[str] = "aws_ecs_cluster_configuration" kind_display: ClassVar[str] = "AWS ECS Cluster Configuration" - kind_description: ClassVar[str] = "ECS Cluster Configuration is a service provided by Amazon Web Services that allows users to define and configure a cluster of container instances using Amazon Elastic Container Service (ECS). It enables the management and orchestration of containerized applications in a scalable and highly available manner." + kind_description: ClassVar[str] = ( + "ECS Cluster Configuration is a service provided by Amazon Web Services that" + " allows users to define and configure a cluster of container instances using" + " Amazon Elastic Container Service (ECS). It enables the management and" + " orchestration of containerized applications in a scalable and highly" + " available manner." + ) mapping: ClassVar[Dict[str, Bender]] = { "execute_command_configuration": S("executeCommandConfiguration") >> Bend(AwsEcsExecuteCommandConfiguration.mapping) @@ -1640,7 +1896,11 @@ class AwsEcsClusterConfiguration: class AwsEcsClusterSetting: kind: ClassVar[str] = "aws_ecs_cluster_setting" kind_display: ClassVar[str] = "AWS ECS Cluster Setting" - kind_description: ClassVar[str] = "ECS Cluster Settings are configurations that define the properties and behavior of an Amazon ECS cluster, allowing users to customize and manage their containerized applications efficiently." + kind_description: ClassVar[str] = ( + "ECS Cluster Settings are configurations that define the properties and" + " behavior of an Amazon ECS cluster, allowing users to customize and manage" + " their containerized applications efficiently." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1650,7 +1910,10 @@ class AwsEcsClusterSetting: class AwsEcsCluster(EcsTaggable, AwsResource): kind: ClassVar[str] = "aws_ecs_cluster" kind_display: ClassVar[str] = "AWS ECS Cluster" - kind_description: ClassVar[str] = "ECS (Elastic Container Service) Cluster is a managed cluster of Amazon EC2 instances used to deploy and manage Docker containers." + kind_description: ClassVar[str] = ( + "ECS (Elastic Container Service) Cluster is a managed cluster of Amazon EC2" + " instances used to deploy and manage Docker containers." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-clusters", "clusterArns") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_kms_key", "aws_s3_bucket"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/efs.py b/plugins/aws/resoto_plugin_aws/resource/efs.py index 04febb0458..e37a2eafae 100644 --- a/plugins/aws/resoto_plugin_aws/resource/efs.py +++ b/plugins/aws/resoto_plugin_aws/resource/efs.py @@ -48,7 +48,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEfsMountTarget(AwsResource): kind: ClassVar[str] = "aws_efs_mount_target" kind_display: ClassVar[str] = "AWS EFS Mount Target" - kind_description: ClassVar[str] = "EFS Mount Targets are endpoints in Amazon's Elastic File System that allow EC2 instances to mount the file system and access the shared data." + kind_description: ClassVar[str] = ( + "EFS Mount Targets are endpoints in Amazon's Elastic File System that allow" + " EC2 instances to mount the file system and access the shared data." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("MountTargetId"), "owner_id": S("OwnerId"), @@ -71,7 +74,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsEfsFileSystem(EfsTaggable, AwsResource, BaseNetworkShare): kind: ClassVar[str] = "aws_efs_file_system" kind_display: ClassVar[str] = "AWS EFS File System" - kind_description: ClassVar[str] = "EFS (Elastic File System) provides a scalable and fully managed file storage service for Amazon EC2 instances." + kind_description: ClassVar[str] = ( + "EFS (Elastic File System) provides a scalable and fully managed file storage" + " service for Amazon EC2 instances." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-file-systems", @@ -148,7 +154,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEfsPosixUser: kind: ClassVar[str] = "aws_efs_posix_user" kind_display: ClassVar[str] = "AWS EFS POSIX User" - kind_description: ClassVar[str] = "EFS POSIX Users are user accounts that can be used to access and manage files in Amazon Elastic File System (EFS) using POSIX permissions." + kind_description: ClassVar[str] = ( + "EFS POSIX Users are user accounts that can be used to access and manage" + " files in Amazon Elastic File System (EFS) using POSIX permissions." + ) mapping: ClassVar[Dict[str, Bender]] = { "uid": S("Uid"), "gid": S("Gid"), @@ -163,7 +172,10 @@ class AwsEfsPosixUser: class AwsEfsCreationInfo: kind: ClassVar[str] = "aws_efs_creation_info" kind_display: ClassVar[str] = "AWS EFS Creation Info" - kind_description: ClassVar[str] = "EFS Creation Info is a parameter used in AWS to provide information for creating an Amazon Elastic File System (EFS) resource." + kind_description: ClassVar[str] = ( + "EFS Creation Info is a parameter used in AWS to provide information for" + " creating an Amazon Elastic File System (EFS) resource." + ) mapping: ClassVar[Dict[str, Bender]] = { "owner_uid": S("OwnerUid"), "owner_gid": S("OwnerGid"), @@ -178,7 +190,10 @@ class AwsEfsCreationInfo: class AwsEfsRootDirectory: kind: ClassVar[str] = "aws_efs_root_directory" kind_display: ClassVar[str] = "AWS EFS Root Directory" - kind_description: ClassVar[str] = "The root directory of an Amazon Elastic File System (EFS) provides a common entry point for accessing all files and directories within the file system." + kind_description: ClassVar[str] = ( + "The root directory of an Amazon Elastic File System (EFS) provides a common" + " entry point for accessing all files and directories within the file system." + ) mapping: ClassVar[Dict[str, Bender]] = { "path": S("Path"), "creation_info": S("CreationInfo") >> Bend(AwsEfsCreationInfo.mapping), @@ -191,7 +206,11 @@ class AwsEfsRootDirectory: class AwsEfsAccessPoint(AwsResource, EfsTaggable): kind: ClassVar[str] = "aws_efs_access_point" kind_display: ClassVar[str] = "AWS EFS Access Point" - kind_description: ClassVar[str] = "AWS EFS Access Point is a way to securely access files in Amazon EFS (Elastic File System) using a unique hostname and optional path, providing fine-grained access control." + kind_description: ClassVar[str] = ( + "AWS EFS Access Point is a way to securely access files in Amazon EFS" + " (Elastic File System) using a unique hostname and optional path, providing" + " fine-grained access control." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-access-points", diff --git a/plugins/aws/resoto_plugin_aws/resource/eks.py b/plugins/aws/resoto_plugin_aws/resource/eks.py index 3f688ef4d2..b7417bd9d4 100644 --- a/plugins/aws/resoto_plugin_aws/resource/eks.py +++ b/plugins/aws/resoto_plugin_aws/resource/eks.py @@ -58,7 +58,11 @@ def service_name(cls) -> str: class AwsEksNodegroupScalingConfig: kind: ClassVar[str] = "aws_eks_nodegroup_scaling_config" kind_display: ClassVar[str] = "AWS EKS Nodegroup Scaling Config" - kind_description: ClassVar[str] = "EKS Nodegroup Scaling Config is a configuration for Amazon Elastic Kubernetes Service (EKS) nodegroups that allows you to customize the scaling behavior of your worker nodes in an EKS cluster." + kind_description: ClassVar[str] = ( + "EKS Nodegroup Scaling Config is a configuration for Amazon Elastic" + " Kubernetes Service (EKS) nodegroups that allows you to customize the scaling" + " behavior of your worker nodes in an EKS cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_size": S("minSize"), "max_size": S("maxSize"), @@ -73,7 +77,11 @@ class AwsEksNodegroupScalingConfig: class AwsEksRemoteAccessConfig: kind: ClassVar[str] = "aws_eks_remote_access_config" kind_display: ClassVar[str] = "AWS EKS Remote Access Config" - kind_description: ClassVar[str] = "AWS EKS Remote Access Config is a configuration resource for managing remote access to Amazon Elastic Kubernetes Service (EKS) clusters, allowing users to securely connect and administer their EKS clusters from remote locations." + kind_description: ClassVar[str] = ( + "AWS EKS Remote Access Config is a configuration resource for managing remote" + " access to Amazon Elastic Kubernetes Service (EKS) clusters, allowing users" + " to securely connect and administer their EKS clusters from remote locations." + ) mapping: ClassVar[Dict[str, Bender]] = { "ec2_ssh_key": S("ec2SshKey"), "source_security_groups": S("sourceSecurityGroups", default=[]), @@ -86,7 +94,11 @@ class AwsEksRemoteAccessConfig: class AwsEksTaint: kind: ClassVar[str] = "aws_eks_taint" kind_display: ClassVar[str] = "AWS EKS Taint" - kind_description: ClassVar[str] = "EKS Taints are used in Amazon Elastic Kubernetes Service (EKS) to mark nodes as unschedulable for certain pods, preventing them from being deployed on those nodes." + kind_description: ClassVar[str] = ( + "EKS Taints are used in Amazon Elastic Kubernetes Service (EKS) to mark nodes" + " as unschedulable for certain pods, preventing them from being deployed on" + " those nodes." + ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "value": S("value"), "effect": S("effect")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -97,7 +109,10 @@ class AwsEksTaint: class AwsEksNodegroupResources: kind: ClassVar[str] = "aws_eks_nodegroup_resources" kind_display: ClassVar[str] = "AWS EKS Nodegroup Resources" - kind_description: ClassVar[str] = "EKS Nodegroup Resources are worker nodes managed by the Amazon Elastic Kubernetes Service (EKS) to run applications on Kubernetes clusters." + kind_description: ClassVar[str] = ( + "EKS Nodegroup Resources are worker nodes managed by the Amazon Elastic" + " Kubernetes Service (EKS) to run applications on Kubernetes clusters." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_groups": S("autoScalingGroups", default=[]) >> ForallBend(S("name")), "remote_access_security_group": S("remoteAccessSecurityGroup"), @@ -110,7 +125,11 @@ class AwsEksNodegroupResources: class AwsEksIssue: kind: ClassVar[str] = "aws_eks_issue" kind_display: ClassVar[str] = "AWS EKS Issue" - kind_description: ClassVar[str] = "An issue related to Amazon Elastic Kubernetes Service (EKS), a managed service that simplifies the deployment, management, and scaling of containerized applications using Kubernetes." + kind_description: ClassVar[str] = ( + "An issue related to Amazon Elastic Kubernetes Service (EKS), a managed" + " service that simplifies the deployment, management, and scaling of" + " containerized applications using Kubernetes." + ) mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "message": S("message"), @@ -125,7 +144,10 @@ class AwsEksIssue: class AwsEksNodegroupHealth: kind: ClassVar[str] = "aws_eks_nodegroup_health" kind_display: ClassVar[str] = "AWS EKS Nodegroup Health" - kind_description: ClassVar[str] = "EKS Nodegroup Health is a feature in AWS Elastic Kubernetes Service that provides information about the health of nodegroups in a Kubernetes cluster." + kind_description: ClassVar[str] = ( + "EKS Nodegroup Health is a feature in AWS Elastic Kubernetes Service that" + " provides information about the health of nodegroups in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = {"issues": S("issues", default=[]) >> ForallBend(AwsEksIssue.mapping)} issues: List[AwsEksIssue] = field(factory=list) @@ -134,7 +156,11 @@ class AwsEksNodegroupHealth: class AwsEksNodegroupUpdateConfig: kind: ClassVar[str] = "aws_eks_nodegroup_update_config" kind_display: ClassVar[str] = "AWS EKS Nodegroup Update Config" - kind_description: ClassVar[str] = "This resource represents the configuration for updating an Amazon Elastic Kubernetes Service (EKS) nodegroup in AWS. EKS is a managed service that makes it easy to run Kubernetes on AWS." + kind_description: ClassVar[str] = ( + "This resource represents the configuration for updating an Amazon Elastic" + " Kubernetes Service (EKS) nodegroup in AWS. EKS is a managed service that" + " makes it easy to run Kubernetes on AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_unavailable": S("maxUnavailable"), "max_unavailable_percentage": S("maxUnavailablePercentage"), @@ -147,7 +173,11 @@ class AwsEksNodegroupUpdateConfig: class AwsEksLaunchTemplateSpecification: kind: ClassVar[str] = "aws_eks_launch_template_specification" kind_display: ClassVar[str] = "AWS EKS Launch Template Specification" - kind_description: ClassVar[str] = "EKS Launch Template Specification refers to a configuration template used to provision Amazon Elastic Kubernetes Service (EKS) clusters with pre-configured instances." + kind_description: ClassVar[str] = ( + "EKS Launch Template Specification refers to a configuration template used to" + " provision Amazon Elastic Kubernetes Service (EKS) clusters with pre-" + " configured instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "version": S("version"), "id": S("id")} name: Optional[str] = field(default=None) version: Optional[str] = field(default=None) @@ -159,7 +189,11 @@ class AwsEksNodegroup(EKSTaggable, AwsResource): # Note: this resource is collected via AwsEksCluster kind: ClassVar[str] = "aws_eks_nodegroup" kind_display: ClassVar[str] = "AWS EKS Nodegroup" - kind_description: ClassVar[str] = "An EKS Nodegroup is a set of EC2 instances that host containerized applications and run Kubernetes pods in Amazon Elastic Kubernetes Service (EKS) cluster." + kind_description: ClassVar[str] = ( + "An EKS Nodegroup is a set of EC2 instances that host containerized" + " applications and run Kubernetes pods in Amazon Elastic Kubernetes Service" + " (EKS) cluster." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_eks_cluster"], "delete": ["aws_eks_cluster", "aws_autoscaling_group"]}, "successors": {"default": ["aws_autoscaling_group"]}, @@ -239,7 +273,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEksVpcConfigResponse: kind: ClassVar[str] = "aws_eks_vpc_config_response" kind_display: ClassVar[str] = "AWS EKS VPC Config Response" - kind_description: ClassVar[str] = "The AWS EKS VPC Config Response is a response object that contains the configuration details of the Amazon Virtual Private Cloud (VPC) used by the Amazon Elastic Kubernetes Service (EKS)." + kind_description: ClassVar[str] = ( + "The AWS EKS VPC Config Response is a response object that contains the" + " configuration details of the Amazon Virtual Private Cloud (VPC) used by the" + " Amazon Elastic Kubernetes Service (EKS)." + ) mapping: ClassVar[Dict[str, Bender]] = { "subnet_ids": S("subnetIds", default=[]), "security_group_ids": S("securityGroupIds", default=[]), @@ -262,7 +300,11 @@ class AwsEksVpcConfigResponse: class AwsEksKubernetesNetworkConfigResponse: kind: ClassVar[str] = "aws_eks_kubernetes_network_config_response" kind_display: ClassVar[str] = "AWS EKS Kubernetes Network Config Response" - kind_description: ClassVar[str] = "The AWS EKS Kubernetes Network Config Response is the network configuration response received from the Amazon Elastic Kubernetes Service (EKS), which provides managed Kubernetes infrastructure in the AWS cloud." + kind_description: ClassVar[str] = ( + "The AWS EKS Kubernetes Network Config Response is the network configuration" + " response received from the Amazon Elastic Kubernetes Service (EKS), which" + " provides managed Kubernetes infrastructure in the AWS cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "service_ipv4_cidr": S("serviceIpv4Cidr"), "service_ipv6_cidr": S("serviceIpv6Cidr"), @@ -277,7 +319,11 @@ class AwsEksKubernetesNetworkConfigResponse: class AwsEksLogSetup: kind: ClassVar[str] = "aws_eks_log_setup" kind_display: ClassVar[str] = "AWS EKS Log Setup" - kind_description: ClassVar[str] = "AWS EKS Log Setup is a feature that enables the logging of Kubernetes cluster control plane logs to an Amazon CloudWatch Logs group for easy monitoring and troubleshooting." + kind_description: ClassVar[str] = ( + "AWS EKS Log Setup is a feature that enables the logging of Kubernetes" + " cluster control plane logs to an Amazon CloudWatch Logs group for easy" + " monitoring and troubleshooting." + ) mapping: ClassVar[Dict[str, Bender]] = {"types": S("types", default=[]), "enabled": S("enabled")} types: List[str] = field(factory=list) enabled: Optional[bool] = field(default=None) @@ -287,7 +333,11 @@ class AwsEksLogSetup: class AwsEksLogging: kind: ClassVar[str] = "aws_eks_logging" kind_display: ClassVar[str] = "AWS EKS Logging" - kind_description: ClassVar[str] = "EKS Logging is a feature of Amazon Elastic Kubernetes Service that allows you to capture and store logs generated by containers running in your Kubernetes cluster." + kind_description: ClassVar[str] = ( + "EKS Logging is a feature of Amazon Elastic Kubernetes Service that allows" + " you to capture and store logs generated by containers running in your" + " Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "cluster_logging": S("clusterLogging", default=[]) >> ForallBend(AwsEksLogSetup.mapping) } @@ -298,7 +348,11 @@ class AwsEksLogging: class AwsEksIdentity: kind: ClassVar[str] = "aws_eks_identity" kind_display: ClassVar[str] = "AWS EKS Identity" - kind_description: ClassVar[str] = "EKS Identity allows you to securely authenticate with and access resources in Amazon Elastic Kubernetes Service (EKS) clusters using AWS Identity and Access Management (IAM) roles." + kind_description: ClassVar[str] = ( + "EKS Identity allows you to securely authenticate with and access resources" + " in Amazon Elastic Kubernetes Service (EKS) clusters using AWS Identity and" + " Access Management (IAM) roles." + ) mapping: ClassVar[Dict[str, Bender]] = {"oidc": S("oidc", "issuer")} oidc: Optional[str] = field(default=None) @@ -307,7 +361,11 @@ class AwsEksIdentity: class AwsEksEncryptionConfig: kind: ClassVar[str] = "aws_eks_encryption_config" kind_display: ClassVar[str] = "AWS EKS Encryption Config" - kind_description: ClassVar[str] = "EKS Encryption Config is a feature in Amazon Elastic Kubernetes Service that allows users to configure encryption settings for their Kubernetes cluster resources." + kind_description: ClassVar[str] = ( + "EKS Encryption Config is a feature in Amazon Elastic Kubernetes Service that" + " allows users to configure encryption settings for their Kubernetes cluster" + " resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "resources": S("resources", default=[]), "provider": S("provider", "keyArn"), @@ -320,7 +378,10 @@ class AwsEksEncryptionConfig: class AwsEksConnectorConfig: kind: ClassVar[str] = "aws_eks_connector_config" kind_display: ClassVar[str] = "AWS EKS Connector Config" - kind_description: ClassVar[str] = "The AWS EKS Connector Config is used to configure the connection between a Kubernetes cluster in Amazon EKS and external resources or services." + kind_description: ClassVar[str] = ( + "The AWS EKS Connector Config is used to configure the connection between a" + " Kubernetes cluster in Amazon EKS and external resources or services." + ) mapping: ClassVar[Dict[str, Bender]] = { "activation_id": S("activationId"), "activation_code": S("activationCode"), @@ -339,7 +400,11 @@ class AwsEksConnectorConfig: class AwsEksCluster(EKSTaggable, AwsResource): kind: ClassVar[str] = "aws_eks_cluster" kind_display: ClassVar[str] = "AWS EKS Cluster" - kind_description: ClassVar[str] = "Amazon Elastic Kubernetes Service (EKS) Cluster is a managed Kubernetes service provided by AWS for running containerized applications using Kubernetes." + kind_description: ClassVar[str] = ( + "Amazon Elastic Kubernetes Service (EKS) Cluster is a managed Kubernetes" + " service provided by AWS for running containerized applications using" + " Kubernetes." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-clusters", "clusters") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/elasticache.py b/plugins/aws/resoto_plugin_aws/resource/elasticache.py index 1d50be3c7c..f522a874c3 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elasticache.py +++ b/plugins/aws/resoto_plugin_aws/resource/elasticache.py @@ -56,7 +56,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsElastiCacheEndpoint: kind: ClassVar[str] = "aws_elasticache_endpoint" kind_display: ClassVar[str] = "AWS ElastiCache Endpoint" - kind_description: ClassVar[str] = "ElastiCache is a web service that makes it easy to deploy, operate, and scale an in-memory cache in the cloud. The Elasticache endpoint refers to the endpoint URL that is used to connect to the ElastiCache cluster." + kind_description: ClassVar[str] = ( + "ElastiCache is a web service that makes it easy to deploy, operate, and" + " scale an in-memory cache in the cloud. The Elasticache endpoint refers to" + " the endpoint URL that is used to connect to the ElastiCache cluster." + ) mapping: ClassVar[Dict[str, Bender]] = {"address": S("Address"), "port": S("Port")} address: Optional[str] = field(default=None) port: Optional[int] = field(default=None) @@ -66,7 +70,12 @@ class AwsElastiCacheEndpoint: class AwsElastiCacheDestinationDetails: kind: ClassVar[str] = "aws_elasticache_destination_details" kind_display: ClassVar[str] = "AWS ElastiCache Destination Details" - kind_description: ClassVar[str] = "ElastiCache is a web service that makes it easy to deploy, operate, and scale an in-memory cache in the cloud. The AWS ElastiCache Destination Details provide information about the destination of caching in an ElastiCache cluster." + kind_description: ClassVar[str] = ( + "ElastiCache is a web service that makes it easy to deploy, operate, and" + " scale an in-memory cache in the cloud. The AWS ElastiCache Destination" + " Details provide information about the destination of caching in an" + " ElastiCache cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "cloud_watch_logs_details": S("CloudWatchLogsDetails", "LogGroup"), "kinesis_firehose_details": S("KinesisFirehoseDetails", "DeliveryStream"), @@ -79,7 +88,11 @@ class AwsElastiCacheDestinationDetails: class AwsElastiCachePendingLogDeliveryConfiguration: kind: ClassVar[str] = "aws_elasticache_pending_log_delivery_configuration" kind_display: ClassVar[str] = "AWS ElastiCache Pending Log Delivery Configuration" - kind_description: ClassVar[str] = "ElastiCache Pending Log Delivery Configuration is a feature that allows users to view information on the status of log delivery for automatic backups in Amazon ElastiCache." + kind_description: ClassVar[str] = ( + "ElastiCache Pending Log Delivery Configuration is a feature that allows" + " users to view information on the status of log delivery for automatic" + " backups in Amazon ElastiCache." + ) mapping: ClassVar[Dict[str, Bender]] = { "log_type": S("LogType"), "destination_type": S("DestinationType"), @@ -96,7 +109,11 @@ class AwsElastiCachePendingLogDeliveryConfiguration: class AwsElastiCachePendingModifiedValues: kind: ClassVar[str] = "aws_elasticache_pending_modified_values" kind_display: ClassVar[str] = "AWS ElastiCache Pending Modified Values" - kind_description: ClassVar[str] = "ElastiCache Pending Modified Values is a feature in Amazon ElastiCache, which allows users to view the configuration modifications that are waiting to be applied to a cache cluster." + kind_description: ClassVar[str] = ( + "ElastiCache Pending Modified Values is a feature in Amazon ElastiCache," + " which allows users to view the configuration modifications that are waiting" + " to be applied to a cache cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "num_cache_nodes": S("NumCacheNodes"), "cache_node_ids_to_remove": S("CacheNodeIdsToRemove", default=[]), @@ -118,7 +135,11 @@ class AwsElastiCachePendingModifiedValues: class AwsElastiCacheNotificationConfiguration: kind: ClassVar[str] = "aws_elasticache_notification_configuration" kind_display: ClassVar[str] = "AWS ElastiCache Notification Configuration" - kind_description: ClassVar[str] = "ElastiCache Notification Configuration allows users to configure notifications for events occurring in Amazon ElastiCache, such as failures or scaling events." + kind_description: ClassVar[str] = ( + "ElastiCache Notification Configuration allows users to configure" + " notifications for events occurring in Amazon ElastiCache, such as failures" + " or scaling events." + ) mapping: ClassVar[Dict[str, Bender]] = {"topic_arn": S("TopicArn"), "topic_status": S("TopicStatus")} topic_arn: Optional[str] = field(default=None) topic_status: Optional[str] = field(default=None) @@ -128,7 +149,10 @@ class AwsElastiCacheNotificationConfiguration: class AwsElastiCacheCacheSecurityGroupMembership: kind: ClassVar[str] = "aws_elasticache_cache_security_group_membership" kind_display: ClassVar[str] = "AWS ElastiCache Cache Security Group Membership" - kind_description: ClassVar[str] = "ElastiCache Cache Security Group Membership allows you to control access to your ElastiCache resources by managing the cache security group memberships." + kind_description: ClassVar[str] = ( + "ElastiCache Cache Security Group Membership allows you to control access to" + " your ElastiCache resources by managing the cache security group memberships." + ) mapping: ClassVar[Dict[str, Bender]] = { "cache_security_group_name": S("CacheSecurityGroupName"), "status": S("Status"), @@ -141,7 +165,11 @@ class AwsElastiCacheCacheSecurityGroupMembership: class AwsElastiCacheCacheParameterGroupStatus: kind: ClassVar[str] = "aws_elasticache_cache_parameter_group_status" kind_display: ClassVar[str] = "AWS Elasticache Cache Parameter Group Status" - kind_description: ClassVar[str] = "AWS Elasticache Cache Parameter Group Status represents the current status of a cache parameter group in AWS Elasticache. It provides information about the configuration settings that control the behavior of the cache cluster." + kind_description: ClassVar[str] = ( + "AWS Elasticache Cache Parameter Group Status represents the current status" + " of a cache parameter group in AWS Elasticache. It provides information about" + " the configuration settings that control the behavior of the cache cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "cache_parameter_group_name": S("CacheParameterGroupName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -156,7 +184,11 @@ class AwsElastiCacheCacheParameterGroupStatus: class AwsElastiCacheCacheNode: kind: ClassVar[str] = "aws_elasticache_cache_node" kind_display: ClassVar[str] = "AWS ElastiCache Cache Node" - kind_description: ClassVar[str] = "ElastiCache Cache Nodes are the compute resources in AWS ElastiCache used for running an in-memory caching system, such as Redis or Memcached, to improve application performance." + kind_description: ClassVar[str] = ( + "ElastiCache Cache Nodes are the compute resources in AWS ElastiCache used" + " for running an in-memory caching system, such as Redis or Memcached, to" + " improve application performance." + ) mapping: ClassVar[Dict[str, Bender]] = { "cache_node_id": S("CacheNodeId"), "cache_node_status": S("CacheNodeStatus"), @@ -181,7 +213,11 @@ class AwsElastiCacheCacheNode: class AwsElastiCacheSecurityGroupMembership: kind: ClassVar[str] = "aws_elasticache_security_group_membership" kind_display: ClassVar[str] = "AWS ElastiCache Security Group Membership" - kind_description: ClassVar[str] = "ElastiCache Security Group Membership allows you to control access to your ElastiCache clusters by specifying the source IP ranges or security groups that are allowed to connect to them." + kind_description: ClassVar[str] = ( + "ElastiCache Security Group Membership allows you to control access to your" + " ElastiCache clusters by specifying the source IP ranges or security groups" + " that are allowed to connect to them." + ) mapping: ClassVar[Dict[str, Bender]] = {"security_group_id": S("SecurityGroupId"), "status": S("Status")} security_group_id: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -191,7 +227,12 @@ class AwsElastiCacheSecurityGroupMembership: class AwsElastiCacheLogDeliveryConfiguration: kind: ClassVar[str] = "aws_elasticache_log_delivery_configuration" kind_display: ClassVar[str] = "AWS ElastiCache Log Delivery Configuration" - kind_description: ClassVar[str] = "ElastiCache Log Delivery Configuration allows you to configure the delivery of logs generated by Amazon ElastiCache to an Amazon S3 bucket, enabling you to collect, monitor, and analyze logs for troubleshooting and auditing purposes." + kind_description: ClassVar[str] = ( + "ElastiCache Log Delivery Configuration allows you to configure the delivery" + " of logs generated by Amazon ElastiCache to an Amazon S3 bucket, enabling you" + " to collect, monitor, and analyze logs for troubleshooting and auditing" + " purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "log_type": S("LogType"), "destination_type": S("DestinationType"), @@ -212,7 +253,12 @@ class AwsElastiCacheLogDeliveryConfiguration: class AwsElastiCacheCacheCluster(ElastiCacheTaggable, AwsResource): kind: ClassVar[str] = "aws_elasticache_cache_cluster" kind_display: ClassVar[str] = "AWS ElastiCache Cache Cluster" - kind_description: ClassVar[str] = "ElastiCache is a web service that makes it easy to set up, manage, and scale a distributed in-memory cache environment in the cloud. A cache cluster is a collection of one or more cache nodes that work together to provide a highly scalable and available cache solution." + kind_description: ClassVar[str] = ( + "ElastiCache is a web service that makes it easy to set up, manage, and scale" + " a distributed in-memory cache environment in the cloud. A cache cluster is a" + " collection of one or more cache nodes that work together to provide a highly" + " scalable and available cache solution." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_ec2_security_group"], @@ -335,7 +381,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsElastiCacheGlobalReplicationGroupInfo: kind: ClassVar[str] = "aws_elasticache_global_replication_group_info" kind_display: ClassVar[str] = "AWS ElastiCache Global Replication Group Info" - kind_description: ClassVar[str] = "ElastiCache Global Replication Group Info provides information about a global replication group in Amazon ElastiCache, which enables automatic and fast cross-regional data replication for caching purposes." + kind_description: ClassVar[str] = ( + "ElastiCache Global Replication Group Info provides information about a" + " global replication group in Amazon ElastiCache, which enables automatic and" + " fast cross-regional data replication for caching purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "global_replication_group_id": S("GlobalReplicationGroupId"), "global_replication_group_member_role": S("GlobalReplicationGroupMemberRole"), @@ -348,7 +398,11 @@ class AwsElastiCacheGlobalReplicationGroupInfo: class AwsElastiCacheReshardingStatus: kind: ClassVar[str] = "aws_elasticache_resharding_status" kind_display: ClassVar[str] = "AWS ElastiCache Resharding Status" - kind_description: ClassVar[str] = "ElastiCache resharding status provides information about the status of the data resharding process in AWS ElastiCache, which is a fully managed in-memory data store service for caching frequently accessed data." + kind_description: ClassVar[str] = ( + "ElastiCache resharding status provides information about the status of the" + " data resharding process in AWS ElastiCache, which is a fully managed in-" + " memory data store service for caching frequently accessed data." + ) mapping: ClassVar[Dict[str, Bender]] = {"slot_migration": S("SlotMigration", "ProgressPercentage")} slot_migration: Optional[float] = field(default=None) @@ -357,7 +411,11 @@ class AwsElastiCacheReshardingStatus: class AwsElastiCacheUserGroupsUpdateStatus: kind: ClassVar[str] = "aws_elasticache_user_groups_update_status" kind_display: ClassVar[str] = "AWS ElastiCache User Groups Update Status" - kind_description: ClassVar[str] = "This resource represents the status of updating user groups in AWS ElastiCache. User groups in ElastiCache are used to manage user access to Redis or Memcached clusters." + kind_description: ClassVar[str] = ( + "This resource represents the status of updating user groups in AWS" + " ElastiCache. User groups in ElastiCache are used to manage user access to" + " Redis or Memcached clusters." + ) mapping: ClassVar[Dict[str, Bender]] = { "user_group_ids_to_add": S("UserGroupIdsToAdd", default=[]), "user_group_ids_to_remove": S("UserGroupIdsToRemove", default=[]), @@ -370,7 +428,11 @@ class AwsElastiCacheUserGroupsUpdateStatus: class AwsElastiCacheReplicationGroupPendingModifiedValues: kind: ClassVar[str] = "aws_elasticache_replication_group_pending_modified_values" kind_display: ClassVar[str] = "AWS ElastiCache Replication Group Pending Modified Values" - kind_description: ClassVar[str] = "ElastiCache Replication Group Pending Modified Values is a feature in AWS ElastiCache that shows the modified values for a replication group that are in the process of being applied." + kind_description: ClassVar[str] = ( + "ElastiCache Replication Group Pending Modified Values is a feature in AWS" + " ElastiCache that shows the modified values for a replication group that are" + " in the process of being applied." + ) mapping: ClassVar[Dict[str, Bender]] = { "primary_cluster_id": S("PrimaryClusterId"), "automatic_failover_status": S("AutomaticFailoverStatus"), @@ -392,7 +454,11 @@ class AwsElastiCacheReplicationGroupPendingModifiedValues: class AwsElastiCacheNodeGroupMember: kind: ClassVar[str] = "aws_elasticache_node_group_member" kind_display: ClassVar[str] = "AWS ElastiCache Node Group Member" - kind_description: ClassVar[str] = "ElastiCache Node Group Members are individual cache nodes within a node group in AWS ElastiCache, providing in-memory caching for faster performance of applications." + kind_description: ClassVar[str] = ( + "ElastiCache Node Group Members are individual cache nodes within a node" + " group in AWS ElastiCache, providing in-memory caching for faster performance" + " of applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "cache_cluster_id": S("CacheClusterId"), "cache_node_id": S("CacheNodeId"), @@ -413,7 +479,12 @@ class AwsElastiCacheNodeGroupMember: class AwsElastiCacheNodeGroup: kind: ClassVar[str] = "aws_elasticache_node_group" kind_display: ClassVar[str] = "AWS ElastiCache Node Group" - kind_description: ClassVar[str] = "ElastiCache Node Group is a feature in AWS ElastiCache that allows you to scale out horizontally by adding multiple cache nodes to a cache cluster. It improves performance and provides high availability for caching data in your applications." + kind_description: ClassVar[str] = ( + "ElastiCache Node Group is a feature in AWS ElastiCache that allows you to" + " scale out horizontally by adding multiple cache nodes to a cache cluster. It" + " improves performance and provides high availability for caching data in your" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "node_group_id": S("NodeGroupId"), "status": S("Status"), @@ -434,7 +505,11 @@ class AwsElastiCacheNodeGroup: class AwsElastiCacheReplicationGroup(ElastiCacheTaggable, AwsResource): kind: ClassVar[str] = "aws_elasticache_replication_group" kind_display: ClassVar[str] = "AWS ElastiCache Replication Group" - kind_description: ClassVar[str] = "ElastiCache Replication Groups in AWS are used to store and retrieve data in memory to improve the performance of web applications and reduce the load on databases." + kind_description: ClassVar[str] = ( + "ElastiCache Replication Groups in AWS are used to store and retrieve data in" + " memory to improve the performance of web applications and reduce the load on" + " databases." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-replication-groups", "ReplicationGroups") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["aws_elasticache_cache_cluster", "aws_kms_key"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py b/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py index 6b7f7fff47..cb514407e8 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py +++ b/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py @@ -19,7 +19,11 @@ class AwsBeanstalkMaxCountRule: kind: ClassVar[str] = "aws_beanstalk_max_count_rule" kind_display: ClassVar[str] = "AWS Beanstalk Max Count Rule" - kind_description: ClassVar[str] = "AWS Beanstalk Max Count Rule is a rule that can be set on an AWS Elastic Beanstalk environment to limit the maximum number of instances that can be running at a given time." + kind_description: ClassVar[str] = ( + "AWS Beanstalk Max Count Rule is a rule that can be set on an AWS Elastic" + " Beanstalk environment to limit the maximum number of instances that can be" + " running at a given time." + ) mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("Enabled"), "max_count": S("MaxCount"), @@ -34,7 +38,11 @@ class AwsBeanstalkMaxCountRule: class AwsBeanstalkMaxAgeRule: kind: ClassVar[str] = "aws_beanstalk_max_age_rule" kind_display: ClassVar[str] = "AWS Beanstalk Max Age Rule" - kind_description: ClassVar[str] = "A rule that defines the maximum age of the environments in AWS Elastic Beanstalk, which allows automatic termination of environments after a specified time period." + kind_description: ClassVar[str] = ( + "A rule that defines the maximum age of the environments in AWS Elastic" + " Beanstalk, which allows automatic termination of environments after a" + " specified time period." + ) mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("Enabled"), "max_age_in_days": S("MaxAgeInDays"), @@ -49,7 +57,11 @@ class AwsBeanstalkMaxAgeRule: class AwsBeanstalkApplicationVersionLifecycleConfig: kind: ClassVar[str] = "aws_beanstalk_application_version_lifecycle_config" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Application Version Lifecycle Configuration" - kind_description: ClassVar[str] = "An AWS Elastic Beanstalk Application Version Lifecycle Configuration allows you to define rules for automatically deploying, updating, and deleting application versions on your Elastic Beanstalk environments." + kind_description: ClassVar[str] = ( + "An AWS Elastic Beanstalk Application Version Lifecycle Configuration allows" + " you to define rules for automatically deploying, updating, and deleting" + " application versions on your Elastic Beanstalk environments." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_count_rule": S("MaxCountRule") >> Bend(AwsBeanstalkMaxCountRule.mapping), "max_age_rule": S("MaxAgeRule") >> Bend(AwsBeanstalkMaxAgeRule.mapping), @@ -62,7 +74,11 @@ class AwsBeanstalkApplicationVersionLifecycleConfig: class AwsBeanstalkApplicationResourceLifecycleConfig: kind: ClassVar[str] = "aws_beanstalk_application_resource_lifecycle_config" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Application Resource Lifecycle Configuration" - kind_description: ClassVar[str] = "The AWS Elastic Beanstalk Application Resource Lifecycle Configuration allows users to define and manage the lifecycle of resources used in an Elastic Beanstalk application." + kind_description: ClassVar[str] = ( + "The AWS Elastic Beanstalk Application Resource Lifecycle Configuration" + " allows users to define and manage the lifecycle of resources used in an" + " Elastic Beanstalk application." + ) mapping: ClassVar[Dict[str, Bender]] = { "service_role": S("ServiceRole"), "version_lifecycle_config": S("VersionLifecycleConfig") @@ -76,7 +92,10 @@ class AwsBeanstalkApplicationResourceLifecycleConfig: class AwsBeanstalkApplication(AwsResource): kind: ClassVar[str] = "aws_beanstalk_application" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Application" - kind_description: ClassVar[str] = "Elastic Beanstalk is a fully managed service that makes it easy to deploy and run applications in multiple languages." + kind_description: ClassVar[str] = ( + "Elastic Beanstalk is a fully managed service that makes it easy to deploy" + " and run applications in multiple languages." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-applications", "Applications") mapping: ClassVar[Dict[str, Bender]] = { "id": S("ApplicationName"), @@ -155,7 +174,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsBeanstalkEnvironmentTier: kind: ClassVar[str] = "aws_beanstalk_environment_tier" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Environment Tier" - kind_description: ClassVar[str] = "The environment tier in AWS Elastic Beanstalk determines the resources and features available for an Elastic Beanstalk environment. It can be either WebServer or Worker." + kind_description: ClassVar[str] = ( + "The environment tier in AWS Elastic Beanstalk determines the resources and" + " features available for an Elastic Beanstalk environment. It can be either" + " WebServer or Worker." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "type": S("Type"), "version": S("Version")} name: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -166,7 +189,10 @@ class AwsBeanstalkEnvironmentTier: class AwsBeanstalkEnvironmentLink: kind: ClassVar[str] = "aws_beanstalk_environment_link" kind_display: ClassVar[str] = "AWS Beanstalk Environment Link" - kind_description: ClassVar[str] = "AWS Beanstalk Environment Link is a reference to an AWS Elastic Beanstalk environment which provides a URL to access the deployed application." + kind_description: ClassVar[str] = ( + "AWS Beanstalk Environment Link is a reference to an AWS Elastic Beanstalk" + " environment which provides a URL to access the deployed application." + ) mapping: ClassVar[Dict[str, Bender]] = {"link_name": S("LinkName"), "environment_name": S("EnvironmentName")} link_name: Optional[str] = field(default=None) environment_name: Optional[str] = field(default=None) @@ -176,7 +202,11 @@ class AwsBeanstalkEnvironmentLink: class AwsBeanstalkAutoScalingGroupDescription: kind: ClassVar[str] = "aws_beanstalk_auto_scaling_group_description" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Auto Scaling Group Description" - kind_description: ClassVar[str] = "AWS Elastic Beanstalk Auto Scaling Group Description is a feature of AWS Elastic Beanstalk that allows dynamic scaling of resources based on the demand of your application to ensure optimal performance." + kind_description: ClassVar[str] = ( + "AWS Elastic Beanstalk Auto Scaling Group Description is a feature of AWS" + " Elastic Beanstalk that allows dynamic scaling of resources based on the" + " demand of your application to ensure optimal performance." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_group_name": S("Name"), } @@ -187,7 +217,11 @@ class AwsBeanstalkAutoScalingGroupDescription: class AwsBeanstalkInstancesDescription: kind: ClassVar[str] = "aws_beanstalk_instances_description" kind_display: ClassVar[str] = "AWS Beanstalk Instances Description" - kind_description: ClassVar[str] = "Beanstalk is a fully managed service by AWS that makes it easy to deploy, run, and scale applications in the cloud. Beanstalk instances are the virtual servers on which applications are deployed and run in AWS Beanstalk." + kind_description: ClassVar[str] = ( + "Beanstalk is a fully managed service by AWS that makes it easy to deploy," + " run, and scale applications in the cloud. Beanstalk instances are the" + " virtual servers on which applications are deployed and run in AWS Beanstalk." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_id": S("Id"), } @@ -198,7 +232,11 @@ class AwsBeanstalkInstancesDescription: class AwsBeanstalkLoadBalancerDescription: kind: ClassVar[str] = "aws_beanstalk_load_balancer_description" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Load Balancer Description" - kind_description: ClassVar[str] = "AWS Elastic Beanstalk Load Balancer Description is a string representing the description of the load balancer in the Elastic Beanstalk service provided by Amazon Web Services." + kind_description: ClassVar[str] = ( + "AWS Elastic Beanstalk Load Balancer Description is a string representing the" + " description of the load balancer in the Elastic Beanstalk service provided" + " by Amazon Web Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "load_balancer_name": S("Name"), } @@ -209,7 +247,11 @@ class AwsBeanstalkLoadBalancerDescription: class AwsBeanstalkQueueDescription: kind: ClassVar[str] = "aws_beanstalk_queue_description" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Queue Description" - kind_description: ClassVar[str] = "Elastic Beanstalk is a platform for deploying and running web applications. This resource represents the description of a queue within the Elastic Beanstalk environment." + kind_description: ClassVar[str] = ( + "Elastic Beanstalk is a platform for deploying and running web applications." + " This resource represents the description of a queue within the Elastic" + " Beanstalk environment." + ) mapping: ClassVar[Dict[str, Bender]] = { "queue_name": S("Name"), "queue_url": S("URL"), @@ -222,7 +264,12 @@ class AwsBeanstalkQueueDescription: class AwsBeanstalkEnvironmentResourcesDescription: kind: ClassVar[str] = "aws_beanstalk_environment_resources" kind_display: ClassVar[str] = "AWS Beanstalk Environment Resources" - kind_description: ClassVar[str] = "Beanstalk Environment Resources refer to the compute, storage, and networking resources allocated to an application environment in AWS Elastic Beanstalk, a fully managed service for deploying and scaling web applications." + kind_description: ClassVar[str] = ( + "Beanstalk Environment Resources refer to the compute, storage, and" + " networking resources allocated to an application environment in AWS Elastic" + " Beanstalk, a fully managed service for deploying and scaling web" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_scaling_groups": S("AutoScalingGroups") >> ForallBend(AwsBeanstalkAutoScalingGroupDescription.mapping), "instances": S("Instances") >> ForallBend(AwsBeanstalkInstancesDescription.mapping), @@ -239,7 +286,11 @@ class AwsBeanstalkEnvironmentResourcesDescription: class AwsBeanstalkEnvironment(AwsResource): kind: ClassVar[str] = "aws_beanstalk_environment" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Environment" - kind_description: ClassVar[str] = "AWS Elastic Beanstalk is a service that makes it easy to deploy, run, and scale applications in the AWS cloud. An Elastic Beanstalk environment is a version of your application that is deployed and running on AWS." + kind_description: ClassVar[str] = ( + "AWS Elastic Beanstalk is a service that makes it easy to deploy, run, and" + " scale applications in the AWS cloud. An Elastic Beanstalk environment is a" + " version of your application that is deployed and running on AWS." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-environments", "Environments") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/elb.py b/plugins/aws/resoto_plugin_aws/resource/elb.py index 28efbb621d..24e3e1f16e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elb.py +++ b/plugins/aws/resoto_plugin_aws/resource/elb.py @@ -57,7 +57,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsElbListener: kind: ClassVar[str] = "aws_elb_listener" kind_display: ClassVar[str] = "AWS ELB Listener" - kind_description: ClassVar[str] = "ELB (Elastic Load Balancer) Listeners define the rules for how traffic should be distributed between registered instances in an application load balancer or network load balancer." + kind_description: ClassVar[str] = ( + "ELB (Elastic Load Balancer) Listeners define the rules for how traffic" + " should be distributed between registered instances in an application load" + " balancer or network load balancer." + ) mapping: ClassVar[Dict[str, Bender]] = { "protocol": S("Protocol"), "load_balancer_port": S("LoadBalancerPort"), @@ -76,7 +80,11 @@ class AwsElbListener: class AwsElbListenerDescription: kind: ClassVar[str] = "aws_elb_listener_description" kind_display: ClassVar[str] = "AWS ELB Listener Description" - kind_description: ClassVar[str] = "ELB Listener Description provides information about a listener used in Elastic Load Balancing (ELB) service in AWS. It contains details such as the protocol, port, and SSL certificate configuration for the listener." + kind_description: ClassVar[str] = ( + "ELB Listener Description provides information about a listener used in" + " Elastic Load Balancing (ELB) service in AWS. It contains details such as the" + " protocol, port, and SSL certificate configuration for the listener." + ) mapping: ClassVar[Dict[str, Bender]] = { "listener": S("Listener") >> Bend(AwsElbListener.mapping), "policy_names": S("PolicyNames", default=[]), @@ -89,7 +97,11 @@ class AwsElbListenerDescription: class AwsElbAppCookieStickinessPolicy: kind: ClassVar[str] = "aws_elb_app_cookie_stickiness_policy" kind_display: ClassVar[str] = "AWS ELB Application Cookie Stickiness Policy" - kind_description: ClassVar[str] = "ELB Application Cookie Stickiness Policy is a feature provided by AWS Elastic Load Balancer that allows the load balancer to bind a user's session to a specific instance based on the provided application cookie." + kind_description: ClassVar[str] = ( + "ELB Application Cookie Stickiness Policy is a feature provided by AWS" + " Elastic Load Balancer that allows the load balancer to bind a user's session" + " to a specific instance based on the provided application cookie." + ) mapping: ClassVar[Dict[str, Bender]] = {"policy_name": S("PolicyName"), "cookie_name": S("CookieName")} policy_name: Optional[str] = field(default=None) cookie_name: Optional[str] = field(default=None) @@ -99,7 +111,11 @@ class AwsElbAppCookieStickinessPolicy: class AwsElbLBCookieStickinessPolicy: kind: ClassVar[str] = "aws_elb_lb_cookie_stickiness_policy" kind_display: ClassVar[str] = "AWS ELB LB Cookie Stickiness Policy" - kind_description: ClassVar[str] = "Cookie stickiness policy for an Elastic Load Balancer (ELB) in Amazon Web Services (AWS) ensures that subsequent requests from a client are sent to the same backend server, based on the presence of a cookie." + kind_description: ClassVar[str] = ( + "Cookie stickiness policy for an Elastic Load Balancer (ELB) in Amazon Web" + " Services (AWS) ensures that subsequent requests from a client are sent to" + " the same backend server, based on the presence of a cookie." + ) mapping: ClassVar[Dict[str, Bender]] = { "policy_name": S("PolicyName"), "cookie_expiration_period": S("CookieExpirationPeriod"), @@ -112,7 +128,10 @@ class AwsElbLBCookieStickinessPolicy: class AwsElbPolicies: kind: ClassVar[str] = "aws_elb_policies" kind_display: ClassVar[str] = "AWS ELB Policies" - kind_description: ClassVar[str] = "ELB Policies are rules that define how the Elastic Load Balancer distributes incoming traffic to the registered instances." + kind_description: ClassVar[str] = ( + "ELB Policies are rules that define how the Elastic Load Balancer distributes" + " incoming traffic to the registered instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "app_cookie_stickiness_policies": S("AppCookieStickinessPolicies", default=[]) >> ForallBend(AwsElbAppCookieStickinessPolicy.mapping), @@ -129,7 +148,11 @@ class AwsElbPolicies: class AwsElbBackendServerDescription: kind: ClassVar[str] = "aws_elb_backend_server_description" kind_display: ClassVar[str] = "AWS ELB Backend Server Description" - kind_description: ClassVar[str] = "This is a description of the backend server in an AWS Elastic Load Balancer (ELB). The backend server is the target where the ELB forwards incoming requests." + kind_description: ClassVar[str] = ( + "This is a description of the backend server in an AWS Elastic Load Balancer" + " (ELB). The backend server is the target where the ELB forwards incoming" + " requests." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_port": S("InstancePort"), "policy_names": S("PolicyNames", default=[]), @@ -142,7 +165,11 @@ class AwsElbBackendServerDescription: class AwsElbHealthCheck: kind: ClassVar[str] = "aws_elb_health_check" kind_display: ClassVar[str] = "AWS ELB Health Check" - kind_description: ClassVar[str] = "ELB Health Check is a feature provided by Amazon Web Services to monitor the health of resources behind an Elastic Load Balancer (ELB) and automatically adjust traffic flow based on the health check results." + kind_description: ClassVar[str] = ( + "ELB Health Check is a feature provided by Amazon Web Services to monitor the" + " health of resources behind an Elastic Load Balancer (ELB) and automatically" + " adjust traffic flow based on the health check results." + ) mapping: ClassVar[Dict[str, Bender]] = { "target": S("Target"), "interval": S("Interval"), @@ -161,7 +188,11 @@ class AwsElbHealthCheck: class AwsElbSourceSecurityGroup: kind: ClassVar[str] = "aws_elb_source_security_group" kind_display: ClassVar[str] = "AWS ELB Source Security Group" - kind_description: ClassVar[str] = "ELB Source Security Group is a feature in AWS Elastic Load Balancing that allows you to control access to your load balancer by specifying the source security group of the instances." + kind_description: ClassVar[str] = ( + "ELB Source Security Group is a feature in AWS Elastic Load Balancing that" + " allows you to control access to your load balancer by specifying the source" + " security group of the instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"owner_alias": S("OwnerAlias"), "group_name": S("GroupName")} owner_alias: Optional[str] = field(default=None) group_name: Optional[str] = field(default=None) @@ -171,7 +202,12 @@ class AwsElbSourceSecurityGroup: class AwsElb(ElbTaggable, AwsResource, BaseLoadBalancer): kind: ClassVar[str] = "aws_elb" kind_display: ClassVar[str] = "AWS ELB" - kind_description: ClassVar[str] = "ELB stands for Elastic Load Balancer. It is a service provided by Amazon Web Services that automatically distributes incoming application traffic across multiple Amazon EC2 instances, making it easier to achieve fault tolerance in your applications." + kind_description: ClassVar[str] = ( + "ELB stands for Elastic Load Balancer. It is a service provided by Amazon Web" + " Services that automatically distributes incoming application traffic across" + " multiple Amazon EC2 instances, making it easier to achieve fault tolerance" + " in your applications." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-load-balancers", diff --git a/plugins/aws/resoto_plugin_aws/resource/elbv2.py b/plugins/aws/resoto_plugin_aws/resource/elbv2.py index 03a010ece6..8aa238af44 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elbv2.py +++ b/plugins/aws/resoto_plugin_aws/resource/elbv2.py @@ -57,7 +57,12 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsAlbLoadBalancerState: kind: ClassVar[str] = "aws_alb_load_balancer_state" kind_display: ClassVar[str] = "AWS ALB Load Balancer State" - kind_description: ClassVar[str] = "ALB Load Balancer State represents the state of an Application Load Balancer (ALB) in Amazon Web Services. The ALB distributes incoming traffic across multiple targets, such as EC2 instances, containers, and IP addresses, to ensure high availability and scalability of applications." + kind_description: ClassVar[str] = ( + "ALB Load Balancer State represents the state of an Application Load Balancer" + " (ALB) in Amazon Web Services. The ALB distributes incoming traffic across" + " multiple targets, such as EC2 instances, containers, and IP addresses, to" + " ensure high availability and scalability of applications." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("Code"), "reason": S("Reason")} code: Optional[str] = field(default=None) reason: Optional[str] = field(default=None) @@ -67,7 +72,10 @@ class AwsAlbLoadBalancerState: class AwsAlbLoadBalancerAddress: kind: ClassVar[str] = "aws_alb_load_balancer_address" kind_display: ClassVar[str] = "AWS ALB Load Balancer Address" - kind_description: ClassVar[str] = "An address associated with an Application Load Balancer (ALB) in AWS, which is responsible for distributing incoming traffic across multiple targets." + kind_description: ClassVar[str] = ( + "An address associated with an Application Load Balancer (ALB) in AWS, which" + " is responsible for distributing incoming traffic across multiple targets." + ) mapping: ClassVar[Dict[str, Bender]] = { "ip_address": S("IpAddress"), "allocation_id": S("AllocationId"), @@ -84,7 +92,11 @@ class AwsAlbLoadBalancerAddress: class AwsAlbAvailabilityZone: kind: ClassVar[str] = "aws_alb_availability_zone" kind_display: ClassVar[str] = "AWS ALB Availability Zone" - kind_description: ClassVar[str] = "ALB Availability Zone is a feature of AWS Application Load Balancer that allows distribution of incoming traffic to different availability zones within a region for increased availability and fault tolerance." + kind_description: ClassVar[str] = ( + "ALB Availability Zone is a feature of AWS Application Load Balancer that" + " allows distribution of incoming traffic to different availability zones" + " within a region for increased availability and fault tolerance." + ) mapping: ClassVar[Dict[str, Bender]] = { "zone_name": S("ZoneName"), "subnet_id": S("SubnetId"), @@ -102,7 +114,11 @@ class AwsAlbAvailabilityZone: class AwsAlbCertificate: kind: ClassVar[str] = "aws_alb_certificate" kind_display: ClassVar[str] = "AWS ALB Certificate" - kind_description: ClassVar[str] = "AWS ALB Certificate is a digital certificate used to secure HTTPS connections for an Application Load Balancer (ALB) in Amazon Web Services (AWS)." + kind_description: ClassVar[str] = ( + "AWS ALB Certificate is a digital certificate used to secure HTTPS" + " connections for an Application Load Balancer (ALB) in Amazon Web Services" + " (AWS)." + ) mapping: ClassVar[Dict[str, Bender]] = {"certificate_arn": S("CertificateArn"), "is_default": S("IsDefault")} certificate_arn: Optional[str] = field(default=None) is_default: Optional[bool] = field(default=None) @@ -112,7 +128,11 @@ class AwsAlbCertificate: class AwsAlbAuthenticateOidcActionConfig: kind: ClassVar[str] = "aws_alb_authenticate_oidc_action_config" kind_display: ClassVar[str] = "AWS ALB Authenticate OIDC Action Configuration" - kind_description: ClassVar[str] = "The AWS ALB Authenticate OIDC Action Configuration allows users to configure OpenID Connect (OIDC) authentication for Application Load Balancers (ALBs) in Amazon Web Services." + kind_description: ClassVar[str] = ( + "The AWS ALB Authenticate OIDC Action Configuration allows users to configure" + " OpenID Connect (OIDC) authentication for Application Load Balancers (ALBs)" + " in Amazon Web Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "issuer": S("Issuer"), "authorization_endpoint": S("AuthorizationEndpoint"), @@ -145,7 +165,10 @@ class AwsAlbAuthenticateOidcActionConfig: class AwsAlbAuthenticateCognitoActionConfig: kind: ClassVar[str] = "aws_alb_authenticate_cognito_action_config" kind_display: ClassVar[str] = "AWS ALB Authenticate Cognito Action Config" - kind_description: ClassVar[str] = "ALB Authenticate Cognito Action Config is a configuration option for an AWS Application Load Balancer to authenticate users via Amazon Cognito." + kind_description: ClassVar[str] = ( + "ALB Authenticate Cognito Action Config is a configuration option for an AWS" + " Application Load Balancer to authenticate users via Amazon Cognito." + ) mapping: ClassVar[Dict[str, Bender]] = { "user_pool_arn": S("UserPoolArn"), "user_pool_client_id": S("UserPoolClientId"), @@ -170,7 +193,12 @@ class AwsAlbAuthenticateCognitoActionConfig: class AwsAlbRedirectActionConfig: kind: ClassVar[str] = "aws_alb_redirect_action_config" kind_display: ClassVar[str] = "AWS ALB Redirect Action Config" - kind_description: ClassVar[str] = "ALB Redirect Action Config is a configuration for redirect actions in the Application Load Balancer (ALB) service in Amazon Web Services. It allows for redirecting incoming requests to a different URL or path in a flexible and configurable way." + kind_description: ClassVar[str] = ( + "ALB Redirect Action Config is a configuration for redirect actions in the" + " Application Load Balancer (ALB) service in Amazon Web Services. It allows" + " for redirecting incoming requests to a different URL or path in a flexible" + " and configurable way." + ) mapping: ClassVar[Dict[str, Bender]] = { "protocol": S("Protocol"), "port": S("Port"), @@ -191,7 +219,12 @@ class AwsAlbRedirectActionConfig: class AwsAlbFixedResponseActionConfig: kind: ClassVar[str] = "aws_alb_fixed_response_action_config" kind_display: ClassVar[str] = "AWS ALB Fixed Response Action Config" - kind_description: ClassVar[str] = "ALB Fixed Response Action Config is a configuration for the fixed response action on an Application Load Balancer (ALB) in Amazon Web Services (AWS). It allows users to define custom HTTP responses with fixed status codes and messages for specific paths or conditions." + kind_description: ClassVar[str] = ( + "ALB Fixed Response Action Config is a configuration for the fixed response" + " action on an Application Load Balancer (ALB) in Amazon Web Services (AWS)." + " It allows users to define custom HTTP responses with fixed status codes and" + " messages for specific paths or conditions." + ) mapping: ClassVar[Dict[str, Bender]] = { "message_body": S("MessageBody"), "status_code": S("StatusCode"), @@ -206,7 +239,11 @@ class AwsAlbFixedResponseActionConfig: class AwsAlbTargetGroupTuple: kind: ClassVar[str] = "aws_alb_target_group_tuple" kind_display: ClassVar[str] = "AWS ALB Target Group Tuple" - kind_description: ClassVar[str] = "ALB Target Group Tuples are used in AWS Application Load Balancers to define rules for routing incoming requests to registered targets, such as EC2 instances or Lambda functions." + kind_description: ClassVar[str] = ( + "ALB Target Group Tuples are used in AWS Application Load Balancers to define" + " rules for routing incoming requests to registered targets, such as EC2" + " instances or Lambda functions." + ) mapping: ClassVar[Dict[str, Bender]] = {"target_group_arn": S("TargetGroupArn"), "weight": S("Weight")} target_group_arn: Optional[str] = field(default=None) weight: Optional[int] = field(default=None) @@ -216,7 +253,11 @@ class AwsAlbTargetGroupTuple: class AwsAlbTargetGroupStickinessConfig: kind: ClassVar[str] = "aws_alb_target_group_stickiness_config" kind_display: ClassVar[str] = "AWS ALB Target Group Stickiness Configuration" - kind_description: ClassVar[str] = "ALB Target Group Stickiness Configuration allows you to enable or configure stickiness for incoming traffic to an Application Load Balancer (ALB) target group in AWS." + kind_description: ClassVar[str] = ( + "ALB Target Group Stickiness Configuration allows you to enable or configure" + " stickiness for incoming traffic to an Application Load Balancer (ALB) target" + " group in AWS." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("Enabled"), "duration_seconds": S("DurationSeconds")} enabled: Optional[bool] = field(default=None) duration_seconds: Optional[int] = field(default=None) @@ -226,7 +267,11 @@ class AwsAlbTargetGroupStickinessConfig: class AwsAlbForwardActionConfig: kind: ClassVar[str] = "aws_alb_forward_action_config" kind_display: ClassVar[str] = "AWS ALB Forward Action Configuration" - kind_description: ClassVar[str] = "The AWS Application Load Balancer (ALB) Forward Action Configuration represents the configuration for forwarding requests to a target group in the ALB." + kind_description: ClassVar[str] = ( + "The AWS Application Load Balancer (ALB) Forward Action Configuration" + " represents the configuration for forwarding requests to a target group in" + " the ALB." + ) mapping: ClassVar[Dict[str, Bender]] = { "target_groups": S("TargetGroups", default=[]) >> ForallBend(AwsAlbTargetGroupTuple.mapping), "target_group_stickiness_config": S("TargetGroupStickinessConfig") @@ -240,7 +285,10 @@ class AwsAlbForwardActionConfig: class AwsAlbAction: kind: ClassVar[str] = "aws_alb_action" kind_display: ClassVar[str] = "AWS Application Load Balancer Action" - kind_description: ClassVar[str] = "An AWS Application Load Balancer Action defines how the load balancer should distribute incoming requests to target instances or services." + kind_description: ClassVar[str] = ( + "An AWS Application Load Balancer Action defines how the load balancer should" + " distribute incoming requests to target instances or services." + ) mapping: ClassVar[Dict[str, Bender]] = { "type": S("Type"), "target_group_arn": S("TargetGroupArn"), @@ -266,7 +314,10 @@ class AwsAlbAction: class AwsAlbListener: kind: ClassVar[str] = "aws_alb_listener" kind_display: ClassVar[str] = "AWS ALB Listener" - kind_description: ClassVar[str] = "An Application Load Balancer (ALB) Listener is a configuration that defines how an ALB distributes incoming traffic to target groups." + kind_description: ClassVar[str] = ( + "An Application Load Balancer (ALB) Listener is a configuration that defines" + " how an ALB distributes incoming traffic to target groups." + ) mapping: ClassVar[Dict[str, Bender]] = { "listener_arn": S("ListenerArn"), "load_balancer_arn": S("LoadBalancerArn"), @@ -291,7 +342,11 @@ class AwsAlbListener: class AwsAlb(ElbV2Taggable, AwsResource, BaseLoadBalancer): kind: ClassVar[str] = "aws_alb" kind_display: ClassVar[str] = "AWS ALB" - kind_description: ClassVar[str] = "AWS ALB is an Application Load Balancer that distributes incoming application traffic across multiple targets, such as EC2 instances, in multiple availability zones." + kind_description: ClassVar[str] = ( + "AWS ALB is an Application Load Balancer that distributes incoming" + " application traffic across multiple targets, such as EC2 instances, in" + " multiple availability zones." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-load-balancers", @@ -463,7 +518,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsAlbMatcher: kind: ClassVar[str] = "aws_alb_matcher" kind_display: ClassVar[str] = "AWS ALB Matcher" - kind_description: ClassVar[str] = "ALB Matchers are rules defined for an Application Load Balancer (ALB) to route incoming requests to specific target groups based on the content of the request." + kind_description: ClassVar[str] = ( + "ALB Matchers are rules defined for an Application Load Balancer (ALB) to" + " route incoming requests to specific target groups based on the content of" + " the request." + ) mapping: ClassVar[Dict[str, Bender]] = {"http_code": S("HttpCode"), "grpc_code": S("GrpcCode")} http_code: Optional[str] = field(default=None) grpc_code: Optional[str] = field(default=None) @@ -473,7 +532,12 @@ class AwsAlbMatcher: class AwsAlbTargetDescription: kind: ClassVar[str] = "aws_alb_target_description" kind_display: ClassVar[str] = "AWS ALB Target Description" - kind_description: ClassVar[str] = "The target description specifies information about the instances registered with an Application Load Balancer (ALB) in Amazon Web Services. This includes details such as the instance ID, IP address, health check status, and other metadata." + kind_description: ClassVar[str] = ( + "The target description specifies information about the instances registered" + " with an Application Load Balancer (ALB) in Amazon Web Services. This" + " includes details such as the instance ID, IP address, health check status," + " and other metadata." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "port": S("Port"), @@ -488,7 +552,10 @@ class AwsAlbTargetDescription: class AwsAlbTargetHealth: kind: ClassVar[str] = "aws_alb_target_health" kind_display: ClassVar[str] = "AWS ALB Target Health" - kind_description: ClassVar[str] = "ALB Target Health is a feature of AWS Application Load Balancer that provides information about the current health status of registered targets." + kind_description: ClassVar[str] = ( + "ALB Target Health is a feature of AWS Application Load Balancer that" + " provides information about the current health status of registered targets." + ) mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "reason": S("Reason"), "description": S("Description")} state: Optional[str] = field(default=None) reason: Optional[str] = field(default=None) @@ -499,7 +566,12 @@ class AwsAlbTargetHealth: class AwsAlbTargetHealthDescription: kind: ClassVar[str] = "aws_alb_target_health_description" kind_display: ClassVar[str] = "AWS ALB Target Health Description" - kind_description: ClassVar[str] = "ALB Target Health Description is a feature of AWS Application Load Balancer that provides information about the health of targets registered with the load balancer, including target status and reason for any health checks failures." + kind_description: ClassVar[str] = ( + "ALB Target Health Description is a feature of AWS Application Load Balancer" + " that provides information about the health of targets registered with the" + " load balancer, including target status and reason for any health checks" + " failures." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-target-health", @@ -520,7 +592,11 @@ class AwsAlbTargetHealthDescription: class AwsAlbTargetGroup(ElbV2Taggable, AwsResource): kind: ClassVar[str] = "aws_alb_target_group" kind_display: ClassVar[str] = "AWS ALB Target Group" - kind_description: ClassVar[str] = "An ALB Target Group is a group of instances or IP addresses registered with an Application Load Balancer that receives traffic and distributes it to the registered targets." + kind_description: ClassVar[str] = ( + "An ALB Target Group is a group of instances or IP addresses registered with" + " an Application Load Balancer that receives traffic and distributes it to the" + " registered targets." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-target-groups", diff --git a/plugins/aws/resoto_plugin_aws/resource/glacier.py b/plugins/aws/resoto_plugin_aws/resource/glacier.py index 60075f37c0..a8f2fae757 100644 --- a/plugins/aws/resoto_plugin_aws/resource/glacier.py +++ b/plugins/aws/resoto_plugin_aws/resource/glacier.py @@ -18,7 +18,10 @@ class AwsGlacierInventoryRetrievalParameters: kind: ClassVar[str] = "aws_glacier_job_inventory_retrieval_parameters" kind_display: ClassVar[str] = "AWS Glacier Job Inventory Retrieval Parameters" - kind_description: ClassVar[str] = "Retrieval parameters for inventory jobs in Amazon Glacier service that allow users to access metadata about their Glacier vault inventory." + kind_description: ClassVar[str] = ( + "Retrieval parameters for inventory jobs in Amazon Glacier service that allow" + " users to access metadata about their Glacier vault inventory." + ) mapping: ClassVar[Dict[str, Bender]] = { "output_format": S("Format"), "start_date": S("StartDate"), @@ -35,7 +38,10 @@ class AwsGlacierInventoryRetrievalParameters: class AwsGlacierSelectParameters: kind: ClassVar[str] = "aws_glacier_job_select_parameters" kind_display: ClassVar[str] = "AWS Glacier Job Select Parameters" - kind_description: ClassVar[str] = "AWS Glacier Job Select Parameters are specific options and configurations for selecting and querying data from Glacier vaults for retrieval." + kind_description: ClassVar[str] = ( + "AWS Glacier Job Select Parameters are specific options and configurations" + " for selecting and querying data from Glacier vaults for retrieval." + ) mapping: ClassVar[Dict[str, Bender]] = { "input_serialization": S("InputSerialization"), "expression_type": S("ExpressionType"), @@ -52,7 +58,11 @@ class AwsGlacierSelectParameters: class AwsGlacierBucketEncryption: kind: ClassVar[str] = "aws_glacier_bucket_encryption" kind_display: ClassVar[str] = "AWS Glacier Bucket Encryption" - kind_description: ClassVar[str] = "AWS Glacier is a long-term archival storage service, and AWS Glacier Bucket Encryption provides the ability to encrypt data at rest in Glacier buckets to enhance data security and compliance." + kind_description: ClassVar[str] = ( + "AWS Glacier is a long-term archival storage service, and AWS Glacier Bucket" + " Encryption provides the ability to encrypt data at rest in Glacier buckets" + " to enhance data security and compliance." + ) mapping: ClassVar[Dict[str, Bender]] = { "encryption_type": S("EncryptionType"), "kms_key_id": S("KMSKeyId"), @@ -67,7 +77,10 @@ class AwsGlacierBucketEncryption: class AwsGlacierAcl: kind: ClassVar[str] = "aws_glacier_acl" kind_display: ClassVar[str] = "AWS Glacier ACL" - kind_description: ClassVar[str] = "AWS Glacier ACL is an access control feature in Amazon Glacier that allows users to manage permissions for their Glacier vaults and archives." + kind_description: ClassVar[str] = ( + "AWS Glacier ACL is an access control feature in Amazon Glacier that allows" + " users to manage permissions for their Glacier vaults and archives." + ) mapping: ClassVar[Dict[str, Bender]] = { "grantee": S("Grantee"), "permission": S("Permission"), @@ -80,7 +93,11 @@ class AwsGlacierAcl: class AwsGlacierJobBucket: kind: ClassVar[str] = "aws_glacier_job_bucket" kind_display: ClassVar[str] = "AWS Glacier Job Bucket" - kind_description: ClassVar[str] = "The AWS Glacier Job Bucket is a storage location used for managing jobs in Amazon Glacier, a secure and durable storage service for long-term data archiving and backup." + kind_description: ClassVar[str] = ( + "The AWS Glacier Job Bucket is a storage location used for managing jobs in" + " Amazon Glacier, a secure and durable storage service for long-term data" + " archiving and backup." + ) mapping: ClassVar[Dict[str, Bender]] = { "bucket_name": S("BucketName"), "prefix": S("Prefix"), @@ -104,7 +121,10 @@ class AwsGlacierJobBucket: class AwsGlacierJobOutputLocation: kind: ClassVar[str] = "aws_glacier_job_output_location" kind_display: ClassVar[str] = "AWS Glacier Job Output Location" - kind_description: ClassVar[str] = "The AWS Glacier Job Output Location refers to the destination where the output of an AWS Glacier job is stored." + kind_description: ClassVar[str] = ( + "The AWS Glacier Job Output Location refers to the destination where the" + " output of an AWS Glacier job is stored." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3": S("S3") >> Bend(AwsGlacierJobBucket.mapping), } @@ -115,7 +135,10 @@ class AwsGlacierJobOutputLocation: class AwsGlacierJob(AwsResource): kind: ClassVar[str] = "aws_glacier_job" kind_display: ClassVar[str] = "AWS Glacier Job" - kind_description: ClassVar[str] = "AWS Glacier Jobs are used to manage and execute operations on data stored in Amazon S3 Glacier, such as data retrieval or inventory retrieval." + kind_description: ClassVar[str] = ( + "AWS Glacier Jobs are used to manage and execute operations on data stored in" + " Amazon S3 Glacier, such as data retrieval or inventory retrieval." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["aws_kms_key"], @@ -184,7 +207,10 @@ def service_name(cls) -> str: class AwsGlacierVault(AwsResource): kind: ClassVar[str] = "aws_glacier_vault" kind_display: ClassVar[str] = "AWS Glacier Vault" - kind_description: ClassVar[str] = "AWS Glacier Vaults are used for long term data archiving and backup, providing a secure and durable storage solution with low cost." + kind_description: ClassVar[str] = ( + "AWS Glacier Vaults are used for long term data archiving and backup," + " providing a secure and durable storage solution with low cost." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-vaults", "VaultList") reference_kinds: ClassVar[ModelReference] = { "successors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/iam.py b/plugins/aws/resoto_plugin_aws/resource/iam.py index 70fe91f955..a82b8ae81e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/iam.py +++ b/plugins/aws/resoto_plugin_aws/resource/iam.py @@ -58,7 +58,10 @@ def iam_delete_tag(resource: AwsResource, client: AwsClient, action: str, key: s class AwsIamPolicyDetail: kind: ClassVar[str] = "aws_iam_policy_detail" kind_display: ClassVar[str] = "AWS IAM Policy Detail" - kind_description: ClassVar[str] = "IAM Policy Detail provides information about the permissions and access control settings defined in an IAM policy." + kind_description: ClassVar[str] = ( + "IAM Policy Detail provides information about the permissions and access" + " control settings defined in an IAM policy." + ) mapping: ClassVar[Dict[str, Bender]] = {"policy_name": S("PolicyName"), "policy_document": S("PolicyDocument")} policy_name: Optional[str] = field(default=None) policy_document: Optional[Json] = field(default=None) @@ -68,7 +71,13 @@ class AwsIamPolicyDetail: class AwsIamAttachedPermissionsBoundary: kind: ClassVar[str] = "aws_iam_attached_permissions_boundary" kind_display: ClassVar[str] = "AWS IAM Attached Permissions Boundary" - kind_description: ClassVar[str] = "IAM Attached Permissions Boundary is a feature in AWS Identity and Access Management (IAM) that allows you to set a permissions boundary for an IAM entity (user or role), limiting the maximum permissions that the entity can have. This helps to enforce least privilege access for IAM entities within AWS." + kind_description: ClassVar[str] = ( + "IAM Attached Permissions Boundary is a feature in AWS Identity and Access" + " Management (IAM) that allows you to set a permissions boundary for an IAM" + " entity (user or role), limiting the maximum permissions that the entity can" + " have. This helps to enforce least privilege access for IAM entities within" + " AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "permissions_boundary_type": S("PermissionsBoundaryType"), "permissions_boundary_arn": S("PermissionsBoundaryArn"), @@ -81,7 +90,11 @@ class AwsIamAttachedPermissionsBoundary: class AwsIamRoleLastUsed: kind: ClassVar[str] = "aws_iam_role_last_used" kind_display: ClassVar[str] = "AWS IAM Role Last Used" - kind_description: ClassVar[str] = "IAM Role Last Used is a feature in AWS Identity and Access Management (IAM) that provides information on when an IAM role was last used to access resources." + kind_description: ClassVar[str] = ( + "IAM Role Last Used is a feature in AWS Identity and Access Management (IAM)" + " that provides information on when an IAM role was last used to access" + " resources." + ) mapping: ClassVar[Dict[str, Bender]] = {"last_used": S("LastUsedDate"), "region": S("Region")} last_used: Optional[datetime] = field(default=None) region: Optional[str] = field(default=None) @@ -92,7 +105,12 @@ class AwsIamRole(AwsResource): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_role" kind_display: ClassVar[str] = "AWS IAM Role" - kind_description: ClassVar[str] = "IAM Roles are a way to delegate permissions to entities that you trust. IAM roles are similar to users, in that they are both AWS identity types. However, instead of being uniquely associated with one person, IAM roles are intended to be assumable by anyone who needs it." + kind_description: ClassVar[str] = ( + "IAM Roles are a way to delegate permissions to entities that you trust. IAM" + " roles are similar to users, in that they are both AWS identity types." + " However, instead of being uniquely associated with one person, IAM roles are" + " intended to be assumable by anyone who needs it." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["aws_iam_policy", "aws_iam_instance_profile"], @@ -200,7 +218,12 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsIamServerCertificate(AwsResource, BaseCertificate): kind: ClassVar[str] = "aws_iam_server_certificate" kind_display: ClassVar[str] = "AWS IAM Server Certificate" - kind_description: ClassVar[str] = "AWS IAM Server Certificate is a digital certificate that AWS Identity and Access Management (IAM) uses to verify the identity of a resource like an HTTPS server. It enables secure communication between the server and AWS services." + kind_description: ClassVar[str] = ( + "AWS IAM Server Certificate is a digital certificate that AWS Identity and" + " Access Management (IAM) uses to verify the identity of a resource like an" + " HTTPS server. It enables secure communication between the server and AWS" + " services." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-server-certificates", "ServerCertificateMetadataList" ) @@ -256,7 +279,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsIamPolicyVersion: kind: ClassVar[str] = "aws_iam_policy_version" kind_display: ClassVar[str] = "AWS IAM Policy Version" - kind_description: ClassVar[str] = "IAM Policy Version represents a specific version of an IAM policy definition in AWS Identity and Access Management service, which defines permissions and access control for AWS resources." + kind_description: ClassVar[str] = ( + "IAM Policy Version represents a specific version of an IAM policy definition" + " in AWS Identity and Access Management service, which defines permissions and" + " access control for AWS resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "document": S("Document"), "version_id": S("VersionId"), @@ -283,7 +310,10 @@ class AwsIamPolicy(AwsResource, BasePolicy): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_policy" kind_display: ClassVar[str] = "AWS IAM Policy" - kind_description: ClassVar[str] = "IAM Policies in AWS are used to define permissions and access controls for users, groups, and roles within the AWS ecosystem." + kind_description: ClassVar[str] = ( + "IAM Policies in AWS are used to define permissions and access controls for" + " users, groups, and roles within the AWS ecosystem." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("PolicyId"), "tags": S("Tags", default=[]) >> ToDict(), @@ -353,7 +383,11 @@ class AwsIamGroup(AwsResource, BaseGroup): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_group" kind_display: ClassVar[str] = "AWS IAM Group" - kind_description: ClassVar[str] = "IAM Groups are collections of IAM users. They allow you to manage permissions collectively for multiple users, making it easier to manage access to AWS resources." + kind_description: ClassVar[str] = ( + "IAM Groups are collections of IAM users. They allow you to manage" + " permissions collectively for multiple users, making it easier to manage" + " access to AWS resources." + ) reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_iam_policy"], "delete": ["aws_iam_policy"]}, } @@ -425,7 +459,13 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsIamAccessKeyLastUsed: kind: ClassVar[str] = "aws_iam_access_key_last_used" kind_display: ClassVar[str] = "AWS IAM Access Key Last Used" - kind_description: ClassVar[str] = "IAM Access Key Last Used is a feature in Amazon's Identity and Access Management (IAM) service that allows you to view the last time an IAM access key was used and the region from which the key was used. This helps you monitor the usage of access keys and detect any potential unauthorized access." + kind_description: ClassVar[str] = ( + "IAM Access Key Last Used is a feature in Amazon's Identity and Access" + " Management (IAM) service that allows you to view the last time an IAM access" + " key was used and the region from which the key was used. This helps you" + " monitor the usage of access keys and detect any potential unauthorized" + " access." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_used": S("LastUsedDate"), "last_rotated": S("LastRotated"), @@ -443,7 +483,10 @@ class AwsIamAccessKey(AwsResource, BaseAccessKey): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_access_key" kind_display: ClassVar[str] = "AWS IAM Access Key" - kind_description: ClassVar[str] = "An AWS IAM Access Key is used to securely access AWS services and resources using API operations." + kind_description: ClassVar[str] = ( + "An AWS IAM Access Key is used to securely access AWS services and resources" + " using API operations." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("AccessKeyId"), "tags": S("Tags", default=[]) >> ToDict(), @@ -555,7 +598,11 @@ def from_str(lines: str) -> Dict[str, "CredentialReportLine"]: class AwsIamVirtualMfaDevice: kind: ClassVar[str] = "aws_iam_virtual_mfa_device" kind_display: ClassVar[str] = "AWS IAM Virtual MFA Device" - kind_description: ClassVar[str] = "AWS IAM Virtual MFA Device is a virtual multi-factor authentication device that generates time-based one-time passwords (TOTP) for login use cases in AWS." + kind_description: ClassVar[str] = ( + "AWS IAM Virtual MFA Device is a virtual multi-factor authentication device" + " that generates time-based one-time passwords (TOTP) for login use cases in" + " AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "serial_number": S("SerialNumber"), "enable_date": S("EnableDate"), @@ -568,7 +615,10 @@ class AwsIamVirtualMfaDevice: class AwsRootUser(AwsResource, BaseUser): kind: ClassVar[str] = "aws_root_user" kind_display: ClassVar[str] = "AWS Root User" - kind_description: ClassVar[str] = "The AWS Root User is the initial user created when setting up an AWS account and has unrestricted access to all resources in the account." + kind_description: ClassVar[str] = ( + "The AWS Root User is the initial user created when setting up an AWS account" + " and has unrestricted access to all resources in the account." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_account"]}, } @@ -584,7 +634,10 @@ class AwsRootUser(AwsResource, BaseUser): class AwsIamUser(AwsResource, BaseUser): kind: ClassVar[str] = "aws_iam_user" kind_display: ClassVar[str] = "AWS IAM User" - kind_description: ClassVar[str] = "IAM Users are identities created within AWS Identity and Access Management (IAM) that can be assigned permissions to access and manage AWS resources." + kind_description: ClassVar[str] = ( + "IAM Users are identities created within AWS Identity and Access Management" + " (IAM) that can be assigned permissions to access and manage AWS resources." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "get-account-authorization-details") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_group"]}, @@ -743,7 +796,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsIamInstanceProfile(AwsResource, BaseInstanceProfile): kind: ClassVar[str] = "aws_iam_instance_profile" kind_display: ClassVar[str] = "AWS IAM Instance Profile" - kind_description: ClassVar[str] = "IAM Instance Profiles are used to associate IAM roles with EC2 instances, allowing the instances to securely access AWS services and resources." + kind_description: ClassVar[str] = ( + "IAM Instance Profiles are used to associate IAM roles with EC2 instances," + " allowing the instances to securely access AWS services and resources." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-instance-profiles", "InstanceProfiles") mapping: ClassVar[Dict[str, Bender]] = { "id": S("InstanceProfileId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/kinesis.py b/plugins/aws/resoto_plugin_aws/resource/kinesis.py index 024f950d78..bac7c8c782 100644 --- a/plugins/aws/resoto_plugin_aws/resource/kinesis.py +++ b/plugins/aws/resoto_plugin_aws/resource/kinesis.py @@ -19,7 +19,11 @@ class AwsKinesisHashKeyRange: kind: ClassVar[str] = "aws_kinesis_hash_key_range" kind_display: ClassVar[str] = "AWS Kinesis Hash Key Range" - kind_description: ClassVar[str] = "AWS Kinesis Hash Key Range is a range of hash keys used for partitioning data in Amazon Kinesis streams, allowing for efficient and scalable data processing and analysis." + kind_description: ClassVar[str] = ( + "AWS Kinesis Hash Key Range is a range of hash keys used for partitioning" + " data in Amazon Kinesis streams, allowing for efficient and scalable data" + " processing and analysis." + ) mapping: ClassVar[Dict[str, Bender]] = { "starting_hash_key": S("StartingHashKey"), "ending_hash_key": S("EndingHashKey"), @@ -32,7 +36,12 @@ class AwsKinesisHashKeyRange: class AwsKinesisSequenceNumberRange: kind: ClassVar[str] = "aws_kinesis_sequence_number_range" kind_display: ClassVar[str] = "AWS Kinesis Sequence Number Range" - kind_description: ClassVar[str] = "Kinesis Sequence Number Range represents a range of sequence numbers associated with data records in an Amazon Kinesis data stream. It is used to specify a starting and ending sequence number when retrieving records from the stream." + kind_description: ClassVar[str] = ( + "Kinesis Sequence Number Range represents a range of sequence numbers" + " associated with data records in an Amazon Kinesis data stream. It is used to" + " specify a starting and ending sequence number when retrieving records from" + " the stream." + ) mapping: ClassVar[Dict[str, Bender]] = { "starting_sequence_number": S("StartingSequenceNumber"), "ending_sequence_number": S("EndingSequenceNumber"), @@ -45,7 +54,10 @@ class AwsKinesisSequenceNumberRange: class AwsKinesisShard: kind: ClassVar[str] = "aws_kinesis_shard" kind_display: ClassVar[str] = "AWS Kinesis Shard" - kind_description: ClassVar[str] = "An AWS Kinesis Shard is a sequence of data records in an Amazon Kinesis stream, used for storing and processing real-time streaming data." + kind_description: ClassVar[str] = ( + "An AWS Kinesis Shard is a sequence of data records in an Amazon Kinesis" + " stream, used for storing and processing real-time streaming data." + ) mapping: ClassVar[Dict[str, Bender]] = { "shard_id": S("ShardId"), "parent_shard_id": S("ParentShardId"), @@ -64,7 +76,11 @@ class AwsKinesisShard: class AwsKinesisEnhancedMetrics: kind: ClassVar[str] = "aws_kinesis_enhanced_metrics" kind_display: ClassVar[str] = "AWS Kinesis Enhanced Metrics" - kind_description: ClassVar[str] = "Kinesis Enhanced Metrics is a feature provided by AWS Kinesis that enables enhanced monitoring and analysis of data streams with additional metrics and statistics." + kind_description: ClassVar[str] = ( + "Kinesis Enhanced Metrics is a feature provided by AWS Kinesis that enables" + " enhanced monitoring and analysis of data streams with additional metrics and" + " statistics." + ) mapping: ClassVar[Dict[str, Bender]] = {"shard_level_metrics": S("ShardLevelMetrics", default=[])} shard_level_metrics: List[str] = field(factory=list) @@ -73,7 +89,11 @@ class AwsKinesisEnhancedMetrics: class AwsKinesisStream(AwsResource): kind: ClassVar[str] = "aws_kinesis_stream" kind_display: ClassVar[str] = "AWS Kinesis Stream" - kind_description: ClassVar[str] = "Kinesis Streams are scalable and durable real-time data streaming services in Amazon's cloud, enabling users to capture, process, and analyze data in real-time." + kind_description: ClassVar[str] = ( + "Kinesis Streams are scalable and durable real-time data streaming services" + " in Amazon's cloud, enabling users to capture, process, and analyze data in" + " real-time." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["aws_kms_key"], diff --git a/plugins/aws/resoto_plugin_aws/resource/kms.py b/plugins/aws/resoto_plugin_aws/resource/kms.py index 206226696e..65e68438d9 100644 --- a/plugins/aws/resoto_plugin_aws/resource/kms.py +++ b/plugins/aws/resoto_plugin_aws/resource/kms.py @@ -16,7 +16,10 @@ class AwsKmsMultiRegionPrimaryKey: kind: ClassVar[str] = "aws_kms_multiregion_primary_key" kind_display: ClassVar[str] = "AWS KMS Multiregion Primary Key" - kind_description: ClassVar[str] = "AWS KMS Multiregion Primary Key is a cryptographic key used for encryption and decryption of data in multiple AWS regions." + kind_description: ClassVar[str] = ( + "AWS KMS Multiregion Primary Key is a cryptographic key used for encryption" + " and decryption of data in multiple AWS regions." + ) mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "region": S("Region")} arn: Optional[str] = field(default=None) region: Optional[str] = field(default=None) @@ -26,7 +29,12 @@ class AwsKmsMultiRegionPrimaryKey: class AwsKmsMultiRegionReplicaKey: kind: ClassVar[str] = "aws_kms_multiregion_replica_key" kind_display: ClassVar[str] = "AWS KMS Multi-Region Replica Key" - kind_description: ClassVar[str] = "AWS KMS Multi-Region Replica Key is a feature of AWS Key Management Service (KMS) that allows for the replication of customer master keys (CMKs) across multiple AWS regions for improved availability and durability of encryption operations." + kind_description: ClassVar[str] = ( + "AWS KMS Multi-Region Replica Key is a feature of AWS Key Management Service" + " (KMS) that allows for the replication of customer master keys (CMKs) across" + " multiple AWS regions for improved availability and durability of encryption" + " operations." + ) mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "region": S("Region")} arn: Optional[str] = field(default=None) region: Optional[str] = field(default=None) @@ -36,7 +44,12 @@ class AwsKmsMultiRegionReplicaKey: class AwsKmsMultiRegionConfig: kind: ClassVar[str] = "aws_kms_multiregion_config" kind_display: ClassVar[str] = "AWS KMS Multi-Region Config" - kind_description: ClassVar[str] = "AWS KMS Multi-Region Config is a feature in Amazon Key Management Service (KMS) that allows you to configure cross-region replication of KMS keys. This helps you ensure availability and durability of your keys in multiple regions." + kind_description: ClassVar[str] = ( + "AWS KMS Multi-Region Config is a feature in Amazon Key Management Service" + " (KMS) that allows you to configure cross-region replication of KMS keys." + " This helps you ensure availability and durability of your keys in multiple" + " regions." + ) mapping: ClassVar[Dict[str, Bender]] = { "multi_region_key_type": S("MultiRegionKeyType"), "primary_key": S("PrimaryKey") >> Bend(AwsKmsMultiRegionPrimaryKey.mapping), @@ -51,7 +64,11 @@ class AwsKmsMultiRegionConfig: class AwsKmsKey(AwsResource, BaseAccessKey): kind: ClassVar[str] = "aws_kms_key" kind_display: ClassVar[str] = "AWS KMS Key" - kind_description: ClassVar[str] = "AWS KMS (Key Management Service) Key is a managed service that allows you to create and control the encryption keys used to encrypt your data stored on various AWS services and applications." + kind_description: ClassVar[str] = ( + "AWS KMS (Key Management Service) Key is a managed service that allows you to" + " create and control the encryption keys used to encrypt your data stored on" + " various AWS services and applications." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-keys", "Keys") mapping: ClassVar[Dict[str, Bender]] = { "id": S("KeyId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/lambda_.py b/plugins/aws/resoto_plugin_aws/resource/lambda_.py index f5e2ce4b5f..3c51fc5395 100644 --- a/plugins/aws/resoto_plugin_aws/resource/lambda_.py +++ b/plugins/aws/resoto_plugin_aws/resource/lambda_.py @@ -27,7 +27,10 @@ class AwsLambdaPolicyStatement: kind: ClassVar[str] = "aws_lambda_policy_statement" kind_display: ClassVar[str] = "AWS Lambda Policy Statement" - kind_description: ClassVar[str] = "Lambda Policy Statements are used to define permissions for AWS Lambda functions, specifying what actions can be performed and by whom." + kind_description: ClassVar[str] = ( + "Lambda Policy Statements are used to define permissions for AWS Lambda" + " functions, specifying what actions can be performed and by whom." + ) mapping: ClassVar[Dict[str, Bender]] = { "sid": S("Sid"), "effect": S("Effect"), @@ -48,7 +51,11 @@ class AwsLambdaPolicyStatement: class AwsLambdaPolicy: kind: ClassVar[str] = "aws_lambda_policy" kind_display: ClassVar[str] = "AWS Lambda Policy" - kind_description: ClassVar[str] = "AWS Lambda Policies are permissions policies that determine what actions a Lambda function can take and what resources it can access within the AWS environment." + kind_description: ClassVar[str] = ( + "AWS Lambda Policies are permissions policies that determine what actions a" + " Lambda function can take and what resources it can access within the AWS" + " environment." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), "version": S("Version"), @@ -63,7 +70,10 @@ class AwsLambdaPolicy: class AwsLambdaEnvironmentError: kind: ClassVar[str] = "aws_lambda_environment_error" kind_display: ClassVar[str] = "AWS Lambda Environment Error" - kind_description: ClassVar[str] = "An error occurring in the environment setup or configuration of an AWS Lambda function." + kind_description: ClassVar[str] = ( + "An error occurring in the environment setup or configuration of an AWS" + " Lambda function." + ) mapping: ClassVar[Dict[str, Bender]] = {"error_code": S("ErrorCode"), "message": S("Message")} error_code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -73,7 +83,10 @@ class AwsLambdaEnvironmentError: class AwsLambdaEnvironmentResponse: kind: ClassVar[str] = "aws_lambda_environment_response" kind_display: ClassVar[str] = "AWS Lambda Environment Response" - kind_description: ClassVar[str] = "AWS Lambda Environment Response is a service that provides information about the runtime environment of an AWS Lambda function." + kind_description: ClassVar[str] = ( + "AWS Lambda Environment Response is a service that provides information about" + " the runtime environment of an AWS Lambda function." + ) mapping: ClassVar[Dict[str, Bender]] = { "variables": S("Variables"), "error": S("Error") >> Bend(AwsLambdaEnvironmentError.mapping), @@ -86,7 +99,10 @@ class AwsLambdaEnvironmentResponse: class AwsLambdaLayer: kind: ClassVar[str] = "aws_lambda_layer" kind_display: ClassVar[str] = "AWS Lambda Layer" - kind_description: ClassVar[str] = "Lambda Layers are a distribution mechanism for libraries, custom runtimes, or other function dependencies used by Lambda functions." + kind_description: ClassVar[str] = ( + "Lambda Layers are a distribution mechanism for libraries, custom runtimes," + " or other function dependencies used by Lambda functions." + ) mapping: ClassVar[Dict[str, Bender]] = { "arn": S("Arn"), "code_size": S("CodeSize"), @@ -103,7 +119,11 @@ class AwsLambdaLayer: class AwsLambdaFileSystemConfig: kind: ClassVar[str] = "aws_lambda_file_system_config" kind_display: ClassVar[str] = "AWS Lambda File System Config" - kind_description: ClassVar[str] = "AWS Lambda File System Config allows you to configure file systems for your Lambda functions, enabling them to access and store data in a file system outside of the Lambda execution environment." + kind_description: ClassVar[str] = ( + "AWS Lambda File System Config allows you to configure file systems for your" + " Lambda functions, enabling them to access and store data in a file system" + " outside of the Lambda execution environment." + ) mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "local_mount_source_arn": S("LocalMountsource_arn")} arn: Optional[str] = field(default=None) local_mount_source_arn: Optional[str] = field(default=None) @@ -113,7 +133,10 @@ class AwsLambdaFileSystemConfig: class AwsLambdaImageConfig: kind: ClassVar[str] = "aws_lambda_image_config" kind_display: ClassVar[str] = "AWS Lambda Image Configuration" - kind_description: ClassVar[str] = "Lambda Image Configuration is a feature of AWS Lambda that allows you to build and deploy container images as Lambda function packages." + kind_description: ClassVar[str] = ( + "Lambda Image Configuration is a feature of AWS Lambda that allows you to" + " build and deploy container images as Lambda function packages." + ) mapping: ClassVar[Dict[str, Bender]] = { "entry_point": S("EntryPoint", default=[]), "command": S("Command", default=[]), @@ -128,7 +151,12 @@ class AwsLambdaImageConfig: class AwsLambdaImageConfigError: kind: ClassVar[str] = "aws_lambda_image_config_error" kind_display: ClassVar[str] = "AWS Lambda Image Config Error" - kind_description: ClassVar[str] = "AWS Lambda Image Config Error refers to an error that occurs when there is a configuration issue with an AWS Lambda function using container image. This error usually happens when there is an incorrect setup or mismatch in the configuration settings for the Lambda function's container image." + kind_description: ClassVar[str] = ( + "AWS Lambda Image Config Error refers to an error that occurs when there is a" + " configuration issue with an AWS Lambda function using container image. This" + " error usually happens when there is an incorrect setup or mismatch in the" + " configuration settings for the Lambda function's container image." + ) mapping: ClassVar[Dict[str, Bender]] = {"error_code": S("ErrorCode"), "message": S("Message")} error_code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -138,7 +166,11 @@ class AwsLambdaImageConfigError: class AwsLambdaImageConfigResponse: kind: ClassVar[str] = "aws_lambda_image_config_response" kind_display: ClassVar[str] = "AWS Lambda Image Configuration Response" - kind_description: ClassVar[str] = "AWS Lambda Image Configuration Response is the response object returned when configuring an image for AWS Lambda, which is a compute service that lets you run code without provisioning or managing servers." + kind_description: ClassVar[str] = ( + "AWS Lambda Image Configuration Response is the response object returned when" + " configuring an image for AWS Lambda, which is a compute service that lets" + " you run code without provisioning or managing servers." + ) mapping: ClassVar[Dict[str, Bender]] = { "image_config": S("ImageConfig") >> Bend(AwsLambdaImageConfig.mapping), "error": S("Error") >> Bend(AwsLambdaImageConfigError.mapping), @@ -151,7 +183,12 @@ class AwsLambdaImageConfigResponse: class AwsLambdaCors: kind: ClassVar[str] = "aws_lambda_cors" kind_display: ClassVar[str] = "AWS Lambda CORS" - kind_description: ClassVar[str] = "AWS Lambda CORS refers to the Cross-Origin Resource Sharing (CORS) configuration for AWS Lambda functions. CORS allows a server to indicate which origins have permissions to access its resources, helping to protect against cross-origin vulnerabilities." + kind_description: ClassVar[str] = ( + "AWS Lambda CORS refers to the Cross-Origin Resource Sharing (CORS)" + " configuration for AWS Lambda functions. CORS allows a server to indicate" + " which origins have permissions to access its resources, helping to protect" + " against cross-origin vulnerabilities." + ) mapping: ClassVar[Dict[str, Bender]] = { "allow_credentials": S("AllowCredentials"), "allow_headers": S("AllowHeaders", default=[]), @@ -172,7 +209,10 @@ class AwsLambdaCors: class AwsLambdaFunctionUrlConfig: kind: ClassVar[str] = "aws_lambda_function_url_config" kind_display: ClassVar[str] = "AWS Lambda Function URL Config" - kind_description: ClassVar[str] = "URL configuration for AWS Lambda function, allowing users to specify the trigger URL and other related settings." + kind_description: ClassVar[str] = ( + "URL configuration for AWS Lambda function, allowing users to specify the" + " trigger URL and other related settings." + ) mapping: ClassVar[Dict[str, Bender]] = { "function_url": S("FunctionUrl"), "function_arn": S("FunctionArn"), @@ -193,7 +233,11 @@ class AwsLambdaFunctionUrlConfig: class AwsLambdaFunction(AwsResource, BaseServerlessFunction): kind: ClassVar[str] = "aws_lambda_function" kind_display: ClassVar[str] = "AWS Lambda Function" - kind_description: ClassVar[str] = "AWS Lambda is a serverless computing service that lets you run your code without provisioning or managing servers. Lambda functions are the compute units that run your code in response to events." + kind_description: ClassVar[str] = ( + "AWS Lambda is a serverless computing service that lets you run your code" + " without provisioning or managing servers. Lambda functions are the compute" + " units that run your code in response to events." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-functions", "Functions") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/pricing.py b/plugins/aws/resoto_plugin_aws/resource/pricing.py index 7f65c968af..867de18433 100644 --- a/plugins/aws/resoto_plugin_aws/resource/pricing.py +++ b/plugins/aws/resoto_plugin_aws/resource/pricing.py @@ -58,7 +58,10 @@ def pricing_region(region: str) -> str: class AwsPricingProduct: kind: ClassVar[str] = "aws_pricing_product" kind_display: ClassVar[str] = "AWS Pricing Product" - kind_description: ClassVar[str] = "AWS Pricing Product is a resource that provides information about the pricing of various Amazon Web Services products and services." + kind_description: ClassVar[str] = ( + "AWS Pricing Product is a resource that provides information about the" + " pricing of various Amazon Web Services products and services." + ) mapping: ClassVar[Dict[str, Bender]] = { "product_family": S("productFamily"), "sku": S("sku"), @@ -73,7 +76,10 @@ class AwsPricingProduct: class AwsPricingPriceDimension: kind: ClassVar[str] = "aws_pricing_price_dimension" kind_display: ClassVar[str] = "AWS Pricing Price Dimension" - kind_description: ClassVar[str] = "Price Dimensions in AWS Pricing are the specific unit for which usage is measured and priced, such as per hour or per GB." + kind_description: ClassVar[str] = ( + "Price Dimensions in AWS Pricing are the specific unit for which usage is" + " measured and priced, such as per hour or per GB." + ) mapping: ClassVar[Dict[str, Bender]] = { "unit": S("unit"), "end_range": S("endRange"), @@ -96,7 +102,10 @@ class AwsPricingPriceDimension: class AwsPricingTerm: kind: ClassVar[str] = "aws_pricing_term" kind_display: ClassVar[str] = "AWS Pricing Term" - kind_description: ClassVar[str] = "AWS Pricing Terms refer to the different pricing options and payment plans available for services on the Amazon Web Services platform." + kind_description: ClassVar[str] = ( + "AWS Pricing Terms refer to the different pricing options and payment plans" + " available for services on the Amazon Web Services platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "sku": S("sku"), "effective_date": S("effectiveDate"), @@ -117,7 +126,11 @@ class AwsPricingTerm: class AwsPricingPrice: kind: ClassVar[str] = "aws_pricing_price" kind_display: ClassVar[str] = "AWS Pricing Price" - kind_description: ClassVar[str] = "AWS Pricing Price refers to the cost associated with using various AWS services and resources. It includes charges for compute, storage, network usage, data transfer, and other services provided by Amazon Web Services." + kind_description: ClassVar[str] = ( + "AWS Pricing Price refers to the cost associated with using various AWS" + " services and resources. It includes charges for compute, storage, network" + " usage, data transfer, and other services provided by Amazon Web Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "product": S("product") >> Bend(AwsPricingProduct.mapping), "service_code": S("serviceCode"), diff --git a/plugins/aws/resoto_plugin_aws/resource/rds.py b/plugins/aws/resoto_plugin_aws/resource/rds.py index 06e636e773..adcc0de6fe 100644 --- a/plugins/aws/resoto_plugin_aws/resource/rds.py +++ b/plugins/aws/resoto_plugin_aws/resource/rds.py @@ -56,7 +56,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsRdsEndpoint: kind: ClassVar[str] = "aws_rds_endpoint" kind_display: ClassVar[str] = "AWS RDS Endpoint" - kind_description: ClassVar[str] = "An RDS Endpoint in AWS is the network address that applications use to connect to a database instance in the Amazon Relational Database Service (RDS). It allows users to access and interact with their database instances." + kind_description: ClassVar[str] = ( + "An RDS Endpoint in AWS is the network address that applications use to" + " connect to a database instance in the Amazon Relational Database Service" + " (RDS). It allows users to access and interact with their database instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "address": S("Address"), "port": S("Port"), @@ -71,7 +75,12 @@ class AwsRdsEndpoint: class AwsRdsDBSecurityGroupMembership: kind: ClassVar[str] = "aws_rds_db_security_group_membership" kind_display: ClassVar[str] = "AWS RDS DB Security Group Membership" - kind_description: ClassVar[str] = "AWS RDS DB Security Group Membership is a resource that represents the membership of an Amazon RDS database instance in a security group. It allows controlling access to the database instance by defining inbound and outbound rules for the security group." + kind_description: ClassVar[str] = ( + "AWS RDS DB Security Group Membership is a resource that represents the" + " membership of an Amazon RDS database instance in a security group. It allows" + " controlling access to the database instance by defining inbound and outbound" + " rules for the security group." + ) mapping: ClassVar[Dict[str, Bender]] = {"db_security_group_name": S("DBSecurityGroupName"), "status": S("Status")} db_security_group_name: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -81,7 +90,11 @@ class AwsRdsDBSecurityGroupMembership: class AwsRdsVpcSecurityGroupMembership: kind: ClassVar[str] = "aws_rds_vpc_security_group_membership" kind_display: ClassVar[str] = "AWS RDS VPC Security Group Membership" - kind_description: ClassVar[str] = "AWS RDS VPC Security Group Membership represents the group membership of an Amazon RDS instance in a Virtual Private Cloud (VPC). It controls the inbound and outbound traffic for the RDS instance within the VPC." + kind_description: ClassVar[str] = ( + "AWS RDS VPC Security Group Membership represents the group membership of an" + " Amazon RDS instance in a Virtual Private Cloud (VPC). It controls the" + " inbound and outbound traffic for the RDS instance within the VPC." + ) mapping: ClassVar[Dict[str, Bender]] = {"vpc_security_group_id": S("VpcSecurityGroupId"), "status": S("Status")} vpc_security_group_id: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -91,7 +104,11 @@ class AwsRdsVpcSecurityGroupMembership: class AwsRdsDBParameterGroupStatus: kind: ClassVar[str] = "aws_rds_db_parameter_group_status" kind_display: ClassVar[str] = "AWS RDS DB Parameter Group Status" - kind_description: ClassVar[str] = "The status of a parameter group in Amazon RDS, which is a collection of database engine parameter values that can be applied to one or more DB instances." + kind_description: ClassVar[str] = ( + "The status of a parameter group in Amazon RDS, which is a collection of" + " database engine parameter values that can be applied to one or more DB" + " instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "db_parameter_group_name": S("DBParameterGroupName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -104,7 +121,10 @@ class AwsRdsDBParameterGroupStatus: class AwsRdsSubnet: kind: ClassVar[str] = "aws_rds_subnet" kind_display: ClassVar[str] = "AWS RDS Subnet" - kind_description: ClassVar[str] = "RDS Subnet refers to a network subnet in the Amazon Relational Database Service (RDS), which is used to isolate and manage database instances." + kind_description: ClassVar[str] = ( + "RDS Subnet refers to a network subnet in the Amazon Relational Database" + " Service (RDS), which is used to isolate and manage database instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "subnet_identifier": S("SubnetIdentifier"), "subnet_availability_zone": S("SubnetAvailabilityZone", "Name"), @@ -121,7 +141,10 @@ class AwsRdsSubnet: class AwsRdsDBSubnetGroup: kind: ClassVar[str] = "aws_rds_db_subnet_group" kind_display: ClassVar[str] = "AWS RDS DB Subnet Group" - kind_description: ClassVar[str] = "DB Subnet Groups are used to specify the VPC subnets where Amazon RDS DB instances are created." + kind_description: ClassVar[str] = ( + "DB Subnet Groups are used to specify the VPC subnets where Amazon RDS DB" + " instances are created." + ) mapping: ClassVar[Dict[str, Bender]] = { "db_subnet_group_name": S("DBSubnetGroupName"), "db_subnet_group_description": S("DBSubnetGroupDescription"), @@ -144,7 +167,11 @@ class AwsRdsDBSubnetGroup: class AwsRdsPendingCloudwatchLogsExports: kind: ClassVar[str] = "aws_rds_pending_cloudwatch_logs_exports" kind_display: ClassVar[str] = "AWS RDS Pending CloudWatch Logs Exports" - kind_description: ClassVar[str] = "RDS Pending CloudWatch Logs Exports represent the logs that are being exported from an Amazon RDS database to Amazon CloudWatch Logs but are still in a pending state." + kind_description: ClassVar[str] = ( + "RDS Pending CloudWatch Logs Exports represent the logs that are being" + " exported from an Amazon RDS database to Amazon CloudWatch Logs but are still" + " in a pending state." + ) mapping: ClassVar[Dict[str, Bender]] = { "log_types_to_enable": S("LogTypesToEnable", default=[]), "log_types_to_disable": S("LogTypesToDisable", default=[]), @@ -157,7 +184,11 @@ class AwsRdsPendingCloudwatchLogsExports: class AwsRdsProcessorFeature: kind: ClassVar[str] = "aws_rds_processor_feature" kind_display: ClassVar[str] = "AWS RDS Processor Feature" - kind_description: ClassVar[str] = "RDS Processor Features are customizable settings for processor performance in Amazon Relational Database Service, allowing users to modify processor functionalities based on their specific requirements." + kind_description: ClassVar[str] = ( + "RDS Processor Features are customizable settings for processor performance" + " in Amazon Relational Database Service, allowing users to modify processor" + " functionalities based on their specific requirements." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "value": S("Value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -167,7 +198,11 @@ class AwsRdsProcessorFeature: class AwsRdsPendingModifiedValues: kind: ClassVar[str] = "aws_rds_pending_modified_values" kind_display: ClassVar[str] = "AWS RDS Pending Modified Values" - kind_description: ClassVar[str] = "RDS Pending Modified Values represent the changes that are pending to be applied to an RDS instance, such as changes to its database engine version or storage capacity." + kind_description: ClassVar[str] = ( + "RDS Pending Modified Values represent the changes that are pending to be" + " applied to an RDS instance, such as changes to its database engine version" + " or storage capacity." + ) mapping: ClassVar[Dict[str, Bender]] = { "db_instance_class": S("DBInstanceClass"), "allocated_storage": S("AllocatedStorage"), @@ -213,7 +248,10 @@ class AwsRdsPendingModifiedValues: class AwsRdsOptionGroupMembership: kind: ClassVar[str] = "aws_rds_option_group_membership" kind_display: ClassVar[str] = "AWS RDS Option Group Membership" - kind_description: ClassVar[str] = "RDS Option Group Memberships are used to associate DB instances with option groups which contain a list of configurable options for the database engine." + kind_description: ClassVar[str] = ( + "RDS Option Group Memberships are used to associate DB instances with option" + " groups which contain a list of configurable options for the database engine." + ) mapping: ClassVar[Dict[str, Bender]] = {"option_group_name": S("OptionGroupName"), "status": S("Status")} option_group_name: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -223,7 +261,11 @@ class AwsRdsOptionGroupMembership: class AwsRdsDBInstanceStatusInfo: kind: ClassVar[str] = "aws_rds_db_instance_status_info" kind_display: ClassVar[str] = "AWS RDS DB Instance Status Info" - kind_description: ClassVar[str] = "RDS DB Instance Status Info provides information about the status of an Amazon RDS database instance, including its current state and any pending actions." + kind_description: ClassVar[str] = ( + "RDS DB Instance Status Info provides information about the status of an" + " Amazon RDS database instance, including its current state and any pending" + " actions." + ) mapping: ClassVar[Dict[str, Bender]] = { "status_type": S("StatusType"), "normal": S("Normal"), @@ -240,7 +282,10 @@ class AwsRdsDBInstanceStatusInfo: class AwsRdsDomainMembership: kind: ClassVar[str] = "aws_rds_domain_membership" kind_display: ClassVar[str] = "AWS RDS Domain Membership" - kind_description: ClassVar[str] = "RDS Domain Membership is a feature in Amazon RDS that allows you to join an Amazon RDS DB instance to an existing Microsoft Active Directory domain." + kind_description: ClassVar[str] = ( + "RDS Domain Membership is a feature in Amazon RDS that allows you to join an" + " Amazon RDS DB instance to an existing Microsoft Active Directory domain." + ) mapping: ClassVar[Dict[str, Bender]] = { "domain": S("Domain"), "status": S("Status"), @@ -257,7 +302,10 @@ class AwsRdsDomainMembership: class AwsRdsDBRole: kind: ClassVar[str] = "aws_rds_db_role" kind_display: ClassVar[str] = "AWS RDS DB Role" - kind_description: ClassVar[str] = "RDS DB Roles are a way to manage user access to Amazon RDS database instances using IAM." + kind_description: ClassVar[str] = ( + "RDS DB Roles are a way to manage user access to Amazon RDS database" + " instances using IAM." + ) mapping: ClassVar[Dict[str, Bender]] = { "role_arn": S("RoleArn"), "feature_name": S("FeatureName"), @@ -272,7 +320,10 @@ class AwsRdsDBRole: class AwsRdsTag: kind: ClassVar[str] = "aws_rds_tag" kind_display: ClassVar[str] = "AWS RDS Tag" - kind_description: ClassVar[str] = "Tags for Amazon RDS instances and resources, which are key-value pairs to help manage and organize resources." + kind_description: ClassVar[str] = ( + "Tags for Amazon RDS instances and resources, which are key-value pairs to" + " help manage and organize resources." + ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("Key"), "value": S("Value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -282,7 +333,10 @@ class AwsRdsTag: class AwsRdsInstance(RdsTaggable, AwsResource, BaseDatabase): kind: ClassVar[str] = "aws_rds_instance" kind_display: ClassVar[str] = "AWS RDS Instance" - kind_description: ClassVar[str] = "RDS instances are managed relational databases in Amazon's cloud, providing scalable and fast performance for applications." + kind_description: ClassVar[str] = ( + "RDS instances are managed relational databases in Amazon's cloud, providing" + " scalable and fast performance for applications." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-db-instances", "DBInstances") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -530,7 +584,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsRdsDBClusterOptionGroupStatus: kind: ClassVar[str] = "aws_rds_db_cluster_option_group_status" kind_display: ClassVar[str] = "AWS RDS DB Cluster Option Group Status" - kind_description: ClassVar[str] = "The status of the option group for a DB cluster in Amazon RDS, which is a collection of database options and settings that can be applied to a DB instance." + kind_description: ClassVar[str] = ( + "The status of the option group for a DB cluster in Amazon RDS, which is a" + " collection of database options and settings that can be applied to a DB" + " instance." + ) mapping: ClassVar[Dict[str, Bender]] = { "db_cluster_option_group_name": S("DBClusterOptionGroupName"), "status": S("Status"), @@ -543,7 +601,11 @@ class AwsRdsDBClusterOptionGroupStatus: class AwsRdsDBClusterMember: kind: ClassVar[str] = "aws_rds_db_cluster_member" kind_display: ClassVar[str] = "AWS RDS DB Cluster Member" - kind_description: ClassVar[str] = "DB Cluster Member is a participant in an Amazon RDS Database Cluster, which is a managed relational database service offered by AWS for scaling and high availability." + kind_description: ClassVar[str] = ( + "DB Cluster Member is a participant in an Amazon RDS Database Cluster, which" + " is a managed relational database service offered by AWS for scaling and high" + " availability." + ) mapping: ClassVar[Dict[str, Bender]] = { "db_instance_identifier": S("DBInstanceIdentifier"), "is_cluster_writer": S("IsClusterWriter"), @@ -560,7 +622,12 @@ class AwsRdsDBClusterMember: class AwsRdsScalingConfigurationInfo: kind: ClassVar[str] = "aws_rds_scaling_configuration_info" kind_display: ClassVar[str] = "AWS RDS Scaling Configuration Info" - kind_description: ClassVar[str] = "RDS Scaling Configuration Info provides information about the scaling configuration for Amazon RDS (Relational Database Service). It includes details about scaling policies, auto-scaling settings, and capacity planning for RDS instances." + kind_description: ClassVar[str] = ( + "RDS Scaling Configuration Info provides information about the scaling" + " configuration for Amazon RDS (Relational Database Service). It includes" + " details about scaling policies, auto-scaling settings, and capacity planning" + " for RDS instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_capacity": S("MinCapacity"), "max_capacity": S("MaxCapacity"), @@ -581,7 +648,10 @@ class AwsRdsScalingConfigurationInfo: class AwsRdsClusterPendingModifiedValues: kind: ClassVar[str] = "aws_rds_cluster_pending_modified_values" kind_display: ClassVar[str] = "AWS RDS Cluster Pending Modified Values" - kind_description: ClassVar[str] = "RDS Cluster Pending Modified Values represents the pending modifications made to an Amazon RDS Cluster, indicating changes that will be applied soon." + kind_description: ClassVar[str] = ( + "RDS Cluster Pending Modified Values represents the pending modifications" + " made to an Amazon RDS Cluster, indicating changes that will be applied soon." + ) mapping: ClassVar[Dict[str, Bender]] = { "pending_cloudwatch_logs_exports": S("PendingCloudwatchLogsExports") >> Bend(AwsRdsPendingCloudwatchLogsExports.mapping), @@ -607,7 +677,13 @@ class AwsRdsClusterPendingModifiedValues: class AwsRdsServerlessV2ScalingConfigurationInfo: kind: ClassVar[str] = "aws_rds_serverless_v2_scaling_configuration_info" kind_display: ClassVar[str] = "AWS RDS Serverless V2 Scaling Configuration Info" - kind_description: ClassVar[str] = "RDS Serverless V2 Scaling Configuration provides information about the configuration settings for scaling Amazon RDS Aurora Serverless v2. It allows users to specify the minimum and maximum capacity for their serverless clusters, as well as the target utilization and scaling thresholds." + kind_description: ClassVar[str] = ( + "RDS Serverless V2 Scaling Configuration provides information about the" + " configuration settings for scaling Amazon RDS Aurora Serverless v2. It" + " allows users to specify the minimum and maximum capacity for their" + " serverless clusters, as well as the target utilization and scaling" + " thresholds." + ) mapping: ClassVar[Dict[str, Bender]] = {"min_capacity": S("MinCapacity"), "max_capacity": S("MaxCapacity")} min_capacity: Optional[float] = field(default=None) max_capacity: Optional[float] = field(default=None) @@ -617,7 +693,11 @@ class AwsRdsServerlessV2ScalingConfigurationInfo: class AwsRdsMasterUserSecret: kind: ClassVar[str] = "aws_rds_master_user_secret" kind_display: ClassVar[str] = "AWS RDS Master User Secret" - kind_description: ClassVar[str] = "AWS RDS Master User Secret refers to the credentials used to authenticate the master user of an Amazon RDS (Relational Database Service) instance. These credentials are private and should be securely stored." + kind_description: ClassVar[str] = ( + "AWS RDS Master User Secret refers to the credentials used to authenticate" + " the master user of an Amazon RDS (Relational Database Service) instance." + " These credentials are private and should be securely stored." + ) mapping: ClassVar[Dict[str, Bender]] = { "secret_arn": S("SecretArn"), "secret_status": S("SecretStatus"), @@ -632,7 +712,11 @@ class AwsRdsMasterUserSecret: class AwsRdsCluster(RdsTaggable, AwsResource, BaseDatabase): kind: ClassVar[str] = "aws_rds_cluster" kind_display: ClassVar[str] = "AWS RDS Cluster" - kind_description: ClassVar[str] = "RDS Clusters are managed relational database services in Amazon's cloud, providing scalable and highly available databases for applications running on the Amazon Web Services infrastructure." + kind_description: ClassVar[str] = ( + "RDS Clusters are managed relational database services in Amazon's cloud," + " providing scalable and highly available databases for applications running" + " on the Amazon Web Services infrastructure." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-db-clusters", "DBClusters") mapping: ClassVar[Dict[str, Bender]] = { "id": S("DBClusterIdentifier"), diff --git a/plugins/aws/resoto_plugin_aws/resource/redshift.py b/plugins/aws/resoto_plugin_aws/resource/redshift.py index f9d42bafd3..48e990f274 100644 --- a/plugins/aws/resoto_plugin_aws/resource/redshift.py +++ b/plugins/aws/resoto_plugin_aws/resource/redshift.py @@ -22,7 +22,11 @@ class AwsRedshiftNetworkInterface: kind: ClassVar[str] = "aws_redshift_network_interface" kind_display: ClassVar[str] = "AWS Redshift Network Interface" - kind_description: ClassVar[str] = "Redshift Network Interface is a network interface attached to an Amazon Redshift cluster, providing connectivity to the cluster from other resources in the same VPC." + kind_description: ClassVar[str] = ( + "Redshift Network Interface is a network interface attached to an Amazon" + " Redshift cluster, providing connectivity to the cluster from other resources" + " in the same VPC." + ) mapping: ClassVar[Dict[str, Bender]] = { "network_interface_id": S("NetworkInterfaceId"), "subnet_id": S("SubnetId"), @@ -39,7 +43,12 @@ class AwsRedshiftNetworkInterface: class AwsRedshiftVpcEndpoint: kind: ClassVar[str] = "aws_redshift_vpc_endpoint" kind_display: ClassVar[str] = "AWS Redshift VPC Endpoint" - kind_description: ClassVar[str] = "Redshift VPC Endpoint is a secure and private connection between Amazon Redshift and an Amazon Virtual Private Cloud (VPC). It allows data to be transferred between the VPC and Redshift cluster without going through the internet." + kind_description: ClassVar[str] = ( + "Redshift VPC Endpoint is a secure and private connection between Amazon" + " Redshift and an Amazon Virtual Private Cloud (VPC). It allows data to be" + " transferred between the VPC and Redshift cluster without going through the" + " internet." + ) mapping: ClassVar[Dict[str, Bender]] = { "vpc_endpoint_id": S("VpcEndpointId"), "vpc_id": S("VpcId"), @@ -54,7 +63,11 @@ class AwsRedshiftVpcEndpoint: class AwsRedshiftEndpoint: kind: ClassVar[str] = "aws_redshift_endpoint" kind_display: ClassVar[str] = "AWS Redshift Endpoint" - kind_description: ClassVar[str] = "An AWS Redshift Endpoint is the unique network address for connecting to an Amazon Redshift cluster, allowing users to run queries and perform data analysis on large datasets." + kind_description: ClassVar[str] = ( + "An AWS Redshift Endpoint is the unique network address for connecting to an" + " Amazon Redshift cluster, allowing users to run queries and perform data" + " analysis on large datasets." + ) mapping: ClassVar[Dict[str, Bender]] = { "address": S("Address"), "port": S("Port"), @@ -69,7 +82,11 @@ class AwsRedshiftEndpoint: class AwsRedshiftClusterSecurityGroupMembership: kind: ClassVar[str] = "aws_redshift_cluster_security_group_membership" kind_display: ClassVar[str] = "AWS Redshift Cluster Security Group Membership" - kind_description: ClassVar[str] = "Redshift Cluster Security Group Membership allows you to manage the security group membership for an Amazon Redshift cluster. Security groups control inbound and outbound traffic to your cluster." + kind_description: ClassVar[str] = ( + "Redshift Cluster Security Group Membership allows you to manage the security" + " group membership for an Amazon Redshift cluster. Security groups control" + " inbound and outbound traffic to your cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "cluster_security_group_name": S("ClusterSecurityGroupName"), "status": S("Status"), @@ -82,7 +99,11 @@ class AwsRedshiftClusterSecurityGroupMembership: class AwsRedshiftVpcSecurityGroupMembership: kind: ClassVar[str] = "aws_redshift_vpc_security_group_membership" kind_display: ClassVar[str] = "AWS Redshift VPC Security Group Membership" - kind_description: ClassVar[str] = "Redshift VPC Security Group Membership is a feature in Amazon Redshift that allows you to associate Redshift clusters with Amazon Virtual Private Cloud (VPC) security groups for enhanced network security." + kind_description: ClassVar[str] = ( + "Redshift VPC Security Group Membership is a feature in Amazon Redshift that" + " allows you to associate Redshift clusters with Amazon Virtual Private Cloud" + " (VPC) security groups for enhanced network security." + ) mapping: ClassVar[Dict[str, Bender]] = {"vpc_security_group_id": S("VpcSecurityGroupId"), "status": S("Status")} vpc_security_group_id: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -92,7 +113,10 @@ class AwsRedshiftVpcSecurityGroupMembership: class AwsRedshiftClusterParameterStatus: kind: ClassVar[str] = "aws_redshift_cluster_parameter_status" kind_display: ClassVar[str] = "AWS Redshift Cluster Parameter Status" - kind_description: ClassVar[str] = "AWS Redshift Cluster Parameter Status provides information about the status and configuration of parameters for an Amazon Redshift cluster." + kind_description: ClassVar[str] = ( + "AWS Redshift Cluster Parameter Status provides information about the status" + " and configuration of parameters for an Amazon Redshift cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "parameter_name": S("ParameterName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -107,7 +131,11 @@ class AwsRedshiftClusterParameterStatus: class AwsRedshiftClusterParameterGroupStatus: kind: ClassVar[str] = "aws_redshift_cluster_parameter_group_status" kind_display: ClassVar[str] = "AWS Redshift Cluster Parameter Group Status" - kind_description: ClassVar[str] = "Redshift Cluster Parameter Group Status provides information about the status of a parameter group in Amazon Redshift, which is used to manage the configuration settings for a Redshift cluster." + kind_description: ClassVar[str] = ( + "Redshift Cluster Parameter Group Status provides information about the" + " status of a parameter group in Amazon Redshift, which is used to manage the" + " configuration settings for a Redshift cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "parameter_group_name": S("ParameterGroupName"), "parameter_apply_status": S("ParameterApplyStatus"), @@ -123,7 +151,10 @@ class AwsRedshiftClusterParameterGroupStatus: class AwsRedshiftPendingModifiedValues: kind: ClassVar[str] = "aws_redshift_pending_modified_values" kind_display: ClassVar[str] = "AWS Redshift Pending Modified Values" - kind_description: ClassVar[str] = "Redshift Pending Modified Values represents the configuration changes that are currently pending for an Amazon Redshift cluster." + kind_description: ClassVar[str] = ( + "Redshift Pending Modified Values represents the configuration changes that" + " are currently pending for an Amazon Redshift cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "master_user_password": S("MasterUserPassword"), "node_type": S("NodeType"), @@ -154,7 +185,11 @@ class AwsRedshiftPendingModifiedValues: class AwsRedshiftRestoreStatus: kind: ClassVar[str] = "aws_redshift_restore_status" kind_display: ClassVar[str] = "AWS Redshift Restore Status" - kind_description: ClassVar[str] = "Redshift Restore Status refers to the current status of a restore operation in Amazon Redshift, which is a fully managed data warehouse service in the cloud." + kind_description: ClassVar[str] = ( + "Redshift Restore Status refers to the current status of a restore operation" + " in Amazon Redshift, which is a fully managed data warehouse service in the" + " cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "current_restore_rate_in_mega_bytes_per_second": S("CurrentRestoreRateInMegaBytesPerSecond"), @@ -175,7 +210,11 @@ class AwsRedshiftRestoreStatus: class AwsRedshiftDataTransferProgress: kind: ClassVar[str] = "aws_redshift_data_transfer_progress" kind_display: ClassVar[str] = "AWS Redshift Data Transfer Progress" - kind_description: ClassVar[str] = "AWS Redshift Data Transfer Progress provides information about the progress of data transfer operations in Amazon Redshift, a fully-managed data warehouse service." + kind_description: ClassVar[str] = ( + "AWS Redshift Data Transfer Progress provides information about the progress" + " of data transfer operations in Amazon Redshift, a fully-managed data" + " warehouse service." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "current_rate_in_mega_bytes_per_second": S("CurrentRateInMegaBytesPerSecond"), @@ -196,7 +235,10 @@ class AwsRedshiftDataTransferProgress: class AwsRedshiftHsmStatus: kind: ClassVar[str] = "aws_redshift_hsm_status" kind_display: ClassVar[str] = "AWS Redshift HSM Status" - kind_description: ClassVar[str] = "The AWS Redshift HSM Status provides information about the status of the Hardware Security Module (HSM) used to encrypt data in Amazon Redshift." + kind_description: ClassVar[str] = ( + "The AWS Redshift HSM Status provides information about the status of the" + " Hardware Security Module (HSM) used to encrypt data in Amazon Redshift." + ) mapping: ClassVar[Dict[str, Bender]] = { "hsm_client_certificate_identifier": S("HsmClientCertificateIdentifier"), "hsm_configuration_identifier": S("HsmConfigurationIdentifier"), @@ -211,7 +253,10 @@ class AwsRedshiftHsmStatus: class AwsRedshiftClusterSnapshotCopyStatus: kind: ClassVar[str] = "aws_redshift_cluster_snapshot_copy_status" kind_display: ClassVar[str] = "AWS Redshift Cluster Snapshot Copy Status" - kind_description: ClassVar[str] = "The status of the copy operation for a snapshot of an Amazon Redshift cluster." + kind_description: ClassVar[str] = ( + "The status of the copy operation for a snapshot of an Amazon Redshift" + " cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "destination_region": S("DestinationRegion"), "retention_period": S("RetentionPeriod"), @@ -228,7 +273,11 @@ class AwsRedshiftClusterSnapshotCopyStatus: class AwsRedshiftClusterNode: kind: ClassVar[str] = "aws_redshift_cluster_node" kind_display: ClassVar[str] = "AWS Redshift Cluster Node" - kind_description: ClassVar[str] = "Redshift Cluster Node is a compute resource within an Amazon Redshift cluster that runs the database queries and stores the data in Redshift data warehouse." + kind_description: ClassVar[str] = ( + "Redshift Cluster Node is a compute resource within an Amazon Redshift" + " cluster that runs the database queries and stores the data in Redshift data" + " warehouse." + ) mapping: ClassVar[Dict[str, Bender]] = { "node_role": S("NodeRole"), "private_ip_address": S("PrivateIPAddress"), @@ -243,7 +292,9 @@ class AwsRedshiftClusterNode: class AwsRedshiftElasticIpStatus: kind: ClassVar[str] = "aws_redshift_elastic_ip_status" kind_display: ClassVar[str] = "AWS Redshift Elastic IP Status" - kind_description: ClassVar[str] = "The status of an Elastic IP assigned to an Amazon Redshift cluster." + kind_description: ClassVar[str] = ( + "The status of an Elastic IP assigned to an Amazon Redshift cluster." + ) mapping: ClassVar[Dict[str, Bender]] = {"elastic_ip": S("ElasticIp"), "status": S("Status")} elastic_ip: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -253,7 +304,10 @@ class AwsRedshiftElasticIpStatus: class AwsRedshiftClusterIamRole: kind: ClassVar[str] = "aws_redshift_cluster_iam_role" kind_display: ClassVar[str] = "AWS Redshift Cluster IAM Role" - kind_description: ClassVar[str] = "An IAM role that is used to grant permissions to an Amazon Redshift cluster to access other AWS services." + kind_description: ClassVar[str] = ( + "An IAM role that is used to grant permissions to an Amazon Redshift cluster" + " to access other AWS services." + ) mapping: ClassVar[Dict[str, Bender]] = {"iam_role_arn": S("IamRoleArn"), "apply_status": S("ApplyStatus")} iam_role_arn: Optional[str] = field(default=None) apply_status: Optional[str] = field(default=None) @@ -263,7 +317,10 @@ class AwsRedshiftClusterIamRole: class AwsRedshiftDeferredMaintenanceWindow: kind: ClassVar[str] = "aws_redshift_deferred_maintenance_window" kind_display: ClassVar[str] = "AWS Redshift Deferred Maintenance Window" - kind_description: ClassVar[str] = "Deferred Maintenance Window is a feature in AWS Redshift that allows users to postpone maintenance activities for their Redshift clusters." + kind_description: ClassVar[str] = ( + "Deferred Maintenance Window is a feature in AWS Redshift that allows users" + " to postpone maintenance activities for their Redshift clusters." + ) mapping: ClassVar[Dict[str, Bender]] = { "defer_maintenance_identifier": S("DeferMaintenanceIdentifier"), "defer_maintenance_start_time": S("DeferMaintenanceStartTime"), @@ -278,7 +335,11 @@ class AwsRedshiftDeferredMaintenanceWindow: class AwsRedshiftResizeInfo: kind: ClassVar[str] = "aws_redshift_resize_info" kind_display: ClassVar[str] = "AWS Redshift Resize Info" - kind_description: ClassVar[str] = "Redshift Resize Info provides information about the resizing process of an AWS Redshift cluster, which allows users to easily scale their data warehouse to handle larger workloads." + kind_description: ClassVar[str] = ( + "Redshift Resize Info provides information about the resizing process of an" + " AWS Redshift cluster, which allows users to easily scale their data" + " warehouse to handle larger workloads." + ) mapping: ClassVar[Dict[str, Bender]] = { "resize_type": S("ResizeType"), "allow_cancel_resize": S("AllowCancelResize"), @@ -291,7 +352,11 @@ class AwsRedshiftResizeInfo: class AwsRedshiftAquaConfiguration: kind: ClassVar[str] = "aws_redshift_aqua_configuration" kind_display: ClassVar[str] = "AWS Redshift Aqua Configuration" - kind_description: ClassVar[str] = "Aqua is a feature of Amazon Redshift that allows you to offload and accelerate the execution of certain types of queries using machine learning and columnar storage technology." + kind_description: ClassVar[str] = ( + "Aqua is a feature of Amazon Redshift that allows you to offload and" + " accelerate the execution of certain types of queries using machine learning" + " and columnar storage technology." + ) mapping: ClassVar[Dict[str, Bender]] = { "aqua_status": S("AquaStatus"), "aqua_configuration_status": S("AquaConfigurationStatus"), @@ -304,7 +369,11 @@ class AwsRedshiftAquaConfiguration: class AwsRedshiftReservedNodeExchangeStatus: kind: ClassVar[str] = "aws_redshift_reserved_node_exchange_status" kind_display: ClassVar[str] = "AWS Redshift Reserved Node Exchange Status" - kind_description: ClassVar[str] = "Reserved Node Exchange Status provides information about the status of a reserved node exchange in Amazon Redshift, a fully managed data warehouse service." + kind_description: ClassVar[str] = ( + "Reserved Node Exchange Status provides information about the status of a" + " reserved node exchange in Amazon Redshift, a fully managed data warehouse" + " service." + ) mapping: ClassVar[Dict[str, Bender]] = { "reserved_node_exchange_request_id": S("ReservedNodeExchangeRequestId"), "status": S("Status"), @@ -331,7 +400,10 @@ class AwsRedshiftReservedNodeExchangeStatus: class AwsRedshiftCluster(AwsResource): kind: ClassVar[str] = "aws_redshift_cluster" kind_display: ClassVar[str] = "AWS Redshift Cluster" - kind_description: ClassVar[str] = "Redshift Cluster is a fully managed, petabyte-scale data warehouse service provided by AWS." + kind_description: ClassVar[str] = ( + "Redshift Cluster is a fully managed, petabyte-scale data warehouse service" + " provided by AWS." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-clusters", "Clusters") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/route53.py b/plugins/aws/resoto_plugin_aws/resource/route53.py index 5e49f90d6b..2c4d79edf9 100644 --- a/plugins/aws/resoto_plugin_aws/resource/route53.py +++ b/plugins/aws/resoto_plugin_aws/resource/route53.py @@ -24,7 +24,10 @@ class AwsRoute53ZoneConfig: kind: ClassVar[str] = "aws_route53_zone_config" kind_display: ClassVar[str] = "AWS Route53 Zone Config" - kind_description: ClassVar[str] = "Route53 Zone Config is a service provided by Amazon Web Services that allows users to configure DNS settings for their domain names in the cloud." + kind_description: ClassVar[str] = ( + "Route53 Zone Config is a service provided by Amazon Web Services that allows" + " users to configure DNS settings for their domain names in the cloud." + ) mapping: ClassVar[Dict[str, Bender]] = {"comment": S("Comment"), "private_zone": S("PrivateZone")} comment: Optional[str] = field(default=None) private_zone: Optional[bool] = field(default=None) @@ -34,7 +37,11 @@ class AwsRoute53ZoneConfig: class AwsRoute53LinkedService: kind: ClassVar[str] = "aws_route53_linked_service" kind_display: ClassVar[str] = "AWS Route 53 Linked Service" - kind_description: ClassVar[str] = "Route 53 Linked Service is a feature in AWS Route 53 that allows you to link your domain name to other AWS services, such as an S3 bucket or CloudFront distribution." + kind_description: ClassVar[str] = ( + "Route 53 Linked Service is a feature in AWS Route 53 that allows you to link" + " your domain name to other AWS services, such as an S3 bucket or CloudFront" + " distribution." + ) mapping: ClassVar[Dict[str, Bender]] = {"service_principal": S("ServicePrincipal"), "description": S("Description")} service_principal: Optional[str] = field(default=None) description: Optional[str] = field(default=None) @@ -44,7 +51,11 @@ class AwsRoute53LinkedService: class AwsRoute53Zone(AwsResource, BaseDNSZone): kind: ClassVar[str] = "aws_route53_zone" kind_display: ClassVar[str] = "AWS Route 53 Zone" - kind_description: ClassVar[str] = "Route 53 is a scalable domain name system (DNS) web service designed to provide highly reliable and cost-effective domain registration, DNS routing, and health checking of resources within the AWS cloud." + kind_description: ClassVar[str] = ( + "Route 53 is a scalable domain name system (DNS) web service designed to" + " provide highly reliable and cost-effective domain registration, DNS routing," + " and health checking of resources within the AWS cloud." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-hosted-zones", "HostedZones") reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -149,7 +160,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsRoute53GeoLocation: kind: ClassVar[str] = "aws_route53_geo_location" kind_display: ClassVar[str] = "AWS Route53 Geo Location" - kind_description: ClassVar[str] = "Route53 Geo Location is a feature of AWS Route53 DNS service that allows you to route traffic based on the geographic location of your users, providing low latency and improved user experience." + kind_description: ClassVar[str] = ( + "Route53 Geo Location is a feature of AWS Route53 DNS service that allows you" + " to route traffic based on the geographic location of your users, providing" + " low latency and improved user experience." + ) mapping: ClassVar[Dict[str, Bender]] = { "continent_code": S("ContinentCode"), "country_code": S("CountryCode"), @@ -164,7 +179,12 @@ class AwsRoute53GeoLocation: class AwsRoute53AliasTarget: kind: ClassVar[str] = "aws_route53_alias_target" kind_display: ClassVar[str] = "AWS Route 53 Alias Target" - kind_description: ClassVar[str] = "AWS Route 53 Alias Target is a feature of Amazon Route 53, a scalable domain name system web service that translates domain names to IP addresses. Alias Target allows you to route traffic to other AWS resources such as Amazon S3 buckets, CloudFront distributions, and Elastic Load Balancers." + kind_description: ClassVar[str] = ( + "AWS Route 53 Alias Target is a feature of Amazon Route 53, a scalable domain" + " name system web service that translates domain names to IP addresses. Alias" + " Target allows you to route traffic to other AWS resources such as Amazon S3" + " buckets, CloudFront distributions, and Elastic Load Balancers." + ) mapping: ClassVar[Dict[str, Bender]] = { "hosted_zone_id": S("HostedZoneId"), "dns_name": S("DNSName"), @@ -179,7 +199,11 @@ class AwsRoute53AliasTarget: class AwsRoute53CidrRoutingConfig: kind: ClassVar[str] = "aws_route53_cidr_routing_config" kind_display: ClassVar[str] = "AWS Route 53 CIDR Routing Config" - kind_description: ClassVar[str] = "CIDR Routing Config is a feature in AWS Route 53 that allows you to route traffic based on CIDR blocks, enabling more granular control over how your DNS queries are resolved." + kind_description: ClassVar[str] = ( + "CIDR Routing Config is a feature in AWS Route 53 that allows you to route" + " traffic based on CIDR blocks, enabling more granular control over how your" + " DNS queries are resolved." + ) mapping: ClassVar[Dict[str, Bender]] = {"collection_id": S("CollectionId"), "location_name": S("LocationName")} collection_id: Optional[str] = field(default=None) location_name: Optional[str] = field(default=None) @@ -189,7 +213,10 @@ class AwsRoute53CidrRoutingConfig: class AwsRoute53ResourceRecord(AwsResource, BaseDNSRecord): kind: ClassVar[str] = "aws_route53_resource_record" kind_display: ClassVar[str] = "AWS Route 53 Resource Record" - kind_description: ClassVar[str] = "Route 53 Resource Records are domain name system (DNS) records used by AWS Route 53 to route traffic to AWS resources or to external resources." + kind_description: ClassVar[str] = ( + "Route 53 Resource Records are domain name system (DNS) records used by AWS" + " Route 53 to route traffic to AWS resources or to external resources." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [], @@ -206,7 +233,11 @@ def service_name(cls) -> str: class AwsRoute53ResourceRecordSet(AwsResource, BaseDNSRecordSet): kind: ClassVar[str] = "aws_route53_resource_record_set" kind_display: ClassVar[str] = "AWS Route 53 Resource Record Set" - kind_description: ClassVar[str] = "Route 53 Resource Record Sets are DNS records that map domain names to IP addresses or other DNS resources, allowing users to manage domain name resolution in the Amazon Route 53 service." + kind_description: ClassVar[str] = ( + "Route 53 Resource Record Sets are DNS records that map domain names to IP" + " addresses or other DNS resources, allowing users to manage domain name" + " resolution in the Amazon Route 53 service." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["aws_route53_resource_record"], diff --git a/plugins/aws/resoto_plugin_aws/resource/s3.py b/plugins/aws/resoto_plugin_aws/resource/s3.py index 181c2e23f3..db44887758 100644 --- a/plugins/aws/resoto_plugin_aws/resource/s3.py +++ b/plugins/aws/resoto_plugin_aws/resource/s3.py @@ -21,7 +21,11 @@ class AwsS3ServerSideEncryptionRule: kind: ClassVar[str] = "aws_s3_server_side_encryption_rule" kind_display: ClassVar[str] = "AWS S3 Server-side Encryption Rule" - kind_description: ClassVar[str] = "Server-side encryption rules are used in AWS S3 to specify encryption settings for objects stored in the S3 bucket, ensuring data confidentiality and integrity." + kind_description: ClassVar[str] = ( + "Server-side encryption rules are used in AWS S3 to specify encryption" + " settings for objects stored in the S3 bucket, ensuring data confidentiality" + " and integrity." + ) mapping: ClassVar[Dict[str, Bender]] = { "sse_algorithm": S("ApplyServerSideEncryptionByDefault", "SSEAlgorithm"), "kms_master_key_id": S("ApplyServerSideEncryptionByDefault", "KMSMasterKeyID"), @@ -36,7 +40,10 @@ class AwsS3ServerSideEncryptionRule: class AwsS3PublicAccessBlockConfiguration: kind: ClassVar[str] = "aws_s3_public_access_block_configuration" kind_display: ClassVar[str] = "AWS S3 Public Access Block Configuration" - kind_description: ClassVar[str] = "S3 Public Access Block Configuration is a feature in AWS S3 that allows users to manage and restrict public access to their S3 buckets and objects." + kind_description: ClassVar[str] = ( + "S3 Public Access Block Configuration is a feature in AWS S3 that allows" + " users to manage and restrict public access to their S3 buckets and objects." + ) mapping: ClassVar[Dict[str, Bender]] = { "block_public_acls": S("BlockPublicAcls"), "ignore_public_acls": S("IgnorePublicAcls"), @@ -53,7 +60,10 @@ class AwsS3PublicAccessBlockConfiguration: class AwsS3Owner: kind: ClassVar[str] = "aws_s3_owner" kind_display: ClassVar[str] = "AWS S3 Owner" - kind_description: ClassVar[str] = "The AWS S3 Owner refers to the account or entity that owns the Amazon S3 bucket, which is a storage resource provided by Amazon Web Services." + kind_description: ClassVar[str] = ( + "The AWS S3 Owner refers to the account or entity that owns the Amazon S3" + " bucket, which is a storage resource provided by Amazon Web Services." + ) mapping: ClassVar[Dict[str, Bender]] = {"display_name": S("DisplayName"), "id": S("ID")} display_name: Optional[str] = field(default=None) id: Optional[str] = field(default=None) @@ -63,7 +73,10 @@ class AwsS3Owner: class AwsS3Grantee: kind: ClassVar[str] = "aws_s3_grantee" kind_display: ClassVar[str] = "AWS S3 Grantee" - kind_description: ClassVar[str] = "AWS S3 Grantees are entities that have been given permission to access objects in an S3 bucket." + kind_description: ClassVar[str] = ( + "AWS S3 Grantees are entities that have been given permission to access" + " objects in an S3 bucket." + ) mapping: ClassVar[Dict[str, Bender]] = { "display_name": S("DisplayName"), "email_address": S("EmailAddress"), @@ -82,7 +95,11 @@ class AwsS3Grantee: class AwsS3Grant: kind: ClassVar[str] = "aws_s3_grant" kind_display: ClassVar[str] = "AWS S3 Grant" - kind_description: ClassVar[str] = "AWS S3 Grant is a permission that allows a specific user or group to access and perform operations on an S3 bucket or object in the Amazon S3 storage service." + kind_description: ClassVar[str] = ( + "AWS S3 Grant is a permission that allows a specific user or group to access" + " and perform operations on an S3 bucket or object in the Amazon S3 storage" + " service." + ) mapping: ClassVar[Dict[str, Bender]] = { "grantee": S("Grantee") >> Bend(AwsS3Grantee.mapping), "permission": S("Permission"), @@ -95,7 +112,11 @@ class AwsS3Grant: class AwsS3BucketAcl: kind: ClassVar[str] = "aws_s3_bucket_acl" kind_display: ClassVar[str] = "AWS S3 Bucket ACL" - kind_description: ClassVar[str] = "S3 Bucket ACL (Access Control List) is a set of permissions that defines who can access objects (files) stored in an Amazon S3 bucket and what actions they can perform on those objects." + kind_description: ClassVar[str] = ( + "S3 Bucket ACL (Access Control List) is a set of permissions that defines who" + " can access objects (files) stored in an Amazon S3 bucket and what actions" + " they can perform on those objects." + ) mapping: ClassVar[Dict[str, Bender]] = { "owner": S("Owner") >> Bend(AwsS3Owner.mapping), "grants": S("Grants", default=[]) >> ForallBend(AwsS3Grant.mapping), @@ -108,7 +129,11 @@ class AwsS3BucketAcl: class AwsS3TargetGrant: kind: ClassVar[str] = "aws_s3_target_grant" kind_display: ClassVar[str] = "AWS S3 Target Grant" - kind_description: ClassVar[str] = "Target grants in AWS S3 provide permissions for cross-account replication, allowing one AWS S3 bucket to grant another AWS S3 bucket permissions to perform replication." + kind_description: ClassVar[str] = ( + "Target grants in AWS S3 provide permissions for cross-account replication," + " allowing one AWS S3 bucket to grant another AWS S3 bucket permissions to" + " perform replication." + ) mapping: ClassVar[Dict[str, Bender]] = { "grantee": S("Grantee") >> Bend(AwsS3Grantee.mapping), "permission": S("Permission"), @@ -121,7 +146,10 @@ class AwsS3TargetGrant: class AwsS3Logging: kind: ClassVar[str] = "aws_s3_logging" kind_display: ClassVar[str] = "AWS S3 Logging" - kind_description: ClassVar[str] = "S3 Logging is a feature in Amazon Simple Storage Service that allows users to track and record access logs for their S3 buckets." + kind_description: ClassVar[str] = ( + "S3 Logging is a feature in Amazon Simple Storage Service that allows users" + " to track and record access logs for their S3 buckets." + ) mapping: ClassVar[Dict[str, Bender]] = { "target_bucket": S("TargetBucket"), "target_grants": S("TargetGrants") >> ForallBend(AwsS3TargetGrant.mapping), @@ -136,7 +164,10 @@ class AwsS3Logging: class AwsS3Bucket(AwsResource, BaseBucket): kind: ClassVar[str] = "aws_s3_bucket" kind_display: ClassVar[str] = "AWS S3 Bucket" - kind_description: ClassVar[str] = "S3 buckets are simple storage containers in Amazon's cloud, offering a scalable storage solution for various types of data." + kind_description: ClassVar[str] = ( + "S3 buckets are simple storage containers in Amazon's cloud, offering a" + " scalable storage solution for various types of data." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-buckets", "Buckets", override_iam_permission="s3:ListAllMyBuckets" ) @@ -332,7 +363,10 @@ class AwsS3AccountSettings(AwsResource, PhantomBaseResource): kind: ClassVar[str] = "aws_s3_account_settings" kind_display: ClassVar[str] = "AWS S3 Account Settings" - kind_description: ClassVar[str] = "AWS S3 Account Settings refer to the configuration options and preferences available for an Amazon S3 (Simple Storage Service) account." + kind_description: ClassVar[str] = ( + "AWS S3 Account Settings refer to the configuration options and preferences" + " available for an Amazon S3 (Simple Storage Service) account." + ) reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_account"]}, } diff --git a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py index 180c89d3f9..e5a77a6890 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py +++ b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py @@ -71,7 +71,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerNotebook(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_notebook" kind_display: ClassVar[str] = "AWS SageMaker Notebook" - kind_description: ClassVar[str] = "SageMaker Notebooks are a fully managed service by AWS that provides a Jupyter notebook environment for data scientists and developers to build, train, and deploy machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Notebooks are a fully managed service by AWS that provides a" + " Jupyter notebook environment for data scientists and developers to build," + " train, and deploy machine learning models." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_ec2_subnet", "aws_ec2_security_group", "aws_iam_role", "aws_sagemaker_code_repository"], @@ -186,7 +190,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerParameterRangeSpecification: kind: ClassVar[str] = "aws_sagemaker_integer_parameter_range_specification" kind_display: ClassVar[str] = "AWS SageMaker Integer Parameter Range Specification" - kind_description: ClassVar[str] = "The Integer Parameter Range Specification is a configuration option in AWS SageMaker that allows users to define a range of integer values for a hyperparameter when training machine learning models." + kind_description: ClassVar[str] = ( + "The Integer Parameter Range Specification is a configuration option in AWS" + " SageMaker that allows users to define a range of integer values for a" + " hyperparameter when training machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = {"min_value": S("MinValue"), "max_value": S("MaxValue")} min_value: Optional[str] = field(default=None) max_value: Optional[str] = field(default=None) @@ -196,7 +204,11 @@ class AwsSagemakerParameterRangeSpecification: class AwsSagemakerParameterRange: kind: ClassVar[str] = "aws_sagemaker_parameter_range" kind_display: ClassVar[str] = "AWS SageMaker Parameter Range" - kind_description: ClassVar[str] = "SageMaker Parameter Range is a feature of Amazon SageMaker that allows you to define the range of values for hyperparameters in your machine learning models, enabling you to fine-tune the performance of your models." + kind_description: ClassVar[str] = ( + "SageMaker Parameter Range is a feature of Amazon SageMaker that allows you" + " to define the range of values for hyperparameters in your machine learning" + " models, enabling you to fine-tune the performance of your models." + ) mapping: ClassVar[Dict[str, Bender]] = { "integer_parameter_range_specification": S("IntegerParameterRangeSpecification") >> Bend(AwsSagemakerParameterRangeSpecification.mapping), @@ -213,7 +225,12 @@ class AwsSagemakerParameterRange: class AwsSagemakerHyperParameterSpecification: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_specification" kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Specification" - kind_description: ClassVar[str] = "SageMaker Hyper Parameter Specification is used to define a set of hyperparameters for training machine learning models with Amazon SageMaker, which is a fully-managed service that enables users to build, train, and deploy machine learning models at scale." + kind_description: ClassVar[str] = ( + "SageMaker Hyper Parameter Specification is used to define a set of" + " hyperparameters for training machine learning models with Amazon SageMaker," + " which is a fully-managed service that enables users to build, train, and" + " deploy machine learning models at scale." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "description": S("Description"), @@ -236,7 +253,11 @@ class AwsSagemakerHyperParameterSpecification: class AwsSagemakerMetricDefinition: kind: ClassVar[str] = "aws_sagemaker_metric_definition" kind_display: ClassVar[str] = "AWS SageMaker Metric Definition" - kind_description: ClassVar[str] = "SageMaker Metric Definitions are custom metrics that can be used to monitor and evaluate the performance of machine learning models trained on Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Metric Definitions are custom metrics that can be used to monitor" + " and evaluate the performance of machine learning models trained on Amazon" + " SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "regex": S("Regex")} name: Optional[str] = field(default=None) regex: Optional[str] = field(default=None) @@ -246,7 +267,11 @@ class AwsSagemakerMetricDefinition: class AwsSagemakerChannelSpecification: kind: ClassVar[str] = "aws_sagemaker_channel_specification" kind_display: ClassVar[str] = "AWS SageMaker Channel Specification" - kind_description: ClassVar[str] = "Sagemaker Channel Specifications are used to define the input data for a SageMaker training job, including the S3 location of the data and any data preprocessing configuration." + kind_description: ClassVar[str] = ( + "Sagemaker Channel Specifications are used to define the input data for a" + " SageMaker training job, including the S3 location of the data and any data" + " preprocessing configuration." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "description": S("Description"), @@ -267,7 +292,11 @@ class AwsSagemakerChannelSpecification: class AwsSagemakerHyperParameterTuningJobObjective: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_objective" kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job Objective" - kind_description: ClassVar[str] = "The objective of a hyperparameter tuning job in Amazon SageMaker is to optimize machine learning models by searching for the best combination of hyperparameters to minimize or maximize a specific metric." + kind_description: ClassVar[str] = ( + "The objective of a hyperparameter tuning job in Amazon SageMaker is to" + " optimize machine learning models by searching for the best combination of" + " hyperparameters to minimize or maximize a specific metric." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "metric_name": S("MetricName")} type: Optional[str] = field(default=None) metric_name: Optional[str] = field(default=None) @@ -277,7 +306,11 @@ class AwsSagemakerHyperParameterTuningJobObjective: class AwsSagemakerTrainingSpecification: kind: ClassVar[str] = "aws_sagemaker_training_specification" kind_display: ClassVar[str] = "AWS SageMaker Training Specification" - kind_description: ClassVar[str] = "SageMaker Training Specification is a resource in AWS that provides the configuration details for training a machine learning model using Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Training Specification is a resource in AWS that provides the" + " configuration details for training a machine learning model using Amazon" + " SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "training_image": S("TrainingImage"), "training_image_digest": S("TrainingImageDigest"), @@ -304,7 +337,11 @@ class AwsSagemakerTrainingSpecification: class AwsSagemakerModelPackageContainerDefinition: kind: ClassVar[str] = "aws_sagemaker_model_package_container_definition" kind_display: ClassVar[str] = "AWS SageMaker Model Package Container Definition" - kind_description: ClassVar[str] = "AWS SageMaker Model Package Container Definition is a configuration that describes how to run a machine learning model as a container in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "AWS SageMaker Model Package Container Definition is a configuration that" + " describes how to run a machine learning model as a container in Amazon" + " SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_hostname": S("ContainerHostname"), "image": S("Image"), @@ -333,7 +370,11 @@ class AwsSagemakerModelPackageContainerDefinition: class AwsSagemakerInferenceSpecification: kind: ClassVar[str] = "aws_sagemaker_inference_specification" kind_display: ClassVar[str] = "AWS SageMaker Inference Specification" - kind_description: ClassVar[str] = "SageMaker Inference Specification is a specification file that defines the input and output formats for deploying machine learning models on Amazon SageMaker for making predictions." + kind_description: ClassVar[str] = ( + "SageMaker Inference Specification is a specification file that defines the" + " input and output formats for deploying machine learning models on Amazon" + " SageMaker for making predictions." + ) mapping: ClassVar[Dict[str, Bender]] = { "containers": S("Containers", default=[]) >> ForallBend(AwsSagemakerModelPackageContainerDefinition.mapping), "supported_transform_instance_types": S("SupportedTransformInstanceTypes", default=[]), @@ -352,7 +393,11 @@ class AwsSagemakerInferenceSpecification: class AwsSagemakerS3DataSource: kind: ClassVar[str] = "aws_sagemaker_s3_data_source" kind_display: ClassVar[str] = "AWS SageMaker S3 Data Source" - kind_description: ClassVar[str] = "SageMaker S3 Data Source is a cloud resource in Amazon SageMaker that allows users to access and process data stored in Amazon S3 for machine learning tasks." + kind_description: ClassVar[str] = ( + "SageMaker S3 Data Source is a cloud resource in Amazon SageMaker that allows" + " users to access and process data stored in Amazon S3 for machine learning" + " tasks." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_data_type": S("S3DataType"), "s3_uri": S("S3Uri"), @@ -371,7 +416,11 @@ class AwsSagemakerS3DataSource: class AwsSagemakerFileSystemDataSource: kind: ClassVar[str] = "aws_sagemaker_file_system_data_source" kind_display: ClassVar[str] = "AWS SageMaker File System Data Source" - kind_description: ClassVar[str] = "SageMaker File System Data Source is a resource in AWS SageMaker that provides access to data stored in an Amazon Elastic File System (EFS) from your machine learning training job or processing job." + kind_description: ClassVar[str] = ( + "SageMaker File System Data Source is a resource in AWS SageMaker that" + " provides access to data stored in an Amazon Elastic File System (EFS) from" + " your machine learning training job or processing job." + ) mapping: ClassVar[Dict[str, Bender]] = { "file_system_id": S("FileSystemId"), "file_system_access_mode": S("FileSystemAccessMode"), @@ -388,7 +437,10 @@ class AwsSagemakerFileSystemDataSource: class AwsSagemakerDataSource: kind: ClassVar[str] = "aws_sagemaker_data_source" kind_display: ClassVar[str] = "AWS SageMaker Data Source" - kind_description: ClassVar[str] = "SageMaker Data Source is a resource in Amazon SageMaker that allows users to easily access and manage their data for machine learning tasks." + kind_description: ClassVar[str] = ( + "SageMaker Data Source is a resource in Amazon SageMaker that allows users to" + " easily access and manage their data for machine learning tasks." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource") >> Bend(AwsSagemakerS3DataSource.mapping), "file_system_data_source": S("FileSystemDataSource") >> Bend(AwsSagemakerFileSystemDataSource.mapping), @@ -401,7 +453,11 @@ class AwsSagemakerDataSource: class AwsSagemakerChannel: kind: ClassVar[str] = "aws_sagemaker_channel" kind_display: ClassVar[str] = "AWS SageMaker Channel" - kind_description: ClassVar[str] = "SageMaker Channels are data sources used for training machine learning models on Amazon SageMaker. They can be used to securely stream and preprocess data from various sources." + kind_description: ClassVar[str] = ( + "SageMaker Channels are data sources used for training machine learning" + " models on Amazon SageMaker. They can be used to securely stream and" + " preprocess data from various sources." + ) mapping: ClassVar[Dict[str, Bender]] = { "channel_name": S("ChannelName"), "data_source": S("DataSource") >> Bend(AwsSagemakerDataSource.mapping), @@ -424,7 +480,10 @@ class AwsSagemakerChannel: class AwsSagemakerOutputDataConfig: kind: ClassVar[str] = "aws_sagemaker_output_data_config" kind_display: ClassVar[str] = "AWS SageMaker Output Data Config" - kind_description: ClassVar[str] = "SageMaker Output Data Config is a feature of Amazon SageMaker that allows users to specify where the output data from a training job should be stored." + kind_description: ClassVar[str] = ( + "SageMaker Output Data Config is a feature of Amazon SageMaker that allows" + " users to specify where the output data from a training job should be stored." + ) mapping: ClassVar[Dict[str, Bender]] = {"kms_key_id": S("KmsKeyId"), "s3_output_path": S("S3OutputPath")} kms_key_id: Optional[str] = field(default=None) s3_output_path: Optional[str] = field(default=None) @@ -434,7 +493,10 @@ class AwsSagemakerOutputDataConfig: class AwsSagemakerInstanceGroup: kind: ClassVar[str] = "aws_sagemaker_instance_group" kind_display: ClassVar[str] = "AWS SageMaker Instance Group" - kind_description: ClassVar[str] = "SageMaker Instance Groups are a collection of EC2 instances used for training and deploying machine learning models with Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Instance Groups are a collection of EC2 instances used for" + " training and deploying machine learning models with Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -449,7 +511,11 @@ class AwsSagemakerInstanceGroup: class AwsSagemakerResourceConfig: kind: ClassVar[str] = "aws_sagemaker_resource_config" kind_display: ClassVar[str] = "AWS SageMaker Resource Config" - kind_description: ClassVar[str] = "SageMaker Resource Config is a configuration for AWS SageMaker, a fully managed machine learning service provided by Amazon Web Services, which allows users to build, train, and deploy machine learning models at scale." + kind_description: ClassVar[str] = ( + "SageMaker Resource Config is a configuration for AWS SageMaker, a fully" + " managed machine learning service provided by Amazon Web Services, which" + " allows users to build, train, and deploy machine learning models at scale." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -470,7 +536,11 @@ class AwsSagemakerResourceConfig: class AwsSagemakerStoppingCondition: kind: ClassVar[str] = "aws_sagemaker_stopping_condition" kind_display: ClassVar[str] = "AWS SageMaker Stopping Condition" - kind_description: ClassVar[str] = "Stopping condition for an AWS SageMaker training job, which defines the criteria for stopping the training process based on time, accuracy, or other metrics." + kind_description: ClassVar[str] = ( + "Stopping condition for an AWS SageMaker training job, which defines the" + " criteria for stopping the training process based on time, accuracy, or other" + " metrics." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_runtime_in_seconds": S("MaxRuntimeInSeconds"), "max_wait_time_in_seconds": S("MaxWaitTimeInSeconds"), @@ -483,7 +553,12 @@ class AwsSagemakerStoppingCondition: class AwsSagemakerTrainingJobDefinition: kind: ClassVar[str] = "aws_sagemaker_training_job_definition" kind_display: ClassVar[str] = "AWS SageMaker Training Job Definition" - kind_description: ClassVar[str] = "SageMaker Training Job Definition is a configuration that specifies how a machine learning model should be trained using Amazon SageMaker, which is a fully-managed service that enables developers and data scientists to build, train, and deploy machine learning models quickly and easily." + kind_description: ClassVar[str] = ( + "SageMaker Training Job Definition is a configuration that specifies how a" + " machine learning model should be trained using Amazon SageMaker, which is a" + " fully-managed service that enables developers and data scientists to build," + " train, and deploy machine learning models quickly and easily." + ) mapping: ClassVar[Dict[str, Bender]] = { "training_input_mode": S("TrainingInputMode"), "hyper_parameters": S("HyperParameters"), @@ -504,7 +579,10 @@ class AwsSagemakerTrainingJobDefinition: class AwsSagemakerTransformS3DataSource: kind: ClassVar[str] = "aws_sagemaker_transform_s3_data_source" kind_display: ClassVar[str] = "AWS SageMaker Transform S3 Data Source" - kind_description: ClassVar[str] = "SageMaker Transform S3 Data Source is a data source used in Amazon SageMaker to specify the location of the input data that needs to be transformed." + kind_description: ClassVar[str] = ( + "SageMaker Transform S3 Data Source is a data source used in Amazon SageMaker" + " to specify the location of the input data that needs to be transformed." + ) mapping: ClassVar[Dict[str, Bender]] = {"s3_data_type": S("S3DataType"), "s3_uri": S("S3Uri")} s3_data_type: Optional[str] = field(default=None) s3_uri: Optional[str] = field(default=None) @@ -514,7 +592,11 @@ class AwsSagemakerTransformS3DataSource: class AwsSagemakerTransformDataSource: kind: ClassVar[str] = "aws_sagemaker_transform_data_source" kind_display: ClassVar[str] = "AWS SageMaker Transform Data Source" - kind_description: ClassVar[str] = "SageMaker Transform Data Source is a resource in AWS SageMaker that provides the input data for a batch transform job, allowing users to preprocess and transform large datasets efficiently." + kind_description: ClassVar[str] = ( + "SageMaker Transform Data Source is a resource in AWS SageMaker that provides" + " the input data for a batch transform job, allowing users to preprocess and" + " transform large datasets efficiently." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource") >> Bend(AwsSagemakerTransformS3DataSource.mapping) } @@ -525,7 +607,11 @@ class AwsSagemakerTransformDataSource: class AwsSagemakerTransformInput: kind: ClassVar[str] = "aws_sagemaker_transform_input" kind_display: ClassVar[str] = "AWS SageMaker Transform Input" - kind_description: ClassVar[str] = "SageMaker Transform Input is a resource in the AWS SageMaker service that represents input data for batch transform jobs. It is used to provide the data that needs to be processed by machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Transform Input is a resource in the AWS SageMaker service that" + " represents input data for batch transform jobs. It is used to provide the" + " data that needs to be processed by machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "data_source": S("DataSource") >> Bend(AwsSagemakerTransformDataSource.mapping), "content_type": S("ContentType"), @@ -542,7 +628,11 @@ class AwsSagemakerTransformInput: class AwsSagemakerTransformOutput: kind: ClassVar[str] = "aws_sagemaker_transform_output" kind_display: ClassVar[str] = "AWS SageMaker Transform Output" - kind_description: ClassVar[str] = "SageMaker Transform Output is the result of a machine learning transformation job in Amazon SageMaker. It is the processed data generated by applying a trained model to input data." + kind_description: ClassVar[str] = ( + "SageMaker Transform Output is the result of a machine learning" + " transformation job in Amazon SageMaker. It is the processed data generated" + " by applying a trained model to input data." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_output_path": S("S3OutputPath"), "accept": S("Accept"), @@ -559,7 +649,11 @@ class AwsSagemakerTransformOutput: class AwsSagemakerTransformResources: kind: ClassVar[str] = "aws_sagemaker_transform_resources" kind_display: ClassVar[str] = "AWS SageMaker Transform Resources" - kind_description: ClassVar[str] = "SageMaker Transform Resources are used in Amazon SageMaker for creating machine learning workflows to preprocess and transform data before making predictions or inferences." + kind_description: ClassVar[str] = ( + "SageMaker Transform Resources are used in Amazon SageMaker for creating" + " machine learning workflows to preprocess and transform data before making" + " predictions or inferences." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -574,7 +668,11 @@ class AwsSagemakerTransformResources: class AwsSagemakerTransformJobDefinition: kind: ClassVar[str] = "aws_sagemaker_transform_job_definition" kind_display: ClassVar[str] = "AWS SageMaker Transform Job Definition" - kind_description: ClassVar[str] = "SageMaker Transform Job Definition is a configuration that defines how data transformation should be performed on input data using Amazon SageMaker's built-in algorithms or custom models." + kind_description: ClassVar[str] = ( + "SageMaker Transform Job Definition is a configuration that defines how data" + " transformation should be performed on input data using Amazon SageMaker's" + " built-in algorithms or custom models." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_concurrent_transforms": S("MaxConcurrentTransforms"), "max_payload_in_mb": S("MaxPayloadInMB"), @@ -597,7 +695,11 @@ class AwsSagemakerTransformJobDefinition: class AwsSagemakerAlgorithmValidationProfile: kind: ClassVar[str] = "aws_sagemaker_algorithm_validation_profile" kind_display: ClassVar[str] = "AWS SageMaker Algorithm Validation Profile" - kind_description: ClassVar[str] = "SageMaker Algorithm Validation Profile is a resource in Amazon SageMaker that allows you to define validation rules for algorithms used in machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Algorithm Validation Profile is a resource in Amazon SageMaker" + " that allows you to define validation rules for algorithms used in machine" + " learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "profile_name": S("ProfileName"), "training_job_definition": S("TrainingJobDefinition") >> Bend(AwsSagemakerTrainingJobDefinition.mapping), @@ -612,7 +714,10 @@ class AwsSagemakerAlgorithmValidationProfile: class AwsSagemakerAlgorithmStatusItem: kind: ClassVar[str] = "aws_sagemaker_algorithm_status_item" kind_display: ClassVar[str] = "AWS SageMaker Algorithm Status Item" - kind_description: ClassVar[str] = "SageMaker Algorithm Status Item is a resource in AWS SageMaker that represents the status of an algorithm used for machine learning tasks." + kind_description: ClassVar[str] = ( + "SageMaker Algorithm Status Item is a resource in AWS SageMaker that" + " represents the status of an algorithm used for machine learning tasks." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "status": S("Status"), @@ -627,7 +732,11 @@ class AwsSagemakerAlgorithmStatusItem: class AwsSagemakerAlgorithmStatusDetails: kind: ClassVar[str] = "aws_sagemaker_algorithm_status_details" kind_display: ClassVar[str] = "AWS SageMaker Algorithm Status Details" - kind_description: ClassVar[str] = "SageMaker algorithm status details provide information about the status and progress of algorithms running on Amazon SageMaker, a fully managed machine learning service." + kind_description: ClassVar[str] = ( + "SageMaker algorithm status details provide information about the status and" + " progress of algorithms running on Amazon SageMaker, a fully managed machine" + " learning service." + ) mapping: ClassVar[Dict[str, Bender]] = { "validation_statuses": S("ValidationStatuses", default=[]) >> ForallBend(AwsSagemakerAlgorithmStatusItem.mapping), @@ -642,7 +751,10 @@ class AwsSagemakerAlgorithmStatusDetails: class AwsSagemakerAlgorithm(AwsResource): kind: ClassVar[str] = "aws_sagemaker_algorithm" kind_display: ClassVar[str] = "AWS SageMaker Algorithm" - kind_description: ClassVar[str] = "SageMaker Algorithms are pre-built machine learning algorithms provided by Amazon SageMaker, which can be used to train and deploy predictive models." + kind_description: ClassVar[str] = ( + "SageMaker Algorithms are pre-built machine learning algorithms provided by" + " Amazon SageMaker, which can be used to train and deploy predictive models." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_iam_role"], "delete": ["aws_iam_role"]} } @@ -707,7 +819,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerImageConfig: kind: ClassVar[str] = "aws_sagemaker_image_config" kind_display: ClassVar[str] = "AWS SageMaker Image Configuration" - kind_description: ClassVar[str] = "SageMaker Image Configuration is a resource in AWS SageMaker that allows you to define and package custom ML environments for training and inference." + kind_description: ClassVar[str] = ( + "SageMaker Image Configuration is a resource in AWS SageMaker that allows you" + " to define and package custom ML environments for training and inference." + ) mapping: ClassVar[Dict[str, Bender]] = { "repository_access_mode": S("RepositoryAccessMode"), "repository_auth_config": S("RepositoryAuthConfig", "RepositoryCredentialsProviderArn"), @@ -720,7 +835,11 @@ class AwsSagemakerImageConfig: class AwsSagemakerContainerDefinition: kind: ClassVar[str] = "aws_sagemaker_container_definition" kind_display: ClassVar[str] = "AWS SageMaker Container Definition" - kind_description: ClassVar[str] = "SageMaker Container Definition is a resource in AWS that allows you to define the container image and resources required to run your machine learning model in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Container Definition is a resource in AWS that allows you to" + " define the container image and resources required to run your machine" + " learning model in Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_hostname": S("ContainerHostname"), "image": S("Image"), @@ -747,7 +866,12 @@ class AwsSagemakerContainerDefinition: class AwsSagemakerVpcConfig: kind: ClassVar[str] = "aws_sagemaker_vpc_config" kind_display: ClassVar[str] = "AWS SageMaker VPC Config" - kind_description: ClassVar[str] = "SageMaker VPC Config is a configuration option in Amazon SageMaker that allows users to specify the VPC (Virtual Private Cloud) settings for training and deploying machine learning models in a private network environment." + kind_description: ClassVar[str] = ( + "SageMaker VPC Config is a configuration option in Amazon SageMaker that" + " allows users to specify the VPC (Virtual Private Cloud) settings for" + " training and deploying machine learning models in a private network" + " environment." + ) mapping: ClassVar[Dict[str, Bender]] = { "security_group_ids": S("SecurityGroupIds", default=[]), "subnets": S("Subnets", default=[]), @@ -760,7 +884,10 @@ class AwsSagemakerVpcConfig: class AwsSagemakerModel(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_model" kind_display: ClassVar[str] = "AWS SageMaker Model" - kind_description: ClassVar[str] = "SageMaker Models are machine learning models built and trained using Amazon SageMaker, a fully-managed machine learning service by Amazon Web Services." + kind_description: ClassVar[str] = ( + "SageMaker Models are machine learning models built and trained using Amazon" + " SageMaker, a fully-managed machine learning service by Amazon Web Services." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_subnet", "aws_ec2_security_group"], @@ -830,7 +957,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerResourceSpec: kind: ClassVar[str] = "aws_sagemaker_resource_spec" kind_display: ClassVar[str] = "AWS SageMaker Resource Spec" - kind_description: ClassVar[str] = "SageMaker Resource Spec is a specification for configuring the compute resources used in Amazon SageMaker for machine learning model training and deployment." + kind_description: ClassVar[str] = ( + "SageMaker Resource Spec is a specification for configuring the compute" + " resources used in Amazon SageMaker for machine learning model training and" + " deployment." + ) mapping: ClassVar[Dict[str, Bender]] = { "sage_maker_image_arn": S("SageMakerImageArn"), "sage_maker_image_version_arn": S("SageMakerImageVersionArn"), @@ -847,7 +978,10 @@ class AwsSagemakerResourceSpec: class AwsSagemakerApp(AwsResource): kind: ClassVar[str] = "aws_sagemaker_app" kind_display: ClassVar[str] = "AWS SageMaker App" - kind_description: ClassVar[str] = "SageMaker App is a development environment provided by Amazon Web Services for building, training, and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker App is a development environment provided by Amazon Web Services" + " for building, training, and deploying machine learning models." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_sagemaker_domain", "aws_sagemaker_user_profile"], @@ -958,7 +1092,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerSharingSettings: kind: ClassVar[str] = "aws_sagemaker_sharing_settings" kind_display: ClassVar[str] = "AWS SageMaker Sharing Settings" - kind_description: ClassVar[str] = "SageMaker Sharing Settings allow users to share their Amazon SageMaker resources, such as notebooks and training jobs, with other users or AWS accounts." + kind_description: ClassVar[str] = ( + "SageMaker Sharing Settings allow users to share their Amazon SageMaker" + " resources, such as notebooks and training jobs, with other users or AWS" + " accounts." + ) mapping: ClassVar[Dict[str, Bender]] = { "notebook_output_option": S("NotebookOutputOption"), "s3_output_path": S("S3OutputPath"), @@ -973,7 +1111,11 @@ class AwsSagemakerSharingSettings: class AwsSagemakerJupyterServerAppSettings: kind: ClassVar[str] = "aws_sagemaker_jupyter_server_app_settings" kind_display: ClassVar[str] = "AWS SageMaker Jupyter Server App Settings" - kind_description: ClassVar[str] = "SageMaker Jupyter Server App Settings is a feature in AWS SageMaker that allows you to configure and customize the settings of your Jupyter server for machine learning development and training." + kind_description: ClassVar[str] = ( + "SageMaker Jupyter Server App Settings is a feature in AWS SageMaker that" + " allows you to configure and customize the settings of your Jupyter server" + " for machine learning development and training." + ) mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), "lifecycle_config_arns": S("LifecycleConfigArns", default=[]), @@ -988,7 +1130,11 @@ class AwsSagemakerJupyterServerAppSettings: class AwsSagemakerCustomImage: kind: ClassVar[str] = "aws_sagemaker_custom_image" kind_display: ClassVar[str] = "AWS SageMaker Custom Image" - kind_description: ClassVar[str] = "SageMaker Custom Images allow you to create and manage custom machine learning images for Amazon SageMaker, providing a pre-configured environment for training and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Custom Images allow you to create and manage custom machine" + " learning images for Amazon SageMaker, providing a pre-configured environment" + " for training and deploying machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "image_name": S("ImageName"), "image_version_number": S("ImageVersionNumber"), @@ -1003,7 +1149,11 @@ class AwsSagemakerCustomImage: class AwsSagemakerKernelGatewayAppSettings: kind: ClassVar[str] = "aws_sagemaker_kernel_gateway_app_settings" kind_display: ClassVar[str] = "AWS SageMaker Kernel Gateway App Settings" - kind_description: ClassVar[str] = "SageMaker Kernel Gateway App Settings is a service by AWS that allows users to configure and manage settings for their SageMaker kernel gateway applications." + kind_description: ClassVar[str] = ( + "SageMaker Kernel Gateway App Settings is a service by AWS that allows users" + " to configure and manage settings for their SageMaker kernel gateway" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), "custom_images": S("CustomImages", default=[]) >> ForallBend(AwsSagemakerCustomImage.mapping), @@ -1018,7 +1168,11 @@ class AwsSagemakerKernelGatewayAppSettings: class AwsSagemakerTensorBoardAppSettings: kind: ClassVar[str] = "aws_sagemaker_tensor_board_app_settings" kind_display: ClassVar[str] = "AWS SageMaker Tensor Board App Settings" - kind_description: ClassVar[str] = "SageMaker Tensor Board App Settings is a feature provided by Amazon SageMaker to configure and customize the settings for TensorBoard, a visualization tool for training and testing machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Tensor Board App Settings is a feature provided by Amazon" + " SageMaker to configure and customize the settings for TensorBoard, a" + " visualization tool for training and testing machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping) } @@ -1029,7 +1183,12 @@ class AwsSagemakerTensorBoardAppSettings: class AwsSagemakerRStudioServerProAppSettings: kind: ClassVar[str] = "aws_sagemaker_r_studio_server_pro_app_settings" kind_display: ClassVar[str] = "AWS SageMaker RStudio Server Pro App Settings" - kind_description: ClassVar[str] = "SageMaker RStudio Server Pro App Settings is a feature in AWS SageMaker that allows configuring application settings for RStudio Server Pro, an integrated development environment for R programming language, running on SageMaker instances." + kind_description: ClassVar[str] = ( + "SageMaker RStudio Server Pro App Settings is a feature in AWS SageMaker that" + " allows configuring application settings for RStudio Server Pro, an" + " integrated development environment for R programming language, running on" + " SageMaker instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"access_status": S("AccessStatus"), "user_group": S("UserGroup")} access_status: Optional[str] = field(default=None) user_group: Optional[str] = field(default=None) @@ -1039,7 +1198,11 @@ class AwsSagemakerRStudioServerProAppSettings: class AwsSagemakerRSessionAppSettings: kind: ClassVar[str] = "aws_sagemaker_r_session_app_settings" kind_display: ClassVar[str] = "AWS SageMaker R Session App Settings" - kind_description: ClassVar[str] = "SageMaker R Session App Settings is a resource in Amazon SageMaker that allows configuring and managing R session settings for machine learning workloads." + kind_description: ClassVar[str] = ( + "SageMaker R Session App Settings is a resource in Amazon SageMaker that" + " allows configuring and managing R session settings for machine learning" + " workloads." + ) mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), "custom_images": S("CustomImages", default=[]) >> ForallBend(AwsSagemakerCustomImage.mapping), @@ -1052,7 +1215,11 @@ class AwsSagemakerRSessionAppSettings: class AwsSagemakerTimeSeriesForecastingSettings: kind: ClassVar[str] = "aws_sagemaker_time_series_forecasting_settings" kind_display: ClassVar[str] = "AWS SageMaker Time Series Forecasting Settings" - kind_description: ClassVar[str] = "AWS SageMaker Time Series Forecasting Settings provide configurations and options for training time series forecasting models on Amazon SageMaker platform." + kind_description: ClassVar[str] = ( + "AWS SageMaker Time Series Forecasting Settings provide configurations and" + " options for training time series forecasting models on Amazon SageMaker" + " platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "amazon_forecast_role_arn": S("AmazonForecastRoleArn"), @@ -1065,7 +1232,10 @@ class AwsSagemakerTimeSeriesForecastingSettings: class AwsSagemakerCanvasAppSettings: kind: ClassVar[str] = "aws_sagemaker_canvas_app_settings" kind_display: ClassVar[str] = "AWS SageMaker Canvas App Settings" - kind_description: ClassVar[str] = "SageMaker Canvas App Settings are configurations for custom user interfaces built using Amazon SageMaker's visual interface" + kind_description: ClassVar[str] = ( + "SageMaker Canvas App Settings are configurations for custom user interfaces" + " built using Amazon SageMaker's visual interface" + ) mapping: ClassVar[Dict[str, Bender]] = { "time_series_forecasting_settings": S("TimeSeriesForecastingSettings") >> Bend(AwsSagemakerTimeSeriesForecastingSettings.mapping) @@ -1077,7 +1247,11 @@ class AwsSagemakerCanvasAppSettings: class AwsSagemakerUserSettings: kind: ClassVar[str] = "aws_sagemaker_user_settings" kind_display: ClassVar[str] = "AWS SageMaker User Settings" - kind_description: ClassVar[str] = "SageMaker User Settings allows users to configure personal settings for Amazon SageMaker, a machine learning service provided by Amazon Web Services." + kind_description: ClassVar[str] = ( + "SageMaker User Settings allows users to configure personal settings for" + " Amazon SageMaker, a machine learning service provided by Amazon Web" + " Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "execution_role": S("ExecutionRole"), "sharing_settings": S("SharingSettings") >> Bend(AwsSagemakerSharingSettings.mapping), @@ -1105,7 +1279,11 @@ class AwsSagemakerUserSettings: class AwsSagemakerRStudioServerProDomainSettings: kind: ClassVar[str] = "aws_sagemaker_r_studio_server_pro_domain_settings" kind_display: ClassVar[str] = "AWS SageMaker R Studio Server Pro Domain Settings" - kind_description: ClassVar[str] = "SageMaker R Studio Server Pro Domain Settings is a feature of Amazon SageMaker that allows users to customize the domain configuration for R Studio Server Pro instances in their SageMaker environment." + kind_description: ClassVar[str] = ( + "SageMaker R Studio Server Pro Domain Settings is a feature of Amazon" + " SageMaker that allows users to customize the domain configuration for R" + " Studio Server Pro instances in their SageMaker environment." + ) mapping: ClassVar[Dict[str, Bender]] = { "domain_execution_role_arn": S("DomainExecutionRoleArn"), "r_studio_connect_url": S("RStudioConnectUrl"), @@ -1122,7 +1300,12 @@ class AwsSagemakerRStudioServerProDomainSettings: class AwsSagemakerDomainSettings: kind: ClassVar[str] = "aws_sagemaker_domain_settings" kind_display: ClassVar[str] = "AWS SageMaker Domain Settings" - kind_description: ClassVar[str] = "SageMaker Domain Settings allow you to configure and manage domains in Amazon SageMaker, a fully managed machine learning service. Domains provide a central location for managing notebooks, experiments, and models in SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Domain Settings allow you to configure and manage domains in" + " Amazon SageMaker, a fully managed machine learning service. Domains provide" + " a central location for managing notebooks, experiments, and models in" + " SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "security_group_ids": S("SecurityGroupIds", default=[]), "r_studio_server_pro_domain_settings": S("RStudioServerProDomainSettings") @@ -1138,7 +1321,10 @@ class AwsSagemakerDomainSettings: class AwsSagemakerDefaultSpaceSettings: kind: ClassVar[str] = "aws_sagemaker_default_space_settings" kind_display: ClassVar[str] = "AWS SageMaker Default Space Settings" - kind_description: ClassVar[str] = "SageMaker Default Space Settings refer to the default configurations and preferences for organizing machine learning projects in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Default Space Settings refer to the default configurations and" + " preferences for organizing machine learning projects in Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "execution_role": S("ExecutionRole"), "security_groups": S("SecurityGroups", default=[]), @@ -1157,7 +1343,10 @@ class AwsSagemakerDefaultSpaceSettings: class AwsSagemakerDomain(AwsResource): kind: ClassVar[str] = "aws_sagemaker_domain" kind_display: ClassVar[str] = "AWS SageMaker Domain" - kind_description: ClassVar[str] = "SageMaker Domains are AWS services that provide a complete set of tools and resources for building, training, and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Domains are AWS services that provide a complete set of tools and" + " resources for building, training, and deploying machine learning models." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -1340,7 +1529,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerExperimentSource: kind: ClassVar[str] = "aws_sagemaker_experiment_source" kind_display: ClassVar[str] = "AWS SageMaker Experiment Source" - kind_description: ClassVar[str] = "SageMaker Experiment Source is a resource in AWS SageMaker that represents the source data used for machine learning experiments." + kind_description: ClassVar[str] = ( + "SageMaker Experiment Source is a resource in AWS SageMaker that represents" + " the source data used for machine learning experiments." + ) mapping: ClassVar[Dict[str, Bender]] = {"source_arn": S("SourceArn"), "source_type": S("SourceType")} source_arn: Optional[str] = field(default=None) source_type: Optional[str] = field(default=None) @@ -1350,7 +1542,11 @@ class AwsSagemakerExperimentSource: class AwsSagemakerExperiment(AwsResource): kind: ClassVar[str] = "aws_sagemaker_experiment" kind_display: ClassVar[str] = "AWS SageMaker Experiment" - kind_description: ClassVar[str] = "SageMaker Experiment is a service in AWS that enables users to organize, track and compare machine learning experiments and their associated resources." + kind_description: ClassVar[str] = ( + "SageMaker Experiment is a service in AWS that enables users to organize," + " track and compare machine learning experiments and their associated" + " resources." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-experiments", "ExperimentSummaries") mapping: ClassVar[Dict[str, Bender]] = { "id": S("ExperimentName"), @@ -1379,7 +1575,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerTrialSource: kind: ClassVar[str] = "aws_sagemaker_trial_source" kind_display: ClassVar[str] = "AWS SageMaker Trial Source" - kind_description: ClassVar[str] = "SageMaker Trial Source is a resource in Amazon SageMaker that allows users to define the data source for a machine learning trial." + kind_description: ClassVar[str] = ( + "SageMaker Trial Source is a resource in Amazon SageMaker that allows users" + " to define the data source for a machine learning trial." + ) mapping: ClassVar[Dict[str, Bender]] = {"source_arn": S("SourceArn"), "source_type": S("SourceType")} source_arn: Optional[str] = field(default=None) source_type: Optional[str] = field(default=None) @@ -1389,7 +1588,10 @@ class AwsSagemakerTrialSource: class AwsSagemakerUserContext: kind: ClassVar[str] = "aws_sagemaker_user_context" kind_display: ClassVar[str] = "AWS SageMaker User Context" - kind_description: ClassVar[str] = "SageMaker User Context provides information and settings for an individual user's SageMaker environment in the AWS cloud." + kind_description: ClassVar[str] = ( + "SageMaker User Context provides information and settings for an individual" + " user's SageMaker environment in the AWS cloud." + ) mapping: ClassVar[Dict[str, Bender]] = { "user_profile_arn": S("UserProfileArn"), "user_profile_name": S("UserProfileName"), @@ -1404,7 +1606,10 @@ class AwsSagemakerUserContext: class AwsSagemakerMetadataProperties: kind: ClassVar[str] = "aws_sagemaker_metadata_properties" kind_display: ClassVar[str] = "AWS SageMaker Metadata Properties" - kind_description: ClassVar[str] = "SageMaker Metadata Properties provide a way to store additional metadata about machine learning models trained using Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Metadata Properties provide a way to store additional metadata" + " about machine learning models trained using Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "commit_id": S("CommitId"), "generated_by": S("GeneratedBy"), @@ -1417,7 +1622,10 @@ class AwsSagemakerMetadataProperties: class AwsSagemakerTrial(AwsResource): kind: ClassVar[str] = "aws_sagemaker_trial" kind_display: ClassVar[str] = "AWS SageMaker Trial" - kind_description: ClassVar[str] = "SageMaker Trial is a service offered by Amazon Web Services that provides a platform for building, training, and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Trial is a service offered by Amazon Web Services that provides a" + " platform for building, training, and deploying machine learning models." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -1498,7 +1706,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerProject(AwsResource): kind: ClassVar[str] = "aws_sagemaker_project" kind_display: ClassVar[str] = "AWS SageMaker Project" - kind_description: ClassVar[str] = "SageMaker Projects in AWS provide a collaborative environment for machine learning teams to manage and track their ML workflows, datasets, models, and code." + kind_description: ClassVar[str] = ( + "SageMaker Projects in AWS provide a collaborative environment for machine" + " learning teams to manage and track their ML workflows, datasets, models, and" + " code." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-projects", "ProjectSummaryList") mapping: ClassVar[Dict[str, Bender]] = { "id": S("ProjectId"), @@ -1525,7 +1737,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerGitConfig: kind: ClassVar[str] = "aws_sagemaker_git_config" kind_display: ClassVar[str] = "AWS SageMaker Git Config" - kind_description: ClassVar[str] = "SageMaker Git Config is a resource in AWS SageMaker that allows users to configure Git repositories for their machine learning projects." + kind_description: ClassVar[str] = ( + "SageMaker Git Config is a resource in AWS SageMaker that allows users to" + " configure Git repositories for their machine learning projects." + ) mapping: ClassVar[Dict[str, Bender]] = { "branch": S("Branch"), "secret_arn": S("SecretArn"), @@ -1539,7 +1754,11 @@ class AwsSagemakerGitConfig: class AwsSagemakerCodeRepository(AwsResource): kind: ClassVar[str] = "aws_sagemaker_code_repository" kind_display: ClassVar[str] = "AWS SageMaker Code Repository" - kind_description: ClassVar[str] = "SageMaker Code Repository is a managed service in Amazon SageMaker that allows you to store, share, and manage machine learning code artifacts such as notebooks, scripts, and libraries." + kind_description: ClassVar[str] = ( + "SageMaker Code Repository is a managed service in Amazon SageMaker that" + " allows you to store, share, and manage machine learning code artifacts such" + " as notebooks, scripts, and libraries." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-code-repositories", "CodeRepositorySummaryList") mapping: ClassVar[Dict[str, Bender]] = { "id": S("CodeRepositoryName"), @@ -1571,7 +1790,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerDeployedImage: kind: ClassVar[str] = "aws_sagemaker_deployed_image" kind_display: ClassVar[str] = "AWS SageMaker Deployed Image" - kind_description: ClassVar[str] = "An image that has been deployed and is used for running machine learning models on Amazon SageMaker." + kind_description: ClassVar[str] = ( + "An image that has been deployed and is used for running machine learning" + " models on Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "specified_image": S("SpecifiedImage"), "resolved_image": S("ResolvedImage"), @@ -1586,7 +1808,11 @@ class AwsSagemakerDeployedImage: class AwsSagemakerProductionVariantStatus: kind: ClassVar[str] = "aws_sagemaker_production_variant_status" kind_display: ClassVar[str] = "AWS SageMaker Production Variant Status" - kind_description: ClassVar[str] = "SageMaker Production Variant Status represents the status of a production variant in Amazon SageMaker, which is a fully managed service that enables developers to build, train, and deploy machine learning models at scale." + kind_description: ClassVar[str] = ( + "SageMaker Production Variant Status represents the status of a production" + " variant in Amazon SageMaker, which is a fully managed service that enables" + " developers to build, train, and deploy machine learning models at scale." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "status_message": S("StatusMessage"), @@ -1601,7 +1827,10 @@ class AwsSagemakerProductionVariantStatus: class AwsSagemakerProductionVariantServerlessConfig: kind: ClassVar[str] = "aws_sagemaker_production_variant_serverless_config" kind_display: ClassVar[str] = "AWS SageMaker Production Variant Serverless Config" - kind_description: ClassVar[str] = "This is a configuration for a serverless variant for production usage in AWS SageMaker, which is Amazon's fully managed machine learning service." + kind_description: ClassVar[str] = ( + "This is a configuration for a serverless variant for production usage in AWS" + " SageMaker, which is Amazon's fully managed machine learning service." + ) mapping: ClassVar[Dict[str, Bender]] = { "memory_size_in_mb": S("MemorySizeInMB"), "max_concurrency": S("MaxConcurrency"), @@ -1614,7 +1843,11 @@ class AwsSagemakerProductionVariantServerlessConfig: class AwsSagemakerProductionVariantSummary: kind: ClassVar[str] = "aws_sagemaker_production_variant_summary" kind_display: ClassVar[str] = "AWS SageMaker Production Variant Summary" - kind_description: ClassVar[str] = "SageMaker Production Variant Summary provides an overview of the production variants in Amazon SageMaker, which are used for deploying ML models and serving predictions at scale." + kind_description: ClassVar[str] = ( + "SageMaker Production Variant Summary provides an overview of the production" + " variants in Amazon SageMaker, which are used for deploying ML models and" + " serving predictions at scale." + ) mapping: ClassVar[Dict[str, Bender]] = { "variant_name": S("VariantName"), "deployed_images": S("DeployedImages", default=[]) >> ForallBend(AwsSagemakerDeployedImage.mapping), @@ -1643,7 +1876,12 @@ class AwsSagemakerProductionVariantSummary: class AwsSagemakerDataCaptureConfigSummary: kind: ClassVar[str] = "aws_sagemaker_data_capture_config_summary" kind_display: ClassVar[str] = "AWS SageMaker Data Capture Config Summary" - kind_description: ClassVar[str] = "SageMaker Data Capture Config Summary provides a summary of the configuration settings for data capture in Amazon SageMaker, which enables you to continuously capture input and output data from your SageMaker endpoints for further analysis and monitoring." + kind_description: ClassVar[str] = ( + "SageMaker Data Capture Config Summary provides a summary of the" + " configuration settings for data capture in Amazon SageMaker, which enables" + " you to continuously capture input and output data from your SageMaker" + " endpoints for further analysis and monitoring." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_capture": S("EnableCapture"), "capture_status": S("CaptureStatus"), @@ -1662,7 +1900,12 @@ class AwsSagemakerDataCaptureConfigSummary: class AwsSagemakerCapacitySize: kind: ClassVar[str] = "aws_sagemaker_capacity_size" kind_display: ClassVar[str] = "AWS SageMaker Capacity Size" - kind_description: ClassVar[str] = "SageMaker Capacity Size refers to the amount of computing resources available for running machine learning models on Amazon SageMaker, a fully-managed service for building, training, and deploying machine learning models at scale." + kind_description: ClassVar[str] = ( + "SageMaker Capacity Size refers to the amount of computing resources" + " available for running machine learning models on Amazon SageMaker, a fully-" + " managed service for building, training, and deploying machine learning" + " models at scale." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "value": S("Value")} type: Optional[str] = field(default=None) value: Optional[int] = field(default=None) @@ -1672,7 +1915,11 @@ class AwsSagemakerCapacitySize: class AwsSagemakerTrafficRoutingConfig: kind: ClassVar[str] = "aws_sagemaker_traffic_routing_config" kind_display: ClassVar[str] = "AWS SageMaker Traffic Routing Config" - kind_description: ClassVar[str] = "SageMaker Traffic Routing Config is a feature of Amazon SageMaker that allows users to control the traffic distribution between different model variants deployed on SageMaker endpoints." + kind_description: ClassVar[str] = ( + "SageMaker Traffic Routing Config is a feature of Amazon SageMaker that" + " allows users to control the traffic distribution between different model" + " variants deployed on SageMaker endpoints." + ) mapping: ClassVar[Dict[str, Bender]] = { "type": S("Type"), "wait_interval_in_seconds": S("WaitIntervalInSeconds"), @@ -1689,7 +1936,11 @@ class AwsSagemakerTrafficRoutingConfig: class AwsSagemakerBlueGreenUpdatePolicy: kind: ClassVar[str] = "aws_sagemaker_blue_green_update_policy" kind_display: ClassVar[str] = "AWS SageMaker Blue-Green Update Policy" - kind_description: ClassVar[str] = "The SageMaker Blue-Green Update Policy is used to facilitate the deployment of machine learning models in a controlled manner, allowing for seamless updates and rollbacks of model versions." + kind_description: ClassVar[str] = ( + "The SageMaker Blue-Green Update Policy is used to facilitate the deployment" + " of machine learning models in a controlled manner, allowing for seamless" + " updates and rollbacks of model versions." + ) mapping: ClassVar[Dict[str, Bender]] = { "traffic_routing_configuration": S("TrafficRoutingConfiguration") >> Bend(AwsSagemakerTrafficRoutingConfig.mapping), @@ -1705,7 +1956,11 @@ class AwsSagemakerBlueGreenUpdatePolicy: class AwsSagemakerAutoRollbackConfig: kind: ClassVar[str] = "aws_sagemaker_auto_rollback_config" kind_display: ClassVar[str] = "AWS SageMaker Auto Rollback Configuration" - kind_description: ClassVar[str] = "SageMaker Auto Rollback Configuration is a feature in AWS SageMaker that allows you to configure automatic rollback of machine learning models in case of deployment errors or issues." + kind_description: ClassVar[str] = ( + "SageMaker Auto Rollback Configuration is a feature in AWS SageMaker that" + " allows you to configure automatic rollback of machine learning models in" + " case of deployment errors or issues." + ) mapping: ClassVar[Dict[str, Bender]] = {"alarms": S("Alarms", default=[]) >> ForallBend(S("AlarmName"))} alarms: List[str] = field(factory=list) @@ -1714,7 +1969,10 @@ class AwsSagemakerAutoRollbackConfig: class AwsSagemakerDeploymentConfig: kind: ClassVar[str] = "aws_sagemaker_deployment_config" kind_display: ClassVar[str] = "AWS SageMaker Deployment Configuration" - kind_description: ClassVar[str] = "SageMaker Deployment Configuration in AWS is used to create and manage configurations for deploying machine learning models on SageMaker endpoints." + kind_description: ClassVar[str] = ( + "SageMaker Deployment Configuration in AWS is used to create and manage" + " configurations for deploying machine learning models on SageMaker endpoints." + ) mapping: ClassVar[Dict[str, Bender]] = { "blue_green_update_policy": S("BlueGreenUpdatePolicy") >> Bend(AwsSagemakerBlueGreenUpdatePolicy.mapping), "auto_rollback_configuration": S("AutoRollbackConfiguration") >> Bend(AwsSagemakerAutoRollbackConfig.mapping), @@ -1727,7 +1985,11 @@ class AwsSagemakerDeploymentConfig: class AwsSagemakerAsyncInferenceNotificationConfig: kind: ClassVar[str] = "aws_sagemaker_async_inference_notification_config" kind_display: ClassVar[str] = "AWS SageMaker Async Inference Notification Config" - kind_description: ClassVar[str] = "SageMaker Async Inference Notification Config is a feature in Amazon SageMaker that allows users to receive notifications when asynchronous inference is completed." + kind_description: ClassVar[str] = ( + "SageMaker Async Inference Notification Config is a feature in Amazon" + " SageMaker that allows users to receive notifications when asynchronous" + " inference is completed." + ) mapping: ClassVar[Dict[str, Bender]] = {"success_topic": S("SuccessTopic"), "error_topic": S("ErrorTopic")} success_topic: Optional[str] = field(default=None) error_topic: Optional[str] = field(default=None) @@ -1737,7 +1999,11 @@ class AwsSagemakerAsyncInferenceNotificationConfig: class AwsSagemakerAsyncInferenceOutputConfig: kind: ClassVar[str] = "aws_sagemaker_async_inference_output_config" kind_display: ClassVar[str] = "AWS SageMaker Async Inference Output Config" - kind_description: ClassVar[str] = "SageMaker Async Inference Output Config is a configuration option in Amazon SageMaker that allows users to specify the location where the output data of asynchronous inference requests should be stored." + kind_description: ClassVar[str] = ( + "SageMaker Async Inference Output Config is a configuration option in Amazon" + " SageMaker that allows users to specify the location where the output data of" + " asynchronous inference requests should be stored." + ) mapping: ClassVar[Dict[str, Bender]] = { "kms_key_id": S("KmsKeyId"), "s3_output_path": S("S3OutputPath"), @@ -1752,7 +2018,11 @@ class AwsSagemakerAsyncInferenceOutputConfig: class AwsSagemakerAsyncInferenceConfig: kind: ClassVar[str] = "aws_sagemaker_async_inference_config" kind_display: ClassVar[str] = "AWS Sagemaker Async Inference Config" - kind_description: ClassVar[str] = "Sagemaker Async Inference Config is a feature in Amazon Sagemaker that allows you to configure asynchronous inference for your machine learning models, enabling efficient handling of high volumes of prediction requests." + kind_description: ClassVar[str] = ( + "Sagemaker Async Inference Config is a feature in Amazon Sagemaker that" + " allows you to configure asynchronous inference for your machine learning" + " models, enabling efficient handling of high volumes of prediction requests." + ) mapping: ClassVar[Dict[str, Bender]] = { "client_config": S("ClientConfig", "MaxConcurrentInvocationsPerInstance"), "output_config": S("OutputConfig") >> Bend(AwsSagemakerAsyncInferenceOutputConfig.mapping), @@ -1765,7 +2035,11 @@ class AwsSagemakerAsyncInferenceConfig: class AwsSagemakerPendingProductionVariantSummary: kind: ClassVar[str] = "aws_sagemaker_pending_production_variant_summary" kind_display: ClassVar[str] = "AWS SageMaker Pending Production Variant Summary" - kind_description: ClassVar[str] = "SageMaker Pending Production Variant Summary represents the pending state of a production variant in Amazon SageMaker, which is a machine learning service provided by AWS." + kind_description: ClassVar[str] = ( + "SageMaker Pending Production Variant Summary represents the pending state of" + " a production variant in Amazon SageMaker, which is a machine learning" + " service provided by AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "variant_name": S("VariantName"), "deployed_images": S("DeployedImages", default=[]) >> ForallBend(AwsSagemakerDeployedImage.mapping), @@ -1798,7 +2072,10 @@ class AwsSagemakerPendingProductionVariantSummary: class AwsSagemakerPendingDeploymentSummary: kind: ClassVar[str] = "aws_sagemaker_pending_deployment_summary" kind_display: ClassVar[str] = "AWS SageMaker Pending Deployment Summary" - kind_description: ClassVar[str] = "AWS SageMaker Pending Deployment Summary provides information about pending deployments in Amazon SageMaker, a fully managed machine learning service." + kind_description: ClassVar[str] = ( + "AWS SageMaker Pending Deployment Summary provides information about pending" + " deployments in Amazon SageMaker, a fully managed machine learning service." + ) mapping: ClassVar[Dict[str, Bender]] = { "endpoint_config_name": S("EndpointConfigName"), "production_variants": S("ProductionVariants", default=[]) @@ -1814,7 +2091,11 @@ class AwsSagemakerPendingDeploymentSummary: class AwsSagemakerClarifyInferenceConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_inference_config" kind_display: ClassVar[str] = "AWS SageMaker Clarify Inference Config" - kind_description: ClassVar[str] = "SageMaker Clarify Inference Config is a configuration for running inference on machine learning models using Amazon SageMaker Clarify. It provides tools for explaining and bringing transparency to model predictions." + kind_description: ClassVar[str] = ( + "SageMaker Clarify Inference Config is a configuration for running inference" + " on machine learning models using Amazon SageMaker Clarify. It provides tools" + " for explaining and bringing transparency to model predictions." + ) mapping: ClassVar[Dict[str, Bender]] = { "features_attribute": S("FeaturesAttribute"), "content_template": S("ContentTemplate"), @@ -1845,7 +2126,13 @@ class AwsSagemakerClarifyInferenceConfig: class AwsSagemakerClarifyShapBaselineConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_shap_baseline_config" kind_display: ClassVar[str] = "AWS SageMaker Clarify SHAP Baseline Config" - kind_description: ClassVar[str] = "The AWS SageMaker Clarify SHAP Baseline Config is a configuration for the SHAP (Shapley Additive exPlanations) baseline during model interpretability analysis in Amazon SageMaker. It allows users to specify a baseline dataset for calculating SHAP values, providing insights into feature importance and model behavior." + kind_description: ClassVar[str] = ( + "The AWS SageMaker Clarify SHAP Baseline Config is a configuration for the" + " SHAP (Shapley Additive exPlanations) baseline during model interpretability" + " analysis in Amazon SageMaker. It allows users to specify a baseline dataset" + " for calculating SHAP values, providing insights into feature importance and" + " model behavior." + ) mapping: ClassVar[Dict[str, Bender]] = { "mime_type": S("MimeType"), "shap_baseline": S("ShapBaseline"), @@ -1860,7 +2147,11 @@ class AwsSagemakerClarifyShapBaselineConfig: class AwsSagemakerClarifyTextConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_text_config" kind_display: ClassVar[str] = "AWS SageMaker Clarify Text Config" - kind_description: ClassVar[str] = "AWS SageMaker Clarify is a machine learning service that helps identify potential bias and explainability issues in text data by providing data insights and model explanations." + kind_description: ClassVar[str] = ( + "AWS SageMaker Clarify is a machine learning service that helps identify" + " potential bias and explainability issues in text data by providing data" + " insights and model explanations." + ) mapping: ClassVar[Dict[str, Bender]] = {"language": S("Language"), "granularity": S("Granularity")} language: Optional[str] = field(default=None) granularity: Optional[str] = field(default=None) @@ -1870,7 +2161,11 @@ class AwsSagemakerClarifyTextConfig: class AwsSagemakerClarifyShapConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_shap_config" kind_display: ClassVar[str] = "AWS SageMaker Clarify SHAP Config" - kind_description: ClassVar[str] = "SageMaker Clarify SHAP Config is a configuration for Amazon SageMaker Clarify, a service that provides bias and explainability analysis for machine learning models using SHAP (SHapley Additive exPlanations) values." + kind_description: ClassVar[str] = ( + "SageMaker Clarify SHAP Config is a configuration for Amazon SageMaker" + " Clarify, a service that provides bias and explainability analysis for" + " machine learning models using SHAP (SHapley Additive exPlanations) values." + ) mapping: ClassVar[Dict[str, Bender]] = { "shap_baseline_config": S("ShapBaselineConfig") >> Bend(AwsSagemakerClarifyShapBaselineConfig.mapping), "number_of_samples": S("NumberOfSamples"), @@ -1889,7 +2184,11 @@ class AwsSagemakerClarifyShapConfig: class AwsSagemakerClarifyExplainerConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_explainer_config" kind_display: ClassVar[str] = "AWS SageMaker Clarify Explainer Config" - kind_description: ClassVar[str] = "SageMaker Clarify Explainer Config is a configuration resource in Amazon SageMaker that allows users to define configurations for explainability of machine learning models developed using SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Clarify Explainer Config is a configuration resource in Amazon" + " SageMaker that allows users to define configurations for explainability of" + " machine learning models developed using SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_explanations": S("EnableExplanations"), "inference_config": S("InferenceConfig") >> Bend(AwsSagemakerClarifyInferenceConfig.mapping), @@ -1904,7 +2203,11 @@ class AwsSagemakerClarifyExplainerConfig: class AwsSagemakerExplainerConfig: kind: ClassVar[str] = "aws_sagemaker_explainer_config" kind_display: ClassVar[str] = "AWS Sagemaker Explainer Config" - kind_description: ClassVar[str] = "Sagemaker Explainer Config is a configuration setting in AWS Sagemaker that allows users to specify how to explain the output of a machine learning model trained with Sagemaker." + kind_description: ClassVar[str] = ( + "Sagemaker Explainer Config is a configuration setting in AWS Sagemaker that" + " allows users to specify how to explain the output of a machine learning" + " model trained with Sagemaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "clarify_explainer_config": S("ClarifyExplainerConfig") >> Bend(AwsSagemakerClarifyExplainerConfig.mapping) } @@ -1915,7 +2218,10 @@ class AwsSagemakerExplainerConfig: class AwsSagemakerEndpoint(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_endpoint" kind_display: ClassVar[str] = "AWS SageMaker Endpoint" - kind_description: ClassVar[str] = "SageMaker Endpoints are the locations where deployed machine learning models are hosted and can be accessed for making predictions or inferences." + kind_description: ClassVar[str] = ( + "SageMaker Endpoints are the locations where deployed machine learning models" + " are hosted and can be accessed for making predictions or inferences." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["aws_kms_key"], @@ -2004,7 +2310,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerImage(AwsResource): kind: ClassVar[str] = "aws_sagemaker_image" kind_display: ClassVar[str] = "AWS SageMaker Image" - kind_description: ClassVar[str] = "AWS SageMaker Images are pre-built machine learning environments that include all necessary frameworks and packages to train and deploy models using Amazon SageMaker." + kind_description: ClassVar[str] = ( + "AWS SageMaker Images are pre-built machine learning environments that" + " include all necessary frameworks and packages to train and deploy models" + " using Amazon SageMaker." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role"], @@ -2057,7 +2367,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerArtifactSourceType: kind: ClassVar[str] = "aws_sagemaker_artifact_source_type" kind_display: ClassVar[str] = "AWS SageMaker Artifact Source Type" - kind_description: ClassVar[str] = "SageMaker Artifact Source Type is a resource in Amazon SageMaker that represents the type of artifact source used for machine learning workloads." + kind_description: ClassVar[str] = ( + "SageMaker Artifact Source Type is a resource in Amazon SageMaker that" + " represents the type of artifact source used for machine learning workloads." + ) mapping: ClassVar[Dict[str, Bender]] = {"source_id_type": S("SourceIdType"), "value": S("Value")} source_id_type: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -2067,7 +2380,11 @@ class AwsSagemakerArtifactSourceType: class AwsSagemakerArtifactSource: kind: ClassVar[str] = "aws_sagemaker_artifact_source" kind_display: ClassVar[str] = "AWS SageMaker Artifact Source" - kind_description: ClassVar[str] = "SageMaker Artifact Source refers to the storage location for artifacts such as trained models and datasets in Amazon SageMaker, a managed service for building, training, and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Artifact Source refers to the storage location for artifacts such" + " as trained models and datasets in Amazon SageMaker, a managed service for" + " building, training, and deploying machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "source_uri": S("SourceUri"), "source_types": S("SourceTypes", default=[]) >> ForallBend(AwsSagemakerArtifactSourceType.mapping), @@ -2080,7 +2397,10 @@ class AwsSagemakerArtifactSource: class AwsSagemakerArtifact(AwsResource): kind: ClassVar[str] = "aws_sagemaker_artifact" kind_display: ClassVar[str] = "AWS SageMaker Artifact" - kind_description: ClassVar[str] = "SageMaker Artifacts are reusable machine learning assets, such as algorithms and models, that can be stored and accessed in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Artifacts are reusable machine learning assets, such as algorithms" + " and models, that can be stored and accessed in Amazon SageMaker." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -2156,7 +2476,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerUserProfile(AwsResource): kind: ClassVar[str] = "aws_sagemaker_user_profile" kind_display: ClassVar[str] = "AWS SageMaker User Profile" - kind_description: ClassVar[str] = "SageMaker User Profiles are user-specific configurations in Amazon SageMaker that define settings and permissions for users accessing the SageMaker Studio environment." + kind_description: ClassVar[str] = ( + "SageMaker User Profiles are user-specific configurations in Amazon SageMaker" + " that define settings and permissions for users accessing the SageMaker" + " Studio environment." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_sagemaker_domain"]}, "successors": {"delete": ["aws_sagemaker_domain"]}, @@ -2196,7 +2520,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerPipeline(AwsResource): kind: ClassVar[str] = "aws_sagemaker_pipeline" kind_display: ClassVar[str] = "AWS SageMaker Pipeline" - kind_description: ClassVar[str] = "SageMaker Pipelines is a fully managed, easy-to-use CI/CD service for building, automating, and managing end-to-end machine learning workflows on Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Pipelines is a fully managed, easy-to-use CI/CD service for" + " building, automating, and managing end-to-end machine learning workflows on" + " Amazon SageMaker." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_sagemaker_user_profile", "aws_sagemaker_domain"], @@ -2269,7 +2597,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerCognitoMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_cognito_member_definition" kind_display: ClassVar[str] = "AWS SageMaker Cognito Member Definition" - kind_description: ClassVar[str] = "SageMaker Cognito Member Definitions are used to define the access policies for Amazon Cognito users in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Cognito Member Definitions are used to define the access policies" + " for Amazon Cognito users in Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "user_pool": S("UserPool"), "user_group": S("UserGroup"), @@ -2284,7 +2615,11 @@ class AwsSagemakerCognitoMemberDefinition: class AwsSagemakerOidcMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_oidc_member_definition" kind_display: ClassVar[str] = "AWS SageMaker OIDC Member Definition" - kind_description: ClassVar[str] = "SageMaker OIDC Member Definition is a resource in AWS SageMaker that allows you to define an OpenID Connect (OIDC) user or group and their access permissions for a specific SageMaker resource." + kind_description: ClassVar[str] = ( + "SageMaker OIDC Member Definition is a resource in AWS SageMaker that allows" + " you to define an OpenID Connect (OIDC) user or group and their access" + " permissions for a specific SageMaker resource." + ) mapping: ClassVar[Dict[str, Bender]] = {"groups": S("Groups", default=[])} groups: List[str] = field(factory=list) @@ -2293,7 +2628,11 @@ class AwsSagemakerOidcMemberDefinition: class AwsSagemakerMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_member_definition" kind_display: ClassVar[str] = "AWS SageMaker Member Definition" - kind_description: ClassVar[str] = "SageMaker Member Definition is a resource in AWS SageMaker that allows users to define and manage members for their SageMaker projects, enabling collaboration and shared access to machine learning resources." + kind_description: ClassVar[str] = ( + "SageMaker Member Definition is a resource in AWS SageMaker that allows users" + " to define and manage members for their SageMaker projects, enabling" + " collaboration and shared access to machine learning resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "cognito_member_definition": S("CognitoMemberDefinition") >> Bend(AwsSagemakerCognitoMemberDefinition.mapping), "oidc_member_definition": S("OidcMemberDefinition") >> Bend(AwsSagemakerOidcMemberDefinition.mapping), @@ -2306,7 +2645,11 @@ class AwsSagemakerMemberDefinition: class AwsSagemakerWorkteam(SagemakerTaggable, AwsResource): kind: ClassVar[str] = "aws_sagemaker_workteam" kind_display: ClassVar[str] = "AWS SageMaker Workteam" - kind_description: ClassVar[str] = "SageMaker Workteam is a service in Amazon's cloud that allows organizations to create and manage teams of workers to label data for machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Workteam is a service in Amazon's cloud that allows organizations" + " to create and manage teams of workers to label data for machine learning" + " models." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["aws_cognito_user_pool", "aws_cognito_group", "aws_sns_topic"], @@ -2373,14 +2716,22 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerJob(AwsResource): kind: ClassVar[str] = "aws_sagemaker_job" kind_display: ClassVar[str] = "AWS SageMaker Job" - kind_description: ClassVar[str] = "SageMaker Jobs in AWS are used to train and deploy machine learning models at scale, with built-in algorithms and frameworks provided by Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Jobs in AWS are used to train and deploy machine learning models" + " at scale, with built-in algorithms and frameworks provided by Amazon" + " SageMaker." + ) @define(eq=False, slots=False) class AwsSagemakerAutoMLS3DataSource: kind: ClassVar[str] = "aws_sagemaker_auto_mls3_data_source" kind_display: ClassVar[str] = "AWS SageMaker AutoML S3 Data Source" - kind_description: ClassVar[str] = "SageMaker AutoML S3 Data Source is a service in AWS SageMaker that allows users to automatically select and preprocess data from an S3 bucket for machine learning model training." + kind_description: ClassVar[str] = ( + "SageMaker AutoML S3 Data Source is a service in AWS SageMaker that allows" + " users to automatically select and preprocess data from an S3 bucket for" + " machine learning model training." + ) mapping: ClassVar[Dict[str, Bender]] = {"s3_data_type": S("S3DataType"), "s3_uri": S("S3Uri")} s3_data_type: Optional[str] = field(default=None) s3_uri: Optional[str] = field(default=None) @@ -2390,7 +2741,11 @@ class AwsSagemakerAutoMLS3DataSource: class AwsSagemakerAutoMLDataSource: kind: ClassVar[str] = "aws_sagemaker_auto_ml_data_source" kind_display: ClassVar[str] = "AWS SageMaker AutoML Data Source" - kind_description: ClassVar[str] = "SageMaker AutoML Data Source is a resource in Amazon SageMaker that allows users to specify the location of their training data for the automated machine learning process." + kind_description: ClassVar[str] = ( + "SageMaker AutoML Data Source is a resource in Amazon SageMaker that allows" + " users to specify the location of their training data for the automated" + " machine learning process." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource") >> Bend(AwsSagemakerAutoMLS3DataSource.mapping) } @@ -2401,7 +2756,10 @@ class AwsSagemakerAutoMLDataSource: class AwsSagemakerAutoMLChannel: kind: ClassVar[str] = "aws_sagemaker_auto_ml_channel" kind_display: ClassVar[str] = "AWS SageMaker AutoML Channel" - kind_description: ClassVar[str] = "SageMaker AutoML Channel is a cloud resource in AWS SageMaker that allows you to define input data channels for training an AutoML model." + kind_description: ClassVar[str] = ( + "SageMaker AutoML Channel is a cloud resource in AWS SageMaker that allows" + " you to define input data channels for training an AutoML model." + ) mapping: ClassVar[Dict[str, Bender]] = { "data_source": S("DataSource") >> Bend(AwsSagemakerAutoMLDataSource.mapping), "compression_type": S("CompressionType"), @@ -2420,7 +2778,11 @@ class AwsSagemakerAutoMLChannel: class AwsSagemakerAutoMLOutputDataConfig: kind: ClassVar[str] = "aws_sagemaker_auto_ml_output_data_config" kind_display: ClassVar[str] = "AWS Sagemaker Auto ML Output Data Config" - kind_description: ClassVar[str] = "Sagemaker Auto ML Output Data Config is a feature of AWS Sagemaker that allows users to specify the location where the output data generated by the Auto ML job should be stored." + kind_description: ClassVar[str] = ( + "Sagemaker Auto ML Output Data Config is a feature of AWS Sagemaker that" + " allows users to specify the location where the output data generated by the" + " Auto ML job should be stored." + ) mapping: ClassVar[Dict[str, Bender]] = {"kms_key_id": S("KmsKeyId"), "s3_output_path": S("S3OutputPath")} kms_key_id: Optional[str] = field(default=None) s3_output_path: Optional[str] = field(default=None) @@ -2430,7 +2792,10 @@ class AwsSagemakerAutoMLOutputDataConfig: class AwsSagemakerAutoMLJobCompletionCriteria: kind: ClassVar[str] = "aws_sagemaker_auto_ml_job_completion_criteria" kind_display: ClassVar[str] = "AWS SageMaker AutoML Job Completion Criteria" - kind_description: ClassVar[str] = "Sagemaker AutoML Job Completion Criteria represents the conditions based on which the automatic machine learning job will be considered complete." + kind_description: ClassVar[str] = ( + "Sagemaker AutoML Job Completion Criteria represents the conditions based on" + " which the automatic machine learning job will be considered complete." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_candidates": S("MaxCandidates"), "max_runtime_per_training_job_in_seconds": S("MaxRuntimePerTrainingJobInSeconds"), @@ -2445,7 +2810,11 @@ class AwsSagemakerAutoMLJobCompletionCriteria: class AwsSagemakerAutoMLSecurityConfig: kind: ClassVar[str] = "aws_sagemaker_auto_ml_security_config" kind_display: ClassVar[str] = "AWS SageMaker AutoML Security Config" - kind_description: ClassVar[str] = "This resource pertains to the security configuration for the AWS SageMaker AutoML service, which enables automatic machine learning model development and deployment on AWS SageMaker." + kind_description: ClassVar[str] = ( + "This resource pertains to the security configuration for the AWS SageMaker" + " AutoML service, which enables automatic machine learning model development" + " and deployment on AWS SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "volume_kms_key_id": S("VolumeKmsKeyId"), "enable_inter_container_traffic_encryption": S("EnableInterContainerTrafficEncryption"), @@ -2460,7 +2829,10 @@ class AwsSagemakerAutoMLSecurityConfig: class AwsSagemakerAutoMLJobConfig: kind: ClassVar[str] = "aws_sagemaker_auto_ml_job_config" kind_display: ClassVar[str] = "AWS SageMaker Auto ML Job Config" - kind_description: ClassVar[str] = "SageMaker Auto ML Job Config provides a configuration for running automated machine learning jobs on AWS SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Auto ML Job Config provides a configuration for running automated" + " machine learning jobs on AWS SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "completion_criteria": S("CompletionCriteria") >> Bend(AwsSagemakerAutoMLJobCompletionCriteria.mapping), "security_config": S("SecurityConfig") >> Bend(AwsSagemakerAutoMLSecurityConfig.mapping), @@ -2479,7 +2851,10 @@ class AwsSagemakerAutoMLJobConfig: class AwsSagemakerFinalAutoMLJobObjectiveMetric: kind: ClassVar[str] = "aws_sagemaker_final_auto_ml_job_objective_metric" kind_display: ClassVar[str] = "AWS SageMaker Final AutoML Job Objective Metric" - kind_description: ClassVar[str] = "The final objective metric value calculated at the end of an Amazon SageMaker AutoML job." + kind_description: ClassVar[str] = ( + "The final objective metric value calculated at the end of an Amazon" + " SageMaker AutoML job." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "metric_name": S("MetricName"), "value": S("Value")} type: Optional[str] = field(default=None) metric_name: Optional[str] = field(default=None) @@ -2490,7 +2865,10 @@ class AwsSagemakerFinalAutoMLJobObjectiveMetric: class AwsSagemakerAutoMLCandidateStep: kind: ClassVar[str] = "aws_sagemaker_auto_ml_candidate_step" kind_display: ClassVar[str] = "AWS SageMaker AutoML Candidate Step" - kind_description: ClassVar[str] = "AWS SageMaker AutoML Candidate Step is a step in the SageMaker AutoML workflow that represents a candidate model trained by AutoML." + kind_description: ClassVar[str] = ( + "AWS SageMaker AutoML Candidate Step is a step in the SageMaker AutoML" + " workflow that represents a candidate model trained by AutoML." + ) mapping: ClassVar[Dict[str, Bender]] = { "candidate_step_type": S("CandidateStepType"), "candidate_step_arn": S("CandidateStepArn"), @@ -2505,7 +2883,11 @@ class AwsSagemakerAutoMLCandidateStep: class AwsSagemakerAutoMLContainerDefinition: kind: ClassVar[str] = "aws_sagemaker_auto_ml_container_definition" kind_display: ClassVar[str] = "AWS SageMaker AutoML Container Definition" - kind_description: ClassVar[str] = "SageMaker AutoML Container Definition is a resource in AWS SageMaker that specifies the container image to be used for training and inference in an AutoML job." + kind_description: ClassVar[str] = ( + "SageMaker AutoML Container Definition is a resource in AWS SageMaker that" + " specifies the container image to be used for training and inference in an" + " AutoML job." + ) mapping: ClassVar[Dict[str, Bender]] = { "image": S("Image"), "model_data_url": S("ModelDataUrl"), @@ -2520,7 +2902,10 @@ class AwsSagemakerAutoMLContainerDefinition: class AwsSagemakerCandidateArtifactLocations: kind: ClassVar[str] = "aws_sagemaker_candidate_artifact_locations" kind_display: ClassVar[str] = "AWS SageMaker Candidate Artifact Locations" - kind_description: ClassVar[str] = "SageMaker Candidate Artifact Locations are the locations in which candidate models generated during Amazon SageMaker training jobs are stored." + kind_description: ClassVar[str] = ( + "SageMaker Candidate Artifact Locations are the locations in which candidate" + " models generated during Amazon SageMaker training jobs are stored." + ) mapping: ClassVar[Dict[str, Bender]] = {"explainability": S("Explainability"), "model_insights": S("ModelInsights")} explainability: Optional[str] = field(default=None) model_insights: Optional[str] = field(default=None) @@ -2530,7 +2915,11 @@ class AwsSagemakerCandidateArtifactLocations: class AwsSagemakerMetricDatum: kind: ClassVar[str] = "aws_sagemaker_metric_datum" kind_display: ClassVar[str] = "AWS SageMaker Metric Datum" - kind_description: ClassVar[str] = "SageMaker Metric Datum is a unit of data used for tracking and monitoring machine learning metrics in Amazon SageMaker, a fully managed machine learning service." + kind_description: ClassVar[str] = ( + "SageMaker Metric Datum is a unit of data used for tracking and monitoring" + " machine learning metrics in Amazon SageMaker, a fully managed machine" + " learning service." + ) mapping: ClassVar[Dict[str, Bender]] = { "metric_name": S("MetricName"), "value": S("Value"), @@ -2547,7 +2936,12 @@ class AwsSagemakerMetricDatum: class AwsSagemakerCandidateProperties: kind: ClassVar[str] = "aws_sagemaker_candidate_properties" kind_display: ClassVar[str] = "AWS SageMaker Candidate Properties" - kind_description: ClassVar[str] = "SageMaker Candidate Properties are the attributes and characteristics of a machine learning model candidate that is trained and optimized using Amazon SageMaker, a fully-managed service for building, training, and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Candidate Properties are the attributes and characteristics of a" + " machine learning model candidate that is trained and optimized using Amazon" + " SageMaker, a fully-managed service for building, training, and deploying" + " machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "candidate_artifact_locations": S("CandidateArtifactLocations") >> Bend(AwsSagemakerCandidateArtifactLocations.mapping), @@ -2561,7 +2955,11 @@ class AwsSagemakerCandidateProperties: class AwsSagemakerAutoMLCandidate: kind: ClassVar[str] = "aws_sagemaker_auto_ml_candidate" kind_display: ClassVar[str] = "AWS SageMaker AutoML Candidate" - kind_description: ClassVar[str] = "SageMaker AutoML Candidates refer to the generated machine learning models during the automated machine learning process in Amazon SageMaker, where multiple models are trained and evaluated for a given dataset and objective." + kind_description: ClassVar[str] = ( + "SageMaker AutoML Candidates refer to the generated machine learning models" + " during the automated machine learning process in Amazon SageMaker, where" + " multiple models are trained and evaluated for a given dataset and objective." + ) mapping: ClassVar[Dict[str, Bender]] = { "candidate_name": S("CandidateName"), "final_auto_ml_job_objective_metric": S("FinalAutoMLJobObjectiveMetric") @@ -2594,7 +2992,11 @@ class AwsSagemakerAutoMLCandidate: class AwsSagemakerAutoMLJobArtifacts: kind: ClassVar[str] = "aws_sagemaker_auto_ml_job_artifacts" kind_display: ClassVar[str] = "AWS SageMaker AutoML Job Artifacts" - kind_description: ClassVar[str] = "SageMaker AutoML Job Artifacts are the output files and artifacts generated during the AutoML job on Amazon SageMaker. These artifacts can include trained models, evaluation metrics, and other relevant information." + kind_description: ClassVar[str] = ( + "SageMaker AutoML Job Artifacts are the output files and artifacts generated" + " during the AutoML job on Amazon SageMaker. These artifacts can include" + " trained models, evaluation metrics, and other relevant information." + ) mapping: ClassVar[Dict[str, Bender]] = { "candidate_definition_notebook_location": S("CandidateDefinitionNotebookLocation"), "data_exploration_notebook_location": S("DataExplorationNotebookLocation"), @@ -2607,7 +3009,11 @@ class AwsSagemakerAutoMLJobArtifacts: class AwsSagemakerResolvedAttributes: kind: ClassVar[str] = "aws_sagemaker_resolved_attributes" kind_display: ClassVar[str] = "AWS SageMaker Resolved Attributes" - kind_description: ClassVar[str] = "SageMaker Resolved Attributes are the feature groups used in Amazon SageMaker for model training and inference. They provide an organized and structured way to input and process data for machine learning tasks." + kind_description: ClassVar[str] = ( + "SageMaker Resolved Attributes are the feature groups used in Amazon" + " SageMaker for model training and inference. They provide an organized and" + " structured way to input and process data for machine learning tasks." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_ml_job_objective": S("AutoMLJobObjective", "MetricName"), "problem_type": S("ProblemType"), @@ -2622,7 +3028,11 @@ class AwsSagemakerResolvedAttributes: class AwsSagemakerModelDeployConfig: kind: ClassVar[str] = "aws_sagemaker_model_deploy_config" kind_display: ClassVar[str] = "AWS SageMaker Model Deploy Config" - kind_description: ClassVar[str] = "SageMaker Model Deploy Config is a configuration for deploying machine learning models on Amazon SageMaker, a fully managed machine learning service by AWS." + kind_description: ClassVar[str] = ( + "SageMaker Model Deploy Config is a configuration for deploying machine" + " learning models on Amazon SageMaker, a fully managed machine learning" + " service by AWS." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_generate_endpoint_name": S("AutoGenerateEndpointName"), "endpoint_name": S("EndpointName"), @@ -2635,7 +3045,11 @@ class AwsSagemakerModelDeployConfig: class AwsSagemakerAutoMLJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_auto_ml_job" kind_display: ClassVar[str] = "AWS SageMaker AutoML Job" - kind_description: ClassVar[str] = "SageMaker AutoML Jobs in AWS provide automated machine learning capabilities, allowing users to automatically discover and build optimal machine learning models without manual intervention." + kind_description: ClassVar[str] = ( + "SageMaker AutoML Jobs in AWS provide automated machine learning" + " capabilities, allowing users to automatically discover and build optimal" + " machine learning models without manual intervention." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -2759,7 +3173,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerInputConfig: kind: ClassVar[str] = "aws_sagemaker_input_config" kind_display: ClassVar[str] = "AWS SageMaker Input Config" - kind_description: ClassVar[str] = "SageMaker Input Config is a configuration file that defines the input data to be used for training a machine learning model on Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Input Config is a configuration file that defines the input data" + " to be used for training a machine learning model on Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_uri": S("S3Uri"), "data_input_config": S("DataInputConfig"), @@ -2776,7 +3193,11 @@ class AwsSagemakerInputConfig: class AwsSagemakerTargetPlatform: kind: ClassVar[str] = "aws_sagemaker_target_platform" kind_display: ClassVar[str] = "AWS SageMaker Target Platform" - kind_description: ClassVar[str] = "SageMaker Target Platform is a service provided by Amazon Web Services that allows users to specify the target platform for training and deploying machine learning models using Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Target Platform is a service provided by Amazon Web Services that" + " allows users to specify the target platform for training and deploying" + " machine learning models using Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = {"os": S("Os"), "arch": S("Arch"), "accelerator": S("Accelerator")} os: Optional[str] = field(default=None) arch: Optional[str] = field(default=None) @@ -2787,7 +3208,11 @@ class AwsSagemakerTargetPlatform: class AwsSagemakerOutputConfig: kind: ClassVar[str] = "aws_sagemaker_output_config" kind_display: ClassVar[str] = "AWS SageMaker Output Config" - kind_description: ClassVar[str] = "SageMaker Output Config is a resource in AWS SageMaker that allows users to configure the output location for trained machine learning models and associated results." + kind_description: ClassVar[str] = ( + "SageMaker Output Config is a resource in AWS SageMaker that allows users to" + " configure the output location for trained machine learning models and" + " associated results." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_output_location": S("S3OutputLocation"), "target_device": S("TargetDevice"), @@ -2806,7 +3231,11 @@ class AwsSagemakerOutputConfig: class AwsSagemakerNeoVpcConfig: kind: ClassVar[str] = "aws_sagemaker_neo_vpc_config" kind_display: ClassVar[str] = "AWS SageMaker Neo VPC Config" - kind_description: ClassVar[str] = "SageMaker Neo VPC Config is a configuration setting for Amazon SageMaker's Neo service, which allows you to optimize deep learning models for various hardware platforms." + kind_description: ClassVar[str] = ( + "SageMaker Neo VPC Config is a configuration setting for Amazon SageMaker's" + " Neo service, which allows you to optimize deep learning models for various" + " hardware platforms." + ) mapping: ClassVar[Dict[str, Bender]] = { "security_group_ids": S("SecurityGroupIds", default=[]), "subnets": S("Subnets", default=[]), @@ -2819,7 +3248,11 @@ class AwsSagemakerNeoVpcConfig: class AwsSagemakerCompilationJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_compilation_job" kind_display: ClassVar[str] = "AWS SageMaker Compilation Job" - kind_description: ClassVar[str] = "SageMaker Compilation Job is a resource in Amazon SageMaker that allows users to compile machine learning models for deployment on edge devices or inference in the cloud." + kind_description: ClassVar[str] = ( + "SageMaker Compilation Job is a resource in Amazon SageMaker that allows" + " users to compile machine learning models for deployment on edge devices or" + " inference in the cloud." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -2907,7 +3340,12 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerEdgeOutputConfig: kind: ClassVar[str] = "aws_sagemaker_edge_output_config" kind_display: ClassVar[str] = "AWS SageMaker Edge Output Configuration" - kind_description: ClassVar[str] = "SageMaker Edge Output Config is a feature in Amazon SageMaker that enables you to configure the destination for edge device output when using SageMaker Edge Manager. It allows you to specify the S3 bucket where the output artifacts from the edge devices will be stored." + kind_description: ClassVar[str] = ( + "SageMaker Edge Output Config is a feature in Amazon SageMaker that enables" + " you to configure the destination for edge device output when using SageMaker" + " Edge Manager. It allows you to specify the S3 bucket where the output" + " artifacts from the edge devices will be stored." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_output_location": S("S3OutputLocation"), "kms_key_id": S("KmsKeyId"), @@ -2924,7 +3362,11 @@ class AwsSagemakerEdgeOutputConfig: class AwsSagemakerEdgePresetDeploymentOutput: kind: ClassVar[str] = "aws_sagemaker_edge_preset_deployment_output" kind_display: ClassVar[str] = "AWS SageMaker Edge Preset Deployment Output" - kind_description: ClassVar[str] = "The output of a deployment of an edge preset in Amazon SageMaker. It represents the processed data and predictions generated by a machine learning model that has been deployed to edge devices." + kind_description: ClassVar[str] = ( + "The output of a deployment of an edge preset in Amazon SageMaker. It" + " represents the processed data and predictions generated by a machine" + " learning model that has been deployed to edge devices." + ) mapping: ClassVar[Dict[str, Bender]] = { "type": S("Type"), "artifact": S("Artifact"), @@ -2941,7 +3383,11 @@ class AwsSagemakerEdgePresetDeploymentOutput: class AwsSagemakerEdgePackagingJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_edge_packaging_job" kind_display: ClassVar[str] = "AWS SageMaker Edge Packaging Job" - kind_description: ClassVar[str] = "SageMaker Edge Packaging Jobs allow users to package machine learning models and dependencies for deployment on edge devices using AWS SageMaker Edge Manager." + kind_description: ClassVar[str] = ( + "SageMaker Edge Packaging Jobs allow users to package machine learning models" + " and dependencies for deployment on edge devices using AWS SageMaker Edge" + " Manager." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_sagemaker_model"], @@ -3024,7 +3470,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerHyperbandStrategyConfig: kind: ClassVar[str] = "aws_sagemaker_hyperband_strategy_config" kind_display: ClassVar[str] = "AWS SageMaker Hyperband Strategy Config" - kind_description: ClassVar[str] = "SageMaker Hyperband Strategy Config is a configuration setting for the Hyperband strategy in Amazon SageMaker. It allows users to optimize their machine learning models by automatically tuning hyperparameters." + kind_description: ClassVar[str] = ( + "SageMaker Hyperband Strategy Config is a configuration setting for the" + " Hyperband strategy in Amazon SageMaker. It allows users to optimize their" + " machine learning models by automatically tuning hyperparameters." + ) mapping: ClassVar[Dict[str, Bender]] = {"min_resource": S("MinResource"), "max_resource": S("MaxResource")} min_resource: Optional[int] = field(default=None) max_resource: Optional[int] = field(default=None) @@ -3034,7 +3484,11 @@ class AwsSagemakerHyperbandStrategyConfig: class AwsSagemakerHyperParameterTuningJobStrategyConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_strategy_config" kind_display: ClassVar[str] = "AWS Sagemaker Hyper Parameter Tuning Job Strategy Config" - kind_description: ClassVar[str] = "The AWS Sagemaker Hyper Parameter Tuning Job Strategy Config is a configuration that defines the strategy for searching hyperparameter combinations during hyperparameter tuning in Amazon Sagemaker." + kind_description: ClassVar[str] = ( + "The AWS Sagemaker Hyper Parameter Tuning Job Strategy Config is a" + " configuration that defines the strategy for searching hyperparameter" + " combinations during hyperparameter tuning in Amazon Sagemaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "hyperband_strategy_config": S("HyperbandStrategyConfig") >> Bend(AwsSagemakerHyperbandStrategyConfig.mapping) } @@ -3045,7 +3499,11 @@ class AwsSagemakerHyperParameterTuningJobStrategyConfig: class AwsSagemakerResourceLimits: kind: ClassVar[str] = "aws_sagemaker_resource_limits" kind_display: ClassVar[str] = "AWS SageMaker Resource Limits" - kind_description: ClassVar[str] = "SageMaker Resource Limits allows you to manage and control the amount of resources (such as compute instances, storage, and data transfer) that your SageMaker resources can consume in order to optimize cost and performance." + kind_description: ClassVar[str] = ( + "SageMaker Resource Limits allows you to manage and control the amount of" + " resources (such as compute instances, storage, and data transfer) that your" + " SageMaker resources can consume in order to optimize cost and performance." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_number_of_training_jobs": S("MaxNumberOfTrainingJobs"), "max_parallel_training_jobs": S("MaxParallelTrainingJobs"), @@ -3058,7 +3516,11 @@ class AwsSagemakerResourceLimits: class AwsSagemakerScalingParameterRange: kind: ClassVar[str] = "aws_sagemaker_scaling_parameter_range" kind_display: ClassVar[str] = "AWS SageMaker Scaling Parameter Range" - kind_description: ClassVar[str] = "SageMaker Scaling Parameter Range is a feature in AWS SageMaker, which allows users to define the range of scaling parameters for their machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Scaling Parameter Range is a feature in AWS SageMaker, which" + " allows users to define the range of scaling parameters for their machine" + " learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), "min_value": S("MinValue"), @@ -3075,7 +3537,12 @@ class AwsSagemakerScalingParameterRange: class AwsSagemakerCategoricalParameterRange: kind: ClassVar[str] = "aws_sagemaker_categorical_parameter_range" kind_display: ClassVar[str] = "AWS SageMaker Categorical Parameter Range" - kind_description: ClassVar[str] = "SageMaker Categorical Parameter Range is a cloud resource provided by AWS that allows users to define a range of categorical hyperparameters for machine learning models developed using Amazon SageMaker, which is a fully managed machine learning service." + kind_description: ClassVar[str] = ( + "SageMaker Categorical Parameter Range is a cloud resource provided by AWS" + " that allows users to define a range of categorical hyperparameters for" + " machine learning models developed using Amazon SageMaker, which is a fully" + " managed machine learning service." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("Name"), "values": S("Values", default=[])} name: Optional[str] = field(default=None) values: List[str] = field(factory=list) @@ -3085,7 +3552,10 @@ class AwsSagemakerCategoricalParameterRange: class AwsSagemakerParameterRanges: kind: ClassVar[str] = "aws_sagemaker_parameter_ranges" kind_display: ClassVar[str] = "AWS SageMaker Parameter Ranges" - kind_description: ClassVar[str] = "SageMaker Parameter Ranges are set of possible values or ranges for hyperparameters used in training machine learning models with AWS SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Parameter Ranges are set of possible values or ranges for" + " hyperparameters used in training machine learning models with AWS SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "integer_parameter_ranges": S("IntegerParameterRanges", default=[]) >> ForallBend(AwsSagemakerScalingParameterRange.mapping), @@ -3103,7 +3573,11 @@ class AwsSagemakerParameterRanges: class AwsSagemakerHyperParameterTuningJobConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_config" kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Tuning Job Config" - kind_description: ClassVar[str] = "SageMaker Hyper Parameter Tuning Job Config is a configuration resource in AWS SageMaker that helps to optimize the hyperparameters of machine learning models by systematically testing and fine-tuning their values." + kind_description: ClassVar[str] = ( + "SageMaker Hyper Parameter Tuning Job Config is a configuration resource in" + " AWS SageMaker that helps to optimize the hyperparameters of machine learning" + " models by systematically testing and fine-tuning their values." + ) mapping: ClassVar[Dict[str, Bender]] = { "strategy": S("Strategy"), "strategy_config": S("StrategyConfig") >> Bend(AwsSagemakerHyperParameterTuningJobStrategyConfig.mapping), @@ -3127,7 +3601,11 @@ class AwsSagemakerHyperParameterTuningJobConfig: class AwsSagemakerHyperParameterAlgorithmSpecification: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_algorithm_specification" kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Algorithm Specification" - kind_description: ClassVar[str] = "SageMaker Hyper Parameter Algorithm Specification is a feature in AWS SageMaker that allows users to define and customize the hyperparameters for training machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Hyper Parameter Algorithm Specification is a feature in AWS" + " SageMaker that allows users to define and customize the hyperparameters for" + " training machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "training_image": S("TrainingImage"), "training_input_mode": S("TrainingInputMode"), @@ -3144,7 +3622,12 @@ class AwsSagemakerHyperParameterAlgorithmSpecification: class AwsSagemakerCheckpointConfig: kind: ClassVar[str] = "aws_sagemaker_checkpoint_config" kind_display: ClassVar[str] = "AWS SageMaker Checkpoint Config" - kind_description: ClassVar[str] = "SageMaker Checkpoint Config is a feature of Amazon SageMaker that allows you to automatically save and load model checkpoints during the training process, ensuring that the progress of the model is not lost in case of errors or interruptions." + kind_description: ClassVar[str] = ( + "SageMaker Checkpoint Config is a feature of Amazon SageMaker that allows you" + " to automatically save and load model checkpoints during the training" + " process, ensuring that the progress of the model is not lost in case of" + " errors or interruptions." + ) mapping: ClassVar[Dict[str, Bender]] = {"s3_uri": S("S3Uri"), "local_path": S("LocalPath")} s3_uri: Optional[str] = field(default=None) local_path: Optional[str] = field(default=None) @@ -3154,7 +3637,11 @@ class AwsSagemakerCheckpointConfig: class AwsSagemakerHyperParameterTuningInstanceConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_instance_config" kind_display: ClassVar[str] = "AWS SageMaker HyperParameter Tuning Instance Configuration" - kind_description: ClassVar[str] = "SageMaker HyperParameter Tuning Instance Configuration is a resource used in the Amazon SageMaker service to configure the instance type and quantity for hyperparameter tuning of machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker HyperParameter Tuning Instance Configuration is a resource used in" + " the Amazon SageMaker service to configure the instance type and quantity for" + " hyperparameter tuning of machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -3169,7 +3656,11 @@ class AwsSagemakerHyperParameterTuningInstanceConfig: class AwsSagemakerHyperParameterTuningResourceConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_resource_config" kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Tuning Resource Config" - kind_description: ClassVar[str] = "SageMaker Hyper Parameter Tuning Resource Config is a resource configuration used for optimizing machine learning models in the Amazon SageMaker cloud platform." + kind_description: ClassVar[str] = ( + "SageMaker Hyper Parameter Tuning Resource Config is a resource configuration" + " used for optimizing machine learning models in the Amazon SageMaker cloud" + " platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "instance_count": S("InstanceCount"), @@ -3191,7 +3682,12 @@ class AwsSagemakerHyperParameterTuningResourceConfig: class AwsSagemakerHyperParameterTrainingJobDefinition: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_training_job_definition" kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Training Job Definition" - kind_description: ClassVar[str] = "SageMaker Hyperparameter Training Job Definition is a configuration for running a training job in Amazon SageMaker, which allows the user to specify the hyperparameters, input data locations, and output data locations for the training job." + kind_description: ClassVar[str] = ( + "SageMaker Hyperparameter Training Job Definition is a configuration for" + " running a training job in Amazon SageMaker, which allows the user to specify" + " the hyperparameters, input data locations, and output data locations for the" + " training job." + ) mapping: ClassVar[Dict[str, Bender]] = { "definition_name": S("DefinitionName"), "tuning_objective": S("TuningObjective") >> Bend(AwsSagemakerHyperParameterTuningJobObjective.mapping), @@ -3238,7 +3734,11 @@ class AwsSagemakerHyperParameterTrainingJobDefinition: class AwsSagemakerTrainingJobStatusCounters: kind: ClassVar[str] = "aws_sagemaker_training_job_status_counters" kind_display: ClassVar[str] = "AWS SageMaker Training Job Status Counters" - kind_description: ClassVar[str] = "SageMaker Training Job Status Counters represent the counts of training job statuses in AWS SageMaker, which is a service for training and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Training Job Status Counters represent the counts of training job" + " statuses in AWS SageMaker, which is a service for training and deploying" + " machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "completed": S("Completed"), "in_progress": S("InProgress"), @@ -3257,7 +3757,11 @@ class AwsSagemakerTrainingJobStatusCounters: class AwsSagemakerObjectiveStatusCounters: kind: ClassVar[str] = "aws_sagemaker_objective_status_counters" kind_display: ClassVar[str] = "AWS SageMaker Objective Status Counters" - kind_description: ClassVar[str] = "AWS SageMaker Objective Status Counters are metrics or counters that track the progress and status of objectives in Amazon SageMaker, a fully-managed machine learning service by AWS." + kind_description: ClassVar[str] = ( + "AWS SageMaker Objective Status Counters are metrics or counters that track" + " the progress and status of objectives in Amazon SageMaker, a fully-managed" + " machine learning service by AWS." + ) mapping: ClassVar[Dict[str, Bender]] = {"succeeded": S("Succeeded"), "pending": S("Pending"), "failed": S("Failed")} succeeded: Optional[int] = field(default=None) pending: Optional[int] = field(default=None) @@ -3268,7 +3772,13 @@ class AwsSagemakerObjectiveStatusCounters: class AwsSagemakerFinalHyperParameterTuningJobObjectiveMetric: kind: ClassVar[str] = "aws_sagemaker_final_hyper_parameter_tuning_job_objective_metric" kind_display: ClassVar[str] = "AWS SageMaker Final Hyper Parameter Tuning Job Objective Metric" - kind_description: ClassVar[str] = "SageMaker is a fully managed machine learning service provided by AWS that enables developers to build, train, and deploy machine learning models. The Final Hyper Parameter Tuning Job Objective Metric is the metric used to evaluate the performance of a machine learning model after hyperparameter tuning." + kind_description: ClassVar[str] = ( + "SageMaker is a fully managed machine learning service provided by AWS that" + " enables developers to build, train, and deploy machine learning models. The" + " Final Hyper Parameter Tuning Job Objective Metric is the metric used to" + " evaluate the performance of a machine learning model after hyperparameter" + " tuning." + ) mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "metric_name": S("MetricName"), "value": S("Value")} type: Optional[str] = field(default=None) metric_name: Optional[str] = field(default=None) @@ -3279,7 +3789,11 @@ class AwsSagemakerFinalHyperParameterTuningJobObjectiveMetric: class AwsSagemakerHyperParameterTrainingJobSummary: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_training_job_summary" kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter Training Job Summary" - kind_description: ClassVar[str] = "SageMaker Hyper Parameter Training Job Summary provides a summary of hyperparameter training jobs in AWS SageMaker. It enables users to view key details and metrics of the training jobs for machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Hyper Parameter Training Job Summary provides a summary of" + " hyperparameter training jobs in AWS SageMaker. It enables users to view key" + " details and metrics of the training jobs for machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "training_job_definition_name": S("TrainingJobDefinitionName"), "training_job_name": S("TrainingJobName"), @@ -3315,7 +3829,11 @@ class AwsSagemakerHyperParameterTrainingJobSummary: class AwsSagemakerHyperParameterTuningJobWarmStartConfig: kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job_warm_start_config" kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job Warm Start Config" - kind_description: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job Warm Start Config allows you to reuse the results of previous tuning jobs in order to accelerate the optimization process for machine learning models." + kind_description: ClassVar[str] = ( + "AWS SageMaker Hyperparameter Tuning Job Warm Start Config allows you to" + " reuse the results of previous tuning jobs in order to accelerate the" + " optimization process for machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "parent_hyper_parameter_tuning_jobs": S("ParentHyperParameterTuningJobs", default=[]) >> ForallBend(S("HyperParameterTuningJobName")), @@ -3329,7 +3847,11 @@ class AwsSagemakerHyperParameterTuningJobWarmStartConfig: class AwsSagemakerHyperParameterTuningJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job" kind_display: ClassVar[str] = "AWS SageMaker Hyperparameter Tuning Job" - kind_description: ClassVar[str] = "SageMaker Hyperparameter Tuning Job is an automated process in Amazon SageMaker that helps optimize the hyperparameters of a machine learning model to achieve better performance." + kind_description: ClassVar[str] = ( + "SageMaker Hyperparameter Tuning Job is an automated process in Amazon" + " SageMaker that helps optimize the hyperparameters of a machine learning" + " model to achieve better performance." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -3468,7 +3990,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerPhase: kind: ClassVar[str] = "aws_sagemaker_phase" kind_display: ClassVar[str] = "AWS SageMaker Phase" - kind_description: ClassVar[str] = "SageMaker Phase is a component of Amazon SageMaker, which is a fully-managed machine learning service that enables developers to build, train, and deploy machine learning models at scale." + kind_description: ClassVar[str] = ( + "SageMaker Phase is a component of Amazon SageMaker, which is a fully-managed" + " machine learning service that enables developers to build, train, and deploy" + " machine learning models at scale." + ) mapping: ClassVar[Dict[str, Bender]] = { "initial_number_of_users": S("InitialNumberOfUsers"), "spawn_rate": S("SpawnRate"), @@ -3483,7 +4009,12 @@ class AwsSagemakerPhase: class AwsSagemakerTrafficPattern: kind: ClassVar[str] = "aws_sagemaker_traffic_pattern" kind_display: ClassVar[str] = "AWS SageMaker Traffic Pattern" - kind_description: ClassVar[str] = "SageMaker Traffic Pattern in AWS refers to the traffic distribution or routing rules for deploying machine learning models in Amazon SageMaker, allowing users to define how incoming requests are routed to the deployed models." + kind_description: ClassVar[str] = ( + "SageMaker Traffic Pattern in AWS refers to the traffic distribution or" + " routing rules for deploying machine learning models in Amazon SageMaker," + " allowing users to define how incoming requests are routed to the deployed" + " models." + ) mapping: ClassVar[Dict[str, Bender]] = { "traffic_type": S("TrafficType"), "phases": S("Phases", default=[]) >> ForallBend(AwsSagemakerPhase.mapping), @@ -3496,7 +4027,11 @@ class AwsSagemakerTrafficPattern: class AwsSagemakerRecommendationJobResourceLimit: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_resource_limit" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Resource Limit" - kind_description: ClassVar[str] = "SageMaker Recommendation Job Resource Limit specifies the maximum resources, such as memory and compute, that can be allocated to a recommendation job in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Recommendation Job Resource Limit specifies the maximum resources," + " such as memory and compute, that can be allocated to a recommendation job in" + " Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_number_of_tests": S("MaxNumberOfTests"), "max_parallel_of_tests": S("MaxParallelOfTests"), @@ -3509,7 +4044,11 @@ class AwsSagemakerRecommendationJobResourceLimit: class AwsSagemakerEnvironmentParameterRanges: kind: ClassVar[str] = "aws_sagemaker_environment_parameter_ranges" kind_display: ClassVar[str] = "AWS SageMaker Environment Parameter Ranges" - kind_description: ClassVar[str] = "SageMaker Environment Parameter Ranges are a set of constraints or boundaries for the hyperparameters used in Amazon SageMaker. These ranges define the valid values that can be used for tuning machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Environment Parameter Ranges are a set of constraints or" + " boundaries for the hyperparameters used in Amazon SageMaker. These ranges" + " define the valid values that can be used for tuning machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "categorical_parameter_ranges": S("CategoricalParameterRanges", "Value", default=[]) } @@ -3520,7 +4059,10 @@ class AwsSagemakerEnvironmentParameterRanges: class AwsSagemakerEndpointInputConfiguration: kind: ClassVar[str] = "aws_sagemaker_endpoint_input_configuration" kind_display: ClassVar[str] = "AWS SageMaker Endpoint Input Configuration" - kind_description: ClassVar[str] = "Input configuration for a SageMaker endpoint, which defines the data input format and location for real-time inference." + kind_description: ClassVar[str] = ( + "Input configuration for a SageMaker endpoint, which defines the data input" + " format and location for real-time inference." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_type": S("InstanceType"), "inference_specification_name": S("InferenceSpecificationName"), @@ -3536,7 +4078,10 @@ class AwsSagemakerEndpointInputConfiguration: class AwsSagemakerRecommendationJobPayloadConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_payload_config" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Payload Config" - kind_description: ClassVar[str] = "SageMaker recommendation job payload configuration specifies the data format and location of the input payload for a recommendation job on AWS SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker recommendation job payload configuration specifies the data format" + " and location of the input payload for a recommendation job on AWS SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "sample_payload_url": S("SamplePayloadUrl"), "supported_content_types": S("SupportedContentTypes", default=[]), @@ -3549,7 +4094,12 @@ class AwsSagemakerRecommendationJobPayloadConfig: class AwsSagemakerRecommendationJobContainerConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_container_config" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Container Config" - kind_description: ClassVar[str] = "This resource represents the container configuration for a recommendation job in AWS SageMaker. SageMaker is a fully-managed machine learning service by Amazon that allows you to build, train, and deploy machine learning models." + kind_description: ClassVar[str] = ( + "This resource represents the container configuration for a recommendation" + " job in AWS SageMaker. SageMaker is a fully-managed machine learning service" + " by Amazon that allows you to build, train, and deploy machine learning" + " models." + ) mapping: ClassVar[Dict[str, Bender]] = { "domain": S("Domain"), "task": S("Task"), @@ -3572,7 +4122,10 @@ class AwsSagemakerRecommendationJobContainerConfig: class AwsSagemakerRecommendationJobInputConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_input_config" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Input Config" - kind_description: ClassVar[str] = "The input configuration for a recommendation job in Amazon SageMaker, which specifies the location of the input data for the recommendation model." + kind_description: ClassVar[str] = ( + "The input configuration for a recommendation job in Amazon SageMaker, which" + " specifies the location of the input data for the recommendation model." + ) mapping: ClassVar[Dict[str, Bender]] = { "model_package_version_arn": S("ModelPackageVersionArn"), "job_duration_in_seconds": S("JobDurationInSeconds"), @@ -3598,7 +4151,11 @@ class AwsSagemakerRecommendationJobInputConfig: class AwsSagemakerModelLatencyThreshold: kind: ClassVar[str] = "aws_sagemaker_model_latency_threshold" kind_display: ClassVar[str] = "AWS SageMaker Model Latency Threshold" - kind_description: ClassVar[str] = "SageMaker Model Latency Threshold is a parameter used to set the maximum acceptable latency for predictions made by a model deployed on Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Model Latency Threshold is a parameter used to set the maximum" + " acceptable latency for predictions made by a model deployed on Amazon" + " SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "percentile": S("Percentile"), "value_in_milliseconds": S("ValueInMilliseconds"), @@ -3611,7 +4168,11 @@ class AwsSagemakerModelLatencyThreshold: class AwsSagemakerRecommendationJobStoppingConditions: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_stopping_conditions" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Stopping Conditions" - kind_description: ClassVar[str] = "SageMaker Recommendation Job Stopping Conditions in AWS allow you to specify conditions that determine when the recommendation job should stop, based on factors such as maximum runtime or model metric threshold." + kind_description: ClassVar[str] = ( + "SageMaker Recommendation Job Stopping Conditions in AWS allow you to specify" + " conditions that determine when the recommendation job should stop, based on" + " factors such as maximum runtime or model metric threshold." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_invocations": S("MaxInvocations"), "model_latency_thresholds": S("ModelLatencyThresholds", default=[]) @@ -3625,7 +4186,11 @@ class AwsSagemakerRecommendationJobStoppingConditions: class AwsSagemakerRecommendationMetrics: kind: ClassVar[str] = "aws_sagemaker_recommendation_metrics" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Metrics" - kind_description: ClassVar[str] = "SageMaker Recommendation Metrics are performance evaluation metrics used in Amazon SageMaker to measure the accuracy and effectiveness of recommendation algorithms." + kind_description: ClassVar[str] = ( + "SageMaker Recommendation Metrics are performance evaluation metrics used in" + " Amazon SageMaker to measure the accuracy and effectiveness of recommendation" + " algorithms." + ) mapping: ClassVar[Dict[str, Bender]] = { "cost_per_hour": S("CostPerHour"), "cost_per_inference": S("CostPerInference"), @@ -3642,7 +4207,10 @@ class AwsSagemakerRecommendationMetrics: class AwsSagemakerEndpointOutputConfiguration: kind: ClassVar[str] = "aws_sagemaker_endpoint_output_configuration" kind_display: ClassVar[str] = "AWS SageMaker Endpoint Output Configuration" - kind_description: ClassVar[str] = "The output configuration for the SageMaker endpoint, specifying where the predictions should be stored or streamed." + kind_description: ClassVar[str] = ( + "The output configuration for the SageMaker endpoint, specifying where the" + " predictions should be stored or streamed." + ) mapping: ClassVar[Dict[str, Bender]] = { "endpoint_name": S("EndpointName"), "variant_name": S("VariantName"), @@ -3659,7 +4227,11 @@ class AwsSagemakerEndpointOutputConfiguration: class AwsSagemakerEnvironmentParameter: kind: ClassVar[str] = "aws_sagemaker_environment_parameter" kind_display: ClassVar[str] = "AWS SageMaker Environment Parameter" - kind_description: ClassVar[str] = "SageMaker Environment Parameters are key-value pairs that can be used to pass environment variables to a training job or a hosting job in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Environment Parameters are key-value pairs that can be used to" + " pass environment variables to a training job or a hosting job in Amazon" + " SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("Key"), "value_type": S("ValueType"), "value": S("Value")} key: Optional[str] = field(default=None) value_type: Optional[str] = field(default=None) @@ -3670,7 +4242,11 @@ class AwsSagemakerEnvironmentParameter: class AwsSagemakerModelConfiguration: kind: ClassVar[str] = "aws_sagemaker_model_configuration" kind_display: ClassVar[str] = "AWS SageMaker Model Configuration" - kind_description: ClassVar[str] = "SageMaker Model Configuration is a resource in AWS that allows users to define and configure machine learning models for use in Amazon SageMaker, a fully managed machine learning service." + kind_description: ClassVar[str] = ( + "SageMaker Model Configuration is a resource in AWS that allows users to" + " define and configure machine learning models for use in Amazon SageMaker, a" + " fully managed machine learning service." + ) mapping: ClassVar[Dict[str, Bender]] = { "inference_specification_name": S("InferenceSpecificationName"), "environment_parameters": S("EnvironmentParameters", default=[]) @@ -3684,7 +4260,11 @@ class AwsSagemakerModelConfiguration: class AwsSagemakerInferenceRecommendation: kind: ClassVar[str] = "aws_sagemaker_inference_recommendation" kind_display: ClassVar[str] = "AWS SageMaker Inference Recommendation" - kind_description: ClassVar[str] = "Amazon SageMaker Inference Recommendation is a service that provides real-time recommendations using machine learning models deployed on the Amazon SageMaker platform." + kind_description: ClassVar[str] = ( + "Amazon SageMaker Inference Recommendation is a service that provides real-" + " time recommendations using machine learning models deployed on the Amazon" + " SageMaker platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "metrics": S("Metrics") >> Bend(AwsSagemakerRecommendationMetrics.mapping), "endpoint_configuration": S("EndpointConfiguration") >> Bend(AwsSagemakerEndpointOutputConfiguration.mapping), @@ -3699,7 +4279,11 @@ class AwsSagemakerInferenceRecommendation: class AwsSagemakerInferenceMetrics: kind: ClassVar[str] = "aws_sagemaker_inference_metrics" kind_display: ClassVar[str] = "AWS SageMaker Inference Metrics" - kind_description: ClassVar[str] = "SageMaker Inference Metrics provide performance metrics for machine learning models deployed on the SageMaker platform, allowing users to track the accuracy and efficiency of their model predictions." + kind_description: ClassVar[str] = ( + "SageMaker Inference Metrics provide performance metrics for machine learning" + " models deployed on the SageMaker platform, allowing users to track the" + " accuracy and efficiency of their model predictions." + ) mapping: ClassVar[Dict[str, Bender]] = {"max_invocations": S("MaxInvocations"), "model_latency": S("ModelLatency")} max_invocations: Optional[int] = field(default=None) model_latency: Optional[int] = field(default=None) @@ -3709,7 +4293,11 @@ class AwsSagemakerInferenceMetrics: class AwsSagemakerEndpointPerformance: kind: ClassVar[str] = "aws_sagemaker_endpoint_performance" kind_display: ClassVar[str] = "AWS SageMaker Endpoint Performance" - kind_description: ClassVar[str] = "SageMaker Endpoint Performance is a service provided by Amazon Web Services for monitoring and optimizing the performance of machine learning models deployed on SageMaker endpoints." + kind_description: ClassVar[str] = ( + "SageMaker Endpoint Performance is a service provided by Amazon Web Services" + " for monitoring and optimizing the performance of machine learning models" + " deployed on SageMaker endpoints." + ) mapping: ClassVar[Dict[str, Bender]] = { "metrics": S("Metrics") >> Bend(AwsSagemakerInferenceMetrics.mapping), "endpoint_info": S("EndpointInfo", "EndpointName"), @@ -3722,7 +4310,11 @@ class AwsSagemakerEndpointPerformance: class AwsSagemakerInferenceRecommendationsJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_inference_recommendations_job" kind_display: ClassVar[str] = "AWS SageMaker Inference Recommendations Job" - kind_description: ClassVar[str] = "SageMaker Inference Recommendations Jobs are used in Amazon SageMaker to create recommendation models that can generate personalized recommendations based on user data." + kind_description: ClassVar[str] = ( + "SageMaker Inference Recommendations Jobs are used in Amazon SageMaker to" + " create recommendation models that can generate personalized recommendations" + " based on user data." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["aws_iam_role", "aws_ec2_security_group", "aws_ec2_subnet"], @@ -3828,7 +4420,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerLabelCounters: kind: ClassVar[str] = "aws_sagemaker_label_counters" kind_display: ClassVar[str] = "AWS SageMaker Label Counters" - kind_description: ClassVar[str] = "SageMaker Label Counters are a feature in Amazon SageMaker that enables you to track the distribution of labels in your dataset, helping you analyze and manage label imbalances." + kind_description: ClassVar[str] = ( + "SageMaker Label Counters are a feature in Amazon SageMaker that enables you" + " to track the distribution of labels in your dataset, helping you analyze and" + " manage label imbalances." + ) mapping: ClassVar[Dict[str, Bender]] = { "total_labeled": S("TotalLabeled"), "human_labeled": S("HumanLabeled"), @@ -3847,7 +4443,11 @@ class AwsSagemakerLabelCounters: class AwsSagemakerLabelingJobDataSource: kind: ClassVar[str] = "aws_sagemaker_labeling_job_data_source" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Data Source" - kind_description: ClassVar[str] = "SageMaker Labeling Job Data Source is a source of data used for machine learning labeling tasks in Amazon SageMaker. It can include various types of data such as text, images, or videos." + kind_description: ClassVar[str] = ( + "SageMaker Labeling Job Data Source is a source of data used for machine" + " learning labeling tasks in Amazon SageMaker. It can include various types of" + " data such as text, images, or videos." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_data_source": S("S3DataSource", "ManifestS3Uri"), "sns_data_source": S("SnsDataSource", "SnsTopicArn"), @@ -3860,7 +4460,11 @@ class AwsSagemakerLabelingJobDataSource: class AwsSagemakerLabelingJobInputConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_input_config" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Input Config" - kind_description: ClassVar[str] = "SageMaker Labeling Job Input Config is a configuration for specifying the input data for a labeling job in Amazon SageMaker. It includes information such as the input data source location and format." + kind_description: ClassVar[str] = ( + "SageMaker Labeling Job Input Config is a configuration for specifying the" + " input data for a labeling job in Amazon SageMaker. It includes information" + " such as the input data source location and format." + ) mapping: ClassVar[Dict[str, Bender]] = { "data_source": S("DataSource") >> Bend(AwsSagemakerLabelingJobDataSource.mapping), "data_attributes": S("DataAttributes", "ContentClassifiers", default=[]), @@ -3873,7 +4477,11 @@ class AwsSagemakerLabelingJobInputConfig: class AwsSagemakerLabelingJobOutputConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_output_config" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Output Config" - kind_description: ClassVar[str] = "The output configuration for a labeling job in Amazon SageMaker. It specifies the location that the generated manifest file and labeled data objects will be saved to." + kind_description: ClassVar[str] = ( + "The output configuration for a labeling job in Amazon SageMaker. It" + " specifies the location that the generated manifest file and labeled data" + " objects will be saved to." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_output_path": S("S3OutputPath"), "kms_key_id": S("KmsKeyId"), @@ -3888,7 +4496,12 @@ class AwsSagemakerLabelingJobOutputConfig: class AwsSagemakerLabelingJobStoppingConditions: kind: ClassVar[str] = "aws_sagemaker_labeling_job_stopping_conditions" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Stopping Conditions" - kind_description: ClassVar[str] = "SageMaker Labeling Job Stopping Conditions is a feature in Amazon SageMaker that allows users to define conditions for stopping an active labeling job, such as when a certain number of data points have been labeled or when a certain level of accuracy has been achieved." + kind_description: ClassVar[str] = ( + "SageMaker Labeling Job Stopping Conditions is a feature in Amazon SageMaker" + " that allows users to define conditions for stopping an active labeling job," + " such as when a certain number of data points have been labeled or when a" + " certain level of accuracy has been achieved." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_human_labeled_object_count": S("MaxHumanLabeledObjectCount"), "max_percentage_of_input_dataset_labeled": S("MaxPercentageOfInputDatasetLabeled"), @@ -3901,7 +4514,11 @@ class AwsSagemakerLabelingJobStoppingConditions: class AwsSagemakerLabelingJobResourceConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_resource_config" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Resource Config" - kind_description: ClassVar[str] = "SageMaker Labeling Job Resource Config is used to configure the resources required to run a labeling job in Amazon SageMaker, which provides a fully managed machine learning service." + kind_description: ClassVar[str] = ( + "SageMaker Labeling Job Resource Config is used to configure the resources" + " required to run a labeling job in Amazon SageMaker, which provides a fully" + " managed machine learning service." + ) mapping: ClassVar[Dict[str, Bender]] = { "volume_kms_key_id": S("VolumeKmsKeyId"), "vpc_config": S("VpcConfig") >> Bend(AwsSagemakerVpcConfig.mapping), @@ -3914,7 +4531,10 @@ class AwsSagemakerLabelingJobResourceConfig: class AwsSagemakerLabelingJobAlgorithmsConfig: kind: ClassVar[str] = "aws_sagemaker_labeling_job_algorithms_config" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Algorithms Config" - kind_description: ClassVar[str] = "SageMaker Labeling Job Algorithms Config is a configuration that allows you to define the algorithms used in SageMaker labeling job." + kind_description: ClassVar[str] = ( + "SageMaker Labeling Job Algorithms Config is a configuration that allows you" + " to define the algorithms used in SageMaker labeling job." + ) mapping: ClassVar[Dict[str, Bender]] = { "labeling_job_algorithm_specification_arn": S("LabelingJobAlgorithmSpecificationArn"), "initial_active_learning_model_arn": S("InitialActiveLearningModelArn"), @@ -3930,7 +4550,11 @@ class AwsSagemakerLabelingJobAlgorithmsConfig: class AwsSagemakerUiConfig: kind: ClassVar[str] = "aws_sagemaker_ui_config" kind_display: ClassVar[str] = "AWS SageMaker UI Config" - kind_description: ClassVar[str] = "SageMaker UI Config is a feature of Amazon SageMaker, a machine learning service provided by AWS. It allows users to configure the user interface for their SageMaker notebooks and experiments." + kind_description: ClassVar[str] = ( + "SageMaker UI Config is a feature of Amazon SageMaker, a machine learning" + " service provided by AWS. It allows users to configure the user interface for" + " their SageMaker notebooks and experiments." + ) mapping: ClassVar[Dict[str, Bender]] = { "ui_template_s3_uri": S("UiTemplateS3Uri"), "human_task_ui_arn": S("HumanTaskUiArn"), @@ -3943,7 +4567,11 @@ class AwsSagemakerUiConfig: class AwsSagemakerUSD: kind: ClassVar[str] = "aws_sagemaker_usd" kind_display: ClassVar[str] = "AWS SageMaker USD" - kind_description: ClassVar[str] = "SageMaker USD is a service offered by Amazon Web Services that allows machine learning developers to build, train, and deploy machine learning models using Universal Scene Description (USD) format." + kind_description: ClassVar[str] = ( + "SageMaker USD is a service offered by Amazon Web Services that allows" + " machine learning developers to build, train, and deploy machine learning" + " models using Universal Scene Description (USD) format." + ) mapping: ClassVar[Dict[str, Bender]] = { "dollars": S("Dollars"), "cents": S("Cents"), @@ -3958,7 +4586,11 @@ class AwsSagemakerUSD: class AwsSagemakerPublicWorkforceTaskPrice: kind: ClassVar[str] = "aws_sagemaker_public_workforce_task_price" kind_display: ClassVar[str] = "AWS SageMaker Public Workforce Task Price" - kind_description: ClassVar[str] = "SageMaker Public Workforce Task Price is the cost associated with using Amazon SageMaker Public Workforce to create tasks for labeling and annotation of data." + kind_description: ClassVar[str] = ( + "SageMaker Public Workforce Task Price is the cost associated with using" + " Amazon SageMaker Public Workforce to create tasks for labeling and" + " annotation of data." + ) mapping: ClassVar[Dict[str, Bender]] = {"amount_in_usd": S("AmountInUsd") >> Bend(AwsSagemakerUSD.mapping)} amount_in_usd: Optional[AwsSagemakerUSD] = field(default=None) @@ -3967,7 +4599,12 @@ class AwsSagemakerPublicWorkforceTaskPrice: class AwsSagemakerHumanTaskConfig: kind: ClassVar[str] = "aws_sagemaker_human_task_config" kind_display: ClassVar[str] = "AWS SageMaker Human Task Config" - kind_description: ClassVar[str] = "AWS SageMaker Human Task Config is a configuration that allows you to create and manage human annotation jobs on your data using Amazon SageMaker. It enables you to build, train, and deploy machine learning models with human intelligence." + kind_description: ClassVar[str] = ( + "AWS SageMaker Human Task Config is a configuration that allows you to create" + " and manage human annotation jobs on your data using Amazon SageMaker. It" + " enables you to build, train, and deploy machine learning models with human" + " intelligence." + ) mapping: ClassVar[Dict[str, Bender]] = { "workteam_arn": S("WorkteamArn"), "ui_config": S("UiConfig") >> Bend(AwsSagemakerUiConfig.mapping), @@ -4001,7 +4638,11 @@ class AwsSagemakerHumanTaskConfig: class AwsSagemakerLabelingJobOutput: kind: ClassVar[str] = "aws_sagemaker_labeling_job_output" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Output" - kind_description: ClassVar[str] = "SageMaker Labeling Job Output is the result of a machine learning labeling job on the AWS SageMaker platform, which provides a managed environment for building, training, and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Labeling Job Output is the result of a machine learning labeling" + " job on the AWS SageMaker platform, which provides a managed environment for" + " building, training, and deploying machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "output_dataset_s3_uri": S("OutputDatasetS3Uri"), "final_active_learning_model_arn": S("FinalActiveLearningModelArn"), @@ -4014,7 +4655,10 @@ class AwsSagemakerLabelingJobOutput: class AwsSagemakerLabelingJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_labeling_job" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job" - kind_description: ClassVar[str] = "SageMaker Labeling Jobs are used to annotate and label data for training machine learning models in Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Labeling Jobs are used to annotate and label data for training" + " machine learning models in Amazon SageMaker." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -4145,7 +4789,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerProcessingS3Input: kind: ClassVar[str] = "aws_sagemaker_processing_s3_input" kind_display: ClassVar[str] = "AWS SageMaker Processing S3 Input" - kind_description: ClassVar[str] = "S3 Input is used in Amazon SageMaker Processing, a service that runs processing tasks on large volumes of data in a distributed and managed way on AWS SageMaker." + kind_description: ClassVar[str] = ( + "S3 Input is used in Amazon SageMaker Processing, a service that runs" + " processing tasks on large volumes of data in a distributed and managed way" + " on AWS SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_uri": S("S3Uri"), "local_path": S("LocalPath"), @@ -4166,7 +4814,11 @@ class AwsSagemakerProcessingS3Input: class AwsSagemakerAthenaDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_athena_dataset_definition" kind_display: ClassVar[str] = "AWS SageMaker Athena Dataset Definition" - kind_description: ClassVar[str] = "Athena Dataset Definitions in SageMaker is used to define and create datasets that can be accessed and used for machine learning projects in AWS SageMaker." + kind_description: ClassVar[str] = ( + "Athena Dataset Definitions in SageMaker is used to define and create" + " datasets that can be accessed and used for machine learning projects in AWS" + " SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "catalog": S("Catalog"), "database": S("Database"), @@ -4191,7 +4843,11 @@ class AwsSagemakerAthenaDatasetDefinition: class AwsSagemakerRedshiftDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_redshift_dataset_definition" kind_display: ClassVar[str] = "AWS SageMaker Redshift Dataset Definition" - kind_description: ClassVar[str] = "SageMaker Redshift Dataset Definition is a resource in Amazon SageMaker that allows you to define datasets for training machine learning models using data stored in Amazon Redshift." + kind_description: ClassVar[str] = ( + "SageMaker Redshift Dataset Definition is a resource in Amazon SageMaker that" + " allows you to define datasets for training machine learning models using" + " data stored in Amazon Redshift." + ) mapping: ClassVar[Dict[str, Bender]] = { "cluster_id": S("ClusterId"), "database": S("Database"), @@ -4218,7 +4874,10 @@ class AwsSagemakerRedshiftDatasetDefinition: class AwsSagemakerDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_dataset_definition" kind_display: ClassVar[str] = "AWS SageMaker Dataset Definition" - kind_description: ClassVar[str] = "SageMaker Dataset Definition is a resource in Amazon SageMaker that specifies the location and format of input data for training and inference." + kind_description: ClassVar[str] = ( + "SageMaker Dataset Definition is a resource in Amazon SageMaker that" + " specifies the location and format of input data for training and inference." + ) mapping: ClassVar[Dict[str, Bender]] = { "athena_dataset_definition": S("AthenaDatasetDefinition") >> Bend(AwsSagemakerAthenaDatasetDefinition.mapping), "redshift_dataset_definition": S("RedshiftDatasetDefinition") @@ -4238,7 +4897,11 @@ class AwsSagemakerDatasetDefinition: class AwsSagemakerProcessingInput: kind: ClassVar[str] = "aws_sagemaker_processing_input" kind_display: ClassVar[str] = "AWS SageMaker Processing Input" - kind_description: ClassVar[str] = "SageMaker Processing Input is a resource in Amazon SageMaker that represents the input data for a processing job. It is used to provide data to be processed by SageMaker algorithms or custom code." + kind_description: ClassVar[str] = ( + "SageMaker Processing Input is a resource in Amazon SageMaker that represents" + " the input data for a processing job. It is used to provide data to be" + " processed by SageMaker algorithms or custom code." + ) mapping: ClassVar[Dict[str, Bender]] = { "input_name": S("InputName"), "app_managed": S("AppManaged"), @@ -4255,7 +4918,11 @@ class AwsSagemakerProcessingInput: class AwsSagemakerProcessingS3Output: kind: ClassVar[str] = "aws_sagemaker_processing_s3_output" kind_display: ClassVar[str] = "AWS SageMaker Processing S3 Output" - kind_description: ClassVar[str] = "SageMaker Processing S3 Output is the output location in Amazon S3 for the output artifacts generated during the data processing tasks performed by Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker Processing S3 Output is the output location in Amazon S3 for the" + " output artifacts generated during the data processing tasks performed by" + " Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_uri": S("S3Uri"), "local_path": S("LocalPath"), @@ -4270,7 +4937,11 @@ class AwsSagemakerProcessingS3Output: class AwsSagemakerProcessingOutput: kind: ClassVar[str] = "aws_sagemaker_processing_output" kind_display: ClassVar[str] = "AWS SageMaker Processing Output" - kind_description: ClassVar[str] = "SageMaker Processing Output is the result of running data processing operations on the Amazon SageMaker platform, which is used for building, training, and deploying machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Processing Output is the result of running data processing" + " operations on the Amazon SageMaker platform, which is used for building," + " training, and deploying machine learning models." + ) mapping: ClassVar[Dict[str, Bender]] = { "output_name": S("OutputName"), "s3_output": S("S3Output") >> Bend(AwsSagemakerProcessingS3Output.mapping), @@ -4287,7 +4958,10 @@ class AwsSagemakerProcessingOutput: class AwsSagemakerProcessingOutputConfig: kind: ClassVar[str] = "aws_sagemaker_processing_output_config" kind_display: ClassVar[str] = "AWS SageMaker Processing Output Config" - kind_description: ClassVar[str] = "SageMaker Processing Output Config is a configuration that specifies where and how the output of a SageMaker processing job should be stored." + kind_description: ClassVar[str] = ( + "SageMaker Processing Output Config is a configuration that specifies where" + " and how the output of a SageMaker processing job should be stored." + ) mapping: ClassVar[Dict[str, Bender]] = { "outputs": S("Outputs", default=[]) >> ForallBend(AwsSagemakerProcessingOutput.mapping), "kms_key_id": S("KmsKeyId"), @@ -4300,7 +4974,12 @@ class AwsSagemakerProcessingOutputConfig: class AwsSagemakerProcessingClusterConfig: kind: ClassVar[str] = "aws_sagemaker_processing_cluster_config" kind_display: ClassVar[str] = "AWS SageMaker Processing Cluster Config" - kind_description: ClassVar[str] = "SageMaker Processing Cluster Config provides configuration settings for creating and managing processing clusters in Amazon SageMaker. Processing clusters allow users to run data processing tasks on large datasets in a distributed and scalable manner." + kind_description: ClassVar[str] = ( + "SageMaker Processing Cluster Config provides configuration settings for" + " creating and managing processing clusters in Amazon SageMaker. Processing" + " clusters allow users to run data processing tasks on large datasets in a" + " distributed and scalable manner." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_count": S("InstanceCount"), "instance_type": S("InstanceType"), @@ -4317,7 +4996,11 @@ class AwsSagemakerProcessingClusterConfig: class AwsSagemakerProcessingResources: kind: ClassVar[str] = "aws_sagemaker_processing_resources" kind_display: ClassVar[str] = "AWS SageMaker Processing Resources" - kind_description: ClassVar[str] = "SageMaker processing resources in AWS are used for running data processing workloads, allowing users to perform data transformations, feature engineering, and other preprocessing tasks efficiently." + kind_description: ClassVar[str] = ( + "SageMaker processing resources in AWS are used for running data processing" + " workloads, allowing users to perform data transformations, feature" + " engineering, and other preprocessing tasks efficiently." + ) mapping: ClassVar[Dict[str, Bender]] = { "cluster_config": S("ClusterConfig") >> Bend(AwsSagemakerProcessingClusterConfig.mapping) } @@ -4328,7 +5011,11 @@ class AwsSagemakerProcessingResources: class AwsSagemakerAppSpecification: kind: ClassVar[str] = "aws_sagemaker_app_specification" kind_display: ClassVar[str] = "AWS SageMaker App Specification" - kind_description: ClassVar[str] = "SageMaker App Specification is a resource in AWS that allows you to define the container environment and dependencies for running an application on Amazon SageMaker." + kind_description: ClassVar[str] = ( + "SageMaker App Specification is a resource in AWS that allows you to define" + " the container environment and dependencies for running an application on" + " Amazon SageMaker." + ) mapping: ClassVar[Dict[str, Bender]] = { "image_uri": S("ImageUri"), "container_entrypoint": S("ContainerEntrypoint", default=[]), @@ -4343,7 +5030,11 @@ class AwsSagemakerAppSpecification: class AwsSagemakerNetworkConfig: kind: ClassVar[str] = "aws_sagemaker_network_config" kind_display: ClassVar[str] = "AWS SageMaker Network Config" - kind_description: ClassVar[str] = "SageMaker Network Config is a configuration option in Amazon SageMaker that allows you to customize the network settings for your machine learning models, such as VPC configurations and security group configurations." + kind_description: ClassVar[str] = ( + "SageMaker Network Config is a configuration option in Amazon SageMaker that" + " allows you to customize the network settings for your machine learning" + " models, such as VPC configurations and security group configurations." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_inter_container_traffic_encryption": S("EnableInterContainerTrafficEncryption"), "enable_network_isolation": S("EnableNetworkIsolation"), @@ -4358,7 +5049,11 @@ class AwsSagemakerNetworkConfig: class AwsSagemakerProcessingJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_processing_job" kind_display: ClassVar[str] = "AWS SageMaker Processing Job" - kind_description: ClassVar[str] = "SageMaker Processing Jobs provide a managed infrastructure for executing data processing tasks in Amazon SageMaker, enabling users to preprocess and analyze data efficiently." + kind_description: ClassVar[str] = ( + "SageMaker Processing Jobs provide a managed infrastructure for executing" + " data processing tasks in Amazon SageMaker, enabling users to preprocess and" + " analyze data efficiently." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -4498,7 +5193,12 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerAlgorithmSpecification: kind: ClassVar[str] = "aws_sagemaker_algorithm_specification" kind_display: ClassVar[str] = "AWS SageMaker Algorithm Specification" - kind_description: ClassVar[str] = "The AWS SageMaker Algorithm Specification is a specification that defines the characteristics and requirements of custom algorithms for Amazon SageMaker, a fully-managed machine learning service provided by Amazon Web Services." + kind_description: ClassVar[str] = ( + "The AWS SageMaker Algorithm Specification is a specification that defines" + " the characteristics and requirements of custom algorithms for Amazon" + " SageMaker, a fully-managed machine learning service provided by Amazon Web" + " Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "training_image": S("TrainingImage"), "algorithm_name": S("AlgorithmName"), @@ -4521,7 +5221,10 @@ class AwsSagemakerAlgorithmSpecification: class AwsSagemakerSecondaryStatusTransition: kind: ClassVar[str] = "aws_sagemaker_secondary_status_transition" kind_display: ClassVar[str] = "AWS SageMaker Secondary Status Transition" - kind_description: ClassVar[str] = "Secondary status transition in Amazon SageMaker represents the state of the training or processing job after reaching a certain status." + kind_description: ClassVar[str] = ( + "Secondary status transition in Amazon SageMaker represents the state of the" + " training or processing job after reaching a certain status." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "start_time": S("StartTime"), @@ -4538,7 +5241,11 @@ class AwsSagemakerSecondaryStatusTransition: class AwsSagemakerMetricData: kind: ClassVar[str] = "aws_sagemaker_metric_data" kind_display: ClassVar[str] = "AWS SageMaker Metric Data" - kind_description: ClassVar[str] = "SageMaker Metric Data is a feature of AWS SageMaker that allows users to monitor and track machine learning model metrics during training and inference." + kind_description: ClassVar[str] = ( + "SageMaker Metric Data is a feature of AWS SageMaker that allows users to" + " monitor and track machine learning model metrics during training and" + " inference." + ) mapping: ClassVar[Dict[str, Bender]] = { "metric_name": S("MetricName"), "value": S("Value"), @@ -4553,7 +5260,11 @@ class AwsSagemakerMetricData: class AwsSagemakerCollectionConfiguration: kind: ClassVar[str] = "aws_sagemaker_collection_configuration" kind_display: ClassVar[str] = "AWS SageMaker Collection Configuration" - kind_description: ClassVar[str] = "SageMaker Collection Configuration is a feature in Amazon SageMaker that allows users to configure data collection during model training, enabling the capturing of input data for further analysis and improvement." + kind_description: ClassVar[str] = ( + "SageMaker Collection Configuration is a feature in Amazon SageMaker that" + " allows users to configure data collection during model training, enabling" + " the capturing of input data for further analysis and improvement." + ) mapping: ClassVar[Dict[str, Bender]] = { "collection_name": S("CollectionName"), "collection_parameters": S("CollectionParameters"), @@ -4566,7 +5277,12 @@ class AwsSagemakerCollectionConfiguration: class AwsSagemakerDebugHookConfig: kind: ClassVar[str] = "aws_sagemaker_debug_hook_config" kind_display: ClassVar[str] = "AWS SageMaker Debug Hook Config" - kind_description: ClassVar[str] = "SageMaker Debug Hook Config is a feature of Amazon SageMaker, a fully managed service that enables developers to build, train, and deploy machine learning models. The Debug Hook Config allows for monitoring and debugging of the models during training." + kind_description: ClassVar[str] = ( + "SageMaker Debug Hook Config is a feature of Amazon SageMaker, a fully" + " managed service that enables developers to build, train, and deploy machine" + " learning models. The Debug Hook Config allows for monitoring and debugging" + " of the models during training." + ) mapping: ClassVar[Dict[str, Bender]] = { "local_path": S("LocalPath"), "s3_output_path": S("S3OutputPath"), @@ -4584,7 +5300,11 @@ class AwsSagemakerDebugHookConfig: class AwsSagemakerDebugRuleConfiguration: kind: ClassVar[str] = "aws_sagemaker_debug_rule_configuration" kind_display: ClassVar[str] = "AWS SageMaker Debug Rule Configuration" - kind_description: ClassVar[str] = "SageMaker Debug Rule Configuration is a feature in Amazon SageMaker that allows users to define debugging rules for machine learning models, helping to identify and fix issues in the training or deployment process." + kind_description: ClassVar[str] = ( + "SageMaker Debug Rule Configuration is a feature in Amazon SageMaker that" + " allows users to define debugging rules for machine learning models, helping" + " to identify and fix issues in the training or deployment process." + ) mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "local_path": S("LocalPath"), @@ -4607,7 +5327,11 @@ class AwsSagemakerDebugRuleConfiguration: class AwsSagemakerTensorBoardOutputConfig: kind: ClassVar[str] = "aws_sagemaker_tensor_board_output_config" kind_display: ClassVar[str] = "AWS SageMaker TensorBoard Output Config" - kind_description: ClassVar[str] = "SageMaker TensorBoard Output Config is a resource in AWS SageMaker that specifies the configuration for exporting training job tensorboard data to an S3 bucket for visualization and analysis." + kind_description: ClassVar[str] = ( + "SageMaker TensorBoard Output Config is a resource in AWS SageMaker that" + " specifies the configuration for exporting training job tensorboard data to" + " an S3 bucket for visualization and analysis." + ) mapping: ClassVar[Dict[str, Bender]] = {"local_path": S("LocalPath"), "s3_output_path": S("S3OutputPath")} local_path: Optional[str] = field(default=None) s3_output_path: Optional[str] = field(default=None) @@ -4617,7 +5341,11 @@ class AwsSagemakerTensorBoardOutputConfig: class AwsSagemakerDebugRuleEvaluationStatus: kind: ClassVar[str] = "aws_sagemaker_debug_rule_evaluation_status" kind_display: ClassVar[str] = "AWS SageMaker Debug Rule Evaluation Status" - kind_description: ClassVar[str] = "SageMaker Debug Rule Evaluation Status represents the evaluation status of the debug rules in Amazon SageMaker, which helps in debugging and monitoring machine learning models during training and deployment." + kind_description: ClassVar[str] = ( + "SageMaker Debug Rule Evaluation Status represents the evaluation status of" + " the debug rules in Amazon SageMaker, which helps in debugging and monitoring" + " machine learning models during training and deployment." + ) mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "rule_evaluation_job_arn": S("RuleEvaluationJobArn"), @@ -4636,7 +5364,11 @@ class AwsSagemakerDebugRuleEvaluationStatus: class AwsSagemakerProfilerConfig: kind: ClassVar[str] = "aws_sagemaker_profiler_config" kind_display: ClassVar[str] = "AWS SageMaker Profiler Configuration" - kind_description: ClassVar[str] = "SageMaker Profiler is an Amazon Web Services capability that automatically analyzes your model's training data and provides recommendations for optimizing performance." + kind_description: ClassVar[str] = ( + "SageMaker Profiler is an Amazon Web Services capability that automatically" + " analyzes your model's training data and provides recommendations for" + " optimizing performance." + ) mapping: ClassVar[Dict[str, Bender]] = { "s3_output_path": S("S3OutputPath"), "profiling_interval_in_milliseconds": S("ProfilingIntervalInMilliseconds"), @@ -4651,7 +5383,11 @@ class AwsSagemakerProfilerConfig: class AwsSagemakerProfilerRuleConfiguration: kind: ClassVar[str] = "aws_sagemaker_profiler_rule_configuration" kind_display: ClassVar[str] = "AWS SageMaker Profiler Rule Configuration" - kind_description: ClassVar[str] = "SageMaker Profiler Rule Configuration is a feature provided by AWS SageMaker that allows defining rules for profiling machine learning models during training to identify potential performance and resource utilization issues." + kind_description: ClassVar[str] = ( + "SageMaker Profiler Rule Configuration is a feature provided by AWS SageMaker" + " that allows defining rules for profiling machine learning models during" + " training to identify potential performance and resource utilization issues." + ) mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "local_path": S("LocalPath"), @@ -4674,7 +5410,11 @@ class AwsSagemakerProfilerRuleConfiguration: class AwsSagemakerProfilerRuleEvaluationStatus: kind: ClassVar[str] = "aws_sagemaker_profiler_rule_evaluation_status" kind_display: ClassVar[str] = "AWS SageMaker Profiler Rule Evaluation Status" - kind_description: ClassVar[str] = "SageMaker Profiler Rule Evaluation Status is a feature in Amazon SageMaker that allows users to monitor and assess the performance of machine learning models by evaluating predefined rules." + kind_description: ClassVar[str] = ( + "SageMaker Profiler Rule Evaluation Status is a feature in Amazon SageMaker" + " that allows users to monitor and assess the performance of machine learning" + " models by evaluating predefined rules." + ) mapping: ClassVar[Dict[str, Bender]] = { "rule_configuration_name": S("RuleConfigurationName"), "rule_evaluation_job_arn": S("RuleEvaluationJobArn"), @@ -4693,7 +5433,12 @@ class AwsSagemakerProfilerRuleEvaluationStatus: class AwsSagemakerWarmPoolStatus: kind: ClassVar[str] = "aws_sagemaker_warm_pool_status" kind_display: ClassVar[str] = "AWS SageMaker Warm Pool Status" - kind_description: ClassVar[str] = "SageMaker Warm Pool Status refers to the current state of a warm pool in AWS SageMaker, which is a collection of pre-initialized instances that can be used to speed up the deployment and inference process for machine learning models." + kind_description: ClassVar[str] = ( + "SageMaker Warm Pool Status refers to the current state of a warm pool in AWS" + " SageMaker, which is a collection of pre-initialized instances that can be" + " used to speed up the deployment and inference process for machine learning" + " models." + ) mapping: ClassVar[Dict[str, Bender]] = { "status": S("Status"), "resource_retained_billable_time_in_seconds": S("ResourceRetainedBillableTimeInSeconds"), @@ -4708,7 +5453,10 @@ class AwsSagemakerWarmPoolStatus: class AwsSagemakerTrainingJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_training_job" kind_display: ClassVar[str] = "AWS SageMaker Training Job" - kind_description: ClassVar[str] = "SageMaker Training Job is a service provided by AWS that allows users to train machine learning models and build high-quality custom models." + kind_description: ClassVar[str] = ( + "SageMaker Training Job is a service provided by AWS that allows users to" + " train machine learning models and build high-quality custom models." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ @@ -4894,7 +5642,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsSagemakerModelClientConfig: kind: ClassVar[str] = "aws_sagemaker_model_client_config" kind_display: ClassVar[str] = "AWS SageMaker Model Client Config" - kind_description: ClassVar[str] = "SageMaker Model Client Config is a configuration for the SageMaker Python SDK to interact with SageMaker models. It contains information such as the endpoint name, instance type, and model name." + kind_description: ClassVar[str] = ( + "SageMaker Model Client Config is a configuration for the SageMaker Python" + " SDK to interact with SageMaker models. It contains information such as the" + " endpoint name, instance type, and model name." + ) mapping: ClassVar[Dict[str, Bender]] = { "invocations_timeout_in_seconds": S("InvocationsTimeoutInSeconds"), "invocations_max_retries": S("InvocationsMaxRetries"), @@ -4907,7 +5659,11 @@ class AwsSagemakerModelClientConfig: class AwsSagemakerBatchDataCaptureConfig: kind: ClassVar[str] = "aws_sagemaker_batch_data_capture_config" kind_display: ClassVar[str] = "AWS SageMaker Batch Data Capture Config" - kind_description: ClassVar[str] = "SageMaker Batch Data Capture Config is a feature of AWS SageMaker that allows capturing data for model monitoring and analysis during batch processing." + kind_description: ClassVar[str] = ( + "SageMaker Batch Data Capture Config is a feature of AWS SageMaker that" + " allows capturing data for model monitoring and analysis during batch" + " processing." + ) mapping: ClassVar[Dict[str, Bender]] = { "destination_s3_uri": S("DestinationS3Uri"), "kms_key_id": S("KmsKeyId"), @@ -4922,7 +5678,11 @@ class AwsSagemakerBatchDataCaptureConfig: class AwsSagemakerDataProcessing: kind: ClassVar[str] = "aws_sagemaker_data_processing" kind_display: ClassVar[str] = "AWS SageMaker Data Processing" - kind_description: ClassVar[str] = "SageMaker Data Processing is a service offered by AWS that allows data scientists and developers to easily preprocess and transform large amounts of data for machine learning purposes." + kind_description: ClassVar[str] = ( + "SageMaker Data Processing is a service offered by AWS that allows data" + " scientists and developers to easily preprocess and transform large amounts" + " of data for machine learning purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "input_filter": S("InputFilter"), "output_filter": S("OutputFilter"), @@ -4937,7 +5697,11 @@ class AwsSagemakerDataProcessing: class AwsSagemakerTransformJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_transform_job" kind_display: ClassVar[str] = "AWS SageMaker Transform Job" - kind_description: ClassVar[str] = "SageMaker Transform Jobs are used in Amazon SageMaker to transform input data using a trained model, generating output results for further analysis or inference." + kind_description: ClassVar[str] = ( + "SageMaker Transform Jobs are used in Amazon SageMaker to transform input" + " data using a trained model, generating output results for further analysis" + " or inference." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": [ diff --git a/plugins/aws/resoto_plugin_aws/resource/service_quotas.py b/plugins/aws/resoto_plugin_aws/resource/service_quotas.py index 9ac8339fa2..1be2543dd3 100644 --- a/plugins/aws/resoto_plugin_aws/resource/service_quotas.py +++ b/plugins/aws/resoto_plugin_aws/resource/service_quotas.py @@ -19,7 +19,10 @@ class AwsQuotaMetricInfo: kind: ClassVar[str] = "aws_quota_metric_info" kind_display: ClassVar[str] = "AWS Quota Metric Info" - kind_description: ClassVar[str] = "Quota Metric Info provides information about the quotas and limits set for various services and resource types in Amazon Web Services." + kind_description: ClassVar[str] = ( + "Quota Metric Info provides information about the quotas and limits set for" + " various services and resource types in Amazon Web Services." + ) mapping: ClassVar[Dict[str, Bender]] = { "metric_namespace": S("MetricNamespace"), "metric_name": S("MetricName"), @@ -36,7 +39,10 @@ class AwsQuotaMetricInfo: class AwsQuotaPeriod: kind: ClassVar[str] = "aws_quota_period" kind_display: ClassVar[str] = "AWS Quota Period" - kind_description: ClassVar[str] = "Quota Period refers to the timeframe for which resource usage is measured and restrictions are imposed by AWS." + kind_description: ClassVar[str] = ( + "Quota Period refers to the timeframe for which resource usage is measured" + " and restrictions are imposed by AWS." + ) mapping: ClassVar[Dict[str, Bender]] = {"period_value": S("PeriodValue"), "period_unit": S("PeriodUnit")} period_value: Optional[int] = field(default=None) period_unit: Optional[str] = field(default=None) @@ -46,7 +52,11 @@ class AwsQuotaPeriod: class AwsQuotaErrorReason: kind: ClassVar[str] = "aws_quota_error_reason" kind_display: ClassVar[str] = "AWS Quota Error Reason" - kind_description: ClassVar[str] = "AWS Quota Error Reason refers to the reason for a quota error in Amazon Web Services. It indicates the cause of exceeding the resource limits set by AWS quotas." + kind_description: ClassVar[str] = ( + "AWS Quota Error Reason refers to the reason for a quota error in Amazon Web" + " Services. It indicates the cause of exceeding the resource limits set by AWS" + " quotas." + ) mapping: ClassVar[Dict[str, Bender]] = {"error_code": S("ErrorCode"), "error_message": S("ErrorMessage")} error_code: Optional[str] = field(default=None) error_message: Optional[str] = field(default=None) @@ -56,7 +66,10 @@ class AwsQuotaErrorReason: class AwsServiceQuota(AwsResource, BaseQuota): kind: ClassVar[str] = "aws_service_quota" kind_display: ClassVar[str] = "AWS Service Quota" - kind_description: ClassVar[str] = "AWS Service Quota is a feature that enables you to view and manage your quotas (also referred to as limits) for AWS services." + kind_description: ClassVar[str] = ( + "AWS Service Quota is a feature that enables you to view and manage your" + " quotas (also referred to as limits) for AWS services." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ diff --git a/plugins/aws/resoto_plugin_aws/resource/sns.py b/plugins/aws/resoto_plugin_aws/resource/sns.py index 43a425c3d8..38a76bfd3a 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sns.py +++ b/plugins/aws/resoto_plugin_aws/resource/sns.py @@ -17,7 +17,12 @@ class AwsSnsTopic(AwsResource): kind: ClassVar[str] = "aws_sns_topic" kind_display: ClassVar[str] = "AWS SNS Topic" - kind_description: ClassVar[str] = "AWS SNS (Simple Notification Service) Topic is a publish-subscribe messaging service provided by Amazon Web Services. It allows applications, services, and devices to send and receive notifications via email, SMS, push notifications, and more." + kind_description: ClassVar[str] = ( + "AWS SNS (Simple Notification Service) Topic is a publish-subscribe messaging" + " service provided by Amazon Web Services. It allows applications, services," + " and devices to send and receive notifications via email, SMS, push" + " notifications, and more." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-topics", "Topics") reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -118,7 +123,11 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSnsSubscription(AwsResource): kind: ClassVar[str] = "aws_sns_subscription" kind_display: ClassVar[str] = "AWS SNS Subscription" - kind_description: ClassVar[str] = "SNS Subscriptions in AWS allow applications to receive messages from topics of interest using different protocols such as HTTP, email, SMS, or Lambda function invocation." + kind_description: ClassVar[str] = ( + "SNS Subscriptions in AWS allow applications to receive messages from topics" + " of interest using different protocols such as HTTP, email, SMS, or Lambda" + " function invocation." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-subscriptions", "Subscriptions") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_sns_topic", "aws_iam_role"], "delete": ["aws_iam_role"]}, @@ -197,7 +206,11 @@ class AwsSnsEndpoint(AwsResource): # collection of endpoint resources happens in AwsSnsPlatformApplication.collect() kind: ClassVar[str] = "aws_sns_endpoint" kind_display: ClassVar[str] = "AWS SNS Endpoint" - kind_description: ClassVar[str] = "An endpoint in the AWS Simple Notification Service (SNS), which is used to send push notifications or SMS messages to mobile devices or other applications." + kind_description: ClassVar[str] = ( + "An endpoint in the AWS Simple Notification Service (SNS), which is used to" + " send push notifications or SMS messages to mobile devices or other" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Arn"), "arn": S("Arn"), @@ -224,7 +237,11 @@ def service_name(cls) -> str: class AwsSnsPlatformApplication(AwsResource): kind: ClassVar[str] = "aws_sns_platform_application" kind_display: ClassVar[str] = "AWS SNS Platform Application" - kind_description: ClassVar[str] = "AWS SNS Platform Application is a service that allows you to create a platform application and register it with Amazon SNS so that your application can receive push notifications." + kind_description: ClassVar[str] = ( + "AWS SNS Platform Application is a service that allows you to create a" + " platform application and register it with Amazon SNS so that your" + " application can receive push notifications." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-platform-applications", "PlatformApplications", expected_errors=["InvalidAction"] ) diff --git a/plugins/aws/resoto_plugin_aws/resource/sqs.py b/plugins/aws/resoto_plugin_aws/resource/sqs.py index 331af5a2a3..f346bbf085 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sqs.py +++ b/plugins/aws/resoto_plugin_aws/resource/sqs.py @@ -19,7 +19,11 @@ class AwsSqsRedrivePolicy: kind: ClassVar[str] = "aws_sqs_redrive_policy" kind_display: ClassVar[str] = "AWS SQS Redrive Policy" - kind_description: ClassVar[str] = "The AWS SQS Redrive Policy enables you to configure dead-letter queues for your Amazon Simple Queue Service (SQS) queues. Dead-letter queues are used to store messages that cannot be processed successfully by the main queue." + kind_description: ClassVar[str] = ( + "The AWS SQS Redrive Policy enables you to configure dead-letter queues for" + " your Amazon Simple Queue Service (SQS) queues. Dead-letter queues are used" + " to store messages that cannot be processed successfully by the main queue." + ) mapping: ClassVar[Dict[str, Bender]] = { "dead_letter_target_arn": S("deadLetterTargetArn"), "max_receive_count": S("maxReceiveCount"), @@ -32,7 +36,11 @@ class AwsSqsRedrivePolicy: class AwsSqsQueue(AwsResource): kind: ClassVar[str] = "aws_sqs_queue" kind_display: ClassVar[str] = "AWS SQS Queue" - kind_description: ClassVar[str] = "SQS (Simple Queue Service) is a fully managed message queuing service provided by Amazon Web Services. It enables you to decouple and scale microservices, distributed systems, and serverless applications." + kind_description: ClassVar[str] = ( + "SQS (Simple Queue Service) is a fully managed message queuing service" + " provided by Amazon Web Services. It enables you to decouple and scale" + " microservices, distributed systems, and serverless applications." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-queues", "QueueUrls") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_kms_key"]}, From 9588776cbaa4020c9ca4e2bb50705936b1bb798d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Wed, 1 Nov 2023 23:59:46 +0100 Subject: [PATCH 13/27] Update GCP linefeeds --- .../gcp/resoto_plugin_gcp/resources/base.py | 42 +- .../resoto_plugin_gcp/resources/billing.py | 59 +- .../resoto_plugin_gcp/resources/compute.py | 1454 ++++++++++++++--- .../resoto_plugin_gcp/resources/container.py | 344 +++- .../resoto_plugin_gcp/resources/sqladmin.py | 219 ++- .../resoto_plugin_gcp/resources/storage.py | 101 +- 6 files changed, 1838 insertions(+), 381 deletions(-) diff --git a/plugins/gcp/resoto_plugin_gcp/resources/base.py b/plugins/gcp/resoto_plugin_gcp/resources/base.py index 2d2c118dc0..f7f6cbb444 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/base.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/base.py @@ -260,7 +260,11 @@ def for_region(self, region: GcpRegion) -> GraphBuilder: class GcpResource(BaseResource): kind: ClassVar[str] = "gcp_resource" kind_display: ClassVar[str] = "GCP Resource" - kind_description: ClassVar[str] = "GCP Resource refers to any resource or service available on the Google Cloud Platform, such as virtual machines, databases, storage buckets, and networking components." + kind_description: ClassVar[str] = ( + "GCP Resource refers to any resource or service available on the Google Cloud" + " Platform, such as virtual machines, databases, storage buckets, and" + " networking components." + ) api_spec: ClassVar[Optional[GcpApiSpec]] = None mapping: ClassVar[Dict[str, Bender]] = {} @@ -410,14 +414,21 @@ def called_mutator_apis(cls) -> List[GcpApiSpec]: class GcpProject(GcpResource, BaseAccount): kind: ClassVar[str] = "gcp_project" kind_display: ClassVar[str] = "GCP Project" - kind_description: ClassVar[str] = "A GCP Project is a container for resources in the Google Cloud Platform, allowing users to organize and manage their cloud resources." + kind_description: ClassVar[str] = ( + "A GCP Project is a container for resources in the Google Cloud Platform," + " allowing users to organize and manage their cloud resources." + ) @define(eq=False, slots=False) class GcpDeprecationStatus: kind: ClassVar[str] = "gcp_deprecation_status" kind_display: ClassVar[str] = "GCP Deprecation Status" - kind_description: ClassVar[str] = "GCP Deprecation Status is a feature in Google Cloud Platform that provides information about the deprecation status of various resources and services, helping users stay updated on any upcoming changes or removals." + kind_description: ClassVar[str] = ( + "GCP Deprecation Status is a feature in Google Cloud Platform that provides" + " information about the deprecation status of various resources and services," + " helping users stay updated on any upcoming changes or removals." + ) mapping: ClassVar[Dict[str, Bender]] = { "deleted": S("deleted"), "deprecated": S("deprecated"), @@ -436,7 +447,12 @@ class GcpDeprecationStatus: class GcpLimit: kind: ClassVar[str] = "gcp_quota" kind_display: ClassVar[str] = "GCP Quota" - kind_description: ClassVar[str] = "Quota in GCP (Google Cloud Platform) represents the maximum limit of resources that can be used for a particular service, such as compute instances, storage, or API calls. It ensures resource availability and helps manage usage and costs." + kind_description: ClassVar[str] = ( + "Quota in GCP (Google Cloud Platform) represents the maximum limit of" + " resources that can be used for a particular service, such as compute" + " instances, storage, or API calls. It ensures resource availability and helps" + " manage usage and costs." + ) mapping: ClassVar[Dict[str, Bender]] = { "limit": S("limit"), "usage": S("usage"), @@ -451,7 +467,11 @@ class GcpLimit: class GcpRegionQuota(GcpResource): kind: ClassVar[str] = "gcp_region_quota" kind_display: ClassVar[str] = "GCP Region Quota" - kind_description: ClassVar[str] = "Region Quota in GCP refers to the maximum limits of resources that can be provisioned in a specific region, such as compute instances, storage, or networking resources." + kind_description: ClassVar[str] = ( + "Region Quota in GCP refers to the maximum limits of resources that can be" + " provisioned in a specific region, such as compute instances, storage, or" + " networking resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("name").or_else(S("id")).or_else(S("selfLink")), "name": S("name"), @@ -468,7 +488,10 @@ class GcpRegionQuota(GcpResource): class GcpRegion(GcpResource, BaseRegion): kind: ClassVar[str] = "gcp_region" kind_display: ClassVar[str] = "GCP Region" - kind_description: ClassVar[str] = "A GCP Region is a specific geographical location where Google Cloud Platform resources are deployed and run." + kind_description: ClassVar[str] = ( + "A GCP Region is a specific geographical location where Google Cloud Platform" + " resources are deployed and run." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -515,7 +538,12 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpZone(GcpResource, BaseZone): kind: ClassVar[str] = "gcp_zone" kind_display: ClassVar[str] = "GCP Zone" - kind_description: ClassVar[str] = "A GCP Zone is a specific geographic location where Google Cloud Platform resources can be deployed. Zones are isolated from each other within a region, providing fault tolerance and high availability for applications and services." + kind_description: ClassVar[str] = ( + "A GCP Zone is a specific geographic location where Google Cloud Platform" + " resources can be deployed. Zones are isolated from each other within a" + " region, providing fault tolerance and high availability for applications and" + " services." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/billing.py b/plugins/gcp/resoto_plugin_gcp/resources/billing.py index dfcd716ab0..2d3ce91730 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/billing.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/billing.py @@ -18,7 +18,10 @@ class GcpBillingAccount(GcpResource): kind: ClassVar[str] = "gcp_billing_account" kind_display: ClassVar[str] = "GCP Billing Account" - kind_description: ClassVar[str] = "GCP Billing Account is a financial account used to manage the payment and billing information for Google Cloud Platform services." + kind_description: ClassVar[str] = ( + "GCP Billing Account is a financial account used to manage the payment and" + " billing information for Google Cloud Platform services." + ) reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["gcp_project_billing_info"]}, } @@ -65,7 +68,10 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: class GcpProjectBillingInfo(GcpResource): kind: ClassVar[str] = "gcp_project_billing_info" kind_display: ClassVar[str] = "GCP Project Billing Info" - kind_description: ClassVar[str] = "GCP Project Billing Info provides information and management capabilities for the billing aspects of a Google Cloud Platform project." + kind_description: ClassVar[str] = ( + "GCP Project Billing Info provides information and management capabilities" + " for the billing aspects of a Google Cloud Platform project." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="cloudbilling", version="v1", @@ -102,7 +108,11 @@ class GcpProjectBillingInfo(GcpResource): class GcpService(GcpResource): kind: ClassVar[str] = "gcp_service" kind_display: ClassVar[str] = "GCP Service" - kind_description: ClassVar[str] = "GCP Service refers to any of the various services and products offered by Google Cloud Platform, which provide scalable cloud computing solutions for businesses and developers." + kind_description: ClassVar[str] = ( + "GCP Service refers to any of the various services and products offered by" + " Google Cloud Platform, which provide scalable cloud computing solutions for" + " businesses and developers." + ) reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["gcp_sku"]}, } @@ -165,7 +175,10 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: class GcpCategory: kind: ClassVar[str] = "gcp_category" kind_display: ClassVar[str] = "GCP Category" - kind_description: ClassVar[str] = "GCP Category is a classification system used by Google Cloud Platform to organize various cloud resources and services into different categories." + kind_description: ClassVar[str] = ( + "GCP Category is a classification system used by Google Cloud Platform to" + " organize various cloud resources and services into different categories." + ) mapping: ClassVar[Dict[str, Bender]] = { "resource_family": S("resourceFamily"), "resource_group": S("resourceGroup"), @@ -182,7 +195,11 @@ class GcpCategory: class GcpGeoTaxonomy: kind: ClassVar[str] = "gcp_geo_taxonomy" kind_display: ClassVar[str] = "GCP Geo Taxonomy" - kind_description: ClassVar[str] = "GCP Geo Taxonomy is a resource in Google Cloud Platform that provides a hierarchical taxonomy for geographic locations, ensuring consistent and accurate data for geospatial analysis and visualization." + kind_description: ClassVar[str] = ( + "GCP Geo Taxonomy is a resource in Google Cloud Platform that provides a" + " hierarchical taxonomy for geographic locations, ensuring consistent and" + " accurate data for geospatial analysis and visualization." + ) mapping: ClassVar[Dict[str, Bender]] = {"regions": S("regions", default=[]), "type": S("type")} regions: List[str] = field(factory=list) type: Optional[str] = field(default=None) @@ -192,7 +209,11 @@ class GcpGeoTaxonomy: class GcpAggregationInfo: kind: ClassVar[str] = "gcp_aggregation_info" kind_display: ClassVar[str] = "GCP Aggregation Info" - kind_description: ClassVar[str] = "GCP Aggregation Info refers to aggregated data about resources in Google Cloud Platform, providing insights and metrics for monitoring and analysis purposes." + kind_description: ClassVar[str] = ( + "GCP Aggregation Info refers to aggregated data about resources in Google" + " Cloud Platform, providing insights and metrics for monitoring and analysis" + " purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "aggregation_count": S("aggregationCount"), "aggregation_interval": S("aggregationInterval"), @@ -207,7 +228,9 @@ class GcpAggregationInfo: class GcpMoney: kind: ClassVar[str] = "gcp_money" kind_display: ClassVar[str] = "GCP Money" - kind_description: ClassVar[str] = "Sorry, there is no known resource or service called GCP Money." + kind_description: ClassVar[str] = ( + "Sorry, there is no known resource or service called GCP Money." + ) mapping: ClassVar[Dict[str, Bender]] = { "currency_code": S("currencyCode"), "nanos": S("nanos"), @@ -222,7 +245,11 @@ class GcpMoney: class GcpTierRate: kind: ClassVar[str] = "gcp_tier_rate" kind_display: ClassVar[str] = "GCP Tier Rate" - kind_description: ClassVar[str] = "GCP Tier Rate refers to the pricing tiers for different levels of usage of Google Cloud Platform services. Higher tiers typically offer discounted rates for increased usage volumes." + kind_description: ClassVar[str] = ( + "GCP Tier Rate refers to the pricing tiers for different levels of usage of" + " Google Cloud Platform services. Higher tiers typically offer discounted" + " rates for increased usage volumes." + ) mapping: ClassVar[Dict[str, Bender]] = { "start_usage_amount": S("startUsageAmount"), "unit_price": S("unitPrice", default={}) >> Bend(GcpMoney.mapping), @@ -235,7 +262,11 @@ class GcpTierRate: class GcpPricingExpression: kind: ClassVar[str] = "gcp_pricing_expression" kind_display: ClassVar[str] = "GCP Pricing Expression" - kind_description: ClassVar[str] = "GCP Pricing Expression is a mechanism used in Google Cloud Platform to calculate the cost of resources and services based on configuration and usage." + kind_description: ClassVar[str] = ( + "GCP Pricing Expression is a mechanism used in Google Cloud Platform to" + " calculate the cost of resources and services based on configuration and" + " usage." + ) mapping: ClassVar[Dict[str, Bender]] = { "base_unit": S("baseUnit"), "base_unit_conversion_factor": S("baseUnitConversionFactor"), @@ -258,7 +289,10 @@ class GcpPricingExpression: class GcpPricingInfo: kind: ClassVar[str] = "gcp_pricing_info" kind_display: ClassVar[str] = "GCP Pricing Info" - kind_description: ClassVar[str] = "GCP Pricing Info provides information on the pricing models and costs associated with using Google Cloud Platform services." + kind_description: ClassVar[str] = ( + "GCP Pricing Info provides information on the pricing models and costs" + " associated with using Google Cloud Platform services." + ) mapping: ClassVar[Dict[str, Bender]] = { "aggregation_info": S("aggregationInfo", default={}) >> Bend(GcpAggregationInfo.mapping), "currency_conversion_rate": S("currencyConversionRate"), @@ -277,7 +311,10 @@ class GcpPricingInfo: class GcpSku(GcpResource): kind: ClassVar[str] = "gcp_sku" kind_display: ClassVar[str] = "GCP SKU" - kind_description: ClassVar[str] = "GCP SKU represents a Stock Keeping Unit in Google Cloud Platform, providing unique identifiers for different resources and services." + kind_description: ClassVar[str] = ( + "GCP SKU represents a Stock Keeping Unit in Google Cloud Platform, providing" + " unique identifiers for different resources and services." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="cloudbilling", version="v1", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/compute.py b/plugins/gcp/resoto_plugin_gcp/resources/compute.py index d22b26140f..e7790536fb 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/compute.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/compute.py @@ -34,7 +34,11 @@ def health_check_types() -> Tuple[Type[GcpResource], ...]: class GcpAcceleratorType(GcpResource): kind: ClassVar[str] = "gcp_accelerator_type" kind_display: ClassVar[str] = "GCP Accelerator Type" - kind_description: ClassVar[str] = "GCP Accelerator Types are specialized hardware accelerators offered by Google Cloud Platform (GCP) that are designed to enhance the performance of certain workloads, such as machine learning models or graphics processing." + kind_description: ClassVar[str] = ( + "GCP Accelerator Types are specialized hardware accelerators offered by" + " Google Cloud Platform (GCP) that are designed to enhance the performance of" + " certain workloads, such as machine learning models or graphics processing." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -64,7 +68,11 @@ class GcpAcceleratorType(GcpResource): class GcpAddress(GcpResource): kind: ClassVar[str] = "gcp_address" kind_display: ClassVar[str] = "GCP Address" - kind_description: ClassVar[str] = "GCP Address is a resource in Google Cloud Platform that provides a static IP address for virtual machine instances or other resources within the Google Cloud network." + kind_description: ClassVar[str] = ( + "GCP Address is a resource in Google Cloud Platform that provides a static IP" + " address for virtual machine instances or other resources within the Google" + " Cloud network." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_subnetwork"]}, "successors": { @@ -125,7 +133,12 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpAutoscalingPolicyCpuUtilization: kind: ClassVar[str] = "gcp_autoscaling_policy_cpu_utilization" kind_display: ClassVar[str] = "GCP Autoscaling Policy - CPU Utilization" - kind_description: ClassVar[str] = "GCP Autoscaling Policy - CPU Utilization is a resource in Google Cloud Platform that allows for automatic scaling of resources based on CPU utilization metrics. This helps optimize resource allocation and ensures optimal performance." + kind_description: ClassVar[str] = ( + "GCP Autoscaling Policy - CPU Utilization is a resource in Google Cloud" + " Platform that allows for automatic scaling of resources based on CPU" + " utilization metrics. This helps optimize resource allocation and ensures" + " optimal performance." + ) mapping: ClassVar[Dict[str, Bender]] = { "predictive_method": S("predictiveMethod"), "utilization_target": S("utilizationTarget"), @@ -138,7 +151,11 @@ class GcpAutoscalingPolicyCpuUtilization: class GcpAutoscalingPolicyCustomMetricUtilization: kind: ClassVar[str] = "gcp_autoscaling_policy_custom_metric_utilization" kind_display: ClassVar[str] = "GCP Autoscaling Policy Custom Metric Utilization" - kind_description: ClassVar[str] = "GCP Autoscaling Policy Custom Metric Utilization is a feature in Google Cloud Platform that allows users to define custom metrics to automatically scale resources based on specific utilization levels." + kind_description: ClassVar[str] = ( + "GCP Autoscaling Policy Custom Metric Utilization is a feature in Google" + " Cloud Platform that allows users to define custom metrics to automatically" + " scale resources based on specific utilization levels." + ) mapping: ClassVar[Dict[str, Bender]] = { "filter": S("filter"), "metric": S("metric"), @@ -157,7 +174,11 @@ class GcpAutoscalingPolicyCustomMetricUtilization: class GcpFixedOrPercent: kind: ClassVar[str] = "gcp_fixed_or_percent" kind_display: ClassVar[str] = "GCP Fixed or Percent" - kind_description: ClassVar[str] = "GCP Fixed or Percent is a pricing model in Google Cloud Platform where users can choose to pay a fixed cost or a percentage of the actual usage for a particular resource or service." + kind_description: ClassVar[str] = ( + "GCP Fixed or Percent is a pricing model in Google Cloud Platform where users" + " can choose to pay a fixed cost or a percentage of the actual usage for a" + " particular resource or service." + ) mapping: ClassVar[Dict[str, Bender]] = {"calculated": S("calculated"), "fixed": S("fixed"), "percent": S("percent")} calculated: Optional[int] = field(default=None) fixed: Optional[int] = field(default=None) @@ -168,7 +189,11 @@ class GcpFixedOrPercent: class GcpAutoscalingPolicyScaleInControl: kind: ClassVar[str] = "gcp_autoscaling_policy_scale_in_control" kind_display: ClassVar[str] = "GCP Autoscaling Policy Scale In Control" - kind_description: ClassVar[str] = "The GCP Autoscaling Policy Scale In Control allows users to control how instances are scaled in during autoscaling events in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "The GCP Autoscaling Policy Scale In Control allows users to control how" + " instances are scaled in during autoscaling events in the Google Cloud" + " Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_scaled_in_replicas": S("maxScaledInReplicas", default={}) >> Bend(GcpFixedOrPercent.mapping), "time_window_sec": S("timeWindowSec"), @@ -181,7 +206,11 @@ class GcpAutoscalingPolicyScaleInControl: class GcpAutoscalingPolicyScalingSchedule: kind: ClassVar[str] = "gcp_autoscaling_policy_scaling_schedule" kind_display: ClassVar[str] = "GCP Autoscaling Policy Scaling Schedule" - kind_description: ClassVar[str] = "A scaling schedule is used in Google Cloud Platform (GCP) autoscaling policies to define when and how many instances should be added or removed from an autoscaling group based on predefined time intervals or conditions." + kind_description: ClassVar[str] = ( + "A scaling schedule is used in Google Cloud Platform (GCP) autoscaling" + " policies to define when and how many instances should be added or removed" + " from an autoscaling group based on predefined time intervals or conditions." + ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "disabled": S("disabled"), @@ -202,7 +231,11 @@ class GcpAutoscalingPolicyScalingSchedule: class GcpAutoscalingPolicy: kind: ClassVar[str] = "gcp_autoscaling_policy" kind_display: ClassVar[str] = "GCP Autoscaling Policy" - kind_description: ClassVar[str] = "Autoscaling policies in Google Cloud Platform allow automatic adjustment of resources based on predefined conditions, ensuring efficient utilization and responsiveness in handling varying workloads." + kind_description: ClassVar[str] = ( + "Autoscaling policies in Google Cloud Platform allow automatic adjustment of" + " resources based on predefined conditions, ensuring efficient utilization and" + " responsiveness in handling varying workloads." + ) mapping: ClassVar[Dict[str, Bender]] = { "cool_down_period_sec": S("coolDownPeriodSec"), "cpu_utilization": S("cpuUtilization", default={}) >> Bend(GcpAutoscalingPolicyCpuUtilization.mapping), @@ -231,7 +264,11 @@ class GcpAutoscalingPolicy: class GcpScalingScheduleStatus: kind: ClassVar[str] = "gcp_scaling_schedule_status" kind_display: ClassVar[str] = "GCP Scaling Schedule Status" - kind_description: ClassVar[str] = "GCP Scaling Schedule Status represents the current status of a scaling schedule in Google Cloud Platform, providing information about when and how the scaling is performed." + kind_description: ClassVar[str] = ( + "GCP Scaling Schedule Status represents the current status of a scaling" + " schedule in Google Cloud Platform, providing information about when and how" + " the scaling is performed." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_start_time": S("lastStartTime"), "next_start_time": S("nextStartTime"), @@ -246,7 +283,10 @@ class GcpScalingScheduleStatus: class GcpAutoscalerStatusDetails: kind: ClassVar[str] = "gcp_autoscaler_status_details" kind_display: ClassVar[str] = "GCP Autoscaler Status Details" - kind_description: ClassVar[str] = "Autoscaler Status Details provide information about the scaling behavior of an autoscaler in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "Autoscaler Status Details provide information about the scaling behavior of" + " an autoscaler in the Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"message": S("message"), "type": S("type")} message: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -256,7 +296,11 @@ class GcpAutoscalerStatusDetails: class GcpAutoscaler(GcpResource): kind: ClassVar[str] = "gcp_autoscaler" kind_display: ClassVar[str] = "GCP Autoscaler" - kind_description: ClassVar[str] = "GCP Autoscaler is a feature in Google Cloud Platform that automatically adjusts the number of instances in a managed instance group based on the workload, helping to maintain cost efficiency and performance." + kind_description: ClassVar[str] = ( + "GCP Autoscaler is a feature in Google Cloud Platform that automatically" + " adjusts the number of instances in a managed instance group based on the" + " workload, helping to maintain cost efficiency and performance." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["gcp_instance_group_manager"], @@ -309,7 +353,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpBackendBucketCdnPolicyCacheKeyPolicy: kind: ClassVar[str] = "gcp_backend_bucket_cdn_policy_cache_key_policy" kind_display: ClassVar[str] = "GCP Backend Bucket CDN Policy Cache Key Policy" - kind_description: ClassVar[str] = "The GCP Backend Bucket CDN Policy Cache Key Policy is a policy that specifies how content is cached on the CDN (Content Delivery Network) for a backend bucket in Google Cloud Platform (GCP)." + kind_description: ClassVar[str] = ( + "The GCP Backend Bucket CDN Policy Cache Key Policy is a policy that" + " specifies how content is cached on the CDN (Content Delivery Network) for a" + " backend bucket in Google Cloud Platform (GCP)." + ) mapping: ClassVar[Dict[str, Bender]] = { "include_http_headers": S("includeHttpHeaders", default=[]), "query_string_whitelist": S("queryStringWhitelist", default=[]), @@ -322,7 +370,12 @@ class GcpBackendBucketCdnPolicyCacheKeyPolicy: class GcpBackendBucketCdnPolicyNegativeCachingPolicy: kind: ClassVar[str] = "gcp_backend_bucket_cdn_policy_negative_caching_policy" kind_display: ClassVar[str] = "GCP Backend Bucket CDN Policy Negative Caching Policy" - kind_description: ClassVar[str] = "This resource represents the negative caching policy of a CDN policy for a Google Cloud Platform backend bucket. Negative caching allows the CDN to cache and serve error responses to clients, improving performance and reducing load on the backend servers." + kind_description: ClassVar[str] = ( + "This resource represents the negative caching policy of a CDN policy for a" + " Google Cloud Platform backend bucket. Negative caching allows the CDN to" + " cache and serve error responses to clients, improving performance and" + " reducing load on the backend servers." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("code"), "ttl": S("ttl")} code: Optional[int] = field(default=None) ttl: Optional[int] = field(default=None) @@ -332,7 +385,12 @@ class GcpBackendBucketCdnPolicyNegativeCachingPolicy: class GcpBackendBucketCdnPolicy: kind: ClassVar[str] = "gcp_backend_bucket_cdn_policy" kind_display: ClassVar[str] = "GCP Backend Bucket CDN Policy" - kind_description: ClassVar[str] = "CDN Policy is a feature in Google Cloud Platform that allows you to configure the behavior of the Content Delivery Network (CDN) for a Backend Bucket. It includes settings such as cache expiration, cache control, and content encoding." + kind_description: ClassVar[str] = ( + "CDN Policy is a feature in Google Cloud Platform that allows you to" + " configure the behavior of the Content Delivery Network (CDN) for a Backend" + " Bucket. It includes settings such as cache expiration, cache control, and" + " content encoding." + ) mapping: ClassVar[Dict[str, Bender]] = { "bypass_cache_on_request_headers": S("bypassCacheOnRequestHeaders", default=[]) >> ForallBend(S("headerName")), "cache_key_policy": S("cacheKeyPolicy", default={}) >> Bend(GcpBackendBucketCdnPolicyCacheKeyPolicy.mapping), @@ -366,7 +424,10 @@ class GcpBackendBucketCdnPolicy: class GcpBackendBucket(GcpResource): kind: ClassVar[str] = "gcp_backend_bucket" kind_display: ClassVar[str] = "GCP Backend Bucket" - kind_description: ClassVar[str] = "A GCP Backend Bucket is a storage bucket used to distribute static content for a load balanced website or application running on Google Cloud Platform." + kind_description: ClassVar[str] = ( + "A GCP Backend Bucket is a storage bucket used to distribute static content" + " for a load balanced website or application running on Google Cloud Platform." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -406,7 +467,12 @@ class GcpBackendBucket(GcpResource): class GcpBackend: kind: ClassVar[str] = "gcp_backend" kind_display: ClassVar[str] = "GCP Backend" - kind_description: ClassVar[str] = "A GCP backend refers to the infrastructure and services that power applications and services on the Google Cloud Platform. It includes compute, storage, networking, and other resources needed to support the backend operations of GCP applications." + kind_description: ClassVar[str] = ( + "A GCP backend refers to the infrastructure and services that power" + " applications and services on the Google Cloud Platform. It includes compute," + " storage, networking, and other resources needed to support the backend" + " operations of GCP applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "balancing_mode": S("balancingMode"), "capacity_scaler": S("capacityScaler"), @@ -439,7 +505,10 @@ class GcpBackend: class GcpCacheKeyPolicy: kind: ClassVar[str] = "gcp_cache_key_policy" kind_display: ClassVar[str] = "GCP Cache Key Policy" - kind_description: ClassVar[str] = "A cache key policy in Google Cloud Platform (GCP) is used to define the criteria for caching content in a cache storage system." + kind_description: ClassVar[str] = ( + "A cache key policy in Google Cloud Platform (GCP) is used to define the" + " criteria for caching content in a cache storage system." + ) mapping: ClassVar[Dict[str, Bender]] = { "include_host": S("includeHost"), "include_http_headers": S("includeHttpHeaders", default=[]), @@ -462,7 +531,11 @@ class GcpCacheKeyPolicy: class GcpBackendServiceCdnPolicyNegativeCachingPolicy: kind: ClassVar[str] = "gcp_backend_service_cdn_policy_negative_caching_policy" kind_display: ClassVar[str] = "GCP Backend Service CDN Policy - Negative Caching Policy" - kind_description: ClassVar[str] = "Negative Caching Policy is a feature of the GCP Backend Service CDN Policy that allows caching of responses with error status codes, reducing the load on the origin server for subsequent requests." + kind_description: ClassVar[str] = ( + "Negative Caching Policy is a feature of the GCP Backend Service CDN Policy" + " that allows caching of responses with error status codes, reducing the load" + " on the origin server for subsequent requests." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("code"), "ttl": S("ttl")} code: Optional[int] = field(default=None) ttl: Optional[int] = field(default=None) @@ -472,7 +545,12 @@ class GcpBackendServiceCdnPolicyNegativeCachingPolicy: class GcpBackendServiceCdnPolicy: kind: ClassVar[str] = "gcp_backend_service_cdn_policy" kind_display: ClassVar[str] = "GCP Backend Service CDN Policy" - kind_description: ClassVar[str] = "A CDN Policy is a configuration that specifies how a content delivery network (CDN) delivers content for a backend service in Google Cloud Platform (GCP). It includes rules for cache settings, cache key preservation, and request routing." + kind_description: ClassVar[str] = ( + "A CDN Policy is a configuration that specifies how a content delivery" + " network (CDN) delivers content for a backend service in Google Cloud" + " Platform (GCP). It includes rules for cache settings, cache key" + " preservation, and request routing." + ) mapping: ClassVar[Dict[str, Bender]] = { "bypass_cache_on_request_headers": S("bypassCacheOnRequestHeaders", default=[]) >> ForallBend(S("headerName")), "cache_key_policy": S("cacheKeyPolicy", default={}) >> Bend(GcpCacheKeyPolicy.mapping), @@ -506,7 +584,11 @@ class GcpBackendServiceCdnPolicy: class GcpCircuitBreakers: kind: ClassVar[str] = "gcp_circuit_breakers" kind_display: ClassVar[str] = "GCP Circuit Breakers" - kind_description: ClassVar[str] = "Circuit breakers in Google Cloud Platform (GCP) are a mechanism used to detect and prevent system failures caused by overloads or faults in distributed systems." + kind_description: ClassVar[str] = ( + "Circuit breakers in Google Cloud Platform (GCP) are a mechanism used to" + " detect and prevent system failures caused by overloads or faults in" + " distributed systems." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_connections": S("maxConnections"), "max_pending_requests": S("maxPendingRequests"), @@ -525,7 +607,11 @@ class GcpCircuitBreakers: class GcpBackendServiceConnectionTrackingPolicy: kind: ClassVar[str] = "gcp_backend_service_connection_tracking_policy" kind_display: ClassVar[str] = "GCP Backend Service Connection Tracking Policy" - kind_description: ClassVar[str] = "GCP Backend Service Connection Tracking Policy is a feature in Google Cloud Platform that allows tracking and monitoring of connections made to backend services." + kind_description: ClassVar[str] = ( + "GCP Backend Service Connection Tracking Policy is a feature in Google Cloud" + " Platform that allows tracking and monitoring of connections made to backend" + " services." + ) mapping: ClassVar[Dict[str, Bender]] = { "connection_persistence_on_unhealthy_backends": S("connectionPersistenceOnUnhealthyBackends"), "enable_strong_affinity": S("enableStrongAffinity"), @@ -542,7 +628,10 @@ class GcpBackendServiceConnectionTrackingPolicy: class GcpDuration: kind: ClassVar[str] = "gcp_duration" kind_display: ClassVar[str] = "GCP Duration" - kind_description: ClassVar[str] = "Duration represents a length of time in Google Cloud Platform (GCP) services." + kind_description: ClassVar[str] = ( + "Duration represents a length of time in Google Cloud Platform (GCP)" + " services." + ) mapping: ClassVar[Dict[str, Bender]] = {"nanos": S("nanos"), "seconds": S("seconds")} nanos: Optional[int] = field(default=None) seconds: Optional[str] = field(default=None) @@ -552,7 +641,11 @@ class GcpDuration: class GcpConsistentHashLoadBalancerSettingsHttpCookie: kind: ClassVar[str] = "gcp_consistent_hash_load_balancer_settings_http_cookie" kind_display: ClassVar[str] = "GCP Consistent Hash Load Balancer with HTTP Cookie" - kind_description: ClassVar[str] = "Consistent Hash Load Balancer with HTTP Cookie is a load balancing setting in Google Cloud Platform (GCP) that uses consistent hashing with the HTTP cookie to route requests to backend services." + kind_description: ClassVar[str] = ( + "Consistent Hash Load Balancer with HTTP Cookie is a load balancing setting" + " in Google Cloud Platform (GCP) that uses consistent hashing with the HTTP" + " cookie to route requests to backend services." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "path": S("path"), @@ -567,7 +660,12 @@ class GcpConsistentHashLoadBalancerSettingsHttpCookie: class GcpConsistentHashLoadBalancerSettings: kind: ClassVar[str] = "gcp_consistent_hash_load_balancer_settings" kind_display: ClassVar[str] = "GCP Consistent Hash Load Balancer Settings" - kind_description: ClassVar[str] = "Consistent Hash Load Balancer Settings in Google Cloud Platform (GCP) allow you to route incoming requests to different backend instances based on the hashed value of certain request components, providing a consistent routing mechanism." + kind_description: ClassVar[str] = ( + "Consistent Hash Load Balancer Settings in Google Cloud Platform (GCP) allow" + " you to route incoming requests to different backend instances based on the" + " hashed value of certain request components, providing a consistent routing" + " mechanism." + ) mapping: ClassVar[Dict[str, Bender]] = { "http_cookie": S("httpCookie", default={}) >> Bend(GcpConsistentHashLoadBalancerSettingsHttpCookie.mapping), "http_header_name": S("httpHeaderName"), @@ -582,7 +680,11 @@ class GcpConsistentHashLoadBalancerSettings: class GcpBackendServiceFailoverPolicy: kind: ClassVar[str] = "gcp_backend_service_failover_policy" kind_display: ClassVar[str] = "GCP Backend Service Failover Policy" - kind_description: ClassVar[str] = "A failover policy for Google Cloud Platform backend services, which determines how traffic is redirected to different backends in the event of a failure." + kind_description: ClassVar[str] = ( + "A failover policy for Google Cloud Platform backend services, which" + " determines how traffic is redirected to different backends in the event of a" + " failure." + ) mapping: ClassVar[Dict[str, Bender]] = { "disable_connection_drain_on_failover": S("disableConnectionDrainOnFailover"), "drop_traffic_if_unhealthy": S("dropTrafficIfUnhealthy"), @@ -597,7 +699,11 @@ class GcpBackendServiceFailoverPolicy: class GcpBackendServiceIAP: kind: ClassVar[str] = "gcp_backend_service_iap" kind_display: ClassVar[str] = "GCP Backend Service IAP" - kind_description: ClassVar[str] = "GCP Backend Service IAP is a feature in Google Cloud Platform that provides Identity-Aware Proxy (IAP) for a backend service, allowing fine-grained access control to the backend resources based on user identity and context." + kind_description: ClassVar[str] = ( + "GCP Backend Service IAP is a feature in Google Cloud Platform that provides" + " Identity-Aware Proxy (IAP) for a backend service, allowing fine-grained" + " access control to the backend resources based on user identity and context." + ) mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("enabled"), "oauth2_client_id": S("oauth2ClientId"), @@ -614,7 +720,13 @@ class GcpBackendServiceIAP: class GcpBackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy: kind: ClassVar[str] = "gcp_backend_service_locality_load_balancing_policy_config_custom_policy" kind_display: ClassVar[str] = "GCP Backend Service Locality Load Balancing Policy Config Custom Policy" - kind_description: ClassVar[str] = "This resource allows customization of the locality load balancing policy configuration for a Google Cloud Platform (GCP) Backend Service. Locality load balancing is a policy that optimizes traffic distribution based on the proximity of backend services to clients, improving the overall performance and latency of the system." + kind_description: ClassVar[str] = ( + "This resource allows customization of the locality load balancing policy" + " configuration for a Google Cloud Platform (GCP) Backend Service. Locality" + " load balancing is a policy that optimizes traffic distribution based on the" + " proximity of backend services to clients, improving the overall performance" + " and latency of the system." + ) mapping: ClassVar[Dict[str, Bender]] = {"data": S("data"), "name": S("name")} data: Optional[str] = field(default=None) name: Optional[str] = field(default=None) @@ -624,7 +736,12 @@ class GcpBackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy: class GcpBackendServiceLocalityLoadBalancingPolicyConfig: kind: ClassVar[str] = "gcp_backend_service_locality_load_balancing_policy_config" kind_display: ClassVar[str] = "GCP Backend Service Locality Load Balancing Policy Config" - kind_description: ClassVar[str] = "This is a configuration for the locality load balancing policy in Google Cloud Platform's Backend Service, which enables routing of traffic to backend instances based on their geographical locality for better performance and availability." + kind_description: ClassVar[str] = ( + "This is a configuration for the locality load balancing policy in Google" + " Cloud Platform's Backend Service, which enables routing of traffic to" + " backend instances based on their geographical locality for better" + " performance and availability." + ) mapping: ClassVar[Dict[str, Bender]] = { "custom_policy": S("customPolicy", default={}) >> Bend(GcpBackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy.mapping), @@ -638,7 +755,11 @@ class GcpBackendServiceLocalityLoadBalancingPolicyConfig: class GcpBackendServiceLogConfig: kind: ClassVar[str] = "gcp_backend_service_log_config" kind_display: ClassVar[str] = "GCP Backend Service Log Config" - kind_description: ClassVar[str] = "Backend Service Log Config allows you to configure logging for a Google Cloud Platform (GCP) backend service, providing visibility into the requests and responses processed by the service." + kind_description: ClassVar[str] = ( + "Backend Service Log Config allows you to configure logging for a Google" + " Cloud Platform (GCP) backend service, providing visibility into the requests" + " and responses processed by the service." + ) mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "sample_rate": S("sampleRate")} enable: Optional[bool] = field(default=None) sample_rate: Optional[float] = field(default=None) @@ -648,7 +769,11 @@ class GcpBackendServiceLogConfig: class GcpOutlierDetection: kind: ClassVar[str] = "gcp_outlier_detection" kind_display: ClassVar[str] = "GCP Outlier Detection" - kind_description: ClassVar[str] = "Outlier Detection in Google Cloud Platform (GCP) is a technique to identify anomalies or outliers in datasets, helping users to detect unusual patterns or behaviors." + kind_description: ClassVar[str] = ( + "Outlier Detection in Google Cloud Platform (GCP) is a technique to identify" + " anomalies or outliers in datasets, helping users to detect unusual patterns" + " or behaviors." + ) mapping: ClassVar[Dict[str, Bender]] = { "base_ejection_time": S("baseEjectionTime", default={}) >> Bend(GcpDuration.mapping), "consecutive_errors": S("consecutiveErrors"), @@ -679,7 +804,11 @@ class GcpOutlierDetection: class GcpSecuritySettings: kind: ClassVar[str] = "gcp_security_settings" kind_display: ClassVar[str] = "GCP Security Settings" - kind_description: ClassVar[str] = "GCP Security Settings refers to the configuration options and policies that are put in place to ensure the security of resources and data on the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Security Settings refers to the configuration options and policies that" + " are put in place to ensure the security of resources and data on the Google" + " Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "client_tls_policy": S("clientTlsPolicy"), "subject_alt_names": S("subjectAltNames", default=[]), @@ -692,7 +821,11 @@ class GcpSecuritySettings: class GcpBackendService(GcpResource): kind: ClassVar[str] = "gcp_backend_service" kind_display: ClassVar[str] = "GCP Backend Service" - kind_description: ClassVar[str] = "GCP Backend Service is a managed load balancing service provided by Google Cloud Platform that allows you to distribute traffic across multiple backends and regions in a flexible and scalable manner." + kind_description: ClassVar[str] = ( + "GCP Backend Service is a managed load balancing service provided by Google" + " Cloud Platform that allows you to distribute traffic across multiple" + " backends and regions in a flexible and scalable manner." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_network"], @@ -817,7 +950,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpDiskType(GcpResource, BaseVolumeType): kind: ClassVar[str] = "gcp_disk_type" kind_display: ClassVar[str] = "GCP Disk Type" - kind_description: ClassVar[str] = "GCP Disk Types are storage options provided by Google Cloud Platform, which define the performance characteristics and pricing of persistent disks." + kind_description: ClassVar[str] = ( + "GCP Disk Types are storage options provided by Google Cloud Platform, which" + " define the performance characteristics and pricing of persistent disks." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -902,7 +1038,11 @@ def sku_filter(sku: GcpSku) -> bool: class GcpCustomerEncryptionKey: kind: ClassVar[str] = "gcp_customer_encryption_key" kind_display: ClassVar[str] = "GCP Customer Encryption Key" - kind_description: ClassVar[str] = "Customer Encryption Keys (CEK) allow Google Cloud Platform customers to encrypt their data using keys that they manage and control, providing an extra layer of security for sensitive data." + kind_description: ClassVar[str] = ( + "Customer Encryption Keys (CEK) allow Google Cloud Platform customers to" + " encrypt their data using keys that they manage and control, providing an" + " extra layer of security for sensitive data." + ) mapping: ClassVar[Dict[str, Bender]] = { "kms_key_name": S("kmsKeyName"), "kms_key_service_account": S("kmsKeyServiceAccount"), @@ -921,7 +1061,11 @@ class GcpCustomerEncryptionKey: class GcpDiskParams: kind: ClassVar[str] = "gcp_disk_params" kind_display: ClassVar[str] = "GCP Disk Params" - kind_description: ClassVar[str] = "GCP Disk Params refers to the parameters associated with disks in the Google Cloud Platform (GCP). Disks in GCP provide a persistent block storage option for virtual machine instances in GCP." + kind_description: ClassVar[str] = ( + "GCP Disk Params refers to the parameters associated with disks in the Google" + " Cloud Platform (GCP). Disks in GCP provide a persistent block storage option" + " for virtual machine instances in GCP." + ) mapping: ClassVar[Dict[str, Bender]] = {"resource_manager_tags": S("resourceManagerTags")} resource_manager_tags: Optional[Dict[str, str]] = field(default=None) @@ -930,7 +1074,10 @@ class GcpDiskParams: class GcpDisk(GcpResource, BaseVolume): kind: ClassVar[str] = "gcp_disk" kind_display: ClassVar[str] = "GCP Disk" - kind_description: ClassVar[str] = "GCP Disk is a persistent block storage service provided by Google Cloud Platform, allowing users to store and manage data in the cloud." + kind_description: ClassVar[str] = ( + "GCP Disk is a persistent block storage service provided by Google Cloud" + " Platform, allowing users to store and manage data in the cloud." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_disk_type", "gcp_instance"]}, "successors": {"delete": ["gcp_instance"]}, @@ -1041,7 +1188,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpExternalVpnGatewayInterface: kind: ClassVar[str] = "gcp_external_vpn_gateway_interface" kind_display: ClassVar[str] = "GCP External VPN Gateway Interface" - kind_description: ClassVar[str] = "External VPN Gateway Interface is a network interface in Google Cloud Platform used to connect on-premises networks to virtual private networks (VPNs) in GCP." + kind_description: ClassVar[str] = ( + "External VPN Gateway Interface is a network interface in Google Cloud" + " Platform used to connect on-premises networks to virtual private networks" + " (VPNs) in GCP." + ) mapping: ClassVar[Dict[str, Bender]] = {"id": S("id"), "ip_address": S("ipAddress")} id: Optional[int] = field(default=None) ip_address: Optional[str] = field(default=None) @@ -1051,7 +1202,11 @@ class GcpExternalVpnGatewayInterface: class GcpExternalVpnGateway(GcpResource): kind: ClassVar[str] = "gcp_external_vpn_gateway" kind_display: ClassVar[str] = "GCP External VPN Gateway" - kind_description: ClassVar[str] = "External VPN Gateway is a virtual network appliance in Google Cloud Platform that allows secure communication between on-premises networks and virtual private clouds (VPCs) over an encrypted connection." + kind_description: ClassVar[str] = ( + "External VPN Gateway is a virtual network appliance in Google Cloud Platform" + " that allows secure communication between on-premises networks and virtual" + " private clouds (VPCs) over an encrypted connection." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1083,7 +1238,12 @@ class GcpExternalVpnGateway(GcpResource): class GcpFirewallPolicyAssociation: kind: ClassVar[str] = "gcp_firewall_policy_association" kind_display: ClassVar[str] = "GCP Firewall Policy Association" - kind_description: ClassVar[str] = "Firewall Policy Association is a feature in Google Cloud Platform that allows you to associate firewall policies with target resources, such as virtual machines or subnets, to control incoming and outgoing traffic based on predefined rules." + kind_description: ClassVar[str] = ( + "Firewall Policy Association is a feature in Google Cloud Platform that" + " allows you to associate firewall policies with target resources, such as" + " virtual machines or subnets, to control incoming and outgoing traffic based" + " on predefined rules." + ) mapping: ClassVar[Dict[str, Bender]] = { "attachment_target": S("attachmentTarget"), "display_name": S("displayName"), @@ -1102,7 +1262,12 @@ class GcpFirewallPolicyAssociation: class GcpFirewallPolicyRuleMatcherLayer4Config: kind: ClassVar[str] = "gcp_firewall_policy_rule_matcher_layer4_config" kind_display: ClassVar[str] = "GCP Firewall Policy Rule Matcher Layer4 Config" - kind_description: ClassVar[str] = "GCP Firewall Policy Rule Matcher Layer4 Config is a configuration for matching Layer 4 (transport layer) parameters in firewall rules in Google Cloud Platform. This configuration allows you to customize and control network traffic based on protocols, ports, and IP addresses." + kind_description: ClassVar[str] = ( + "GCP Firewall Policy Rule Matcher Layer4 Config is a configuration for" + " matching Layer 4 (transport layer) parameters in firewall rules in Google" + " Cloud Platform. This configuration allows you to customize and control" + " network traffic based on protocols, ports, and IP addresses." + ) mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("ipProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1112,7 +1277,12 @@ class GcpFirewallPolicyRuleMatcherLayer4Config: class GcpFirewallPolicyRuleSecureTag: kind: ClassVar[str] = "gcp_firewall_policy_rule_secure_tag" kind_display: ClassVar[str] = "GCP Firewall Policy Rule Secure Tag" - kind_description: ClassVar[str] = "Secure Tags are used in Google Cloud Platform's Firewall Policy Rules to apply consistent security rules to specific instances or resources based on tags. This helps in controlling network traffic and securing communication within the GCP infrastructure." + kind_description: ClassVar[str] = ( + "Secure Tags are used in Google Cloud Platform's Firewall Policy Rules to" + " apply consistent security rules to specific instances or resources based on" + " tags. This helps in controlling network traffic and securing communication" + " within the GCP infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "firewall_policy_rule_secure_tag_state": S("state")} name: Optional[str] = field(default=None) firewall_policy_rule_secure_tag_state: Optional[str] = field(default=None) @@ -1122,7 +1292,11 @@ class GcpFirewallPolicyRuleSecureTag: class GcpFirewallPolicyRuleMatcher: kind: ClassVar[str] = "gcp_firewall_policy_rule_matcher" kind_display: ClassVar[str] = "GCP Firewall Policy Rule Matcher" - kind_description: ClassVar[str] = "This resource represents a rule matcher within a firewall policy in Google Cloud Platform (GCP). It is used to define specific match criteria for incoming or outgoing traffic." + kind_description: ClassVar[str] = ( + "This resource represents a rule matcher within a firewall policy in Google" + " Cloud Platform (GCP). It is used to define specific match criteria for" + " incoming or outgoing traffic." + ) mapping: ClassVar[Dict[str, Bender]] = { "dest_ip_ranges": S("destIpRanges", default=[]), "layer4_configs": S("layer4Configs", default=[]) @@ -1140,7 +1314,10 @@ class GcpFirewallPolicyRuleMatcher: class GcpFirewallPolicyRule: kind: ClassVar[str] = "gcp_firewall_policy_rule" kind_display: ClassVar[str] = "GCP Firewall Policy Rule" - kind_description: ClassVar[str] = "A GCP Firewall Policy Rule is a set of instructions that define how traffic is allowed or denied on a Google Cloud Platform virtual network." + kind_description: ClassVar[str] = ( + "A GCP Firewall Policy Rule is a set of instructions that define how traffic" + " is allowed or denied on a Google Cloud Platform virtual network." + ) mapping: ClassVar[Dict[str, Bender]] = { "action": S("action"), "description": S("description"), @@ -1174,7 +1351,10 @@ class GcpFirewallPolicyRule: class GcpFirewallPolicy(GcpResource): kind: ClassVar[str] = "gcp_firewall_policy" kind_display: ClassVar[str] = "GCP Firewall Policy" - kind_description: ClassVar[str] = "GCP Firewall Policy is a security rule set that controls incoming and outgoing network traffic for resources in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Firewall Policy is a security rule set that controls incoming and" + " outgoing network traffic for resources in the Google Cloud Platform." + ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_network"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -1224,7 +1404,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpAllowed: kind: ClassVar[str] = "gcp_allowed" kind_display: ClassVar[str] = "GCP Allowed" - kind_description: ClassVar[str] = "GCP Allowed refers to the permissions or access rights granted to a user or entity to use resources on the Google Cloud Platform (GCP)." + kind_description: ClassVar[str] = ( + "GCP Allowed refers to the permissions or access rights granted to a user or" + " entity to use resources on the Google Cloud Platform (GCP)." + ) mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("IPProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1234,7 +1417,10 @@ class GcpAllowed: class GcpDenied: kind: ClassVar[str] = "gcp_denied" kind_display: ClassVar[str] = "GCP Denied" - kind_description: ClassVar[str] = "GCP Denied refers to a resource or action that has been denied or restricted in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Denied refers to a resource or action that has been denied or restricted" + " in Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("IPProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1244,7 +1430,12 @@ class GcpDenied: class GcpFirewallLogConfig: kind: ClassVar[str] = "gcp_firewall_log_config" kind_display: ClassVar[str] = "GCP Firewall Log Config" - kind_description: ClassVar[str] = "Firewall Log Config is a feature in Google Cloud Platform that allows you to configure logging for network firewall rules. It provides detailed information about the traffic that matches the firewall rules, helping you monitor and analyze network activities in your GCP environment." + kind_description: ClassVar[str] = ( + "Firewall Log Config is a feature in Google Cloud Platform that allows you to" + " configure logging for network firewall rules. It provides detailed" + " information about the traffic that matches the firewall rules, helping you" + " monitor and analyze network activities in your GCP environment." + ) mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "metadata": S("metadata")} enable: Optional[bool] = field(default=None) metadata: Optional[str] = field(default=None) @@ -1254,7 +1445,11 @@ class GcpFirewallLogConfig: class GcpFirewall(GcpResource): kind: ClassVar[str] = "gcp_firewall" kind_display: ClassVar[str] = "GCP Firewall" - kind_description: ClassVar[str] = "GCP Firewall is a network security feature provided by Google Cloud Platform that controls incoming and outgoing traffic to and from virtual machine instances." + kind_description: ClassVar[str] = ( + "GCP Firewall is a network security feature provided by Google Cloud Platform" + " that controls incoming and outgoing traffic to and from virtual machine" + " instances." + ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_network"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -1313,7 +1508,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpMetadataFilterLabelMatch: kind: ClassVar[str] = "gcp_metadata_filter_label_match" kind_display: ClassVar[str] = "GCP Metadata Filter Label Match" - kind_description: ClassVar[str] = "GCP Metadata Filter Label Match is a feature that allows you to filter virtual machine instances based on labels in Google Cloud Platform metadata." + kind_description: ClassVar[str] = ( + "GCP Metadata Filter Label Match is a feature that allows you to filter" + " virtual machine instances based on labels in Google Cloud Platform metadata." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1323,7 +1521,11 @@ class GcpMetadataFilterLabelMatch: class GcpMetadataFilter: kind: ClassVar[str] = "gcp_metadata_filter" kind_display: ClassVar[str] = "GCP Metadata Filter" - kind_description: ClassVar[str] = "GCP Metadata Filter is a feature in Google Cloud Platform that allows users to apply filters to their metadata for fine-grained control and organization of their resources." + kind_description: ClassVar[str] = ( + "GCP Metadata Filter is a feature in Google Cloud Platform that allows users" + " to apply filters to their metadata for fine-grained control and organization" + " of their resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "filter_labels": S("filterLabels", default=[]) >> ForallBend(GcpMetadataFilterLabelMatch.mapping), "filter_match_criteria": S("filterMatchCriteria"), @@ -1336,7 +1538,11 @@ class GcpMetadataFilter: class GcpForwardingRuleServiceDirectoryRegistration: kind: ClassVar[str] = "gcp_forwarding_rule_service_directory_registration" kind_display: ClassVar[str] = "GCP Forwarding Rule Service Directory Registration" - kind_description: ClassVar[str] = "This resource is used for registering a forwarding rule with a service directory in Google Cloud Platform. It enables the forwarding of traffic to a specific service or endpoint within the network." + kind_description: ClassVar[str] = ( + "This resource is used for registering a forwarding rule with a service" + " directory in Google Cloud Platform. It enables the forwarding of traffic to" + " a specific service or endpoint within the network." + ) mapping: ClassVar[Dict[str, Bender]] = { "namespace": S("namespace"), "service": S("service"), @@ -1351,7 +1557,11 @@ class GcpForwardingRuleServiceDirectoryRegistration: class GcpForwardingRule(GcpResource): kind: ClassVar[str] = "gcp_forwarding_rule" kind_display: ClassVar[str] = "GCP Forwarding Rule" - kind_description: ClassVar[str] = "Forwarding rules are used in Google Cloud Platform to route traffic to different destinations based on the configuration settings. They can be used to load balance or redirect traffic within a network or between networks." + kind_description: ClassVar[str] = ( + "Forwarding rules are used in Google Cloud Platform to route traffic to" + " different destinations based on the configuration settings. They can be used" + " to load balance or redirect traffic within a network or between networks." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"]}, "successors": { @@ -1454,7 +1664,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpNetworkEndpointGroupAppEngine: kind: ClassVar[str] = "gcp_network_endpoint_group_app_engine" kind_display: ClassVar[str] = "GCP Network Endpoint Group App Engine" - kind_description: ClassVar[str] = "GCP Network Endpoint Group for App Engine is a group of network endpoints (virtual machines, App Engine flexible environment instances, or container instances) that can receive traffic from the same load balancer." + kind_description: ClassVar[str] = ( + "GCP Network Endpoint Group for App Engine is a group of network endpoints" + " (virtual machines, App Engine flexible environment instances, or container" + " instances) that can receive traffic from the same load balancer." + ) mapping: ClassVar[Dict[str, Bender]] = {"service": S("service"), "url_mask": S("urlMask"), "version": S("version")} service: Optional[str] = field(default=None) url_mask: Optional[str] = field(default=None) @@ -1465,7 +1679,11 @@ class GcpNetworkEndpointGroupAppEngine: class GcpNetworkEndpointGroupCloudFunction: kind: ClassVar[str] = "gcp_network_endpoint_group_cloud_function" kind_display: ClassVar[str] = "GCP Network Endpoint Group - Cloud Function" - kind_description: ClassVar[str] = "GCP Network Endpoint Group allows grouping of Cloud Functions in Google Cloud Platform, enabling load balancing and high availability for serverless functions." + kind_description: ClassVar[str] = ( + "GCP Network Endpoint Group allows grouping of Cloud Functions in Google" + " Cloud Platform, enabling load balancing and high availability for serverless" + " functions." + ) mapping: ClassVar[Dict[str, Bender]] = {"function": S("function"), "url_mask": S("urlMask")} function: Optional[str] = field(default=None) url_mask: Optional[str] = field(default=None) @@ -1475,7 +1693,11 @@ class GcpNetworkEndpointGroupCloudFunction: class GcpNetworkEndpointGroupCloudRun: kind: ClassVar[str] = "gcp_network_endpoint_group_cloud_run" kind_display: ClassVar[str] = "GCP Network Endpoint Group - Cloud Run" - kind_description: ClassVar[str] = "GCP Network Endpoint Group - Cloud Run is a resource in Google Cloud Platform that enables load balancing for Cloud Run services across different regions." + kind_description: ClassVar[str] = ( + "GCP Network Endpoint Group - Cloud Run is a resource in Google Cloud" + " Platform that enables load balancing for Cloud Run services across different" + " regions." + ) mapping: ClassVar[Dict[str, Bender]] = {"service": S("service"), "tag": S("tag"), "url_mask": S("urlMask")} service: Optional[str] = field(default=None) tag: Optional[str] = field(default=None) @@ -1486,7 +1708,11 @@ class GcpNetworkEndpointGroupCloudRun: class GcpNetworkEndpointGroupPscData: kind: ClassVar[str] = "gcp_network_endpoint_group_psc_data" kind_display: ClassVar[str] = "GCP Network Endpoint Group PSC Data" - kind_description: ClassVar[str] = "GCP Network Endpoint Group PSC Data is a feature in Google Cloud Platform that allows you to group and manage a set of network endpoints that are used to distribute traffic across multiple instances." + kind_description: ClassVar[str] = ( + "GCP Network Endpoint Group PSC Data is a feature in Google Cloud Platform" + " that allows you to group and manage a set of network endpoints that are used" + " to distribute traffic across multiple instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "consumer_psc_address": S("consumerPscAddress"), "psc_connection_id": S("pscConnectionId"), @@ -1501,7 +1727,11 @@ class GcpNetworkEndpointGroupPscData: class GcpNetworkEndpointGroup(GcpResource): kind: ClassVar[str] = "gcp_network_endpoint_group" kind_display: ClassVar[str] = "GCP Network Endpoint Group" - kind_description: ClassVar[str] = "A GCP Network Endpoint Group is a logical grouping of network endpoints, allowing users to distribute network traffic across multiple endpoints in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "A GCP Network Endpoint Group is a logical grouping of network endpoints," + " allowing users to distribute network traffic across multiple endpoints in" + " Google Cloud Platform." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network", "gcp_subnetwork"], "delete": ["gcp_network", "gcp_subnetwork"]} } @@ -1562,7 +1792,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpErrorInfo: kind: ClassVar[str] = "gcp_error_info" kind_display: ClassVar[str] = "GCP Error Info" - kind_description: ClassVar[str] = "GCP Error Info provides information about errors encountered in Google Cloud Platform services." + kind_description: ClassVar[str] = ( + "GCP Error Info provides information about errors encountered in Google Cloud" + " Platform services." + ) mapping: ClassVar[Dict[str, Bender]] = {"domain": S("domain"), "metadatas": S("metadatas"), "reason": S("reason")} domain: Optional[str] = field(default=None) metadatas: Optional[Dict[str, str]] = field(default=None) @@ -1573,7 +1806,11 @@ class GcpErrorInfo: class GcpHelpLink: kind: ClassVar[str] = "gcp_help_link" kind_display: ClassVar[str] = "GCP Help Link" - kind_description: ClassVar[str] = "A link to the Google Cloud Platform documentation and support resources to help users troubleshoot and find information about GCP services and features." + kind_description: ClassVar[str] = ( + "A link to the Google Cloud Platform documentation and support resources to" + " help users troubleshoot and find information about GCP services and" + " features." + ) mapping: ClassVar[Dict[str, Bender]] = {"description": S("description"), "url": S("url")} description: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -1583,7 +1820,11 @@ class GcpHelpLink: class GcpHelp: kind: ClassVar[str] = "gcp_help" kind_display: ClassVar[str] = "GCP Help" - kind_description: ClassVar[str] = "GCP Help is a service provided by Google Cloud Platform that offers assistance and support to users in using and managing their resources and services on GCP." + kind_description: ClassVar[str] = ( + "GCP Help is a service provided by Google Cloud Platform that offers" + " assistance and support to users in using and managing their resources and" + " services on GCP." + ) mapping: ClassVar[Dict[str, Bender]] = {"links": S("links", default=[]) >> ForallBend(GcpHelpLink.mapping)} links: Optional[List[GcpHelpLink]] = field(default=None) @@ -1592,7 +1833,11 @@ class GcpHelp: class GcpLocalizedMessage: kind: ClassVar[str] = "gcp_localized_message" kind_display: ClassVar[str] = "GCP Localized Message" - kind_description: ClassVar[str] = "GCP Localized Message is a service provided by Google Cloud Platform that allows developers to display messages in different languages based on the user's preferred language." + kind_description: ClassVar[str] = ( + "GCP Localized Message is a service provided by Google Cloud Platform that" + " allows developers to display messages in different languages based on the" + " user's preferred language." + ) mapping: ClassVar[Dict[str, Bender]] = {"locale": S("locale"), "message": S("message")} locale: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -1602,7 +1847,10 @@ class GcpLocalizedMessage: class GcpErrordetails: kind: ClassVar[str] = "gcp_errordetails" kind_display: ClassVar[str] = "GCP Error Details" - kind_description: ClassVar[str] = "Error details in Google Cloud Platform (GCP) provide additional information about errors that occur while using GCP services." + kind_description: ClassVar[str] = ( + "Error details in Google Cloud Platform (GCP) provide additional information" + " about errors that occur while using GCP services." + ) mapping: ClassVar[Dict[str, Bender]] = { "error_info": S("errorInfo", default={}) >> Bend(GcpErrorInfo.mapping), "help": S("help", default={}) >> Bend(GcpHelp.mapping), @@ -1617,7 +1865,10 @@ class GcpErrordetails: class GcpErrors: kind: ClassVar[str] = "gcp_errors" kind_display: ClassVar[str] = "GCP Errors" - kind_description: ClassVar[str] = "GCP Errors refer to any kind of error encountered while using Google Cloud Platform services." + kind_description: ClassVar[str] = ( + "GCP Errors refer to any kind of error encountered while using Google Cloud" + " Platform services." + ) mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "error_details": S("errorDetails", default=[]) >> ForallBend(GcpErrordetails.mapping), @@ -1634,7 +1885,10 @@ class GcpErrors: class GcpError: kind: ClassVar[str] = "gcp_error" kind_display: ClassVar[str] = "GCP Error" - kind_description: ClassVar[str] = "An error that occurs within Google Cloud Platform (GCP). Please provide more specific information about the error message for further assistance." + kind_description: ClassVar[str] = ( + "An error that occurs within Google Cloud Platform (GCP). Please provide more" + " specific information about the error message for further assistance." + ) mapping: ClassVar[Dict[str, Bender]] = {"errors": S("errors", default=[]) >> ForallBend(GcpErrors.mapping)} errors: Optional[List[GcpErrors]] = field(default=None) @@ -1643,7 +1897,10 @@ class GcpError: class GcpData: kind: ClassVar[str] = "gcp_data" kind_display: ClassVar[str] = "GCP Data" - kind_description: ClassVar[str] = "GCP Data refers to data storage and processing services offered by Google Cloud Platform, such as Cloud Storage, BigQuery, and Dataflow." + kind_description: ClassVar[str] = ( + "GCP Data refers to data storage and processing services offered by Google" + " Cloud Platform, such as Cloud Storage, BigQuery, and Dataflow." + ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "value": S("value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -1653,7 +1910,10 @@ class GcpData: class GcpWarnings: kind: ClassVar[str] = "gcp_warnings" kind_display: ClassVar[str] = "GCP Warnings" - kind_description: ClassVar[str] = "GCP Warnings are notifications issued by Google Cloud Platform to alert users about potential issues or concerns in their cloud resources." + kind_description: ClassVar[str] = ( + "GCP Warnings are notifications issued by Google Cloud Platform to alert" + " users about potential issues or concerns in their cloud resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "data": S("data", default=[]) >> ForallBend(GcpData.mapping), @@ -1668,7 +1928,10 @@ class GcpWarnings: class GcpOperation(GcpResource): kind: ClassVar[str] = "gcp_operation" kind_display: ClassVar[str] = "GCP Operation" - kind_description: ClassVar[str] = "An operation represents a long-running asynchronous API call in Google Cloud Platform (GCP), allowing users to create, update, or delete resources" + kind_description: ClassVar[str] = ( + "An operation represents a long-running asynchronous API call in Google Cloud" + " Platform (GCP), allowing users to create, update, or delete resources" + ) reference_kinds: ClassVar[ModelReference] = { "successors": { # operation can target multiple resources, unclear which others are possible @@ -1738,7 +2001,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpPublicDelegatedPrefixPublicDelegatedSubPrefix: kind: ClassVar[str] = "gcp_public_delegated_prefix_public_delegated_sub_prefix" kind_display: ClassVar[str] = "GCP Public Delegated Sub-Prefix" - kind_description: ClassVar[str] = "A GCP Public Delegated Sub-Prefix is a range of public IP addresses that can be used within a Google Cloud Platform (GCP) project." + kind_description: ClassVar[str] = ( + "A GCP Public Delegated Sub-Prefix is a range of public IP addresses that can" + " be used within a Google Cloud Platform (GCP) project." + ) mapping: ClassVar[Dict[str, Bender]] = { "delegatee_project": S("delegateeProject"), "description": S("description"), @@ -1761,7 +2027,11 @@ class GcpPublicDelegatedPrefixPublicDelegatedSubPrefix: class GcpPublicDelegatedPrefix(GcpResource): kind: ClassVar[str] = "gcp_public_delegated_prefix" kind_display: ClassVar[str] = "GCP Public Delegated Prefix" - kind_description: ClassVar[str] = "A Public Delegated Prefix in Google Cloud Platform (GCP) allows customers to use their own IPv6 addresses on GCP resources for public internet connectivity." + kind_description: ClassVar[str] = ( + "A Public Delegated Prefix in Google Cloud Platform (GCP) allows customers to" + " use their own IPv6 addresses on GCP resources for public internet" + " connectivity." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1802,7 +2072,11 @@ class GcpPublicDelegatedPrefix(GcpResource): class GcpGRPCHealthCheck: kind: ClassVar[str] = "gcp_grpc_health_check" kind_display: ClassVar[str] = "GCP gRPC Health Check" - kind_description: ClassVar[str] = "gRPC Health Check is a health checking mechanism in Google Cloud Platform (GCP) that allows monitoring and validating the health of gRPC-based services running on GCP infrastructure." + kind_description: ClassVar[str] = ( + "gRPC Health Check is a health checking mechanism in Google Cloud Platform" + " (GCP) that allows monitoring and validating the health of gRPC-based" + " services running on GCP infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "grpc_service_name": S("grpcServiceName"), "port": S("port"), @@ -1819,7 +2093,11 @@ class GcpGRPCHealthCheck: class GcpHTTP2HealthCheck: kind: ClassVar[str] = "gcp_http2_health_check" kind_display: ClassVar[str] = "GCP HTTP/2 Health Check" - kind_description: ClassVar[str] = "HTTP/2 Health Check is a health monitoring mechanism provided by Google Cloud Platform, which allows you to check the health of your HTTP/2 services or endpoints." + kind_description: ClassVar[str] = ( + "HTTP/2 Health Check is a health monitoring mechanism provided by Google" + " Cloud Platform, which allows you to check the health of your HTTP/2 services" + " or endpoints." + ) mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "port": S("port"), @@ -1842,7 +2120,11 @@ class GcpHTTP2HealthCheck: class GcpHTTPHealthCheckSpec: kind: ClassVar[str] = "gcp_http_health_check_spec" kind_display: ClassVar[str] = "GCP HTTP Health Check Specification" - kind_description: ClassVar[str] = "GCP HTTP Health Check Specification is a configuration for monitoring the health of HTTP-based services in Google Cloud Platform by periodically sending health check requests and verifying the responses." + kind_description: ClassVar[str] = ( + "GCP HTTP Health Check Specification is a configuration for monitoring the" + " health of HTTP-based services in Google Cloud Platform by periodically" + " sending health check requests and verifying the responses." + ) mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "port": S("port"), @@ -1865,7 +2147,11 @@ class GcpHTTPHealthCheckSpec: class GcpHTTPSHealthCheckSpec: kind: ClassVar[str] = "gcp_https_health_check_spec" kind_display: ClassVar[str] = "GCP HTTPS Health Check Spec" - kind_description: ClassVar[str] = "GCP HTTPS Health Check Spec is a specification for a health check resource in Google Cloud Platform (GCP), used to monitor the health of HTTPS-based services by sending periodic requests and checking for valid responses." + kind_description: ClassVar[str] = ( + "GCP HTTPS Health Check Spec is a specification for a health check resource" + " in Google Cloud Platform (GCP), used to monitor the health of HTTPS-based" + " services by sending periodic requests and checking for valid responses." + ) mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "port": S("port"), @@ -1888,7 +2174,11 @@ class GcpHTTPSHealthCheckSpec: class GcpSSLHealthCheck: kind: ClassVar[str] = "gcp_ssl_health_check" kind_display: ClassVar[str] = "GCP SSL Health Check" - kind_description: ClassVar[str] = "GCP SSL Health Check is a method used by Google Cloud Platform to monitor the health and availability of an SSL certificate for a specific service or application." + kind_description: ClassVar[str] = ( + "GCP SSL Health Check is a method used by Google Cloud Platform to monitor" + " the health and availability of an SSL certificate for a specific service or" + " application." + ) mapping: ClassVar[Dict[str, Bender]] = { "port": S("port"), "port_name": S("portName"), @@ -1909,7 +2199,11 @@ class GcpSSLHealthCheck: class GcpTCPHealthCheck: kind: ClassVar[str] = "gcp_tcp_health_check" kind_display: ClassVar[str] = "GCP TCP Health Check" - kind_description: ClassVar[str] = "GCP TCP Health Check is a feature in the Google Cloud Platform which monitors the availability and health of TCP-based services by periodically sending TCP connection requests to the specified endpoint." + kind_description: ClassVar[str] = ( + "GCP TCP Health Check is a feature in the Google Cloud Platform which" + " monitors the availability and health of TCP-based services by periodically" + " sending TCP connection requests to the specified endpoint." + ) mapping: ClassVar[Dict[str, Bender]] = { "port": S("port"), "port_name": S("portName"), @@ -1930,7 +2224,11 @@ class GcpTCPHealthCheck: class GcpHealthCheck(GcpResource): kind: ClassVar[str] = "gcp_health_check" kind_display: ClassVar[str] = "GCP Health Check" - kind_description: ClassVar[str] = "Health Check is a feature in Google Cloud Platform that allows you to monitor the health and availability of your resources by periodically sending requests to them and verifying the responses." + kind_description: ClassVar[str] = ( + "Health Check is a feature in Google Cloud Platform that allows you to" + " monitor the health and availability of your resources by periodically" + " sending requests to them and verifying the responses." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -1982,7 +2280,11 @@ class GcpHealthCheck(GcpResource): class GcpHttpHealthCheck(GcpResource): kind: ClassVar[str] = "gcp_http_health_check" kind_display: ClassVar[str] = "GCP HTTP Health Check" - kind_description: ClassVar[str] = "HTTP Health Checks are used by Google Cloud Platform to monitor the health of web services and determine if they are reachable and responding correctly to requests." + kind_description: ClassVar[str] = ( + "HTTP Health Checks are used by Google Cloud Platform to monitor the health" + " of web services and determine if they are reachable and responding correctly" + " to requests." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -2024,7 +2326,11 @@ class GcpHttpHealthCheck(GcpResource): class GcpHttpsHealthCheck(GcpResource): kind: ClassVar[str] = "gcp_https_health_check" kind_display: ClassVar[str] = "GCP HTTPS Health Check" - kind_description: ClassVar[str] = "The GCP HTTPS Health Check is a monitoring service that allows users to check the availability and performance of their HTTPS endpoints on Google Cloud Platform." + kind_description: ClassVar[str] = ( + "The GCP HTTPS Health Check is a monitoring service that allows users to" + " check the availability and performance of their HTTPS endpoints on Google" + " Cloud Platform." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -2066,7 +2372,11 @@ class GcpHttpsHealthCheck(GcpResource): class GcpRawdisk: kind: ClassVar[str] = "gcp_rawdisk" kind_display: ClassVar[str] = "GCP Raw Disk" - kind_description: ClassVar[str] = "GCP Raw Disk is a persistent storage option in Google Cloud Platform, allowing users to store and manage unformatted disk images for virtual machines." + kind_description: ClassVar[str] = ( + "GCP Raw Disk is a persistent storage option in Google Cloud Platform," + " allowing users to store and manage unformatted disk images for virtual" + " machines." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_type": S("containerType"), "sha1_checksum": S("sha1Checksum"), @@ -2081,7 +2391,11 @@ class GcpRawdisk: class GcpFileContentBuffer: kind: ClassVar[str] = "gcp_file_content_buffer" kind_display: ClassVar[str] = "GCP File Content Buffer" - kind_description: ClassVar[str] = "GCP File Content Buffer is a resource in Google Cloud Platform that allows users to store and process file content in memory for faster data access and manipulation." + kind_description: ClassVar[str] = ( + "GCP File Content Buffer is a resource in Google Cloud Platform that allows" + " users to store and process file content in memory for faster data access and" + " manipulation." + ) mapping: ClassVar[Dict[str, Bender]] = {"content": S("content"), "file_type": S("fileType")} content: Optional[str] = field(default=None) file_type: Optional[str] = field(default=None) @@ -2091,7 +2405,10 @@ class GcpFileContentBuffer: class GcpInitialStateConfig: kind: ClassVar[str] = "gcp_initial_state_config" kind_display: ClassVar[str] = "GCP Initial State Config" - kind_description: ClassVar[str] = "GCP Initial State Config is a configuration used to set up the initial state of resources in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Initial State Config is a configuration used to set up the initial state" + " of resources in Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "dbs": S("dbs", default=[]) >> ForallBend(GcpFileContentBuffer.mapping), "dbxs": S("dbxs", default=[]) >> ForallBend(GcpFileContentBuffer.mapping), @@ -2108,7 +2425,10 @@ class GcpInitialStateConfig: class GcpImage(GcpResource): kind: ClassVar[str] = "gcp_image" kind_display: ClassVar[str] = "GCP Image" - kind_description: ClassVar[str] = "GCP Images are pre-configured virtual machine templates that can be used to create and deploy virtual machines in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Images are pre-configured virtual machine templates that can be used to" + " create and deploy virtual machines in the Google Cloud Platform." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -2191,7 +2511,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpInstanceGroupManagerAutoHealingPolicy: kind: ClassVar[str] = "gcp_instance_group_manager_auto_healing_policy" kind_display: ClassVar[str] = "GCP Instance Group Manager Auto Healing Policy" - kind_description: ClassVar[str] = "Auto Healing Policy is a feature of GCP Instance Group Manager that automatically replaces unhealthy instances within an instance group to maintain availability and ensure application uptime." + kind_description: ClassVar[str] = ( + "Auto Healing Policy is a feature of GCP Instance Group Manager that" + " automatically replaces unhealthy instances within an instance group to" + " maintain availability and ensure application uptime." + ) mapping: ClassVar[Dict[str, Bender]] = {"health_check": S("healthCheck"), "initial_delay_sec": S("initialDelaySec")} health_check: Optional[str] = field(default=None) initial_delay_sec: Optional[int] = field(default=None) @@ -2201,7 +2525,11 @@ class GcpInstanceGroupManagerAutoHealingPolicy: class GcpInstanceGroupManagerActionsSummary: kind: ClassVar[str] = "gcp_instance_group_manager_actions_summary" kind_display: ClassVar[str] = "GCP Instance Group Manager Actions Summary" - kind_description: ClassVar[str] = "The GCP Instance Group Manager Actions Summary provides a summary of the actions performed on instance groups in the Google Cloud Platform, such as scaling, updating, or deleting instances in a group." + kind_description: ClassVar[str] = ( + "The GCP Instance Group Manager Actions Summary provides a summary of the" + " actions performed on instance groups in the Google Cloud Platform, such as" + " scaling, updating, or deleting instances in a group." + ) mapping: ClassVar[Dict[str, Bender]] = { "abandoning": S("abandoning"), "creating": S("creating"), @@ -2236,7 +2564,13 @@ class GcpInstanceGroupManagerActionsSummary: class GcpDistributionPolicy: kind: ClassVar[str] = "gcp_distribution_policy" kind_display: ClassVar[str] = "GCP Distribution Policy" - kind_description: ClassVar[str] = "GCP Distribution Policy is a feature provided by Google Cloud Platform that allows users to define how resources are distributed across multiple zones within a region. This enables users to ensure high availability and fault tolerance for their applications and services by ensuring that they are spread across multiple physical locations." + kind_description: ClassVar[str] = ( + "GCP Distribution Policy is a feature provided by Google Cloud Platform that" + " allows users to define how resources are distributed across multiple zones" + " within a region. This enables users to ensure high availability and fault" + " tolerance for their applications and services by ensuring that they are" + " spread across multiple physical locations." + ) mapping: ClassVar[Dict[str, Bender]] = { "target_shape": S("targetShape"), "zones": S("zones", default=[]) >> ForallBend(S("zone")), @@ -2249,7 +2583,11 @@ class GcpDistributionPolicy: class GcpNamedPort: kind: ClassVar[str] = "gcp_named_port" kind_display: ClassVar[str] = "GCP Named Port" - kind_description: ClassVar[str] = "A named port is a service port with a user-defined name associated with a specific port number. It is used in Google Cloud Platform to help identify and manage networking services." + kind_description: ClassVar[str] = ( + "A named port is a service port with a user-defined name associated with a" + " specific port number. It is used in Google Cloud Platform to help identify" + " and manage networking services." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "port": S("port")} name: Optional[str] = field(default=None) port: Optional[int] = field(default=None) @@ -2259,7 +2597,12 @@ class GcpNamedPort: class GcpStatefulPolicyPreservedStateDiskDevice: kind: ClassVar[str] = "gcp_stateful_policy_preserved_state_disk_device" kind_display: ClassVar[str] = "GCP Stateful Policy Preserved State Disk Device" - kind_description: ClassVar[str] = "This resource represents a Stateful Policy Preserved State Disk Device in Google Cloud Platform (GCP). It allows for the creation of persistent disks that retain their data even when the associated VM instance is deleted or recreated." + kind_description: ClassVar[str] = ( + "This resource represents a Stateful Policy Preserved State Disk Device in" + " Google Cloud Platform (GCP). It allows for the creation of persistent disks" + " that retain their data even when the associated VM instance is deleted or" + " recreated." + ) mapping: ClassVar[Dict[str, Bender]] = {"auto_delete": S("autoDelete")} auto_delete: Optional[str] = field(default=None) @@ -2268,7 +2611,11 @@ class GcpStatefulPolicyPreservedStateDiskDevice: class GcpStatefulPolicyPreservedState: kind: ClassVar[str] = "gcp_stateful_policy_preserved_state" kind_display: ClassVar[str] = "GCP Stateful Policy Preserved State" - kind_description: ClassVar[str] = "Stateful Policy Preserved State in Google Cloud Platform (GCP) refers to the retention of current state information of resources when modifying or updating policies." + kind_description: ClassVar[str] = ( + "Stateful Policy Preserved State in Google Cloud Platform (GCP) refers to the" + " retention of current state information of resources when modifying or" + " updating policies." + ) mapping: ClassVar[Dict[str, Bender]] = { "stateful_policy_preserved_state_disks": S("disks", default={}) >> MapDict(value_bender=Bend(GcpStatefulPolicyPreservedStateDiskDevice.mapping)) @@ -2282,7 +2629,12 @@ class GcpStatefulPolicyPreservedState: class GcpStatefulPolicy: kind: ClassVar[str] = "gcp_stateful_policy" kind_display: ClassVar[str] = "GCP Stateful Policy" - kind_description: ClassVar[str] = "Stateful Policy is a feature in Google Cloud Platform (GCP) that allows users to define specific firewall rules based on source and destination IP addresses, ports, and protocols. These rules are persistent and can help ensure network security and traffic control within the GCP infrastructure." + kind_description: ClassVar[str] = ( + "Stateful Policy is a feature in Google Cloud Platform (GCP) that allows" + " users to define specific firewall rules based on source and destination IP" + " addresses, ports, and protocols. These rules are persistent and can help" + " ensure network security and traffic control within the GCP infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "preserved_state": S("preservedState", default={}) >> Bend(GcpStatefulPolicyPreservedState.mapping) } @@ -2293,7 +2645,10 @@ class GcpStatefulPolicy: class GcpInstanceGroupManagerStatusStateful: kind: ClassVar[str] = "gcp_instance_group_manager_status_stateful" kind_display: ClassVar[str] = "GCP Instance Group Manager Status Stateful" - kind_description: ClassVar[str] = "This resource represents the stateful status of an instance group manager in Google Cloud Platform's infrastructure." + kind_description: ClassVar[str] = ( + "This resource represents the stateful status of an instance group manager in" + " Google Cloud Platform's infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "has_stateful_config": S("hasStatefulConfig"), "per_instance_configs": S("perInstanceConfigs", "allEffective"), @@ -2306,7 +2661,11 @@ class GcpInstanceGroupManagerStatusStateful: class GcpInstanceGroupManagerStatus: kind: ClassVar[str] = "gcp_instance_group_manager_status" kind_display: ClassVar[str] = "GCP Instance Group Manager Status" - kind_description: ClassVar[str] = "Instance Group Manager Status represents the current state of an instance group manager in Google Cloud Platform. It provides information about the status of the managed instances within the group and their health." + kind_description: ClassVar[str] = ( + "Instance Group Manager Status represents the current state of an instance" + " group manager in Google Cloud Platform. It provides information about the" + " status of the managed instances within the group and their health." + ) mapping: ClassVar[Dict[str, Bender]] = { "autoscaler": S("autoscaler"), "is_stable": S("isStable"), @@ -2323,7 +2682,11 @@ class GcpInstanceGroupManagerStatus: class GcpInstanceGroupManagerUpdatePolicy: kind: ClassVar[str] = "gcp_instance_group_manager_update_policy" kind_display: ClassVar[str] = "GCP Instance Group Manager Update Policy" - kind_description: ClassVar[str] = "The GCP Instance Group Manager Update Policy is a configuration setting that determines how a managed instance group is automatically updated with new instance template versions." + kind_description: ClassVar[str] = ( + "The GCP Instance Group Manager Update Policy is a configuration setting that" + " determines how a managed instance group is automatically updated with new" + " instance template versions." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_redistribution_type": S("instanceRedistributionType"), "max_surge": S("maxSurge", default={}) >> Bend(GcpFixedOrPercent.mapping), @@ -2346,7 +2709,13 @@ class GcpInstanceGroupManagerUpdatePolicy: class GcpInstanceGroupManagerVersion: kind: ClassVar[str] = "gcp_instance_group_manager_version" kind_display: ClassVar[str] = "GCP Instance Group Manager Version" - kind_description: ClassVar[str] = "Instance Group Manager is a feature in Google Cloud Platform that allows you to manage groups of virtual machine instances as a single entity. GCP Instance Group Manager Version refers to a specific version of the instance group manager that is used to manage and control the instances within the group." + kind_description: ClassVar[str] = ( + "Instance Group Manager is a feature in Google Cloud Platform that allows you" + " to manage groups of virtual machine instances as a single entity. GCP" + " Instance Group Manager Version refers to a specific version of the instance" + " group manager that is used to manage and control the instances within the" + " group." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_template": S("instanceTemplate"), "name": S("name"), @@ -2361,7 +2730,10 @@ class GcpInstanceGroupManagerVersion: class GcpInstanceGroupManager(GcpResource): kind: ClassVar[str] = "gcp_instance_group_manager" kind_display: ClassVar[str] = "GCP Instance Group Manager" - kind_description: ClassVar[str] = "GCP Instance Group Manager is a resource in Google Cloud Platform that helps manage and scale groups of Compute Engine instances." + kind_description: ClassVar[str] = ( + "GCP Instance Group Manager is a resource in Google Cloud Platform that helps" + " manage and scale groups of Compute Engine instances." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_instance_group"], @@ -2440,7 +2812,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpInstanceGroup(GcpResource): kind: ClassVar[str] = "gcp_instance_group" kind_display: ClassVar[str] = "GCP Instance Group" - kind_description: ClassVar[str] = "Instance Group is a resource in Google Cloud Platform that allows you to manage and scale multiple instances together as a single unit." + kind_description: ClassVar[str] = ( + "Instance Group is a resource in Google Cloud Platform that allows you to" + " manage and scale multiple instances together as a single unit." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network", "gcp_subnetwork"], "delete": ["gcp_network", "gcp_subnetwork"]} } @@ -2489,7 +2864,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpAdvancedMachineFeatures: kind: ClassVar[str] = "gcp_advanced_machine_features" kind_display: ClassVar[str] = "GCP Advanced Machine Features" - kind_description: ClassVar[str] = "Advanced Machine Features are advanced functionalities provided by Google Cloud Platform (GCP) that enhance the capabilities of virtual machine instances and improve performance, scalability, and security." + kind_description: ClassVar[str] = ( + "Advanced Machine Features are advanced functionalities provided by Google" + " Cloud Platform (GCP) that enhance the capabilities of virtual machine" + " instances and improve performance, scalability, and security." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_nested_virtualization": S("enableNestedVirtualization"), "enable_uefi_networking": S("enableUefiNetworking"), @@ -2506,7 +2885,11 @@ class GcpAdvancedMachineFeatures: class GcpAttachedDiskInitializeParams: kind: ClassVar[str] = "gcp_attached_disk_initialize_params" kind_display: ClassVar[str] = "GCP Attached Disk Initialize Params" - kind_description: ClassVar[str] = "Initialize parameters for a Google Cloud Platform attached disk, used to specify the size and type of the disk, as well as other configuration options." + kind_description: ClassVar[str] = ( + "Initialize parameters for a Google Cloud Platform attached disk, used to" + " specify the size and type of the disk, as well as other configuration" + " options." + ) mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "description": S("description"), @@ -2547,7 +2930,11 @@ class GcpAttachedDiskInitializeParams: class GcpAttachedDisk: kind: ClassVar[str] = "gcp_attached_disk" kind_display: ClassVar[str] = "GCP Attached Disk" - kind_description: ClassVar[str] = "GCP Attached Disk is a disk storage resource that can be attached to compute instances in Google Cloud Platform, providing persistent block storage for your data." + kind_description: ClassVar[str] = ( + "GCP Attached Disk is a disk storage resource that can be attached to compute" + " instances in Google Cloud Platform, providing persistent block storage for" + " your data." + ) mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "auto_delete": S("autoDelete"), @@ -2589,7 +2976,11 @@ class GcpAttachedDisk: class GcpAcceleratorConfig: kind: ClassVar[str] = "gcp_accelerator_config" kind_display: ClassVar[str] = "GCP Accelerator Config" - kind_description: ClassVar[str] = "GCP Accelerator Config is a configuration option for Google Cloud Platform (GCP) that allows users to attach Nvidia GPUs to their virtual machine instances for faster computational processing." + kind_description: ClassVar[str] = ( + "GCP Accelerator Config is a configuration option for Google Cloud Platform" + " (GCP) that allows users to attach Nvidia GPUs to their virtual machine" + " instances for faster computational processing." + ) mapping: ClassVar[Dict[str, Bender]] = { "accelerator_count": S("acceleratorCount"), "accelerator_type": S("acceleratorType"), @@ -2602,7 +2993,10 @@ class GcpAcceleratorConfig: class GcpItems: kind: ClassVar[str] = "gcp_items" kind_display: ClassVar[str] = "GCP Items" - kind_description: ClassVar[str] = "GCP Items refers to the resources available in Google Cloud Platform, which is a suite of cloud computing services provided by Google." + kind_description: ClassVar[str] = ( + "GCP Items refers to the resources available in Google Cloud Platform, which" + " is a suite of cloud computing services provided by Google." + ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "value": S("value")} key: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -2612,7 +3006,11 @@ class GcpItems: class GcpMetadata: kind: ClassVar[str] = "gcp_metadata" kind_display: ClassVar[str] = "GCP Metadata" - kind_description: ClassVar[str] = "GCP Metadata provides information about the Google Cloud Platform virtual machine instance, such as its attributes, startup scripts, and custom metadata." + kind_description: ClassVar[str] = ( + "GCP Metadata provides information about the Google Cloud Platform virtual" + " machine instance, such as its attributes, startup scripts, and custom" + " metadata." + ) mapping: ClassVar[Dict[str, Bender]] = { "fingerprint": S("fingerprint"), "items": S("items", default=[]) >> ForallBend(GcpItems.mapping), @@ -2625,7 +3023,10 @@ class GcpMetadata: class GcpAccessConfig: kind: ClassVar[str] = "gcp_access_config" kind_display: ClassVar[str] = "GCP Access Config" - kind_description: ClassVar[str] = "Access Config is a GCP feature that allows you to assign internal and external IP addresses to your virtual machine instances." + kind_description: ClassVar[str] = ( + "Access Config is a GCP feature that allows you to assign internal and" + " external IP addresses to your virtual machine instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "external_ipv6": S("externalIpv6"), "external_ipv6_prefix_length": S("externalIpv6PrefixLength"), @@ -2650,7 +3051,10 @@ class GcpAccessConfig: class GcpAliasIpRange: kind: ClassVar[str] = "gcp_alias_ip_range" kind_display: ClassVar[str] = "GCP Alias IP Range" - kind_description: ClassVar[str] = "Alias IP Range is a feature in Google Cloud Platform that allows you to assign additional IP addresses to virtual machines within a subnet." + kind_description: ClassVar[str] = ( + "Alias IP Range is a feature in Google Cloud Platform that allows you to" + " assign additional IP addresses to virtual machines within a subnet." + ) mapping: ClassVar[Dict[str, Bender]] = { "ip_cidr_range": S("ipCidrRange"), "subnetwork_range_name": S("subnetworkRangeName"), @@ -2663,7 +3067,10 @@ class GcpAliasIpRange: class GcpNetworkInterface: kind: ClassVar[str] = "gcp_network_interface" kind_display: ClassVar[str] = "GCP Network Interface" - kind_description: ClassVar[str] = "A network interface is a virtual network interface card (NIC) that enables VM instances to send and receive network packets." + kind_description: ClassVar[str] = ( + "A network interface is a virtual network interface card (NIC) that enables" + " VM instances to send and receive network packets." + ) mapping: ClassVar[Dict[str, Bender]] = { "access_configs": S("accessConfigs", default=[]) >> ForallBend(GcpAccessConfig.mapping), "alias_ip_ranges": S("aliasIpRanges", default=[]) >> ForallBend(GcpAliasIpRange.mapping), @@ -2700,7 +3107,11 @@ class GcpNetworkInterface: class GcpReservationAffinity: kind: ClassVar[str] = "gcp_reservation_affinity" kind_display: ClassVar[str] = "GCP Reservation Affinity" - kind_description: ClassVar[str] = "Reservation Affinity is a feature in Google Cloud Platform that allows you to specify that certain instances should be hosted on the same physical machine to leverage the performance benefits of co-location." + kind_description: ClassVar[str] = ( + "Reservation Affinity is a feature in Google Cloud Platform that allows you" + " to specify that certain instances should be hosted on the same physical" + " machine to leverage the performance benefits of co-location." + ) mapping: ClassVar[Dict[str, Bender]] = { "consume_reservation_type": S("consumeReservationType"), "key": S("key"), @@ -2715,7 +3126,11 @@ class GcpReservationAffinity: class GcpSchedulingNodeAffinity: kind: ClassVar[str] = "gcp_scheduling_node_affinity" kind_display: ClassVar[str] = "GCP Scheduling Node Affinity" - kind_description: ClassVar[str] = "GCP Scheduling Node Affinity allows you to schedule your workloads on specific nodes in Google Cloud Platform, based on node labels and expressions." + kind_description: ClassVar[str] = ( + "GCP Scheduling Node Affinity allows you to schedule your workloads on" + " specific nodes in Google Cloud Platform, based on node labels and" + " expressions." + ) mapping: ClassVar[Dict[str, Bender]] = { "key": S("key"), "operator": S("operator"), @@ -2730,7 +3145,11 @@ class GcpSchedulingNodeAffinity: class GcpScheduling: kind: ClassVar[str] = "gcp_scheduling" kind_display: ClassVar[str] = "GCP Scheduling" - kind_description: ClassVar[str] = "GCP Scheduling refers to the ability to set up automated, recurring tasks on Google Cloud Platform, allowing users to schedule actions like running scripts or executing compute instances at specified intervals." + kind_description: ClassVar[str] = ( + "GCP Scheduling refers to the ability to set up automated, recurring tasks on" + " Google Cloud Platform, allowing users to schedule actions like running" + " scripts or executing compute instances at specified intervals." + ) mapping: ClassVar[Dict[str, Bender]] = { "automatic_restart": S("automaticRestart"), "instance_termination_action": S("instanceTerminationAction"), @@ -2755,7 +3174,11 @@ class GcpScheduling: class GcpServiceAccount: kind: ClassVar[str] = "gcp_service_account" kind_display: ClassVar[str] = "GCP Service Account" - kind_description: ClassVar[str] = "A GCP Service Account is a special account that represents an application rather than an individual user. It allows applications to authenticate and access Google Cloud Platform resources securely." + kind_description: ClassVar[str] = ( + "A GCP Service Account is a special account that represents an application" + " rather than an individual user. It allows applications to authenticate and" + " access Google Cloud Platform resources securely." + ) mapping: ClassVar[Dict[str, Bender]] = {"email": S("email"), "scopes": S("scopes", default=[])} email: Optional[str] = field(default=None) scopes: Optional[List[str]] = field(default=None) @@ -2765,7 +3188,11 @@ class GcpServiceAccount: class GcpShieldedInstanceConfig: kind: ClassVar[str] = "gcp_shielded_instance_config" kind_display: ClassVar[str] = "GCP Shielded Instance Config" - kind_description: ClassVar[str] = "Shielded Instance Config enables enhanced security and protection for virtual machines on Google Cloud Platform by validating the integrity of the boot firmware and verifying the virtual machine's identity." + kind_description: ClassVar[str] = ( + "Shielded Instance Config enables enhanced security and protection for" + " virtual machines on Google Cloud Platform by validating the integrity of the" + " boot firmware and verifying the virtual machine's identity." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_integrity_monitoring": S("enableIntegrityMonitoring"), "enable_secure_boot": S("enableSecureBoot"), @@ -2780,7 +3207,10 @@ class GcpShieldedInstanceConfig: class GcpTags: kind: ClassVar[str] = "gcp_tags" kind_display: ClassVar[str] = "GCP Tags" - kind_description: ClassVar[str] = "GCP Tags are labels applied to resources in Google Cloud Platform (GCP) to organize and group them for easier management and control." + kind_description: ClassVar[str] = ( + "GCP Tags are labels applied to resources in Google Cloud Platform (GCP) to" + " organize and group them for easier management and control." + ) mapping: ClassVar[Dict[str, Bender]] = {"fingerprint": S("fingerprint"), "items": S("items", default=[])} fingerprint: Optional[str] = field(default=None) items: Optional[List[str]] = field(default=None) @@ -2790,7 +3220,10 @@ class GcpTags: class GcpInstanceProperties: kind: ClassVar[str] = "gcp_instance_properties" kind_display: ClassVar[str] = "GCP Instance Properties" - kind_description: ClassVar[str] = "GCP Instance Properties are specific attributes and configurations for virtual machine instances in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Instance Properties are specific attributes and configurations for" + " virtual machine instances in Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "advanced_machine_features": S("advancedMachineFeatures", default={}) >> Bend(GcpAdvancedMachineFeatures.mapping), @@ -2842,7 +3275,11 @@ class GcpInstanceProperties: class GcpDiskInstantiationConfig: kind: ClassVar[str] = "gcp_disk_instantiation_config" kind_display: ClassVar[str] = "GCP Disk Instantiation Config" - kind_description: ClassVar[str] = "GCP Disk Instantiation Config is a configuration used for creating and customizing disks in Google Cloud Platform (GCP) that are used for storing data and attaching to virtual machines." + kind_description: ClassVar[str] = ( + "GCP Disk Instantiation Config is a configuration used for creating and" + " customizing disks in Google Cloud Platform (GCP) that are used for storing" + " data and attaching to virtual machines." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_delete": S("autoDelete"), "custom_image": S("customImage"), @@ -2859,7 +3296,10 @@ class GcpDiskInstantiationConfig: class GcpSourceInstanceParams: kind: ClassVar[str] = "gcp_source_instance_params" kind_display: ClassVar[str] = "GCP Source Instance Params" - kind_description: ClassVar[str] = "In Google Cloud Platform (GCP), Source Instance Params are parameters used when creating a source instance for data migration or replication tasks." + kind_description: ClassVar[str] = ( + "In Google Cloud Platform (GCP), Source Instance Params are parameters used" + " when creating a source instance for data migration or replication tasks." + ) mapping: ClassVar[Dict[str, Bender]] = { "disk_configs": S("diskConfigs", default=[]) >> ForallBend(GcpDiskInstantiationConfig.mapping) } @@ -2870,7 +3310,10 @@ class GcpSourceInstanceParams: class GcpInstanceTemplate(GcpResource): kind: ClassVar[str] = "gcp_instance_template" kind_display: ClassVar[str] = "GCP Instance Template" - kind_description: ClassVar[str] = "GCP Instance Templates are reusable configuration templates that define the settings for Google Compute Engine virtual machine instances." + kind_description: ClassVar[str] = ( + "GCP Instance Templates are reusable configuration templates that define the" + " settings for Google Compute Engine virtual machine instances." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_machine_type"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -2910,7 +3353,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpInstanceParams: kind: ClassVar[str] = "gcp_instance_params" kind_display: ClassVar[str] = "GCP Instance Parameters" - kind_description: ClassVar[str] = "GCP Instance Parameters are specific settings and configurations, such as machine type, disk size, and network settings, that can be applied to Google Cloud Platform virtual machine instances." + kind_description: ClassVar[str] = ( + "GCP Instance Parameters are specific settings and configurations, such as" + " machine type, disk size, and network settings, that can be applied to Google" + " Cloud Platform virtual machine instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"resource_manager_tags": S("resourceManagerTags")} resource_manager_tags: Optional[Dict[str, str]] = field(default=None) @@ -2919,7 +3366,10 @@ class GcpInstanceParams: class GcpInstance(GcpResource, BaseInstance): kind: ClassVar[str] = "gcp_instance" kind_display: ClassVar[str] = "GCP Instance" - kind_description: ClassVar[str] = "GCP Instances are virtual machines in Google Cloud Platform that can be used to run applications and services on Google's infrastructure." + kind_description: ClassVar[str] = ( + "GCP Instances are virtual machines in Google Cloud Platform that can be used" + " to run applications and services on Google's infrastructure." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_network", "gcp_subnetwork", "gcp_machine_type"], @@ -3095,7 +3545,11 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: class GcpInterconnectAttachmentPartnerMetadata: kind: ClassVar[str] = "gcp_interconnect_attachment_partner_metadata" kind_display: ClassVar[str] = "GCP Interconnect Attachment Partner Metadata" - kind_description: ClassVar[str] = "Partner metadata for a Google Cloud Platform (GCP) Interconnect Attachment, which provides additional information about the partner associated with the interconnect attachment." + kind_description: ClassVar[str] = ( + "Partner metadata for a Google Cloud Platform (GCP) Interconnect Attachment," + " which provides additional information about the partner associated with the" + " interconnect attachment." + ) mapping: ClassVar[Dict[str, Bender]] = { "interconnect_name": S("interconnectName"), "partner_name": S("partnerName"), @@ -3110,7 +3564,11 @@ class GcpInterconnectAttachmentPartnerMetadata: class GcpInterconnectAttachment(GcpResource): kind: ClassVar[str] = "gcp_interconnect_attachment" kind_display: ClassVar[str] = "GCP Interconnect Attachment" - kind_description: ClassVar[str] = "Interconnect Attachment is a resource that allows you to connect your on-premises network to Google Cloud Platform (GCP) using a dedicated physical link." + kind_description: ClassVar[str] = ( + "Interconnect Attachment is a resource that allows you to connect your on-" + " premises network to Google Cloud Platform (GCP) using a dedicated physical" + " link." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3193,7 +3651,10 @@ class GcpInterconnectAttachment(GcpResource): class GcpInterconnectLocationRegionInfo: kind: ClassVar[str] = "gcp_interconnect_location_region_info" kind_display: ClassVar[str] = "GCP Interconnect Location Region Info" - kind_description: ClassVar[str] = "This resource provides information about the available regions for Google Cloud Platform (GCP) Interconnect locations." + kind_description: ClassVar[str] = ( + "This resource provides information about the available regions for Google" + " Cloud Platform (GCP) Interconnect locations." + ) mapping: ClassVar[Dict[str, Bender]] = { "expected_rtt_ms": S("expectedRttMs"), "location_presence": S("locationPresence"), @@ -3208,7 +3669,12 @@ class GcpInterconnectLocationRegionInfo: class GcpInterconnectLocation(GcpResource): kind: ClassVar[str] = "gcp_interconnect_location" kind_display: ClassVar[str] = "GCP Interconnect Location" - kind_description: ClassVar[str] = "GCP Interconnect Location refers to the physical location where Google Cloud Platform (GCP) Interconnects are available. Interconnects provide dedicated connectivity options between an organization's on-premises network and GCP's network." + kind_description: ClassVar[str] = ( + "GCP Interconnect Location refers to the physical location where Google Cloud" + " Platform (GCP) Interconnects are available. Interconnects provide dedicated" + " connectivity options between an organization's on-premises network and GCP's" + " network." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3256,7 +3722,11 @@ class GcpInterconnectLocation(GcpResource): class GcpInterconnectCircuitInfo: kind: ClassVar[str] = "gcp_interconnect_circuit_info" kind_display: ClassVar[str] = "GCP Interconnect Circuit Info" - kind_description: ClassVar[str] = "Interconnect Circuit Info provides details about the dedicated network connection between an on-premises network and Google Cloud Platform (GCP) for faster and more reliable communication." + kind_description: ClassVar[str] = ( + "Interconnect Circuit Info provides details about the dedicated network" + " connection between an on-premises network and Google Cloud Platform (GCP)" + " for faster and more reliable communication." + ) mapping: ClassVar[Dict[str, Bender]] = { "customer_demarc_id": S("customerDemarcId"), "google_circuit_id": S("googleCircuitId"), @@ -3271,7 +3741,11 @@ class GcpInterconnectCircuitInfo: class GcpInterconnectOutageNotification: kind: ClassVar[str] = "gcp_interconnect_outage_notification" kind_display: ClassVar[str] = "GCP Interconnect Outage Notification" - kind_description: ClassVar[str] = "GCP Interconnect Outage Notification is a service provided by Google Cloud Platform to inform users about any disruptions or outages in their Interconnect connectivity to the GCP network." + kind_description: ClassVar[str] = ( + "GCP Interconnect Outage Notification is a service provided by Google Cloud" + " Platform to inform users about any disruptions or outages in their" + " Interconnect connectivity to the GCP network." + ) mapping: ClassVar[Dict[str, Bender]] = { "affected_circuits": S("affectedCircuits", default=[]), "description": S("description"), @@ -3296,7 +3770,11 @@ class GcpInterconnectOutageNotification: class GcpInterconnect(GcpResource): kind: ClassVar[str] = "gcp_interconnect" kind_display: ClassVar[str] = "GCP Interconnect" - kind_description: ClassVar[str] = "GCP Interconnect is a dedicated connection between your on-premises network and Google Cloud Platform, providing a high-speed and reliable link for data transfer." + kind_description: ClassVar[str] = ( + "GCP Interconnect is a dedicated connection between your on-premises network" + " and Google Cloud Platform, providing a high-speed and reliable link for data" + " transfer." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3357,7 +3835,10 @@ class GcpInterconnect(GcpResource): class GcpLicenseResourceRequirements: kind: ClassVar[str] = "gcp_license_resource_requirements" kind_display: ClassVar[str] = "GCP License Resource Requirements" - kind_description: ClassVar[str] = "GCP License Resource Requirements ensure that the necessary resources are available for managing licenses on the Google Cloud Platform (GCP)." + kind_description: ClassVar[str] = ( + "GCP License Resource Requirements ensure that the necessary resources are" + " available for managing licenses on the Google Cloud Platform (GCP)." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_guest_cpu_count": S("minGuestCpuCount"), "min_memory_mb": S("minMemoryMb"), @@ -3370,7 +3851,10 @@ class GcpLicenseResourceRequirements: class GcpLicense(GcpResource): kind: ClassVar[str] = "gcp_license" kind_display: ClassVar[str] = "GCP License" - kind_description: ClassVar[str] = "GCP Licenses are used to authorize the use of certain Google Cloud Platform services and resources." + kind_description: ClassVar[str] = ( + "GCP Licenses are used to authorize the use of certain Google Cloud Platform" + " services and resources." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3406,7 +3890,11 @@ class GcpLicense(GcpResource): class GcpSavedDisk: kind: ClassVar[str] = "gcp_saved_disk" kind_display: ClassVar[str] = "GCP Saved Disk" - kind_description: ClassVar[str] = "Saved Disks in Google Cloud Platform are persistent storage devices that can be attached to virtual machine instances, allowing users to store and retrieve data." + kind_description: ClassVar[str] = ( + "Saved Disks in Google Cloud Platform are persistent storage devices that can" + " be attached to virtual machine instances, allowing users to store and" + " retrieve data." + ) mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "source_disk": S("sourceDisk"), @@ -3423,7 +3911,11 @@ class GcpSavedDisk: class GcpSourceDiskEncryptionKey: kind: ClassVar[str] = "gcp_source_disk_encryption_key" kind_display: ClassVar[str] = "GCP Source Disk Encryption Key" - kind_description: ClassVar[str] = "A GCP Source Disk Encryption Key is used to encrypt the disk images that are used as the sources for creating new disk images in Google Cloud Platform, ensuring data privacy and security." + kind_description: ClassVar[str] = ( + "A GCP Source Disk Encryption Key is used to encrypt the disk images that are" + " used as the sources for creating new disk images in Google Cloud Platform," + " ensuring data privacy and security." + ) mapping: ClassVar[Dict[str, Bender]] = { "disk_encryption_key": S("diskEncryptionKey", default={}) >> Bend(GcpCustomerEncryptionKey.mapping), "source_disk": S("sourceDisk"), @@ -3436,7 +3928,11 @@ class GcpSourceDiskEncryptionKey: class GcpSavedAttachedDisk: kind: ClassVar[str] = "gcp_saved_attached_disk" kind_display: ClassVar[str] = "GCP Saved Attached Disk" - kind_description: ClassVar[str] = "GCP Saved Attached Disk is a disk storage resource in Google Cloud Platform that is attached to a virtual machine instance and can be saved as a separate resource for future use." + kind_description: ClassVar[str] = ( + "GCP Saved Attached Disk is a disk storage resource in Google Cloud Platform" + " that is attached to a virtual machine instance and can be saved as a" + " separate resource for future use." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_delete": S("autoDelete"), "boot": S("boot"), @@ -3475,7 +3971,12 @@ class GcpSavedAttachedDisk: class GcpSourceInstanceProperties: kind: ClassVar[str] = "gcp_source_instance_properties" kind_display: ClassVar[str] = "GCP Source Instance Properties" - kind_description: ClassVar[str] = "GCP Source Instance Properties refers to the configuration and characteristics of a virtual machine instance in Google Cloud Platform (GCP). It includes information such as the instance name, machine type, network settings, and attached disks." + kind_description: ClassVar[str] = ( + "GCP Source Instance Properties refers to the configuration and" + " characteristics of a virtual machine instance in Google Cloud Platform" + " (GCP). It includes information such as the instance name, machine type," + " network settings, and attached disks." + ) mapping: ClassVar[Dict[str, Bender]] = { "can_ip_forward": S("canIpForward"), "deletion_protection": S("deletionProtection"), @@ -3512,7 +4013,11 @@ class GcpSourceInstanceProperties: class GcpMachineImage(GcpResource): kind: ClassVar[str] = "gcp_machine_image" kind_display: ClassVar[str] = "GCP Machine Image" - kind_description: ClassVar[str] = "Machine Images in Google Cloud Platform are snapshots of a virtual machine's disk that can be used to create new instances with the same configuration and data." + kind_description: ClassVar[str] = ( + "Machine Images in Google Cloud Platform are snapshots of a virtual machine's" + " disk that can be used to create new instances with the same configuration" + " and data." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "default": ["gcp_disk"], @@ -3578,7 +4083,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpAccelerators: kind: ClassVar[str] = "gcp_accelerators" kind_display: ClassVar[str] = "GCP Accelerators" - kind_description: ClassVar[str] = "Accelerators in Google Cloud Platform provide specialized hardware to enhance the performance of compute-intensive workloads, such as machine learning and high-performance computing tasks." + kind_description: ClassVar[str] = ( + "Accelerators in Google Cloud Platform provide specialized hardware to" + " enhance the performance of compute-intensive workloads, such as machine" + " learning and high-performance computing tasks." + ) mapping: ClassVar[Dict[str, Bender]] = { "guest_accelerator_count": S("guestAcceleratorCount"), "guest_accelerator_type": S("guestAcceleratorType"), @@ -3591,7 +4100,10 @@ class GcpAccelerators: class GcpMachineType(GcpResource, BaseInstanceType): kind: ClassVar[str] = "gcp_machine_type" kind_display: ClassVar[str] = "GCP Machine Type" - kind_description: ClassVar[str] = "GCP Machine Types are predefined hardware configurations that define the virtualized hardware resources for Google Cloud Platform virtual machines." + kind_description: ClassVar[str] = ( + "GCP Machine Types are predefined hardware configurations that define the" + " virtualized hardware resources for Google Cloud Platform virtual machines." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3759,7 +4271,11 @@ def filter(sku: GcpSku) -> bool: class GcpNetworkEdgeSecurityService(GcpResource): kind: ClassVar[str] = "gcp_network_edge_security_service" kind_display: ClassVar[str] = "GCP Network Edge Security Service" - kind_description: ClassVar[str] = "GCP Network Edge Security Service provides secure and reliable access to resources in the Google Cloud Platform network, reducing the risk of unauthorized access and data breaches." + kind_description: ClassVar[str] = ( + "GCP Network Edge Security Service provides secure and reliable access to" + " resources in the Google Cloud Platform network, reducing the risk of" + " unauthorized access and data breaches." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3796,7 +4312,11 @@ class GcpNetworkEdgeSecurityService(GcpResource): class GcpNetworkPeering: kind: ClassVar[str] = "gcp_network_peering" kind_display: ClassVar[str] = "GCP Network Peering" - kind_description: ClassVar[str] = "Network Peering in Google Cloud Platform enables direct connectivity between two Virtual Private Cloud (VPC) networks, allowing them to communicate securely and efficiently with each other." + kind_description: ClassVar[str] = ( + "Network Peering in Google Cloud Platform enables direct connectivity between" + " two Virtual Private Cloud (VPC) networks, allowing them to communicate" + " securely and efficiently with each other." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_create_routes": S("autoCreateRoutes"), "exchange_subnet_routes": S("exchangeSubnetRoutes"), @@ -3829,7 +4349,10 @@ class GcpNetworkPeering: class GcpNetwork(GcpResource): kind: ClassVar[str] = "gcp_network" kind_display: ClassVar[str] = "GCP Network" - kind_description: ClassVar[str] = "GCP Network is a virtual network infrastructure that allows users to securely connect and isolate their resources in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Network is a virtual network infrastructure that allows users to" + " securely connect and isolate their resources in the Google Cloud Platform." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -3881,7 +4404,11 @@ class GcpNetwork(GcpResource): class GcpNodeGroupAutoscalingPolicy: kind: ClassVar[str] = "gcp_node_group_autoscaling_policy" kind_display: ClassVar[str] = "GCP Node Group Autoscaling Policy" - kind_description: ClassVar[str] = "GCP Node Group Autoscaling Policy is a feature in Google Cloud Platform that allows automatic adjustment of the number of nodes in a node group based on demand, ensuring optimal resource utilization and performance." + kind_description: ClassVar[str] = ( + "GCP Node Group Autoscaling Policy is a feature in Google Cloud Platform that" + " allows automatic adjustment of the number of nodes in a node group based on" + " demand, ensuring optimal resource utilization and performance." + ) mapping: ClassVar[Dict[str, Bender]] = {"max_nodes": S("maxNodes"), "min_nodes": S("minNodes"), "mode": S("mode")} max_nodes: Optional[int] = field(default=None) min_nodes: Optional[int] = field(default=None) @@ -3892,7 +4419,12 @@ class GcpNodeGroupAutoscalingPolicy: class GcpNodeGroupMaintenanceWindow: kind: ClassVar[str] = "gcp_node_group_maintenance_window" kind_display: ClassVar[str] = "GCP Node Group Maintenance Window" - kind_description: ClassVar[str] = "GCP Node Group Maintenance Window is a feature in Google Cloud Platform that allows users to schedule maintenance windows for node groups, during which the nodes can undergo maintenance operations without disrupting the applications running on them." + kind_description: ClassVar[str] = ( + "GCP Node Group Maintenance Window is a feature in Google Cloud Platform that" + " allows users to schedule maintenance windows for node groups, during which" + " the nodes can undergo maintenance operations without disrupting the" + " applications running on them." + ) mapping: ClassVar[Dict[str, Bender]] = { "maintenance_duration": S("maintenanceDuration", default={}) >> Bend(GcpDuration.mapping), "start_time": S("startTime"), @@ -3905,7 +4437,10 @@ class GcpNodeGroupMaintenanceWindow: class GcpShareSettingsProjectConfig: kind: ClassVar[str] = "gcp_share_settings_project_config" kind_display: ClassVar[str] = "GCP Share Settings Project Config" - kind_description: ClassVar[str] = "Share Settings Project Config represents the configuration settings for sharing projects in Google Cloud Platform (GCP)." + kind_description: ClassVar[str] = ( + "Share Settings Project Config represents the configuration settings for" + " sharing projects in Google Cloud Platform (GCP)." + ) mapping: ClassVar[Dict[str, Bender]] = {"project_id": S("projectId")} project_id: Optional[str] = field(default=None) @@ -3914,7 +4449,10 @@ class GcpShareSettingsProjectConfig: class GcpShareSettings: kind: ClassVar[str] = "gcp_share_settings" kind_display: ClassVar[str] = "GCP Share Settings" - kind_description: ClassVar[str] = "GCP Share Settings refer to the configuration options for sharing resources and access permissions in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Share Settings refer to the configuration options for sharing resources" + " and access permissions in the Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "project_map": S("projectMap", default={}) >> MapDict(value_bender=Bend(GcpShareSettingsProjectConfig.mapping)), "share_type": S("shareType"), @@ -3927,7 +4465,11 @@ class GcpShareSettings: class GcpNodeGroup(GcpResource): kind: ClassVar[str] = "gcp_node_group" kind_display: ClassVar[str] = "GCP Node Group" - kind_description: ClassVar[str] = "GCP Node Group is a resource in Google Cloud Platform that allows you to create and manage groups of virtual machines (nodes) for running applications." + kind_description: ClassVar[str] = ( + "GCP Node Group is a resource in Google Cloud Platform that allows you to" + " create and manage groups of virtual machines (nodes) for running" + " applications." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_node_template"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -3978,7 +4520,12 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpLocalDisk: kind: ClassVar[str] = "gcp_local_disk" kind_display: ClassVar[str] = "GCP Local Disk" - kind_description: ClassVar[str] = "GCP Local Disk is a type of storage device provided by Google Cloud Platform that allows users to store and access data on a virtual machine's local disk. It provides high-performance and low-latency storage for temporary or frequently accessed data." + kind_description: ClassVar[str] = ( + "GCP Local Disk is a type of storage device provided by Google Cloud Platform" + " that allows users to store and access data on a virtual machine's local" + " disk. It provides high-performance and low-latency storage for temporary or" + " frequently accessed data." + ) mapping: ClassVar[Dict[str, Bender]] = { "disk_count": S("diskCount"), "disk_size_gb": S("diskSizeGb"), @@ -3993,7 +4540,10 @@ class GcpLocalDisk: class GcpNodeTemplateNodeTypeFlexibility: kind: ClassVar[str] = "gcp_node_template_node_type_flexibility" kind_display: ClassVar[str] = "GCP Node Template Node Type Flexibility" - kind_description: ClassVar[str] = "This resource allows for flexible node type configuration in Google Cloud Platform node templates." + kind_description: ClassVar[str] = ( + "This resource allows for flexible node type configuration in Google Cloud" + " Platform node templates." + ) mapping: ClassVar[Dict[str, Bender]] = {"cpus": S("cpus"), "local_ssd": S("localSsd"), "memory": S("memory")} cpus: Optional[str] = field(default=None) local_ssd: Optional[str] = field(default=None) @@ -4004,7 +4554,10 @@ class GcpNodeTemplateNodeTypeFlexibility: class GcpNodeTemplate(GcpResource): kind: ClassVar[str] = "gcp_node_template" kind_display: ClassVar[str] = "GCP Node Template" - kind_description: ClassVar[str] = "GCP Node Template is a reusable configuration template used to create and manage virtual machine instances in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Node Template is a reusable configuration template used to create and" + " manage virtual machine instances in the Google Cloud Platform." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk_type"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -4057,7 +4610,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpNodeType(GcpResource): kind: ClassVar[str] = "gcp_node_type" kind_display: ClassVar[str] = "GCP Node Type" - kind_description: ClassVar[str] = "GCP Node Types determine the hardware configuration of virtual machines in Google Cloud Platform (GCP). Each node type has specific CPU, memory, and storage capacity." + kind_description: ClassVar[str] = ( + "GCP Node Types determine the hardware configuration of virtual machines in" + " Google Cloud Platform (GCP). Each node type has specific CPU, memory, and" + " storage capacity." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4093,7 +4650,10 @@ class GcpNodeType(GcpResource): class GcpPacketMirroringForwardingRuleInfo: kind: ClassVar[str] = "gcp_packet_mirroring_forwarding_rule_info" kind_display: ClassVar[str] = "GCP Packet Mirroring Forwarding Rule Info" - kind_description: ClassVar[str] = "Packet Mirroring Forwarding Rule Info provides information about the forwarding rules used for packet mirroring in Google Cloud Platform (GCP)." + kind_description: ClassVar[str] = ( + "Packet Mirroring Forwarding Rule Info provides information about the" + " forwarding rules used for packet mirroring in Google Cloud Platform (GCP)." + ) mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -4103,7 +4663,11 @@ class GcpPacketMirroringForwardingRuleInfo: class GcpPacketMirroringFilter: kind: ClassVar[str] = "gcp_packet_mirroring_filter" kind_display: ClassVar[str] = "GCP Packet Mirroring Filter" - kind_description: ClassVar[str] = "GCP Packet Mirroring Filter is a feature in Google Cloud Platform that allows filtering of network packets for traffic analysis and troubleshooting purposes." + kind_description: ClassVar[str] = ( + "GCP Packet Mirroring Filter is a feature in Google Cloud Platform that" + " allows filtering of network packets for traffic analysis and troubleshooting" + " purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "ip_protocols": S("IPProtocols", default=[]), "cidr_ranges": S("cidrRanges", default=[]), @@ -4118,7 +4682,11 @@ class GcpPacketMirroringFilter: class GcpPacketMirroringMirroredResourceInfoInstanceInfo: kind: ClassVar[str] = "gcp_packet_mirroring_mirrored_resource_info_instance_info" kind_display: ClassVar[str] = "GCP Packet Mirroring Mirrored Resource Instance Info" - kind_description: ClassVar[str] = "Packet Mirroring in Google Cloud Platform allows you to monitor and capture network traffic in real-time. This particular resource provides information about the instance being mirrored." + kind_description: ClassVar[str] = ( + "Packet Mirroring in Google Cloud Platform allows you to monitor and capture" + " network traffic in real-time. This particular resource provides information" + " about the instance being mirrored." + ) mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -4128,7 +4696,11 @@ class GcpPacketMirroringMirroredResourceInfoInstanceInfo: class GcpPacketMirroringMirroredResourceInfoSubnetInfo: kind: ClassVar[str] = "gcp_packet_mirroring_mirrored_resource_info_subnet_info" kind_display: ClassVar[str] = "GCP Packet Mirroring Mirrored Resource Info Subnet Info" - kind_description: ClassVar[str] = "Packet Mirroring is a feature in Google Cloud Platform that allows you to duplicate and send network traffic from one subnet to another subnet for monitoring and analysis purposes." + kind_description: ClassVar[str] = ( + "Packet Mirroring is a feature in Google Cloud Platform that allows you to" + " duplicate and send network traffic from one subnet to another subnet for" + " monitoring and analysis purposes." + ) mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -4138,7 +4710,11 @@ class GcpPacketMirroringMirroredResourceInfoSubnetInfo: class GcpPacketMirroringMirroredResourceInfo: kind: ClassVar[str] = "gcp_packet_mirroring_mirrored_resource_info" kind_display: ClassVar[str] = "GCP Packet Mirroring Mirrored Resource Info" - kind_description: ClassVar[str] = "Packet Mirroring Mirrored Resource Info is a feature in Google Cloud Platform that allows users to collect and analyze network traffic by duplicating packets from a specific resource in the network." + kind_description: ClassVar[str] = ( + "Packet Mirroring Mirrored Resource Info is a feature in Google Cloud" + " Platform that allows users to collect and analyze network traffic by" + " duplicating packets from a specific resource in the network." + ) mapping: ClassVar[Dict[str, Bender]] = { "instances": S("instances", default=[]) >> ForallBend(GcpPacketMirroringMirroredResourceInfoInstanceInfo.mapping), @@ -4155,7 +4731,11 @@ class GcpPacketMirroringMirroredResourceInfo: class GcpPacketMirroringNetworkInfo: kind: ClassVar[str] = "gcp_packet_mirroring_network_info" kind_display: ClassVar[str] = "GCP Packet Mirroring Network Info" - kind_description: ClassVar[str] = "Packet Mirroring Network Info in Google Cloud Platform allows users to copy and analyze network traffic in virtual machine instances for monitoring, troubleshooting, and security purposes." + kind_description: ClassVar[str] = ( + "Packet Mirroring Network Info in Google Cloud Platform allows users to copy" + " and analyze network traffic in virtual machine instances for monitoring," + " troubleshooting, and security purposes." + ) mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) url: Optional[str] = field(default=None) @@ -4165,7 +4745,11 @@ class GcpPacketMirroringNetworkInfo: class GcpPacketMirroring(GcpResource): kind: ClassVar[str] = "gcp_packet_mirroring" kind_display: ClassVar[str] = "GCP Packet Mirroring" - kind_description: ClassVar[str] = "GCP Packet Mirroring is a service provided by Google Cloud Platform that allows users to capture and mirror network traffic in order to monitor and analyze network data for security and troubleshooting purposes." + kind_description: ClassVar[str] = ( + "GCP Packet Mirroring is a service provided by Google Cloud Platform that" + " allows users to capture and mirror network traffic in order to monitor and" + " analyze network data for security and troubleshooting purposes." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_instance", "gcp_subnetwork"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -4214,7 +4798,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpPublicAdvertisedPrefixPublicDelegatedPrefix: kind: ClassVar[str] = "gcp_public_advertised_prefix_public_delegated_prefix" kind_display: ClassVar[str] = "GCP Public Advertised Prefix - Public Delegated Prefix" - kind_description: ClassVar[str] = "A GCP Public Advertised Prefix - Public Delegated Prefix is a range of IP addresses that can be advertised and delegated within the Google Cloud Platform network for public connectivity." + kind_description: ClassVar[str] = ( + "A GCP Public Advertised Prefix - Public Delegated Prefix is a range of IP" + " addresses that can be advertised and delegated within the Google Cloud" + " Platform network for public connectivity." + ) mapping: ClassVar[Dict[str, Bender]] = { "ip_range": S("ipRange"), "name": S("name"), @@ -4233,7 +4821,10 @@ class GcpPublicAdvertisedPrefixPublicDelegatedPrefix: class GcpPublicAdvertisedPrefix(GcpResource): kind: ClassVar[str] = "gcp_public_advertised_prefix" kind_display: ClassVar[str] = "GCP Public Advertised Prefix" - kind_description: ClassVar[str] = "A GCP Public Advertised Prefix is a range of IP addresses that can be advertised over the internet to allow communication with GCP resources." + kind_description: ClassVar[str] = ( + "A GCP Public Advertised Prefix is a range of IP addresses that can be" + " advertised over the internet to allow communication with GCP resources." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_public_delegated_prefix"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -4281,7 +4872,12 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpLicenseResourceCommitment: kind: ClassVar[str] = "gcp_license_resource_commitment" kind_display: ClassVar[str] = "GCP License Resource Commitment" - kind_description: ClassVar[str] = "A GCP license resource commitment is a commitment made by a customer to use a specific software license offered by Google Cloud Platform (GCP) for a predetermined period of time. This commitment ensures consistent usage and cost savings for the customer." + kind_description: ClassVar[str] = ( + "A GCP license resource commitment is a commitment made by a customer to use" + " a specific software license offered by Google Cloud Platform (GCP) for a" + " predetermined period of time. This commitment ensures consistent usage and" + " cost savings for the customer." + ) mapping: ClassVar[Dict[str, Bender]] = { "amount": S("amount"), "cores_per_license": S("coresPerLicense"), @@ -4296,7 +4892,11 @@ class GcpLicenseResourceCommitment: class GcpAllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk: kind: ClassVar[str] = "gcp_allocation_specific_sku_allocation_allocated_instance_properties_reserved_disk" kind_display: ClassVar[str] = "GCP Specific SKU Allocation Allocated Instance Properties Reserved Disk" - kind_description: ClassVar[str] = "This resource refers to the reserved disk attached to a specific SKU allocation in Google Cloud Platform. Reserved disks are persistent storage devices used by virtual machine instances." + kind_description: ClassVar[str] = ( + "This resource refers to the reserved disk attached to a specific SKU" + " allocation in Google Cloud Platform. Reserved disks are persistent storage" + " devices used by virtual machine instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"disk_size_gb": S("diskSizeGb") >> AsInt(), "interface": S("interface")} disk_size_gb: Optional[int] = field(default=None) interface: Optional[str] = field(default=None) @@ -4306,7 +4906,11 @@ class GcpAllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk: class GcpAllocationSpecificSKUAllocationReservedInstanceProperties: kind: ClassVar[str] = "gcp_allocation_specific_sku_allocation_reserved_instance_properties" kind_display: ClassVar[str] = "GCP Allocation Specific SKU Allocation Reserved Instance Properties" - kind_description: ClassVar[str] = "Reserved Instance Properties allow users to allocate specific SKUs for reserved instances in Google Cloud Platform, optimizing usage and cost management." + kind_description: ClassVar[str] = ( + "Reserved Instance Properties allow users to allocate specific SKUs for" + " reserved instances in Google Cloud Platform, optimizing usage and cost" + " management." + ) mapping: ClassVar[Dict[str, Bender]] = { "guest_accelerators": S("guestAccelerators", default=[]) >> ForallBend(GcpAcceleratorConfig.mapping), "local_ssds": S("localSsds", default=[]) @@ -4328,7 +4932,10 @@ class GcpAllocationSpecificSKUAllocationReservedInstanceProperties: class GcpAllocationSpecificSKUReservation: kind: ClassVar[str] = "gcp_allocation_specific_sku_reservation" kind_display: ClassVar[str] = "GCP Allocation Specific SKU Reservation" - kind_description: ClassVar[str] = "A reservation for a specified SKU in Google Cloud Platform, allowing users to allocate and secure resources for future use." + kind_description: ClassVar[str] = ( + "A reservation for a specified SKU in Google Cloud Platform, allowing users" + " to allocate and secure resources for future use." + ) mapping: ClassVar[Dict[str, Bender]] = { "assured_count": S("assuredCount"), "count": S("count"), @@ -4346,7 +4953,11 @@ class GcpAllocationSpecificSKUReservation: class GcpReservation: kind: ClassVar[str] = "gcp_reservation" kind_display: ClassVar[str] = "GCP Reservation" - kind_description: ClassVar[str] = "GCP Reservation is a feature in Google Cloud Platform that allows users to reserve resources like virtual machine instances for future use, ensuring availability and cost savings." + kind_description: ClassVar[str] = ( + "GCP Reservation is a feature in Google Cloud Platform that allows users to" + " reserve resources like virtual machine instances for future use, ensuring" + " availability and cost savings." + ) mapping: ClassVar[Dict[str, Bender]] = { "commitment": S("commitment"), "creation_timestamp": S("creationTimestamp"), @@ -4380,7 +4991,11 @@ class GcpReservation: class GcpResourceCommitment: kind: ClassVar[str] = "gcp_resource_commitment" kind_display: ClassVar[str] = "GCP Resource Commitment" - kind_description: ClassVar[str] = "GCP Resource Commitment is a way to reserve resources in Google Cloud Platform for a specific period, ensuring availability and capacity for your applications." + kind_description: ClassVar[str] = ( + "GCP Resource Commitment is a way to reserve resources in Google Cloud" + " Platform for a specific period, ensuring availability and capacity for your" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "accelerator_type": S("acceleratorType"), "amount": S("amount"), @@ -4395,7 +5010,10 @@ class GcpResourceCommitment: class GcpCommitment(GcpResource): kind: ClassVar[str] = "gcp_commitment" kind_display: ClassVar[str] = "GCP Commitment" - kind_description: ClassVar[str] = "A GCP Commitment is a pre-purchased commitment in Google Cloud Platform, which provides discounted pricing for certain services and resources." + kind_description: ClassVar[str] = ( + "A GCP Commitment is a pre-purchased commitment in Google Cloud Platform," + " which provides discounted pricing for certain services and resources." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4450,7 +5068,11 @@ class GcpCommitment(GcpResource): class GcpHealthCheckService(GcpResource): kind: ClassVar[str] = "gcp_health_check_service" kind_display: ClassVar[str] = "GCP Health Check Service" - kind_description: ClassVar[str] = "The GCP Health Check Service is a feature provided by Google Cloud Platform (GCP) that monitors the health and availability of backend services and instances." + kind_description: ClassVar[str] = ( + "The GCP Health Check Service is a feature provided by Google Cloud Platform" + " (GCP) that monitors the health and availability of backend services and" + " instances." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4488,7 +5110,12 @@ class GcpHealthCheckService(GcpResource): class GcpNotificationEndpointGrpcSettings: kind: ClassVar[str] = "gcp_notification_endpoint_grpc_settings" kind_display: ClassVar[str] = "GCP Notification Endpoint gRPC Settings" - kind_description: ClassVar[str] = "gRPC settings for a notification endpoint in Google Cloud Platform (GCP). gRPC is a high-performance, open-source remote procedure call (RPC) framework that can be used to build efficient and scalable communication between client and server applications." + kind_description: ClassVar[str] = ( + "gRPC settings for a notification endpoint in Google Cloud Platform (GCP)." + " gRPC is a high-performance, open-source remote procedure call (RPC)" + " framework that can be used to build efficient and scalable communication" + " between client and server applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "authority": S("authority"), "endpoint": S("endpoint"), @@ -4507,7 +5134,10 @@ class GcpNotificationEndpointGrpcSettings: class GcpNotificationEndpoint(GcpResource): kind: ClassVar[str] = "gcp_notification_endpoint" kind_display: ClassVar[str] = "GCP Notification Endpoint" - kind_description: ClassVar[str] = "A GCP Notification Endpoint is a specific destination to send notifications from Google Cloud Platform services to, such as Pub/Sub or HTTP endpoints." + kind_description: ClassVar[str] = ( + "A GCP Notification Endpoint is a specific destination to send notifications" + " from Google Cloud Platform services to, such as Pub/Sub or HTTP endpoints." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4540,7 +5170,11 @@ class GcpNotificationEndpoint(GcpResource): class GcpSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig: kind: ClassVar[str] = "gcp_security_policy_adaptive_protection_config_layer7_ddos_defense_config" kind_display: ClassVar[str] = "GCP Security Policy Adaptive Protection Config Layer 7 DDoS Defense Config" - kind_description: ClassVar[str] = "Adaptive Protection Config Layer 7 DDoS Defense Config is a feature of Google Cloud Platform's Security Policy that enables adaptive protection against Layer 7 Distributed Denial of Service (DDoS) attacks." + kind_description: ClassVar[str] = ( + "Adaptive Protection Config Layer 7 DDoS Defense Config is a feature of" + " Google Cloud Platform's Security Policy that enables adaptive protection" + " against Layer 7 Distributed Denial of Service (DDoS) attacks." + ) mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "rule_visibility": S("ruleVisibility")} enable: Optional[bool] = field(default=None) rule_visibility: Optional[str] = field(default=None) @@ -4550,7 +5184,13 @@ class GcpSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig: class GcpSecurityPolicyAdaptiveProtectionConfig: kind: ClassVar[str] = "gcp_security_policy_adaptive_protection_config" kind_display: ClassVar[str] = "GCP Security Policy Adaptive Protection Config" - kind_description: ClassVar[str] = "The GCP Security Policy Adaptive Protection Config is a configuration setting that enables adaptive protection for a security policy in Google Cloud Platform. Adaptive protection dynamically adjusts the level of security based on the threat level and helps protect resources from malicious attacks." + kind_description: ClassVar[str] = ( + "The GCP Security Policy Adaptive Protection Config is a configuration" + " setting that enables adaptive protection for a security policy in Google" + " Cloud Platform. Adaptive protection dynamically adjusts the level of" + " security based on the threat level and helps protect resources from" + " malicious attacks." + ) mapping: ClassVar[Dict[str, Bender]] = { "layer7_ddos_defense_config": S("layer7DdosDefenseConfig", default={}) >> Bend(GcpSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.mapping) @@ -4564,7 +5204,10 @@ class GcpSecurityPolicyAdaptiveProtectionConfig: class GcpSecurityPolicyAdvancedOptionsConfigJsonCustomConfig: kind: ClassVar[str] = "gcp_security_policy_advanced_options_config_json_custom_config" kind_display: ClassVar[str] = "GCP Security Policy Advanced Options Config JSON Custom Config" - kind_description: ClassVar[str] = "This resource allows users to configure advanced options for security policies in Google Cloud Platform (GCP) using custom config in JSON format." + kind_description: ClassVar[str] = ( + "This resource allows users to configure advanced options for security" + " policies in Google Cloud Platform (GCP) using custom config in JSON format." + ) mapping: ClassVar[Dict[str, Bender]] = {"content_types": S("contentTypes", default=[])} content_types: Optional[List[str]] = field(default=None) @@ -4573,7 +5216,11 @@ class GcpSecurityPolicyAdvancedOptionsConfigJsonCustomConfig: class GcpSecurityPolicyAdvancedOptionsConfig: kind: ClassVar[str] = "gcp_security_policy_advanced_options_config" kind_display: ClassVar[str] = "GCP Security Policy Advanced Options Config" - kind_description: ClassVar[str] = "This is a configuration for advanced options in a Google Cloud Platform (GCP) Security Policy. It allows for fine-grained control and customization of the security policies for different resources in the GCP environment." + kind_description: ClassVar[str] = ( + "This is a configuration for advanced options in a Google Cloud Platform" + " (GCP) Security Policy. It allows for fine-grained control and customization" + " of the security policies for different resources in the GCP environment." + ) mapping: ClassVar[Dict[str, Bender]] = { "json_custom_config": S("jsonCustomConfig", default={}) >> Bend(GcpSecurityPolicyAdvancedOptionsConfigJsonCustomConfig.mapping), @@ -4589,7 +5236,11 @@ class GcpSecurityPolicyAdvancedOptionsConfig: class GcpSecurityPolicyRuleHttpHeaderActionHttpHeaderOption: kind: ClassVar[str] = "gcp_security_policy_rule_http_header_action_http_header_option" kind_display: ClassVar[str] = "GCP Security Policy Rule HTTP Header Action HTTP Header Option" - kind_description: ClassVar[str] = "HTTP Header Option is a feature in Google Cloud Platform's Security Policy that allows you to define specific actions to be taken on HTTP headers in network traffic." + kind_description: ClassVar[str] = ( + "HTTP Header Option is a feature in Google Cloud Platform's Security Policy" + " that allows you to define specific actions to be taken on HTTP headers in" + " network traffic." + ) mapping: ClassVar[Dict[str, Bender]] = {"header_name": S("headerName"), "header_value": S("headerValue")} header_name: Optional[str] = field(default=None) header_value: Optional[str] = field(default=None) @@ -4599,7 +5250,11 @@ class GcpSecurityPolicyRuleHttpHeaderActionHttpHeaderOption: class GcpSecurityPolicyRuleHttpHeaderAction: kind: ClassVar[str] = "gcp_security_policy_rule_http_header_action" kind_display: ClassVar[str] = "GCP Security Policy Rule HTTP Header Action" - kind_description: ClassVar[str] = "HTTP Header Action is a rule for configuring security policies in Google Cloud Platform (GCP) to control and manipulate HTTP headers for network traffic." + kind_description: ClassVar[str] = ( + "HTTP Header Action is a rule for configuring security policies in Google" + " Cloud Platform (GCP) to control and manipulate HTTP headers for network" + " traffic." + ) mapping: ClassVar[Dict[str, Bender]] = { "request_headers_to_adds": S("requestHeadersToAdds", default=[]) >> ForallBend(GcpSecurityPolicyRuleHttpHeaderActionHttpHeaderOption.mapping) @@ -4611,7 +5266,11 @@ class GcpSecurityPolicyRuleHttpHeaderAction: class GcpSecurityPolicyRuleMatcherConfig: kind: ClassVar[str] = "gcp_security_policy_rule_matcher_config" kind_display: ClassVar[str] = "GCP Security Policy Rule Matcher Config" - kind_description: ClassVar[str] = "GCP Security Policy Rule Matcher Config represents the configuration settings used to specify the matching criteria for security policy rules in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Security Policy Rule Matcher Config represents the configuration" + " settings used to specify the matching criteria for security policy rules in" + " Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"src_ip_ranges": S("srcIpRanges", default=[])} src_ip_ranges: Optional[List[str]] = field(default=None) @@ -4620,7 +5279,11 @@ class GcpSecurityPolicyRuleMatcherConfig: class GcpExpr: kind: ClassVar[str] = "gcp_expr" kind_display: ClassVar[str] = "GCP Express Route" - kind_description: ClassVar[str] = "GCP Express Route is a high-performance, reliable, and cost-effective way to establish private connections between data centers and Google Cloud Platform (GCP) resources." + kind_description: ClassVar[str] = ( + "GCP Express Route is a high-performance, reliable, and cost-effective way to" + " establish private connections between data centers and Google Cloud Platform" + " (GCP) resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "expression": S("expression"), @@ -4637,7 +5300,11 @@ class GcpExpr: class GcpSecurityPolicyRuleMatcher: kind: ClassVar[str] = "gcp_security_policy_rule_matcher" kind_display: ClassVar[str] = "GCP Security Policy Rule Matcher" - kind_description: ClassVar[str] = "A rule matcher in the Google Cloud Platform (GCP) Security Policy that defines the conditions for matching traffic and applying relevant security policy rules." + kind_description: ClassVar[str] = ( + "A rule matcher in the Google Cloud Platform (GCP) Security Policy that" + " defines the conditions for matching traffic and applying relevant security" + " policy rules." + ) mapping: ClassVar[Dict[str, Bender]] = { "config": S("config", default={}) >> Bend(GcpSecurityPolicyRuleMatcherConfig.mapping), "expr": S("expr", default={}) >> Bend(GcpExpr.mapping), @@ -4652,7 +5319,10 @@ class GcpSecurityPolicyRuleMatcher: class GcpSecurityPolicyRuleRateLimitOptionsThreshold: kind: ClassVar[str] = "gcp_security_policy_rule_rate_limit_options_threshold" kind_display: ClassVar[str] = "GCP Security Policy Rate Limit Options Threshold" - kind_description: ClassVar[str] = "This is a threshold value used in Google Cloud Platform Security Policies to limit the rate at which requests are processed." + kind_description: ClassVar[str] = ( + "This is a threshold value used in Google Cloud Platform Security Policies to" + " limit the rate at which requests are processed." + ) mapping: ClassVar[Dict[str, Bender]] = {"count": S("count"), "interval_sec": S("intervalSec")} count: Optional[int] = field(default=None) interval_sec: Optional[int] = field(default=None) @@ -4662,7 +5332,11 @@ class GcpSecurityPolicyRuleRateLimitOptionsThreshold: class GcpSecurityPolicyRuleRedirectOptions: kind: ClassVar[str] = "gcp_security_policy_rule_redirect_options" kind_display: ClassVar[str] = "GCP Security Policy Rule Redirect Options" - kind_description: ClassVar[str] = "GCP Security Policy Rule Redirect Options provide a way to configure redirection rules for network traffic in Google Cloud Platform, enabling users to redirect traffic to a different destination or URL." + kind_description: ClassVar[str] = ( + "GCP Security Policy Rule Redirect Options provide a way to configure" + " redirection rules for network traffic in Google Cloud Platform, enabling" + " users to redirect traffic to a different destination or URL." + ) mapping: ClassVar[Dict[str, Bender]] = {"target": S("target"), "type": S("type")} target: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -4672,7 +5346,11 @@ class GcpSecurityPolicyRuleRedirectOptions: class GcpSecurityPolicyRuleRateLimitOptions: kind: ClassVar[str] = "gcp_security_policy_rule_rate_limit_options" kind_display: ClassVar[str] = "GCP Security Policy Rule Rate Limit Options" - kind_description: ClassVar[str] = "Rate Limit Options in the Google Cloud Platform (GCP) Security Policy Rule allow you to set limits on the amount of traffic that can pass through a security policy rule within a certain time period." + kind_description: ClassVar[str] = ( + "Rate Limit Options in the Google Cloud Platform (GCP) Security Policy Rule" + " allow you to set limits on the amount of traffic that can pass through a" + " security policy rule within a certain time period." + ) mapping: ClassVar[Dict[str, Bender]] = { "ban_duration_sec": S("banDurationSec"), "ban_threshold": S("banThreshold", default={}) >> Bend(GcpSecurityPolicyRuleRateLimitOptionsThreshold.mapping), @@ -4699,7 +5377,10 @@ class GcpSecurityPolicyRuleRateLimitOptions: class GcpSecurityPolicyRule: kind: ClassVar[str] = "gcp_security_policy_rule" kind_display: ClassVar[str] = "GCP Security Policy Rule" - kind_description: ClassVar[str] = "A GCP Security Policy Rule defines the allowed or denied traffic for a particular network resource in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "A GCP Security Policy Rule defines the allowed or denied traffic for a" + " particular network resource in Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "action": S("action"), "description": S("description"), @@ -4724,7 +5405,11 @@ class GcpSecurityPolicyRule: class GcpSecurityPolicy(GcpResource): kind: ClassVar[str] = "gcp_security_policy" kind_display: ClassVar[str] = "GCP Security Policy" - kind_description: ClassVar[str] = "GCP Security Policy is a feature of Google Cloud Platform that allows users to define and enforce security rules and policies for their virtual machine instances." + kind_description: ClassVar[str] = ( + "GCP Security Policy is a feature of Google Cloud Platform that allows users" + " to define and enforce security rules and policies for their virtual machine" + " instances." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4768,7 +5453,11 @@ class GcpSecurityPolicy(GcpResource): class GcpSslCertificateManagedSslCertificate: kind: ClassVar[str] = "gcp_ssl_certificate_managed_ssl_certificate" kind_display: ClassVar[str] = "GCP SSL Certificate (Managed SSL Certificate)" - kind_description: ClassVar[str] = "Managed SSL Certificates in Google Cloud Platform provide secure HTTPS connections for websites and applications, safeguarding data transmitted over the internet." + kind_description: ClassVar[str] = ( + "Managed SSL Certificates in Google Cloud Platform provide secure HTTPS" + " connections for websites and applications, safeguarding data transmitted" + " over the internet." + ) mapping: ClassVar[Dict[str, Bender]] = { "domain_status": S("domainStatus"), "domains": S("domains", default=[]), @@ -4783,7 +5472,11 @@ class GcpSslCertificateManagedSslCertificate: class GcpSslCertificateSelfManagedSslCertificate: kind: ClassVar[str] = "gcp_ssl_certificate_self_managed_ssl_certificate" kind_display: ClassVar[str] = "GCP Self-Managed SSL Certificate" - kind_description: ClassVar[str] = "A self-managed SSL certificate is a digital certificate issued by an organization for its own use, allowing secure communication between a client and a server. GCP allows users to manage their own SSL certificates." + kind_description: ClassVar[str] = ( + "A self-managed SSL certificate is a digital certificate issued by an" + " organization for its own use, allowing secure communication between a client" + " and a server. GCP allows users to manage their own SSL certificates." + ) mapping: ClassVar[Dict[str, Bender]] = {"certificate": S("certificate"), "private_key": S("privateKey")} certificate: Optional[str] = field(default=None) private_key: Optional[str] = field(default=None) @@ -4793,7 +5486,11 @@ class GcpSslCertificateSelfManagedSslCertificate: class GcpSslCertificate(GcpResource): kind: ClassVar[str] = "gcp_ssl_certificate" kind_display: ClassVar[str] = "GCP SSL Certificate" - kind_description: ClassVar[str] = "SSL Certificate is a digital certificate that authenticates the identity of a website and encrypts information sent to the server, ensuring secure communication over the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "SSL Certificate is a digital certificate that authenticates the identity of" + " a website and encrypts information sent to the server, ensuring secure" + " communication over the Google Cloud Platform." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4835,7 +5532,10 @@ class GcpSslCertificate(GcpResource): class GcpSslPolicy(GcpResource): kind: ClassVar[str] = "gcp_ssl_policy" kind_display: ClassVar[str] = "GCP SSL Policy" - kind_description: ClassVar[str] = "SSL policies in Google Cloud Platform (GCP) manage how SSL/TLS connections are established and maintained for HTTPS services." + kind_description: ClassVar[str] = ( + "SSL policies in Google Cloud Platform (GCP) manage how SSL/TLS connections" + " are established and maintained for HTTPS services." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4875,7 +5575,10 @@ class GcpSslPolicy(GcpResource): class GcpTargetHttpProxy(GcpResource): kind: ClassVar[str] = "gcp_target_http_proxy" kind_display: ClassVar[str] = "GCP Target HTTP Proxy" - kind_description: ClassVar[str] = "GCP Target HTTP Proxy is a resource in Google Cloud Platform that allows for load balancing and routing of HTTP traffic to backend services." + kind_description: ClassVar[str] = ( + "GCP Target HTTP Proxy is a resource in Google Cloud Platform that allows for" + " load balancing and routing of HTTP traffic to backend services." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_url_map"]}, "successors": {"default": ["gcp_url_map"]}, @@ -4917,7 +5620,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpTargetHttpsProxy(GcpResource): kind: ClassVar[str] = "gcp_target_https_proxy" kind_display: ClassVar[str] = "GCP Target HTTPS Proxy" - kind_description: ClassVar[str] = "A GCP Target HTTPS Proxy is a Google Cloud Platform resource that enables you to configure SSL/TLS termination for HTTP(S) load balancing, allowing secure communication between clients and your backend services." + kind_description: ClassVar[str] = ( + "A GCP Target HTTPS Proxy is a Google Cloud Platform resource that enables" + " you to configure SSL/TLS termination for HTTP(S) load balancing, allowing" + " secure communication between clients and your backend services." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_ssl_certificate", "gcp_ssl_policy"], "delete": ["gcp_url_map"]}, "successors": {"default": ["gcp_url_map"]}, @@ -4976,7 +5683,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpTargetTcpProxy(GcpResource): kind: ClassVar[str] = "gcp_target_tcp_proxy" kind_display: ClassVar[str] = "GCP Target TCP Proxy" - kind_description: ClassVar[str] = "Target TCP Proxy is a Google Cloud Platform service that allows you to load balance TCP traffic to backend instances based on target proxy configuration." + kind_description: ClassVar[str] = ( + "Target TCP Proxy is a Google Cloud Platform service that allows you to load" + " balance TCP traffic to backend instances based on target proxy" + " configuration." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_backend_service"]}, "successors": {"default": ["gcp_backend_service"]}, @@ -5018,7 +5729,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpCorsPolicy: kind: ClassVar[str] = "gcp_cors_policy" kind_display: ClassVar[str] = "GCP CORS Policy" - kind_description: ClassVar[str] = "CORS (Cross-Origin Resource Sharing) Policy in Google Cloud Platform allows controlled sharing of resources between different origins, enabling web applications to make requests to resources from other domains." + kind_description: ClassVar[str] = ( + "CORS (Cross-Origin Resource Sharing) Policy in Google Cloud Platform allows" + " controlled sharing of resources between different origins, enabling web" + " applications to make requests to resources from other domains." + ) mapping: ClassVar[Dict[str, Bender]] = { "allow_credentials": S("allowCredentials"), "allow_headers": S("allowHeaders", default=[]), @@ -5043,7 +5758,10 @@ class GcpCorsPolicy: class GcpHttpFaultAbort: kind: ClassVar[str] = "gcp_http_fault_abort" kind_display: ClassVar[str] = "GCP HTTP Fault Abort" - kind_description: ClassVar[str] = "HTTP Fault Abort is a feature in Google Cloud Platform that allows you to simulate aborting an HTTP request for testing and troubleshooting purposes." + kind_description: ClassVar[str] = ( + "HTTP Fault Abort is a feature in Google Cloud Platform that allows you to" + " simulate aborting an HTTP request for testing and troubleshooting purposes." + ) mapping: ClassVar[Dict[str, Bender]] = {"http_status": S("httpStatus"), "percentage": S("percentage")} http_status: Optional[int] = field(default=None) percentage: Optional[float] = field(default=None) @@ -5053,7 +5771,11 @@ class GcpHttpFaultAbort: class GcpHttpFaultDelay: kind: ClassVar[str] = "gcp_http_fault_delay" kind_display: ClassVar[str] = "GCP HTTP Fault Delay" - kind_description: ClassVar[str] = "HTTP Fault Delay is a feature in Google Cloud Platform that allows users to inject delays in HTTP responses for testing fault tolerance and resilience of applications." + kind_description: ClassVar[str] = ( + "HTTP Fault Delay is a feature in Google Cloud Platform that allows users to" + " inject delays in HTTP responses for testing fault tolerance and resilience" + " of applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "fixed_delay": S("fixedDelay", default={}) >> Bend(GcpDuration.mapping), "percentage": S("percentage"), @@ -5066,7 +5788,11 @@ class GcpHttpFaultDelay: class GcpHttpFaultInjection: kind: ClassVar[str] = "gcp_http_fault_injection" kind_display: ClassVar[str] = "GCP HTTP Fault Injection" - kind_description: ClassVar[str] = "GCP HTTP Fault Injection is a feature in Google Cloud Platform that allows injecting faults into HTTP requests to test the resilience of applications and services." + kind_description: ClassVar[str] = ( + "GCP HTTP Fault Injection is a feature in Google Cloud Platform that allows" + " injecting faults into HTTP requests to test the resilience of applications" + " and services." + ) mapping: ClassVar[Dict[str, Bender]] = { "abort": S("abort", default={}) >> Bend(GcpHttpFaultAbort.mapping), "delay": S("delay", default={}) >> Bend(GcpHttpFaultDelay.mapping), @@ -5079,7 +5805,11 @@ class GcpHttpFaultInjection: class GcpHttpRetryPolicy: kind: ClassVar[str] = "gcp_http_retry_policy" kind_display: ClassVar[str] = "GCP HTTP Retry Policy" - kind_description: ClassVar[str] = "GCP HTTP Retry Policy allows users to define and configure retry behavior for HTTP requests made to resources in the Google Cloud Platform infrastructure." + kind_description: ClassVar[str] = ( + "GCP HTTP Retry Policy allows users to define and configure retry behavior" + " for HTTP requests made to resources in the Google Cloud Platform" + " infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "num_retries": S("numRetries"), "per_try_timeout": S("perTryTimeout", default={}) >> Bend(GcpDuration.mapping), @@ -5094,7 +5824,10 @@ class GcpHttpRetryPolicy: class GcpUrlRewrite: kind: ClassVar[str] = "gcp_url_rewrite" kind_display: ClassVar[str] = "GCP URL Rewrite" - kind_description: ClassVar[str] = "GCP URL Rewrite is a feature in Google Cloud Platform that allows users to modify and redirect incoming URLs based on predefined rules." + kind_description: ClassVar[str] = ( + "GCP URL Rewrite is a feature in Google Cloud Platform that allows users to" + " modify and redirect incoming URLs based on predefined rules." + ) mapping: ClassVar[Dict[str, Bender]] = { "host_rewrite": S("hostRewrite"), "path_prefix_rewrite": S("pathPrefixRewrite"), @@ -5107,7 +5840,10 @@ class GcpUrlRewrite: class GcpHttpHeaderOption: kind: ClassVar[str] = "gcp_http_header_option" kind_display: ClassVar[str] = "GCP HTTP Header Option" - kind_description: ClassVar[str] = "GCP HTTP Header Option allows users to configure and control the HTTP headers for their applications running on the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP HTTP Header Option allows users to configure and control the HTTP" + " headers for their applications running on the Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "header_name": S("headerName"), "header_value": S("headerValue"), @@ -5122,7 +5858,11 @@ class GcpHttpHeaderOption: class GcpHttpHeaderAction: kind: ClassVar[str] = "gcp_http_header_action" kind_display: ClassVar[str] = "GCP HTTP Header Action" - kind_description: ClassVar[str] = "GCP HTTP Header Action is a feature in Google Cloud Platform that allows users to configure actions to be taken based on the HTTP header of a request." + kind_description: ClassVar[str] = ( + "GCP HTTP Header Action is a feature in Google Cloud Platform that allows" + " users to configure actions to be taken based on the HTTP header of a" + " request." + ) mapping: ClassVar[Dict[str, Bender]] = { "request_headers_to_add": S("requestHeadersToAdd", default=[]) >> ForallBend(GcpHttpHeaderOption.mapping), "request_headers_to_remove": S("requestHeadersToRemove", default=[]), @@ -5139,7 +5879,10 @@ class GcpHttpHeaderAction: class GcpWeightedBackendService: kind: ClassVar[str] = "gcp_weighted_backend_service" kind_display: ClassVar[str] = "GCP Weighted Backend Service" - kind_description: ClassVar[str] = "A GCP Weighted Backend Service is a load balancer that distributes traffic across multiple backend services using weights assigned to each service." + kind_description: ClassVar[str] = ( + "A GCP Weighted Backend Service is a load balancer that distributes traffic" + " across multiple backend services using weights assigned to each service." + ) mapping: ClassVar[Dict[str, Bender]] = { "backend_service": S("backendService"), "header_action": S("headerAction", default={}) >> Bend(GcpHttpHeaderAction.mapping), @@ -5154,7 +5897,11 @@ class GcpWeightedBackendService: class GcpHttpRouteAction: kind: ClassVar[str] = "gcp_http_route_action" kind_display: ClassVar[str] = "GCP HTTP Route Action" - kind_description: ClassVar[str] = "HTTP Route Action is a feature in Google Cloud Platform that allows users to define the actions to be performed on HTTP requests (e.g., forwarding, redirecting) within a route." + kind_description: ClassVar[str] = ( + "HTTP Route Action is a feature in Google Cloud Platform that allows users to" + " define the actions to be performed on HTTP requests (e.g., forwarding," + " redirecting) within a route." + ) mapping: ClassVar[Dict[str, Bender]] = { "cors_policy": S("corsPolicy", default={}) >> Bend(GcpCorsPolicy.mapping), "fault_injection_policy": S("faultInjectionPolicy", default={}) >> Bend(GcpHttpFaultInjection.mapping), @@ -5180,7 +5927,10 @@ class GcpHttpRouteAction: class GcpHttpRedirectAction: kind: ClassVar[str] = "gcp_http_redirect_action" kind_display: ClassVar[str] = "GCP HTTP Redirect Action" - kind_description: ClassVar[str] = "HTTP Redirect Action is a resource in Google Cloud Platform (GCP) that allows you to redirect incoming HTTP requests to another URL." + kind_description: ClassVar[str] = ( + "HTTP Redirect Action is a resource in Google Cloud Platform (GCP) that" + " allows you to redirect incoming HTTP requests to another URL." + ) mapping: ClassVar[Dict[str, Bender]] = { "host_redirect": S("hostRedirect"), "https_redirect": S("httpsRedirect"), @@ -5201,7 +5951,11 @@ class GcpHttpRedirectAction: class GcpHostRule: kind: ClassVar[str] = "gcp_host_rule" kind_display: ClassVar[str] = "GCP Host Rule" - kind_description: ClassVar[str] = "A GCP Host Rule is a configuration that maps a hostname to a specific backend service in Google Cloud Platform, allowing for customized routing of incoming traffic based on the requested domain name." + kind_description: ClassVar[str] = ( + "A GCP Host Rule is a configuration that maps a hostname to a specific" + " backend service in Google Cloud Platform, allowing for customized routing of" + " incoming traffic based on the requested domain name." + ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "hosts": S("hosts", default=[]), @@ -5216,7 +5970,10 @@ class GcpHostRule: class GcpPathRule: kind: ClassVar[str] = "gcp_path_rule" kind_display: ClassVar[str] = "GCP Path Rule" - kind_description: ClassVar[str] = "GCP Path Rule is a routing rule defined in Google Cloud Platform (GCP) to direct incoming traffic to specific destinations based on the URL path." + kind_description: ClassVar[str] = ( + "GCP Path Rule is a routing rule defined in Google Cloud Platform (GCP) to" + " direct incoming traffic to specific destinations based on the URL path." + ) mapping: ClassVar[Dict[str, Bender]] = { "paths": S("paths", default=[]), "route_action": S("routeAction", default={}) >> Bend(GcpHttpRouteAction.mapping), @@ -5233,7 +5990,10 @@ class GcpPathRule: class GcpInt64RangeMatch: kind: ClassVar[str] = "gcp_int64_range_match" kind_display: ClassVar[str] = "GCP Int64 Range Match" - kind_description: ClassVar[str] = "GCP Int64 Range Match is a feature in Google Cloud Platform that enables matching a specific 64-bit integer value within a given range." + kind_description: ClassVar[str] = ( + "GCP Int64 Range Match is a feature in Google Cloud Platform that enables" + " matching a specific 64-bit integer value within a given range." + ) mapping: ClassVar[Dict[str, Bender]] = {"range_end": S("rangeEnd"), "range_start": S("rangeStart")} range_end: Optional[str] = field(default=None) range_start: Optional[str] = field(default=None) @@ -5243,7 +6003,11 @@ class GcpInt64RangeMatch: class GcpHttpHeaderMatch: kind: ClassVar[str] = "gcp_http_header_match" kind_display: ClassVar[str] = "GCP HTTP Header Match" - kind_description: ClassVar[str] = "GCP HTTP Header Match is a feature in Google Cloud Platform that allows users to match HTTP headers in order to control traffic routing, load balancing, and other network operations." + kind_description: ClassVar[str] = ( + "GCP HTTP Header Match is a feature in Google Cloud Platform that allows" + " users to match HTTP headers in order to control traffic routing, load" + " balancing, and other network operations." + ) mapping: ClassVar[Dict[str, Bender]] = { "exact_match": S("exactMatch"), "header_name": S("headerName"), @@ -5268,7 +6032,11 @@ class GcpHttpHeaderMatch: class GcpHttpQueryParameterMatch: kind: ClassVar[str] = "gcp_http_query_parameter_match" kind_display: ClassVar[str] = "GCP HTTP Query Parameter Match" - kind_description: ClassVar[str] = "GCP HTTP Query Parameter Match is a feature in Google Cloud Platform that allows users to configure HTTP(S) Load Balancing to route traffic based on matching query parameters in the request URL." + kind_description: ClassVar[str] = ( + "GCP HTTP Query Parameter Match is a feature in Google Cloud Platform that" + " allows users to configure HTTP(S) Load Balancing to route traffic based on" + " matching query parameters in the request URL." + ) mapping: ClassVar[Dict[str, Bender]] = { "exact_match": S("exactMatch"), "name": S("name"), @@ -5285,7 +6053,11 @@ class GcpHttpQueryParameterMatch: class GcpHttpRouteRuleMatch: kind: ClassVar[str] = "gcp_http_route_rule_match" kind_display: ClassVar[str] = "GCP HTTP Route Rule Match" - kind_description: ClassVar[str] = "HTTP Route Rule Match is a feature in Google Cloud Platform (GCP) that allows fine-grained control and management of HTTP traffic routing within GCP infrastructure." + kind_description: ClassVar[str] = ( + "HTTP Route Rule Match is a feature in Google Cloud Platform (GCP) that" + " allows fine-grained control and management of HTTP traffic routing within" + " GCP infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "full_path_match": S("fullPathMatch"), "header_matches": S("headerMatches", default=[]) >> ForallBend(GcpHttpHeaderMatch.mapping), @@ -5309,7 +6081,11 @@ class GcpHttpRouteRuleMatch: class GcpHttpRouteRule: kind: ClassVar[str] = "gcp_http_route_rule" kind_display: ClassVar[str] = "GCP HTTP Route Rule" - kind_description: ClassVar[str] = "HTTP Route Rule is a configuration in Google Cloud Platform (GCP) that defines how incoming HTTP requests should be routed to different backend services or resources based on matching conditions." + kind_description: ClassVar[str] = ( + "HTTP Route Rule is a configuration in Google Cloud Platform (GCP) that" + " defines how incoming HTTP requests should be routed to different backend" + " services or resources based on matching conditions." + ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "header_action": S("headerAction", default={}) >> Bend(GcpHttpHeaderAction.mapping), @@ -5332,7 +6108,10 @@ class GcpHttpRouteRule: class GcpPathMatcher: kind: ClassVar[str] = "gcp_path_matcher" kind_display: ClassVar[str] = "GCP Path Matcher" - kind_description: ClassVar[str] = "A GCP Path Matcher is used for defining the path patterns that a request URL must match in order to be routed to a specific backend service." + kind_description: ClassVar[str] = ( + "A GCP Path Matcher is used for defining the path patterns that a request URL" + " must match in order to be routed to a specific backend service." + ) mapping: ClassVar[Dict[str, Bender]] = { "default_route_action": S("defaultRouteAction", default={}) >> Bend(GcpHttpRouteAction.mapping), "default_service": S("defaultService"), @@ -5357,7 +6136,11 @@ class GcpPathMatcher: class GcpUrlMapTestHeader: kind: ClassVar[str] = "gcp_url_map_test_header" kind_display: ClassVar[str] = "GCP URL Map Test Header" - kind_description: ClassVar[str] = "GCP URL Map Test Header is a configuration feature in Google Cloud Platform that allows users to test and validate different HTTP headers for load balancing purposes." + kind_description: ClassVar[str] = ( + "GCP URL Map Test Header is a configuration feature in Google Cloud Platform" + " that allows users to test and validate different HTTP headers for load" + " balancing purposes." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -5367,7 +6150,10 @@ class GcpUrlMapTestHeader: class GcpUrlMapTest: kind: ClassVar[str] = "gcp_url_map_test" kind_display: ClassVar[str] = "GCP URL Map Test" - kind_description: ClassVar[str] = "GCP URL Map Test is a test configuration for mapping URLs to backend services in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP URL Map Test is a test configuration for mapping URLs to backend" + " services in Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "expected_output_url": S("expectedOutputUrl"), @@ -5390,7 +6176,11 @@ class GcpUrlMapTest: class GcpUrlMap(GcpResource): kind: ClassVar[str] = "gcp_url_map" kind_display: ClassVar[str] = "GCP URL Map" - kind_description: ClassVar[str] = "A GCP URL Map is a resource that maps a URL path to a specific backend service in Google Cloud Platform. It allows for routing of requests based on the URL path." + kind_description: ClassVar[str] = ( + "A GCP URL Map is a resource that maps a URL path to a specific backend" + " service in Google Cloud Platform. It allows for routing of requests based on" + " the URL path." + ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_backend_service"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -5439,7 +6229,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpResourcePolicyGroupPlacementPolicy: kind: ClassVar[str] = "gcp_resource_policy_group_placement_policy" kind_display: ClassVar[str] = "GCP Resource Policy Group Placement Policy" - kind_description: ClassVar[str] = "A resource policy group placement policy in Google Cloud Platform (GCP) allows you to control the placement of resources within a group, ensuring high availability and efficient utilization of resources." + kind_description: ClassVar[str] = ( + "A resource policy group placement policy in Google Cloud Platform (GCP)" + " allows you to control the placement of resources within a group, ensuring" + " high availability and efficient utilization of resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "availability_domain_count": S("availabilityDomainCount"), "collocation": S("collocation"), @@ -5454,7 +6248,11 @@ class GcpResourcePolicyGroupPlacementPolicy: class GcpResourcePolicyInstanceSchedulePolicy: kind: ClassVar[str] = "gcp_resource_policy_instance_schedule_policy" kind_display: ClassVar[str] = "GCP Resource Policy Instance Schedule Policy" - kind_description: ClassVar[str] = "Resource policy instance schedule policy is a policy in Google Cloud Platform that allows users to define schedules for starting and stopping instances to optimize cost and manage resource usage." + kind_description: ClassVar[str] = ( + "Resource policy instance schedule policy is a policy in Google Cloud" + " Platform that allows users to define schedules for starting and stopping" + " instances to optimize cost and manage resource usage." + ) mapping: ClassVar[Dict[str, Bender]] = { "expiration_time": S("expirationTime"), "start_time": S("startTime"), @@ -5473,7 +6271,10 @@ class GcpResourcePolicyInstanceSchedulePolicy: class GcpResourcePolicyResourceStatusInstanceSchedulePolicyStatus: kind: ClassVar[str] = "gcp_resource_policy_resource_status_instance_schedule_policy_status" kind_display: ClassVar[str] = "GCP Resource Policy Resource Status Instance Schedule Policy Status" - kind_description: ClassVar[str] = "This resource represents the status of a scheduling policy for instances in Google Cloud Platform (GCP) resource policy." + kind_description: ClassVar[str] = ( + "This resource represents the status of a scheduling policy for instances in" + " Google Cloud Platform (GCP) resource policy." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_run_start_time": S("lastRunStartTime"), "next_run_start_time": S("nextRunStartTime"), @@ -5486,7 +6287,11 @@ class GcpResourcePolicyResourceStatusInstanceSchedulePolicyStatus: class GcpResourcePolicyResourceStatus: kind: ClassVar[str] = "gcp_resource_policy_resource_status" kind_display: ClassVar[str] = "GCP Resource Policy Resource Status" - kind_description: ClassVar[str] = "Resource Policy Resource Status is a feature in Google Cloud Platform (GCP) that provides information about the status of resource policies applied to different cloud resources within a GCP project." + kind_description: ClassVar[str] = ( + "Resource Policy Resource Status is a feature in Google Cloud Platform (GCP)" + " that provides information about the status of resource policies applied to" + " different cloud resources within a GCP project." + ) mapping: ClassVar[Dict[str, Bender]] = { "instance_schedule_policy": S("instanceSchedulePolicy", default={}) >> Bend(GcpResourcePolicyResourceStatusInstanceSchedulePolicyStatus.mapping) @@ -5500,7 +6305,10 @@ class GcpResourcePolicyResourceStatus: class GcpResourcePolicySnapshotSchedulePolicyRetentionPolicy: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy_retention_policy" kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy Retention Policy" - kind_description: ClassVar[str] = "Retention policy for snapshot schedules in Google Cloud Platform's resource policy allows users to define how long the snapshots will be retained." + kind_description: ClassVar[str] = ( + "Retention policy for snapshot schedules in Google Cloud Platform's resource" + " policy allows users to define how long the snapshots will be retained." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_retention_days": S("maxRetentionDays"), "on_source_disk_delete": S("onSourceDiskDelete"), @@ -5513,7 +6321,11 @@ class GcpResourcePolicySnapshotSchedulePolicyRetentionPolicy: class GcpResourcePolicyDailyCycle: kind: ClassVar[str] = "gcp_resource_policy_daily_cycle" kind_display: ClassVar[str] = "GCP Resource Policy Daily Cycle" - kind_description: ClassVar[str] = "GCP Resource Policy Daily Cycle is a feature in Google Cloud Platform that allows you to define and enforce policies for your cloud resources on a daily basis." + kind_description: ClassVar[str] = ( + "GCP Resource Policy Daily Cycle is a feature in Google Cloud Platform that" + " allows you to define and enforce policies for your cloud resources on a" + " daily basis." + ) mapping: ClassVar[Dict[str, Bender]] = { "days_in_cycle": S("daysInCycle"), "duration": S("duration"), @@ -5528,7 +6340,11 @@ class GcpResourcePolicyDailyCycle: class GcpResourcePolicyHourlyCycle: kind: ClassVar[str] = "gcp_resource_policy_hourly_cycle" kind_display: ClassVar[str] = "GCP Resource Policy Hourly Cycle" - kind_description: ClassVar[str] = "GCP Resource Policy Hourly Cycle is a feature in Google Cloud Platform that allows users to define resource policies for their cloud resources on an hourly basis, ensuring efficient allocation and utilization." + kind_description: ClassVar[str] = ( + "GCP Resource Policy Hourly Cycle is a feature in Google Cloud Platform that" + " allows users to define resource policies for their cloud resources on an" + " hourly basis, ensuring efficient allocation and utilization." + ) mapping: ClassVar[Dict[str, Bender]] = { "duration": S("duration"), "hours_in_cycle": S("hoursInCycle"), @@ -5543,7 +6359,11 @@ class GcpResourcePolicyHourlyCycle: class GcpResourcePolicyWeeklyCycleDayOfWeek: kind: ClassVar[str] = "gcp_resource_policy_weekly_cycle_day_of_week" kind_display: ClassVar[str] = "GCP Resource Policy Weekly Cycle Day of Week" - kind_description: ClassVar[str] = "GCP Resource Policy Weekly Cycle Day of Week is a setting in Google Cloud Platform that allows users to specify and control the day of the week when a resource policy should be applied." + kind_description: ClassVar[str] = ( + "GCP Resource Policy Weekly Cycle Day of Week is a setting in Google Cloud" + " Platform that allows users to specify and control the day of the week when a" + " resource policy should be applied." + ) mapping: ClassVar[Dict[str, Bender]] = {"day": S("day"), "duration": S("duration"), "start_time": S("startTime")} day: Optional[str] = field(default=None) duration: Optional[str] = field(default=None) @@ -5554,7 +6374,12 @@ class GcpResourcePolicyWeeklyCycleDayOfWeek: class GcpResourcePolicyWeeklyCycle: kind: ClassVar[str] = "gcp_resource_policy_weekly_cycle" kind_display: ClassVar[str] = "GCP Resource Policy Weekly Cycle" - kind_description: ClassVar[str] = "The GCP Resource Policy Weekly Cycle is a recurring schedule for managing and controlling resources in Google Cloud Platform (GCP) by specifying policies that define what actions can be performed on the resources during a specific weekly cycle." + kind_description: ClassVar[str] = ( + "The GCP Resource Policy Weekly Cycle is a recurring schedule for managing" + " and controlling resources in Google Cloud Platform (GCP) by specifying" + " policies that define what actions can be performed on the resources during a" + " specific weekly cycle." + ) mapping: ClassVar[Dict[str, Bender]] = { "day_of_weeks": S("dayOfWeeks", default=[]) >> ForallBend(GcpResourcePolicyWeeklyCycleDayOfWeek.mapping) } @@ -5565,7 +6390,10 @@ class GcpResourcePolicyWeeklyCycle: class GcpResourcePolicySnapshotSchedulePolicySchedule: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy_schedule" kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy Schedule" - kind_description: ClassVar[str] = "This resource represents a schedule for snapshot policies in Google Cloud Platform's resource policy framework." + kind_description: ClassVar[str] = ( + "This resource represents a schedule for snapshot policies in Google Cloud" + " Platform's resource policy framework." + ) mapping: ClassVar[Dict[str, Bender]] = { "daily_schedule": S("dailySchedule", default={}) >> Bend(GcpResourcePolicyDailyCycle.mapping), "hourly_schedule": S("hourlySchedule", default={}) >> Bend(GcpResourcePolicyHourlyCycle.mapping), @@ -5580,7 +6408,11 @@ class GcpResourcePolicySnapshotSchedulePolicySchedule: class GcpResourcePolicySnapshotSchedulePolicySnapshotProperties: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy_snapshot_properties" kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy Snapshot Properties" - kind_description: ClassVar[str] = "This represents the snapshot schedule policy properties for GCP resource policies, allowing users to configure automated snapshot creation and deletion for their resources in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "This represents the snapshot schedule policy properties for GCP resource" + " policies, allowing users to configure automated snapshot creation and" + " deletion for their resources in Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "chain_name": S("chainName"), "guest_flush": S("guestFlush"), @@ -5597,7 +6429,11 @@ class GcpResourcePolicySnapshotSchedulePolicySnapshotProperties: class GcpResourcePolicySnapshotSchedulePolicy: kind: ClassVar[str] = "gcp_resource_policy_snapshot_schedule_policy" kind_display: ClassVar[str] = "GCP Resource Policy Snapshot Schedule Policy" - kind_description: ClassVar[str] = "Resource Policy Snapshot Schedule Policy is a feature in Google Cloud Platform that allows users to define a policy for creating and managing scheduled snapshots of resources." + kind_description: ClassVar[str] = ( + "Resource Policy Snapshot Schedule Policy is a feature in Google Cloud" + " Platform that allows users to define a policy for creating and managing" + " scheduled snapshots of resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "retention_policy": S("retentionPolicy", default={}) >> Bend(GcpResourcePolicySnapshotSchedulePolicyRetentionPolicy.mapping), @@ -5614,7 +6450,12 @@ class GcpResourcePolicySnapshotSchedulePolicy: class GcpResourcePolicy(GcpResource): kind: ClassVar[str] = "gcp_resource_policy" kind_display: ClassVar[str] = "GCP Resource Policy" - kind_description: ClassVar[str] = "GCP Resource Policy is a feature provided by Google Cloud Platform that allows users to define fine-grained policies for managing and controlling access to cloud resources like compute instances, storage buckets, and networking resources." + kind_description: ClassVar[str] = ( + "GCP Resource Policy is a feature provided by Google Cloud Platform that" + " allows users to define fine-grained policies for managing and controlling" + " access to cloud resources like compute instances, storage buckets, and" + " networking resources." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -5656,7 +6497,11 @@ class GcpResourcePolicy(GcpResource): class GcpRouterAdvertisedIpRange: kind: ClassVar[str] = "gcp_router_advertised_ip_range" kind_display: ClassVar[str] = "GCP Router Advertised IP Range" - kind_description: ClassVar[str] = "GCP Router Advertised IP Range is a range of IP addresses that are advertised by the Google Cloud Platform (GCP) router, allowing communication between different networks within the GCP infrastructure." + kind_description: ClassVar[str] = ( + "GCP Router Advertised IP Range is a range of IP addresses that are" + " advertised by the Google Cloud Platform (GCP) router, allowing communication" + " between different networks within the GCP infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = {"description": S("description"), "range": S("range")} description: Optional[str] = field(default=None) range: Optional[str] = field(default=None) @@ -5666,7 +6511,11 @@ class GcpRouterAdvertisedIpRange: class GcpRouterBgp: kind: ClassVar[str] = "gcp_router_bgp" kind_display: ClassVar[str] = "GCP Router BGP" - kind_description: ClassVar[str] = "GCP Router BGP is a feature in Google Cloud Platform that enables Border Gateway Protocol (BGP) routing between Google's network and external networks, providing improved network scalability and flexibility." + kind_description: ClassVar[str] = ( + "GCP Router BGP is a feature in Google Cloud Platform that enables Border" + " Gateway Protocol (BGP) routing between Google's network and external" + " networks, providing improved network scalability and flexibility." + ) mapping: ClassVar[Dict[str, Bender]] = { "advertise_mode": S("advertiseMode"), "advertised_groups": S("advertisedGroups", default=[]), @@ -5685,7 +6534,11 @@ class GcpRouterBgp: class GcpRouterBgpPeerBfd: kind: ClassVar[str] = "gcp_router_bgp_peer_bfd" kind_display: ClassVar[str] = "GCP Router BGP Peer BFD" - kind_description: ClassVar[str] = "BFD (Bidirectional Forwarding Detection) is a feature in Google Cloud Platform (GCP) that allows BGP (Border Gateway Protocol) peers to quickly detect and recover from network failures." + kind_description: ClassVar[str] = ( + "BFD (Bidirectional Forwarding Detection) is a feature in Google Cloud" + " Platform (GCP) that allows BGP (Border Gateway Protocol) peers to quickly" + " detect and recover from network failures." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_receive_interval": S("minReceiveInterval"), "min_transmit_interval": S("minTransmitInterval"), @@ -5702,7 +6555,11 @@ class GcpRouterBgpPeerBfd: class GcpRouterBgpPeer: kind: ClassVar[str] = "gcp_router_bgp_peer" kind_display: ClassVar[str] = "GCP Router BGP Peer" - kind_description: ClassVar[str] = "A BGP (Border Gateway Protocol) Peer associated with a Google Cloud Platform (GCP) Router. BGP Peers are used to establish and manage a routing session between routers in order to exchange routing information." + kind_description: ClassVar[str] = ( + "A BGP (Border Gateway Protocol) Peer associated with a Google Cloud Platform" + " (GCP) Router. BGP Peers are used to establish and manage a routing session" + " between routers in order to exchange routing information." + ) mapping: ClassVar[Dict[str, Bender]] = { "advertise_mode": S("advertiseMode"), "advertised_groups": S("advertisedGroups", default=[]), @@ -5745,7 +6602,10 @@ class GcpRouterBgpPeer: class GcpRouterInterface: kind: ClassVar[str] = "gcp_router_interface" kind_display: ClassVar[str] = "GCP Router Interface" - kind_description: ClassVar[str] = "A router interface in Google Cloud Platform (GCP) is a connection point for a virtual network to interconnect with other networks or the internet." + kind_description: ClassVar[str] = ( + "A router interface in Google Cloud Platform (GCP) is a connection point for" + " a virtual network to interconnect with other networks or the internet." + ) mapping: ClassVar[Dict[str, Bender]] = { "ip_range": S("ipRange"), "linked_interconnect_attachment": S("linkedInterconnectAttachment"), @@ -5770,7 +6630,11 @@ class GcpRouterInterface: class GcpRouterMd5AuthenticationKey: kind: ClassVar[str] = "gcp_router_md5_authentication_key" kind_display: ClassVar[str] = "GCP Router MD5 Authentication Key" - kind_description: ClassVar[str] = "GCP Router MD5 Authentication Key is a security feature in Google Cloud Platform that uses the MD5 algorithm to authenticate traffic between routers." + kind_description: ClassVar[str] = ( + "GCP Router MD5 Authentication Key is a security feature in Google Cloud" + " Platform that uses the MD5 algorithm to authenticate traffic between" + " routers." + ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "name": S("name")} key: Optional[str] = field(default=None) name: Optional[str] = field(default=None) @@ -5780,7 +6644,10 @@ class GcpRouterMd5AuthenticationKey: class GcpRouterNatLogConfig: kind: ClassVar[str] = "gcp_router_nat_log_config" kind_display: ClassVar[str] = "GCP Router NAT Log Config" - kind_description: ClassVar[str] = "The GCP Router NAT Log Config is a configuration option for logging NAT (Network Address Translation) events in Google Cloud Platform routers." + kind_description: ClassVar[str] = ( + "The GCP Router NAT Log Config is a configuration option for logging NAT" + " (Network Address Translation) events in Google Cloud Platform routers." + ) mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "filter": S("filter")} enable: Optional[bool] = field(default=None) filter: Optional[str] = field(default=None) @@ -5790,7 +6657,12 @@ class GcpRouterNatLogConfig: class GcpRouterNatRuleAction: kind: ClassVar[str] = "gcp_router_nat_rule_action" kind_display: ClassVar[str] = "GCP Router NAT Rule Action" - kind_description: ClassVar[str] = "A GCP Router NAT Rule Action is used in Google Cloud Platform to configure the action for Network Address Translation (NAT) rules on a router. NAT rules determine how network traffic is translated between different IP address ranges." + kind_description: ClassVar[str] = ( + "A GCP Router NAT Rule Action is used in Google Cloud Platform to configure" + " the action for Network Address Translation (NAT) rules on a router. NAT" + " rules determine how network traffic is translated between different IP" + " address ranges." + ) mapping: ClassVar[Dict[str, Bender]] = { "source_nat_active_ips": S("sourceNatActiveIps", default=[]), "source_nat_drain_ips": S("sourceNatDrainIps", default=[]), @@ -5803,7 +6675,11 @@ class GcpRouterNatRuleAction: class GcpRouterNatRule: kind: ClassVar[str] = "gcp_router_nat_rule" kind_display: ClassVar[str] = "GCP Router NAT Rule" - kind_description: ClassVar[str] = "GCP Router NAT Rule allows users to configure Network Address Translation (NAT) rules on Google Cloud Platform's routers, enabling communication between networks with different IP address ranges." + kind_description: ClassVar[str] = ( + "GCP Router NAT Rule allows users to configure Network Address Translation" + " (NAT) rules on Google Cloud Platform's routers, enabling communication" + " between networks with different IP address ranges." + ) mapping: ClassVar[Dict[str, Bender]] = { "action": S("action", default={}) >> Bend(GcpRouterNatRuleAction.mapping), "description": S("description"), @@ -5820,7 +6696,11 @@ class GcpRouterNatRule: class GcpRouterNatSubnetworkToNat: kind: ClassVar[str] = "gcp_router_nat_subnetwork_to_nat" kind_display: ClassVar[str] = "GCP Router NAT Subnetwork-to-NAT" - kind_description: ClassVar[str] = "This resource in Google Cloud Platform (GCP) allows you to configure Network Address Translation (NAT) for subnetworks, enabling communication between private subnet resources and external networks." + kind_description: ClassVar[str] = ( + "This resource in Google Cloud Platform (GCP) allows you to configure Network" + " Address Translation (NAT) for subnetworks, enabling communication between" + " private subnet resources and external networks." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "secondary_ip_range_names": S("secondaryIpRangeNames", default=[]), @@ -5835,7 +6715,11 @@ class GcpRouterNatSubnetworkToNat: class GcpRouterNat: kind: ClassVar[str] = "gcp_router_nat" kind_display: ClassVar[str] = "GCP Router NAT" - kind_description: ClassVar[str] = "GCP Router NAT is a Cloud NAT service provided by Google Cloud Platform, which allows virtual machine instances without external IP addresses to access the internet and receive inbound traffic." + kind_description: ClassVar[str] = ( + "GCP Router NAT is a Cloud NAT service provided by Google Cloud Platform," + " which allows virtual machine instances without external IP addresses to" + " access the internet and receive inbound traffic." + ) mapping: ClassVar[Dict[str, Bender]] = { "drain_nat_ips": S("drainNatIps", default=[]), "enable_dynamic_port_allocation": S("enableDynamicPortAllocation"), @@ -5880,7 +6764,10 @@ class GcpRouterNat: class GcpRouter(GcpResource): kind: ClassVar[str] = "gcp_router" kind_display: ClassVar[str] = "GCP Router" - kind_description: ClassVar[str] = "GCP Router is a networking component in Google Cloud Platform that directs traffic between virtual networks." + kind_description: ClassVar[str] = ( + "GCP Router is a networking component in Google Cloud Platform that directs" + " traffic between virtual networks." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]} } @@ -5930,7 +6817,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpRouteAsPath: kind: ClassVar[str] = "gcp_route_as_path" kind_display: ClassVar[str] = "GCP Route AS Path" - kind_description: ClassVar[str] = "AS Path is a attribute in BGP routing protocol that represents the sequence of Autonomous System numbers that a route has traversed." + kind_description: ClassVar[str] = ( + "AS Path is a attribute in BGP routing protocol that represents the sequence" + " of Autonomous System numbers that a route has traversed." + ) mapping: ClassVar[Dict[str, Bender]] = { "as_lists": S("asLists", default=[]), "path_segment_type": S("pathSegmentType"), @@ -5943,7 +6833,10 @@ class GcpRouteAsPath: class GcpRoute(GcpResource): kind: ClassVar[str] = "gcp_route" kind_display: ClassVar[str] = "GCP Route" - kind_description: ClassVar[str] = "A GCP Route is a rule that specifies the next-hop information for network traffic within a Google Cloud Platform virtual network." + kind_description: ClassVar[str] = ( + "A GCP Route is a rule that specifies the next-hop information for network" + " traffic within a Google Cloud Platform virtual network." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]} } @@ -6008,7 +6901,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpServiceAttachmentConnectedEndpoint: kind: ClassVar[str] = "gcp_service_attachment_connected_endpoint" kind_display: ClassVar[str] = "GCP Service Attachment Connected Endpoint" - kind_description: ClassVar[str] = "A connected endpoint in Google Cloud Platform (GCP) service attachment represents the network endpoint that is connected to a service attachment, allowing communication between the attachment and the endpoint." + kind_description: ClassVar[str] = ( + "A connected endpoint in Google Cloud Platform (GCP) service attachment" + " represents the network endpoint that is connected to a service attachment," + " allowing communication between the attachment and the endpoint." + ) mapping: ClassVar[Dict[str, Bender]] = { "endpoint": S("endpoint"), "psc_connection_id": S("pscConnectionId"), @@ -6023,7 +6920,12 @@ class GcpServiceAttachmentConnectedEndpoint: class GcpServiceAttachmentConsumerProjectLimit: kind: ClassVar[str] = "gcp_service_attachment_consumer_project_limit" kind_display: ClassVar[str] = "GCP Service Attachment Consumer Project Limit" - kind_description: ClassVar[str] = "This is a limit imposed on the number of projects that can consume a specific service attachment in Google Cloud Platform (GCP). A service attachment allows a project to use a service or resource from another project." + kind_description: ClassVar[str] = ( + "This is a limit imposed on the number of projects that can consume a" + " specific service attachment in Google Cloud Platform (GCP). A service" + " attachment allows a project to use a service or resource from another" + " project." + ) mapping: ClassVar[Dict[str, Bender]] = { "connection_limit": S("connectionLimit"), "project_id_or_num": S("projectIdOrNum"), @@ -6036,7 +6938,11 @@ class GcpServiceAttachmentConsumerProjectLimit: class GcpUint128: kind: ClassVar[str] = "gcp_uint128" kind_display: ClassVar[str] = "GCP Uint128" - kind_description: ClassVar[str] = "Uint128 is an unsigned 128-bit integer type in Google Cloud Platform (GCP). It is used for performing arithmetic operations on large numbers in GCP applications." + kind_description: ClassVar[str] = ( + "Uint128 is an unsigned 128-bit integer type in Google Cloud Platform (GCP)." + " It is used for performing arithmetic operations on large numbers in GCP" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = {"high": S("high"), "low": S("low")} high: Optional[str] = field(default=None) low: Optional[str] = field(default=None) @@ -6046,7 +6952,11 @@ class GcpUint128: class GcpServiceAttachment(GcpResource): kind: ClassVar[str] = "gcp_service_attachment" kind_display: ClassVar[str] = "GCP Service Attachment" - kind_description: ClassVar[str] = "GCP Service Attachment refers to the attachment of a Google Cloud Platform service to a particular resource, enabling the service to interact and operate with that resource." + kind_description: ClassVar[str] = ( + "GCP Service Attachment refers to the attachment of a Google Cloud Platform" + " service to a particular resource, enabling the service to interact and" + " operate with that resource." + ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_backend_service", "gcp_subnetwork"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -6106,7 +7016,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpSnapshot(GcpResource): kind: ClassVar[str] = "gcp_snapshot" kind_display: ClassVar[str] = "GCP Snapshot" - kind_description: ClassVar[str] = "GCP Snapshot is a point-in-time copy of the data in a persistent disk in Google Cloud Platform, allowing for data backup and recovery." + kind_description: ClassVar[str] = ( + "GCP Snapshot is a point-in-time copy of the data in a persistent disk in" + " Google Cloud Platform, allowing for data backup and recovery." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -6182,7 +7095,12 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpSubnetworkLogConfig: kind: ClassVar[str] = "gcp_subnetwork_log_config" kind_display: ClassVar[str] = "GCP Subnetwork Log Config" - kind_description: ClassVar[str] = "GCP Subnetwork Log Config is a feature provided by Google Cloud Platform (GCP) that allows users to configure logging for subnetworks. It enables the collection and analysis of network traffic logs for better network security and troubleshooting." + kind_description: ClassVar[str] = ( + "GCP Subnetwork Log Config is a feature provided by Google Cloud Platform" + " (GCP) that allows users to configure logging for subnetworks. It enables the" + " collection and analysis of network traffic logs for better network security" + " and troubleshooting." + ) mapping: ClassVar[Dict[str, Bender]] = { "aggregation_interval": S("aggregationInterval"), "enable": S("enable"), @@ -6203,7 +7121,11 @@ class GcpSubnetworkLogConfig: class GcpSubnetworkSecondaryRange: kind: ClassVar[str] = "gcp_subnetwork_secondary_range" kind_display: ClassVar[str] = "GCP Subnetwork Secondary Range" - kind_description: ClassVar[str] = "GCP Subnetwork Secondary Range is a range of IP addresses that can be used for assigning to instances or services within a Google Cloud Platform subnetwork." + kind_description: ClassVar[str] = ( + "GCP Subnetwork Secondary Range is a range of IP addresses that can be used" + " for assigning to instances or services within a Google Cloud Platform" + " subnetwork." + ) mapping: ClassVar[Dict[str, Bender]] = {"ip_cidr_range": S("ipCidrRange"), "range_name": S("rangeName")} ip_cidr_range: Optional[str] = field(default=None) range_name: Optional[str] = field(default=None) @@ -6213,7 +7135,11 @@ class GcpSubnetworkSecondaryRange: class GcpSubnetwork(GcpResource): kind: ClassVar[str] = "gcp_subnetwork" kind_display: ClassVar[str] = "GCP Subnetwork" - kind_description: ClassVar[str] = "A GCP Subnetwork is a segmented network within a Virtual Private Cloud (VPC) that allows for more granular control over network traffic and IP address allocation." + kind_description: ClassVar[str] = ( + "A GCP Subnetwork is a segmented network within a Virtual Private Cloud (VPC)" + " that allows for more granular control over network traffic and IP address" + " allocation." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]} } @@ -6282,7 +7208,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpTargetGrpcProxy(GcpResource): kind: ClassVar[str] = "gcp_target_grpc_proxy" kind_display: ClassVar[str] = "GCP Target gRPC Proxy" - kind_description: ClassVar[str] = "GCP Target gRPC Proxy is a service in Google Cloud Platform that allows you to load balance gRPC traffic to backend services." + kind_description: ClassVar[str] = ( + "GCP Target gRPC Proxy is a service in Google Cloud Platform that allows you" + " to load balance gRPC traffic to backend services." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { "delete": ["gcp_url_map"], @@ -6328,7 +7257,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpTargetInstance(GcpResource): kind: ClassVar[str] = "gcp_target_instance" kind_display: ClassVar[str] = "GCP Target Instance" - kind_description: ClassVar[str] = "Target Instances in Google Cloud Platform are virtual machine instances that are used as forwarding targets for load balancing and traffic routing." + kind_description: ClassVar[str] = ( + "Target Instances in Google Cloud Platform are virtual machine instances that" + " are used as forwarding targets for load balancing and traffic routing." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_instance"]}, "successors": {"default": ["gcp_instance"]}, @@ -6372,7 +7304,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpTargetPool(GcpResource): kind: ClassVar[str] = "gcp_target_pool" kind_display: ClassVar[str] = "GCP Target Pool" - kind_description: ClassVar[str] = "Target Pools in Google Cloud Platform (GCP) are groups of instances that can receive traffic from a load balancer. They are used to distribute incoming requests across multiple backend instances." + kind_description: ClassVar[str] = ( + "Target Pools in Google Cloud Platform (GCP) are groups of instances that can" + " receive traffic from a load balancer. They are used to distribute incoming" + " requests across multiple backend instances." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_http_health_check", "gcp_instance"]}, "successors": {"delete": ["gcp_http_health_check", "gcp_instance"]}, @@ -6422,7 +7358,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpTargetSslProxy(GcpResource): kind: ClassVar[str] = "gcp_target_ssl_proxy" kind_display: ClassVar[str] = "GCP Target SSL Proxy" - kind_description: ClassVar[str] = "A GCP Target SSL Proxy is a resource that terminates SSL/TLS traffic for a specific target HTTPS or SSL Proxy load balancing setup in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "A GCP Target SSL Proxy is a resource that terminates SSL/TLS traffic for a" + " specific target HTTPS or SSL Proxy load balancing setup in Google Cloud" + " Platform." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"delete": ["gcp_ssl_certificate", "gcp_backend_service"]}, "successors": {"default": ["gcp_ssl_certificate", "gcp_backend_service"]}, @@ -6471,7 +7411,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpTargetVpnGateway(GcpResource): kind: ClassVar[str] = "gcp_target_vpn_gateway" kind_display: ClassVar[str] = "GCP Target VPN Gateway" - kind_description: ClassVar[str] = "Target VPN Gateway is a virtual private network (VPN) gateway that allows secure communication between on-premises networks and networks running on Google Cloud Platform (GCP)." + kind_description: ClassVar[str] = ( + "Target VPN Gateway is a virtual private network (VPN) gateway that allows" + " secure communication between on-premises networks and networks running on" + " Google Cloud Platform (GCP)." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]}, } @@ -6514,7 +7458,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpVpnGatewayVpnGatewayInterface: kind: ClassVar[str] = "gcp_vpn_gateway_vpn_gateway_interface" kind_display: ClassVar[str] = "GCP VPN Gateway VPN Gateway Interface" - kind_description: ClassVar[str] = "The VPN Gateway Interface is a network interface used by the VPN Gateway in Google Cloud Platform to establish secure connections between on-premises networks and GCP virtual networks." + kind_description: ClassVar[str] = ( + "The VPN Gateway Interface is a network interface used by the VPN Gateway in" + " Google Cloud Platform to establish secure connections between on-premises" + " networks and GCP virtual networks." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), "interconnect_attachment": S("interconnectAttachment"), @@ -6529,7 +7477,11 @@ class GcpVpnGatewayVpnGatewayInterface: class GcpVpnGateway(GcpResource): kind: ClassVar[str] = "gcp_vpn_gateway" kind_display: ClassVar[str] = "GCP VPN Gateway" - kind_description: ClassVar[str] = "GCP VPN Gateway is a virtual private network (VPN) gateway on Google Cloud Platform that allows users to securely connect their on-premises network to their GCP network." + kind_description: ClassVar[str] = ( + "GCP VPN Gateway is a virtual private network (VPN) gateway on Google Cloud" + " Platform that allows users to securely connect their on-premises network to" + " their GCP network." + ) reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]}, "successors": {"default": ["gcp_interconnect_attachment"]}, @@ -6574,7 +7526,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpVpnTunnel(GcpResource): kind: ClassVar[str] = "gcp_vpn_tunnel" kind_display: ClassVar[str] = "GCP VPN Tunnel" - kind_description: ClassVar[str] = "A GCP VPN Tunnel is a secure virtual connection that allows users to connect their on-premises network to their Google Cloud Platform (GCP) Virtual Private Cloud (VPC)." + kind_description: ClassVar[str] = ( + "A GCP VPN Tunnel is a secure virtual connection that allows users to connect" + " their on-premises network to their Google Cloud Platform (GCP) Virtual" + " Private Cloud (VPC)." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["gcp_target_vpn_gateway", "gcp_vpn_gateway", "gcp_router"], diff --git a/plugins/gcp/resoto_plugin_gcp/resources/container.py b/plugins/gcp/resoto_plugin_gcp/resources/container.py index 2515140d81..da1d133a80 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/container.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/container.py @@ -17,7 +17,11 @@ class GcpContainerCloudRunConfig: kind: ClassVar[str] = "gcp_container_cloud_run_config" kind_display: ClassVar[str] = "GCP Container Cloud Run Configuration" - kind_description: ClassVar[str] = "GCP Container Cloud Run Config allows users to define and configure runtime settings for applications running on Google Cloud's serverless platform, Cloud Run." + kind_description: ClassVar[str] = ( + "GCP Container Cloud Run Config allows users to define and configure runtime" + " settings for applications running on Google Cloud's serverless platform," + " Cloud Run." + ) mapping: ClassVar[Dict[str, Bender]] = {"disabled": S("disabled"), "load_balancer_type": S("loadBalancerType")} disabled: Optional[bool] = field(default=None) load_balancer_type: Optional[str] = field(default=None) @@ -27,7 +31,11 @@ class GcpContainerCloudRunConfig: class GcpContainerAddonsConfig: kind: ClassVar[str] = "gcp_container_addons_config" kind_display: ClassVar[str] = "GCP Container Addons Config" - kind_description: ClassVar[str] = "GCP Container Addons Config is a configuration setting in Google Cloud Platform that allows users to enable or disable add-ons for Kubernetes Engine clusters." + kind_description: ClassVar[str] = ( + "GCP Container Addons Config is a configuration setting in Google Cloud" + " Platform that allows users to enable or disable add-ons for Kubernetes" + " Engine clusters." + ) mapping: ClassVar[Dict[str, Bender]] = { "cloud_run_config": S("cloudRunConfig", default={}) >> Bend(GcpContainerCloudRunConfig.mapping), "config_connector_config": S("configConnectorConfig", "enabled"), @@ -56,7 +64,11 @@ class GcpContainerAddonsConfig: class GcpContainerAuthenticatorGroupsConfig: kind: ClassVar[str] = "gcp_container_authenticator_groups_config" kind_display: ClassVar[str] = "GCP Container Authenticator Groups Config" - kind_description: ClassVar[str] = "GCP Container Authenticator Groups Config is a configuration resource in Google Cloud Platform that allows users to define groups of authenticated users and their access privileges for container-based applications." + kind_description: ClassVar[str] = ( + "GCP Container Authenticator Groups Config is a configuration resource in" + " Google Cloud Platform that allows users to define groups of authenticated" + " users and their access privileges for container-based applications." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "security_group": S("securityGroup")} enabled: Optional[bool] = field(default=None) security_group: Optional[str] = field(default=None) @@ -66,7 +78,12 @@ class GcpContainerAuthenticatorGroupsConfig: class GcpContainerAutoUpgradeOptions: kind: ClassVar[str] = "gcp_container_auto_upgrade_options" kind_display: ClassVar[str] = "GCP Container Auto-Upgrade Options" - kind_description: ClassVar[str] = "GCP Container Auto-Upgrade Options refer to the settings available for automatically upgrading Kubernetes clusters in the Google Cloud Platform, ensuring that they are always running the latest version of Kubernetes for enhanced security and performance." + kind_description: ClassVar[str] = ( + "GCP Container Auto-Upgrade Options refer to the settings available for" + " automatically upgrading Kubernetes clusters in the Google Cloud Platform," + " ensuring that they are always running the latest version of Kubernetes for" + " enhanced security and performance." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_upgrade_start_time": S("autoUpgradeStartTime"), "description": S("description"), @@ -79,7 +96,10 @@ class GcpContainerAutoUpgradeOptions: class GcpContainerNodeManagement: kind: ClassVar[str] = "gcp_container_node_management" kind_display: ClassVar[str] = "GCP Container Node Management" - kind_description: ClassVar[str] = "GCP Container Node Management is a service provided by Google Cloud Platform for managing and orchestrating containers running on GCP Kubernetes Engine." + kind_description: ClassVar[str] = ( + "GCP Container Node Management is a service provided by Google Cloud Platform" + " for managing and orchestrating containers running on GCP Kubernetes Engine." + ) mapping: ClassVar[Dict[str, Bender]] = { "auto_repair": S("autoRepair"), "auto_upgrade": S("autoUpgrade"), @@ -94,7 +114,11 @@ class GcpContainerNodeManagement: class GcpContainerShieldedInstanceConfig: kind: ClassVar[str] = "gcp_container_shielded_instance_config" kind_display: ClassVar[str] = "GCP Container Shielded Instance Config" - kind_description: ClassVar[str] = "Shielded Instance Config is a feature in Google Cloud Platform that adds layers of security to container instances, protecting them from various attack vectors and ensuring the integrity of the running container images." + kind_description: ClassVar[str] = ( + "Shielded Instance Config is a feature in Google Cloud Platform that adds" + " layers of security to container instances, protecting them from various" + " attack vectors and ensuring the integrity of the running container images." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_integrity_monitoring": S("enableIntegrityMonitoring"), "enable_secure_boot": S("enableSecureBoot"), @@ -107,7 +131,11 @@ class GcpContainerShieldedInstanceConfig: class GcpContainerStandardRolloutPolicy: kind: ClassVar[str] = "gcp_container_standard_rollout_policy" kind_display: ClassVar[str] = "GCP Container Standard Rollout Policy" - kind_description: ClassVar[str] = "A rollout policy in Google Cloud Platform (GCP) Container is a standard mechanism that defines how new versions of a container should be gradually deployed to a cluster in a controlled manner." + kind_description: ClassVar[str] = ( + "A rollout policy in Google Cloud Platform (GCP) Container is a standard" + " mechanism that defines how new versions of a container should be gradually" + " deployed to a cluster in a controlled manner." + ) mapping: ClassVar[Dict[str, Bender]] = { "batch_node_count": S("batchNodeCount"), "batch_percentage": S("batchPercentage"), @@ -122,7 +150,11 @@ class GcpContainerStandardRolloutPolicy: class GcpContainerBlueGreenSettings: kind: ClassVar[str] = "gcp_container_blue_green_settings" kind_display: ClassVar[str] = "GCP Container Blue-Green Settings" - kind_description: ClassVar[str] = "GCP Container Blue-Green Settings refers to the ability to deploy new versions of containers in a blue-green manner, enabling seamless deployment and testing of code changes without affecting production traffic." + kind_description: ClassVar[str] = ( + "GCP Container Blue-Green Settings refers to the ability to deploy new" + " versions of containers in a blue-green manner, enabling seamless deployment" + " and testing of code changes without affecting production traffic." + ) mapping: ClassVar[Dict[str, Bender]] = { "node_pool_soak_duration": S("nodePoolSoakDuration"), "standard_rollout_policy": S("standardRolloutPolicy", default={}) @@ -136,7 +168,11 @@ class GcpContainerBlueGreenSettings: class GcpContainerUpgradeSettings: kind: ClassVar[str] = "gcp_container_upgrade_settings" kind_display: ClassVar[str] = "GCP Container Upgrade Settings" - kind_description: ClassVar[str] = "GCP Container Upgrade Settings are configurations that allow users to manage and control the upgrade process of their containerized applications in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Container Upgrade Settings are configurations that allow users to manage" + " and control the upgrade process of their containerized applications in" + " Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "blue_green_settings": S("blueGreenSettings", default={}) >> Bend(GcpContainerBlueGreenSettings.mapping), "max_surge": S("maxSurge"), @@ -153,7 +189,11 @@ class GcpContainerUpgradeSettings: class GcpContainerAutoprovisioningNodePoolDefaults: kind: ClassVar[str] = "gcp_container_autoprovisioning_node_pool_defaults" kind_display: ClassVar[str] = "GCP Container Autoprovisioning Node Pool Defaults" - kind_description: ClassVar[str] = "Autoprovisioning Node Pool Defaults is a feature of Google Cloud Platform (GCP) Container Engine that automatically creates and manages additional node pools based on workload demands." + kind_description: ClassVar[str] = ( + "Autoprovisioning Node Pool Defaults is a feature of Google Cloud Platform" + " (GCP) Container Engine that automatically creates and manages additional" + " node pools based on workload demands." + ) mapping: ClassVar[Dict[str, Bender]] = { "boot_disk_kms_key": S("bootDiskKmsKey"), "disk_size_gb": S("diskSizeGb"), @@ -183,7 +223,12 @@ class GcpContainerAutoprovisioningNodePoolDefaults: class GcpContainerResourceLimit: kind: ClassVar[str] = "gcp_container_resource_limit" kind_display: ClassVar[str] = "GCP Container Resource Limit" - kind_description: ClassVar[str] = "Container Resource Limit in Google Cloud Platform (GCP) is a feature that allows you to set resource constraints on containers, such as CPU and memory limits, to ensure efficient resource allocation and prevent resource starvation." + kind_description: ClassVar[str] = ( + "Container Resource Limit in Google Cloud Platform (GCP) is a feature that" + " allows you to set resource constraints on containers, such as CPU and memory" + " limits, to ensure efficient resource allocation and prevent resource" + " starvation." + ) mapping: ClassVar[Dict[str, Bender]] = { "maximum": S("maximum"), "minimum": S("minimum"), @@ -198,7 +243,11 @@ class GcpContainerResourceLimit: class GcpContainerClusterAutoscaling: kind: ClassVar[str] = "gcp_container_cluster_autoscaling" kind_display: ClassVar[str] = "GCP Container Cluster Autoscaling" - kind_description: ClassVar[str] = "Container Cluster Autoscaling is a feature in Google Cloud Platform (GCP) that dynamically adjusts the number of nodes in a container cluster based on application demand and resource utilization." + kind_description: ClassVar[str] = ( + "Container Cluster Autoscaling is a feature in Google Cloud Platform (GCP)" + " that dynamically adjusts the number of nodes in a container cluster based on" + " application demand and resource utilization." + ) mapping: ClassVar[Dict[str, Bender]] = { "autoprovisioning_locations": S("autoprovisioningLocations", default=[]), "autoprovisioning_node_pool_defaults": S("autoprovisioningNodePoolDefaults", default={}) @@ -218,7 +267,11 @@ class GcpContainerClusterAutoscaling: class GcpContainerBinaryAuthorization: kind: ClassVar[str] = "gcp_container_binary_authorization" kind_display: ClassVar[str] = "GCP Container Binary Authorization" - kind_description: ClassVar[str] = "GCP Container Binary Authorization is a service that ensures only trusted container images are deployed in your Google Cloud environment, helping to prevent unauthorized or vulnerable images from running in production." + kind_description: ClassVar[str] = ( + "GCP Container Binary Authorization is a service that ensures only trusted" + " container images are deployed in your Google Cloud environment, helping to" + " prevent unauthorized or vulnerable images from running in production." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "evaluation_mode": S("evaluationMode")} enabled: Optional[bool] = field(default=None) evaluation_mode: Optional[str] = field(default=None) @@ -228,7 +281,10 @@ class GcpContainerBinaryAuthorization: class GcpContainerStatusCondition: kind: ClassVar[str] = "gcp_container_status_condition" kind_display: ClassVar[str] = "GCP Container Status Condition" - kind_description: ClassVar[str] = "Container Status Condition represents the current status condition of a container in the Google Cloud Platform Container Registry." + kind_description: ClassVar[str] = ( + "Container Status Condition represents the current status condition of a" + " container in the Google Cloud Platform Container Registry." + ) mapping: ClassVar[Dict[str, Bender]] = { "canonical_code": S("canonicalCode"), "code": S("code"), @@ -243,7 +299,11 @@ class GcpContainerStatusCondition: class GcpContainerDatabaseEncryption: kind: ClassVar[str] = "gcp_container_database_encryption" kind_display: ClassVar[str] = "GCP Container Database Encryption" - kind_description: ClassVar[str] = "GCP Container Database Encryption provides enhanced security by encrypting the data stored in containers, ensuring the confidentiality and integrity of the data at rest." + kind_description: ClassVar[str] = ( + "GCP Container Database Encryption provides enhanced security by encrypting" + " the data stored in containers, ensuring the confidentiality and integrity of" + " the data at rest." + ) mapping: ClassVar[Dict[str, Bender]] = {"key_name": S("keyName"), "state": S("state")} key_name: Optional[str] = field(default=None) state: Optional[str] = field(default=None) @@ -253,7 +313,11 @@ class GcpContainerDatabaseEncryption: class GcpContainerIPAllocationPolicy: kind: ClassVar[str] = "gcp_container_ip_allocation_policy" kind_display: ClassVar[str] = "GCP Container IP Allocation Policy" - kind_description: ClassVar[str] = "Container IP Allocation Policy is a feature in Google Cloud Platform that allows users to define and manage the IP address allocation policy for containers in a Kubernetes cluster." + kind_description: ClassVar[str] = ( + "Container IP Allocation Policy is a feature in Google Cloud Platform that" + " allows users to define and manage the IP address allocation policy for" + " containers in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "cluster_ipv4_cidr": S("clusterIpv4Cidr"), "cluster_ipv4_cidr_block": S("clusterIpv4CidrBlock"), @@ -292,7 +356,10 @@ class GcpContainerIPAllocationPolicy: class GcpContainerLoggingComponentConfig: kind: ClassVar[str] = "gcp_container_logging_component_config" kind_display: ClassVar[str] = "GCP Container Logging Component Config" - kind_description: ClassVar[str] = "Container Logging Component Config is a configuration setting for logging containers in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "Container Logging Component Config is a configuration setting for logging" + " containers in the Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"enable_components": S("enableComponents", default=[])} enable_components: Optional[List[str]] = field(default=None) @@ -301,7 +368,11 @@ class GcpContainerLoggingComponentConfig: class GcpContainerLoggingConfig: kind: ClassVar[str] = "gcp_container_logging_config" kind_display: ClassVar[str] = "GCP Container Logging Config" - kind_description: ClassVar[str] = "Container Logging Config is a feature in Google Cloud Platform (GCP) that allows users to configure and manage logging for their containerized applications running on GCP's Kubernetes Engine clusters." + kind_description: ClassVar[str] = ( + "Container Logging Config is a feature in Google Cloud Platform (GCP) that" + " allows users to configure and manage logging for their containerized" + " applications running on GCP's Kubernetes Engine clusters." + ) mapping: ClassVar[Dict[str, Bender]] = { "component_config": S("componentConfig", default={}) >> Bend(GcpContainerLoggingComponentConfig.mapping) } @@ -312,7 +383,11 @@ class GcpContainerLoggingConfig: class GcpContainerDailyMaintenanceWindow: kind: ClassVar[str] = "gcp_container_daily_maintenance_window" kind_display: ClassVar[str] = "GCP Container Daily Maintenance Window" - kind_description: ClassVar[str] = "This resource represents the daily maintenance window for Google Cloud Platform (GCP) containers, during which routine maintenance activities can take place." + kind_description: ClassVar[str] = ( + "This resource represents the daily maintenance window for Google Cloud" + " Platform (GCP) containers, during which routine maintenance activities can" + " take place." + ) mapping: ClassVar[Dict[str, Bender]] = {"duration": S("duration"), "start_time": S("startTime")} duration: Optional[str] = field(default=None) start_time: Optional[datetime] = field(default=None) @@ -322,7 +397,10 @@ class GcpContainerDailyMaintenanceWindow: class GcpContainerTimeWindow: kind: ClassVar[str] = "gcp_container_time_window" kind_display: ClassVar[str] = "GCP Container Time Window" - kind_description: ClassVar[str] = "A time window feature in GCP that allows users to specify the period of time during which their containers are allowed to run." + kind_description: ClassVar[str] = ( + "A time window feature in GCP that allows users to specify the period of time" + " during which their containers are allowed to run." + ) mapping: ClassVar[Dict[str, Bender]] = { "end_time": S("endTime"), "maintenance_exclusion_options": S("maintenanceExclusionOptions", "scope"), @@ -337,7 +415,10 @@ class GcpContainerTimeWindow: class GcpContainerRecurringTimeWindow: kind: ClassVar[str] = "gcp_container_recurring_time_window" kind_display: ClassVar[str] = "GCP Container Recurring Time Window" - kind_description: ClassVar[str] = "A recurring time window in Google Cloud Platform's container environment, used for scheduling recurring tasks or events." + kind_description: ClassVar[str] = ( + "A recurring time window in Google Cloud Platform's container environment," + " used for scheduling recurring tasks or events." + ) mapping: ClassVar[Dict[str, Bender]] = { "recurrence": S("recurrence"), "window": S("window", default={}) >> Bend(GcpContainerTimeWindow.mapping), @@ -350,7 +431,11 @@ class GcpContainerRecurringTimeWindow: class GcpContainerMaintenanceWindow: kind: ClassVar[str] = "gcp_container_maintenance_window" kind_display: ClassVar[str] = "GCP Container Maintenance Window" - kind_description: ClassVar[str] = "A maintenance window is a designated time period during which planned maintenance can be performed on Google Cloud Platform (GCP) containers without impacting the availability of the services." + kind_description: ClassVar[str] = ( + "A maintenance window is a designated time period during which planned" + " maintenance can be performed on Google Cloud Platform (GCP) containers" + " without impacting the availability of the services." + ) mapping: ClassVar[Dict[str, Bender]] = { "daily_maintenance_window": S("dailyMaintenanceWindow", default={}) >> Bend(GcpContainerDailyMaintenanceWindow.mapping), @@ -367,7 +452,11 @@ class GcpContainerMaintenanceWindow: class GcpContainerMaintenancePolicy: kind: ClassVar[str] = "gcp_container_maintenance_policy" kind_display: ClassVar[str] = "GCP Container Maintenance Policy" - kind_description: ClassVar[str] = "GCP Container Maintenance Policy is a feature in Google Cloud Platform that allows users to define how their container clusters will be updated and maintained by specifying maintenance windows and auto-upgrade settings." + kind_description: ClassVar[str] = ( + "GCP Container Maintenance Policy is a feature in Google Cloud Platform that" + " allows users to define how their container clusters will be updated and" + " maintained by specifying maintenance windows and auto-upgrade settings." + ) mapping: ClassVar[Dict[str, Bender]] = { "resource_version": S("resourceVersion"), "window": S("window", default={}) >> Bend(GcpContainerMaintenanceWindow.mapping), @@ -380,7 +469,12 @@ class GcpContainerMaintenancePolicy: class GcpContainerMasterAuth: kind: ClassVar[str] = "gcp_container_master_auth" kind_display: ClassVar[str] = "GCP Container Cluster Master Authentication" - kind_description: ClassVar[str] = "GCP Container Cluster Master Authentication provides secure access and authentication to the master controller of a Google Cloud Platform (GCP) container cluster, allowing users to manage and control their container cluster resources." + kind_description: ClassVar[str] = ( + "GCP Container Cluster Master Authentication provides secure access and" + " authentication to the master controller of a Google Cloud Platform (GCP)" + " container cluster, allowing users to manage and control their container" + " cluster resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "client_certificate": S("clientCertificate"), "client_certificate_config": S("clientCertificateConfig", "issueClientCertificate"), @@ -401,7 +495,10 @@ class GcpContainerMasterAuth: class GcpContainerCidrBlock: kind: ClassVar[str] = "gcp_container_cidr_block" kind_display: ClassVar[str] = "GCP Container CIDR Block" - kind_description: ClassVar[str] = "GCP Container CIDR Block is a range of IP addresses that can be used for the pods within a Google Cloud Platform (GCP) container cluster." + kind_description: ClassVar[str] = ( + "GCP Container CIDR Block is a range of IP addresses that can be used for the" + " pods within a Google Cloud Platform (GCP) container cluster." + ) mapping: ClassVar[Dict[str, Bender]] = {"cidr_block": S("cidrBlock"), "display_name": S("displayName")} cidr_block: Optional[str] = field(default=None) display_name: Optional[str] = field(default=None) @@ -411,7 +508,11 @@ class GcpContainerCidrBlock: class GcpContainerMasterAuthorizedNetworksConfig: kind: ClassVar[str] = "gcp_container_master_authorized_networks_config" kind_display: ClassVar[str] = "GCP Container Master Authorized Networks Configuration" - kind_description: ClassVar[str] = "Container Master Authorized Networks Configuration allows you to configure the IP address ranges that have access to the Kubernetes master of a Google Cloud Platform (GCP) container." + kind_description: ClassVar[str] = ( + "Container Master Authorized Networks Configuration allows you to configure" + " the IP address ranges that have access to the Kubernetes master of a Google" + " Cloud Platform (GCP) container." + ) mapping: ClassVar[Dict[str, Bender]] = { "cidr_blocks": S("cidrBlocks", default=[]) >> ForallBend(GcpContainerCidrBlock.mapping), "enabled": S("enabled"), @@ -424,7 +525,11 @@ class GcpContainerMasterAuthorizedNetworksConfig: class GcpContainerMonitoringComponentConfig: kind: ClassVar[str] = "gcp_container_monitoring_component_config" kind_display: ClassVar[str] = "GCP Container Monitoring Component Config" - kind_description: ClassVar[str] = "GCP Container Monitoring Component Config is a configuration component used for monitoring containers in the Google Cloud Platform. It allows users to configure various settings and parameters for container monitoring." + kind_description: ClassVar[str] = ( + "GCP Container Monitoring Component Config is a configuration component used" + " for monitoring containers in the Google Cloud Platform. It allows users to" + " configure various settings and parameters for container monitoring." + ) mapping: ClassVar[Dict[str, Bender]] = {"enable_components": S("enableComponents", default=[])} enable_components: Optional[List[str]] = field(default=None) @@ -433,7 +538,11 @@ class GcpContainerMonitoringComponentConfig: class GcpContainerMonitoringConfig: kind: ClassVar[str] = "gcp_container_monitoring_config" kind_display: ClassVar[str] = "GCP Container Monitoring Config" - kind_description: ClassVar[str] = "GCP Container Monitoring Config is a feature provided by Google Cloud Platform that allows users to configure and monitor the containers running on their cloud infrastructure." + kind_description: ClassVar[str] = ( + "GCP Container Monitoring Config is a feature provided by Google Cloud" + " Platform that allows users to configure and monitor the containers running" + " on their cloud infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "component_config": S("componentConfig", default={}) >> Bend(GcpContainerMonitoringComponentConfig.mapping), "managed_prometheus_config": S("managedPrometheusConfig", "enabled"), @@ -446,7 +555,11 @@ class GcpContainerMonitoringConfig: class GcpContainerDNSConfig: kind: ClassVar[str] = "gcp_container_dns_config" kind_display: ClassVar[str] = "GCP Container DNS Config" - kind_description: ClassVar[str] = "Container DNS Config is a feature in Google Cloud Platform that allows users to configure DNS settings for containers running in Google Kubernetes Engine (GKE)." + kind_description: ClassVar[str] = ( + "Container DNS Config is a feature in Google Cloud Platform that allows users" + " to configure DNS settings for containers running in Google Kubernetes Engine" + " (GKE)." + ) mapping: ClassVar[Dict[str, Bender]] = { "cluster_dns": S("clusterDns"), "cluster_dns_domain": S("clusterDnsDomain"), @@ -461,7 +574,12 @@ class GcpContainerDNSConfig: class GcpContainerNetworkConfig: kind: ClassVar[str] = "gcp_container_network_config" kind_display: ClassVar[str] = "GCP Container Network Config" - kind_description: ClassVar[str] = "Container Network Config is a feature provided by Google Cloud Platform that allows users to configure network settings for their containerized applications running in Google Kubernetes Engine (GKE), such as IP addresses, subnets, and network policies." + kind_description: ClassVar[str] = ( + "Container Network Config is a feature provided by Google Cloud Platform that" + " allows users to configure network settings for their containerized" + " applications running in Google Kubernetes Engine (GKE), such as IP" + " addresses, subnets, and network policies." + ) mapping: ClassVar[Dict[str, Bender]] = { "datapath_provider": S("datapathProvider"), "default_snat_status": S("defaultSnatStatus", "disabled"), @@ -488,7 +606,11 @@ class GcpContainerNetworkConfig: class GcpContainerNetworkPolicy: kind: ClassVar[str] = "gcp_container_network_policy" kind_display: ClassVar[str] = "GCP Container Network Policy" - kind_description: ClassVar[str] = "GCP Container Network Policy is a resource in Google Cloud Platform that allows users to control network traffic between containers within a Kubernetes Engine cluster." + kind_description: ClassVar[str] = ( + "GCP Container Network Policy is a resource in Google Cloud Platform that" + " allows users to control network traffic between containers within a" + " Kubernetes Engine cluster." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "provider": S("provider")} enabled: Optional[bool] = field(default=None) provider: Optional[str] = field(default=None) @@ -498,7 +620,11 @@ class GcpContainerNetworkPolicy: class GcpContainerGPUSharingConfig: kind: ClassVar[str] = "gcp_container_gpu_sharing_config" kind_display: ClassVar[str] = "GCP Container GPU Sharing Config" - kind_description: ClassVar[str] = "This resource allows the sharing of GPUs (Graphics Processing Units) between containers in Google Cloud Platform (GCP) containers, enabling efficient utilization of GPU resources." + kind_description: ClassVar[str] = ( + "This resource allows the sharing of GPUs (Graphics Processing Units) between" + " containers in Google Cloud Platform (GCP) containers, enabling efficient" + " utilization of GPU resources." + ) mapping: ClassVar[Dict[str, Bender]] = { "gpu_sharing_strategy": S("gpuSharingStrategy"), "max_shared_clients_per_gpu": S("maxSharedClientsPerGpu"), @@ -511,7 +637,11 @@ class GcpContainerGPUSharingConfig: class GcpContainerAcceleratorConfig: kind: ClassVar[str] = "gcp_container_accelerator_config" kind_display: ClassVar[str] = "GCP Container Accelerator Config" - kind_description: ClassVar[str] = "Container Accelerator Config is a feature in Google Cloud Platform that allows you to attach GPUs (Graphical Processing Units) to your containers, enabling faster and more efficient workload processing." + kind_description: ClassVar[str] = ( + "Container Accelerator Config is a feature in Google Cloud Platform that" + " allows you to attach GPUs (Graphical Processing Units) to your containers," + " enabling faster and more efficient workload processing." + ) mapping: ClassVar[Dict[str, Bender]] = { "accelerator_count": S("acceleratorCount"), "accelerator_type": S("acceleratorType"), @@ -528,7 +658,12 @@ class GcpContainerAcceleratorConfig: class GcpContainerNodeKubeletConfig: kind: ClassVar[str] = "gcp_container_node_kubelet_config" kind_display: ClassVar[str] = "GCP Container Node Kubelet Config" - kind_description: ClassVar[str] = "The GCP Container Node Kubelet Config is a configuration file used by Google Cloud Platform (GCP) to configure the Kubelet component of container nodes in a Kubernetes cluster. Kubelet is responsible for managing the state of each container running on the node." + kind_description: ClassVar[str] = ( + "The GCP Container Node Kubelet Config is a configuration file used by Google" + " Cloud Platform (GCP) to configure the Kubelet component of container nodes" + " in a Kubernetes cluster. Kubelet is responsible for managing the state of" + " each container running on the node." + ) mapping: ClassVar[Dict[str, Bender]] = { "cpu_cfs_quota": S("cpuCfsQuota"), "cpu_cfs_quota_period": S("cpuCfsQuotaPeriod"), @@ -545,7 +680,11 @@ class GcpContainerNodeKubeletConfig: class GcpContainerLinuxNodeConfig: kind: ClassVar[str] = "gcp_container_linux_node_config" kind_display: ClassVar[str] = "GCP Container Linux Node Config" - kind_description: ClassVar[str] = "GCP Container Linux Node Config is a configuration for Linux nodes in Google Cloud Platform's container service, allowing users to define the settings and behavior for their Linux-based container nodes." + kind_description: ClassVar[str] = ( + "GCP Container Linux Node Config is a configuration for Linux nodes in Google" + " Cloud Platform's container service, allowing users to define the settings" + " and behavior for their Linux-based container nodes." + ) mapping: ClassVar[Dict[str, Bender]] = {"sysctls": S("sysctls")} sysctls: Optional[Dict[str, str]] = field(default=None) @@ -554,7 +693,11 @@ class GcpContainerLinuxNodeConfig: class GcpContainerNodePoolLoggingConfig: kind: ClassVar[str] = "gcp_container_node_pool_logging_config" kind_display: ClassVar[str] = "GCP Container Node Pool Logging Config" - kind_description: ClassVar[str] = "Container Node Pool Logging Config is a configuration setting in Google Cloud Platform (GCP) for specifying logging options for container node pools in Kubernetes clusters." + kind_description: ClassVar[str] = ( + "Container Node Pool Logging Config is a configuration setting in Google" + " Cloud Platform (GCP) for specifying logging options for container node pools" + " in Kubernetes clusters." + ) mapping: ClassVar[Dict[str, Bender]] = {"variant_config": S("variantConfig", "variant")} variant_config: Optional[str] = field(default=None) @@ -563,7 +706,11 @@ class GcpContainerNodePoolLoggingConfig: class GcpContainerReservationAffinity: kind: ClassVar[str] = "gcp_container_reservation_affinity" kind_display: ClassVar[str] = "GCP Container Reservation Affinity" - kind_description: ClassVar[str] = "Container Reservation Affinity is a feature in Google Cloud Platform that allows you to reserve specific compute nodes for your container workloads, ensuring they are always scheduled on those nodes." + kind_description: ClassVar[str] = ( + "Container Reservation Affinity is a feature in Google Cloud Platform that" + " allows you to reserve specific compute nodes for your container workloads," + " ensuring they are always scheduled on those nodes." + ) mapping: ClassVar[Dict[str, Bender]] = { "consume_reservation_type": S("consumeReservationType"), "key": S("key"), @@ -578,7 +725,11 @@ class GcpContainerReservationAffinity: class GcpContainerNodeTaint: kind: ClassVar[str] = "gcp_container_node_taint" kind_display: ClassVar[str] = "GCP Container Node Taint" - kind_description: ClassVar[str] = "Container Node Taints are a feature in Google Cloud Platform's container service that allow users to add constraints and preferences to nodes in a Kubernetes cluster." + kind_description: ClassVar[str] = ( + "Container Node Taints are a feature in Google Cloud Platform's container" + " service that allow users to add constraints and preferences to nodes in a" + " Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = {"effect": S("effect"), "key": S("key"), "value": S("value")} effect: Optional[str] = field(default=None) key: Optional[str] = field(default=None) @@ -589,7 +740,11 @@ class GcpContainerNodeTaint: class GcpContainerNodeConfig: kind: ClassVar[str] = "gcp_container_node_config" kind_display: ClassVar[str] = "GCP Container Node Config" - kind_description: ClassVar[str] = "GCP Container Node Config is a configuration for a node in Google Cloud Platform's container service, allowing users to specify settings such as machine type, disk size, and network configuration for a container node." + kind_description: ClassVar[str] = ( + "GCP Container Node Config is a configuration for a node in Google Cloud" + " Platform's container service, allowing users to specify settings such as" + " machine type, disk size, and network configuration for a container node." + ) mapping: ClassVar[Dict[str, Bender]] = { "accelerators": S("accelerators", default=[]) >> ForallBend(GcpContainerAcceleratorConfig.mapping), "advanced_machine_features": S("advancedMachineFeatures", "threadsPerCore"), @@ -655,7 +810,11 @@ class GcpContainerNodeConfig: class GcpContainerNetworkTags: kind: ClassVar[str] = "gcp_container_network_tags" kind_display: ClassVar[str] = "GCP Container Network Tags" - kind_description: ClassVar[str] = "GCP Container Network Tags are labels that can be assigned to GCP container instances, allowing for easier management and control of network traffic within Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Container Network Tags are labels that can be assigned to GCP container" + " instances, allowing for easier management and control of network traffic" + " within Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"tags": S("tags", default=[])} tags: Optional[List[str]] = field(default=None) @@ -664,7 +823,11 @@ class GcpContainerNetworkTags: class GcpContainerNodePoolAutoConfig: kind: ClassVar[str] = "gcp_container_node_pool_auto_config" kind_display: ClassVar[str] = "GCP Container Node Pool Auto Config" - kind_description: ClassVar[str] = "Auto Config is a feature in GCP (Google Cloud Platform) that allows automatic configuration of Container Node Pools, which are groups of nodes in a Kubernetes cluster that run containerized applications." + kind_description: ClassVar[str] = ( + "Auto Config is a feature in GCP (Google Cloud Platform) that allows" + " automatic configuration of Container Node Pools, which are groups of nodes" + " in a Kubernetes cluster that run containerized applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "network_tags": S("networkTags", default={}) >> Bend(GcpContainerNetworkTags.mapping) } @@ -675,7 +838,10 @@ class GcpContainerNodePoolAutoConfig: class GcpContainerNodeConfigDefaults: kind: ClassVar[str] = "gcp_container_node_config_defaults" kind_display: ClassVar[str] = "GCP Container Node Config Defaults" - kind_description: ClassVar[str] = "GCP Container Node Config Defaults represents the default configuration settings for nodes in a Google Cloud Platform container cluster." + kind_description: ClassVar[str] = ( + "GCP Container Node Config Defaults represents the default configuration" + " settings for nodes in a Google Cloud Platform container cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "gcfs_config": S("gcfsConfig", "enabled"), "logging_config": S("loggingConfig", default={}) >> Bend(GcpContainerNodePoolLoggingConfig.mapping), @@ -688,7 +854,11 @@ class GcpContainerNodeConfigDefaults: class GcpContainerNodePoolDefaults: kind: ClassVar[str] = "gcp_container_node_pool_defaults" kind_display: ClassVar[str] = "GCP Container Node Pool Defaults" - kind_description: ClassVar[str] = "GCP Container Node Pool Defaults is a feature in Google Cloud Platform that allows users to set default configurations for their container node pools, which are groups of nodes that host containerized applications." + kind_description: ClassVar[str] = ( + "GCP Container Node Pool Defaults is a feature in Google Cloud Platform that" + " allows users to set default configurations for their container node pools," + " which are groups of nodes that host containerized applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "node_config_defaults": S("nodeConfigDefaults", default={}) >> Bend(GcpContainerNodeConfigDefaults.mapping) } @@ -699,7 +869,11 @@ class GcpContainerNodePoolDefaults: class GcpContainerNodePoolAutoscaling: kind: ClassVar[str] = "gcp_container_node_pool_autoscaling" kind_display: ClassVar[str] = "GCP Container Node Pool Autoscaling" - kind_description: ClassVar[str] = "Container Node Pool Autoscaling is a feature in Google Cloud Platform that automatically adjusts the number of nodes in a container cluster based on demand, ensuring optimal resource utilization and scalability." + kind_description: ClassVar[str] = ( + "Container Node Pool Autoscaling is a feature in Google Cloud Platform that" + " automatically adjusts the number of nodes in a container cluster based on" + " demand, ensuring optimal resource utilization and scalability." + ) mapping: ClassVar[Dict[str, Bender]] = { "autoprovisioned": S("autoprovisioned"), "enabled": S("enabled"), @@ -722,7 +896,11 @@ class GcpContainerNodePoolAutoscaling: class GcpContainerNodeNetworkConfig: kind: ClassVar[str] = "gcp_container_node_network_config" kind_display: ClassVar[str] = "GCP Container Node Network Config" - kind_description: ClassVar[str] = "GCP Container Node Network Config is a network configuration for nodes in Google Cloud Platform's container service. It defines the network settings for containers running on the nodes." + kind_description: ClassVar[str] = ( + "GCP Container Node Network Config is a network configuration for nodes in" + " Google Cloud Platform's container service. It defines the network settings" + " for containers running on the nodes." + ) mapping: ClassVar[Dict[str, Bender]] = { "create_pod_range": S("createPodRange"), "network_performance_config": S("networkPerformanceConfig", "totalEgressBandwidthTier"), @@ -739,7 +917,11 @@ class GcpContainerNodeNetworkConfig: class GcpContainerBlueGreenInfo: kind: ClassVar[str] = "gcp_container_blue_green_info" kind_display: ClassVar[str] = "GCP Container Blue-Green Info" - kind_description: ClassVar[str] = "Blue-Green deployment strategy in Google Cloud Platform (GCP) container where two identical production environments, blue and green, are used to minimize downtime during software releases." + kind_description: ClassVar[str] = ( + "Blue-Green deployment strategy in Google Cloud Platform (GCP) container" + " where two identical production environments, blue and green, are used to" + " minimize downtime during software releases." + ) mapping: ClassVar[Dict[str, Bender]] = { "blue_instance_group_urls": S("blueInstanceGroupUrls", default=[]), "blue_pool_deletion_start_time": S("bluePoolDeletionStartTime"), @@ -758,7 +940,11 @@ class GcpContainerBlueGreenInfo: class GcpContainerUpdateInfo: kind: ClassVar[str] = "gcp_container_update_info" kind_display: ClassVar[str] = "GCP Container Update Info" - kind_description: ClassVar[str] = "Container Update Info is a feature in Google Cloud Platform that provides information about updates and changes to container instances in a Google Kubernetes Engine cluster." + kind_description: ClassVar[str] = ( + "Container Update Info is a feature in Google Cloud Platform that provides" + " information about updates and changes to container instances in a Google" + " Kubernetes Engine cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "blue_green_info": S("blueGreenInfo", default={}) >> Bend(GcpContainerBlueGreenInfo.mapping) } @@ -769,7 +955,11 @@ class GcpContainerUpdateInfo: class GcpContainerNodePool: kind: ClassVar[str] = "gcp_container_node_pool" kind_display: ClassVar[str] = "GCP Container Node Pool" - kind_description: ClassVar[str] = "Container Node Pool is a resource in Google Cloud Platform that allows you to create and manage a pool of virtual machines to run your containerized applications in Google Kubernetes Engine." + kind_description: ClassVar[str] = ( + "Container Node Pool is a resource in Google Cloud Platform that allows you" + " to create and manage a pool of virtual machines to run your containerized" + " applications in Google Kubernetes Engine." + ) mapping: ClassVar[Dict[str, Bender]] = { "autoscaling": S("autoscaling", default={}) >> Bend(GcpContainerNodePoolAutoscaling.mapping), "conditions": S("conditions", default=[]) >> ForallBend(GcpContainerStatusCondition.mapping), @@ -812,7 +1002,10 @@ class GcpContainerNodePool: class GcpContainerFilter: kind: ClassVar[str] = "gcp_container_filter" kind_display: ClassVar[str] = "GCP Container Filter" - kind_description: ClassVar[str] = "A GCP Container Filter is used to specify criteria for filtering containers in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "A GCP Container Filter is used to specify criteria for filtering containers" + " in Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"event_type": S("eventType", default=[])} event_type: Optional[List[str]] = field(default=None) @@ -821,7 +1014,10 @@ class GcpContainerFilter: class GcpContainerPubSub: kind: ClassVar[str] = "gcp_container_pub_sub" kind_display: ClassVar[str] = "GCP Container Pub/Sub" - kind_description: ClassVar[str] = "GCP Container Pub/Sub is a messaging service provided by Google Cloud Platform for decoupling and scaling microservices and distributed systems." + kind_description: ClassVar[str] = ( + "GCP Container Pub/Sub is a messaging service provided by Google Cloud" + " Platform for decoupling and scaling microservices and distributed systems." + ) mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("enabled"), "filter": S("filter", default={}) >> Bend(GcpContainerFilter.mapping), @@ -836,7 +1032,10 @@ class GcpContainerPubSub: class GcpContainerNotificationConfig: kind: ClassVar[str] = "gcp_container_notification_config" kind_display: ClassVar[str] = "GCP Container Notification Config" - kind_description: ClassVar[str] = "GCP Container Notification Config is a resource in Google Cloud Platform that allows users to configure notifications for container events." + kind_description: ClassVar[str] = ( + "GCP Container Notification Config is a resource in Google Cloud Platform" + " that allows users to configure notifications for container events." + ) mapping: ClassVar[Dict[str, Bender]] = {"pubsub": S("pubsub", default={}) >> Bend(GcpContainerPubSub.mapping)} pubsub: Optional[GcpContainerPubSub] = field(default=None) @@ -845,7 +1044,12 @@ class GcpContainerNotificationConfig: class GcpContainerPrivateClusterConfig: kind: ClassVar[str] = "gcp_container_private_cluster_config" kind_display: ClassVar[str] = "GCP Container Private Cluster Config" - kind_description: ClassVar[str] = "Private cluster configuration option for running Kubernetes clusters in Google Cloud Platform (GCP) container engine. Private clusters offer enhanced security by isolating the cluster's control plane and worker nodes from the public internet." + kind_description: ClassVar[str] = ( + "Private cluster configuration option for running Kubernetes clusters in" + " Google Cloud Platform (GCP) container engine. Private clusters offer" + " enhanced security by isolating the cluster's control plane and worker nodes" + " from the public internet." + ) mapping: ClassVar[Dict[str, Bender]] = { "enable_private_endpoint": S("enablePrivateEndpoint"), "enable_private_nodes": S("enablePrivateNodes"), @@ -868,7 +1072,11 @@ class GcpContainerPrivateClusterConfig: class GcpContainerResourceUsageExportConfig: kind: ClassVar[str] = "gcp_container_resource_usage_export_config" kind_display: ClassVar[str] = "GCP Container Resource Usage Export Config" - kind_description: ClassVar[str] = "Container Resource Usage Export Config is a feature in Google Cloud Platform that allows exporting container resource usage data to external systems for analysis and monitoring purposes." + kind_description: ClassVar[str] = ( + "Container Resource Usage Export Config is a feature in Google Cloud Platform" + " that allows exporting container resource usage data to external systems for" + " analysis and monitoring purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "bigquery_destination": S("bigqueryDestination", "datasetId"), "consumption_metering_config": S("consumptionMeteringConfig", "enabled"), @@ -883,7 +1091,11 @@ class GcpContainerResourceUsageExportConfig: class GcpContainerCluster(GcpResource): kind: ClassVar[str] = "gcp_container_cluster" kind_display: ClassVar[str] = "GCP Container Cluster" - kind_description: ClassVar[str] = "Container Cluster is a managed Kubernetes cluster service provided by Google Cloud Platform, which allows users to deploy, manage, and scale containerized applications using Kubernetes." + kind_description: ClassVar[str] = ( + "Container Cluster is a managed Kubernetes cluster service provided by Google" + " Cloud Platform, which allows users to deploy, manage, and scale" + " containerized applications using Kubernetes." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="container", version="v1", @@ -1031,7 +1243,10 @@ class GcpContainerCluster(GcpResource): class GcpContainerStatus: kind: ClassVar[str] = "gcp_container_status" kind_display: ClassVar[str] = "GCP Container Status" - kind_description: ClassVar[str] = "GCP Container Status provides information about the current status, health, and availability of containers running on Google Cloud Platform (GCP)." + kind_description: ClassVar[str] = ( + "GCP Container Status provides information about the current status, health," + " and availability of containers running on Google Cloud Platform (GCP)." + ) mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "details": S("details", default=[]), @@ -1046,7 +1261,11 @@ class GcpContainerStatus: class GcpContainerMetric: kind: ClassVar[str] = "gcp_container_metric" kind_display: ClassVar[str] = "GCP Container Metric" - kind_description: ClassVar[str] = "Container Metrics in Google Cloud Platform (GCP) are measurements of resource utilization and performance for containers running on GCP's managed Kubernetes Engine." + kind_description: ClassVar[str] = ( + "Container Metrics in Google Cloud Platform (GCP) are measurements of" + " resource utilization and performance for containers running on GCP's managed" + " Kubernetes Engine." + ) mapping: ClassVar[Dict[str, Bender]] = { "double_value": S("doubleValue"), "int_value": S("intValue"), @@ -1063,7 +1282,12 @@ class GcpContainerMetric: class GcpContainerOperationProgress: kind: ClassVar[str] = "gcp_container_operation_progress" kind_display: ClassVar[str] = "GCP Container Operation Progress" - kind_description: ClassVar[str] = "GCP Container Operation Progress refers to the status and progress of an operation involving containers in Google Cloud Platform. It provides information on the current state and completion progress of container-related operations." + kind_description: ClassVar[str] = ( + "GCP Container Operation Progress refers to the status and progress of an" + " operation involving containers in Google Cloud Platform. It provides" + " information on the current state and completion progress of container-" + " related operations." + ) mapping: ClassVar[Dict[str, Bender]] = { "metrics": S("metrics", default=[]) >> ForallBend(GcpContainerMetric.mapping), "name": S("name"), @@ -1078,7 +1302,11 @@ class GcpContainerOperationProgress: class GcpContainerOperation(GcpResource): kind: ClassVar[str] = "gcp_container_operation" kind_display: ClassVar[str] = "GCP Container Operation" - kind_description: ClassVar[str] = "Container Operations are management tasks performed on containers in Google Cloud Platform, including creating, starting, stopping, and deleting containers." + kind_description: ClassVar[str] = ( + "Container Operations are management tasks performed on containers in Google" + " Cloud Platform, including creating, starting, stopping, and deleting" + " containers." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_container_cluster"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="container", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py index 257f8aabd5..8ccb2f9f6e 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py @@ -18,7 +18,11 @@ class GcpSqlOperationError: kind: ClassVar[str] = "gcp_sql_operation_error" kind_display: ClassVar[str] = "GCP SQL Operation Error" - kind_description: ClassVar[str] = "This error refers to an error that occurred during an operation related to Google Cloud SQL, which is a fully managed relational database service provided by Google Cloud Platform." + kind_description: ClassVar[str] = ( + "This error refers to an error that occurred during an operation related to" + " Google Cloud SQL, which is a fully managed relational database service" + " provided by Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"code": S("code"), "message": S("message")} code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) @@ -29,7 +33,10 @@ class GcpSqlBackupRun(GcpResource): # collected via GcpSqlDatabaseInstance kind: ClassVar[str] = "gcp_sql_backup_run" kind_display: ClassVar[str] = "GCP SQL Backup Run" - kind_description: ClassVar[str] = "GCP SQL Backup Run is a feature in Google Cloud Platform that allows users to schedule and execute automated backups of their SQL databases." + kind_description: ClassVar[str] = ( + "GCP SQL Backup Run is a feature in Google Cloud Platform that allows users" + " to schedule and execute automated backups of their SQL databases." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_database_instance"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", @@ -89,7 +96,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpSqlSqlServerDatabaseDetails: kind: ClassVar[str] = "gcp_sql_sql_server_database_details" kind_display: ClassVar[str] = "GCP SQL SQL Server Database Details" - kind_description: ClassVar[str] = "This resource provides details and information about a Microsoft SQL Server database in the Google Cloud Platform's SQL service." + kind_description: ClassVar[str] = ( + "This resource provides details and information about a Microsoft SQL Server" + " database in the Google Cloud Platform's SQL service." + ) mapping: ClassVar[Dict[str, Bender]] = { "compatibility_level": S("compatibilityLevel"), "recovery_model": S("recoveryModel"), @@ -103,7 +113,10 @@ class GcpSqlDatabase(GcpResource): # collected via GcpSqlDatabaseInstance kind: ClassVar[str] = "gcp_sql_database" kind_display: ClassVar[str] = "GCP SQL Database" - kind_description: ClassVar[str] = "GCP SQL Database is a managed relational database service provided by Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP SQL Database is a managed relational database service provided by Google" + " Cloud Platform." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", version="v1", @@ -150,7 +163,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpSqlFailoverreplica: kind: ClassVar[str] = "gcp_sql_failoverreplica" kind_display: ClassVar[str] = "GCP SQL Failover Replica" - kind_description: ClassVar[str] = "A GCP SQL Failover Replica is a secondary replica database that can be promoted to the primary database in case of a primary database failure, ensuring high availability and data redundancy for Google Cloud SQL." + kind_description: ClassVar[str] = ( + "A GCP SQL Failover Replica is a secondary replica database that can be" + " promoted to the primary database in case of a primary database failure," + " ensuring high availability and data redundancy for Google Cloud SQL." + ) mapping: ClassVar[Dict[str, Bender]] = {"available": S("available"), "name": S("name")} available: Optional[bool] = field(default=None) name: Optional[str] = field(default=None) @@ -160,7 +177,10 @@ class GcpSqlFailoverreplica: class GcpSqlIpMapping: kind: ClassVar[str] = "gcp_sql_ip_mapping" kind_display: ClassVar[str] = "GCP SQL IP Mapping" - kind_description: ClassVar[str] = "GCP SQL IP Mapping is a feature in Google Cloud Platform that allows mapping of IP addresses to Google Cloud SQL instances." + kind_description: ClassVar[str] = ( + "GCP SQL IP Mapping is a feature in Google Cloud Platform that allows mapping" + " of IP addresses to Google Cloud SQL instances." + ) mapping: ClassVar[Dict[str, Bender]] = { "ip_address": S("ipAddress"), "time_to_retire": S("timeToRetire"), @@ -175,7 +195,11 @@ class GcpSqlIpMapping: class GcpSqlInstanceReference: kind: ClassVar[str] = "gcp_sql_instance_reference" kind_display: ClassVar[str] = "GCP Cloud SQL Instance Reference" - kind_description: ClassVar[str] = "Cloud SQL is a fully-managed relational database service provided by Google Cloud Platform, allowing users to create and manage MySQL or PostgreSQL databases in the cloud." + kind_description: ClassVar[str] = ( + "Cloud SQL is a fully-managed relational database service provided by Google" + " Cloud Platform, allowing users to create and manage MySQL or PostgreSQL" + " databases in the cloud." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "project": S("project"), "region": S("region")} name: Optional[str] = field(default=None) project: Optional[str] = field(default=None) @@ -186,7 +210,11 @@ class GcpSqlInstanceReference: class GcpSqlOnPremisesConfiguration: kind: ClassVar[str] = "gcp_sql_on_premises_configuration" kind_display: ClassVar[str] = "GCP SQL On-Premises Configuration" - kind_description: ClassVar[str] = "GCP SQL On-Premises Configuration provides the ability to configure and manage Google Cloud SQL databases that are located on customer's own on-premises infrastructure." + kind_description: ClassVar[str] = ( + "GCP SQL On-Premises Configuration provides the ability to configure and" + " manage Google Cloud SQL databases that are located on customer's own on-" + " premises infrastructure." + ) mapping: ClassVar[Dict[str, Bender]] = { "ca_certificate": S("caCertificate"), "client_certificate": S("clientCertificate"), @@ -211,7 +239,10 @@ class GcpSqlOnPremisesConfiguration: class GcpSqlSqlOutOfDiskReport: kind: ClassVar[str] = "gcp_sql_sql_out_of_disk_report" kind_display: ClassVar[str] = "GCP SQL Out of Disk Report" - kind_description: ClassVar[str] = "This resource represents a report that indicates when a Google Cloud SQL instance runs out of disk space." + kind_description: ClassVar[str] = ( + "This resource represents a report that indicates when a Google Cloud SQL" + " instance runs out of disk space." + ) mapping: ClassVar[Dict[str, Bender]] = { "sql_min_recommended_increase_size_gb": S("sqlMinRecommendedIncreaseSizeGb"), "sql_out_of_disk_state": S("sqlOutOfDiskState"), @@ -224,7 +255,11 @@ class GcpSqlSqlOutOfDiskReport: class GcpSqlMySqlReplicaConfiguration: kind: ClassVar[str] = "gcp_sql_my_sql_replica_configuration" kind_display: ClassVar[str] = "GCP SQL MySQL Replica Configuration" - kind_description: ClassVar[str] = "MySQL Replica Configuration is a feature in Google Cloud SQL that enables the creation and management of replicas for high availability and fault tolerance of MySQL databases." + kind_description: ClassVar[str] = ( + "MySQL Replica Configuration is a feature in Google Cloud SQL that enables" + " the creation and management of replicas for high availability and fault" + " tolerance of MySQL databases." + ) mapping: ClassVar[Dict[str, Bender]] = { "ca_certificate": S("caCertificate"), "client_certificate": S("clientCertificate"), @@ -253,7 +288,11 @@ class GcpSqlMySqlReplicaConfiguration: class GcpSqlReplicaConfiguration: kind: ClassVar[str] = "gcp_sql_replica_configuration" kind_display: ClassVar[str] = "GCP SQL Replica Configuration" - kind_description: ClassVar[str] = "SQL replica configuration in Google Cloud Platform (GCP) allows users to create and manage replica instances of a SQL database for improved scalability and high availability." + kind_description: ClassVar[str] = ( + "SQL replica configuration in Google Cloud Platform (GCP) allows users to" + " create and manage replica instances of a SQL database for improved" + " scalability and high availability." + ) mapping: ClassVar[Dict[str, Bender]] = { "failover_target": S("failoverTarget"), "mysql_replica_configuration": S("mysqlReplicaConfiguration", default={}) @@ -267,7 +306,11 @@ class GcpSqlReplicaConfiguration: class GcpSqlSqlScheduledMaintenance: kind: ClassVar[str] = "gcp_sql_sql_scheduled_maintenance" kind_display: ClassVar[str] = "GCP SQL SQL Scheduled Maintenance" - kind_description: ClassVar[str] = "SQL Scheduled Maintenance is a feature in Google Cloud Platform's SQL service that allows users to schedule maintenance tasks for their SQL instances, ensuring minimal downtime and disruption." + kind_description: ClassVar[str] = ( + "SQL Scheduled Maintenance is a feature in Google Cloud Platform's SQL" + " service that allows users to schedule maintenance tasks for their SQL" + " instances, ensuring minimal downtime and disruption." + ) mapping: ClassVar[Dict[str, Bender]] = { "can_defer": S("canDefer"), "can_reschedule": S("canReschedule"), @@ -284,7 +327,11 @@ class GcpSqlSqlScheduledMaintenance: class GcpSqlSslCert: kind: ClassVar[str] = "gcp_sql_ssl_cert" kind_display: ClassVar[str] = "GCP SQL SSL Certificate" - kind_description: ClassVar[str] = "GCP SQL SSL Certificates are used to secure connections between applications and Google Cloud SQL databases, ensuring that data exchanged between them is encrypted." + kind_description: ClassVar[str] = ( + "GCP SQL SSL Certificates are used to secure connections between applications" + " and Google Cloud SQL databases, ensuring that data exchanged between them is" + " encrypted." + ) mapping: ClassVar[Dict[str, Bender]] = { "cert": S("cert"), "cert_serial_number": S("certSerialNumber"), @@ -309,7 +356,12 @@ class GcpSqlSslCert: class GcpSqlBackupRetentionSettings: kind: ClassVar[str] = "gcp_sql_backup_retention_settings" kind_display: ClassVar[str] = "GCP SQL Backup Retention Settings" - kind_description: ClassVar[str] = "GCP SQL Backup Retention Settings is a feature in Google Cloud Platform that allows you to configure the backup retention policy for your SQL databases. It lets you set the duration for which backups should be retained before being automatically deleted." + kind_description: ClassVar[str] = ( + "GCP SQL Backup Retention Settings is a feature in Google Cloud Platform that" + " allows you to configure the backup retention policy for your SQL databases." + " It lets you set the duration for which backups should be retained before" + " being automatically deleted." + ) mapping: ClassVar[Dict[str, Bender]] = { "retained_backups": S("retainedBackups"), "retention_unit": S("retentionUnit"), @@ -322,7 +374,10 @@ class GcpSqlBackupRetentionSettings: class GcpSqlBackupConfiguration: kind: ClassVar[str] = "gcp_sql_backup_configuration" kind_display: ClassVar[str] = "GCP SQL Backup Configuration" - kind_description: ClassVar[str] = "GCP SQL Backup Configuration is a resource in Google Cloud Platform that allows users to configure and manage backups for their SQL databases." + kind_description: ClassVar[str] = ( + "GCP SQL Backup Configuration is a resource in Google Cloud Platform that" + " allows users to configure and manage backups for their SQL databases." + ) mapping: ClassVar[Dict[str, Bender]] = { "backup_retention_settings": S("backupRetentionSettings", default={}) >> Bend(GcpSqlBackupRetentionSettings.mapping), @@ -348,7 +403,10 @@ class GcpSqlBackupConfiguration: class GcpSqlDatabaseFlags: kind: ClassVar[str] = "gcp_sql_database_flags" kind_display: ClassVar[str] = "GCP SQL Database Flags" - kind_description: ClassVar[str] = "GCP SQL Database Flags are configuration settings that can be applied to Google Cloud Platform's SQL databases to customize their behavior." + kind_description: ClassVar[str] = ( + "GCP SQL Database Flags are configuration settings that can be applied to" + " Google Cloud Platform's SQL databases to customize their behavior." + ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "value": S("value")} name: Optional[str] = field(default=None) value: Optional[str] = field(default=None) @@ -358,7 +416,11 @@ class GcpSqlDatabaseFlags: class GcpSqlDenyMaintenancePeriod: kind: ClassVar[str] = "gcp_sql_deny_maintenance_period" kind_display: ClassVar[str] = "GCP SQL Deny Maintenance Period" - kind_description: ClassVar[str] = "GCP SQL Deny Maintenance Period is a feature in Google Cloud Platform that allows users to specify a period of time during which maintenance updates or patches will not be applied to SQL instances." + kind_description: ClassVar[str] = ( + "GCP SQL Deny Maintenance Period is a feature in Google Cloud Platform that" + " allows users to specify a period of time during which maintenance updates or" + " patches will not be applied to SQL instances." + ) mapping: ClassVar[Dict[str, Bender]] = {"end_date": S("endDate"), "start_date": S("startDate"), "time": S("time")} end_date: Optional[str] = field(default=None) start_date: Optional[str] = field(default=None) @@ -369,7 +431,10 @@ class GcpSqlDenyMaintenancePeriod: class GcpSqlInsightsConfig: kind: ClassVar[str] = "gcp_sql_insights_config" kind_display: ClassVar[str] = "GCP SQL Insights Config" - kind_description: ClassVar[str] = "GCP SQL Insights Config is a feature in Google Cloud Platform that allows users to configure and customize their SQL database insights and monitoring." + kind_description: ClassVar[str] = ( + "GCP SQL Insights Config is a feature in Google Cloud Platform that allows" + " users to configure and customize their SQL database insights and monitoring." + ) mapping: ClassVar[Dict[str, Bender]] = { "query_insights_enabled": S("queryInsightsEnabled"), "query_plans_per_minute": S("queryPlansPerMinute"), @@ -388,7 +453,11 @@ class GcpSqlInsightsConfig: class GcpSqlAclEntry: kind: ClassVar[str] = "gcp_sql_acl_entry" kind_display: ClassVar[str] = "GCP SQL ACL Entry" - kind_description: ClassVar[str] = "GCP SQL ACL Entry is a resource in Google Cloud Platform that represents an access control list entry for a Cloud SQL instance. It defines policies for granting or denying network access to the SQL instance." + kind_description: ClassVar[str] = ( + "GCP SQL ACL Entry is a resource in Google Cloud Platform that represents an" + " access control list entry for a Cloud SQL instance. It defines policies for" + " granting or denying network access to the SQL instance." + ) mapping: ClassVar[Dict[str, Bender]] = { "expiration_time": S("expirationTime"), "name": S("name"), @@ -403,7 +472,11 @@ class GcpSqlAclEntry: class GcpSqlIpConfiguration: kind: ClassVar[str] = "gcp_sql_ip_configuration" kind_display: ClassVar[str] = "GCP SQL IP Configuration" - kind_description: ClassVar[str] = "IP Configuration refers to the settings for managing IP addresses associated with Google Cloud Platform(SQL) instances, allowing users to control network access to their databases." + kind_description: ClassVar[str] = ( + "IP Configuration refers to the settings for managing IP addresses associated" + " with Google Cloud Platform(SQL) instances, allowing users to control network" + " access to their databases." + ) mapping: ClassVar[Dict[str, Bender]] = { "allocated_ip_range": S("allocatedIpRange"), "authorized_networks": S("authorizedNetworks", default=[]) >> ForallBend(GcpSqlAclEntry.mapping), @@ -422,7 +495,11 @@ class GcpSqlIpConfiguration: class GcpSqlLocationPreference: kind: ClassVar[str] = "gcp_sql_location_preference" kind_display: ClassVar[str] = "GCP SQL Location Preference" - kind_description: ClassVar[str] = "GCP SQL Location Preference allows users to specify the preferred location for their Google Cloud SQL database instances, helping them ensure optimal performance and compliance with data sovereignty requirements." + kind_description: ClassVar[str] = ( + "GCP SQL Location Preference allows users to specify the preferred location" + " for their Google Cloud SQL database instances, helping them ensure optimal" + " performance and compliance with data sovereignty requirements." + ) mapping: ClassVar[Dict[str, Bender]] = { "follow_gae_application": S("followGaeApplication"), "secondary_zone": S("secondaryZone"), @@ -437,7 +514,10 @@ class GcpSqlLocationPreference: class GcpSqlMaintenanceWindow: kind: ClassVar[str] = "gcp_sql_maintenance_window" kind_display: ClassVar[str] = "GCP SQL Maintenance Window" - kind_description: ClassVar[str] = "A maintenance window is a predefined time period when Google Cloud SQL performs system updates and maintenance tasks on your databases." + kind_description: ClassVar[str] = ( + "A maintenance window is a predefined time period when Google Cloud SQL" + " performs system updates and maintenance tasks on your databases." + ) mapping: ClassVar[Dict[str, Bender]] = {"day": S("day"), "hour": S("hour"), "update_track": S("updateTrack")} day: Optional[int] = field(default=None) hour: Optional[int] = field(default=None) @@ -448,7 +528,11 @@ class GcpSqlMaintenanceWindow: class GcpSqlPasswordValidationPolicy: kind: ClassVar[str] = "gcp_sql_password_validation_policy" kind_display: ClassVar[str] = "GCP SQL Password Validation Policy" - kind_description: ClassVar[str] = "GCP SQL Password Validation Policy is a feature in Google Cloud Platform that enforces strong password policies for SQL databases, ensuring better security and compliance with password requirements." + kind_description: ClassVar[str] = ( + "GCP SQL Password Validation Policy is a feature in Google Cloud Platform" + " that enforces strong password policies for SQL databases, ensuring better" + " security and compliance with password requirements." + ) mapping: ClassVar[Dict[str, Bender]] = { "complexity": S("complexity"), "disallow_username_substring": S("disallowUsernameSubstring"), @@ -469,7 +553,12 @@ class GcpSqlPasswordValidationPolicy: class GcpSqlSqlServerAuditConfig: kind: ClassVar[str] = "gcp_sql_sql_server_audit_config" kind_display: ClassVar[str] = "GCP SQL Server Audit Configuration" - kind_description: ClassVar[str] = "GCP SQL Server Audit Configuration provides a way to enable and configure SQL Server auditing for Google Cloud Platform (GCP) SQL Server instances. Auditing allows users to monitor and record database activities and events for security and compliance purposes." + kind_description: ClassVar[str] = ( + "GCP SQL Server Audit Configuration provides a way to enable and configure" + " SQL Server auditing for Google Cloud Platform (GCP) SQL Server instances." + " Auditing allows users to monitor and record database activities and events" + " for security and compliance purposes." + ) mapping: ClassVar[Dict[str, Bender]] = { "bucket": S("bucket"), "retention_interval": S("retentionInterval"), @@ -484,7 +573,12 @@ class GcpSqlSqlServerAuditConfig: class GcpSqlSettings: kind: ClassVar[str] = "gcp_sql_settings" kind_display: ClassVar[str] = "GCP SQL Settings" - kind_description: ClassVar[str] = "GCP SQL Settings refers to the configuration and customization options for managing SQL databases in Google Cloud Platform (GCP). It includes various settings related to database performance, security, availability, and monitoring." + kind_description: ClassVar[str] = ( + "GCP SQL Settings refers to the configuration and customization options for" + " managing SQL databases in Google Cloud Platform (GCP). It includes various" + " settings related to database performance, security, availability, and" + " monitoring." + ) mapping: ClassVar[Dict[str, Bender]] = { "activation_policy": S("activationPolicy"), "active_directory_config": S("activeDirectoryConfig", "domain"), @@ -551,7 +645,10 @@ class GcpSqlSettings: class GcpSqlDatabaseInstance(GcpResource): kind: ClassVar[str] = "gcp_sql_database_instance" kind_display: ClassVar[str] = "GCP SQL Database Instance" - kind_description: ClassVar[str] = "GCP SQL Database Instance is a resource provided by Google Cloud Platform that allows users to create and manage relational databases in the cloud." + kind_description: ClassVar[str] = ( + "GCP SQL Database Instance is a resource provided by Google Cloud Platform" + " that allows users to create and manage relational databases in the cloud." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_ssl_certificate"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", @@ -668,7 +765,10 @@ def called_collect_apis(cls) -> List[GcpApiSpec]: class GcpSqlCsvexportoptions: kind: ClassVar[str] = "gcp_sql_csvexportoptions" kind_display: ClassVar[str] = "GCP SQL CSV Export Options" - kind_description: ClassVar[str] = "CSV Export Options for Google Cloud Platform's SQL allows users to export SQL query results into CSV format for further analysis or data manipulation." + kind_description: ClassVar[str] = ( + "CSV Export Options for Google Cloud Platform's SQL allows users to export" + " SQL query results into CSV format for further analysis or data manipulation." + ) mapping: ClassVar[Dict[str, Bender]] = { "escape_character": S("escapeCharacter"), "fields_terminated_by": S("fieldsTerminatedBy"), @@ -687,7 +787,10 @@ class GcpSqlCsvexportoptions: class GcpSqlMysqlexportoptions: kind: ClassVar[str] = "gcp_sql_mysqlexportoptions" kind_display: ClassVar[str] = "GCP SQL MySQL Export Options" - kind_description: ClassVar[str] = "GCP SQL MySQL Export Options are features provided by Google Cloud Platform that allow users to export data from MySQL databases hosted on GCP SQL." + kind_description: ClassVar[str] = ( + "GCP SQL MySQL Export Options are features provided by Google Cloud Platform" + " that allow users to export data from MySQL databases hosted on GCP SQL." + ) mapping: ClassVar[Dict[str, Bender]] = {"master_data": S("masterData")} master_data: Optional[int] = field(default=None) @@ -696,7 +799,11 @@ class GcpSqlMysqlexportoptions: class GcpSqlSqlexportoptions: kind: ClassVar[str] = "gcp_sql_sqlexportoptions" kind_display: ClassVar[str] = "GCP SQL SQLExportOptions" - kind_description: ClassVar[str] = "SQLExportOptions is a feature in Google Cloud Platform's SQL service that allows users to export their SQL databases to different formats, such as CSV or JSON." + kind_description: ClassVar[str] = ( + "SQLExportOptions is a feature in Google Cloud Platform's SQL service that" + " allows users to export their SQL databases to different formats, such as CSV" + " or JSON." + ) mapping: ClassVar[Dict[str, Bender]] = { "mysql_export_options": S("mysqlExportOptions", default={}) >> Bend(GcpSqlMysqlexportoptions.mapping), "schema_only": S("schemaOnly"), @@ -711,7 +818,11 @@ class GcpSqlSqlexportoptions: class GcpSqlExportContext: kind: ClassVar[str] = "gcp_sql_export_context" kind_display: ClassVar[str] = "GCP SQL Export Context" - kind_description: ClassVar[str] = "GCP SQL Export Context is a feature in Google Cloud Platform that allows users to export data from SQL databases to other storage or analysis services." + kind_description: ClassVar[str] = ( + "GCP SQL Export Context is a feature in Google Cloud Platform that allows" + " users to export data from SQL databases to other storage or analysis" + " services." + ) mapping: ClassVar[Dict[str, Bender]] = { "csv_export_options": S("csvExportOptions", default={}) >> Bend(GcpSqlCsvexportoptions.mapping), "databases": S("databases", default=[]), @@ -732,7 +843,11 @@ class GcpSqlExportContext: class GcpSqlEncryptionoptions: kind: ClassVar[str] = "gcp_sql_encryptionoptions" kind_display: ClassVar[str] = "GCP SQL Encryption Options" - kind_description: ClassVar[str] = "GCP SQL Encryption Options refers to the various methods available for encrypting data in Google Cloud Platform's SQL databases, such as Cloud SQL and SQL Server on GCE." + kind_description: ClassVar[str] = ( + "GCP SQL Encryption Options refers to the various methods available for" + " encrypting data in Google Cloud Platform's SQL databases, such as Cloud SQL" + " and SQL Server on GCE." + ) mapping: ClassVar[Dict[str, Bender]] = { "cert_path": S("certPath"), "pvk_password": S("pvkPassword"), @@ -747,7 +862,10 @@ class GcpSqlEncryptionoptions: class GcpSqlBakimportoptions: kind: ClassVar[str] = "gcp_sql_bakimportoptions" kind_display: ClassVar[str] = "GCP SQL Backup Import Options" - kind_description: ClassVar[str] = "GCP SQL Backup Import Options provide configuration settings and options for importing backed up data into Google Cloud Platform SQL databases." + kind_description: ClassVar[str] = ( + "GCP SQL Backup Import Options provide configuration settings and options for" + " importing backed up data into Google Cloud Platform SQL databases." + ) mapping: ClassVar[Dict[str, Bender]] = { "encryption_options": S("encryptionOptions", default={}) >> Bend(GcpSqlEncryptionoptions.mapping) } @@ -758,7 +876,10 @@ class GcpSqlBakimportoptions: class GcpSqlCsvimportoptions: kind: ClassVar[str] = "gcp_sql_csvimportoptions" kind_display: ClassVar[str] = "GCP SQL CSV Import Options" - kind_description: ClassVar[str] = "CSV Import Options in GCP SQL enables users to efficiently import CSV data into Google Cloud SQL databases." + kind_description: ClassVar[str] = ( + "CSV Import Options in GCP SQL enables users to efficiently import CSV data" + " into Google Cloud SQL databases." + ) mapping: ClassVar[Dict[str, Bender]] = { "columns": S("columns", default=[]), "escape_character": S("escapeCharacter"), @@ -779,7 +900,10 @@ class GcpSqlCsvimportoptions: class GcpSqlImportContext: kind: ClassVar[str] = "gcp_sql_import_context" kind_display: ClassVar[str] = "GCP SQL Import Context" - kind_description: ClassVar[str] = "SQL Import Context is a feature provided by Google Cloud Platform to provide contextual information while importing SQL databases." + kind_description: ClassVar[str] = ( + "SQL Import Context is a feature provided by Google Cloud Platform to provide" + " contextual information while importing SQL databases." + ) mapping: ClassVar[Dict[str, Bender]] = { "bak_import_options": S("bakImportOptions", default={}) >> Bend(GcpSqlBakimportoptions.mapping), "csv_import_options": S("csvImportOptions", default={}) >> Bend(GcpSqlCsvimportoptions.mapping), @@ -800,7 +924,10 @@ class GcpSqlImportContext: class GcpSqlOperation(GcpResource): kind: ClassVar[str] = "gcp_sql_operation" kind_display: ClassVar[str] = "GCP SQL Operation" - kind_description: ClassVar[str] = "SQL Operation is a service in Google Cloud Platform (GCP) that provides fully managed and highly available relational databases." + kind_description: ClassVar[str] = ( + "SQL Operation is a service in Google Cloud Platform (GCP) that provides" + " fully managed and highly available relational databases." + ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_sql_database_instance"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", @@ -860,7 +987,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpSqlPasswordStatus: kind: ClassVar[str] = "gcp_sql_password_status" kind_display: ClassVar[str] = "GCP SQL Password Status" - kind_description: ClassVar[str] = "GCP SQL Password Status refers to the current state of the password used for SQL database access in Google Cloud Platform. It indicates whether the password is active or inactive." + kind_description: ClassVar[str] = ( + "GCP SQL Password Status refers to the current state of the password used for" + " SQL database access in Google Cloud Platform. It indicates whether the" + " password is active or inactive." + ) mapping: ClassVar[Dict[str, Bender]] = { "locked": S("locked"), "password_expiration_time": S("passwordExpirationTime"), @@ -873,7 +1004,11 @@ class GcpSqlPasswordStatus: class GcpSqlUserPasswordValidationPolicy: kind: ClassVar[str] = "gcp_sql_user_password_validation_policy" kind_display: ClassVar[str] = "GCP SQL User Password Validation Policy" - kind_description: ClassVar[str] = "GCP SQL User Password Validation Policy is a feature in Google Cloud Platform's SQL service that enforces specific rules and requirements for creating and managing user passwords in SQL databases." + kind_description: ClassVar[str] = ( + "GCP SQL User Password Validation Policy is a feature in Google Cloud" + " Platform's SQL service that enforces specific rules and requirements for" + " creating and managing user passwords in SQL databases." + ) mapping: ClassVar[Dict[str, Bender]] = { "allowed_failed_attempts": S("allowedFailedAttempts"), "enable_failed_attempts_check": S("enableFailedAttemptsCheck"), @@ -892,7 +1027,10 @@ class GcpSqlUserPasswordValidationPolicy: class GcpSqlSqlServerUserDetails: kind: ClassVar[str] = "gcp_sql_sql_server_user_details" kind_display: ClassVar[str] = "GCP SQL SQL Server User Details" - kind_description: ClassVar[str] = "GCP SQL SQL Server User Details provides information about the users and their access privileges in a SQL Server instance on Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP SQL SQL Server User Details provides information about the users and" + " their access privileges in a SQL Server instance on Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = {"disabled": S("disabled"), "server_roles": S("serverRoles", default=[])} disabled: Optional[bool] = field(default=None) server_roles: Optional[List[str]] = field(default=None) @@ -903,7 +1041,10 @@ class GcpSqlUser(GcpResource): # collected via GcpSqlDatabaseInstance kind: ClassVar[str] = "gcp_sql_user" kind_display: ClassVar[str] = "GCP SQL User" - kind_description: ClassVar[str] = "A GCP SQL User refers to a user account that can access and manage databases in Google Cloud SQL, a fully-managed relational database service." + kind_description: ClassVar[str] = ( + "A GCP SQL User refers to a user account that can access and manage databases" + " in Google Cloud SQL, a fully-managed relational database service." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", version="v1", diff --git a/plugins/gcp/resoto_plugin_gcp/resources/storage.py b/plugins/gcp/resoto_plugin_gcp/resources/storage.py index 275904c0b7..edabf8e397 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/storage.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/storage.py @@ -13,7 +13,11 @@ class GcpProjectteam: kind: ClassVar[str] = "gcp_projectteam" kind_display: ClassVar[str] = "GCP Project Team" - kind_description: ClassVar[str] = "GCP Project Teams are groups of users who work together on a Google Cloud Platform project, allowing them to collaborate and manage resources within the project." + kind_description: ClassVar[str] = ( + "GCP Project Teams are groups of users who work together on a Google Cloud" + " Platform project, allowing them to collaborate and manage resources within" + " the project." + ) mapping: ClassVar[Dict[str, Bender]] = {"project_number": S("projectNumber"), "team": S("team")} project_number: Optional[str] = field(default=None) team: Optional[str] = field(default=None) @@ -23,7 +27,12 @@ class GcpProjectteam: class GcpBucketAccessControl: kind: ClassVar[str] = "gcp_bucket_access_control" kind_display: ClassVar[str] = "GCP Bucket Access Control" - kind_description: ClassVar[str] = "Bucket Access Control is a feature in the Google Cloud Platform that allows you to manage and control access to your storage buckets. It provides fine-grained access control, allowing you to specify who can read, write, or delete objects within a bucket." + kind_description: ClassVar[str] = ( + "Bucket Access Control is a feature in the Google Cloud Platform that allows" + " you to manage and control access to your storage buckets. It provides fine-" + " grained access control, allowing you to specify who can read, write, or" + " delete objects within a bucket." + ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("name").or_else(S("id")).or_else(S("selfLink")), "tags": S("labels", default={}), @@ -56,7 +65,11 @@ class GcpBucketAccessControl: class GcpAutoclass: kind: ClassVar[str] = "gcp_autoclass" kind_display: ClassVar[str] = "GCP AutoML AutoClass" - kind_description: ClassVar[str] = "GCP AutoML AutoClass is a machine learning service provided by Google Cloud Platform that automates the classification of data into different categories." + kind_description: ClassVar[str] = ( + "GCP AutoML AutoClass is a machine learning service provided by Google Cloud" + " Platform that automates the classification of data into different" + " categories." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "toggle_time": S("toggleTime")} enabled: Optional[bool] = field(default=None) toggle_time: Optional[datetime] = field(default=None) @@ -66,7 +79,11 @@ class GcpAutoclass: class GcpCors: kind: ClassVar[str] = "gcp_cors" kind_display: ClassVar[str] = "GCP CORS" - kind_description: ClassVar[str] = "Cross-Origin Resource Sharing (CORS) in Google Cloud Platform allows web applications running on different domains to make requests to resources in a more secure manner." + kind_description: ClassVar[str] = ( + "Cross-Origin Resource Sharing (CORS) in Google Cloud Platform allows web" + " applications running on different domains to make requests to resources in a" + " more secure manner." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_age_seconds": S("maxAgeSeconds"), "method": S("method", default=[]), @@ -83,7 +100,11 @@ class GcpCors: class GcpObjectAccessControl: kind: ClassVar[str] = "gcp_object_access_control" kind_display: ClassVar[str] = "GCP Object Access Control" - kind_description: ClassVar[str] = "GCP Object Access Control is a feature in Google Cloud Platform that allows users to control access to their storage objects (such as files, images, videos) by specifying permissions and policies." + kind_description: ClassVar[str] = ( + "GCP Object Access Control is a feature in Google Cloud Platform that allows" + " users to control access to their storage objects (such as files, images," + " videos) by specifying permissions and policies." + ) mapping: ClassVar[Dict[str, Bender]] = { "bucket": S("bucket"), "domain": S("domain"), @@ -116,7 +137,11 @@ class GcpObjectAccessControl: class GcpBucketpolicyonly: kind: ClassVar[str] = "gcp_bucketpolicyonly" kind_display: ClassVar[str] = "GCP Bucket Policy Only" - kind_description: ClassVar[str] = "GCP Bucket Policy Only is a feature in Google Cloud Platform that enforces the use of IAM policies for bucket access control and disables any ACL-based access control." + kind_description: ClassVar[str] = ( + "GCP Bucket Policy Only is a feature in Google Cloud Platform that enforces" + " the use of IAM policies for bucket access control and disables any ACL-based" + " access control." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "locked_time": S("lockedTime")} enabled: Optional[bool] = field(default=None) locked_time: Optional[datetime] = field(default=None) @@ -126,7 +151,12 @@ class GcpBucketpolicyonly: class GcpUniformbucketlevelaccess: kind: ClassVar[str] = "gcp_uniformbucketlevelaccess" kind_display: ClassVar[str] = "GCP Uniform Bucket Level Access" - kind_description: ClassVar[str] = "Uniform bucket-level access is a feature in Google Cloud Platform that allows for fine-grained access control to Google Cloud Storage buckets. It provides more control and security for managing access to your storage buckets." + kind_description: ClassVar[str] = ( + "Uniform bucket-level access is a feature in Google Cloud Platform that" + " allows for fine-grained access control to Google Cloud Storage buckets. It" + " provides more control and security for managing access to your storage" + " buckets." + ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "locked_time": S("lockedTime")} enabled: Optional[bool] = field(default=None) locked_time: Optional[datetime] = field(default=None) @@ -136,7 +166,11 @@ class GcpUniformbucketlevelaccess: class GcpIamconfiguration: kind: ClassVar[str] = "gcp_iamconfiguration" kind_display: ClassVar[str] = "GCP IAM Configuration" - kind_description: ClassVar[str] = "IAM (Identity and Access Management) Configuration in Google Cloud Platform, which allows users to control access to their cloud resources and manage permissions for users and service accounts." + kind_description: ClassVar[str] = ( + "IAM (Identity and Access Management) Configuration in Google Cloud Platform," + " which allows users to control access to their cloud resources and manage" + " permissions for users and service accounts." + ) mapping: ClassVar[Dict[str, Bender]] = { "bucket_policy_only": S("bucketPolicyOnly", default={}) >> Bend(GcpBucketpolicyonly.mapping), "public_access_prevention": S("publicAccessPrevention"), @@ -152,7 +186,11 @@ class GcpIamconfiguration: class GcpAction: kind: ClassVar[str] = "gcp_action" kind_display: ClassVar[str] = "GCP Action" - kind_description: ClassVar[str] = "GCP Action refers to a specific action or operation performed on resources in Google Cloud Platform (GCP), such as creating, deleting, or modifying cloud resources." + kind_description: ClassVar[str] = ( + "GCP Action refers to a specific action or operation performed on resources" + " in Google Cloud Platform (GCP), such as creating, deleting, or modifying" + " cloud resources." + ) mapping: ClassVar[Dict[str, Bender]] = {"storage_class": S("storageClass"), "type": S("type")} storage_class: Optional[str] = field(default=None) type: Optional[str] = field(default=None) @@ -162,7 +200,10 @@ class GcpAction: class GcpCondition: kind: ClassVar[str] = "gcp_condition" kind_display: ClassVar[str] = "GCP Condition" - kind_description: ClassVar[str] = "Conditions in Google Cloud Platform (GCP) are used to define rules and policies for resource usage and access control." + kind_description: ClassVar[str] = ( + "Conditions in Google Cloud Platform (GCP) are used to define rules and" + " policies for resource usage and access control." + ) mapping: ClassVar[Dict[str, Bender]] = { "age": S("age"), "created_before": S("createdBefore"), @@ -195,7 +236,10 @@ class GcpCondition: class GcpRule: kind: ClassVar[str] = "gcp_rule" kind_display: ClassVar[str] = "GCP Rule" - kind_description: ClassVar[str] = "GCP Rules are a set of policies or conditions defined to govern the behavior of resources in the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Rules are a set of policies or conditions defined to govern the behavior" + " of resources in the Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "action": S("action", default={}) >> Bend(GcpAction.mapping), "condition": S("condition", default={}) >> Bend(GcpCondition.mapping), @@ -208,7 +252,11 @@ class GcpRule: class GcpLogging: kind: ClassVar[str] = "gcp_logging" kind_display: ClassVar[str] = "GCP Logging" - kind_description: ClassVar[str] = "GCP Logging is a service provided by Google Cloud Platform that allows users to collect, store, and analyze logs from various resources in their cloud environment." + kind_description: ClassVar[str] = ( + "GCP Logging is a service provided by Google Cloud Platform that allows users" + " to collect, store, and analyze logs from various resources in their cloud" + " environment." + ) mapping: ClassVar[Dict[str, Bender]] = {"log_bucket": S("logBucket"), "log_object_prefix": S("logObjectPrefix")} log_bucket: Optional[str] = field(default=None) log_object_prefix: Optional[str] = field(default=None) @@ -218,7 +266,11 @@ class GcpLogging: class GcpOwner: kind: ClassVar[str] = "gcp_owner" kind_display: ClassVar[str] = "GCP Owner" - kind_description: ClassVar[str] = "GCP Owner refers to the owner of a Google Cloud Platform (GCP) resource or project, who has full control and access to manage and configure the resource or project." + kind_description: ClassVar[str] = ( + "GCP Owner refers to the owner of a Google Cloud Platform (GCP) resource or" + " project, who has full control and access to manage and configure the" + " resource or project." + ) mapping: ClassVar[Dict[str, Bender]] = {"entity": S("entity"), "entity_id": S("entityId")} entity: Optional[str] = field(default=None) entity_id: Optional[str] = field(default=None) @@ -228,7 +280,11 @@ class GcpOwner: class GcpRetentionpolicy: kind: ClassVar[str] = "gcp_retentionpolicy" kind_display: ClassVar[str] = "GCP Retention Policy" - kind_description: ClassVar[str] = "GCP Retention Policy is a feature in Google Cloud Platform that allows users to set and manage rules for data retention, specifying how long data should be kept before it is automatically deleted." + kind_description: ClassVar[str] = ( + "GCP Retention Policy is a feature in Google Cloud Platform that allows users" + " to set and manage rules for data retention, specifying how long data should" + " be kept before it is automatically deleted." + ) mapping: ClassVar[Dict[str, Bender]] = { "effective_time": S("effectiveTime"), "is_locked": S("isLocked"), @@ -243,7 +299,11 @@ class GcpRetentionpolicy: class GcpWebsite: kind: ClassVar[str] = "gcp_website" kind_display: ClassVar[str] = "GCP Website" - kind_description: ClassVar[str] = "GCP Website refers to the official website of Google Cloud Platform where users can access information, documentation, and resources related to Google's cloud services and products." + kind_description: ClassVar[str] = ( + "GCP Website refers to the official website of Google Cloud Platform where" + " users can access information, documentation, and resources related to" + " Google's cloud services and products." + ) mapping: ClassVar[Dict[str, Bender]] = { "main_page_suffix": S("mainPageSuffix"), "not_found_page": S("notFoundPage"), @@ -258,7 +318,11 @@ class GcpObject(GcpResource): # they are not intended to be collected and stored in the graph kind: ClassVar[str] = "gcp_object" kind_display: ClassVar[str] = "GCP Object" - kind_description: ClassVar[str] = "GCP Object is a generic term referring to any type of object stored in Google Cloud Platform. It can include files, images, documents, or any other digital asset." + kind_description: ClassVar[str] = ( + "GCP Object is a generic term referring to any type of object stored in" + " Google Cloud Platform. It can include files, images, documents, or any other" + " digital asset." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="storage", version="v1", @@ -279,7 +343,10 @@ class GcpObject(GcpResource): class GcpBucket(GcpResource): kind: ClassVar[str] = "gcp_bucket" kind_display: ClassVar[str] = "GCP Bucket" - kind_description: ClassVar[str] = "A GCP Bucket is a cloud storage container provided by Google Cloud Platform, allowing users to store and access data in a scalable and durable manner." + kind_description: ClassVar[str] = ( + "A GCP Bucket is a cloud storage container provided by Google Cloud Platform," + " allowing users to store and access data in a scalable and durable manner." + ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="storage", version="v1", From 2f4795abdc3b0eacb31497a6fc74c25a5b11ae9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Thu, 2 Nov 2023 00:01:03 +0100 Subject: [PATCH 14/27] Update K8s linefeeds --- plugins/k8s/resoto_plugin_k8s/resources.py | 838 +++++++++++++++++---- 1 file changed, 679 insertions(+), 159 deletions(-) diff --git a/plugins/k8s/resoto_plugin_k8s/resources.py b/plugins/k8s/resoto_plugin_k8s/resources.py index 14335c3119..c76dc705ea 100644 --- a/plugins/k8s/resoto_plugin_k8s/resources.py +++ b/plugins/k8s/resoto_plugin_k8s/resources.py @@ -106,8 +106,12 @@ def connect_volumes(self, from_node: KubernetesResource, volumes: List[Json]) -> @define(eq=False, slots=False) class KubernetesNodeStatusAddresses: kind: ClassVar[str] = "kubernetes_node_status_addresses" - kind_display: ClassVar[str] = "Kubernetes Node Status Address" - kind_description: ClassVar[str] = "A Kubernetes Node Status Address." + kind_display: ClassVar[str] = "Kubernetes Node Status Addresses" + kind_description: ClassVar[str] = ( + "Kubernetes Node Status Addresses refer to the network addresses (IP or" + " hostname) assigned to a node in a Kubernetes cluster. These addresses can be" + " used to communicate and access the services running on the particular node." + ) mapping: ClassVar[Dict[str, Bender]] = { "address": S("address"), "type": S("type"), @@ -119,8 +123,11 @@ class KubernetesNodeStatusAddresses: @define(eq=False, slots=False) class KubernetesNodeCondition: kind: ClassVar[str] = "kubernetes_node_status_conditions" - kind_display: ClassVar[str] = "Kubernetes Node Status Condition" - kind_description: ClassVar[str] = "A Kubernetes Node Status Condition." + kind_display: ClassVar[str] = "Kubernetes Node Status Conditions" + kind_description: ClassVar[str] = ( + "Kubernetes Node Status Conditions are a set of conditions that provide" + " information about the health and status of a node in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_heartbeat_time": S("lastHeartbeatTime"), "last_transition_time": S("lastTransitionTime"), @@ -140,8 +147,11 @@ class KubernetesNodeCondition: @define(eq=False, slots=False) class KubernetesNodeStatusConfigSource: kind: ClassVar[str] = "kubernetes_node_status_config_active_configmap" - kind_display: ClassVar[str] = "Kubernetes Node Status Config Source" - kind_description: ClassVar[str] = "A Kubernetes Node Status Config Source." + kind_display: ClassVar[str] = "Kubernetes Node Status Config Active ConfigMap" + kind_description: ClassVar[str] = ( + "This resource represents the active configuration map for the node status in" + " a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "kubelet_config_key": S("kubeletConfigKey"), "name": S("name"), @@ -159,8 +169,10 @@ class KubernetesNodeStatusConfigSource: @define(eq=False, slots=False) class KubernetesNodeConfigSource: kind: ClassVar[str] = "kubernetes_node_status_config_active" - kind_display: ClassVar[str] = "Kubernetes Node Status Config Source" - kind_description: ClassVar[str] = "A Kubernetes Node Status Config Source." + kind_display: ClassVar[str] = "Kubernetes Node Status Config Active" + kind_description: ClassVar[str] = ( + "The active configuration status of a node in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "config_map": S("configMap") >> Bend(KubernetesNodeStatusConfigSource.mapping), } @@ -171,7 +183,10 @@ class KubernetesNodeConfigSource: class KubernetesNodeStatusConfig: kind: ClassVar[str] = "kubernetes_node_status_config" kind_display: ClassVar[str] = "Kubernetes Node Status Config" - kind_description: ClassVar[str] = "A Kubernetes Node Status Config." + kind_description: ClassVar[str] = ( + "Kubernetes Node Status Config is a configuration that provides information" + " about the current status of a node in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "active": S("active") >> Bend(KubernetesNodeConfigSource.mapping), "assigned": S("assigned") >> Bend(KubernetesNodeConfigSource.mapping), @@ -187,6 +202,11 @@ class KubernetesDaemonEndpoint: kind_display: ClassVar[str] = "Kubernetes Daemon Endpoint" kind_description: ClassVar[str] = "A Kubernetes Daemon Endpoint." kind: ClassVar[str] = "kubernetes_daemon_endpoint" + kind_display: ClassVar[str] = "Kubernetes Daemon Endpoint" + kind_description: ClassVar[str] = ( + "Kubernetes Daemon Endpoint is a network endpoint used for communication" + " between the Kubernetes master and worker nodes." + ) mapping: ClassVar[Dict[str, Bender]] = { "port": S("Port"), } @@ -197,7 +217,11 @@ class KubernetesDaemonEndpoint: class KubernetesNodeDaemonEndpoint: kind: ClassVar[str] = "kubernetes_node_daemon_endpoint" kind_display: ClassVar[str] = "Kubernetes Node Daemon Endpoint" - kind_description: ClassVar[str] = "A Kubernetes Node Daemon Endpoint." + kind_description: ClassVar[str] = ( + "The Kubernetes Node Daemon Endpoint is an endpoint that allows communication" + " between the Kubernetes control plane and the daemons running on the node," + " such as the kubelet and kube-proxy." + ) mapping: ClassVar[Dict[str, Bender]] = { "kubelet_endpoint": S("kubeletEndpoint") >> Bend(KubernetesDaemonEndpoint.mapping), } @@ -208,7 +232,12 @@ class KubernetesNodeDaemonEndpoint: class KubernetesNodeStatusImages: kind: ClassVar[str] = "kubernetes_node_status_images" kind_display: ClassVar[str] = "Kubernetes Node Status Images" - kind_description: ClassVar[str] = "A Kubernetes Node Status Images." + kind_description: ClassVar[str] = ( + "Kubernetes Node Status Images refer to the images that display the current" + " status of worker nodes in a Kubernetes cluster. These images provide visual" + " indications of whether a node is healthy, ready for workloads, or" + " experiencing issues." + ) mapping: ClassVar[Dict[str, Bender]] = { "names": S("names", default=[]), "size_bytes": S("sizeBytes", default=0), @@ -221,7 +250,11 @@ class KubernetesNodeStatusImages: class KubernetesNodeSystemInfo: kind: ClassVar[str] = "kubernetes_node_system_info" kind_display: ClassVar[str] = "Kubernetes Node System Info" - kind_description: ClassVar[str] = "A Kubernetes Node System Info." + kind_description: ClassVar[str] = ( + "Kubernetes Node System Info provides information about the system running on" + " a Kubernetes node, such as the operating system version, CPU and memory" + " usage, and network configurations." + ) mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), "boot_id": S("bootID"), @@ -250,7 +283,11 @@ class KubernetesNodeSystemInfo: class KubernetesAttachedVolume: kind: ClassVar[str] = "kubernetes_attached_volume" kind_display: ClassVar[str] = "Kubernetes Attached Volume" - kind_description: ClassVar[str] = "A Kubernetes Attached Volume." + kind_description: ClassVar[str] = ( + "Kubernetes Attached Volume refers to a storage volume that is attached to a" + " container in a Kubernetes cluster, allowing it to persist data across" + " container restarts and failures." + ) mapping: ClassVar[Dict[str, Bender]] = { "device_path": S("devicePath"), "name": S("name"), @@ -263,7 +300,11 @@ class KubernetesAttachedVolume: class KubernetesNodeStatus: kind: ClassVar[str] = "kubernetes_node_status" kind_display: ClassVar[str] = "Kubernetes Node Status" - kind_description: ClassVar[str] = "A Kubernetes Node Status." + kind_description: ClassVar[str] = ( + "Kubernetes Node Status refers to the current status of a node in a" + " Kubernetes cluster, which includes information such as its availability," + " capacity, and conditions." + ) mapping: ClassVar[Dict[str, Bender]] = { "addresses": S("addresses", default=[]) >> ForallBend(KubernetesNodeStatusAddresses.mapping), "conditions": S("conditions", default=[]) >> SortTransitionTime >> ForallBend(KubernetesNodeCondition.mapping), @@ -292,7 +333,11 @@ class KubernetesNodeStatus: class KubernetesTaint: kind: ClassVar[str] = "kubernetes_taint" kind_display: ClassVar[str] = "Kubernetes Taint" - kind_description: ClassVar[str] = "A Kubernetes Taint." + kind_description: ClassVar[str] = ( + "Kubernetes Taint is a feature that allows nodes (servers) to repel or" + " tolerate certain pods (applications) based on specific conditions, such as" + " hardware requirements or user-defined preferences." + ) mapping: ClassVar[Dict[str, Bender]] = { "effect": S("effect"), "key": S("key"), @@ -309,7 +354,11 @@ class KubernetesTaint: class KubernetesNodeSpec: kind: ClassVar[str] = "kubernetes_node_spec" kind_display: ClassVar[str] = "Kubernetes Node Spec" - kind_description: ClassVar[str] = "A Kubernetes Node Spec." + kind_description: ClassVar[str] = ( + "Kubernetes Node Spec is a specification that defines the desired state of a" + " Kubernetes node, including its hardware resources, such as CPU and memory," + " and other configurations like labels and taints." + ) mapping: ClassVar[Dict[str, Bender]] = { "external_id": S("externalID"), "pod_cidr": S("podCIDR"), @@ -339,7 +388,11 @@ class KubernetesNodeSpec: class KubernetesNode(KubernetesResource, BaseInstance): kind: ClassVar[str] = "kubernetes_node" kind_display: ClassVar[str] = "Kubernetes Node" - kind_description: ClassVar[str] = "A Kubernetes Node." + kind_description: ClassVar[str] = ( + "A Kubernetes Node is a worker machine in a Kubernetes cluster that runs" + " containers. It is responsible for running and managing the containers that" + " make up the applications within the cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "node_status": S("status") >> Bend(KubernetesNodeStatus.mapping), "node_spec": S("spec") >> Bend(KubernetesNodeSpec.mapping), @@ -367,8 +420,11 @@ class KubernetesNode(KubernetesResource, BaseInstance): @define(eq=False, slots=False) class KubernetesPodStatusConditions: kind: ClassVar[str] = "kubernetes_pod_status_conditions" - kind_display: ClassVar[str] = "Kubernetes Pod Status Condition" - kind_description: ClassVar[str] = "A Kubernetes Pod status condition." + kind_display: ClassVar[str] = "Kubernetes Pod Status Conditions" + kind_description: ClassVar[str] = ( + "Kubernetes Pod Status Conditions represent the current status and conditions" + " of a pod, providing information about its health and state." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_probe_time": S("lastProbeTime"), "last_transition_time": S("lastTransitionTime"), @@ -388,8 +444,11 @@ class KubernetesPodStatusConditions: @define(eq=False, slots=False) class KubernetesContainerStateRunning: kind: ClassVar[str] = "kubernetes_container_state_running" - kind_display: ClassVar[str] = "Kubernetes Container State: Running" - kind_description: ClassVar[str] = "A running Kubernetes container." + kind_display: ClassVar[str] = "Kubernetes Container State Running" + kind_description: ClassVar[str] = ( + "Running state indicates that the container is currently up and running" + " within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "started_at": S("startedAt"), } @@ -399,8 +458,12 @@ class KubernetesContainerStateRunning: @define(eq=False, slots=False) class KubernetesContainerStateTerminated: kind: ClassVar[str] = "kubernetes_container_state_terminated" - kind_display: ClassVar[str] = "Kubernetes Container State: Terminated" - kind_description: ClassVar[str] = "A terminated Kubernetes container." + kind_display: ClassVar[str] = "Kubernetes Container State Terminated" + kind_description: ClassVar[str] = ( + "This resource represents the terminated state of a container within a" + " Kubernetes cluster. Terminated state indicates that the container has been" + " stopped or exited." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_id": S("containerID"), "exit_code": S("exitCode"), @@ -422,8 +485,11 @@ class KubernetesContainerStateTerminated: @define(eq=False, slots=False) class KubernetesContainerStateWaiting: kind: ClassVar[str] = "kubernetes_container_state_waiting" - kind_display: ClassVar[str] = "Kubernetes Container State: Waiting" - kind_description: ClassVar[str] = "A waiting Kubernetes container." + kind_display: ClassVar[str] = "Kubernetes Container State Waiting" + kind_description: ClassVar[str] = ( + "The waiting state of a container in Kubernetes indicates that it is waiting" + " for a specific condition to be met before it can start running." + ) mapping: ClassVar[Dict[str, Bender]] = { "message": S("message"), "reason": S("reason"), @@ -436,7 +502,10 @@ class KubernetesContainerStateWaiting: class KubernetesContainerState: kind: ClassVar[str] = "kubernetes_container_state" kind_display: ClassVar[str] = "Kubernetes Container State" - kind_description: ClassVar[str] = "A Kubernetes container state." + kind_description: ClassVar[str] = ( + "Kubernetes Container State represents the current state of a container" + " running in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "running": S("running") >> Bend(KubernetesContainerStateRunning.mapping), "terminated": S("terminated") >> Bend(KubernetesContainerStateTerminated.mapping), @@ -451,7 +520,10 @@ class KubernetesContainerState: class KubernetesContainerStatus: kind: ClassVar[str] = "kubernetes_container_status" kind_display: ClassVar[str] = "Kubernetes Container Status" - kind_description: ClassVar[str] = "A Kubernetes container status." + kind_description: ClassVar[str] = ( + "This is a status report for a container running in a Kubernetes cluster," + " indicating the current state and health of the container." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_id": S("containerID"), "image": S("image"), @@ -478,7 +550,11 @@ class KubernetesContainerStatus: class KubernetesPodIPs: kind: ClassVar[str] = "kubernetes_pod_ips" kind_display: ClassVar[str] = "Kubernetes Pod IPs" - kind_description: ClassVar[str] = "Kubernetes Pod IPs." + kind_description: ClassVar[str] = ( + "Kubernetes Pod IPs are the IP addresses assigned to individual pods in a" + " Kubernetes cluster, allowing them to communicate with each other and" + " external services." + ) mapping: ClassVar[Dict[str, Bender]] = {"ip": S("ip")} ip: Optional[str] = field(default=None) @@ -487,7 +563,10 @@ class KubernetesPodIPs: class KubernetesPodStatus: kind: ClassVar[str] = "kubernetes_pod_status" kind_display: ClassVar[str] = "Kubernetes Pod Status" - kind_description: ClassVar[str] = "A Kubernetes Pod status." + kind_description: ClassVar[str] = ( + "Kubernetes Pod Status refers to the current state of a pod in a Kubernetes" + " cluster, indicating whether it is running, pending, or terminated." + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -526,7 +605,11 @@ class KubernetesPodStatus: class KubernetesContainerPort: kind: ClassVar[str] = "kubernetes_container_port" kind_display: ClassVar[str] = "Kubernetes Container Port" - kind_description: ClassVar[str] = "A Kubernetes Container Port." + kind_description: ClassVar[str] = ( + "A Kubernetes Container Port is a specific port exposed by a container within" + " a Kubernetes cluster, allowing network communication to and from the" + " container." + ) mapping: ClassVar[Dict[str, Bender]] = { "container_port": S("containerPort"), "host_ip": S("hostIP"), @@ -545,7 +628,10 @@ class KubernetesContainerPort: class KubernetesResourceRequirements: kind: ClassVar[str] = "kubernetes_resource_requirements" kind_display: ClassVar[str] = "Kubernetes Resource Requirements" - kind_description: ClassVar[str] = "Kubernetes Resource Requirements." + kind_description: ClassVar[str] = ( + "Kubernetes Resource Requirements define the amount of CPU and memory" + " resources needed for a container to run on a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "limits": S("limits"), "requests": S("requests"), @@ -558,7 +644,11 @@ class KubernetesResourceRequirements: class KubernetesSecurityContext: kind: ClassVar[str] = "kubernetes_security_context" kind_display: ClassVar[str] = "Kubernetes Security Context" - kind_description: ClassVar[str] = "Kubernetes Security Context." + kind_description: ClassVar[str] = ( + "A security context in Kubernetes defines privilege and access settings for a" + " pod or specific containers within a pod. It includes settings such as the" + " user and group IDs, file permissions, and capabilities." + ) mapping: ClassVar[Dict[str, Bender]] = { "allow_privilege_escalation": S("allowPrivilegeEscalation"), "privileged": S("privileged"), @@ -587,7 +677,11 @@ class KubernetesSecurityContext: class KubernetesVolumeDevice: kind: ClassVar[str] = "kubernetes_volume_device" kind_display: ClassVar[str] = "Kubernetes Volume Device" - kind_description: ClassVar[str] = "A Kubernetes Volume Device." + kind_description: ClassVar[str] = ( + "Kubernetes Volume Device refers to a storage device that can be attached to" + " a container in a Kubernetes cluster, providing persistent storage for the" + " containerized applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "device_path": S("devicePath"), "name": S("name"), @@ -600,7 +694,11 @@ class KubernetesVolumeDevice: class KubernetesVolumeMount: kind: ClassVar[str] = "kubernetes_volume_mount" kind_display: ClassVar[str] = "Kubernetes Volume Mount" - kind_description: ClassVar[str] = "A Kubernetes Volume Mount." + kind_description: ClassVar[str] = ( + "A volume mount is a file or a directory from the host node that is made" + " available to a container in a Kubernetes cluster, allowing the container to" + " access and share data with the host or other containers." + ) mapping: ClassVar[Dict[str, Bender]] = { "mount_path": S("mountPath"), "mount_propagation": S("mountPropagation"), @@ -621,7 +719,11 @@ class KubernetesVolumeMount: class KubernetesContainer: kind: ClassVar[str] = "kubernetes_container" kind_display: ClassVar[str] = "Kubernetes Container" - kind_description: ClassVar[str] = "A Kubernetes Container." + kind_description: ClassVar[str] = ( + "Kubernetes Containers are lightweight, portable, and scalable units that" + " encapsulate an application and its dependencies, allowing for easy" + " deployment and management on Kubernetes clusters." + ) mapping: ClassVar[Dict[str, Bender]] = { "args": S("args", default=[]), "command": S("command", default=[]), @@ -662,7 +764,11 @@ class KubernetesContainer: class KubernetesPodSecurityContext: kind: ClassVar[str] = "kubernetes_pod_security_context" kind_display: ClassVar[str] = "Kubernetes Pod Security Context" - kind_description: ClassVar[str] = "A Kubernetes Pod Security Context." + kind_description: ClassVar[str] = ( + "Pod Security Context in Kubernetes is a configuration setting that allows" + " users to define and enforce security policies for individual pods in a" + " cluster, ensuring proper isolation and access controls." + ) mapping: ClassVar[Dict[str, Bender]] = { "fs_group": S("fsGroup"), "fs_group_change_policy": S("fsGroupChangePolicy"), @@ -689,7 +795,10 @@ class KubernetesPodSecurityContext: class KubernetesToleration: kind: ClassVar[str] = "kubernetes_toleration" kind_display: ClassVar[str] = "Kubernetes Toleration" - kind_description: ClassVar[str] = "A Kubernetes Toleration." + kind_description: ClassVar[str] = ( + "Kubernetes toleration is a feature that allows a pod to accept scheduling on" + " nodes with specific taints based on specified conditions." + ) mapping: ClassVar[Dict[str, Bender]] = { "effect": S("effect"), "key": S("key"), @@ -708,7 +817,10 @@ class KubernetesToleration: class KubernetesVolume: kind: ClassVar[str] = "kubernetes_volume" kind_display: ClassVar[str] = "Kubernetes Volume" - kind_description: ClassVar[str] = "A Kubernetes Volume." + kind_description: ClassVar[str] = ( + "A storage unit used in Kubernetes to provide persistent storage for" + " containers running in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "aws_elastic_block_store": S("awsElasticBlockStore"), "azure_disk": S("azureDisk"), @@ -777,7 +889,10 @@ class KubernetesVolume: class KubernetesPodSpec: kind: ClassVar[str] = "kubernetes_pod_spec" kind_display: ClassVar[str] = "Kubernetes Pod Spec" - kind_description: ClassVar[str] = "A Kubernetes Pod Spec." + kind_description: ClassVar[str] = ( + "Kubernetes Pod Spec is a configuration file that describes the desired state" + " of a pod in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "active_deadline_seconds": S("activeDeadlineSeconds"), "automount_service_account_token": S("automountServiceAccountToken"), @@ -841,7 +956,10 @@ class KubernetesPodSpec: class KubernetesPod(KubernetesResource): kind: ClassVar[str] = "kubernetes_pod" kind_display: ClassVar[str] = "Kubernetes Pod" - kind_description: ClassVar[str] = "A Kubernetes Pod." + kind_description: ClassVar[str] = ( + "A Kubernetes Pod is the basic building block of a Kubernetes cluster, it" + " represents a running process, or a group of running processes, on a node." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "pod_status": S("status") >> Bend(KubernetesPodStatus.mapping), "pod_spec": S("spec") >> Bend(KubernetesPodSpec.mapping), @@ -883,7 +1001,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class KubernetesPersistentVolumeClaimStatusConditions: kind: ClassVar[str] = "kubernetes_persistent_volume_claim_status_conditions" kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim status conditions." + kind_description: ClassVar[str] = ( + "The status conditions of a Persistent Volume Claim (PVC) in Kubernetes" + " represent the current state of the claim, providing information about any" + " errors or warnings that may be affecting its availability or usability." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_probe_time": S("lastProbeTime"), "last_transition_time": S("lastTransitionTime"), @@ -904,7 +1026,10 @@ class KubernetesPersistentVolumeClaimStatusConditions: class KubernetesPersistentVolumeClaimStatus: kind: ClassVar[str] = "kubernetes_persistent_volume_claim_status" kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim Status" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim status." + kind_description: ClassVar[str] = ( + "The status of a Persistent Volume Claim (PVC) in Kubernetes, which" + " represents a request for a specific amount of storage resources by a pod." + ) mapping: ClassVar[Dict[str, Bender]] = { "access_modes": S("accessModes", default=[]), "allocated_resources": S("allocatedResources"), @@ -925,7 +1050,10 @@ class KubernetesPersistentVolumeClaimStatus: class KubernetesLabelSelectorRequirement: kind: ClassVar[str] = "kubernetes_label_selector_requirement" kind_display: ClassVar[str] = "Kubernetes Label Selector Requirement" - kind_description: ClassVar[str] = "A Kubernetes Label Selector Requirement." + kind_description: ClassVar[str] = ( + "Kubernetes Label Selector Requirements specify constraints that must be met" + " by resources in order to be selected by a given label selector." + ) mapping: ClassVar[Dict[str, Bender]] = { "key": S("key"), "operator": S("operator"), @@ -940,7 +1068,11 @@ class KubernetesLabelSelectorRequirement: class KubernetesLabelSelector: kind: ClassVar[str] = "kubernetes_label_selector" kind_display: ClassVar[str] = "Kubernetes Label Selector" - kind_description: ClassVar[str] = "A Kubernetes Label Selector." + kind_description: ClassVar[str] = ( + "A Kubernetes Label Selector is used to select and filter resources based on" + " their labels, allowing for targeted operations and management within a" + " Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "match_expressions": S("matchExpressions", default=[]) >> ForallBend(KubernetesLabelSelectorRequirement.mapping), @@ -954,7 +1086,12 @@ class KubernetesLabelSelector: class KubernetesPersistentVolumeClaimSpec: kind: ClassVar[str] = "kubernetes_persistent_volume_claim_spec" kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim Spec" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Persistent Volume Claim Spec is a specification that defines" + " the requirements and characteristics of a Persistent Volume Claim, which is" + " used to request storage resources in a Kubernetes cluster to be dynamically" + " provisioned." + ) mapping: ClassVar[Dict[str, Bender]] = { "access_modes": S("accessModes", default=[]), "resources": S("resources") >> Bend(KubernetesResourceRequirements.mapping), @@ -975,7 +1112,11 @@ class KubernetesPersistentVolumeClaimSpec: class KubernetesPersistentVolumeClaim(KubernetesResource): kind: ClassVar[str] = "kubernetes_persistent_volume_claim" kind_display: ClassVar[str] = "Kubernetes Persistent Volume Claim" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume Claim." + kind_description: ClassVar[str] = ( + "A Kubernetes Persistent Volume Claim is a request for storage resources in a" + " Kubernetes cluster. It allows users to request specific storage capacity and" + " access modes for their applications." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "persistent_volume_claim_status": S("status") >> Bend(KubernetesPersistentVolumeClaimStatus.mapping), "persistent_volume_claim_spec": S("spec") >> Bend(KubernetesPersistentVolumeClaimSpec.mapping), @@ -995,8 +1136,11 @@ class KubernetesPersistentVolumeClaim(KubernetesResource): @define(eq=False, slots=False) class KubernetesLoadbalancerIngressPorts: kind: ClassVar[str] = "kubernetes_loadbalancer_ingress_ports" - kind_display: ClassVar[str] = "Kubernetes Loadbalancer Ingress Ports" - kind_description: ClassVar[str] = "A Kubernetes Loadbalancer Ingress Ports." + kind_display: ClassVar[str] = "Kubernetes LoadBalancer Ingress Ports" + kind_description: ClassVar[str] = ( + "Kubernetes LoadBalancer Ingress Ports are the ports exposed by a load" + " balancer in a Kubernetes cluster for routing incoming traffic to services." + ) mapping: ClassVar[Dict[str, Bender]] = { "error": S("error"), "port": S("port"), @@ -1010,8 +1154,13 @@ class KubernetesLoadbalancerIngressPorts: @define(eq=False, slots=False) class KubernetesLoadbalancerIngress: kind: ClassVar[str] = "kubernetes_loadbalancer_ingress" - kind_display: ClassVar[str] = "Kubernetes Loadbalancer Ingress" - kind_description: ClassVar[str] = "A Kubernetes Loadbalancer Ingress." + kind_display: ClassVar[str] = "Kubernetes LoadBalancer Ingress" + kind_description: ClassVar[str] = ( + "Kubernetes LoadBalancer Ingress is a feature in Kubernetes that provides" + " external access to services running in a Kubernetes cluster by assigning" + " them a public IP address and distributing incoming traffic to the" + " corresponding services." + ) mapping: ClassVar[Dict[str, Bender]] = { "hostname": S("hostname"), "ip": S("ip"), @@ -1025,8 +1174,11 @@ class KubernetesLoadbalancerIngress: @define(eq=False, slots=False) class KubernetesLoadbalancerStatus: kind: ClassVar[str] = "kubernetes_loadbalancer_status" - kind_display: ClassVar[str] = "Kubernetes Loadbalancer Status" - kind_description: ClassVar[str] = "A Kubernetes Loadbalancer status." + kind_display: ClassVar[str] = "Kubernetes LoadBalancer Status" + kind_description: ClassVar[str] = ( + "Kubernetes LoadBalancer Status represents the status of a load balancer in a" + " Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "ingress": S("ingress", default=[]) >> ForallBend(KubernetesLoadbalancerIngress.mapping), } @@ -1037,7 +1189,10 @@ class KubernetesLoadbalancerStatus: class KubernetesServiceStatusConditions: kind: ClassVar[str] = "kubernetes_service_status_conditions" kind_display: ClassVar[str] = "Kubernetes Service Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Service status conditions." + kind_description: ClassVar[str] = ( + "Kubernetes Service Status Conditions represents the conditions associated" + " with the current state of a service in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1058,7 +1213,10 @@ class KubernetesServiceStatusConditions: class KubernetesServiceStatus: kind: ClassVar[str] = "kubernetes_service_status" kind_display: ClassVar[str] = "Kubernetes Service Status" - kind_description: ClassVar[str] = "A Kubernetes Service status." + kind_description: ClassVar[str] = ( + "Kubernetes Service Status refers to the current state or health of a service" + " deployed on a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -1073,7 +1231,10 @@ class KubernetesServiceStatus: class KubernetesServicePort: kind: ClassVar[str] = "kubernetes_service_port" kind_display: ClassVar[str] = "Kubernetes Service Port" - kind_description: ClassVar[str] = "A Kubernetes Service Port." + kind_description: ClassVar[str] = ( + "A Kubernetes Service Port is a configuration that defines a port to expose" + " for a Kubernetes service, allowing external access to the service." + ) mapping: ClassVar[Dict[str, Bender]] = { "app_protocol": S("appProtocol"), "name": S("name"), @@ -1094,7 +1255,11 @@ class KubernetesServicePort: class KubernetesServiceSpec: kind: ClassVar[str] = "kubernetes_service_spec" kind_display: ClassVar[str] = "Kubernetes Service Spec" - kind_description: ClassVar[str] = "A Kubernetes Service spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Service Spec is a configuration file that defines how to expose" + " and access a set of pods in a Kubernetes cluster. It specifies the type of" + " service, port mapping, and other networking settings." + ) mapping: ClassVar[Dict[str, Bender]] = { "allocate_load_balancer_node_ports": S("allocateLoadBalancerNodePorts"), "cluster_ip": S("clusterIP"), @@ -1139,7 +1304,11 @@ class KubernetesServiceSpec: class KubernetesService(KubernetesResource, BaseLoadBalancer): kind: ClassVar[str] = "kubernetes_service" kind_display: ClassVar[str] = "Kubernetes Service" - kind_description: ClassVar[str] = "A Kubernetes Service." + kind_description: ClassVar[str] = ( + "A Kubernetes Service is an abstraction layer that defines a logical set of" + " Pods and a policy by which to access them, providing a stable endpoint for" + " accessing applications deployed on a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "service_status": S("status") >> Bend(KubernetesServiceStatus.mapping), "service_spec": S("spec") >> Bend(KubernetesServiceSpec.mapping), @@ -1186,14 +1355,23 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class KubernetesPodTemplate(KubernetesResource): kind: ClassVar[str] = "kubernetes_pod_template" kind_display: ClassVar[str] = "Kubernetes Pod Template" - kind_description: ClassVar[str] = "A Kubernetes Pod Template." + kind_description: ClassVar[str] = ( + "A Kubernetes Pod Template is a blueprint for creating and organizing pods," + " which are the smallest and simplest building blocks in a Kubernetes cluster." + " It defines the specifications for containers, volumes, and other resources" + " that make up a pod." + ) @define(eq=False, slots=False) class KubernetesClusterInfo: kind: ClassVar[str] = "kubernetes_cluster_info" kind_display: ClassVar[str] = "Kubernetes Cluster Info" - kind_description: ClassVar[str] = "A Kubernetes Cluster Info." + kind_description: ClassVar[str] = ( + "Kubernetes Cluster Info provides information about the cluster using the" + " Kubernetes container orchestration platform. It includes details about the" + " nodes, pods, services, and other resources in the cluster." + ) major: str minor: str platform: str @@ -1204,7 +1382,10 @@ class KubernetesClusterInfo: class KubernetesCluster(KubernetesResource, BaseAccount): kind: ClassVar[str] = "kubernetes_cluster" kind_display: ClassVar[str] = "Kubernetes Cluster" - kind_description: ClassVar[str] = "A Kubernetes Cluster." + kind_description: ClassVar[str] = ( + "A Kubernetes cluster is a group of nodes (physical or virtual machines) that" + " run containerized applications managed by Kubernetes." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -1235,14 +1416,20 @@ class KubernetesCluster(KubernetesResource, BaseAccount): class KubernetesConfigMap(KubernetesResource): kind: ClassVar[str] = "kubernetes_config_map" kind_display: ClassVar[str] = "Kubernetes Config Map" - kind_description: ClassVar[str] = "A Kubernetes Config Map." + kind_description: ClassVar[str] = ( + "A Kubernetes Config Map is a way to store key-value pairs of configuration" + " data that can be accessed by containers within a cluster." + ) @define(eq=False, slots=False) class KubernetesEndpointAddress: kind: ClassVar[str] = "kubernetes_endpoint_address" kind_display: ClassVar[str] = "Kubernetes Endpoint Address" - kind_description: ClassVar[str] = "A Kubernetes Endpoint Address." + kind_description: ClassVar[str] = ( + "The address of the Kubernetes endpoint, which is used to access and interact" + " with a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "ip": S("ip"), "node_name": S("nodeName"), @@ -1261,7 +1448,10 @@ def target_ref(self) -> Optional[str]: class KubernetesEndpointPort: kind: ClassVar[str] = "kubernetes_endpoint_port" kind_display: ClassVar[str] = "Kubernetes Endpoint Port" - kind_description: ClassVar[str] = "A Kubernetes Endpoint Port." + kind_description: ClassVar[str] = ( + "Kubernetes Endpoint Port is the port number on which a service is exposed" + " and can be accessed within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), "port": S("port"), @@ -1277,7 +1467,10 @@ class KubernetesEndpointPort: class KubernetesEndpointSubset: kind: ClassVar[str] = "kubernetes_endpoint_subset" kind_display: ClassVar[str] = "Kubernetes Endpoint Subset" - kind_description: ClassVar[str] = "A Kubernetes Endpoint Subset." + kind_description: ClassVar[str] = ( + "A subset of endpoints in a Kubernetes cluster, representing a group of" + " network addresses where the Kubernetes services are accessible." + ) mapping: ClassVar[Dict[str, Bender]] = { "addresses": S("addresses", default=[]) >> ForallBend(KubernetesEndpointAddress.mapping), "ports": S("ports", default=[]) >> ForallBend(KubernetesEndpointPort.mapping), @@ -1290,7 +1483,10 @@ class KubernetesEndpointSubset: class KubernetesEndpoints(KubernetesResource): kind: ClassVar[str] = "kubernetes_endpoint" kind_display: ClassVar[str] = "Kubernetes Endpoint" - kind_description: ClassVar[str] = "A Kubernetes Endpoint." + kind_description: ClassVar[str] = ( + "A Kubernetes Endpoint defines a network address where a service can be" + " accessed." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "subsets": S("subsets", default=[]) >> ForallBend(KubernetesEndpointSubset.mapping), } @@ -1315,7 +1511,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class KubernetesEndpointSlice(KubernetesResource): kind: ClassVar[str] = "kubernetes_endpoint_slice" kind_display: ClassVar[str] = "Kubernetes Endpoint Slice" - kind_description: ClassVar[str] = "A Kubernetes Endpoint Slice." + kind_description: ClassVar[str] = ( + "Kubernetes Endpoint Slices are a feature that allows for more efficient and" + " scalable service discovery in a Kubernetes cluster by splitting endpoints" + " into smaller slices." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [], @@ -1328,14 +1528,21 @@ class KubernetesEndpointSlice(KubernetesResource): class KubernetesLimitRange(KubernetesResource): kind: ClassVar[str] = "kubernetes_limit_range" kind_display: ClassVar[str] = "Kubernetes Limit Range" - kind_description: ClassVar[str] = "A Kubernetes Limit Range." + kind_description: ClassVar[str] = ( + "Kubernetes Limit Range is a feature that allows you to define resource" + " constraints (such as CPU and memory limits) for containers and pods running" + " on a Kubernetes cluster." + ) @define(eq=False, slots=False) class KubernetesNamespaceStatusConditions: kind: ClassVar[str] = "kubernetes_namespace_status_conditions" kind_display: ClassVar[str] = "Kubernetes Namespace Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Namespace status conditions." + kind_description: ClassVar[str] = ( + "Kubernetes Namespace Status Conditions represent the current status and" + " conditions of a namespace in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1354,7 +1561,11 @@ class KubernetesNamespaceStatusConditions: class KubernetesNamespaceStatus: kind: ClassVar[str] = "kubernetes_namespace_status" kind_display: ClassVar[str] = "Kubernetes Namespace Status" - kind_description: ClassVar[str] = "A Kubernetes Namespace status." + kind_description: ClassVar[str] = ( + "This resource represents the status of a namespace in a Kubernetes cluster." + " Namespaces are a way to divide cluster resources between multiple users or" + " applications." + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -1369,7 +1580,10 @@ class KubernetesNamespaceStatus: class KubernetesNamespace(KubernetesResource, BaseRegion): kind: ClassVar[str] = "kubernetes_namespace" kind_display: ClassVar[str] = "Kubernetes Namespace" - kind_description: ClassVar[str] = "A Kubernetes Namespace." + kind_description: ClassVar[str] = ( + "A Kubernetes Namespace is a virtual cluster that allows users to divide" + " resources and control access within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "namespace_status": S("status") >> Bend(KubernetesNamespaceStatus.mapping), } @@ -1406,7 +1620,11 @@ class KubernetesNamespace(KubernetesResource, BaseRegion): class KubernetesPersistentVolumeStatus: kind: ClassVar[str] = "kubernetes_persistent_volume_status" kind_display: ClassVar[str] = "Kubernetes Persistent Volume Status" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume status." + kind_description: ClassVar[str] = ( + "Persistent Volume Status represents the current state of a persistent volume" + " in a Kubernetes cluster. It provides information about the volume's" + " availability and usage." + ) mapping: ClassVar[Dict[str, Bender]] = { "message": S("message"), "phase": S("phase"), @@ -1420,8 +1638,11 @@ class KubernetesPersistentVolumeStatus: @define(eq=False, slots=False) class KubernetesPersistentVolumeSpecAwsElasticBlockStore: kind: ClassVar[str] = "kubernetes_persistent_volume_spec_aws_elastic_block_store" - kind_display: ClassVar[str] = "Kubernetes Persistent Volume Spec Aws Elastic Block Store" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume spec AWS elastic block store." + kind_display: ClassVar[str] = "Kubernetes Persistent Volume Spec AWS Elastic Block Store" + kind_description: ClassVar[str] = ( + "This resource specification in Kubernetes is used to define a persistent" + " volume that is backed by an Amazon Elastic Block Store (EBS) volume." + ) mapping: ClassVar[Dict[str, Bender]] = { "volume_id": S("volumeID"), "fs_type": S("fsType"), @@ -1434,7 +1655,11 @@ class KubernetesPersistentVolumeSpecAwsElasticBlockStore: class KubernetesPersistentVolumeSpec: kind: ClassVar[str] = "kubernetes_persistent_volume_spec" kind_display: ClassVar[str] = "Kubernetes Persistent Volume Spec" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume spec." + kind_description: ClassVar[str] = ( + "A Persistent Volume Spec defines the properties and access modes of a" + " persistent storage volume in Kubernetes, which can be dynamically" + " provisioned and allocated to pods." + ) mapping: ClassVar[Dict[str, Bender]] = { "access_modes": S("accessModes", default=[]), "aws_elastic_block_store": S("awsElasticBlockStore") @@ -1512,7 +1737,10 @@ class KubernetesPersistentVolumeSpec: class KubernetesPersistentVolume(KubernetesResource, BaseVolume): kind: ClassVar[str] = "kubernetes_persistent_volume" kind_display: ClassVar[str] = "Kubernetes Persistent Volume" - kind_description: ClassVar[str] = "A Kubernetes Persistent Volume." + kind_description: ClassVar[str] = ( + "A Kubernetes Persistent Volume is a storage abstraction that provides access" + " to persisted data for a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "persistent_volume_status": S("status") >> Bend(KubernetesPersistentVolumeStatus.mapping), "persistent_volume_spec": S("spec") >> Bend(KubernetesPersistentVolumeSpec.mapping), @@ -1533,6 +1761,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @define(eq=False, slots=False) class KubernetesReplicationControllerStatusConditions: kind: ClassVar[str] = "kubernetes_replication_controller_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Replication Controller Status Conditions" + kind_description: ClassVar[str] = ( + "Represents the status conditions of a Kubernetes Replication Controller," + " indicating the state of the controller and any potential problems or errors." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1551,7 +1784,11 @@ class KubernetesReplicationControllerStatusConditions: class KubernetesReplicationControllerStatus: kind: ClassVar[str] = "kubernetes_replication_controller_status" kind_display: ClassVar[str] = "Kubernetes Replication Controller Status" - kind_description: ClassVar[str] = "A Kubernetes Replication Controller status." + kind_description: ClassVar[str] = ( + "The replication controller status in Kubernetes provides information about" + " the number of desired replicas, current replicas, and available replicas for" + " a certain controller." + ) mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "conditions": S("conditions", default=[]) @@ -1574,7 +1811,11 @@ class KubernetesReplicationControllerStatus: class KubernetesReplicationController(KubernetesResource): kind: ClassVar[str] = "kubernetes_replication_controller" kind_display: ClassVar[str] = "Kubernetes Replication Controller" - kind_description: ClassVar[str] = "A Kubernetes Replication Controller." + kind_description: ClassVar[str] = ( + "A Replication Controller is responsible for maintaining a specified number" + " of pod replicas in a Kubernetes cluster. It ensures that the desired number" + " of pods are always running in the cluster, even in the event of failures." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "replication_controller_status": S("status") >> Bend(KubernetesReplicationControllerStatus.mapping), } @@ -1585,7 +1826,10 @@ class KubernetesReplicationController(KubernetesResource): class KubernetesResourceQuotaStatus: kind: ClassVar[str] = "kubernetes_resource_quota_status" kind_display: ClassVar[str] = "Kubernetes Resource Quota Status" - kind_description: ClassVar[str] = "A Kubernetes Resource Quota status." + kind_description: ClassVar[str] = ( + "Kubernetes Resource Quota Status provides information about the current" + " resource utilization and limits for a namespace in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "hard": S("hard"), "used": S("used"), @@ -1598,7 +1842,11 @@ class KubernetesResourceQuotaStatus: class KubernetesResourceQuotaSpec: kind: ClassVar[str] = "kubernetes_resource_quota_spec" kind_display: ClassVar[str] = "Kubernetes Resource Quota Spec" - kind_description: ClassVar[str] = "A Kubernetes Resource Quota spec." + kind_description: ClassVar[str] = ( + "Resource Quota Spec is a specification in Kubernetes that allows users to" + " set limits on the amount of resources (CPU, memory, storage) that a" + " namespace or a group of objects can consume." + ) mapping: ClassVar[Dict[str, Bender]] = { "hard": S("hard"), "scope_selector": S("scopeSelector"), @@ -1613,7 +1861,11 @@ class KubernetesResourceQuotaSpec: class KubernetesResourceQuota(KubernetesResource, BaseQuota): kind: ClassVar[str] = "kubernetes_resource_quota" kind_display: ClassVar[str] = "Kubernetes Resource Quota" - kind_description: ClassVar[str] = "A Kubernetes Resource Quota." + kind_description: ClassVar[str] = ( + "Kubernetes Resource Quota is a mechanism in Kubernetes for limiting and" + " allocating resources to namespaces, ensuring fairness and preventing one" + " namespace from using excessive resources." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "resource_quota_status": S("status") >> Bend(KubernetesResourceQuotaStatus.mapping), "resource_quota_spec": S("spec") >> Bend(KubernetesResourceQuotaSpec.mapping), @@ -1626,14 +1878,21 @@ class KubernetesResourceQuota(KubernetesResource, BaseQuota): class KubernetesSecret(KubernetesResource): kind: ClassVar[str] = "kubernetes_secret" kind_display: ClassVar[str] = "Kubernetes Secret" - kind_description: ClassVar[str] = "A Kubernetes Secret." + kind_description: ClassVar[str] = ( + "Kubernetes Secret is an object that contains sensitive data such as" + " passwords, API keys, and tokens, which can be securely stored and accessed" + " by containers in a Kubernetes cluster." + ) @define(eq=False, slots=False) class KubernetesServiceAccount(KubernetesResource): kind: ClassVar[str] = "kubernetes_service_account" kind_display: ClassVar[str] = "Kubernetes Service Account" - kind_description: ClassVar[str] = "A Kubernetes Service Account." + kind_description: ClassVar[str] = ( + "A Kubernetes service account provides an identity and set of permissions for" + " processes running in a pod within a Kubernetes cluster." + ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["kubernetes_secret"], "delete": []}} def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: @@ -1647,21 +1906,32 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class KubernetesMutatingWebhookConfiguration(KubernetesResource): kind: ClassVar[str] = "kubernetes_mutating_webhook_configuration" kind_display: ClassVar[str] = "Kubernetes Mutating Webhook Configuration" - kind_description: ClassVar[str] = "A Kubernetes Mutating Webhook Configuration." + kind_description: ClassVar[str] = ( + "Kubernetes Mutating Webhook Configuration allows you to define and configure" + " webhooks that modify or mutate incoming requests to the Kubernetes API" + " server." + ) @define(eq=False, slots=False) class KubernetesValidatingWebhookConfiguration(KubernetesResource): kind: ClassVar[str] = "kubernetes_validating_webhook_configuration" kind_display: ClassVar[str] = "Kubernetes Validating Webhook Configuration" - kind_description: ClassVar[str] = "A Kubernetes Validating Webhook Configuration." + kind_description: ClassVar[str] = ( + "A Kubernetes Validating Webhook Configuration is used to intercept and" + " validate requests made to the Kubernetes API server, ensuring compliance" + " with user-defined policies and preventing unauthorized access." + ) @define(eq=False, slots=False) class KubernetesControllerRevision(KubernetesResource): kind: ClassVar[str] = "kubernetes_controller_revision" kind_display: ClassVar[str] = "Kubernetes Controller Revision" - kind_description: ClassVar[str] = "A Kubernetes Controller Revision." + kind_description: ClassVar[str] = ( + "Controller Revision in Kubernetes represents a specific revision of a" + " controller's configuration and state." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [], @@ -1674,7 +1944,11 @@ class KubernetesControllerRevision(KubernetesResource): class KubernetesDaemonSetStatusConditions: kind: ClassVar[str] = "kubernetes_daemon_set_status_conditions" kind_display: ClassVar[str] = "Kubernetes Daemon Set Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Daemon Set status conditions." + kind_description: ClassVar[str] = ( + "Daemon Set Status Conditions represent the current conditions of a" + " Kubernetes Daemon Set, which is used to ensure that a copy of a specific pod" + " is running on each node in a cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1693,7 +1967,10 @@ class KubernetesDaemonSetStatusConditions: class KubernetesDaemonSetStatus: kind: ClassVar[str] = "kubernetes_daemon_set_status" kind_display: ClassVar[str] = "Kubernetes Daemon Set Status" - kind_description: ClassVar[str] = "A Kubernetes Daemon Set status." + kind_description: ClassVar[str] = ( + "The status of a Kubernetes Daemon Set, which is a way to ensure that a copy" + " of a specific pod is running on all or some of the nodes in a cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "collision_count": S("collisionCount"), "conditions": S("conditions", default=[]) @@ -1724,7 +2001,11 @@ class KubernetesDaemonSetStatus: class KubernetesPodTemplateSpec: kind: ClassVar[str] = "kubernetes_pod_template_spec" kind_display: ClassVar[str] = "Kubernetes Pod Template Spec" - kind_description: ClassVar[str] = "A Kubernetes Pod Template spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Pod Template Spec defines the desired state for a pod," + " including the container images, environment variables, and other" + " specifications." + ) mapping: ClassVar[Dict[str, Bender]] = { "spec": S("spec") >> Bend(KubernetesPodSpec.mapping), } @@ -1734,8 +2015,12 @@ class KubernetesPodTemplateSpec: @define class KubernetesDaemonSetSpec: kind: ClassVar[str] = "kubernetes_daemon_set_spec" - kind_display: ClassVar[str] = "Kubernetes Daemon Set Spec" - kind_description: ClassVar[str] = "A Kubernetes Daemon Set spec." + kind_display: ClassVar[str] = "Kubernetes DaemonSet Spec" + kind_description: ClassVar[str] = ( + "The Kubernetes DaemonSet Spec is a configuration that defines how pods are" + " scheduled on every node in a Kubernetes cluster, ensuring that a copy of the" + " specified pod runs on each node." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "revision_history_limit": S("revisionHistoryLimit"), @@ -1751,8 +2036,11 @@ class KubernetesDaemonSetSpec: @define(eq=False, slots=False) class KubernetesDaemonSet(KubernetesResource): kind: ClassVar[str] = "kubernetes_daemon_set" - kind_display: ClassVar[str] = "Kubernetes Daemon Set" - kind_description: ClassVar[str] = "A Kubernetes Daemon Set." + kind_display: ClassVar[str] = "Kubernetes DaemonSet" + kind_description: ClassVar[str] = ( + "A Kubernetes DaemonSet ensures that all (or some) nodes in a cluster run a" + " copy of a specified pod." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "daemon_set_status": S("status") >> Bend(KubernetesDaemonSetStatus.mapping), "daemon_set_spec": S("spec") >> Bend(KubernetesDaemonSetSpec.mapping), @@ -1772,7 +2060,10 @@ class KubernetesDaemonSet(KubernetesResource): class KubernetesDeploymentStatusCondition: kind: ClassVar[str] = "kubernetes_deployment_status_condition" kind_display: ClassVar[str] = "Kubernetes Deployment Status Condition" - kind_description: ClassVar[str] = "A Kubernetes Deployment status condition." + kind_description: ClassVar[str] = ( + "A condition in the status of a Kubernetes deployment that indicates the" + " current state or status of the deployment." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "last_update_time": S("lastUpdateTime"), @@ -1793,7 +2084,10 @@ class KubernetesDeploymentStatusCondition: class KubernetesDeploymentStatus: kind: ClassVar[str] = "kubernetes_deployment_status" kind_display: ClassVar[str] = "Kubernetes Deployment Status" - kind_description: ClassVar[str] = "A Kubernetes Deployment status." + kind_description: ClassVar[str] = ( + "Kubernetes Deployment Status represents the current state and health of a" + " deployment in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "collision_count": S("collisionCount"), @@ -1820,7 +2114,11 @@ class KubernetesDeploymentStatus: class KubernetesRollingUpdateDeployment: kind: ClassVar[str] = "kubernetes_rolling_update_deployment" kind_display: ClassVar[str] = "Kubernetes Rolling Update Deployment" - kind_description: ClassVar[str] = "A Kubernetes rolling update deployment." + kind_description: ClassVar[str] = ( + "Rolling Update Deployment in Kubernetes allows for seamless updates of" + " application deployments by gradually replacing existing instances with" + " updated ones, ensuring zero downtime." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_surge": S("maxSurge"), "max_unavailable": S("maxUnavailable"), @@ -1833,7 +2131,11 @@ class KubernetesRollingUpdateDeployment: class KubernetesDeploymentStrategy: kind: ClassVar[str] = "kubernetes_deployment_strategy" kind_display: ClassVar[str] = "Kubernetes Deployment Strategy" - kind_description: ClassVar[str] = "A Kubernetes deployment strategy." + kind_description: ClassVar[str] = ( + "Kubernetes Deployment Strategy refers to the methodology used to manage and" + " control the deployment of applications and services in a Kubernetes cluster," + " ensuring efficient and reliable deployment processes." + ) mapping: ClassVar[Dict[str, Bender]] = { "rolling_update": S("rollingUpdate") >> Bend(KubernetesRollingUpdateDeployment.mapping), "type": S("type"), @@ -1846,7 +2148,12 @@ class KubernetesDeploymentStrategy: class KubernetesDeploymentSpec: kind: ClassVar[str] = "kubernetes_deployment_spec" kind_display: ClassVar[str] = "Kubernetes Deployment Spec" - kind_description: ClassVar[str] = "A Kubernetes Deployment spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Deployment Spec is a YAML specification file that defines how" + " an application should be deployed and managed within a Kubernetes cluster." + " It includes details such as the number of replicas, container images," + " networking, and resource requirements." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "paused": S("paused"), @@ -1871,7 +2178,10 @@ class KubernetesDeploymentSpec: class KubernetesDeployment(KubernetesResource): kind: ClassVar[str] = "kubernetes_deployment" kind_display: ClassVar[str] = "Kubernetes Deployment" - kind_description: ClassVar[str] = "A Kubernetes Deployment." + kind_description: ClassVar[str] = ( + "A Kubernetes Deployment is a resource object in Kubernetes that defines how" + " an application should be deployed and managed within a cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "deployment_status": S("status") >> Bend(KubernetesDeploymentStatus.mapping), "deployment_spec": S("spec") >> Bend(KubernetesDeploymentSpec.mapping), @@ -1896,7 +2206,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class KubernetesReplicaSetStatusCondition: kind: ClassVar[str] = "kubernetes_replica_set_status_conditions" kind_display: ClassVar[str] = "Kubernetes Replica Set Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Replica Set status conditions." + kind_description: ClassVar[str] = ( + "Replica Set Status Conditions in Kubernetes are used to provide information" + " about the current status of a Replica Set, such as whether it is progressing" + " or has encountered any errors." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1915,7 +2229,10 @@ class KubernetesReplicaSetStatusCondition: class KubernetesReplicaSetStatus: kind: ClassVar[str] = "kubernetes_replica_set_status" kind_display: ClassVar[str] = "Kubernetes Replica Set Status" - kind_description: ClassVar[str] = "A Kubernetes Replica Set status." + kind_description: ClassVar[str] = ( + "The status of a Kubernetes Replica Set, which represents a set of pods that" + " are all running the same application." + ) mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "conditions": S("conditions", default=[]) @@ -1938,7 +2255,10 @@ class KubernetesReplicaSetStatus: class KubernetesReplicaSetSpec: kind: ClassVar[str] = "kubernetes_replica_set_spec" kind_display: ClassVar[str] = "Kubernetes Replica Set Spec" - kind_description: ClassVar[str] = "A Kubernetes Replica Set spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Replica Set Spec defines the desired state for creating and" + " managing a group of replica pods." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "replicas": S("replicas"), @@ -1955,7 +2275,11 @@ class KubernetesReplicaSetSpec: class KubernetesReplicaSet(KubernetesResource): kind: ClassVar[str] = "kubernetes_replica_set" kind_display: ClassVar[str] = "Kubernetes Replica Set" - kind_description: ClassVar[str] = "A Kubernetes Replica Set." + kind_description: ClassVar[str] = ( + "A ReplicaSet is a Kubernetes object that ensures a specified number of pod" + " replicas are running at any given time, and handles scaling and self-healing" + " of pods." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "replica_set_status": S("status") >> Bend(KubernetesReplicaSetStatus.mapping), "replica_set_spec": S("spec") >> Bend(KubernetesReplicaSetSpec.mapping), @@ -1974,8 +2298,12 @@ class KubernetesReplicaSet(KubernetesResource): @define(eq=False, slots=False) class KubernetesStatefulSetStatusCondition: kind: ClassVar[str] = "kubernetes_stateful_set_status_condition" - kind_display: ClassVar[str] = "Kubernetes Stateful Set Status Condition" - kind_description: ClassVar[str] = "A Kubernetes Stateful Set status condition." + kind_display: ClassVar[str] = "Kubernetes StatefulSet Status Condition" + kind_description: ClassVar[str] = ( + "A StatefulSet is a Kubernetes workload API object used to manage stateful" + " applications. The status conditions provide information about the current" + " state of the StatefulSet object." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -1994,7 +2322,12 @@ class KubernetesStatefulSetStatusCondition: class KubernetesStatefulSetStatus: kind: ClassVar[str] = "kubernetes_stateful_set_status" kind_display: ClassVar[str] = "Kubernetes Stateful Set Status" - kind_description: ClassVar[str] = "A Kubernetes Stateful Set status." + kind_description: ClassVar[str] = ( + "Stateful Set Status in Kubernetes represents the current status and" + " condition of a Stateful Set, which is a workload API object used in" + " Kubernetes for managing stateful applications and providing stable network" + " identities to the pods." + ) mapping: ClassVar[Dict[str, Bender]] = { "available_replicas": S("availableReplicas"), "collision_count": S("collisionCount"), @@ -2024,8 +2357,13 @@ class KubernetesStatefulSetStatus: @define class KubernetesStatefulSetSpec: kind: ClassVar[str] = "kubernetes_stateful_set_spec" - kind_display: ClassVar[str] = "Kubernetes Stateful Set Spec" - kind_description: ClassVar[str] = "A Kubernetes Stateful Set spec." + kind_display: ClassVar[str] = "Kubernetes StatefulSet Spec" + kind_description: ClassVar[str] = ( + "A StatefulSet in Kubernetes is a workload API object that manages the" + " deployment and scaling of a set of pods. The StatefulSet ensures that each" + " pod in the set has a unique identity and that they are created and scaled in" + " a predictable and ordered manner." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "pod_management_policy": S("podManagementPolicy"), @@ -2048,7 +2386,12 @@ class KubernetesStatefulSetSpec: class KubernetesStatefulSet(KubernetesResource): kind: ClassVar[str] = "kubernetes_stateful_set" kind_display: ClassVar[str] = "Kubernetes Stateful Set" - kind_description: ClassVar[str] = "A Kubernetes Stateful Set." + kind_description: ClassVar[str] = ( + "A Kubernetes Stateful Set is a higher-level resource that allows for the" + " management of stateful applications in a Kubernetes cluster. It ensures" + " ordered deployment, scaling, and termination of replicas while maintaining" + " stable network identities." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "stateful_set_status": S("status") >> Bend(KubernetesStatefulSetStatus.mapping), "stateful_set_spec": S("spec") >> Bend(KubernetesStatefulSetSpec.mapping), @@ -2068,7 +2411,10 @@ class KubernetesStatefulSet(KubernetesResource): class KubernetesHorizontalPodAutoscalerStatus: kind: ClassVar[str] = "kubernetes_horizontal_pod_autoscaler_status" kind_display: ClassVar[str] = "Kubernetes Horizontal Pod Autoscaler Status" - kind_description: ClassVar[str] = "A Kubernetes Horizontal Pod Autoscaler status." + kind_description: ClassVar[str] = ( + "The Horizontal Pod Autoscaler in Kubernetes automatically scales the number" + " of pods running in a deployment based on the observed CPU utilization." + ) mapping: ClassVar[Dict[str, Bender]] = { "current_cpu_utilization_percentage": S("currentCPUUtilizationPercentage"), "current_replicas": S("currentReplicas"), @@ -2087,7 +2433,10 @@ class KubernetesHorizontalPodAutoscalerStatus: class KubernetesCrossVersionObjectReference: kind: ClassVar[str] = "kubernetes_cross_object_reference" kind_display: ClassVar[str] = "Kubernetes Cross Object Reference" - kind_description: ClassVar[str] = "A Kubernetes cross object reference." + kind_description: ClassVar[str] = ( + "Kubernetes Cross Object Reference is a feature that allows referencing" + " objects in other namespaces within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "api_version": S("apiVersion"), "resource_kind": S("kind"), @@ -2102,7 +2451,11 @@ class KubernetesCrossVersionObjectReference: class KubernetesHorizontalPodAutoscalerSpec: kind: ClassVar[str] = "kubernetes_horizontal_pod_autoscaler_spec" kind_display: ClassVar[str] = "Kubernetes Horizontal Pod Autoscaler Spec" - kind_description: ClassVar[str] = "A Kubernetes Horizontal Pod Autoscaler spec." + kind_description: ClassVar[str] = ( + "The Kubernetes Horizontal Pod Autoscaler Spec is used to configure the" + " autoscaling behavior of pods in a Kubernetes cluster, allowing for automatic" + " scaling based on resource utilization metrics." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_replicas": S("maxReplicas"), "min_replicas": S("minReplicas"), @@ -2119,7 +2472,11 @@ class KubernetesHorizontalPodAutoscalerSpec: class KubernetesHorizontalPodAutoscaler(KubernetesResource): kind: ClassVar[str] = "kubernetes_horizontal_pod_autoscaler" kind_display: ClassVar[str] = "Kubernetes Horizontal Pod Autoscaler" - kind_description: ClassVar[str] = "A Kubernetes Horizontal Pod Autoscaler." + kind_description: ClassVar[str] = ( + "The Kubernetes Horizontal Pod Autoscaler automatically scales the number of" + " pods in a deployment up or down based on CPU usage or other specified" + " metrics." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "horizontal_pod_autoscaler_status": S("status") >> Bend(KubernetesHorizontalPodAutoscalerStatus.mapping), "horizontal_pod_autoscaler_spec": S("spec") >> Bend(KubernetesHorizontalPodAutoscalerSpec.mapping), @@ -2131,8 +2488,12 @@ class KubernetesHorizontalPodAutoscaler(KubernetesResource): @define(eq=False, slots=False) class KubernetesCronJobStatusActive: kind: ClassVar[str] = "kubernetes_cron_job_status_active" - kind_display: ClassVar[str] = "Kubernetes Cron Job status: active" - kind_description: ClassVar[str] = "An active Kubernetes Cron Job." + kind_display: ClassVar[str] = "Kubernetes Cron Job Status Active" + kind_description: ClassVar[str] = ( + "Cron jobs are scheduled tasks in Kubernetes that run at specified intervals." + " The 'active' status indicates that the cron job is currently running or has" + " recently completed." + ) mapping: ClassVar[Dict[str, Bender]] = { "api_version": S("apiVersion"), "field_path": S("fieldPath"), @@ -2153,7 +2514,10 @@ class KubernetesCronJobStatusActive: class KubernetesCronJobStatus: kind: ClassVar[str] = "kubernetes_cron_job_status" kind_display: ClassVar[str] = "Kubernetes Cron Job Status" - kind_description: ClassVar[str] = "A Kubernetes Cron Job status." + kind_description: ClassVar[str] = ( + "Kubernetes Cron Job Status represents the status of a scheduled job in a" + " Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "active": S("active", default=[]) >> ForallBend(KubernetesCronJobStatusActive.mapping), "last_schedule_time": S("lastScheduleTime"), @@ -2168,7 +2532,11 @@ class KubernetesCronJobStatus: class KubernetesJobSpec: kind: ClassVar[str] = "kubernetes_job_spec" kind_display: ClassVar[str] = "Kubernetes Job Spec" - kind_description: ClassVar[str] = "A Kubernetes Job spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Job Spec is a declarative configuration file that defines a" + " task or set of tasks to be run as part of a Kubernetes cluster, ensuring the" + " task is successfully completed." + ) mapping: ClassVar[Dict[str, Bender]] = { "active_deadline_seconds": S("activeDeadlineSeconds"), "backoff_limit": S("backoffLimit"), @@ -2197,7 +2565,10 @@ class KubernetesJobSpec: class KubernetesJobTemplateSpec: kind: ClassVar[str] = "kubernetes_job_template_spec" kind_display: ClassVar[str] = "Kubernetes Job Template Spec" - kind_description: ClassVar[str] = "A Kubernetes Job Template spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Job Template Spec is a specification for creating and managing" + " batch jobs in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "spec": S("spec") >> Bend(KubernetesJobSpec.mapping), } @@ -2208,7 +2579,10 @@ class KubernetesJobTemplateSpec: class KubernetesCronJobSpec: kind: ClassVar[str] = "kubernetes_cron_job_spec" kind_display: ClassVar[str] = "Kubernetes Cron Job Spec" - kind_description: ClassVar[str] = "A Kubernetes Cron Job spec." + kind_description: ClassVar[str] = ( + "A Kubernetes Cron Job Spec is a resource specification used to define a" + " scheduled job that runs at specified intervals in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "concurrency_policy": S("concurrencyPolicy"), "failed_jobs_history_limit": S("failedJobsHistoryLimit"), @@ -2233,7 +2607,10 @@ class KubernetesCronJobSpec: class KubernetesCronJob(KubernetesResource): kind: ClassVar[str] = "kubernetes_cron_job" kind_display: ClassVar[str] = "Kubernetes Cron Job" - kind_description: ClassVar[str] = "A Kubernetes Cron Job." + kind_description: ClassVar[str] = ( + "Kubernetes Cron Jobs are used to schedule and run jobs, which are tasks or" + " scripts, at specified intervals within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "cron_job_status": S("status") >> Bend(KubernetesCronJobStatus.mapping), "cron_job_spec": S("spec") >> Bend(KubernetesCronJobSpec.mapping), @@ -2248,7 +2625,10 @@ class KubernetesCronJob(KubernetesResource): class KubernetesJobStatusConditions: kind: ClassVar[str] = "kubernetes_job_status_conditions" kind_display: ClassVar[str] = "Kubernetes Job Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Job status conditions." + kind_description: ClassVar[str] = ( + "Conditions represent the current status of a Kubernetes job, such as whether" + " it is complete, succeeded, failed, or has an error." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_probe_time": S("lastProbeTime"), "last_transition_time": S("lastTransitionTime"), @@ -2269,7 +2649,10 @@ class KubernetesJobStatusConditions: class KubernetesJobStatus: kind: ClassVar[str] = "kubernetes_job_status" kind_display: ClassVar[str] = "Kubernetes Job Status" - kind_description: ClassVar[str] = "A Kubernetes Job status." + kind_description: ClassVar[str] = ( + "Kubernetes Job Status refers to the current state and progress of a job in a" + " Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "active": S("active"), "completed_indexes": S("completedIndexes"), @@ -2296,7 +2679,10 @@ class KubernetesJobStatus: class KubernetesJob(KubernetesResource): kind: ClassVar[str] = "kubernetes_job" kind_display: ClassVar[str] = "Kubernetes Job" - kind_description: ClassVar[str] = "A Kubernetes Job." + kind_description: ClassVar[str] = ( + "A Kubernetes Job is a resource that creates one or more pods and ensures" + " that a specified number of them successfully terminate." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "job_status": S("status") >> Bend(KubernetesJobStatus.mapping), "job_spec": S("spec") >> Bend(KubernetesJobSpec.mapping), @@ -2313,7 +2699,10 @@ class KubernetesJob(KubernetesResource): class KubernetesFlowSchemaStatusConditions: kind: ClassVar[str] = "kubernetes_flow_schema_status_conditions" kind_display: ClassVar[str] = "Kubernetes Flow Schema Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Flow Schema status conditions." + kind_description: ClassVar[str] = ( + "Flow Schema Status Conditions represent the current status of a flow schema" + " in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2332,7 +2721,10 @@ class KubernetesFlowSchemaStatusConditions: class KubernetesFlowSchemaStatus: kind: ClassVar[str] = "kubernetes_flow_schema_status" kind_display: ClassVar[str] = "Kubernetes Flow Schema Status" - kind_description: ClassVar[str] = "A Kubernetes Flow Schema status." + kind_description: ClassVar[str] = ( + "The status of a flow schema in Kubernetes, which is used to define network" + " traffic policies for specific workloads and namespaces." + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2344,6 +2736,12 @@ class KubernetesFlowSchemaStatus: @define(eq=False, slots=False) class KubernetesFlowSchema(KubernetesResource): kind: ClassVar[str] = "kubernetes_flow_schema" + kind_display: ClassVar[str] = "Kubernetes Flow Schema" + kind_description: ClassVar[str] = ( + "Kubernetes Flow Schema is a feature in Kubernetes that allows for network" + " traffic control and policy enforcement within a cluster, providing fine-" + " grained control over how traffic flows between pods and namespaces." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "flow_schema_status": S("status") >> Bend(KubernetesFlowSchemaStatus.mapping), } @@ -2353,6 +2751,11 @@ class KubernetesFlowSchema(KubernetesResource): @define(eq=False, slots=False) class KubernetesPriorityLevelConfigurationStatusConditions: kind: ClassVar[str] = "kubernetes_priority_level_configuration_status_conditions" + kind_display: ClassVar[str] = "Kubernetes Priority Level Configuration Status Conditions" + kind_description: ClassVar[str] = ( + "Priority Level Configuration Status Conditions represent different" + " conditions or states of priority level configuration in Kubernetes." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2371,7 +2774,11 @@ class KubernetesPriorityLevelConfigurationStatusConditions: class KubernetesPriorityLevelConfigurationStatus: kind: ClassVar[str] = "kubernetes_priority_level_configuration_status" kind_display: ClassVar[str] = "Kubernetes Priority Level Configuration Status" - kind_description: ClassVar[str] = "A Kubernetes Priority Level Configuration status." + kind_description: ClassVar[str] = ( + "Priority Level Configuration Status in Kubernetes is used to specify and" + " manage the priority and fairness of pods in a cluster based on different" + " priority levels." + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2384,7 +2791,11 @@ class KubernetesPriorityLevelConfigurationStatus: class KubernetesPriorityLevelConfiguration(KubernetesResource): kind: ClassVar[str] = "kubernetes_priority_level_configuration" kind_display: ClassVar[str] = "Kubernetes Priority Level Configuration" - kind_description: ClassVar[str] = "A Kubernetes Priority Level Configuration." + kind_description: ClassVar[str] = ( + "Kubernetes Priority Level Configuration is a feature that allows users to" + " define priority classes for pods, enabling effective prioritization and" + " scheduling of workloads based on their importance or criticality." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "priority_level_configuration_status": S("status") >> Bend(KubernetesPriorityLevelConfigurationStatus.mapping), } @@ -2394,8 +2805,13 @@ class KubernetesPriorityLevelConfiguration(KubernetesResource): @define(eq=False, slots=False) class KubernetesIngressStatusLoadbalancerIngressPorts: kind: ClassVar[str] = "kubernetes_ingress_status_loadbalancer_ingress_ports" - kind_display: ClassVar[str] = "Kubernetes Ingress Status Loadbalancer Ingress Ports" - kind_description: ClassVar[str] = "Kubernetes Ingress status load balancer ingress ports." + kind_display: ClassVar[str] = "Kubernetes Ingress Status LoadBalancer Ingress Ports" + kind_description: ClassVar[str] = ( + "This represents the ports on a load balancer that is associated with a" + " Kubernetes Ingress resource. Load balancer ingress ports are used to route" + " incoming traffic to the appropriate backend services within a Kubernetes" + " cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "error": S("error"), "port": S("port"), @@ -2409,8 +2825,11 @@ class KubernetesIngressStatusLoadbalancerIngressPorts: @define(eq=False, slots=False) class KubernetesIngressStatusLoadbalancerIngress: kind: ClassVar[str] = "kubernetes_ingress_status_loadbalancer_ingress" - kind_display: ClassVar[str] = "Kubernetes Ingress Status Loadbalancer Ingress" - kind_description: ClassVar[str] = "A Kubernetes Ingress status load balancer ingress." + kind_display: ClassVar[str] = "Kubernetes Ingress Status LoadBalancer Ingress" + kind_description: ClassVar[str] = ( + "The LoadBalancer Ingress status in Kubernetes Ingress represents the" + " externally-reachable IP addresses associated with the load balancer." + ) mapping: ClassVar[Dict[str, Bender]] = { "hostname": S("hostname"), "ip": S("ip"), @@ -2424,8 +2843,12 @@ class KubernetesIngressStatusLoadbalancerIngress: @define(eq=False, slots=False) class KubernetesIngressStatusLoadbalancer: kind: ClassVar[str] = "kubernetes_ingress_status_loadbalancer" - kind_display: ClassVar[str] = "Kubernetes Ingress Status Loadbalancer" - kind_description: ClassVar[str] = "A Kubernetes Ingress status load balancer." + kind_display: ClassVar[str] = "Kubernetes Ingress Status LoadBalancer" + kind_description: ClassVar[str] = ( + "Kubernetes Ingress Status LoadBalancer represents the status of a load" + " balancer associated with a Kubernetes Ingress. It provides information about" + " the load balancer's configuration and routing rules." + ) mapping: ClassVar[Dict[str, Bender]] = { "ingress": S("ingress", default=[]) >> ForallBend(KubernetesIngressStatusLoadbalancerIngress.mapping), } @@ -2436,7 +2859,11 @@ class KubernetesIngressStatusLoadbalancer: class KubernetesIngressStatus: kind: ClassVar[str] = "kubernetes_ingress_status" kind_display: ClassVar[str] = "Kubernetes Ingress Status" - kind_description: ClassVar[str] = "A Kubernetes Ingress status." + kind_description: ClassVar[str] = ( + "Kubernetes Ingress Status is a functionality in Kubernetes that provides" + " information about the status of the Ingress resource, which is used to" + " configure external access to services within a cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "load_balancer": S("loadBalancer") >> Bend(KubernetesIngressStatusLoadbalancer.mapping), } @@ -2447,7 +2874,10 @@ class KubernetesIngressStatus: class KubernetesIngressRule: kind: ClassVar[str] = "kubernetes_ingress_rule" kind_display: ClassVar[str] = "Kubernetes Ingress Rule" - kind_description: ClassVar[str] = "A Kubernetes Ingress rule." + kind_description: ClassVar[str] = ( + "A Kubernetes Ingress Rule defines how incoming traffic should be directed to" + " services within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "host": S("host"), "http": S("http"), @@ -2460,7 +2890,11 @@ class KubernetesIngressRule: class KubernetesIngressTLS: kind: ClassVar[str] = "kubernetes_ingress_tls" kind_display: ClassVar[str] = "Kubernetes Ingress TLS" - kind_description: ClassVar[str] = "A Kubernetes Ingress TLS." + kind_description: ClassVar[str] = ( + "Kubernetes Ingress TLS is a configuration that enables secure communication" + " over HTTPS between clients and services within the Kubernetes cluster, using" + " Transport Layer Security (TLS) encryption." + ) mapping: ClassVar[Dict[str, Bender]] = { "hosts": S("hosts", default=[]), "secret_name": S("secretName"), @@ -2473,7 +2907,10 @@ class KubernetesIngressTLS: class KubernetesIngressSpec: kind: ClassVar[str] = "kubernetes_ingress_spec" kind_display: ClassVar[str] = "Kubernetes Ingress Spec" - kind_description: ClassVar[str] = "A Kubernetes Ingress spec." + kind_description: ClassVar[str] = ( + "The Kubernetes Ingress Spec is a configuration that defines how external" + " traffic is routed to services within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "ingress_class_name": S("ingressClassName"), "rules": S("rules", default=[]) >> ForallBend(KubernetesIngressRule.mapping), @@ -2511,7 +2948,10 @@ def get_backend_service_names(json: Json) -> List[str]: class KubernetesIngress(KubernetesResource, BaseLoadBalancer): kind: ClassVar[str] = "kubernetes_ingress" kind_display: ClassVar[str] = "Kubernetes Ingress" - kind_description: ClassVar[str] = "A Kubernetes Ingress." + kind_description: ClassVar[str] = ( + "Kubernetes Ingress is an API object that manages external access to services" + " within a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "ingress_status": S("status") >> Bend(KubernetesIngressStatus.mapping), "public_ip_address": S("status", "loadBalancer", "ingress", default=[])[0]["ip"], @@ -2560,7 +3000,11 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class KubernetesIngressClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_ingress_class" kind_display: ClassVar[str] = "Kubernetes Ingress Class" - kind_description: ClassVar[str] = "A Kubernetes Ingress class." + kind_description: ClassVar[str] = ( + "Kubernetes Ingress Class is a resource that defines a class of Ingress" + " controllers in a cluster, providing a way to configure external access to" + " services within the cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | {} @@ -2568,7 +3012,10 @@ class KubernetesIngressClass(KubernetesResource): class KubernetesNetworkPolicyStatusConditions: kind: ClassVar[str] = "kubernetes_network_policy_status_conditions" kind_display: ClassVar[str] = "Kubernetes Network Policy Status Conditions" - kind_description: ClassVar[str] = "A Kubernetes Network Policy status conditions." + kind_description: ClassVar[str] = ( + "Kubernetes Network Policy Status Conditions represent the current state and" + " status of network policies in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2589,7 +3036,10 @@ class KubernetesNetworkPolicyStatusConditions: class KubernetesNetworkPolicyStatus: kind: ClassVar[str] = "kubernetes_network_policy_status" kind_display: ClassVar[str] = "Kubernetes Network Policy Status" - kind_description: ClassVar[str] = "A Kubernetes Network Policy status." + kind_description: ClassVar[str] = ( + "Kubernetes Network Policy Status represents the current status of network" + " policies in a Kubernetes cluster" + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2602,7 +3052,10 @@ class KubernetesNetworkPolicyStatus: class KubernetesNetworkPolicy(KubernetesResource): kind: ClassVar[str] = "kubernetes_network_policy" kind_display: ClassVar[str] = "Kubernetes Network Policy" - kind_description: ClassVar[str] = "A Kubernetes Network Policy." + kind_description: ClassVar[str] = ( + "Kubernetes Network Policy is used to define and enforce network rules and" + " policies for communication between pods in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "network_policy_status": S("status") >> Bend(KubernetesNetworkPolicyStatus.mapping), } @@ -2613,7 +3066,11 @@ class KubernetesNetworkPolicy(KubernetesResource): class KubernetesRuntimeClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_runtime_class" kind_display: ClassVar[str] = "Kubernetes Runtime Class" - kind_description: ClassVar[str] = "A Kubernetes Runtime class." + kind_description: ClassVar[str] = ( + "Kubernetes Runtime Class is a resource in Kubernetes that allows you to" + " specify different runtime configurations for pods, such as the container" + " runtime or resource limits." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | {} @@ -2621,7 +3078,12 @@ class KubernetesRuntimeClass(KubernetesResource): class KubernetesPodDisruptionBudgetStatusConditions: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_status_conditions" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Status Conditions" - kind_description: ClassVar[str] = "Kubernetes Pod Disruption Budget status conditions." + kind_description: ClassVar[str] = ( + "Pod Disruption Budget Status Conditions are conditions that represent the" + " status of a Pod Disruption Budget in a Kubernetes cluster. They provide" + " information about the conditions that must be met for the Pod Disruption" + " Budget to function properly." + ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2642,7 +3104,12 @@ class KubernetesPodDisruptionBudgetStatusConditions: class KubernetesPodDisruptionBudgetStatus: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_status" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Status" - kind_description: ClassVar[str] = "A Kubernetes Pod Disruption Budget status." + kind_description: ClassVar[str] = ( + "Pod Disruption Budget (PDB) is a Kubernetes resource that ensures a minimum" + " number of pods of a specific deployment or replica set are available during" + " maintenance or disruption events. This status resource provides information" + " about the current status of the PDB." + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -2667,7 +3134,11 @@ class KubernetesPodDisruptionBudgetStatus: class KubernetesPodDisruptionBudgetSpec: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_spec" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Spec" - kind_description: ClassVar[str] = "A Kubernetes Pod Disruption Budget spec." + kind_description: ClassVar[str] = ( + "A Pod Disruption Budget (PDB) is a Kubernetes resource that specifies the" + " minimum number or percentage of pods that must remain available during a" + " disruption or maintenance event." + ) mapping: ClassVar[Dict[str, Bender]] = { "max_unavailable": S("maxUnavailable"), "min_available": S("minAvailable"), @@ -2682,7 +3153,11 @@ class KubernetesPodDisruptionBudgetSpec: class KubernetesPodDisruptionBudget(KubernetesResource): kind: ClassVar[str] = "kubernetes_pod_disruption_budget" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget" - kind_description: ClassVar[str] = "A Kubernetes Pod Disruption Budget." + kind_description: ClassVar[str] = ( + "Pod Disruption Budget is a Kubernetes resource that specifies the minimum" + " number of pods that must be available and the maximum number of pods that" + " can be unavailable during a disruption." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "pod_disruption_budget_status": S("status") >> Bend(KubernetesPodDisruptionBudgetStatus.mapping), "pod_disruption_budget_spec": S("spec") >> Bend(KubernetesPodDisruptionBudgetSpec.mapping), @@ -2695,70 +3170,104 @@ class KubernetesPodDisruptionBudget(KubernetesResource): class KubernetesClusterRole(KubernetesResource): kind: ClassVar[str] = "kubernetes_cluster_role" kind_display: ClassVar[str] = "Kubernetes Cluster Role" - kind_description: ClassVar[str] = "A Kubernetes Cluster Role." + kind_description: ClassVar[str] = ( + "A Kubernetes Cluster Role is a set of permissions that defines what actions" + " a user or group can perform within a Kubernetes cluster." + ) @define(eq=False, slots=False) class KubernetesClusterRoleBinding(KubernetesResource): kind: ClassVar[str] = "kubernetes_cluster_role_binding" kind_display: ClassVar[str] = "Kubernetes Cluster Role Binding" - kind_description: ClassVar[str] = "A Kubernetes Cluster Role Binding." + kind_description: ClassVar[str] = ( + "Cluster Role Binding is a Kubernetes resource that grants permissions to a" + " Role or ClusterRole within a specific cluster." + ) @define(eq=False, slots=False) class KubernetesRole(KubernetesResource): kind: ClassVar[str] = "kubernetes_role" kind_display: ClassVar[str] = "Kubernetes Role" - kind_description: ClassVar[str] = "A Kubernetes Role." + kind_description: ClassVar[str] = ( + "A Kubernetes role is a set of permissions that define what actions a user or" + " group can perform on resources within a Kubernetes cluster." + ) @define(eq=False, slots=False) class KubernetesRoleBinding(KubernetesResource): kind: ClassVar[str] = "kubernetes_role_binding" kind_display: ClassVar[str] = "Kubernetes Role Binding" - kind_description: ClassVar[str] = "A Kubernetes Role Binding." + kind_description: ClassVar[str] = ( + "Kubernetes Role Binding is used to bind roles with groups or users, granting" + " them permission to access and manage resources within a Kubernetes cluster." + ) @define(eq=False, slots=False) class KubernetesPriorityClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_priority_class" kind_display: ClassVar[str] = "Kubernetes Priority Class" - kind_description: ClassVar[str] = "A Kubernetes Priority Class." + kind_description: ClassVar[str] = ( + "Kubernetes Priority Classes are used to assign priority to Pods in a" + " Kubernetes cluster, allowing system administrators to control scheduling" + " preferences and resource allocation for different workloads." + ) @define(eq=False, slots=False) class KubernetesCSIDriver(KubernetesResource): kind: ClassVar[str] = "kubernetes_csi_driver" kind_display: ClassVar[str] = "Kubernetes CSI Driver" - kind_description: ClassVar[str] = "A Kubernetes CSI Driver." + kind_description: ClassVar[str] = ( + "A Kubernetes Container Storage Interface (CSI) driver is a plugin that" + " allows external storage systems to be dynamically provisioned and managed by" + " Kubernetes." + ) @define(eq=False, slots=False) class KubernetesCSINode(KubernetesResource): kind: ClassVar[str] = "kubernetes_csi_node" kind_display: ClassVar[str] = "Kubernetes CSI Node" - kind_description: ClassVar[str] = "A Kubernetes CSI Node." + kind_description: ClassVar[str] = ( + "CSI (Container Storage Interface) node is a Kubernetes concept that allows" + " dynamic provisioning and management of volume resources for containers." + ) @define(eq=False, slots=False) class KubernetesCSIStorageCapacity(KubernetesResource): kind: ClassVar[str] = "kubernetes_csi_storage_capacity" kind_display: ClassVar[str] = "Kubernetes CSI Storage Capacity" - kind_description: ClassVar[str] = "Kubernetes CSI Storage Capacity." + kind_description: ClassVar[str] = ( + "Kubernetes CSI (Container Storage Interface) Storage Capacity refers to the" + " amount of storage available for use by containers in a Kubernetes cluster" + " using the CSI storage driver." + ) @define(eq=False, slots=False) class KubernetesStorageClass(KubernetesResource): kind: ClassVar[str] = "kubernetes_storage_class" kind_display: ClassVar[str] = "Kubernetes Storage Class" - kind_description: ClassVar[str] = "A Kubernetes Storage Class." + kind_description: ClassVar[str] = ( + "A Storage Class in Kubernetes provides a way to define different types of" + " storage with different performance characteristics for application pods." + ) @define(eq=False, slots=False) class KubernetesVolumeError: kind: ClassVar[str] = "kubernetes_volume_error" kind_display: ClassVar[str] = "Kubernetes Volume Error" - kind_description: ClassVar[str] = "A Kubernetes Volume error." + kind_description: ClassVar[str] = ( + "Kubernetes Volume Error refers to an issue or problem related to the use of" + " volumes in a Kubernetes cluster, which can affect the successful storage and" + " retrieval of data within the cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "message": S("message"), "time": S("time"), @@ -2771,7 +3280,11 @@ class KubernetesVolumeError: class KubernetesVolumeAttachmentStatus: kind: ClassVar[str] = "kubernetes_volume_attachment_status" kind_display: ClassVar[str] = "Kubernetes Volume Attachment Status" - kind_description: ClassVar[str] = "A Kubernetes Volume Attachment status." + kind_description: ClassVar[str] = ( + "Kubernetes Volume Attachment Status represents the status of the attachment" + " of a volume to a Kubernetes pod, indicating whether the attachment is" + " successful or in progress." + ) mapping: ClassVar[Dict[str, Bender]] = { "attach_error": S("attachError") >> Bend(KubernetesVolumeError.mapping), "attached": S("attached"), @@ -2788,7 +3301,11 @@ class KubernetesVolumeAttachmentStatus: class KubernetesVolumeAttachmentSpec: kind: ClassVar[str] = "kubernetes_volume_attachment_spec" kind_display: ClassVar[str] = "Kubernetes Volume Attachment Spec" - kind_description: ClassVar[str] = "A Kubernetes Volume Attachment spec." + kind_description: ClassVar[str] = ( + "Kubernetes Volume Attachment Spec is a specification used to attach a volume" + " to a Kubernetes cluster, allowing for persistent storage for containers in" + " the cluster." + ) mapping: ClassVar[Dict[str, Bender]] = { "attacher": S("attacher"), "node_name": S("nodeName"), @@ -2803,7 +3320,10 @@ class KubernetesVolumeAttachmentSpec: class KubernetesVolumeAttachment(KubernetesResource): kind: ClassVar[str] = "kubernetes_volume_attachment" kind_display: ClassVar[str] = "Kubernetes Volume Attachment" - kind_description: ClassVar[str] = "A Kubernetes Volume Attachment." + kind_description: ClassVar[str] = ( + "Kubernetes Volume Attachment is a resource that allows persistent volumes to" + " be attached to a pod in a Kubernetes cluster." + ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "volume_attachment_status": S("status") >> Bend(KubernetesVolumeAttachmentStatus.mapping), "volume_attachment_spec": S("spec") >> Bend(KubernetesVolumeAttachmentSpec.mapping), From 9c694ef36b64ed6d7eda7849e469053fd418cfc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Thu, 2 Nov 2023 00:01:48 +0100 Subject: [PATCH 15/27] Update vSphere linefeeds --- .../resoto_plugin_vsphere/resources.py | 55 +++++++++++++++---- 1 file changed, 45 insertions(+), 10 deletions(-) diff --git a/plugins/vsphere/resoto_plugin_vsphere/resources.py b/plugins/vsphere/resoto_plugin_vsphere/resources.py index 60a035e192..5889725a16 100644 --- a/plugins/vsphere/resoto_plugin_vsphere/resources.py +++ b/plugins/vsphere/resoto_plugin_vsphere/resources.py @@ -19,7 +19,10 @@ class VSphereHost(BaseAccount): kind: ClassVar[str] = "vsphere_host" kind_display: ClassVar[str] = "vSphere Host" - kind_description: ClassVar[str] = "vSphere Host is a physical server that runs the VMware vSphere hypervisor, allowing for virtualization and management of multiple virtual machines." + kind_description: ClassVar[str] = ( + "vSphere Host is a physical server that runs the VMware vSphere hypervisor," + " allowing for virtualization and management of multiple virtual machines." + ) def delete(self, graph: Graph) -> bool: return NotImplemented @@ -29,7 +32,10 @@ def delete(self, graph: Graph) -> bool: class VSphereDataCenter(BaseRegion): kind: ClassVar[str] = "vsphere_data_center" kind_display: ClassVar[str] = "vSphere Data Center" - kind_description: ClassVar[str] = "vSphere Data Center is a virtualization platform provided by VMware for managing and organizing virtual resources in a data center environment." + kind_description: ClassVar[str] = ( + "vSphere Data Center is a virtualization platform provided by VMware for" + " managing and organizing virtual resources in a data center environment." + ) def delete(self, graph: Graph) -> bool: return NotImplemented @@ -39,7 +45,10 @@ def delete(self, graph: Graph) -> bool: class VSphereCluster(BaseZone): kind: ClassVar[str] = "vsphere_cluster" kind_display: ClassVar[str] = "vSphere Cluster" - kind_description: ClassVar[str] = "A vSphere Cluster is a group of ESXi hosts that work together to provide resource pooling and high availability for virtual machines." + kind_description: ClassVar[str] = ( + "A vSphere Cluster is a group of ESXi hosts that work together to provide" + " resource pooling and high availability for virtual machines." + ) def delete(self, graph: Graph) -> bool: return NotImplemented @@ -49,7 +58,10 @@ def delete(self, graph: Graph) -> bool: class VSphereESXiHost(BaseResource): kind: ClassVar[str] = "vsphere_esxi_host" kind_display: ClassVar[str] = "vSphere ESXi Host" - kind_description: ClassVar[str] = "vSphere ESXi Host is a virtualization platform by VMware which allows users to run multiple virtual machines on a single physical server." + kind_description: ClassVar[str] = ( + "vSphere ESXi Host is a virtualization platform by VMware which allows users" + " to run multiple virtual machines on a single physical server." + ) def delete(self, graph: Graph) -> bool: return NotImplemented @@ -59,7 +71,10 @@ def delete(self, graph: Graph) -> bool: class VSphereDataStore(BaseResource): kind: ClassVar[str] = "vsphere_datastore" kind_display: ClassVar[str] = "vSphere Datastore" - kind_description: ClassVar[str] = "vSphere Datastore is a storage abstraction layer used in VMware vSphere to manage and store virtual machine files and templates." + kind_description: ClassVar[str] = ( + "vSphere Datastore is a storage abstraction layer used in VMware vSphere to" + " manage and store virtual machine files and templates." + ) def delete(self, graph: Graph) -> bool: return NotImplemented @@ -69,7 +84,12 @@ def delete(self, graph: Graph) -> bool: class VSphereDataStoreCluster(BaseResource): kind: ClassVar[str] = "vsphere_datastore_cluster" kind_display: ClassVar[str] = "vSphere Datastore Cluster" - kind_description: ClassVar[str] = "vSphere Datastore Cluster is a feature in VMware's virtualization platform that allows users to combine multiple storage resources into a single datastore cluster, providing advanced management and high availability for virtual machine storage." + kind_description: ClassVar[str] = ( + "vSphere Datastore Cluster is a feature in VMware's virtualization platform" + " that allows users to combine multiple storage resources into a single" + " datastore cluster, providing advanced management and high availability for" + " virtual machine storage." + ) def delete(self, graph: Graph) -> bool: return NotImplemented @@ -79,7 +99,11 @@ def delete(self, graph: Graph) -> bool: class VSphereResourcePool(BaseResource): kind: ClassVar[str] = "vsphere_resource_pool" kind_display: ClassVar[str] = "vSphere Resource Pool" - kind_description: ClassVar[str] = "vSphere Resource Pool is a feature in VMware's vSphere virtualization platform that allows for the efficient allocation and management of CPU, memory, and storage resources in a virtual datacenter." + kind_description: ClassVar[str] = ( + "vSphere Resource Pool is a feature in VMware's vSphere virtualization" + " platform that allows for the efficient allocation and management of CPU," + " memory, and storage resources in a virtual datacenter." + ) def delete(self, graph: Graph) -> bool: return NotImplemented @@ -89,7 +113,11 @@ def delete(self, graph: Graph) -> bool: class VSphereResource: kind: ClassVar[str] = "vsphere_resource" kind_display: ClassVar[str] = "vSphere Resource" - kind_description: ClassVar[str] = "vSphere is a virtualization platform by VMware that allows users to create, manage, and run virtual machines and other virtual infrastructure components." + kind_description: ClassVar[str] = ( + "vSphere is a virtualization platform by VMware that allows users to create," + " manage, and run virtual machines and other virtual infrastructure" + " components." + ) def _vsphere_client(self) -> VSphereClient: return get_vsphere_client() @@ -99,7 +127,10 @@ def _vsphere_client(self) -> VSphereClient: class VSphereInstance(BaseInstance, VSphereResource): kind: ClassVar[str] = "vsphere_instance" kind_display: ClassVar[str] = "vSphere Instance" - kind_description: ClassVar[str] = "vSphere Instances are virtual servers in VMware's cloud infrastructure, enabling users to run applications on VMware's virtualization platform." + kind_description: ClassVar[str] = ( + "vSphere Instances are virtual servers in VMware's cloud infrastructure," + " enabling users to run applications on VMware's virtualization platform." + ) def _vm(self): return self._vsphere_client().get_object([vim.VirtualMachine], self.name) @@ -136,7 +167,11 @@ def delete_tag(self, key) -> bool: class VSphereTemplate(BaseResource, VSphereResource): kind: ClassVar[str] = "vsphere_template" kind_display: ClassVar[str] = "vSphere Template" - kind_description: ClassVar[str] = "vSphere templates are pre-configured virtual machine images that can be used to deploy and scale virtual infrastructure within the VMware vSphere platform." + kind_description: ClassVar[str] = ( + "vSphere templates are pre-configured virtual machine images that can be used" + " to deploy and scale virtual infrastructure within the VMware vSphere" + " platform." + ) def _get_default_resource_pool(self) -> vim.ResourcePool: return self._vsphere_client().get_object([vim.ResourcePool], "Resources") From 2b0eb4dc5173ca7f4a0d26ef4ecb967a0bb88d7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Thu, 2 Nov 2023 00:04:31 +0100 Subject: [PATCH 16/27] Remove comment --- plugins/k8s/resoto_plugin_k8s/resources.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/plugins/k8s/resoto_plugin_k8s/resources.py b/plugins/k8s/resoto_plugin_k8s/resources.py index c76dc705ea..0629be26e3 100644 --- a/plugins/k8s/resoto_plugin_k8s/resources.py +++ b/plugins/k8s/resoto_plugin_k8s/resources.py @@ -100,9 +100,6 @@ def connect_volumes(self, from_node: KubernetesResource, volumes: List[Json]) -> self.connect_volumes(from_node, sources) -# region node - - @define(eq=False, slots=False) class KubernetesNodeStatusAddresses: kind: ClassVar[str] = "kubernetes_node_status_addresses" From 64178bcbcb8694c1561db03aac5257fb4a1152da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Thu, 2 Nov 2023 00:07:01 +0100 Subject: [PATCH 17/27] Update DigitalOcean linefeeds --- .../resoto_plugin_digitalocean/resources.py | 92 +++++++++++++++---- 1 file changed, 75 insertions(+), 17 deletions(-) diff --git a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py index 0e6a6bfecd..af0edf99d3 100644 --- a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py +++ b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py @@ -45,7 +45,11 @@ class DigitalOceanResource(BaseResource): kind: ClassVar[str] = "digitalocean_resource" kind_display: ClassVar[str] = "DigitalOcean Resource" - kind_description: ClassVar[str] = "" + kind_description: ClassVar[str] = ( + "DigitalOcean Resources are virtual servers provided by DigitalOcean," + " allowing users to deploy and manage scalable cloud infrastructure on their" + " platform." + ) urn: str = "" def delete_uri_path(self) -> Optional[str]: @@ -86,7 +90,10 @@ class DigitalOceanTeam(DigitalOceanResource, BaseAccount): kind: ClassVar[str] = "digitalocean_team" kind_display: ClassVar[str] = "DigitalOcean Team" - kind_description: ClassVar[str] = "A team is a group of users within DigitalOcean that can collaborate on projects and share resources." + kind_description: ClassVar[str] = ( + "A team is a group of users within DigitalOcean that can collaborate on" + " projects and share resources." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -126,7 +133,10 @@ class DigitalOceanRegion(DigitalOceanResource, BaseRegion): kind: ClassVar[str] = "digitalocean_region" kind_display: ClassVar[str] = "DigitalOcean Region" - kind_description: ClassVar[str] = "A region in DigitalOcean's cloud infrastructure where resources such as droplets, volumes, and networks can be deployed." + kind_description: ClassVar[str] = ( + "A region in DigitalOcean's cloud infrastructure where resources such as" + " droplets, volumes, and networks can be deployed." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -158,7 +168,10 @@ class DigitalOceanProject(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_project" kind_display: ClassVar[str] = "DigitalOcean Project" - kind_description: ClassVar[str] = "A DigitalOcean Project is a flexible way to organize and manage resources in the DigitalOcean cloud platform." + kind_description: ClassVar[str] = ( + "A DigitalOcean Project is a flexible way to organize and manage resources in" + " the DigitalOcean cloud platform." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -199,7 +212,11 @@ def delete_uri_path(self) -> Optional[str]: class DigitalOceanDropletSize(DigitalOceanResource, BaseInstanceType): kind: ClassVar[str] = "digitalocean_droplet_size" kind_display: ClassVar[str] = "DigitalOcean Droplet Size" - kind_description: ClassVar[str] = "Droplet Sizes are different configurations of virtual private servers (Droplets) provided by DigitalOcean with varying amounts of CPU, memory, and storage." + kind_description: ClassVar[str] = ( + "Droplet Sizes are different configurations of virtual private servers" + " (Droplets) provided by DigitalOcean with varying amounts of CPU, memory, and" + " storage." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -220,7 +237,10 @@ class DigitalOceanDroplet(DigitalOceanResource, BaseInstance): kind: ClassVar[str] = "digitalocean_droplet" kind_display: ClassVar[str] = "DigitalOcean Droplet" - kind_description: ClassVar[str] = "A DigitalOcean Droplet is a virtual machine instance that can be provisioned and managed on the DigitalOcean cloud platform." + kind_description: ClassVar[str] = ( + "A DigitalOcean Droplet is a virtual machine instance that can be provisioned" + " and managed on the DigitalOcean cloud platform." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -253,7 +273,11 @@ class DigitalOceanDropletNeighborhood(DigitalOceanResource, PhantomBaseResource) kind: ClassVar[str] = "digitalocean_droplet_neighborhood" kind_display: ClassVar[str] = "DigitalOcean Droplet Neighborhood" - kind_description: ClassVar[str] = "Droplet Neighborhood is a feature in DigitalOcean that allows users to deploy Droplets (virtual machines) in the same datacenter to achieve low latency communication and high reliability." + kind_description: ClassVar[str] = ( + "Droplet Neighborhood is a feature in DigitalOcean that allows users to" + " deploy Droplets (virtual machines) in the same datacenter to achieve low" + " latency communication and high reliability." + ) droplets: Optional[List[str]] = None @@ -263,7 +287,10 @@ class DigitalOceanKubernetesCluster(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_kubernetes_cluster" kind_display: ClassVar[str] = "DigitalOcean Kubernetes Cluster" - kind_description: ClassVar[str] = "A Kubernetes cluster hosted on the DigitalOcean cloud platform, providing managed container orchestration and scalability." + kind_description: ClassVar[str] = ( + "A Kubernetes cluster hosted on the DigitalOcean cloud platform, providing" + " managed container orchestration and scalability." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -290,7 +317,10 @@ def delete_uri_path(self) -> Optional[str]: class DigitalOceanVolume(DigitalOceanResource, BaseVolume): kind: ClassVar[str] = "digitalocean_volume" kind_display: ClassVar[str] = "DigitalOcean Volume" - kind_description: ClassVar[str] = "DigitalOcean Volume is a block storage service provided by DigitalOcean that allows users to attach additional storage to their Droplets." + kind_description: ClassVar[str] = ( + "DigitalOcean Volume is a block storage service provided by DigitalOcean that" + " allows users to attach additional storage to their Droplets." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_snapshot"], @@ -324,7 +354,10 @@ def tag_resource_name(self) -> Optional[str]: class DigitalOceanDatabase(DigitalOceanResource, BaseDatabase): kind: ClassVar[str] = "digitalocean_database" kind_display: ClassVar[str] = "DigitalOcean Database" - kind_description: ClassVar[str] = "A database service provided by DigitalOcean that allows users to store and manage their data." + kind_description: ClassVar[str] = ( + "A database service provided by DigitalOcean that allows users to store and" + " manage their data." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_app"], @@ -348,7 +381,11 @@ class DigitalOceanVPC(DigitalOceanResource, BaseNetwork): kind: ClassVar[str] = "digitalocean_vpc" kind_display: ClassVar[str] = "DigitalOcean VPC" - kind_description: ClassVar[str] = "A Virtual Private Cloud (VPC) is a virtual network dedicated to your DigitalOcean account. It allows you to isolate your resources and securely connect them to other resources within your account." + kind_description: ClassVar[str] = ( + "A Virtual Private Cloud (VPC) is a virtual network dedicated to your" + " DigitalOcean account. It allows you to isolate your resources and securely" + " connect them to other resources within your account." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -379,7 +416,11 @@ class DigitalOceanSnapshot(DigitalOceanResource, BaseSnapshot): kind: ClassVar[str] = "digitalocean_snapshot" kind_display: ClassVar[str] = "DigitalOcean Snapshot" - kind_description: ClassVar[str] = "DigitalOcean Snapshots are point-in-time copies of your Droplets (virtual machines) that can be used for creating new Droplets or restoring existing ones." + kind_description: ClassVar[str] = ( + "DigitalOcean Snapshots are point-in-time copies of your Droplets (virtual" + " machines) that can be used for creating new Droplets or restoring existing" + " ones." + ) snapshot_size_gigabytes: Optional[int] = None resource_id: Optional[str] = None resource_type: Optional[str] = None @@ -397,7 +438,11 @@ class DigitalOceanLoadBalancer(DigitalOceanResource, BaseLoadBalancer): kind: ClassVar[str] = "digitalocean_load_balancer" kind_display: ClassVar[str] = "DigitalOcean Load Balancer" - kind_description: ClassVar[str] = "A load balancer service provided by DigitalOcean that distributes incoming network traffic across multiple servers to ensure high availability and reliability." + kind_description: ClassVar[str] = ( + "A load balancer service provided by DigitalOcean that distributes incoming" + " network traffic across multiple servers to ensure high availability and" + " reliability." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -422,7 +467,11 @@ class DigitalOceanFloatingIP(DigitalOceanResource, BaseIPAddress): kind: ClassVar[str] = "digitalocean_floating_ip" kind_display: ClassVar[str] = "DigitalOcean Floating IP" - kind_description: ClassVar[str] = "A DigitalOcean Floating IP is a static IP address that can be easily reassigned between DigitalOcean Droplets, providing flexibility and high availability for your applications." + kind_description: ClassVar[str] = ( + "A DigitalOcean Floating IP is a static IP address that can be easily" + " reassigned between DigitalOcean Droplets, providing flexibility and high" + " availability for your applications." + ) is_locked: Optional[bool] = None @@ -449,7 +498,10 @@ class DigitalOceanImage(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_image" kind_display: ClassVar[str] = "DigitalOcean Image" - kind_description: ClassVar[str] = "A DigitalOcean Image is a template for creating virtual machines (known as Droplets) on the DigitalOcean cloud platform." + kind_description: ClassVar[str] = ( + "A DigitalOcean Image is a template for creating virtual machines (known as" + " Droplets) on the DigitalOcean cloud platform." + ) reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_droplet"], @@ -479,7 +531,10 @@ class DigitalOceanSpace(DigitalOceanResource, BaseBucket): kind: ClassVar[str] = "digitalocean_space" kind_display: ClassVar[str] = "DigitalOcean Space" - kind_description: ClassVar[str] = "DigitalOcean Spaces is an object storage service that allows you to store and serve large amounts of unstructured data." + kind_description: ClassVar[str] = ( + "DigitalOcean Spaces is an object storage service that allows you to store" + " and serve large amounts of unstructured data." + ) def delete(self, graph: Graph) -> bool: log.debug(f"Deleting space {self.id} in account {self.account(graph).id} region {self.region(graph).id}") @@ -502,7 +557,10 @@ class DigitalOceanApp(DigitalOceanResource, BaseResource): kind: ClassVar[str] = "digitalocean_app" kind_display: ClassVar[str] = "DigitalOcean App" - kind_description: ClassVar[str] = "DigitalOcean App is a platform that allows users to deploy and manage applications on DigitalOcean's cloud infrastructure." + kind_description: ClassVar[str] = ( + "DigitalOcean App is a platform that allows users to deploy and manage" + " applications on DigitalOcean's cloud infrastructure." + ) tier_slug: Optional[str] = None default_ingress: Optional[str] = None From 91c2756163d2704f4e620a081f1a3d9df71f9134 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Thu, 2 Nov 2023 00:11:54 +0100 Subject: [PATCH 18/27] Let black mess the strings up --- .../aws/resoto_plugin_aws/resource/athena.py | 7 +- .../resoto_plugin_aws/resource/cloudfront.py | 7 +- .../resoto_plugin_aws/resource/cloudwatch.py | 7 +- .../resoto_plugin_aws/resource/dynamodb.py | 7 +- plugins/aws/resoto_plugin_aws/resource/ec2.py | 49 ++++----- plugins/aws/resoto_plugin_aws/resource/ecs.py | 7 +- plugins/aws/resoto_plugin_aws/resource/iam.py | 7 +- .../aws/resoto_plugin_aws/resource/lambda_.py | 7 +- plugins/aws/resoto_plugin_aws/resource/rds.py | 14 ++- .../resoto_plugin_aws/resource/redshift.py | 23 ++-- plugins/aws/resoto_plugin_aws/resource/s3.py | 7 +- .../resoto_plugin_aws/resource/sagemaker.py | 14 ++- .../resoto_plugin_digitalocean/resources.py | 14 ++- .../resoto_plugin_gcp/resources/billing.py | 4 +- .../resoto_plugin_gcp/resources/compute.py | 47 ++++---- .../resoto_plugin_gcp/resources/container.py | 7 +- .../resoto_plugin_gcp/resources/sqladmin.py | 21 ++-- plugins/k8s/resoto_plugin_k8s/resources.py | 100 +++++++----------- 18 files changed, 144 insertions(+), 205 deletions(-) diff --git a/plugins/aws/resoto_plugin_aws/resource/athena.py b/plugins/aws/resoto_plugin_aws/resource/athena.py index 8aff2e50b7..2cf52ddcfe 100644 --- a/plugins/aws/resoto_plugin_aws/resource/athena.py +++ b/plugins/aws/resoto_plugin_aws/resource/athena.py @@ -92,10 +92,9 @@ class AwsAthenaWorkGroupConfiguration: class AwsAthenaWorkGroup(AwsResource): kind: ClassVar[str] = "aws_athena_work_group" kind_display: ClassVar[str] = "AWS Athena Work Group" - kind_description: ClassVar[str] = ( - "Athena Work Group is a logical container for AWS Glue Data Catalog metadata" - " and query statistics." - ) + kind_description: ClassVar[ + str + ] = "Athena Work Group is a logical container for AWS Glue Data Catalog metadata and query statistics." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-work-groups", "WorkGroups") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py index 2c0f59cff5..3d1c11a658 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py @@ -680,10 +680,9 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontPublicKey(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_public_key" kind_display: ClassVar[str] = "AWS CloudFront Public Key" - kind_description: ClassVar[str] = ( - "AWS CloudFront Public Key is a public key used for encrypting content stored" - " on AWS CloudFront." - ) + kind_description: ClassVar[ + str + ] = "AWS CloudFront Public Key is a public key used for encrypting content stored on AWS CloudFront." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-public-keys", "PublicKeyList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py b/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py index 3970aac7ce..2087522972 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py @@ -166,10 +166,9 @@ class AwsCloudwatchMetricDataQuery: class AwsCloudwatchAlarm(CloudwatchTaggable, AwsResource): kind: ClassVar[str] = "aws_cloudwatch_alarm" kind_display: ClassVar[str] = "AWS CloudWatch Alarm" - kind_description: ClassVar[str] = ( - "CloudWatch Alarms allow you to monitor metrics and send notifications based" - " on the thresholds you set." - ) + kind_description: ClassVar[ + str + ] = "CloudWatch Alarms allow you to monitor metrics and send notifications based on the thresholds you set." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-alarms", "MetricAlarms") reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_ec2_instance"], "delete": ["aws_ec2_instance"]}, diff --git a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py index a7361fdc8b..cef7cf6e7b 100644 --- a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py +++ b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py @@ -49,10 +49,9 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsDynamoDbAttributeDefinition: kind: ClassVar[str] = "aws_dynamo_db_attribute_definition" kind_display: ClassVar[str] = "AWS DynamoDB Attribute Definition" - kind_description: ClassVar[str] = ( - "An attribute definition in AWS DynamoDB describes the data type and name of" - " an attribute for a table." - ) + kind_description: ClassVar[ + str + ] = "An attribute definition in AWS DynamoDB describes the data type and name of an attribute for a table." mapping: ClassVar[Dict[str, Bender]] = {"attribute_name": S("AttributeName"), "attribute_type": S("AttributeType")} attribute_name: Optional[str] = field(default=None) attribute_type: Optional[str] = field(default=None) diff --git a/plugins/aws/resoto_plugin_aws/resource/ec2.py b/plugins/aws/resoto_plugin_aws/resource/ec2.py index bf83eac9b8..bbaf6f8013 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ec2.py +++ b/plugins/aws/resoto_plugin_aws/resource/ec2.py @@ -100,10 +100,9 @@ class AwsEc2ProcessorInfo: class AwsEc2VCpuInfo: kind: ClassVar[str] = "aws_ec2_v_cpu_info" kind_display: ClassVar[str] = "AWS EC2 vCPU Info" - kind_description: ClassVar[str] = ( - "EC2 vCPU Info provides detailed information about the virtual CPU" - " capabilities of Amazon EC2 instances." - ) + kind_description: ClassVar[ + str + ] = "EC2 vCPU Info provides detailed information about the virtual CPU capabilities of Amazon EC2 instances." mapping: ClassVar[Dict[str, Bender]] = { "default_v_cpus": S("DefaultVCpus"), "default_cores": S("DefaultCores"), @@ -221,10 +220,9 @@ class AwsEc2NetworkCardInfo: class AwsEc2NetworkInfo: kind: ClassVar[str] = "aws_ec2_network_info" kind_display: ClassVar[str] = "AWS EC2 Network Info" - kind_description: ClassVar[str] = ( - "EC2 Network Info provides information about the networking details of EC2" - " instances in Amazon's cloud." - ) + kind_description: ClassVar[ + str + ] = "EC2 Network Info provides information about the networking details of EC2 instances in Amazon's cloud." mapping: ClassVar[Dict[str, Bender]] = { "network_performance": S("NetworkPerformance"), "maximum_network_interfaces": S("MaximumNetworkInterfaces"), @@ -777,10 +775,9 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2KeyPair(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_keypair" kind_display: ClassVar[str] = "AWS EC2 Keypair" - kind_description: ClassVar[str] = ( - "EC2 Keypairs are SSH key pairs used to securely connect to EC2 instances in" - " Amazon's cloud." - ) + kind_description: ClassVar[ + str + ] = "EC2 Keypairs are SSH key pairs used to securely connect to EC2 instances in Amazon's cloud." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-key-pairs", "KeyPairs") reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -999,10 +996,9 @@ class AwsEc2InstanceNetworkInterfaceAssociation: class AwsEc2InstanceNetworkInterfaceAttachment: kind: ClassVar[str] = "aws_ec2_instance_network_interface_attachment" kind_display: ClassVar[str] = "AWS EC2 Instance Network Interface Attachment" - kind_description: ClassVar[str] = ( - "An attachment of a network interface to an EC2 instance in the Amazon Web" - " Services cloud." - ) + kind_description: ClassVar[ + str + ] = "An attachment of a network interface to an EC2 instance in the Amazon Web Services cloud." mapping: ClassVar[Dict[str, Bender]] = { "attach_time": S("AttachTime"), "attachment_id": S("AttachmentId"), @@ -1594,10 +1590,9 @@ class AwsEc2IcmpTypeCode: class AwsEc2PortRange: kind: ClassVar[str] = "aws_ec2_port_range" kind_display: ClassVar[str] = "AWS EC2 Port Range" - kind_description: ClassVar[str] = ( - "A range of port numbers that can be used to control inbound and outbound" - " traffic for an AWS EC2 instance." - ) + kind_description: ClassVar[ + str + ] = "A range of port numbers that can be used to control inbound and outbound traffic for an AWS EC2 instance." mapping: ClassVar[Dict[str, Bender]] = {"from_range": S("From"), "to_range": S("To")} from_range: Optional[int] = field(default=None) to_range: Optional[int] = field(default=None) @@ -2342,10 +2337,9 @@ class AwsEc2SubnetIpv6CidrBlockAssociation: class AwsEc2PrivateDnsNameOptionsOnLaunch: kind: ClassVar[str] = "aws_ec2_private_dns_name_options_on_launch" kind_display: ClassVar[str] = "AWS EC2 Private DNS Name Options on Launch" - kind_description: ClassVar[str] = ( - "The option to enable or disable assigning a private DNS name to an Amazon" - " EC2 instance on launch." - ) + kind_description: ClassVar[ + str + ] = "The option to enable or disable assigning a private DNS name to an Amazon EC2 instance on launch." mapping: ClassVar[Dict[str, Bender]] = { "hostname_type": S("HostnameType"), "enable_resource_name_dns_a_record": S("EnableResourceNameDnsARecord"), @@ -3034,10 +3028,9 @@ class AwsEc2HostInstance: class AwsEc2Host(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_host" kind_display: ClassVar[str] = "AWS EC2 Host" - kind_description: ClassVar[str] = ( - "EC2 Hosts are physical servers in Amazon's cloud that are used to run EC2" - " instances." - ) + kind_description: ClassVar[ + str + ] = "EC2 Hosts are physical servers in Amazon's cloud that are used to run EC2 instances." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-hosts", "Hosts") reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_ec2_instance"], "delete": ["aws_ec2_instance"]} diff --git a/plugins/aws/resoto_plugin_aws/resource/ecs.py b/plugins/aws/resoto_plugin_aws/resource/ecs.py index 68dd4df975..2faee346be 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ecs.py +++ b/plugins/aws/resoto_plugin_aws/resource/ecs.py @@ -395,10 +395,9 @@ class AwsEcsContainerOverride: class AwsEcsTaskOverride: kind: ClassVar[str] = "aws_ecs_task_override" kind_display: ClassVar[str] = "AWS ECS Task Override" - kind_description: ClassVar[str] = ( - "ECS Task Overrides allow you to change the default values of a task" - " definition when running an ECS task." - ) + kind_description: ClassVar[ + str + ] = "ECS Task Overrides allow you to change the default values of a task definition when running an ECS task." mapping: ClassVar[Dict[str, Bender]] = { "container_overrides": S("containerOverrides", default=[]) >> ForallBend(AwsEcsContainerOverride.mapping), "cpu": S("cpu"), diff --git a/plugins/aws/resoto_plugin_aws/resource/iam.py b/plugins/aws/resoto_plugin_aws/resource/iam.py index a82b8ae81e..6ad054af10 100644 --- a/plugins/aws/resoto_plugin_aws/resource/iam.py +++ b/plugins/aws/resoto_plugin_aws/resource/iam.py @@ -483,10 +483,9 @@ class AwsIamAccessKey(AwsResource, BaseAccessKey): # Note: this resource is collected via AwsIamUser.collect. kind: ClassVar[str] = "aws_iam_access_key" kind_display: ClassVar[str] = "AWS IAM Access Key" - kind_description: ClassVar[str] = ( - "An AWS IAM Access Key is used to securely access AWS services and resources" - " using API operations." - ) + kind_description: ClassVar[ + str + ] = "An AWS IAM Access Key is used to securely access AWS services and resources using API operations." mapping: ClassVar[Dict[str, Bender]] = { "id": S("AccessKeyId"), "tags": S("Tags", default=[]) >> ToDict(), diff --git a/plugins/aws/resoto_plugin_aws/resource/lambda_.py b/plugins/aws/resoto_plugin_aws/resource/lambda_.py index 3c51fc5395..270acde1fa 100644 --- a/plugins/aws/resoto_plugin_aws/resource/lambda_.py +++ b/plugins/aws/resoto_plugin_aws/resource/lambda_.py @@ -70,10 +70,9 @@ class AwsLambdaPolicy: class AwsLambdaEnvironmentError: kind: ClassVar[str] = "aws_lambda_environment_error" kind_display: ClassVar[str] = "AWS Lambda Environment Error" - kind_description: ClassVar[str] = ( - "An error occurring in the environment setup or configuration of an AWS" - " Lambda function." - ) + kind_description: ClassVar[ + str + ] = "An error occurring in the environment setup or configuration of an AWS Lambda function." mapping: ClassVar[Dict[str, Bender]] = {"error_code": S("ErrorCode"), "message": S("Message")} error_code: Optional[str] = field(default=None) message: Optional[str] = field(default=None) diff --git a/plugins/aws/resoto_plugin_aws/resource/rds.py b/plugins/aws/resoto_plugin_aws/resource/rds.py index adcc0de6fe..5928ef2bb5 100644 --- a/plugins/aws/resoto_plugin_aws/resource/rds.py +++ b/plugins/aws/resoto_plugin_aws/resource/rds.py @@ -141,10 +141,9 @@ class AwsRdsSubnet: class AwsRdsDBSubnetGroup: kind: ClassVar[str] = "aws_rds_db_subnet_group" kind_display: ClassVar[str] = "AWS RDS DB Subnet Group" - kind_description: ClassVar[str] = ( - "DB Subnet Groups are used to specify the VPC subnets where Amazon RDS DB" - " instances are created." - ) + kind_description: ClassVar[ + str + ] = "DB Subnet Groups are used to specify the VPC subnets where Amazon RDS DB instances are created." mapping: ClassVar[Dict[str, Bender]] = { "db_subnet_group_name": S("DBSubnetGroupName"), "db_subnet_group_description": S("DBSubnetGroupDescription"), @@ -302,10 +301,9 @@ class AwsRdsDomainMembership: class AwsRdsDBRole: kind: ClassVar[str] = "aws_rds_db_role" kind_display: ClassVar[str] = "AWS RDS DB Role" - kind_description: ClassVar[str] = ( - "RDS DB Roles are a way to manage user access to Amazon RDS database" - " instances using IAM." - ) + kind_description: ClassVar[ + str + ] = "RDS DB Roles are a way to manage user access to Amazon RDS database instances using IAM." mapping: ClassVar[Dict[str, Bender]] = { "role_arn": S("RoleArn"), "feature_name": S("FeatureName"), diff --git a/plugins/aws/resoto_plugin_aws/resource/redshift.py b/plugins/aws/resoto_plugin_aws/resource/redshift.py index 48e990f274..151a9577d4 100644 --- a/plugins/aws/resoto_plugin_aws/resource/redshift.py +++ b/plugins/aws/resoto_plugin_aws/resource/redshift.py @@ -253,10 +253,7 @@ class AwsRedshiftHsmStatus: class AwsRedshiftClusterSnapshotCopyStatus: kind: ClassVar[str] = "aws_redshift_cluster_snapshot_copy_status" kind_display: ClassVar[str] = "AWS Redshift Cluster Snapshot Copy Status" - kind_description: ClassVar[str] = ( - "The status of the copy operation for a snapshot of an Amazon Redshift" - " cluster." - ) + kind_description: ClassVar[str] = "The status of the copy operation for a snapshot of an Amazon Redshift cluster." mapping: ClassVar[Dict[str, Bender]] = { "destination_region": S("DestinationRegion"), "retention_period": S("RetentionPeriod"), @@ -292,9 +289,7 @@ class AwsRedshiftClusterNode: class AwsRedshiftElasticIpStatus: kind: ClassVar[str] = "aws_redshift_elastic_ip_status" kind_display: ClassVar[str] = "AWS Redshift Elastic IP Status" - kind_description: ClassVar[str] = ( - "The status of an Elastic IP assigned to an Amazon Redshift cluster." - ) + kind_description: ClassVar[str] = "The status of an Elastic IP assigned to an Amazon Redshift cluster." mapping: ClassVar[Dict[str, Bender]] = {"elastic_ip": S("ElasticIp"), "status": S("Status")} elastic_ip: Optional[str] = field(default=None) status: Optional[str] = field(default=None) @@ -304,10 +299,9 @@ class AwsRedshiftElasticIpStatus: class AwsRedshiftClusterIamRole: kind: ClassVar[str] = "aws_redshift_cluster_iam_role" kind_display: ClassVar[str] = "AWS Redshift Cluster IAM Role" - kind_description: ClassVar[str] = ( - "An IAM role that is used to grant permissions to an Amazon Redshift cluster" - " to access other AWS services." - ) + kind_description: ClassVar[ + str + ] = "An IAM role that is used to grant permissions to an Amazon Redshift cluster to access other AWS services." mapping: ClassVar[Dict[str, Bender]] = {"iam_role_arn": S("IamRoleArn"), "apply_status": S("ApplyStatus")} iam_role_arn: Optional[str] = field(default=None) apply_status: Optional[str] = field(default=None) @@ -400,10 +394,9 @@ class AwsRedshiftReservedNodeExchangeStatus: class AwsRedshiftCluster(AwsResource): kind: ClassVar[str] = "aws_redshift_cluster" kind_display: ClassVar[str] = "AWS Redshift Cluster" - kind_description: ClassVar[str] = ( - "Redshift Cluster is a fully managed, petabyte-scale data warehouse service" - " provided by AWS." - ) + kind_description: ClassVar[ + str + ] = "Redshift Cluster is a fully managed, petabyte-scale data warehouse service provided by AWS." api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-clusters", "Clusters") reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/resoto_plugin_aws/resource/s3.py b/plugins/aws/resoto_plugin_aws/resource/s3.py index db44887758..255f6c6e01 100644 --- a/plugins/aws/resoto_plugin_aws/resource/s3.py +++ b/plugins/aws/resoto_plugin_aws/resource/s3.py @@ -73,10 +73,9 @@ class AwsS3Owner: class AwsS3Grantee: kind: ClassVar[str] = "aws_s3_grantee" kind_display: ClassVar[str] = "AWS S3 Grantee" - kind_description: ClassVar[str] = ( - "AWS S3 Grantees are entities that have been given permission to access" - " objects in an S3 bucket." - ) + kind_description: ClassVar[ + str + ] = "AWS S3 Grantees are entities that have been given permission to access objects in an S3 bucket." mapping: ClassVar[Dict[str, Bender]] = { "display_name": S("DisplayName"), "email_address": S("EmailAddress"), diff --git a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py index e5a77a6890..b096fd4870 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py +++ b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py @@ -1790,10 +1790,9 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsSagemakerDeployedImage: kind: ClassVar[str] = "aws_sagemaker_deployed_image" kind_display: ClassVar[str] = "AWS SageMaker Deployed Image" - kind_description: ClassVar[str] = ( - "An image that has been deployed and is used for running machine learning" - " models on Amazon SageMaker." - ) + kind_description: ClassVar[ + str + ] = "An image that has been deployed and is used for running machine learning models on Amazon SageMaker." mapping: ClassVar[Dict[str, Bender]] = { "specified_image": S("SpecifiedImage"), "resolved_image": S("ResolvedImage"), @@ -2851,10 +2850,9 @@ class AwsSagemakerAutoMLJobConfig: class AwsSagemakerFinalAutoMLJobObjectiveMetric: kind: ClassVar[str] = "aws_sagemaker_final_auto_ml_job_objective_metric" kind_display: ClassVar[str] = "AWS SageMaker Final AutoML Job Objective Metric" - kind_description: ClassVar[str] = ( - "The final objective metric value calculated at the end of an Amazon" - " SageMaker AutoML job." - ) + kind_description: ClassVar[ + str + ] = "The final objective metric value calculated at the end of an Amazon SageMaker AutoML job." mapping: ClassVar[Dict[str, Bender]] = {"type": S("Type"), "metric_name": S("MetricName"), "value": S("Value")} type: Optional[str] = field(default=None) metric_name: Optional[str] = field(default=None) diff --git a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py index af0edf99d3..e763b70292 100644 --- a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py +++ b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py @@ -90,10 +90,9 @@ class DigitalOceanTeam(DigitalOceanResource, BaseAccount): kind: ClassVar[str] = "digitalocean_team" kind_display: ClassVar[str] = "DigitalOcean Team" - kind_description: ClassVar[str] = ( - "A team is a group of users within DigitalOcean that can collaborate on" - " projects and share resources." - ) + kind_description: ClassVar[ + str + ] = "A team is a group of users within DigitalOcean that can collaborate on projects and share resources." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -354,10 +353,9 @@ def tag_resource_name(self) -> Optional[str]: class DigitalOceanDatabase(DigitalOceanResource, BaseDatabase): kind: ClassVar[str] = "digitalocean_database" kind_display: ClassVar[str] = "DigitalOcean Database" - kind_description: ClassVar[str] = ( - "A database service provided by DigitalOcean that allows users to store and" - " manage their data." - ) + kind_description: ClassVar[ + str + ] = "A database service provided by DigitalOcean that allows users to store and manage their data." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": ["digitalocean_app"], diff --git a/plugins/gcp/resoto_plugin_gcp/resources/billing.py b/plugins/gcp/resoto_plugin_gcp/resources/billing.py index 2d3ce91730..97e5ea54dd 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/billing.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/billing.py @@ -228,9 +228,7 @@ class GcpAggregationInfo: class GcpMoney: kind: ClassVar[str] = "gcp_money" kind_display: ClassVar[str] = "GCP Money" - kind_description: ClassVar[str] = ( - "Sorry, there is no known resource or service called GCP Money." - ) + kind_description: ClassVar[str] = "Sorry, there is no known resource or service called GCP Money." mapping: ClassVar[Dict[str, Bender]] = { "currency_code": S("currencyCode"), "nanos": S("nanos"), diff --git a/plugins/gcp/resoto_plugin_gcp/resources/compute.py b/plugins/gcp/resoto_plugin_gcp/resources/compute.py index e7790536fb..5649a6d348 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/compute.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/compute.py @@ -628,10 +628,7 @@ class GcpBackendServiceConnectionTrackingPolicy: class GcpDuration: kind: ClassVar[str] = "gcp_duration" kind_display: ClassVar[str] = "GCP Duration" - kind_description: ClassVar[str] = ( - "Duration represents a length of time in Google Cloud Platform (GCP)" - " services." - ) + kind_description: ClassVar[str] = "Duration represents a length of time in Google Cloud Platform (GCP) services." mapping: ClassVar[Dict[str, Bender]] = {"nanos": S("nanos"), "seconds": S("seconds")} nanos: Optional[int] = field(default=None) seconds: Optional[str] = field(default=None) @@ -1417,10 +1414,9 @@ class GcpAllowed: class GcpDenied: kind: ClassVar[str] = "gcp_denied" kind_display: ClassVar[str] = "GCP Denied" - kind_description: ClassVar[str] = ( - "GCP Denied refers to a resource or action that has been denied or restricted" - " in Google Cloud Platform." - ) + kind_description: ClassVar[ + str + ] = "GCP Denied refers to a resource or action that has been denied or restricted in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("IPProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1792,10 +1788,9 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpErrorInfo: kind: ClassVar[str] = "gcp_error_info" kind_display: ClassVar[str] = "GCP Error Info" - kind_description: ClassVar[str] = ( - "GCP Error Info provides information about errors encountered in Google Cloud" - " Platform services." - ) + kind_description: ClassVar[ + str + ] = "GCP Error Info provides information about errors encountered in Google Cloud Platform services." mapping: ClassVar[Dict[str, Bender]] = {"domain": S("domain"), "metadatas": S("metadatas"), "reason": S("reason")} domain: Optional[str] = field(default=None) metadatas: Optional[Dict[str, str]] = field(default=None) @@ -1865,10 +1860,9 @@ class GcpErrordetails: class GcpErrors: kind: ClassVar[str] = "gcp_errors" kind_display: ClassVar[str] = "GCP Errors" - kind_description: ClassVar[str] = ( - "GCP Errors refer to any kind of error encountered while using Google Cloud" - " Platform services." - ) + kind_description: ClassVar[ + str + ] = "GCP Errors refer to any kind of error encountered while using Google Cloud Platform services." mapping: ClassVar[Dict[str, Bender]] = { "code": S("code"), "error_details": S("errorDetails", default=[]) >> ForallBend(GcpErrordetails.mapping), @@ -3851,10 +3845,9 @@ class GcpLicenseResourceRequirements: class GcpLicense(GcpResource): kind: ClassVar[str] = "gcp_license" kind_display: ClassVar[str] = "GCP License" - kind_description: ClassVar[str] = ( - "GCP Licenses are used to authorize the use of certain Google Cloud Platform" - " services and resources." - ) + kind_description: ClassVar[ + str + ] = "GCP Licenses are used to authorize the use of certain Google Cloud Platform services and resources." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -4540,10 +4533,9 @@ class GcpLocalDisk: class GcpNodeTemplateNodeTypeFlexibility: kind: ClassVar[str] = "gcp_node_template_node_type_flexibility" kind_display: ClassVar[str] = "GCP Node Template Node Type Flexibility" - kind_description: ClassVar[str] = ( - "This resource allows for flexible node type configuration in Google Cloud" - " Platform node templates." - ) + kind_description: ClassVar[ + str + ] = "This resource allows for flexible node type configuration in Google Cloud Platform node templates." mapping: ClassVar[Dict[str, Bender]] = {"cpus": S("cpus"), "local_ssd": S("localSsd"), "memory": S("memory")} cpus: Optional[str] = field(default=None) local_ssd: Optional[str] = field(default=None) @@ -6150,10 +6142,9 @@ class GcpUrlMapTestHeader: class GcpUrlMapTest: kind: ClassVar[str] = "gcp_url_map_test" kind_display: ClassVar[str] = "GCP URL Map Test" - kind_description: ClassVar[str] = ( - "GCP URL Map Test is a test configuration for mapping URLs to backend" - " services in Google Cloud Platform." - ) + kind_description: ClassVar[ + str + ] = "GCP URL Map Test is a test configuration for mapping URLs to backend services in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), "expected_output_url": S("expectedOutputUrl"), diff --git a/plugins/gcp/resoto_plugin_gcp/resources/container.py b/plugins/gcp/resoto_plugin_gcp/resources/container.py index da1d133a80..cb884b7de8 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/container.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/container.py @@ -1002,10 +1002,9 @@ class GcpContainerNodePool: class GcpContainerFilter: kind: ClassVar[str] = "gcp_container_filter" kind_display: ClassVar[str] = "GCP Container Filter" - kind_description: ClassVar[str] = ( - "A GCP Container Filter is used to specify criteria for filtering containers" - " in Google Cloud Platform." - ) + kind_description: ClassVar[ + str + ] = "A GCP Container Filter is used to specify criteria for filtering containers in Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = {"event_type": S("eventType", default=[])} event_type: Optional[List[str]] = field(default=None) diff --git a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py index 8ccb2f9f6e..b54bab1149 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py @@ -113,10 +113,9 @@ class GcpSqlDatabase(GcpResource): # collected via GcpSqlDatabaseInstance kind: ClassVar[str] = "gcp_sql_database" kind_display: ClassVar[str] = "GCP SQL Database" - kind_description: ClassVar[str] = ( - "GCP SQL Database is a managed relational database service provided by Google" - " Cloud Platform." - ) + kind_description: ClassVar[ + str + ] = "GCP SQL Database is a managed relational database service provided by Google Cloud Platform." api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="sqladmin", version="v1", @@ -239,10 +238,9 @@ class GcpSqlOnPremisesConfiguration: class GcpSqlSqlOutOfDiskReport: kind: ClassVar[str] = "gcp_sql_sql_out_of_disk_report" kind_display: ClassVar[str] = "GCP SQL Out of Disk Report" - kind_description: ClassVar[str] = ( - "This resource represents a report that indicates when a Google Cloud SQL" - " instance runs out of disk space." - ) + kind_description: ClassVar[ + str + ] = "This resource represents a report that indicates when a Google Cloud SQL instance runs out of disk space." mapping: ClassVar[Dict[str, Bender]] = { "sql_min_recommended_increase_size_gb": S("sqlMinRecommendedIncreaseSizeGb"), "sql_out_of_disk_state": S("sqlOutOfDiskState"), @@ -876,10 +874,9 @@ class GcpSqlBakimportoptions: class GcpSqlCsvimportoptions: kind: ClassVar[str] = "gcp_sql_csvimportoptions" kind_display: ClassVar[str] = "GCP SQL CSV Import Options" - kind_description: ClassVar[str] = ( - "CSV Import Options in GCP SQL enables users to efficiently import CSV data" - " into Google Cloud SQL databases." - ) + kind_description: ClassVar[ + str + ] = "CSV Import Options in GCP SQL enables users to efficiently import CSV data into Google Cloud SQL databases." mapping: ClassVar[Dict[str, Bender]] = { "columns": S("columns", default=[]), "escape_character": S("escapeCharacter"), diff --git a/plugins/k8s/resoto_plugin_k8s/resources.py b/plugins/k8s/resoto_plugin_k8s/resources.py index 0629be26e3..17f546953e 100644 --- a/plugins/k8s/resoto_plugin_k8s/resources.py +++ b/plugins/k8s/resoto_plugin_k8s/resources.py @@ -145,10 +145,9 @@ class KubernetesNodeCondition: class KubernetesNodeStatusConfigSource: kind: ClassVar[str] = "kubernetes_node_status_config_active_configmap" kind_display: ClassVar[str] = "Kubernetes Node Status Config Active ConfigMap" - kind_description: ClassVar[str] = ( - "This resource represents the active configuration map for the node status in" - " a Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "This resource represents the active configuration map for the node status in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "kubelet_config_key": S("kubeletConfigKey"), "name": S("name"), @@ -167,9 +166,7 @@ class KubernetesNodeStatusConfigSource: class KubernetesNodeConfigSource: kind: ClassVar[str] = "kubernetes_node_status_config_active" kind_display: ClassVar[str] = "Kubernetes Node Status Config Active" - kind_description: ClassVar[str] = ( - "The active configuration status of a node in a Kubernetes cluster." - ) + kind_description: ClassVar[str] = "The active configuration status of a node in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "config_map": S("configMap") >> Bend(KubernetesNodeStatusConfigSource.mapping), } @@ -442,10 +439,9 @@ class KubernetesPodStatusConditions: class KubernetesContainerStateRunning: kind: ClassVar[str] = "kubernetes_container_state_running" kind_display: ClassVar[str] = "Kubernetes Container State Running" - kind_description: ClassVar[str] = ( - "Running state indicates that the container is currently up and running" - " within a Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "Running state indicates that the container is currently up and running within a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "started_at": S("startedAt"), } @@ -499,10 +495,9 @@ class KubernetesContainerStateWaiting: class KubernetesContainerState: kind: ClassVar[str] = "kubernetes_container_state" kind_display: ClassVar[str] = "Kubernetes Container State" - kind_description: ClassVar[str] = ( - "Kubernetes Container State represents the current state of a container" - " running in a Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "Kubernetes Container State represents the current state of a container running in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "running": S("running") >> Bend(KubernetesContainerStateRunning.mapping), "terminated": S("terminated") >> Bend(KubernetesContainerStateTerminated.mapping), @@ -1172,10 +1167,9 @@ class KubernetesLoadbalancerIngress: class KubernetesLoadbalancerStatus: kind: ClassVar[str] = "kubernetes_loadbalancer_status" kind_display: ClassVar[str] = "Kubernetes LoadBalancer Status" - kind_description: ClassVar[str] = ( - "Kubernetes LoadBalancer Status represents the status of a load balancer in a" - " Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "Kubernetes LoadBalancer Status represents the status of a load balancer in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "ingress": S("ingress", default=[]) >> ForallBend(KubernetesLoadbalancerIngress.mapping), } @@ -1423,10 +1417,9 @@ class KubernetesConfigMap(KubernetesResource): class KubernetesEndpointAddress: kind: ClassVar[str] = "kubernetes_endpoint_address" kind_display: ClassVar[str] = "Kubernetes Endpoint Address" - kind_description: ClassVar[str] = ( - "The address of the Kubernetes endpoint, which is used to access and interact" - " with a Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "The address of the Kubernetes endpoint, which is used to access and interact with a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "ip": S("ip"), "node_name": S("nodeName"), @@ -1480,10 +1473,7 @@ class KubernetesEndpointSubset: class KubernetesEndpoints(KubernetesResource): kind: ClassVar[str] = "kubernetes_endpoint" kind_display: ClassVar[str] = "Kubernetes Endpoint" - kind_description: ClassVar[str] = ( - "A Kubernetes Endpoint defines a network address where a service can be" - " accessed." - ) + kind_description: ClassVar[str] = "A Kubernetes Endpoint defines a network address where a service can be accessed." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "subsets": S("subsets", default=[]) >> ForallBend(KubernetesEndpointSubset.mapping), } @@ -1925,10 +1915,9 @@ class KubernetesValidatingWebhookConfiguration(KubernetesResource): class KubernetesControllerRevision(KubernetesResource): kind: ClassVar[str] = "kubernetes_controller_revision" kind_display: ClassVar[str] = "Kubernetes Controller Revision" - kind_description: ClassVar[str] = ( - "Controller Revision in Kubernetes represents a specific revision of a" - " controller's configuration and state." - ) + kind_description: ClassVar[ + str + ] = "Controller Revision in Kubernetes represents a specific revision of a controller's configuration and state." reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [], @@ -2034,10 +2023,9 @@ class KubernetesDaemonSetSpec: class KubernetesDaemonSet(KubernetesResource): kind: ClassVar[str] = "kubernetes_daemon_set" kind_display: ClassVar[str] = "Kubernetes DaemonSet" - kind_description: ClassVar[str] = ( - "A Kubernetes DaemonSet ensures that all (or some) nodes in a cluster run a" - " copy of a specified pod." - ) + kind_description: ClassVar[ + str + ] = "A Kubernetes DaemonSet ensures that all (or some) nodes in a cluster run a copy of a specified pod." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "daemon_set_status": S("status") >> Bend(KubernetesDaemonSetStatus.mapping), "daemon_set_spec": S("spec") >> Bend(KubernetesDaemonSetSpec.mapping), @@ -2252,10 +2240,9 @@ class KubernetesReplicaSetStatus: class KubernetesReplicaSetSpec: kind: ClassVar[str] = "kubernetes_replica_set_spec" kind_display: ClassVar[str] = "Kubernetes Replica Set Spec" - kind_description: ClassVar[str] = ( - "A Kubernetes Replica Set Spec defines the desired state for creating and" - " managing a group of replica pods." - ) + kind_description: ClassVar[ + str + ] = "A Kubernetes Replica Set Spec defines the desired state for creating and managing a group of replica pods." mapping: ClassVar[Dict[str, Bender]] = { "min_ready_seconds": S("minReadySeconds"), "replicas": S("replicas"), @@ -2511,10 +2498,9 @@ class KubernetesCronJobStatusActive: class KubernetesCronJobStatus: kind: ClassVar[str] = "kubernetes_cron_job_status" kind_display: ClassVar[str] = "Kubernetes Cron Job Status" - kind_description: ClassVar[str] = ( - "Kubernetes Cron Job Status represents the status of a scheduled job in a" - " Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "Kubernetes Cron Job Status represents the status of a scheduled job in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "active": S("active", default=[]) >> ForallBend(KubernetesCronJobStatusActive.mapping), "last_schedule_time": S("lastScheduleTime"), @@ -2646,10 +2632,9 @@ class KubernetesJobStatusConditions: class KubernetesJobStatus: kind: ClassVar[str] = "kubernetes_job_status" kind_display: ClassVar[str] = "Kubernetes Job Status" - kind_description: ClassVar[str] = ( - "Kubernetes Job Status refers to the current state and progress of a job in a" - " Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "Kubernetes Job Status refers to the current state and progress of a job in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "active": S("active"), "completed_indexes": S("completedIndexes"), @@ -2696,10 +2681,9 @@ class KubernetesJob(KubernetesResource): class KubernetesFlowSchemaStatusConditions: kind: ClassVar[str] = "kubernetes_flow_schema_status_conditions" kind_display: ClassVar[str] = "Kubernetes Flow Schema Status Conditions" - kind_description: ClassVar[str] = ( - "Flow Schema Status Conditions represent the current status of a flow schema" - " in a Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "Flow Schema Status Conditions represent the current status of a flow schema in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), "message": S("message"), @@ -2945,10 +2929,9 @@ def get_backend_service_names(json: Json) -> List[str]: class KubernetesIngress(KubernetesResource, BaseLoadBalancer): kind: ClassVar[str] = "kubernetes_ingress" kind_display: ClassVar[str] = "Kubernetes Ingress" - kind_description: ClassVar[str] = ( - "Kubernetes Ingress is an API object that manages external access to services" - " within a Kubernetes cluster." - ) + kind_description: ClassVar[ + str + ] = "Kubernetes Ingress is an API object that manages external access to services within a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "ingress_status": S("status") >> Bend(KubernetesIngressStatus.mapping), "public_ip_address": S("status", "loadBalancer", "ingress", default=[])[0]["ip"], @@ -3033,10 +3016,9 @@ class KubernetesNetworkPolicyStatusConditions: class KubernetesNetworkPolicyStatus: kind: ClassVar[str] = "kubernetes_network_policy_status" kind_display: ClassVar[str] = "Kubernetes Network Policy Status" - kind_description: ClassVar[str] = ( - "Kubernetes Network Policy Status represents the current status of network" - " policies in a Kubernetes cluster" - ) + kind_description: ClassVar[ + str + ] = "Kubernetes Network Policy Status represents the current status of network policies in a Kubernetes cluster" mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime From ceee335404fa69cd250c3685efe69966ca04e1cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Thu, 2 Nov 2023 00:20:54 +0100 Subject: [PATCH 19/27] Fix typo in K8s --- plugins/k8s/resoto_plugin_k8s/resources.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/plugins/k8s/resoto_plugin_k8s/resources.py b/plugins/k8s/resoto_plugin_k8s/resources.py index 17f546953e..dd4f4c1d4d 100644 --- a/plugins/k8s/resoto_plugin_k8s/resources.py +++ b/plugins/k8s/resoto_plugin_k8s/resources.py @@ -193,8 +193,6 @@ class KubernetesNodeStatusConfig: @define(eq=False, slots=False) class KubernetesDaemonEndpoint: - kind_display: ClassVar[str] = "Kubernetes Daemon Endpoint" - kind_description: ClassVar[str] = "A Kubernetes Daemon Endpoint." kind: ClassVar[str] = "kubernetes_daemon_endpoint" kind_display: ClassVar[str] = "Kubernetes Daemon Endpoint" kind_description: ClassVar[str] = ( From 60b7a1f7714cc51ba3c76363f6c84800c527d852 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Fri, 3 Nov 2023 00:10:33 +0100 Subject: [PATCH 20/27] Update descriptions --- .../resoto_plugin_aws/resource/apigateway.py | 5 ++--- .../aws/resoto_plugin_aws/resource/athena.py | 16 ++++++++-------- .../resoto_plugin_aws/resource/cloudtrail.py | 7 ++----- .../resoto_plugin_aws/resource/cloudwatch.py | 17 +++++++++-------- .../aws/resoto_plugin_aws/resource/cognito.py | 4 ++-- .../aws/resoto_plugin_aws/resource/config.py | 6 +++--- .../gcp/resoto_plugin_gcp/resources/billing.py | 6 +++++- 7 files changed, 31 insertions(+), 30 deletions(-) diff --git a/plugins/aws/resoto_plugin_aws/resource/apigateway.py b/plugins/aws/resoto_plugin_aws/resource/apigateway.py index 4f20ee1c46..411737d528 100644 --- a/plugins/aws/resoto_plugin_aws/resource/apigateway.py +++ b/plugins/aws/resoto_plugin_aws/resource/apigateway.py @@ -389,9 +389,8 @@ class AwsApiGatewayDeployment(AwsResource): kind: ClassVar[str] = "aws_api_gateway_deployment" kind_display: ClassVar[str] = "AWS API Gateway Deployment" kind_description: ClassVar[str] = ( - "API Gateway Deployments refer to the process of deploying the API" - " configurations created in AWS API Gateway to make them accessible for" - " clients." + "API Gateway Deployments represents a deployment of an API to an API Gateway stage." + " This allows the API to be invocable by end-users." ) # edge to aws_api_gateway_stage is established in AwsApiGatewayRestApi.collect() reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_api_gateway_stage"]}} diff --git a/plugins/aws/resoto_plugin_aws/resource/athena.py b/plugins/aws/resoto_plugin_aws/resource/athena.py index 2cf52ddcfe..fe734dc1bd 100644 --- a/plugins/aws/resoto_plugin_aws/resource/athena.py +++ b/plugins/aws/resoto_plugin_aws/resource/athena.py @@ -52,9 +52,8 @@ class AwsAthenaEngineVersion: kind: ClassVar[str] = "aws_athena_engine_version" kind_display: ClassVar[str] = "AWS Athena Engine Version" kind_description: ClassVar[str] = ( - "AWS Athena Engine Version is a service provided by Amazon Web Services for" - " querying and analyzing data stored in Amazon S3 using standard SQL" - " statements." + "AWS Athena Engine Version refers to the underlying query engine version, based on Presto," + " that Amazon Athena uses to process SQL queries against datasets." ) mapping: ClassVar[Dict[str, Bender]] = { "selected_engine_version": S("SelectedEngineVersion"), @@ -69,8 +68,8 @@ class AwsAthenaWorkGroupConfiguration: kind: ClassVar[str] = "aws_athena_work_group_configuration" kind_display: ClassVar[str] = "AWS Athena Work Group Configuration" kind_description: ClassVar[str] = ( - "Athena work group configuration in Amazon Web Services, which allows users" - " to configure settings for managing and executing queries in Athena." + "Athena work group configuration allows users to configure settings" + " for managing and executing queries in Athena." ) mapping: ClassVar[Dict[str, Bender]] = { "result_configuration": S("ResultConfiguration") >> Bend(AwsAthenaResultConfiguration.mapping), @@ -92,9 +91,10 @@ class AwsAthenaWorkGroupConfiguration: class AwsAthenaWorkGroup(AwsResource): kind: ClassVar[str] = "aws_athena_work_group" kind_display: ClassVar[str] = "AWS Athena Work Group" - kind_description: ClassVar[ - str - ] = "Athena Work Group is a logical container for AWS Glue Data Catalog metadata and query statistics." + kind_description: ClassVar[str] = ( + "An AWS Athena Work Group is a named set of query execution and data usage controls that" + " Athena users can share among workloads and teams." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-work-groups", "WorkGroups") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Name"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py b/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py index 1b9b6083fa..b9c3039301 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudtrail.py @@ -69,11 +69,8 @@ class AwsCloudTrailStatus: kind: ClassVar[str] = "aws_cloud_trail_status" kind_display: ClassVar[str] = "AWS CloudTrail Status" kind_description: ClassVar[str] = ( - "CloudTrail is a service that enables governance, compliance, operational" - " auditing, and risk auditing of your AWS account. CloudTrail provides event" - " history of your AWS account activity, including actions taken through the" - " AWS Management Console, AWS SDKs, command line tools, and other AWS" - " services." + "CloudTrail Status reflects the current operational status, including logging activities" + " and any errors, of a specified CloudTrail trail." ) mapping: ClassVar[Dict[str, Bender]] = { "is_logging": S("IsLogging"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py b/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py index 2087522972..38fa224a07 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudwatch.py @@ -101,8 +101,9 @@ class AwsCloudwatchMetric: kind: ClassVar[str] = "aws_cloudwatch_metric" kind_display: ClassVar[str] = "AWS CloudWatch Metric" kind_description: ClassVar[str] = ( - "AWS CloudWatch Metric is a service that provides monitoring for AWS" - " resources and the applications you run on AWS." + "AWS CloudWatch Metric is a time-ordered set of data points that represent a measurable aspect of your AWS" + " resources or applications, such as CPU utilization or request counts, which can be tracked for" + " analysis and alerting." ) mapping: ClassVar[Dict[str, Bender]] = { "namespace": S("Namespace"), @@ -119,9 +120,9 @@ class AwsCloudwatchMetricStat: kind: ClassVar[str] = "aws_cloudwatch_metric_stat" kind_display: ClassVar[str] = "AWS CloudWatch Metric Stat" kind_description: ClassVar[str] = ( - "CloudWatch Metric Stat is a service provided by AWS that allows users to" - " collect and track metrics, monitor log files, and set alarms for their AWS" - " resources." + "AWS CloudWatch Metric Stat refers to a set of statistical values (e.g., average, sum, minimum, maximum)" + " computed from the metric data points over a specified time period, providing insights into the metric's" + " behavior and performance." ) mapping: ClassVar[Dict[str, Bender]] = { "metric": S("Metric") >> Bend(AwsCloudwatchMetric.mapping), @@ -140,9 +141,9 @@ class AwsCloudwatchMetricDataQuery: kind: ClassVar[str] = "aws_cloudwatch_metric_data_query" kind_display: ClassVar[str] = "AWS CloudWatch Metric Data Query" kind_description: ClassVar[str] = ( - "CloudWatch Metric Data Query is a feature in Amazon CloudWatch that allows" - " you to retrieve and analyze metric data across multiple resources and time" - " periods." + "AWS CloudWatch Metric Data Query is a structure used in CloudWatch to specify the metric data to retrieve" + " and how to process it, allowing users to aggregate, transform, and filter metric data points for analysis" + " or visualization in CloudWatch dashboards." ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), diff --git a/plugins/aws/resoto_plugin_aws/resource/cognito.py b/plugins/aws/resoto_plugin_aws/resource/cognito.py index a18455e9c7..c1509a941d 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cognito.py +++ b/plugins/aws/resoto_plugin_aws/resource/cognito.py @@ -78,8 +78,8 @@ class AwsCognitoMFAOptionType: kind: ClassVar[str] = "aws_cognito_mfa_option_type" kind_display: ClassVar[str] = "AWS Cognito MFA Option Type" kind_description: ClassVar[str] = ( - "MFA Option Type is a setting in AWS Cognito that allows users to enable or" - " disable Multi-Factor Authentication (MFA) for their accounts." + "AWS Cognito MFA (Multi-Factor Authentication) Option Type refers to the methods of multi-factor" + " authentication available in Amazon Cognito for user accounts." ) mapping: ClassVar[Dict[str, Bender]] = { "delivery_medium": S("DeliveryMedium"), diff --git a/plugins/aws/resoto_plugin_aws/resource/config.py b/plugins/aws/resoto_plugin_aws/resource/config.py index d31563579e..6b42cc18d4 100644 --- a/plugins/aws/resoto_plugin_aws/resource/config.py +++ b/plugins/aws/resoto_plugin_aws/resource/config.py @@ -19,9 +19,9 @@ class AwsConfigRecorderStatus: kind: ClassVar[str] = "aws_config_recorder_status" kind_display: ClassVar[str] = "AWS Config Recorder Status" kind_description: ClassVar[str] = ( - "AWS Config Recorder Status is a service that records configuration changes" - " made to AWS resources and evaluates the recorded configurations for rule" - " compliance." + "AWS Config Recorder Status indicates whether the AWS Config service is actively recording changes" + " to AWS resources and configurations in the account, along with details like the last start or" + " stop time, any errors, and the recording mode (all resources or selective resource types)." ) mapping: ClassVar[Dict[str, Bender]] = { "last_start_time": S("lastStartTime"), diff --git a/plugins/gcp/resoto_plugin_gcp/resources/billing.py b/plugins/gcp/resoto_plugin_gcp/resources/billing.py index 97e5ea54dd..d0a7b2772c 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/billing.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/billing.py @@ -228,7 +228,11 @@ class GcpAggregationInfo: class GcpMoney: kind: ClassVar[str] = "gcp_money" kind_display: ClassVar[str] = "GCP Money" - kind_description: ClassVar[str] = "Sorry, there is no known resource or service called GCP Money." + kind_description: ClassVar[str] = ( + "In GCP's Money structure, amounts are represented using a currency_code for the type of currency," + " and nanos to denote a fraction of that currency down to one-billionth, ensuring precise" + " financial calculations." + ) mapping: ClassVar[Dict[str, Bender]] = { "currency_code": S("currencyCode"), "nanos": S("nanos"), From 77823a6ce97733af0aa8e512baa0efe65df1e038 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Fri, 3 Nov 2023 00:25:30 +0100 Subject: [PATCH 21/27] Update descriptions --- .../resoto_plugin_aws/resource/dynamodb.py | 27 ++++++++++--------- plugins/aws/resoto_plugin_aws/resource/ec2.py | 9 +++---- 2 files changed, 17 insertions(+), 19 deletions(-) diff --git a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py index cef7cf6e7b..3270e10cbc 100644 --- a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py +++ b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py @@ -115,8 +115,8 @@ class AwsDynamoDbProjection: kind: ClassVar[str] = "aws_dynamo_db_projection" kind_display: ClassVar[str] = "AWS DynamoDB Projection" kind_description: ClassVar[str] = ( - "DynamoDB Projections allow you to specify which attributes should be" - " included in the index of a table for efficient querying." + "AWS DynamoDB Projection specifies the set of attributes that are projected into a DynamoDB secondary" + " index, which can be keys only, a selection of attributes, or all attributes from the base table." ) mapping: ClassVar[Dict[str, Bender]] = { "projection_type": S("ProjectionType"), @@ -131,9 +131,9 @@ class AwsDynamoDbLocalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_local_secondary_index_description" kind_display: ClassVar[str] = "AWS DynamoDB Local Secondary Index Description" kind_description: ClassVar[str] = ( - "DynamoDB Local Secondary Indexes provide additional querying flexibility on" - " non-key attributes in DynamoDB tables, enhancing the performance and" - " efficiency of data retrieval in Amazon's NoSQL database service." + "AWS DynamoDB Local Secondary Index Description provides details about a local secondary index for a" + " DynamoDB table, including index name, key schema, projection details (attributes included in the" + " index), and index size along with item count." ) mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), @@ -187,8 +187,9 @@ class AwsDynamoDbStreamSpecification: kind: ClassVar[str] = "aws_dynamo_db_stream_specification" kind_display: ClassVar[str] = "AWS DynamoDB Stream Specification" kind_description: ClassVar[str] = ( - "DynamoDB Streams provide a time-ordered sequence of item-level modifications" - " made to data in a DynamoDB table." + "AWS DynamoDB Stream Specification defines whether a stream is enabled on a DynamoDB table and the" + " type of information that will be written to the stream, such as keys only, new image, old image," + " or both new and old images of the item." ) mapping: ClassVar[Dict[str, Bender]] = { "stream_enabled": S("StreamEnabled"), @@ -203,9 +204,9 @@ class AwsDynamoDbReplicaGlobalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_replica_global_secondary_index_description" kind_display: ClassVar[str] = "AWS DynamoDB Replica Global Secondary Index Description" kind_description: ClassVar[str] = ( - "DynamoDB Replica Global Secondary Index is a replicated index in DynamoDB" - " that allows you to perform fast and efficient queries on replicated data" - " across multiple AWS Regions." + "AWS DynamoDB Replica Global Secondary Index Description contains information about the global secondary" + " indexes on the replica table in a DynamoDB global table setup, including details like the index name," + " status, provisioned read and write capacity, and index size." ) mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), @@ -331,9 +332,9 @@ class AwsDynamoDbTable(DynamoDbTaggable, AwsResource): kind: ClassVar[str] = "aws_dynamo_db_table" kind_display: ClassVar[str] = "AWS DynamoDB Table" kind_description: ClassVar[str] = ( - "DynamoDB is a NoSQL database service provided by Amazon Web Services," - " allowing users to store and retrieve data using flexible schema and high-" - " performance queries." + "An AWS DynamoDB Table is a collection of data items organized by a primary key in Amazon DynamoDB," + " a fully managed NoSQL database service that provides fast and predictable performance with seamless" + " scalability." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-tables", "TableNames") reference_kinds: ClassVar[ModelReference] = { diff --git a/plugins/aws/resoto_plugin_aws/resource/ec2.py b/plugins/aws/resoto_plugin_aws/resource/ec2.py index bbaf6f8013..ad342c34a5 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ec2.py +++ b/plugins/aws/resoto_plugin_aws/resource/ec2.py @@ -122,9 +122,8 @@ class AwsEc2DiskInfo: kind: ClassVar[str] = "aws_ec2_disk_info" kind_display: ClassVar[str] = "AWS EC2 Disk Info" kind_description: ClassVar[str] = ( - "EC2 Disk Info refers to the information about the disk storage associated" - " with an EC2 instance in Amazon Web Services. It provides details such as" - " disk size, type, and usage statistics." + "AWS EC2 Disk Info refers to the details about the storage disk(s) attached to an Amazon EC2 instance," + " including volume type, size, IOPS, throughput, and encryption status." ) mapping: ClassVar[Dict[str, Bender]] = {"size_in_gb": S("SizeInGB"), "count": S("Count"), "type": S("Type")} size_in_gb: Optional[int] = field(default=None) @@ -202,9 +201,7 @@ class AwsEc2NetworkCardInfo: kind_display: ClassVar[str] = "AWS EC2 Network Card Info" kind_description: ClassVar[str] = ( "AWS EC2 Network Card Info refers to the information related to the network" - " cards associated with EC2 instances in Amazon Web Services. It includes" - " details such as the network card ID, description, and network interface" - " attachments." + " cards associated with EC2 instances in Amazon Web Services." ) mapping: ClassVar[Dict[str, Bender]] = { "network_card_index": S("NetworkCardIndex"), From ce5ba2d94eed1359cc611fa9a16f8057e37e5059 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Fri, 3 Nov 2023 00:32:49 +0100 Subject: [PATCH 22/27] Update descriptions --- plugins/aws/resoto_plugin_aws/resource/ec2.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/plugins/aws/resoto_plugin_aws/resource/ec2.py b/plugins/aws/resoto_plugin_aws/resource/ec2.py index ad342c34a5..df0e50975e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ec2.py +++ b/plugins/aws/resoto_plugin_aws/resource/ec2.py @@ -219,7 +219,7 @@ class AwsEc2NetworkInfo: kind_display: ClassVar[str] = "AWS EC2 Network Info" kind_description: ClassVar[ str - ] = "EC2 Network Info provides information about the networking details of EC2 instances in Amazon's cloud." + ] = "AWS EC2 Network Info provides details on the networking capabilities of an EC2 instance." mapping: ClassVar[Dict[str, Bender]] = { "network_performance": S("NetworkPerformance"), "maximum_network_interfaces": S("MaximumNetworkInterfaces"), @@ -253,10 +253,9 @@ class AwsEc2GpuDeviceInfo: kind: ClassVar[str] = "aws_ec2_gpu_device_info" kind_display: ClassVar[str] = "AWS EC2 GPU Device Info" kind_description: ClassVar[str] = ( - "EC2 GPU Device Info provides information about the GPU devices available in" - " the Amazon EC2 instances. It includes details such as GPU model, memory" - " size, and utilization. This information is useful for optimizing performance" - " and managing GPU resources in EC2 instances." + "AWS EC2 GPU Device Info includes specifications such as model, quantity, memory size, and performance" + " of the GPU devices available on certain Amazon EC2 instances that are designed for graphic-intensive" + " tasks or machine learning workloads." ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("Name"), @@ -375,9 +374,9 @@ class AwsEc2InstanceType(AwsResource, BaseInstanceType): kind: ClassVar[str] = "aws_ec2_instance_type" kind_display: ClassVar[str] = "AWS EC2 Instance Type" kind_description: ClassVar[str] = ( - "The type of EC2 instance determines the hardware of the host computer used" - " for the instance and the number of virtual CPUs, amount of memory, and" - " storage capacity provided." + "AWS EC2 Instance Type refers to the classification of an EC2 instance based on the resources and" + " capabilities it offers, such as CPU, memory, storage, and networking capacity, tailored for different" + " workload requirements and applications." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-instance-types", "InstanceTypes") reference_kinds: ClassVar[ModelReference] = { @@ -704,7 +703,7 @@ class AwsEc2Snapshot(EC2Taggable, AwsResource, BaseSnapshot): kind: ClassVar[str] = "aws_ec2_snapshot" kind_display: ClassVar[str] = "AWS EC2 Snapshot" kind_description: ClassVar[str] = ( - "EC2 Snapshots are incremental backups of Amazon Elastic Block Store (EBS)" + "EC2 Snapshots are backups of Amazon Elastic Block Store (EBS)" " volumes, allowing users to capture and store point-in-time copies of their" " data." ) From 4643f9ef79c744b3c0c7ef4bfe3db30baa3dda9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Fri, 3 Nov 2023 18:54:20 +0100 Subject: [PATCH 23/27] Update descriptions --- .../aws/resoto_plugin_aws/resource/athena.py | 5 +- .../resource/cloudformation.py | 10 +- .../resoto_plugin_aws/resource/cloudfront.py | 70 +++---- .../aws/resoto_plugin_aws/resource/config.py | 6 +- .../resoto_plugin_aws/resource/dynamodb.py | 21 ++- plugins/aws/resoto_plugin_aws/resource/ec2.py | 44 ++--- plugins/aws/resoto_plugin_aws/resource/ecs.py | 61 +++--- plugins/aws/resoto_plugin_aws/resource/eks.py | 11 +- .../resoto_plugin_aws/resource/elasticache.py | 35 ++-- .../resource/elasticbeanstalk.py | 12 +- plugins/aws/resoto_plugin_aws/resource/elb.py | 5 +- .../aws/resoto_plugin_aws/resource/elbv2.py | 5 +- .../aws/resoto_plugin_aws/resource/glacier.py | 16 +- plugins/aws/resoto_plugin_aws/resource/kms.py | 19 +- .../aws/resoto_plugin_aws/resource/lambda_.py | 13 +- plugins/aws/resoto_plugin_aws/resource/rds.py | 14 +- .../resoto_plugin_aws/resource/redshift.py | 5 +- .../aws/resoto_plugin_aws/resource/route53.py | 15 +- plugins/aws/resoto_plugin_aws/resource/s3.py | 5 +- .../resoto_plugin_aws/resource/sagemaker.py | 176 +++++++++--------- 20 files changed, 270 insertions(+), 278 deletions(-) diff --git a/plugins/aws/resoto_plugin_aws/resource/athena.py b/plugins/aws/resoto_plugin_aws/resource/athena.py index fe734dc1bd..f8073508f1 100644 --- a/plugins/aws/resoto_plugin_aws/resource/athena.py +++ b/plugins/aws/resoto_plugin_aws/resource/athena.py @@ -92,8 +92,9 @@ class AwsAthenaWorkGroup(AwsResource): kind: ClassVar[str] = "aws_athena_work_group" kind_display: ClassVar[str] = "AWS Athena Work Group" kind_description: ClassVar[str] = ( - "An AWS Athena Work Group is a named set of query execution and data usage controls that" - " Athena users can share among workloads and teams." + "Amazon Athena Work Groups are a resource type for isolating query execution and history among different" + " users, teams, or applications within the same AWS account, with features for access control, cost" + " management, and integration with AWS CloudWatch for metrics monitoring." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-work-groups", "WorkGroups") mapping: ClassVar[Dict[str, Bender]] = { diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudformation.py b/plugins/aws/resoto_plugin_aws/resource/cloudformation.py index 931f835822..c8aac5028c 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudformation.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudformation.py @@ -214,9 +214,9 @@ class AwsCloudFormationAutoDeployment: kind: ClassVar[str] = "aws_cloudformation_auto_deployment" kind_display: ClassVar[str] = "AWS CloudFormation Auto Deployment" kind_description: ClassVar[str] = ( - "AWS CloudFormation Auto Deployment is a service that automates the" - " deployment of CloudFormation templates in the AWS Cloud, making it easier to" - " provision and manage a stack of AWS resources." + "AWS CloudFormation Auto Deployment is a setting within AWS CloudFormation that enables the automatic" + " deployment and updating of stacks or resources, typically in response to direct changes to source" + " code or a deployment pipeline, streamlining the deployment process." ) mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("Enabled"), @@ -349,8 +349,8 @@ class AwsCloudFormationStackInstanceSummary(AwsResource): kind: ClassVar[str] = "aws_cloud_formation_stack_instance_summary" kind_display: ClassVar[str] = "AWS CloudFormation Stack Instance Summary" kind_description: ClassVar[str] = ( - "CloudFormation Stack Instance Summary provides a summary of instances in a" - " CloudFormation stack, including instance ID, status, and stack name." + "CloudFormation Stack Instance Summary provides a summary of the overall stacks in a CloudFormation" + " deployment. The information includes current status, name, and any associated resources or parameters." ) mapping: ClassVar[Dict[str, Bender]] = { "id": F(_stack_instance_id), diff --git a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py index 3d1c11a658..28966e20e3 100644 --- a/plugins/aws/resoto_plugin_aws/resource/cloudfront.py +++ b/plugins/aws/resoto_plugin_aws/resource/cloudfront.py @@ -680,9 +680,10 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsCloudFrontPublicKey(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_public_key" kind_display: ClassVar[str] = "AWS CloudFront Public Key" - kind_description: ClassVar[ - str - ] = "AWS CloudFront Public Key is a public key used for encrypting content stored on AWS CloudFront." + kind_description: ClassVar[str] = ( + "AWS CloudFront Public Key is a public key used in conjunction with a private key for managing the" + " identity of the content distributors and validating access to content served by AWS CloudFront." + ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-public-keys", "PublicKeyList.Items") mapping: ClassVar[Dict[str, Bender]] = { "id": S("Id"), @@ -724,9 +725,8 @@ class AwsCloudFrontEndPoint: kind: ClassVar[str] = "aws_cloudfront_end_point" kind_display: ClassVar[str] = "AWS CloudFront End Point" kind_description: ClassVar[str] = ( - "CloudFront End Points provide a globally distributed content delivery" - " network (CDN) that delivers data, videos, applications, and APIs to viewers" - " with low latency and high transfer speeds." + "An AWS CloudFront End Point is the DNS domain name that CloudFront assigns when you create a distribution." + " You use this domain name in all URLs for your files." ) mapping: ClassVar[Dict[str, Bender]] = { "stream_type": S("StreamType"), @@ -801,9 +801,9 @@ class AwsCloudFrontResponseHeadersPolicyXSSProtection: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_xss_protection" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy XSS Protection" kind_description: ClassVar[str] = ( - "The AWS CloudFront Response Headers Policy XSS Protection allows users to" - " configure Cross-Site Scripting (XSS) protection in the response headers of" - " their CloudFront distributions." + "AWS CloudFront Response Headers Policy XSS Protection are settings within the policy that control the" + " `X-XSS-Protection` header, which can be used to enable a browser's built-in cross-site scripting (XSS)" + " filters to prevent and mitigate XSS attacks on web content served through CloudFront." ) mapping: ClassVar[Dict[str, Bender]] = { "override": S("Override"), @@ -822,9 +822,10 @@ class AwsCloudFrontResponseHeadersPolicyFrameOptions: kind: ClassVar[str] = "aws_cloudfront_response_headers_policy_frame_options" kind_display: ClassVar[str] = "AWS CloudFront Response Headers Policy Frame Options" kind_description: ClassVar[str] = ( - "CloudFront Response Headers Policy Frame Options is a feature of Amazon" - " CloudFront that allows you to control the frame options in HTTP responses" - " sent by CloudFront distributions." + "AWS CloudFront Response Headers Policy Frame Options within a response headers policy dictate how browsers" + " should handle the framing of pages, typically used to configure the `X-Frame-Options` header for" + " clickjacking protection by specifying whether content can be displayed within frames and under" + " what conditions." ) mapping: ClassVar[Dict[str, Bender]] = {"override": S("Override"), "frame_option": S("FrameOption")} override: Optional[bool] = field(default=None) @@ -1062,9 +1063,9 @@ class AwsCloudFrontOriginAccessControl(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_origin_access_control" kind_display: ClassVar[str] = "AWS CloudFront Origin Access Control" kind_description: ClassVar[str] = ( - "CloudFront Origin Access Control is a feature in AWS CloudFront that allows" - " you to restrict access to your origin server by using an Amazon S3 bucket or" - " an HTTP server as the source for your website or application files." + "AWS CloudFront Origin Access Control is a security feature that allows you to control access" + " to your S3 bucket or custom origin, ensuring that your content can only be accessed via" + " CloudFront distributions and not directly from the origin itself." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-origin-access-controls", "OriginAccessControlList.Items" @@ -1098,9 +1099,9 @@ class AwsCloudFrontCachePolicyHeadersConfig: kind: ClassVar[str] = "aws_cloudfront_cache_policy_headers_config" kind_display: ClassVar[str] = "AWS CloudFront Cache Policy Headers Config" kind_description: ClassVar[str] = ( - "The AWS CloudFront Cache Policy Headers Config allows users to configure the" - " cache headers for content in the CloudFront CDN, determining how long" - " content is cached and how it is delivered to end users." + "AWS CloudFront Cache Policy Headers Config specifies which HTTP headers CloudFront includes in the cache key" + " and, consequently, which headers it uses to determine whether to serve a cached response or to forward a" + " request to the origin. This configuration influences cache hit ratios and content delivery performance." ) mapping: ClassVar[Dict[str, Bender]] = { "header_behavior": S("HeaderBehavior"), @@ -1229,9 +1230,10 @@ class AwsCloudFrontQueryArgProfile: kind: ClassVar[str] = "aws_cloudfront_query_arg_profile" kind_display: ClassVar[str] = "AWS CloudFront Query Argument Profile" kind_description: ClassVar[str] = ( - "CloudFront Query Argument Profile in AWS is a configuration that allows you" - " to control how CloudFront caches and forwards query strings in the URLs of" - " your content." + "AWS CloudFront Query Argument Profile is part of CloudFront's Field-Level Encryption feature;" + " it specifies how CloudFront handles query arguments by applying field patterns that match and" + " encrypt query argument values when they are forwarded to the origin, enhancing the security" + " of sensitive data." ) mapping: ClassVar[Dict[str, Bender]] = {"query_arg": S("QueryArg"), "profile_id": S("ProfileId")} query_arg: Optional[str] = field(default=None) @@ -1243,9 +1245,10 @@ class AwsCloudFrontQueryArgProfileConfig: kind: ClassVar[str] = "aws_cloudfront_query_arg_profile_config" kind_display: ClassVar[str] = "AWS CloudFront Query Arg Profile Config" kind_description: ClassVar[str] = ( - "CloudFront Query Arg Profile Config is a feature in AWS CloudFront that" - " allows you to configure personalized caching behavior for different query" - " strings on your website." + "CloudFront Query Arg Profile Config is a configuration within AWS CloudFront's Field-Level Encryption" + " setup that specifies the profiles to use for encrypting specific query arguments in viewer requests," + " enhancing security by ensuring sensitive information is encrypted as it passes from CloudFront" + " to the origin." ) mapping: ClassVar[Dict[str, Bender]] = { "forward_when_query_arg_profile_is_unknown": S("ForwardWhenQueryArgProfileIsUnknown"), @@ -1261,9 +1264,9 @@ class AwsCloudFrontContentTypeProfile: kind: ClassVar[str] = "aws_cloudfront_content_type_profile" kind_display: ClassVar[str] = "AWS CloudFront Content Type Profile" kind_description: ClassVar[str] = ( - "AWS CloudFront Content Type Profiles help you manage the behavior of" - " CloudFront by configuring how it handles content types for different file" - " extensions or MIME types." + "AWS CloudFront Content Type Profile is a configuration option within CloudFront that maps file extensions" + " to content types, which is used in Field-Level Encryption to apply encryption based on the content type" + " of the forwarded content in a request." ) mapping: ClassVar[Dict[str, Bender]] = { "format": S("Format"), @@ -1280,9 +1283,10 @@ class AwsCloudFrontContentTypeProfileConfig: kind: ClassVar[str] = "aws_cloudfront_content_type_profile_config" kind_display: ClassVar[str] = "AWS CloudFront Content Type Profile Config" kind_description: ClassVar[str] = ( - "AWS CloudFront Content Type Profile Config is a configuration object that" - " allows you to specify how CloudFront should interpret and act upon the" - " Content-Type header of viewer requests for your content." + "AWS CloudFront Content Type Profile Config is a setting within AWS CloudFront's Field-Level Encryption" + " that defines a set of profiles mapping query argument or form field names to their respective content" + " type, which is used to determine how specified fields in viewer requests are encrypted before being" + " forwarded to the origin." ) mapping: ClassVar[Dict[str, Bender]] = { "forward_when_content_type_is_unknown": S("ForwardWhenContentTypeIsUnknown"), @@ -1298,9 +1302,9 @@ class AwsCloudFrontFieldLevelEncryptionConfig(CloudFrontResource, AwsResource): kind: ClassVar[str] = "aws_cloudfront_field_level_encryption_config" kind_display: ClassVar[str] = "AWS CloudFront Field-Level Encryption Configuration" kind_description: ClassVar[str] = ( - "AWS CloudFront Field-Level Encryption Configuration is a feature that allows" - " you to encrypt selected fields in HTTP requests and responses before they" - " are sent and after they are received by CloudFront." + "AWS CloudFront Field-Level Encryption Configuration is a feature that helps you to protect sensitive data" + " by encrypting specific HTTP fields at CloudFront edge locations. It allows you to encrypt data within" + " each individual field of an HTTPS request or response." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-field-level-encryption-configs", "FieldLevelEncryptionList.Items" diff --git a/plugins/aws/resoto_plugin_aws/resource/config.py b/plugins/aws/resoto_plugin_aws/resource/config.py index 6b42cc18d4..0bd41ad2ce 100644 --- a/plugins/aws/resoto_plugin_aws/resource/config.py +++ b/plugins/aws/resoto_plugin_aws/resource/config.py @@ -19,9 +19,9 @@ class AwsConfigRecorderStatus: kind: ClassVar[str] = "aws_config_recorder_status" kind_display: ClassVar[str] = "AWS Config Recorder Status" kind_description: ClassVar[str] = ( - "AWS Config Recorder Status indicates whether the AWS Config service is actively recording changes" - " to AWS resources and configurations in the account, along with details like the last start or" - " stop time, any errors, and the recording mode (all resources or selective resource types)." + "AWS Config Recorder Status helps you to understand and manage the configurations of your AWS resources." + " It provides an overview of whether your AWS Config Recorder is recording resource configuration and" + " compliance data correctly or facing issues." ) mapping: ClassVar[Dict[str, Bender]] = { "last_start_time": S("lastStartTime"), diff --git a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py index 3270e10cbc..8927054c8c 100644 --- a/plugins/aws/resoto_plugin_aws/resource/dynamodb.py +++ b/plugins/aws/resoto_plugin_aws/resource/dynamodb.py @@ -131,9 +131,9 @@ class AwsDynamoDbLocalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_local_secondary_index_description" kind_display: ClassVar[str] = "AWS DynamoDB Local Secondary Index Description" kind_description: ClassVar[str] = ( - "AWS DynamoDB Local Secondary Index Description provides details about a local secondary index for a" - " DynamoDB table, including index name, key schema, projection details (attributes included in the" - " index), and index size along with item count." + "The AWS DynamoDB Local Secondary Index Description provides details about a Local Secondary Index (LSI)" + " associated with a DynamoDB table. This includes information such as the index name, the key schema, the" + " projection, and throughput information if provisioned throughput is specified." ) mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), @@ -204,9 +204,12 @@ class AwsDynamoDbReplicaGlobalSecondaryIndexDescription: kind: ClassVar[str] = "aws_dynamo_db_replica_global_secondary_index_description" kind_display: ClassVar[str] = "AWS DynamoDB Replica Global Secondary Index Description" kind_description: ClassVar[str] = ( - "AWS DynamoDB Replica Global Secondary Index Description contains information about the global secondary" - " indexes on the replica table in a DynamoDB global table setup, including details like the index name," - " status, provisioned read and write capacity, and index size." + "The AWS DynamoDB Replica Global Secondary Index Description details the properties of a" + " Global Secondary Index (GSI) on a replica table in a DynamoDB global table configuration." + " It includes the index name, key schema, attribute projections, provisioned read and write" + " capacity (if not using on-demand capacity), index status, and other metrics such as" + " index size and item count. GSIs on replicas enable fast, efficient query performance" + " across multiple geographically dispersed tables." ) mapping: ClassVar[Dict[str, Bender]] = { "index_name": S("IndexName"), @@ -221,10 +224,8 @@ class AwsDynamoDbTableClassSummary: kind: ClassVar[str] = "aws_dynamo_db_table_class_summary" kind_display: ClassVar[str] = "AWS DynamoDB Table Class Summary" kind_description: ClassVar[str] = ( - "DynamoDB Table Class Summary provides information about the classes of" - " tables in Amazon DynamoDB, a fully managed NoSQL database service provided" - " by AWS. It enables users to store and retrieve any amount of data with high" - " availability and durability." + "The AWS DynamoDB Table Class Summary provides an overview of the table class for" + " a DynamoDB table, which reflects the cost and performance characteristics of the table." ) mapping: ClassVar[Dict[str, Bender]] = { "table_class": S("TableClass"), diff --git a/plugins/aws/resoto_plugin_aws/resource/ec2.py b/plugins/aws/resoto_plugin_aws/resource/ec2.py index df0e50975e..071f9d9d95 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ec2.py +++ b/plugins/aws/resoto_plugin_aws/resource/ec2.py @@ -818,10 +818,9 @@ class AwsEc2Placement: kind: ClassVar[str] = "aws_ec2_placement" kind_display: ClassVar[str] = "AWS EC2 Placement" kind_description: ClassVar[str] = ( - "EC2 Placement refers to the process of selecting a suitable physical host" - " within an AWS Availability Zone to run an EC2 instance. It helps optimize" - " performance, availability, and cost by considering factors such as instance" - " type, size, and availability of resources on the host." + "AWS EC2 Placement specifies the placement settings for an EC2 instance, including the Availability Zone," + " placement group, and tenancy options, which determine how instances are distributed within the AWS" + " infrastructure for performance and isolation." ) mapping: ClassVar[Dict[str, Bender]] = { "availability_zone": S("AvailabilityZone"), @@ -949,9 +948,9 @@ class AwsEc2ElasticInferenceAcceleratorAssociation: kind: ClassVar[str] = "aws_ec2_elastic_inference_accelerator_association" kind_display: ClassVar[str] = "AWS EC2 Elastic Inference Accelerator Association" kind_description: ClassVar[str] = ( - "Elastic Inference Accelerator Association allows users to attach elastic" - " inference accelerators to EC2 instances in order to accelerate their machine" - " learning inference workloads." + "AWS EC2 Elastic Inference Accelerator Association refers to the connection between an EC2 instance and" + " an Elastic Inference (EI) Accelerator, which provides additional, scalable inference computing" + " resources to run deep learning models with improved performance-cost ratio." ) mapping: ClassVar[Dict[str, Bender]] = { "elastic_inference_accelerator_arn": S("ElasticInferenceAcceleratorArn"), @@ -1121,9 +1120,9 @@ class AwsEc2CapacityReservationTargetResponse: kind: ClassVar[str] = "aws_ec2_capacity_reservation_target_response" kind_display: ClassVar[str] = "AWS EC2 Capacity Reservation Target Response" kind_description: ClassVar[str] = ( - "This resource represents the response for querying capacity reservation" - " targets available for EC2 instances in AWS. It provides information about" - " the different capacity reservation options and their availability." + "Capacity Reservation Target Response is used in AWS to specify the Amazon Resource Name (ARN)" + " of the Capacity Reservation target in AWS EC2. This is used when you launch an instance or" + " when you allocate an elastic IP address." ) mapping: ClassVar[Dict[str, Bender]] = { "capacity_reservation_id": S("CapacityReservationId"), @@ -1479,8 +1478,8 @@ class AwsEc2RecurringCharge: kind: ClassVar[str] = "aws_ec2_recurring_charge" kind_display: ClassVar[str] = "AWS EC2 Recurring Charge" kind_description: ClassVar[str] = ( - "There is no specific resource or service named 'aws_ec2_recurring_charge' in" - " AWS. Please provide a valid resource name." + "AWS EC2 Recurring Charge is a cost structure applied to certain EC2 instances, where users pay a fixed" + " price at regular intervals for the use of the instance, typically offering savings over on-demand pricing." ) mapping: ClassVar[Dict[str, Bender]] = {"amount": S("Amount"), "frequency": S("Frequency")} amount: Optional[float] = field(default=None) @@ -2303,8 +2302,9 @@ class AwsEc2SubnetCidrBlockState: kind: ClassVar[str] = "aws_ec2_subnet_cidr_block_state" kind_display: ClassVar[str] = "AWS EC2 Subnet CIDR Block State" kind_description: ClassVar[str] = ( - "The state of the CIDR block for a subnet in AWS EC2. It indicates whether" - " the CIDR block is associated with a subnet or not." + "The AWS EC2 Subnet CIDR Block State is an indication of the status of a CIDR block within a subnet," + " such as whether it's active, pending, or in some error state, along with a message that may provide" + " additional details about that status." ) mapping: ClassVar[Dict[str, Bender]] = {"state": S("State"), "status_message": S("StatusMessage")} state: Optional[str] = field(default=None) @@ -2468,9 +2468,10 @@ class AwsEc2UserIdGroupPair: kind: ClassVar[str] = "aws_ec2_user_id_group_pair" kind_display: ClassVar[str] = "AWS EC2 User ID Group Pair" kind_description: ClassVar[str] = ( - "User ID Group Pair is a configuration in EC2 that associates a user ID with" - " a security group, allowing or denying traffic based on the specified source" - " or destination IP address range." + "The AWS EC2 User ID Group Pair is a networking configuration setting within EC2 that defines" + " a relationship between a user's account and a security group. It typically includes information" + " about the security group and its permissions, and is used for setting up network access controls" + " in VPC peering connections." ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("Description"), @@ -2638,8 +2639,9 @@ class AwsEc2ProvisionedBandwidth: kind: ClassVar[str] = "aws_ec2_provisioned_bandwidth" kind_display: ClassVar[str] = "AWS EC2 Provisioned Bandwidth" kind_description: ClassVar[str] = ( - "EC2 Provisioned Bandwidth refers to the ability to provision high-bandwidth" - " connections between EC2 instances and other AWS services." + "AWS EC2 Provisioned Bandwidth refers to the amount of bandwidth that an AWS EC2 instance" + " is guaranteed to have based on its instance type. This provisioned capacity is dedicated" + " to the instance for network resources, ensuring consistent performance for network-intensive applications." ) mapping: ClassVar[Dict[str, Bender]] = { "provision_time": S("ProvisionTime"), @@ -3097,8 +3099,8 @@ class AwsEc2DestinationOption: kind: ClassVar[str] = "aws_ec2_destination_option" kind_display: ClassVar[str] = "AWS EC2 Destination Option" kind_description: ClassVar[str] = ( - "EC2 Destination Options allow users to specify the destinations for traffic" - " within a VPC, providing flexibility and control over network traffic flows." + "AWS EC2 Destination Options allow you to configure the storage format, Hive compatibility," + " and hourly partitioning of EC2 flow logs in Amazon S3, facilitating customized log management and analysis." ) mapping: ClassVar[Dict[str, Bender]] = { "file_format": S("FileFormat"), diff --git a/plugins/aws/resoto_plugin_aws/resource/ecs.py b/plugins/aws/resoto_plugin_aws/resource/ecs.py index 2faee346be..8b86783f13 100644 --- a/plugins/aws/resoto_plugin_aws/resource/ecs.py +++ b/plugins/aws/resoto_plugin_aws/resource/ecs.py @@ -176,9 +176,9 @@ class AwsEcsAttachment: kind: ClassVar[str] = "aws_ecs_attachment" kind_display: ClassVar[str] = "AWS ECS Attachment" kind_description: ClassVar[str] = ( - "ECS Attachments are links between ECS tasks and Elastic Network Interfaces" - " (ENIs) that enable containerized applications running in the ECS service to" - " communicate with other resources within a Virtual Private Cloud (VPC)." + "AWS ECS Attachment represents a link between an ECS resource, like a container instance," + " and a network or security group. It includes identifiers and status information that" + " help manage and track the resource's integration and operational state within the ECS environment." ) mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), @@ -218,9 +218,9 @@ class AwsEcsNetworkBinding: kind: ClassVar[str] = "aws_ecs_network_binding" kind_display: ClassVar[str] = "AWS ECS Network Binding" kind_description: ClassVar[str] = ( - "ECS network binding is a service in Amazon's Elastic Container Service that" - " allows containers within a task to communicate with each other and external" - " services securely." + "The AWS ECS Network Binding sets up the networking parameters for an ECS container," + " defining how a container port is bound to a host port, the IP address it should bind" + " to, and the network protocol to be used." ) mapping: ClassVar[Dict[str, Bender]] = { "bind_ip": S("bindIP"), @@ -326,9 +326,9 @@ class AwsEcsInferenceAccelerator: kind: ClassVar[str] = "aws_ecs_inference_accelerator" kind_display: ClassVar[str] = "AWS ECS Inference Accelerator" kind_description: ClassVar[str] = ( - "ECS Inference Accelerators are resources used by Amazon ECS to accelerate" - " deep learning inference workloads, improving performance and reducing" - " latency." + "The AWS ECS Inference Accelerator is a resource that provides machine learning inference acceleration" + " for containers. It is specified by a device name and device type to identify the accelerator hardware" + " to be used by ECS tasks." ) mapping: ClassVar[Dict[str, Bender]] = {"device_name": S("deviceName"), "device_type": S("deviceType")} device_name: Optional[str] = field(default=None) @@ -367,9 +367,8 @@ class AwsEcsContainerOverride: kind: ClassVar[str] = "aws_ecs_container_override" kind_display: ClassVar[str] = "AWS ECS Container Override" kind_description: ClassVar[str] = ( - "ECS Container Overrides allow users to override the default values of" - " container instance attributes defined in a task definition for a specific" - " task run." + "AWS ECS Container Override allows you to change the settings for a container within a task," + " such as command, environment variables, and resource allocation, on a per-task basis." ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), @@ -611,9 +610,9 @@ class AwsEcsDevice: kind: ClassVar[str] = "aws_ecs_device" kind_display: ClassVar[str] = "AWS ECS Device" kind_description: ClassVar[str] = ( - "ECS Device refers to a device connected to Amazon Elastic Container Service," - " which is a container management service that allows you to easily run and" - " scale containerized applications." + "The AWS ECS Device configuration specifies a host machine's device to be mapped to a container," + " along with the path it should be mounted to inside the container and the permissions the" + " container has on the device." ) mapping: ClassVar[Dict[str, Bender]] = { "host_path": S("hostPath"), @@ -706,9 +705,8 @@ class AwsEcsHostEntry: kind: ClassVar[str] = "aws_ecs_host_entry" kind_display: ClassVar[str] = "AWS ECS Host Entry" kind_description: ClassVar[str] = ( - "ECS Host Entries are configurations that specify the IP address and hostname" - " of a registered container instance in Amazon Elastic Container Service" - " (ECS)." + "The AWS ECS Host Entry configuration specifies a custom host-to-IP address mapping to be added" + " to a container's `/etc/hosts` file, allowing for custom hostname resolutions within the container." ) mapping: ClassVar[Dict[str, Bender]] = {"hostname": S("hostname"), "ip_address": S("ipAddress")} hostname: Optional[str] = field(default=None) @@ -782,9 +780,9 @@ class AwsEcsSystemControl: kind: ClassVar[str] = "aws_ecs_system_control" kind_display: ClassVar[str] = "AWS ECS System Control" kind_description: ClassVar[str] = ( - "ECS System Control is a service in AWS ECS (Elastic Container Service) that" - " allows users to manage and control the deployment of containers on a cloud" - " environment." + "The AWS ECS System Control is a configuration that allows you to set namespaced kernel parameters" + " for containers, controlling system-level behaviors at runtime by specifying the namespace" + " and the corresponding value." ) mapping: ClassVar[Dict[str, Bender]] = {"namespace": S("namespace"), "value": S("value")} namespace: Optional[str] = field(default=None) @@ -925,9 +923,8 @@ class AwsEcsEFSAuthorizationConfig: kind: ClassVar[str] = "aws_ecs_efs_authorization_config" kind_display: ClassVar[str] = "AWS ECS EFS Authorization Config" kind_description: ClassVar[str] = ( - "ECS EFS Authorization Config is a feature in AWS ECS (Elastic Container" - " Service) that allows fine-grained permission control for using Amazon EFS" - " (Elastic File System) with ECS tasks." + "The AWS ECS EFS Authorization Config is a setting that allows ECS tasks to use an Amazon EFS file system," + " specifying the EFS access point ID and whether or not IAM authorization should be used for access control." ) mapping: ClassVar[Dict[str, Bender]] = {"access_point_id": S("accessPointId"), "iam": S("iam")} access_point_id: Optional[str] = field(default=None) @@ -995,9 +992,8 @@ class AwsEcsVolume: kind: ClassVar[str] = "aws_ecs_volume" kind_display: ClassVar[str] = "AWS ECS Volume" kind_description: ClassVar[str] = ( - "ECS Volumes are persistent block storage devices that can be attached to" - " Amazon ECS containers, providing data storage for applications running on" - " the Amazon Elastic Container Service." + "ECS Volumes are container volumes that can be used for persistent data storage and" + " sharing in Amazon Elastic Container Service." ) mapping: ClassVar[Dict[str, Bender]] = { "name": S("name"), @@ -1246,9 +1242,9 @@ class AwsEcsDeploymentCircuitBreaker: kind: ClassVar[str] = "aws_ecs_deployment_circuit_breaker" kind_display: ClassVar[str] = "AWS ECS Deployment Circuit Breaker" kind_description: ClassVar[str] = ( - "Circuit Breaker is a feature in Amazon Elastic Container Service (ECS) that" - " helps prevent application failures by stopping the deployment of a new" - " version if it exceeds a specified error rate or latency threshold." + "The AWS ECS Deployment Circuit Breaker is a feature that can automatically stop and rollback" + " a deployment if it's not proceeding as expected, helping to maintain service stability and" + " minimize downtime during updates." ) mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "rollback": S("rollback")} enable: Optional[bool] = field(default=None) @@ -1684,8 +1680,9 @@ class AwsEcsVersionInfo: kind: ClassVar[str] = "aws_ecs_version_info" kind_display: ClassVar[str] = "AWS ECS Version Info" kind_description: ClassVar[str] = ( - "ECS Version Info provides information about the different versions of Amazon" - " Elastic Container Service (ECS) available in the AWS cloud." + "AWS ECS Version Info provides details about the software versions running on the ECS container agent," + " including the version of the ECS agent itself, its hash identifier, and the version of Docker" + " that is being used." ) mapping: ClassVar[Dict[str, Bender]] = { "agent_version": S("agentVersion"), diff --git a/plugins/aws/resoto_plugin_aws/resource/eks.py b/plugins/aws/resoto_plugin_aws/resource/eks.py index b7417bd9d4..f6ac717bba 100644 --- a/plugins/aws/resoto_plugin_aws/resource/eks.py +++ b/plugins/aws/resoto_plugin_aws/resource/eks.py @@ -174,9 +174,9 @@ class AwsEksLaunchTemplateSpecification: kind: ClassVar[str] = "aws_eks_launch_template_specification" kind_display: ClassVar[str] = "AWS EKS Launch Template Specification" kind_description: ClassVar[str] = ( - "EKS Launch Template Specification refers to a configuration template used to" - " provision Amazon Elastic Kubernetes Service (EKS) clusters with pre-" - " configured instances." + "The AWS EKS Launch Template Specification defines a template by its name," + " version, and ID that describes the EC2 instance configuration to use when" + " launching nodes in an Amazon EKS cluster." ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "version": S("version"), "id": S("id")} name: Optional[str] = field(default=None) @@ -379,8 +379,9 @@ class AwsEksConnectorConfig: kind: ClassVar[str] = "aws_eks_connector_config" kind_display: ClassVar[str] = "AWS EKS Connector Config" kind_description: ClassVar[str] = ( - "The AWS EKS Connector Config is used to configure the connection between a" - " Kubernetes cluster in Amazon EKS and external resources or services." + "The AWS EKS Connector Config is a set of parameters used to connect external Kubernetes clusters" + " to Amazon EKS, specifying the details needed for activation (such as activation ID and code), the" + " expiry time of the activation, the cluster provider, and the role ARN for permissions." ) mapping: ClassVar[Dict[str, Bender]] = { "activation_id": S("activationId"), diff --git a/plugins/aws/resoto_plugin_aws/resource/elasticache.py b/plugins/aws/resoto_plugin_aws/resource/elasticache.py index f522a874c3..5d01793248 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elasticache.py +++ b/plugins/aws/resoto_plugin_aws/resource/elasticache.py @@ -71,10 +71,9 @@ class AwsElastiCacheDestinationDetails: kind: ClassVar[str] = "aws_elasticache_destination_details" kind_display: ClassVar[str] = "AWS ElastiCache Destination Details" kind_description: ClassVar[str] = ( - "ElastiCache is a web service that makes it easy to deploy, operate, and" - " scale an in-memory cache in the cloud. The AWS ElastiCache Destination" - " Details provide information about the destination of caching in an" - " ElastiCache cluster." + "AWS ElastiCache Destination Details encompass the configuration specifics for where ElastiCache" + " can send logs, including details for both Amazon CloudWatch Logs and Amazon Kinesis Firehose" + " as potential log delivery destinations." ) mapping: ClassVar[Dict[str, Bender]] = { "cloud_watch_logs_details": S("CloudWatchLogsDetails", "LogGroup"), @@ -89,9 +88,9 @@ class AwsElastiCachePendingLogDeliveryConfiguration: kind: ClassVar[str] = "aws_elasticache_pending_log_delivery_configuration" kind_display: ClassVar[str] = "AWS ElastiCache Pending Log Delivery Configuration" kind_description: ClassVar[str] = ( - "ElastiCache Pending Log Delivery Configuration is a feature that allows" - " users to view information on the status of log delivery for automatic" - " backups in Amazon ElastiCache." + "The AWS ElastiCache Pending Log Delivery Configuration details the configurations for log delivery" + " that are awaiting activation. It specifies the type of logs to deliver, the intended destination" + " service, the format of the logs, and additional details about the destination." ) mapping: ClassVar[Dict[str, Bender]] = { "log_type": S("LogType"), @@ -136,9 +135,9 @@ class AwsElastiCacheNotificationConfiguration: kind: ClassVar[str] = "aws_elasticache_notification_configuration" kind_display: ClassVar[str] = "AWS ElastiCache Notification Configuration" kind_description: ClassVar[str] = ( - "ElastiCache Notification Configuration allows users to configure" - " notifications for events occurring in Amazon ElastiCache, such as failures" - " or scaling events." + "The AWS ElastiCache Notification Configuration specifies settings for sending notifications related to an" + " ElastiCache instance, including the Amazon Resource Name (ARN) of the notification topic and the status" + " of notification delivery." ) mapping: ClassVar[Dict[str, Bender]] = {"topic_arn": S("TopicArn"), "topic_status": S("TopicStatus")} topic_arn: Optional[str] = field(default=None) @@ -214,9 +213,8 @@ class AwsElastiCacheSecurityGroupMembership: kind: ClassVar[str] = "aws_elasticache_security_group_membership" kind_display: ClassVar[str] = "AWS ElastiCache Security Group Membership" kind_description: ClassVar[str] = ( - "ElastiCache Security Group Membership allows you to control access to your" - " ElastiCache clusters by specifying the source IP ranges or security groups" - " that are allowed to connect to them." + "The AWS ElastiCache Security Group Membership manages an ElastiCache cluster's access permissions" + " by linking it with a security group to control network traffic to and from the cache nodes." ) mapping: ClassVar[Dict[str, Bender]] = {"security_group_id": S("SecurityGroupId"), "status": S("Status")} security_group_id: Optional[str] = field(default=None) @@ -228,10 +226,8 @@ class AwsElastiCacheLogDeliveryConfiguration: kind: ClassVar[str] = "aws_elasticache_log_delivery_configuration" kind_display: ClassVar[str] = "AWS ElastiCache Log Delivery Configuration" kind_description: ClassVar[str] = ( - "ElastiCache Log Delivery Configuration allows you to configure the delivery" - " of logs generated by Amazon ElastiCache to an Amazon S3 bucket, enabling you" - " to collect, monitor, and analyze logs for troubleshooting and auditing" - " purposes." + "The AWS ElastiCache Log Delivery Configuration controls the export and formatting of logs" + " from ElastiCache to designated AWS services." ) mapping: ClassVar[Dict[str, Bender]] = { "log_type": S("LogType"), @@ -412,9 +408,8 @@ class AwsElastiCacheUserGroupsUpdateStatus: kind: ClassVar[str] = "aws_elasticache_user_groups_update_status" kind_display: ClassVar[str] = "AWS ElastiCache User Groups Update Status" kind_description: ClassVar[str] = ( - "This resource represents the status of updating user groups in AWS" - " ElastiCache. User groups in ElastiCache are used to manage user access to" - " Redis or Memcached clusters." + "The AWS ElastiCache User Groups Update Status reflects the progress of adding or removing user group" + " associations to an ElastiCache cluster, helping to manage access rights and permissions for users." ) mapping: ClassVar[Dict[str, Bender]] = { "user_group_ids_to_add": S("UserGroupIdsToAdd", default=[]), diff --git a/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py b/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py index cb514407e8..add0af4517 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py +++ b/plugins/aws/resoto_plugin_aws/resource/elasticbeanstalk.py @@ -248,9 +248,9 @@ class AwsBeanstalkQueueDescription: kind: ClassVar[str] = "aws_beanstalk_queue_description" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Queue Description" kind_description: ClassVar[str] = ( - "Elastic Beanstalk is a platform for deploying and running web applications." - " This resource represents the description of a queue within the Elastic" - " Beanstalk environment." + "AWS Elastic Beanstalk Queue Description outlines the details of a message queue, such as Amazon Simple" + " Queue Service (SQS), that's integrated with an Elastic Beanstalk application, providing information on" + " the queue's configurations and attributes for message processing." ) mapping: ClassVar[Dict[str, Bender]] = { "queue_name": S("Name"), @@ -287,9 +287,9 @@ class AwsBeanstalkEnvironment(AwsResource): kind: ClassVar[str] = "aws_beanstalk_environment" kind_display: ClassVar[str] = "AWS Elastic Beanstalk Environment" kind_description: ClassVar[str] = ( - "AWS Elastic Beanstalk is a service that makes it easy to deploy, run, and" - " scale applications in the AWS cloud. An Elastic Beanstalk environment is a" - " version of your application that is deployed and running on AWS." + "An AWS Elastic Beanstalk environment is a collection of AWS resources running an application version." + " It includes an application server, server instances, load balancers, and optionally, a database." + " Each environment runs only one application and one version of that application at a time." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-environments", "Environments") reference_kinds: ClassVar[ModelReference] = { diff --git a/plugins/aws/resoto_plugin_aws/resource/elb.py b/plugins/aws/resoto_plugin_aws/resource/elb.py index 24e3e1f16e..fad34b5289 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elb.py +++ b/plugins/aws/resoto_plugin_aws/resource/elb.py @@ -189,9 +189,8 @@ class AwsElbSourceSecurityGroup: kind: ClassVar[str] = "aws_elb_source_security_group" kind_display: ClassVar[str] = "AWS ELB Source Security Group" kind_description: ClassVar[str] = ( - "ELB Source Security Group is a feature in AWS Elastic Load Balancing that" - " allows you to control access to your load balancer by specifying the source" - " security group of the instances." + "The AWS ELB Source Security Group is used to control access to an Elastic Load Balancer" + " by identifying a trusted group of sources that can send traffic to it." ) mapping: ClassVar[Dict[str, Bender]] = {"owner_alias": S("OwnerAlias"), "group_name": S("GroupName")} owner_alias: Optional[str] = field(default=None) diff --git a/plugins/aws/resoto_plugin_aws/resource/elbv2.py b/plugins/aws/resoto_plugin_aws/resource/elbv2.py index 8aa238af44..c762ac9433 100644 --- a/plugins/aws/resoto_plugin_aws/resource/elbv2.py +++ b/plugins/aws/resoto_plugin_aws/resource/elbv2.py @@ -286,8 +286,9 @@ class AwsAlbAction: kind: ClassVar[str] = "aws_alb_action" kind_display: ClassVar[str] = "AWS Application Load Balancer Action" kind_description: ClassVar[str] = ( - "An AWS Application Load Balancer Action defines how the load balancer should" - " distribute incoming requests to target instances or services." + "An AWS Application Load Balancer Action determines what action to take when a request fulfills a listener" + " rule. This could be to forward requests to a target group, redirect requests to another URL, or return a" + " custom HTTP response." ) mapping: ClassVar[Dict[str, Bender]] = { "type": S("Type"), diff --git a/plugins/aws/resoto_plugin_aws/resource/glacier.py b/plugins/aws/resoto_plugin_aws/resource/glacier.py index a8f2fae757..a142ccc477 100644 --- a/plugins/aws/resoto_plugin_aws/resource/glacier.py +++ b/plugins/aws/resoto_plugin_aws/resource/glacier.py @@ -39,8 +39,9 @@ class AwsGlacierSelectParameters: kind: ClassVar[str] = "aws_glacier_job_select_parameters" kind_display: ClassVar[str] = "AWS Glacier Job Select Parameters" kind_description: ClassVar[str] = ( - "AWS Glacier Job Select Parameters are specific options and configurations" - " for selecting and querying data from Glacier vaults for retrieval." + "The AWS Glacier Job Select Parameters are used to configure data retrieval jobs in Amazon Glacier," + " allowing you to define the format of the input data, the type of queries, the query expressions" + " themselves, and the format of the output data." ) mapping: ClassVar[Dict[str, Bender]] = { "input_serialization": S("InputSerialization"), @@ -59,9 +60,9 @@ class AwsGlacierBucketEncryption: kind: ClassVar[str] = "aws_glacier_bucket_encryption" kind_display: ClassVar[str] = "AWS Glacier Bucket Encryption" kind_description: ClassVar[str] = ( - "AWS Glacier is a long-term archival storage service, and AWS Glacier Bucket" - " Encryption provides the ability to encrypt data at rest in Glacier buckets" - " to enhance data security and compliance." + "The AWS Glacier Bucket Encryption settings define the method and keys used to secure data in an Amazon" + " Glacier storage bucket, providing options for server-side encryption and specifying the use of AWS" + " Key Management Service (KMS) keys where applicable." ) mapping: ClassVar[Dict[str, Bender]] = { "encryption_type": S("EncryptionType"), @@ -94,9 +95,8 @@ class AwsGlacierJobBucket: kind: ClassVar[str] = "aws_glacier_job_bucket" kind_display: ClassVar[str] = "AWS Glacier Job Bucket" kind_description: ClassVar[str] = ( - "The AWS Glacier Job Bucket is a storage location used for managing jobs in" - " Amazon Glacier, a secure and durable storage service for long-term data" - " archiving and backup." + "The AWS Glacier Job Bucket is a setting for defining where and how the output of a" + " data retrieval job from Amazon Glacier is stored and managed in Amazon S3." ) mapping: ClassVar[Dict[str, Bender]] = { "bucket_name": S("BucketName"), diff --git a/plugins/aws/resoto_plugin_aws/resource/kms.py b/plugins/aws/resoto_plugin_aws/resource/kms.py index 65e68438d9..769aa62a11 100644 --- a/plugins/aws/resoto_plugin_aws/resource/kms.py +++ b/plugins/aws/resoto_plugin_aws/resource/kms.py @@ -17,8 +17,9 @@ class AwsKmsMultiRegionPrimaryKey: kind: ClassVar[str] = "aws_kms_multiregion_primary_key" kind_display: ClassVar[str] = "AWS KMS Multiregion Primary Key" kind_description: ClassVar[str] = ( - "AWS KMS Multiregion Primary Key is a cryptographic key used for encryption" - " and decryption of data in multiple AWS regions." + "The AWS KMS Multi-Region Primary Key setting specifies the main encryption key and its associated" + " AWS region in a multi-region key setup, which is used to encrypt and decrypt data across" + " different geographic locations." ) mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "region": S("Region")} arn: Optional[str] = field(default=None) @@ -30,10 +31,9 @@ class AwsKmsMultiRegionReplicaKey: kind: ClassVar[str] = "aws_kms_multiregion_replica_key" kind_display: ClassVar[str] = "AWS KMS Multi-Region Replica Key" kind_description: ClassVar[str] = ( - "AWS KMS Multi-Region Replica Key is a feature of AWS Key Management Service" - " (KMS) that allows for the replication of customer master keys (CMKs) across" - " multiple AWS regions for improved availability and durability of encryption" - " operations." + "The AWS KMS Multi-Region Replica Key is part of a multi-region key configuration that serves as a" + " secondary copy of the primary encryption key, residing in a different AWS region to support" + " cross-regional failover and localized encryption operations." ) mapping: ClassVar[Dict[str, Bender]] = {"arn": S("Arn"), "region": S("Region")} arn: Optional[str] = field(default=None) @@ -45,10 +45,9 @@ class AwsKmsMultiRegionConfig: kind: ClassVar[str] = "aws_kms_multiregion_config" kind_display: ClassVar[str] = "AWS KMS Multi-Region Config" kind_description: ClassVar[str] = ( - "AWS KMS Multi-Region Config is a feature in Amazon Key Management Service" - " (KMS) that allows you to configure cross-region replication of KMS keys." - " This helps you ensure availability and durability of your keys in multiple" - " regions." + "The AWS KMS Multi-Region Config allows for the creation and management of AWS KMS keys that" + " are replicated across multiple AWS regions, enabling a centralized encryption key strategy" + " with regional redundancies for improved availability and latency." ) mapping: ClassVar[Dict[str, Bender]] = { "multi_region_key_type": S("MultiRegionKeyType"), diff --git a/plugins/aws/resoto_plugin_aws/resource/lambda_.py b/plugins/aws/resoto_plugin_aws/resource/lambda_.py index 270acde1fa..7d4c7a16f9 100644 --- a/plugins/aws/resoto_plugin_aws/resource/lambda_.py +++ b/plugins/aws/resoto_plugin_aws/resource/lambda_.py @@ -83,8 +83,8 @@ class AwsLambdaEnvironmentResponse: kind: ClassVar[str] = "aws_lambda_environment_response" kind_display: ClassVar[str] = "AWS Lambda Environment Response" kind_description: ClassVar[str] = ( - "AWS Lambda Environment Response is a service that provides information about" - " the runtime environment of an AWS Lambda function." + "The AWS Lambda Environment Response provides information about the environment variables configured" + " for a Lambda function, including their values and any errors associated with retrieving them." ) mapping: ClassVar[Dict[str, Bender]] = { "variables": S("Variables"), @@ -166,9 +166,8 @@ class AwsLambdaImageConfigResponse: kind: ClassVar[str] = "aws_lambda_image_config_response" kind_display: ClassVar[str] = "AWS Lambda Image Configuration Response" kind_description: ClassVar[str] = ( - "AWS Lambda Image Configuration Response is the response object returned when" - " configuring an image for AWS Lambda, which is a compute service that lets" - " you run code without provisioning or managing servers." + "The AWS Lambda Image Configuration Response provides information about the container image" + " configuration for a Lambda function and any errors if the configuration failed to apply." ) mapping: ClassVar[Dict[str, Bender]] = { "image_config": S("ImageConfig") >> Bend(AwsLambdaImageConfig.mapping), @@ -209,8 +208,8 @@ class AwsLambdaFunctionUrlConfig: kind: ClassVar[str] = "aws_lambda_function_url_config" kind_display: ClassVar[str] = "AWS Lambda Function URL Config" kind_description: ClassVar[str] = ( - "URL configuration for AWS Lambda function, allowing users to specify the" - " trigger URL and other related settings." + "The AWS Lambda Function URL Config enables direct invocation of Lambda functions over" + " the web using HTTP(S) endpoints, with customizable authentication and cross-origin access." ) mapping: ClassVar[Dict[str, Bender]] = { "function_url": S("FunctionUrl"), diff --git a/plugins/aws/resoto_plugin_aws/resource/rds.py b/plugins/aws/resoto_plugin_aws/resource/rds.py index 5928ef2bb5..639aebde13 100644 --- a/plugins/aws/resoto_plugin_aws/resource/rds.py +++ b/plugins/aws/resoto_plugin_aws/resource/rds.py @@ -167,9 +167,9 @@ class AwsRdsPendingCloudwatchLogsExports: kind: ClassVar[str] = "aws_rds_pending_cloudwatch_logs_exports" kind_display: ClassVar[str] = "AWS RDS Pending CloudWatch Logs Exports" kind_description: ClassVar[str] = ( - "RDS Pending CloudWatch Logs Exports represent the logs that are being" - " exported from an Amazon RDS database to Amazon CloudWatch Logs but are still" - " in a pending state." + "AWS RDS Pending CloudWatch Logs Exports configuration manages the pending changes to" + " the log types that are enabled or disabled for export to CloudWatch Logs for an RDS" + " instance, providing control over which logs are actively monitored and which are not." ) mapping: ClassVar[Dict[str, Bender]] = { "log_types_to_enable": S("LogTypesToEnable", default=[]), @@ -301,9 +301,11 @@ class AwsRdsDomainMembership: class AwsRdsDBRole: kind: ClassVar[str] = "aws_rds_db_role" kind_display: ClassVar[str] = "AWS RDS DB Role" - kind_description: ClassVar[ - str - ] = "RDS DB Roles are a way to manage user access to Amazon RDS database instances using IAM." + kind_description: ClassVar[str] = ( + "The AWS RDS DB Role configuration associates an AWS Identity and Access Management (IAM) role" + " with an Amazon RDS DB instance to provide access to AWS features and services specified by" + " the feature name." + ) mapping: ClassVar[Dict[str, Bender]] = { "role_arn": S("RoleArn"), "feature_name": S("FeatureName"), diff --git a/plugins/aws/resoto_plugin_aws/resource/redshift.py b/plugins/aws/resoto_plugin_aws/resource/redshift.py index 151a9577d4..404045883d 100644 --- a/plugins/aws/resoto_plugin_aws/resource/redshift.py +++ b/plugins/aws/resoto_plugin_aws/resource/redshift.py @@ -347,9 +347,8 @@ class AwsRedshiftAquaConfiguration: kind: ClassVar[str] = "aws_redshift_aqua_configuration" kind_display: ClassVar[str] = "AWS Redshift Aqua Configuration" kind_description: ClassVar[str] = ( - "Aqua is a feature of Amazon Redshift that allows you to offload and" - " accelerate the execution of certain types of queries using machine learning" - " and columnar storage technology." + "The AWS Redshift Aqua Configuration relates to the status and management settings of AQUA" + " (Advanced Query Accelerator), which enhances the performance of certain types of queries in Amazon Redshift." ) mapping: ClassVar[Dict[str, Bender]] = { "aqua_status": S("AquaStatus"), diff --git a/plugins/aws/resoto_plugin_aws/resource/route53.py b/plugins/aws/resoto_plugin_aws/resource/route53.py index 2c4d79edf9..3ff567ae5f 100644 --- a/plugins/aws/resoto_plugin_aws/resource/route53.py +++ b/plugins/aws/resoto_plugin_aws/resource/route53.py @@ -38,9 +38,8 @@ class AwsRoute53LinkedService: kind: ClassVar[str] = "aws_route53_linked_service" kind_display: ClassVar[str] = "AWS Route 53 Linked Service" kind_description: ClassVar[str] = ( - "Route 53 Linked Service is a feature in AWS Route 53 that allows you to link" - " your domain name to other AWS services, such as an S3 bucket or CloudFront" - " distribution." + "The AWS Route 53 Linked Service is a configuration that integrates Route 53 with other AWS services" + " via a service principal, which is an identifier that is used to grant permissions." ) mapping: ClassVar[Dict[str, Bender]] = {"service_principal": S("ServicePrincipal"), "description": S("Description")} service_principal: Optional[str] = field(default=None) @@ -52,9 +51,8 @@ class AwsRoute53Zone(AwsResource, BaseDNSZone): kind: ClassVar[str] = "aws_route53_zone" kind_display: ClassVar[str] = "AWS Route 53 Zone" kind_description: ClassVar[str] = ( - "Route 53 is a scalable domain name system (DNS) web service designed to" - " provide highly reliable and cost-effective domain registration, DNS routing," - " and health checking of resources within the AWS cloud." + "AWS Route 53 Zones manage domain DNS settings, enabling users to direct" + " internet traffic for their domains through various DNS records." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-hosted-zones", "HostedZones") reference_kinds: ClassVar[ModelReference] = { @@ -200,9 +198,8 @@ class AwsRoute53CidrRoutingConfig: kind: ClassVar[str] = "aws_route53_cidr_routing_config" kind_display: ClassVar[str] = "AWS Route 53 CIDR Routing Config" kind_description: ClassVar[str] = ( - "CIDR Routing Config is a feature in AWS Route 53 that allows you to route" - " traffic based on CIDR blocks, enabling more granular control over how your" - " DNS queries are resolved." + "The AWS Route 53 CIDR Routing Config is a feature for managing how traffic is routed based" + " on IP address location, allowing for more precise traffic routing decisions in Amazon Route 53 services." ) mapping: ClassVar[Dict[str, Bender]] = {"collection_id": S("CollectionId"), "location_name": S("LocationName")} collection_id: Optional[str] = field(default=None) diff --git a/plugins/aws/resoto_plugin_aws/resource/s3.py b/plugins/aws/resoto_plugin_aws/resource/s3.py index 255f6c6e01..fe8e874e6e 100644 --- a/plugins/aws/resoto_plugin_aws/resource/s3.py +++ b/plugins/aws/resoto_plugin_aws/resource/s3.py @@ -129,9 +129,8 @@ class AwsS3TargetGrant: kind: ClassVar[str] = "aws_s3_target_grant" kind_display: ClassVar[str] = "AWS S3 Target Grant" kind_description: ClassVar[str] = ( - "Target grants in AWS S3 provide permissions for cross-account replication," - " allowing one AWS S3 bucket to grant another AWS S3 bucket permissions to" - " perform replication." + "The AWS S3 Target Grant is a Container for granting information." + " By specifying a grantee and the type of permission, you can control how your S3 content is shared." ) mapping: ClassVar[Dict[str, Bender]] = { "grantee": S("Grantee") >> Bend(AwsS3Grantee.mapping), diff --git a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py index b096fd4870..8053caadd4 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py +++ b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py @@ -696,9 +696,8 @@ class AwsSagemakerAlgorithmValidationProfile: kind: ClassVar[str] = "aws_sagemaker_algorithm_validation_profile" kind_display: ClassVar[str] = "AWS SageMaker Algorithm Validation Profile" kind_description: ClassVar[str] = ( - "SageMaker Algorithm Validation Profile is a resource in Amazon SageMaker" - " that allows you to define validation rules for algorithms used in machine" - " learning models." + "The AWS SageMaker Algorithm Validation Profile is a configuration tool in AWS SageMaker" + " that helps ensure your machine learning algorithms function correctly before deployment." ) mapping: ClassVar[Dict[str, Bender]] = { "profile_name": S("ProfileName"), @@ -979,8 +978,9 @@ class AwsSagemakerApp(AwsResource): kind: ClassVar[str] = "aws_sagemaker_app" kind_display: ClassVar[str] = "AWS SageMaker App" kind_description: ClassVar[str] = ( - "SageMaker App is a development environment provided by Amazon Web Services" - " for building, training, and deploying machine learning models." + "The AWS SageMaker App facilitates the creation and management of machine learning applications, enabling" + " users to engage in interactive model building and analysis. It provides a user-centric, customizable" + " workspace, complete with monitoring of app health and activity." ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -1150,9 +1150,8 @@ class AwsSagemakerKernelGatewayAppSettings: kind: ClassVar[str] = "aws_sagemaker_kernel_gateway_app_settings" kind_display: ClassVar[str] = "AWS SageMaker Kernel Gateway App Settings" kind_description: ClassVar[str] = ( - "SageMaker Kernel Gateway App Settings is a service by AWS that allows users" - " to configure and manage settings for their SageMaker kernel gateway" - " applications." + "AWS SageMaker Kernel Gateway App Settings allows customization and optimization of the compute environment" + " for Jupyter kernels, including specifying lifecycle configurations and using custom images." ) mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), @@ -1233,8 +1232,8 @@ class AwsSagemakerCanvasAppSettings: kind: ClassVar[str] = "aws_sagemaker_canvas_app_settings" kind_display: ClassVar[str] = "AWS SageMaker Canvas App Settings" kind_description: ClassVar[str] = ( - "SageMaker Canvas App Settings are configurations for custom user interfaces" - " built using Amazon SageMaker's visual interface" + "The AWS SageMaker Canvas App Settings facilitate the configuration of time series" + " forecasting features within the SageMaker Canvas visual data preparation tool." ) mapping: ClassVar[Dict[str, Bender]] = { "time_series_forecasting_settings": S("TimeSeriesForecastingSettings") @@ -1301,10 +1300,9 @@ class AwsSagemakerDomainSettings: kind: ClassVar[str] = "aws_sagemaker_domain_settings" kind_display: ClassVar[str] = "AWS SageMaker Domain Settings" kind_description: ClassVar[str] = ( - "SageMaker Domain Settings allow you to configure and manage domains in" - " Amazon SageMaker, a fully managed machine learning service. Domains provide" - " a central location for managing notebooks, experiments, and models in" - " SageMaker." + "AWS SageMaker Domain Settings define the specific configurations and behaviors within a SageMaker Domain." + " These settings can include the configuration for RStudio Server (a popular integrated development" + " environment for R), security settings, and resource management policies. " ) mapping: ClassVar[Dict[str, Bender]] = { "security_group_ids": S("SecurityGroupIds", default=[]), @@ -1322,8 +1320,8 @@ class AwsSagemakerDefaultSpaceSettings: kind: ClassVar[str] = "aws_sagemaker_default_space_settings" kind_display: ClassVar[str] = "AWS SageMaker Default Space Settings" kind_description: ClassVar[str] = ( - "SageMaker Default Space Settings refer to the default configurations and" - " preferences for organizing machine learning projects in Amazon SageMaker." + "AWS SageMaker Default Space Settings are used to configure default workspace environments" + " in SageMaker, encompassing aspects such as access, security, and operational behaviors for user workspaces." ) mapping: ClassVar[Dict[str, Bender]] = { "execution_role": S("ExecutionRole"), @@ -1344,8 +1342,9 @@ class AwsSagemakerDomain(AwsResource): kind: ClassVar[str] = "aws_sagemaker_domain" kind_display: ClassVar[str] = "AWS SageMaker Domain" kind_description: ClassVar[str] = ( - "SageMaker Domains are AWS services that provide a complete set of tools and" - " resources for building, training, and deploying machine learning models." + "A SageMaker Domain in AWS is a dedicated, managed environment within Amazon SageMaker that provides" + " data scientists and developers with the necessary tools and permissions to build, train, and deploy" + " machine learning models." ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -1530,8 +1529,8 @@ class AwsSagemakerExperimentSource: kind: ClassVar[str] = "aws_sagemaker_experiment_source" kind_display: ClassVar[str] = "AWS SageMaker Experiment Source" kind_description: ClassVar[str] = ( - "SageMaker Experiment Source is a resource in AWS SageMaker that represents" - " the source data used for machine learning experiments." + "AWS SageMaker Experiment Source tracks the origin and type of SageMaker resources," + " that contribute to a machine learning experiment." ) mapping: ClassVar[Dict[str, Bender]] = {"source_arn": S("SourceArn"), "source_type": S("SourceType")} source_arn: Optional[str] = field(default=None) @@ -1755,9 +1754,8 @@ class AwsSagemakerCodeRepository(AwsResource): kind: ClassVar[str] = "aws_sagemaker_code_repository" kind_display: ClassVar[str] = "AWS SageMaker Code Repository" kind_description: ClassVar[str] = ( - "SageMaker Code Repository is a managed service in Amazon SageMaker that" - " allows you to store, share, and manage machine learning code artifacts such" - " as notebooks, scripts, and libraries." + "The AWS SageMaker Code Repository is a managed Git-based code repository for storing and versioning" + " your machine learning code, making it easy to maintain and share code within your SageMaker projects." ) api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-code-repositories", "CodeRepositorySummaryList") mapping: ClassVar[Dict[str, Bender]] = { @@ -1956,9 +1954,8 @@ class AwsSagemakerAutoRollbackConfig: kind: ClassVar[str] = "aws_sagemaker_auto_rollback_config" kind_display: ClassVar[str] = "AWS SageMaker Auto Rollback Configuration" kind_description: ClassVar[str] = ( - "SageMaker Auto Rollback Configuration is a feature in AWS SageMaker that" - " allows you to configure automatic rollback of machine learning models in" - " case of deployment errors or issues." + "The AWS SageMaker Auto Rollback Configuration automatically reverts" + " a deployment if specified alarms are triggered." ) mapping: ClassVar[Dict[str, Bender]] = {"alarms": S("Alarms", default=[]) >> ForallBend(S("AlarmName"))} alarms: List[str] = field(factory=list) @@ -2072,8 +2069,9 @@ class AwsSagemakerPendingDeploymentSummary: kind: ClassVar[str] = "aws_sagemaker_pending_deployment_summary" kind_display: ClassVar[str] = "AWS SageMaker Pending Deployment Summary" kind_description: ClassVar[str] = ( - "AWS SageMaker Pending Deployment Summary provides information about pending" - " deployments in Amazon SageMaker, a fully managed machine learning service." + "AWS SageMaker Pending Deployment Summary provides details about an ongoing deployment process" + " in SageMaker, including the configuration name, the variants being deployed, and the" + " initiation time of the deployment." ) mapping: ClassVar[Dict[str, Bender]] = { "endpoint_config_name": S("EndpointConfigName"), @@ -2091,9 +2089,9 @@ class AwsSagemakerClarifyInferenceConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_inference_config" kind_display: ClassVar[str] = "AWS SageMaker Clarify Inference Config" kind_description: ClassVar[str] = ( - "SageMaker Clarify Inference Config is a configuration for running inference" - " on machine learning models using Amazon SageMaker Clarify. It provides tools" - " for explaining and bringing transparency to model predictions." + "The AWS SageMaker Clarify Inference Config is designed to configure inference requests and" + " results for models, enabling users to understand predictions by specifying various attributes," + " such as the input features and the format of the output." ) mapping: ClassVar[Dict[str, Bender]] = { "features_attribute": S("FeaturesAttribute"), @@ -2147,9 +2145,9 @@ class AwsSagemakerClarifyTextConfig: kind: ClassVar[str] = "aws_sagemaker_clarify_text_config" kind_display: ClassVar[str] = "AWS SageMaker Clarify Text Config" kind_description: ClassVar[str] = ( - "AWS SageMaker Clarify is a machine learning service that helps identify" - " potential bias and explainability issues in text data by providing data" - " insights and model explanations." + "The AWS SageMaker Clarify Text Config is a configuration setup that specifies the language" + " and granularity for analyzing text data within SageMaker Clarify, facilitating natural" + " language processing and understanding." ) mapping: ClassVar[Dict[str, Bender]] = {"language": S("Language"), "granularity": S("Granularity")} language: Optional[str] = field(default=None) @@ -2203,9 +2201,9 @@ class AwsSagemakerExplainerConfig: kind: ClassVar[str] = "aws_sagemaker_explainer_config" kind_display: ClassVar[str] = "AWS Sagemaker Explainer Config" kind_description: ClassVar[str] = ( - "Sagemaker Explainer Config is a configuration setting in AWS Sagemaker that" - " allows users to specify how to explain the output of a machine learning" - " model trained with Sagemaker." + "AWS SageMaker Explainer Config facilitates the configuration of Amazon SageMaker Clarify" + " to provide explanations for the predictions made by machine learning models, helping to" + " understand model behavior." ) mapping: ClassVar[Dict[str, Bender]] = { "clarify_explainer_config": S("ClarifyExplainerConfig") >> Bend(AwsSagemakerClarifyExplainerConfig.mapping) @@ -2367,8 +2365,8 @@ class AwsSagemakerArtifactSourceType: kind: ClassVar[str] = "aws_sagemaker_artifact_source_type" kind_display: ClassVar[str] = "AWS SageMaker Artifact Source Type" kind_description: ClassVar[str] = ( - "SageMaker Artifact Source Type is a resource in Amazon SageMaker that" - " represents the type of artifact source used for machine learning workloads." + "The Amazon SageMaker artifact source type identifies the origin of an artifact, such as a dataset" + " or model, using a specific type and corresponding value to facilitate tracking and lineage." ) mapping: ClassVar[Dict[str, Bender]] = {"source_id_type": S("SourceIdType"), "value": S("Value")} source_id_type: Optional[str] = field(default=None) @@ -2397,8 +2395,8 @@ class AwsSagemakerArtifact(AwsResource): kind: ClassVar[str] = "aws_sagemaker_artifact" kind_display: ClassVar[str] = "AWS SageMaker Artifact" kind_description: ClassVar[str] = ( - "SageMaker Artifacts are reusable machine learning assets, such as algorithms" - " and models, that can be stored and accessed in Amazon SageMaker." + "An Amazon SageMaker artifact is used for tracking the origin and usage of data" + " or models within ML workflows, providing a clear history for auditing and reproducibility." ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -2597,8 +2595,10 @@ class AwsSagemakerCognitoMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_cognito_member_definition" kind_display: ClassVar[str] = "AWS SageMaker Cognito Member Definition" kind_description: ClassVar[str] = ( - "SageMaker Cognito Member Definitions are used to define the access policies" - " for Amazon Cognito users in Amazon SageMaker." + "The AWS SageMaker Cognito Member Definition refers to the configuration that integrates Amazon" + " Cognito with SageMaker, allowing for the use of a Cognito User Pool to manage user access to" + " SageMaker resources. This definition specifies which Cognito User Pool and group should be used for" + " authenticating users, as well as the Client ID associated with the application within Cognito." ) mapping: ClassVar[Dict[str, Bender]] = { "user_pool": S("UserPool"), @@ -2615,9 +2615,9 @@ class AwsSagemakerOidcMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_oidc_member_definition" kind_display: ClassVar[str] = "AWS SageMaker OIDC Member Definition" kind_description: ClassVar[str] = ( - "SageMaker OIDC Member Definition is a resource in AWS SageMaker that allows" - " you to define an OpenID Connect (OIDC) user or group and their access" - " permissions for a specific SageMaker resource." + "AWS SageMaker OIDC Member Definition is used for managing user access in SageMaker, typically" + " specifying groups from an OpenID Connect (OIDC) identity provider that are allowed to perform" + " certain actions or access specific resources within SageMaker." ) mapping: ClassVar[Dict[str, Bender]] = {"groups": S("Groups", default=[])} groups: List[str] = field(factory=list) @@ -2628,9 +2628,10 @@ class AwsSagemakerMemberDefinition: kind: ClassVar[str] = "aws_sagemaker_member_definition" kind_display: ClassVar[str] = "AWS SageMaker Member Definition" kind_description: ClassVar[str] = ( - "SageMaker Member Definition is a resource in AWS SageMaker that allows users" - " to define and manage members for their SageMaker projects, enabling" - " collaboration and shared access to machine learning resources." + "AWS SageMaker Member Definition defines the authentication information for individuals participating" + " in a SageMaker work team. It specifies the type of member, such as users authenticated via Amazon" + " Cognito or through an OpenID Connect (OIDC) identity provider. This setup is critical for managing" + " user access and permissions within SageMaker projects and workstreams." ) mapping: ClassVar[Dict[str, Bender]] = { "cognito_member_definition": S("CognitoMemberDefinition") >> Bend(AwsSagemakerCognitoMemberDefinition.mapping), @@ -2810,9 +2811,8 @@ class AwsSagemakerAutoMLSecurityConfig: kind: ClassVar[str] = "aws_sagemaker_auto_ml_security_config" kind_display: ClassVar[str] = "AWS SageMaker AutoML Security Config" kind_description: ClassVar[str] = ( - "This resource pertains to the security configuration for the AWS SageMaker" - " AutoML service, which enables automatic machine learning model development" - " and deployment on AWS SageMaker." + "The AWS SageMaker AutoML Security Config ensures the security of AutoML" + " jobs with encryption and network settings." ) mapping: ClassVar[Dict[str, Bender]] = { "volume_kms_key_id": S("VolumeKmsKeyId"), @@ -3339,10 +3339,10 @@ class AwsSagemakerEdgeOutputConfig: kind: ClassVar[str] = "aws_sagemaker_edge_output_config" kind_display: ClassVar[str] = "AWS SageMaker Edge Output Configuration" kind_description: ClassVar[str] = ( - "SageMaker Edge Output Config is a feature in Amazon SageMaker that enables" - " you to configure the destination for edge device output when using SageMaker" - " Edge Manager. It allows you to specify the S3 bucket where the output" - " artifacts from the edge devices will be stored." + "The AWS SageMaker Edge Output Configuration pertains to how models are deployed and managed on edge" + " devices using Amazon SageMaker Edge Manager. It specifies where the model artifacts and other Edge" + " Manager outputs will be stored, typically in an S3 bucket, and how they will be encrypted, using an" + " optional AWS KMS key." ) mapping: ClassVar[Dict[str, Bender]] = { "s3_output_location": S("S3OutputLocation"), @@ -3756,9 +3756,8 @@ class AwsSagemakerObjectiveStatusCounters: kind: ClassVar[str] = "aws_sagemaker_objective_status_counters" kind_display: ClassVar[str] = "AWS SageMaker Objective Status Counters" kind_description: ClassVar[str] = ( - "AWS SageMaker Objective Status Counters are metrics or counters that track" - " the progress and status of objectives in Amazon SageMaker, a fully-managed" - " machine learning service by AWS." + "AWS SageMaker Objective Status Counters track the progress and outcomes of training jobs or" + " hyperparameter tuning jobs by counting how many have succeeded, are still pending, or have failed." ) mapping: ClassVar[Dict[str, Bender]] = {"succeeded": S("Succeeded"), "pending": S("Pending"), "failed": S("Failed")} succeeded: Optional[int] = field(default=None) @@ -4150,9 +4149,9 @@ class AwsSagemakerModelLatencyThreshold: kind: ClassVar[str] = "aws_sagemaker_model_latency_threshold" kind_display: ClassVar[str] = "AWS SageMaker Model Latency Threshold" kind_description: ClassVar[str] = ( - "SageMaker Model Latency Threshold is a parameter used to set the maximum" - " acceptable latency for predictions made by a model deployed on Amazon" - " SageMaker." + "The AWS SageMaker Model Latency Threshold setting is used to monitor the performance of a machine learning" + " model by specifying the acceptable latency threshold in milliseconds for a given percentile of" + " inference requests." ) mapping: ClassVar[Dict[str, Bender]] = { "percentile": S("Percentile"), @@ -4206,8 +4205,8 @@ class AwsSagemakerEndpointOutputConfiguration: kind: ClassVar[str] = "aws_sagemaker_endpoint_output_configuration" kind_display: ClassVar[str] = "AWS SageMaker Endpoint Output Configuration" kind_description: ClassVar[str] = ( - "The output configuration for the SageMaker endpoint, specifying where the" - " predictions should be stored or streamed." + "AWS SageMaker Endpoint Output Configuration sets up the deployment of a model," + " specifying endpoint characteristics, hosting resources, and initial scale." ) mapping: ClassVar[Dict[str, Bender]] = { "endpoint_name": S("EndpointName"), @@ -4259,9 +4258,9 @@ class AwsSagemakerInferenceRecommendation: kind: ClassVar[str] = "aws_sagemaker_inference_recommendation" kind_display: ClassVar[str] = "AWS SageMaker Inference Recommendation" kind_description: ClassVar[str] = ( - "Amazon SageMaker Inference Recommendation is a service that provides real-" - " time recommendations using machine learning models deployed on the Amazon" - " SageMaker platform." + "AWS SageMaker Inference Recommendation is a feature that provides optimized configurations" + " and recommendations for deploying machine learning models in SageMaker, based on performance" + " metrics and specific model requirements." ) mapping: ClassVar[Dict[str, Bender]] = { "metrics": S("Metrics") >> Bend(AwsSagemakerRecommendationMetrics.mapping), @@ -4309,9 +4308,9 @@ class AwsSagemakerInferenceRecommendationsJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_inference_recommendations_job" kind_display: ClassVar[str] = "AWS SageMaker Inference Recommendations Job" kind_description: ClassVar[str] = ( - "SageMaker Inference Recommendations Jobs are used in Amazon SageMaker to" - " create recommendation models that can generate personalized recommendations" - " based on user data." + "AWS SageMaker Inference Recommendations Job evaluates different configurations for deploying machine" + " learning models, providing suggestions to optimize performance and efficiency, along with monitoring" + " job progress and outcomes." ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -4419,9 +4418,9 @@ class AwsSagemakerLabelCounters: kind: ClassVar[str] = "aws_sagemaker_label_counters" kind_display: ClassVar[str] = "AWS SageMaker Label Counters" kind_description: ClassVar[str] = ( - "SageMaker Label Counters are a feature in Amazon SageMaker that enables you" - " to track the distribution of labels in your dataset, helping you analyze and" - " manage label imbalances." + "AWS SageMaker Label Counters provide metrics on the labeling process of a dataset, indicating the total" + " number of items labeled, the split between human and machine labeling, any failures, and the" + " number of items still unlabeled." ) mapping: ClassVar[Dict[str, Bender]] = { "total_labeled": S("TotalLabeled"), @@ -4637,9 +4636,9 @@ class AwsSagemakerLabelingJobOutput: kind: ClassVar[str] = "aws_sagemaker_labeling_job_output" kind_display: ClassVar[str] = "AWS SageMaker Labeling Job Output" kind_description: ClassVar[str] = ( - "SageMaker Labeling Job Output is the result of a machine learning labeling" - " job on the AWS SageMaker platform, which provides a managed environment for" - " building, training, and deploying machine learning models." + "AWS SageMaker Labeling Job Output refers to the storage location of datasets annotated during a labeling job" + " and the ARN of the final machine learning model used if active learning was employed to assist humans in" + " the labeling process." ) mapping: ClassVar[Dict[str, Bender]] = { "output_dataset_s3_uri": S("OutputDatasetS3Uri"), @@ -4813,9 +4812,8 @@ class AwsSagemakerAthenaDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_athena_dataset_definition" kind_display: ClassVar[str] = "AWS SageMaker Athena Dataset Definition" kind_description: ClassVar[str] = ( - "Athena Dataset Definitions in SageMaker is used to define and create" - " datasets that can be accessed and used for machine learning projects in AWS" - " SageMaker." + "The AWS SageMaker Athena Dataset Definition specifies the configuration for" + " querying data with Athena, detailing the output format and location in S3." ) mapping: ClassVar[Dict[str, Bender]] = { "catalog": S("Catalog"), @@ -4873,8 +4871,9 @@ class AwsSagemakerDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_dataset_definition" kind_display: ClassVar[str] = "AWS SageMaker Dataset Definition" kind_description: ClassVar[str] = ( - "SageMaker Dataset Definition is a resource in Amazon SageMaker that" - " specifies the location and format of input data for training and inference." + "The AWS SageMaker Dataset Definition specifies configurations for datasets used in SageMaker, including" + " those from Athena and Redshift, along with local storage options, data distribution types, and the mode" + " in which the dataset is inputted into SageMaker for processing." ) mapping: ClassVar[Dict[str, Bender]] = { "athena_dataset_definition": S("AthenaDatasetDefinition") >> Bend(AwsSagemakerAthenaDatasetDefinition.mapping), @@ -5259,9 +5258,8 @@ class AwsSagemakerCollectionConfiguration: kind: ClassVar[str] = "aws_sagemaker_collection_configuration" kind_display: ClassVar[str] = "AWS SageMaker Collection Configuration" kind_description: ClassVar[str] = ( - "SageMaker Collection Configuration is a feature in Amazon SageMaker that" - " allows users to configure data collection during model training, enabling" - " the capturing of input data for further analysis and improvement." + "AWS SageMaker Collection Configuration organizes machine learning resources or data" + " by name and specified parameters within SageMaker." ) mapping: ClassVar[Dict[str, Bender]] = { "collection_name": S("CollectionName"), @@ -5641,9 +5639,8 @@ class AwsSagemakerModelClientConfig: kind: ClassVar[str] = "aws_sagemaker_model_client_config" kind_display: ClassVar[str] = "AWS SageMaker Model Client Config" kind_description: ClassVar[str] = ( - "SageMaker Model Client Config is a configuration for the SageMaker Python" - " SDK to interact with SageMaker models. It contains information such as the" - " endpoint name, instance type, and model name." + "AWS SageMaker Model Client Config optimizes model inference by setting a timeout" + " for prediction invocations and specifying the maximum number of retry attempts." ) mapping: ClassVar[Dict[str, Bender]] = { "invocations_timeout_in_seconds": S("InvocationsTimeoutInSeconds"), @@ -5658,9 +5655,8 @@ class AwsSagemakerBatchDataCaptureConfig: kind: ClassVar[str] = "aws_sagemaker_batch_data_capture_config" kind_display: ClassVar[str] = "AWS SageMaker Batch Data Capture Config" kind_description: ClassVar[str] = ( - "SageMaker Batch Data Capture Config is a feature of AWS SageMaker that" - " allows capturing data for model monitoring and analysis during batch" - " processing." + "The AWS SageMaker Batch Data Capture Config allows for the collection and storage of" + " inference data, with options for encryption and inference ID generation, to an S3 location." ) mapping: ClassVar[Dict[str, Bender]] = { "destination_s3_uri": S("DestinationS3Uri"), From 65e4ff6ddc3cf450ec16c9bcfa1c06ca92ce552d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Fri, 3 Nov 2023 19:47:26 +0100 Subject: [PATCH 24/27] Update descriptions --- .../resoto_plugin_aws/resource/sagemaker.py | 91 +++++++++---------- 1 file changed, 43 insertions(+), 48 deletions(-) diff --git a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py index 8053caadd4..1e4e93ffe5 100644 --- a/plugins/aws/resoto_plugin_aws/resource/sagemaker.py +++ b/plugins/aws/resoto_plugin_aws/resource/sagemaker.py @@ -1198,9 +1198,8 @@ class AwsSagemakerRSessionAppSettings: kind: ClassVar[str] = "aws_sagemaker_r_session_app_settings" kind_display: ClassVar[str] = "AWS SageMaker R Session App Settings" kind_description: ClassVar[str] = ( - "SageMaker R Session App Settings is a resource in Amazon SageMaker that" - " allows configuring and managing R session settings for machine learning" - " workloads." + "The AWS SageMaker R Session App Settings facilitate the configuration of default resources and" + " the use of custom images for R sessions within SageMaker Studio." ) mapping: ClassVar[Dict[str, Bender]] = { "default_resource_spec": S("DefaultResourceSpec") >> Bend(AwsSagemakerResourceSpec.mapping), @@ -1279,9 +1278,9 @@ class AwsSagemakerRStudioServerProDomainSettings: kind: ClassVar[str] = "aws_sagemaker_r_studio_server_pro_domain_settings" kind_display: ClassVar[str] = "AWS SageMaker R Studio Server Pro Domain Settings" kind_description: ClassVar[str] = ( - "SageMaker R Studio Server Pro Domain Settings is a feature of Amazon" - " SageMaker that allows users to customize the domain configuration for R" - " Studio Server Pro instances in their SageMaker environment." + "AWS SageMaker R Studio Server Pro Domain Settings are used to configure the execution role and set URLs for" + " RStudio Connect and RStudio Package Manager within a domain, as well as to specify the default resources" + " for the domain." ) mapping: ClassVar[Dict[str, Bender]] = { "domain_execution_role_arn": S("DomainExecutionRoleArn"), @@ -1575,8 +1574,8 @@ class AwsSagemakerTrialSource: kind: ClassVar[str] = "aws_sagemaker_trial_source" kind_display: ClassVar[str] = "AWS SageMaker Trial Source" kind_description: ClassVar[str] = ( - "SageMaker Trial Source is a resource in Amazon SageMaker that allows users" - " to define the data source for a machine learning trial." + "AWS SageMaker Trial Source defines the origin and type of a trial's data source," + " typically an ARN, indicating where the trial data is stored and what kind of data source it is." ) mapping: ClassVar[Dict[str, Bender]] = {"source_arn": S("SourceArn"), "source_type": S("SourceType")} source_arn: Optional[str] = field(default=None) @@ -1622,8 +1621,9 @@ class AwsSagemakerTrial(AwsResource): kind: ClassVar[str] = "aws_sagemaker_trial" kind_display: ClassVar[str] = "AWS SageMaker Trial" kind_description: ClassVar[str] = ( - "SageMaker Trial is a service offered by Amazon Web Services that provides a" - " platform for building, training, and deploying machine learning models." + "AWS SageMaker Trial represents a series of steps, known as trial components, which lead to the creation of" + " a machine learning model. It is nested within a single SageMaker experiment for organizational" + " and tracking purposes." ) reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -1825,8 +1825,9 @@ class AwsSagemakerProductionVariantServerlessConfig: kind: ClassVar[str] = "aws_sagemaker_production_variant_serverless_config" kind_display: ClassVar[str] = "AWS SageMaker Production Variant Serverless Config" kind_description: ClassVar[str] = ( - "This is a configuration for a serverless variant for production usage in AWS" - " SageMaker, which is Amazon's fully managed machine learning service." + "The AWS SageMaker Production Variant Serverless Config is a configuration that specifies the memory" + " allocation and the maximum number of concurrent invocations for a serverless deployment of a" + " SageMaker model variant." ) mapping: ClassVar[Dict[str, Bender]] = { "memory_size_in_mb": S("MemorySizeInMB"), @@ -2032,9 +2033,9 @@ class AwsSagemakerPendingProductionVariantSummary: kind: ClassVar[str] = "aws_sagemaker_pending_production_variant_summary" kind_display: ClassVar[str] = "AWS SageMaker Pending Production Variant Summary" kind_description: ClassVar[str] = ( - "SageMaker Pending Production Variant Summary represents the pending state of" - " a production variant in Amazon SageMaker, which is a machine learning" - " service provided by AWS." + "The AWS SageMaker Pending Production Variant Summary provides a snapshot of a SageMaker production" + " variant's update status, detailing configurations about to be deployed, such as capacity and" + " resource allocation changes." ) mapping: ClassVar[Dict[str, Bender]] = { "variant_name": S("VariantName"), @@ -3008,9 +3009,8 @@ class AwsSagemakerResolvedAttributes: kind: ClassVar[str] = "aws_sagemaker_resolved_attributes" kind_display: ClassVar[str] = "AWS SageMaker Resolved Attributes" kind_description: ClassVar[str] = ( - "SageMaker Resolved Attributes are the feature groups used in Amazon" - " SageMaker for model training and inference. They provide an organized and" - " structured way to input and process data for machine learning tasks." + "AWS SageMaker Resolved Attributes define the objective and criteria for an AutoML job," + " determining how the model is optimized and when the job is complete." ) mapping: ClassVar[Dict[str, Bender]] = { "auto_ml_job_objective": S("AutoMLJobObjective", "MetricName"), @@ -3192,9 +3192,9 @@ class AwsSagemakerTargetPlatform: kind: ClassVar[str] = "aws_sagemaker_target_platform" kind_display: ClassVar[str] = "AWS SageMaker Target Platform" kind_description: ClassVar[str] = ( - "SageMaker Target Platform is a service provided by Amazon Web Services that" - " allows users to specify the target platform for training and deploying" - " machine learning models using Amazon SageMaker." + "AWS SageMaker Target Platform specifies the operating system, architecture, and accelerator type for a model" + " compiled with SageMaker Neo, allowing you to optimize the model for deployment on a specific hardware" + " platform." ) mapping: ClassVar[Dict[str, Bender]] = {"os": S("Os"), "arch": S("Arch"), "accelerator": S("Accelerator")} os: Optional[str] = field(default=None) @@ -3988,9 +3988,9 @@ class AwsSagemakerPhase: kind: ClassVar[str] = "aws_sagemaker_phase" kind_display: ClassVar[str] = "AWS SageMaker Phase" kind_description: ClassVar[str] = ( - "SageMaker Phase is a component of Amazon SageMaker, which is a fully-managed" - " machine learning service that enables developers to build, train, and deploy" - " machine learning models at scale." + "The AWS SageMaker Phase setting is used to control the traffic pattern or user ramp-up strategy for" + " load testing in a SageMaker environment, defining the start size, how quickly to add users, and the" + " duration of the test phase." ) mapping: ClassVar[Dict[str, Bender]] = { "initial_number_of_users": S("InitialNumberOfUsers"), @@ -4025,9 +4025,8 @@ class AwsSagemakerRecommendationJobResourceLimit: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_resource_limit" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Resource Limit" kind_description: ClassVar[str] = ( - "SageMaker Recommendation Job Resource Limit specifies the maximum resources," - " such as memory and compute, that can be allocated to a recommendation job in" - " Amazon SageMaker." + "AWS SageMaker Recommendation Job Resource Limit sets the maximum number of tests" + " and the maximum number of parallel tests allowed for model evaluations." ) mapping: ClassVar[Dict[str, Bender]] = { "max_number_of_tests": S("MaxNumberOfTests"), @@ -4076,8 +4075,8 @@ class AwsSagemakerRecommendationJobPayloadConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_payload_config" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Payload Config" kind_description: ClassVar[str] = ( - "SageMaker recommendation job payload configuration specifies the data format" - " and location of the input payload for a recommendation job on AWS SageMaker." + "AWS SageMaker Recommendation Job Payload Config specifies the location of sample payloads" + " and the content types that are supported for model evaluations." ) mapping: ClassVar[Dict[str, Bender]] = { "sample_payload_url": S("SamplePayloadUrl"), @@ -4092,10 +4091,8 @@ class AwsSagemakerRecommendationJobContainerConfig: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_container_config" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Container Config" kind_description: ClassVar[str] = ( - "This resource represents the container configuration for a recommendation" - " job in AWS SageMaker. SageMaker is a fully-managed machine learning service" - " by Amazon that allows you to build, train, and deploy machine learning" - " models." + "AWS SageMaker Recommendation Job Container Config outlines the framework and version for machine" + " learning tasks, including the domain and task type, as well as model and instance preferences." ) mapping: ClassVar[Dict[str, Bender]] = { "domain": S("Domain"), @@ -4166,9 +4163,8 @@ class AwsSagemakerRecommendationJobStoppingConditions: kind: ClassVar[str] = "aws_sagemaker_recommendation_job_stopping_conditions" kind_display: ClassVar[str] = "AWS SageMaker Recommendation Job Stopping Conditions" kind_description: ClassVar[str] = ( - "SageMaker Recommendation Job Stopping Conditions in AWS allow you to specify" - " conditions that determine when the recommendation job should stop, based on" - " factors such as maximum runtime or model metric threshold." + "AWS SageMaker Recommendation Job Stopping Conditions determine when a model evaluation" + " job should be halted, based on the maximum number of model invocations or the threshold for model latency." ) mapping: ClassVar[Dict[str, Bender]] = { "max_invocations": S("MaxInvocations"), @@ -4548,9 +4544,9 @@ class AwsSagemakerUiConfig: kind: ClassVar[str] = "aws_sagemaker_ui_config" kind_display: ClassVar[str] = "AWS SageMaker UI Config" kind_description: ClassVar[str] = ( - "SageMaker UI Config is a feature of Amazon SageMaker, a machine learning" - " service provided by AWS. It allows users to configure the user interface for" - " their SageMaker notebooks and experiments." + "AWS SageMaker UI Config refers to the configuration for user interfaces used in SageMaker," + " specifying the Amazon S3 location of the UI template and the Amazon Resource Name (ARN)" + " for the human task user interface." ) mapping: ClassVar[Dict[str, Bender]] = { "ui_template_s3_uri": S("UiTemplateS3Uri"), @@ -4840,9 +4836,9 @@ class AwsSagemakerRedshiftDatasetDefinition: kind: ClassVar[str] = "aws_sagemaker_redshift_dataset_definition" kind_display: ClassVar[str] = "AWS SageMaker Redshift Dataset Definition" kind_description: ClassVar[str] = ( - "SageMaker Redshift Dataset Definition is a resource in Amazon SageMaker that" - " allows you to define datasets for training machine learning models using" - " data stored in Amazon Redshift." + "AWS SageMaker Redshift Dataset Definition is a configuration that identifies a specific Redshift cluster" + " and database to create datasets, defines the SQL query for data extraction, and sets the S3 storage and" + " output format for SageMaker use." ) mapping: ClassVar[Dict[str, Bender]] = { "cluster_id": S("ClusterId"), @@ -5324,9 +5320,8 @@ class AwsSagemakerTensorBoardOutputConfig: kind: ClassVar[str] = "aws_sagemaker_tensor_board_output_config" kind_display: ClassVar[str] = "AWS SageMaker TensorBoard Output Config" kind_description: ClassVar[str] = ( - "SageMaker TensorBoard Output Config is a resource in AWS SageMaker that" - " specifies the configuration for exporting training job tensorboard data to" - " an S3 bucket for visualization and analysis." + "AWS SageMaker TensorBoard Output Config sets up the storage location for TensorBoard" + " data, allowing you to specify local file paths and an S3 bucket for output." ) mapping: ClassVar[Dict[str, Bender]] = {"local_path": S("LocalPath"), "s3_output_path": S("S3OutputPath")} local_path: Optional[str] = field(default=None) @@ -5361,9 +5356,9 @@ class AwsSagemakerProfilerConfig: kind: ClassVar[str] = "aws_sagemaker_profiler_config" kind_display: ClassVar[str] = "AWS SageMaker Profiler Configuration" kind_description: ClassVar[str] = ( - "SageMaker Profiler is an Amazon Web Services capability that automatically" - " analyzes your model's training data and provides recommendations for" - " optimizing performance." + "The AWS SageMaker Profiler Configuration is used to set up the output location for profiling data," + " the frequency of profiling, and additional parameters for detailed control over the profiling" + " behavior of SageMaker training jobs." ) mapping: ClassVar[Dict[str, Bender]] = { "s3_output_path": S("S3OutputPath"), From 957109d765330aac33176102620f183f547f3d76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Tue, 7 Nov 2023 15:12:26 +0100 Subject: [PATCH 25/27] Update GCP descriptions --- .../resoto_plugin_digitalocean/resources.py | 5 +- .../resoto_plugin_gcp/resources/billing.py | 19 +- .../resoto_plugin_gcp/resources/compute.py | 339 ++++++++---------- .../resoto_plugin_gcp/resources/container.py | 102 +++--- .../resoto_plugin_gcp/resources/sqladmin.py | 56 ++- .../resoto_plugin_gcp/resources/storage.py | 27 +- 6 files changed, 252 insertions(+), 296 deletions(-) diff --git a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py index e763b70292..4912a1d483 100644 --- a/plugins/digitalocean/resoto_plugin_digitalocean/resources.py +++ b/plugins/digitalocean/resoto_plugin_digitalocean/resources.py @@ -273,9 +273,8 @@ class DigitalOceanDropletNeighborhood(DigitalOceanResource, PhantomBaseResource) kind: ClassVar[str] = "digitalocean_droplet_neighborhood" kind_display: ClassVar[str] = "DigitalOcean Droplet Neighborhood" kind_description: ClassVar[str] = ( - "Droplet Neighborhood is a feature in DigitalOcean that allows users to" - " deploy Droplets (virtual machines) in the same datacenter to achieve low" - " latency communication and high reliability." + "A Droplet Neighborhood refers to a group of Droplets that are running on the" + " same physical hardware or in close proximity within a data center." ) droplets: Optional[List[str]] = None diff --git a/plugins/gcp/resoto_plugin_gcp/resources/billing.py b/plugins/gcp/resoto_plugin_gcp/resources/billing.py index d0a7b2772c..106e56a569 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/billing.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/billing.py @@ -196,9 +196,8 @@ class GcpGeoTaxonomy: kind: ClassVar[str] = "gcp_geo_taxonomy" kind_display: ClassVar[str] = "GCP Geo Taxonomy" kind_description: ClassVar[str] = ( - "GCP Geo Taxonomy is a resource in Google Cloud Platform that provides a" - " hierarchical taxonomy for geographic locations, ensuring consistent and" - " accurate data for geospatial analysis and visualization." + "GCP Geo Taxonomy within a SKU refers to the classification of Google Cloud resources" + " based on geographic regions and types, which impacts pricing and availability." ) mapping: ClassVar[Dict[str, Bender]] = {"regions": S("regions", default=[]), "type": S("type")} regions: List[str] = field(factory=list) @@ -209,11 +208,9 @@ class GcpGeoTaxonomy: class GcpAggregationInfo: kind: ClassVar[str] = "gcp_aggregation_info" kind_display: ClassVar[str] = "GCP Aggregation Info" - kind_description: ClassVar[str] = ( - "GCP Aggregation Info refers to aggregated data about resources in Google" - " Cloud Platform, providing insights and metrics for monitoring and analysis" - " purposes." - ) + kind_description: ClassVar[ + str + ] = "GCP Aggregation Info refers to how usage and cost data are compiled and summarized over time." mapping: ClassVar[Dict[str, Bender]] = { "aggregation_count": S("aggregationCount"), "aggregation_interval": S("aggregationInterval"), @@ -265,9 +262,9 @@ class GcpPricingExpression: kind: ClassVar[str] = "gcp_pricing_expression" kind_display: ClassVar[str] = "GCP Pricing Expression" kind_description: ClassVar[str] = ( - "GCP Pricing Expression is a mechanism used in Google Cloud Platform to" - " calculate the cost of resources and services based on configuration and" - " usage." + "GCP Pricing Expression delineates the structure of pricing for a particular service, including the base" + " units of measurement, conversion factors, detailed descriptions, and tiered pricing rates to calculate" + " the cost based on usage." ) mapping: ClassVar[Dict[str, Bender]] = { "base_unit": S("baseUnit"), diff --git a/plugins/gcp/resoto_plugin_gcp/resources/compute.py b/plugins/gcp/resoto_plugin_gcp/resources/compute.py index 5649a6d348..4b82d40993 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/compute.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/compute.py @@ -175,9 +175,8 @@ class GcpFixedOrPercent: kind: ClassVar[str] = "gcp_fixed_or_percent" kind_display: ClassVar[str] = "GCP Fixed or Percent" kind_description: ClassVar[str] = ( - "GCP Fixed or Percent is a pricing model in Google Cloud Platform where users" - " can choose to pay a fixed cost or a percentage of the actual usage for a" - " particular resource or service." + "GCP Fixed or Percent refers to a configuration within GCP's autoscaling policy that allows" + " for scale-in control based on either a fixed number or a percentage of instances." ) mapping: ClassVar[Dict[str, Bender]] = {"calculated": S("calculated"), "fixed": S("fixed"), "percent": S("percent")} calculated: Optional[int] = field(default=None) @@ -585,9 +584,8 @@ class GcpCircuitBreakers: kind: ClassVar[str] = "gcp_circuit_breakers" kind_display: ClassVar[str] = "GCP Circuit Breakers" kind_description: ClassVar[str] = ( - "Circuit breakers in Google Cloud Platform (GCP) are a mechanism used to" - " detect and prevent system failures caused by overloads or faults in" - " distributed systems." + "GCP Backend Service Circuit Breakers set limits on connections, pending" + " requests, and retries to prevent overloading backend resources." ) mapping: ClassVar[Dict[str, Bender]] = { "max_connections": S("maxConnections"), @@ -608,9 +606,8 @@ class GcpBackendServiceConnectionTrackingPolicy: kind: ClassVar[str] = "gcp_backend_service_connection_tracking_policy" kind_display: ClassVar[str] = "GCP Backend Service Connection Tracking Policy" kind_description: ClassVar[str] = ( - "GCP Backend Service Connection Tracking Policy is a feature in Google Cloud" - " Platform that allows tracking and monitoring of connections made to backend" - " services." + "GCP Backend Service Connection Tracking Policy defines the parameters for managing connections," + " including persistence on unhealthy backends, affinity strength, idle timeout, and tracking mode." ) mapping: ClassVar[Dict[str, Bender]] = { "connection_persistence_on_unhealthy_backends": S("connectionPersistenceOnUnhealthyBackends"), @@ -767,9 +764,9 @@ class GcpOutlierDetection: kind: ClassVar[str] = "gcp_outlier_detection" kind_display: ClassVar[str] = "GCP Outlier Detection" kind_description: ClassVar[str] = ( - "Outlier Detection in Google Cloud Platform (GCP) is a technique to identify" - " anomalies or outliers in datasets, helping users to detect unusual patterns" - " or behaviors." + "GCP Outlier Detection is a service feature within Google Cloud's Backend Services that identifies" + " instances in a load balancing pool which are performing suboptimally and temporarily removes them" + " from the service rotation based on various health checks and error thresholds." ) mapping: ClassVar[Dict[str, Bender]] = { "base_ejection_time": S("baseEjectionTime", default={}) >> Bend(GcpDuration.mapping), @@ -1200,9 +1197,8 @@ class GcpExternalVpnGateway(GcpResource): kind: ClassVar[str] = "gcp_external_vpn_gateway" kind_display: ClassVar[str] = "GCP External VPN Gateway" kind_description: ClassVar[str] = ( - "External VPN Gateway is a virtual network appliance in Google Cloud Platform" - " that allows secure communication between on-premises networks and virtual" - " private clouds (VPCs) over an encrypted connection." + "GCP External VPN Gateway is a resource that provides connectivity from Google Cloud to external networks" + " via VPN, featuring interfaces for tunnel configuration and redundancy options for high availability." ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -1275,10 +1271,8 @@ class GcpFirewallPolicyRuleSecureTag: kind: ClassVar[str] = "gcp_firewall_policy_rule_secure_tag" kind_display: ClassVar[str] = "GCP Firewall Policy Rule Secure Tag" kind_description: ClassVar[str] = ( - "Secure Tags are used in Google Cloud Platform's Firewall Policy Rules to" - " apply consistent security rules to specific instances or resources based on" - " tags. This helps in controlling network traffic and securing communication" - " within the GCP infrastructure." + "GCP Firewall Policy Rule Secure Tag is an identifier used to specify a secure tag" + " for matching criteria within a firewall policy rule in Google Cloud Platform." ) mapping: ClassVar[Dict[str, Bender]] = {"name": S("name"), "firewall_policy_rule_secure_tag_state": S("state")} name: Optional[str] = field(default=None) @@ -1402,8 +1396,8 @@ class GcpAllowed: kind: ClassVar[str] = "gcp_allowed" kind_display: ClassVar[str] = "GCP Allowed" kind_description: ClassVar[str] = ( - "GCP Allowed refers to the permissions or access rights granted to a user or" - " entity to use resources on the Google Cloud Platform (GCP)." + "GCP Allowed defines the protocols and ports that are permitted to pass through" + " a firewall rule in Google Cloud Platform." ) mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("IPProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) @@ -1414,9 +1408,10 @@ class GcpAllowed: class GcpDenied: kind: ClassVar[str] = "gcp_denied" kind_display: ClassVar[str] = "GCP Denied" - kind_description: ClassVar[ - str - ] = "GCP Denied refers to a resource or action that has been denied or restricted in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Denied settings within a GCP Firewall rule specify the types of network traffic" + " that are not allowed through, based on the IP protocol and port numbers." + ) mapping: ClassVar[Dict[str, Bender]] = {"ip_protocol": S("IPProtocol"), "ports": S("ports", default=[])} ip_protocol: Optional[str] = field(default=None) ports: Optional[List[str]] = field(default=None) @@ -1517,11 +1512,7 @@ class GcpMetadataFilterLabelMatch: class GcpMetadataFilter: kind: ClassVar[str] = "gcp_metadata_filter" kind_display: ClassVar[str] = "GCP Metadata Filter" - kind_description: ClassVar[str] = ( - "GCP Metadata Filter is a feature in Google Cloud Platform that allows users" - " to apply filters to their metadata for fine-grained control and organization" - " of their resources." - ) + kind_description: ClassVar[str] = "" mapping: ClassVar[Dict[str, Bender]] = { "filter_labels": S("filterLabels", default=[]) >> ForallBend(GcpMetadataFilterLabelMatch.mapping), "filter_match_criteria": S("filterMatchCriteria"), @@ -1535,9 +1526,9 @@ class GcpForwardingRuleServiceDirectoryRegistration: kind: ClassVar[str] = "gcp_forwarding_rule_service_directory_registration" kind_display: ClassVar[str] = "GCP Forwarding Rule Service Directory Registration" kind_description: ClassVar[str] = ( - "This resource is used for registering a forwarding rule with a service" - " directory in Google Cloud Platform. It enables the forwarding of traffic to" - " a specific service or endpoint within the network." + "The GCP Forwarding Rule Service Directory Registration enables a forwarding rule to register itself with a" + " specific service in Google Cloud's Service Directory, specifying the namespace and region for service" + " discovery and routing." ) mapping: ClassVar[Dict[str, Bender]] = { "namespace": S("namespace"), @@ -1661,9 +1652,8 @@ class GcpNetworkEndpointGroupAppEngine: kind: ClassVar[str] = "gcp_network_endpoint_group_app_engine" kind_display: ClassVar[str] = "GCP Network Endpoint Group App Engine" kind_description: ClassVar[str] = ( - "GCP Network Endpoint Group for App Engine is a group of network endpoints" - " (virtual machines, App Engine flexible environment instances, or container" - " instances) that can receive traffic from the same load balancer." + "The GCP Network Endpoint Group App Engine configuration defines how traffic is directed to different" + " versions of a deployed App Engine service, potentially using URL masks for routing." ) mapping: ClassVar[Dict[str, Bender]] = {"service": S("service"), "url_mask": S("urlMask"), "version": S("version")} service: Optional[str] = field(default=None) @@ -1674,11 +1664,11 @@ class GcpNetworkEndpointGroupAppEngine: @define(eq=False, slots=False) class GcpNetworkEndpointGroupCloudFunction: kind: ClassVar[str] = "gcp_network_endpoint_group_cloud_function" - kind_display: ClassVar[str] = "GCP Network Endpoint Group - Cloud Function" + kind_display: ClassVar[str] = "GCP Network Endpoint Group Cloud Function" kind_description: ClassVar[str] = ( - "GCP Network Endpoint Group allows grouping of Cloud Functions in Google" - " Cloud Platform, enabling load balancing and high availability for serverless" - " functions." + "The GCP Network Endpoint Group Cloud Function configuration specifies the details for routing network" + " traffic to a particular Google Cloud Function, including the function identifier and the URL" + " mask for matching request paths." ) mapping: ClassVar[Dict[str, Bender]] = {"function": S("function"), "url_mask": S("urlMask")} function: Optional[str] = field(default=None) @@ -1688,11 +1678,11 @@ class GcpNetworkEndpointGroupCloudFunction: @define(eq=False, slots=False) class GcpNetworkEndpointGroupCloudRun: kind: ClassVar[str] = "gcp_network_endpoint_group_cloud_run" - kind_display: ClassVar[str] = "GCP Network Endpoint Group - Cloud Run" + kind_display: ClassVar[str] = "GCP Network Endpoint Group Cloud Run" kind_description: ClassVar[str] = ( - "GCP Network Endpoint Group - Cloud Run is a resource in Google Cloud" - " Platform that enables load balancing for Cloud Run services across different" - " regions." + "The GCP Network Endpoint Group Cloud Run configuration determines how traffic is directed to a specific" + " Cloud Run service, utilizing a URL mask for path matching and an optional tag to identify a specific" + " service deployment or revision." ) mapping: ClassVar[Dict[str, Bender]] = {"service": S("service"), "tag": S("tag"), "url_mask": S("urlMask")} service: Optional[str] = field(default=None) @@ -1705,9 +1695,9 @@ class GcpNetworkEndpointGroupPscData: kind: ClassVar[str] = "gcp_network_endpoint_group_psc_data" kind_display: ClassVar[str] = "GCP Network Endpoint Group PSC Data" kind_description: ClassVar[str] = ( - "GCP Network Endpoint Group PSC Data is a feature in Google Cloud Platform" - " that allows you to group and manage a set of network endpoints that are used" - " to distribute traffic across multiple instances." + "The GCP Network Endpoint Group PSC Data settings manage the Private Service Connect (PSC) endpoint" + " connections, detailing the consumer's PSC address, the unique connection identifier, and the" + " current status of the PSC connection." ) mapping: ClassVar[Dict[str, Bender]] = { "consumer_psc_address": S("consumerPscAddress"), @@ -1829,9 +1819,8 @@ class GcpLocalizedMessage: kind: ClassVar[str] = "gcp_localized_message" kind_display: ClassVar[str] = "GCP Localized Message" kind_description: ClassVar[str] = ( - "GCP Localized Message is a service provided by Google Cloud Platform that" - " allows developers to display messages in different languages based on the" - " user's preferred language." + "GCP Localized Message provides user-friendly error messages appropriate to the locale specified" + " in the context of Google Cloud Platform operations." ) mapping: ClassVar[Dict[str, Bender]] = {"locale": S("locale"), "message": S("message")} locale: Optional[str] = field(default=None) @@ -2169,9 +2158,9 @@ class GcpSSLHealthCheck: kind: ClassVar[str] = "gcp_ssl_health_check" kind_display: ClassVar[str] = "GCP SSL Health Check" kind_description: ClassVar[str] = ( - "GCP SSL Health Check is a method used by Google Cloud Platform to monitor" - " the health and availability of an SSL certificate for a specific service or" - " application." + "GCP SSL Health Check is a monitoring service used to check the health of SSL-based services by sending" + " a request and verifying the response over the specified port, optionally using a named port and" + " managing proxy header configurations." ) mapping: ClassVar[Dict[str, Bender]] = { "port": S("port"), @@ -2367,9 +2356,8 @@ class GcpRawdisk: kind: ClassVar[str] = "gcp_rawdisk" kind_display: ClassVar[str] = "GCP Raw Disk" kind_description: ClassVar[str] = ( - "GCP Raw Disk is a persistent storage option in Google Cloud Platform," - " allowing users to store and manage unformatted disk images for virtual" - " machines." + "GCP Raw Disk are a property of a GCP Image. They are a disk image that represents the exact" + " byte-for-byte contents of a disk." ) mapping: ClassVar[Dict[str, Bender]] = { "container_type": S("containerType"), @@ -2386,9 +2374,8 @@ class GcpFileContentBuffer: kind: ClassVar[str] = "gcp_file_content_buffer" kind_display: ClassVar[str] = "GCP File Content Buffer" kind_description: ClassVar[str] = ( - "GCP File Content Buffer is a resource in Google Cloud Platform that allows" - " users to store and process file content in memory for faster data access and" - " manipulation." + "GCP File Content Buffer is a specification for storing initial content and defining its" + " type within a file for a virtual machine image in Google Cloud." ) mapping: ClassVar[Dict[str, Bender]] = {"content": S("content"), "file_type": S("fileType")} content: Optional[str] = field(default=None) @@ -2400,8 +2387,8 @@ class GcpInitialStateConfig: kind: ClassVar[str] = "gcp_initial_state_config" kind_display: ClassVar[str] = "GCP Initial State Config" kind_description: ClassVar[str] = ( - "GCP Initial State Config is a configuration used to set up the initial state" - " of resources in Google Cloud Platform." + "GCP Initial State Config refers to the configuration parameters for the initial setup" + " of a virtual machine image." ) mapping: ClassVar[Dict[str, Bender]] = { "dbs": S("dbs", default=[]) >> ForallBend(GcpFileContentBuffer.mapping), @@ -2592,10 +2579,8 @@ class GcpStatefulPolicyPreservedStateDiskDevice: kind: ClassVar[str] = "gcp_stateful_policy_preserved_state_disk_device" kind_display: ClassVar[str] = "GCP Stateful Policy Preserved State Disk Device" kind_description: ClassVar[str] = ( - "This resource represents a Stateful Policy Preserved State Disk Device in" - " Google Cloud Platform (GCP). It allows for the creation of persistent disks" - " that retain their data even when the associated VM instance is deleted or" - " recreated." + "The GCP Stateful Policy Preserved State Disk Device setting determines whether a disk attached to a virtual" + " machine in a managed instance group should be automatically deleted when the virtual machine is deleted." ) mapping: ClassVar[Dict[str, Bender]] = {"auto_delete": S("autoDelete")} auto_delete: Optional[str] = field(default=None) @@ -2606,9 +2591,9 @@ class GcpStatefulPolicyPreservedState: kind: ClassVar[str] = "gcp_stateful_policy_preserved_state" kind_display: ClassVar[str] = "GCP Stateful Policy Preserved State" kind_description: ClassVar[str] = ( - "Stateful Policy Preserved State in Google Cloud Platform (GCP) refers to the" - " retention of current state information of resources when modifying or" - " updating policies." + "The GCP Stateful Policy's Preserved State feature involves a set of rules defining how individual disks" + " should be treated on instances within a managed instance group, such as whether they should be retained" + " or deleted during specific group operations." ) mapping: ClassVar[Dict[str, Bender]] = { "stateful_policy_preserved_state_disks": S("disks", default={}) @@ -2624,10 +2609,9 @@ class GcpStatefulPolicy: kind: ClassVar[str] = "gcp_stateful_policy" kind_display: ClassVar[str] = "GCP Stateful Policy" kind_description: ClassVar[str] = ( - "Stateful Policy is a feature in Google Cloud Platform (GCP) that allows" - " users to define specific firewall rules based on source and destination IP" - " addresses, ports, and protocols. These rules are persistent and can help" - " ensure network security and traffic control within the GCP infrastructure." + "GCP Stateful Policy refers to a configuration that specifies how certain resources and disk states should be" + " maintained when managing instances within a group, ensuring that specific instance properties persist" + " across various lifecycle events." ) mapping: ClassVar[Dict[str, Bender]] = { "preserved_state": S("preservedState", default={}) >> Bend(GcpStatefulPolicyPreservedState.mapping) @@ -2640,8 +2624,9 @@ class GcpInstanceGroupManagerStatusStateful: kind: ClassVar[str] = "gcp_instance_group_manager_status_stateful" kind_display: ClassVar[str] = "GCP Instance Group Manager Status Stateful" kind_description: ClassVar[str] = ( - "This resource represents the stateful status of an instance group manager in" - " Google Cloud Platform's infrastructure." + "GCP Instance Group Manager Status Stateful indicates the status of an instance group manager's stateful" + " configuration, showing whether a stateful configuration is applied and the status of instance-specific" + " configurations within the group." ) mapping: ClassVar[Dict[str, Bender]] = { "has_stateful_config": S("hasStatefulConfig"), @@ -2704,11 +2689,9 @@ class GcpInstanceGroupManagerVersion: kind: ClassVar[str] = "gcp_instance_group_manager_version" kind_display: ClassVar[str] = "GCP Instance Group Manager Version" kind_description: ClassVar[str] = ( - "Instance Group Manager is a feature in Google Cloud Platform that allows you" - " to manage groups of virtual machine instances as a single entity. GCP" - " Instance Group Manager Version refers to a specific version of the instance" - " group manager that is used to manage and control the instances within the" - " group." + "GCP Instance Group Manager Version outlines the template and size details for a specific version of managed" + " instances, enabling the management of different instance templates and scaling properties within a" + " single group manager." ) mapping: ClassVar[Dict[str, Bender]] = { "instance_template": S("instanceTemplate"), @@ -2988,8 +2971,8 @@ class GcpItems: kind: ClassVar[str] = "gcp_items" kind_display: ClassVar[str] = "GCP Items" kind_description: ClassVar[str] = ( - "GCP Items refers to the resources available in Google Cloud Platform, which" - " is a suite of cloud computing services provided by Google." + "GCP Items refer to the metadata key-value pairs associated with a Google Cloud instance," + " allowing customization of instance configuration and behavior." ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "value": S("value")} key: Optional[str] = field(default=None) @@ -3102,9 +3085,9 @@ class GcpReservationAffinity: kind: ClassVar[str] = "gcp_reservation_affinity" kind_display: ClassVar[str] = "GCP Reservation Affinity" kind_description: ClassVar[str] = ( - "Reservation Affinity is a feature in Google Cloud Platform that allows you" - " to specify that certain instances should be hosted on the same physical" - " machine to leverage the performance benefits of co-location." + "GCP Reservation Affinity is a configuration setting within GCP Instance Properties that controls how" + " instances use reservations for resources, specifying whether and how instances should consume" + " reserved compute capacity in GCP." ) mapping: ClassVar[Dict[str, Bender]] = { "consume_reservation_type": S("consumeReservationType"), @@ -3202,8 +3185,8 @@ class GcpTags: kind: ClassVar[str] = "gcp_tags" kind_display: ClassVar[str] = "GCP Tags" kind_description: ClassVar[str] = ( - "GCP Tags are labels applied to resources in Google Cloud Platform (GCP) to" - " organize and group them for easier management and control." + "GCP Tags are used to identify and group virtual machine instances within the Google Cloud Platform, allowing" + " for batch management and network firewall rule application based on these identifiers." ) mapping: ClassVar[Dict[str, Bender]] = {"fingerprint": S("fingerprint"), "items": S("items", default=[])} fingerprint: Optional[str] = field(default=None) @@ -3291,8 +3274,8 @@ class GcpSourceInstanceParams: kind: ClassVar[str] = "gcp_source_instance_params" kind_display: ClassVar[str] = "GCP Source Instance Params" kind_description: ClassVar[str] = ( - "In Google Cloud Platform (GCP), Source Instance Params are parameters used" - " when creating a source instance for data migration or replication tasks." + "GCP Source Instance Params within an Instance Template define the configurations for disks when" + " creating instances from the template, allowing for customization of storage options." ) mapping: ClassVar[Dict[str, Bender]] = { "disk_configs": S("diskConfigs", default=[]) >> ForallBend(GcpDiskInstantiationConfig.mapping) @@ -3646,8 +3629,8 @@ class GcpInterconnectLocationRegionInfo: kind: ClassVar[str] = "gcp_interconnect_location_region_info" kind_display: ClassVar[str] = "GCP Interconnect Location Region Info" kind_description: ClassVar[str] = ( - "This resource provides information about the available regions for Google" - " Cloud Platform (GCP) Interconnect locations." + "GCP Interconnect Location Region Info pertains to the specifications of network latency" + " and regional availability for a Google Cloud interconnection point." ) mapping: ClassVar[Dict[str, Bender]] = { "expected_rtt_ms": S("expectedRttMs"), @@ -3829,10 +3812,9 @@ class GcpInterconnect(GcpResource): class GcpLicenseResourceRequirements: kind: ClassVar[str] = "gcp_license_resource_requirements" kind_display: ClassVar[str] = "GCP License Resource Requirements" - kind_description: ClassVar[str] = ( - "GCP License Resource Requirements ensure that the necessary resources are" - " available for managing licenses on the Google Cloud Platform (GCP)." - ) + kind_description: ClassVar[ + str + ] = "GCP License Resource Requirements refers to the set of criteria that must be met in terms of computational resources when you want to bring your own licenses (BYOL) to the Google Cloud Platform." mapping: ClassVar[Dict[str, Bender]] = { "min_guest_cpu_count": S("minGuestCpuCount"), "min_memory_mb": S("minMemoryMb"), @@ -3884,9 +3866,9 @@ class GcpSavedDisk: kind: ClassVar[str] = "gcp_saved_disk" kind_display: ClassVar[str] = "GCP Saved Disk" kind_description: ClassVar[str] = ( - "Saved Disks in Google Cloud Platform are persistent storage devices that can" - " be attached to virtual machine instances, allowing users to store and" - " retrieve data." + "The GCP Saved Disk refers to a snapshot of a virtual machine disk that has been saved within a machine" + " image, which includes details about the architecture, the original disk source, the size of the stored" + " data, and the status of the storage usage." ) mapping: ClassVar[Dict[str, Bender]] = { "architecture": S("architecture"), @@ -4431,8 +4413,8 @@ class GcpShareSettingsProjectConfig: kind: ClassVar[str] = "gcp_share_settings_project_config" kind_display: ClassVar[str] = "GCP Share Settings Project Config" kind_description: ClassVar[str] = ( - "Share Settings Project Config represents the configuration settings for" - " sharing projects in Google Cloud Platform (GCP)." + "The GCP Share Settings Project Config within the Node Group service framework outlines the specific" + " project identifier for which the share settings are applicable." ) mapping: ClassVar[Dict[str, Bender]] = {"project_id": S("projectId")} project_id: Optional[str] = field(default=None) @@ -4443,8 +4425,8 @@ class GcpShareSettings: kind: ClassVar[str] = "gcp_share_settings" kind_display: ClassVar[str] = "GCP Share Settings" kind_description: ClassVar[str] = ( - "GCP Share Settings refer to the configuration options for sharing resources" - " and access permissions in the Google Cloud Platform." + "GCP Share Settings in the context of a Node Group dictate how compute resources are distributed and" + " shared among various projects within a specific group or type." ) mapping: ClassVar[Dict[str, Bender]] = { "project_map": S("projectMap", default={}) >> MapDict(value_bender=Bend(GcpShareSettingsProjectConfig.mapping)), @@ -4459,9 +4441,9 @@ class GcpNodeGroup(GcpResource): kind: ClassVar[str] = "gcp_node_group" kind_display: ClassVar[str] = "GCP Node Group" kind_description: ClassVar[str] = ( - "GCP Node Group is a resource in Google Cloud Platform that allows you to" - " create and manage groups of virtual machines (nodes) for running" - " applications." + "The GCP Node Group is a service that manages groups of sole-tenant nodes in Google Cloud, providing" + " capabilities for autoscaling, scheduled maintenance, and specifying node affinity to optimize placement" + " and utilization." ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_node_template"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -4689,9 +4671,9 @@ class GcpPacketMirroringMirroredResourceInfoSubnetInfo: kind: ClassVar[str] = "gcp_packet_mirroring_mirrored_resource_info_subnet_info" kind_display: ClassVar[str] = "GCP Packet Mirroring Mirrored Resource Info Subnet Info" kind_description: ClassVar[str] = ( - "Packet Mirroring is a feature in Google Cloud Platform that allows you to" - " duplicate and send network traffic from one subnet to another subnet for" - " monitoring and analysis purposes." + "GCP Packet Mirroring Mirrored Resource Info Subnet Info is related to the configuration for selecting" + " specific subnets whose traffic is to be mirrored for inspection or monitoring purposes in the Google" + " Cloud Packet Mirroring service." ) mapping: ClassVar[Dict[str, Bender]] = {"canonical_url": S("canonicalUrl"), "url": S("url")} canonical_url: Optional[str] = field(default=None) @@ -5163,9 +5145,9 @@ class GcpSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig: kind: ClassVar[str] = "gcp_security_policy_adaptive_protection_config_layer7_ddos_defense_config" kind_display: ClassVar[str] = "GCP Security Policy Adaptive Protection Config Layer 7 DDoS Defense Config" kind_description: ClassVar[str] = ( - "Adaptive Protection Config Layer 7 DDoS Defense Config is a feature of" - " Google Cloud Platform's Security Policy that enables adaptive protection" - " against Layer 7 Distributed Denial of Service (DDoS) attacks." + "The Layer 7 DDoS Defense Config in a GCP Security Policy Adaptive Protection Config refers to the options" + " that control the activation and transparency of rules designed to mitigate Distributed Denial of Service" + " (DDoS) attacks at the application layer." ) mapping: ClassVar[Dict[str, Bender]] = {"enable": S("enable"), "rule_visibility": S("ruleVisibility")} enable: Optional[bool] = field(default=None) @@ -5177,11 +5159,8 @@ class GcpSecurityPolicyAdaptiveProtectionConfig: kind: ClassVar[str] = "gcp_security_policy_adaptive_protection_config" kind_display: ClassVar[str] = "GCP Security Policy Adaptive Protection Config" kind_description: ClassVar[str] = ( - "The GCP Security Policy Adaptive Protection Config is a configuration" - " setting that enables adaptive protection for a security policy in Google" - " Cloud Platform. Adaptive protection dynamically adjusts the level of" - " security based on the threat level and helps protect resources from" - " malicious attacks." + "GCP Security Policy Adaptive Protection Config within a GCP Security Policy pertains to the configuration" + " settings that govern the adaptive security mechanisms against Layer 7 DDoS attacks." ) mapping: ClassVar[Dict[str, Bender]] = { "layer7_ddos_defense_config": S("layer7DdosDefenseConfig", default={}) @@ -5229,9 +5208,8 @@ class GcpSecurityPolicyRuleHttpHeaderActionHttpHeaderOption: kind: ClassVar[str] = "gcp_security_policy_rule_http_header_action_http_header_option" kind_display: ClassVar[str] = "GCP Security Policy Rule HTTP Header Action HTTP Header Option" kind_description: ClassVar[str] = ( - "HTTP Header Option is a feature in Google Cloud Platform's Security Policy" - " that allows you to define specific actions to be taken on HTTP headers in" - " network traffic." + "GCP Security Policy Rule HTTP Header Option allows for the specification of custom header names and" + " values that can be added to requests matched by security policy rules." ) mapping: ClassVar[Dict[str, Bender]] = {"header_name": S("headerName"), "header_value": S("headerValue")} header_name: Optional[str] = field(default=None) @@ -5243,9 +5221,8 @@ class GcpSecurityPolicyRuleHttpHeaderAction: kind: ClassVar[str] = "gcp_security_policy_rule_http_header_action" kind_display: ClassVar[str] = "GCP Security Policy Rule HTTP Header Action" kind_description: ClassVar[str] = ( - "HTTP Header Action is a rule for configuring security policies in Google" - " Cloud Platform (GCP) to control and manipulate HTTP headers for network" - " traffic." + "The HTTP Header Action within a GCP Security Policy Rule specifies headers that are added to requests" + " as they are forwarded to a backend service." ) mapping: ClassVar[Dict[str, Bender]] = { "request_headers_to_adds": S("requestHeadersToAdds", default=[]) @@ -5270,11 +5247,11 @@ class GcpSecurityPolicyRuleMatcherConfig: @define(eq=False, slots=False) class GcpExpr: kind: ClassVar[str] = "gcp_expr" - kind_display: ClassVar[str] = "GCP Express Route" + kind_display: ClassVar[str] = "GCP Expr" kind_description: ClassVar[str] = ( - "GCP Express Route is a high-performance, reliable, and cost-effective way to" - " establish private connections between data centers and Google Cloud Platform" - " (GCP) resources." + "GCP Expr refers to an expression in a GCP Security Policy Rule Matcher that defines conditions" + " for enforcing security rules, with fields to specify its logic, location within the request," + " and additional metadata." ) mapping: ClassVar[Dict[str, Bender]] = { "description": S("description"), @@ -5312,8 +5289,9 @@ class GcpSecurityPolicyRuleRateLimitOptionsThreshold: kind: ClassVar[str] = "gcp_security_policy_rule_rate_limit_options_threshold" kind_display: ClassVar[str] = "GCP Security Policy Rate Limit Options Threshold" kind_description: ClassVar[str] = ( - "This is a threshold value used in Google Cloud Platform Security Policies to" - " limit the rate at which requests are processed." + "GCP Security Policy Rate Limit Options Threshold is a set of parameters that specify the number of requests" + " (count) allowed over a defined interval in seconds (interval_sec) before triggering rate limiting actions" + " under a security policy." ) mapping: ClassVar[Dict[str, Bender]] = {"count": S("count"), "interval_sec": S("intervalSec")} count: Optional[int] = field(default=None) @@ -5325,9 +5303,8 @@ class GcpSecurityPolicyRuleRedirectOptions: kind: ClassVar[str] = "gcp_security_policy_rule_redirect_options" kind_display: ClassVar[str] = "GCP Security Policy Rule Redirect Options" kind_description: ClassVar[str] = ( - "GCP Security Policy Rule Redirect Options provide a way to configure" - " redirection rules for network traffic in Google Cloud Platform, enabling" - " users to redirect traffic to a different destination or URL." + "The GCP Security Policy Rule Redirect Options specify how traffic should be redirected; it defines the target" + " to which the traffic should be sent and the type of redirect that should be applied." ) mapping: ClassVar[Dict[str, Bender]] = {"target": S("target"), "type": S("type")} target: Optional[str] = field(default=None) @@ -5339,9 +5316,9 @@ class GcpSecurityPolicyRuleRateLimitOptions: kind: ClassVar[str] = "gcp_security_policy_rule_rate_limit_options" kind_display: ClassVar[str] = "GCP Security Policy Rule Rate Limit Options" kind_description: ClassVar[str] = ( - "Rate Limit Options in the Google Cloud Platform (GCP) Security Policy Rule" - " allow you to set limits on the amount of traffic that can pass through a" - " security policy rule within a certain time period." + "GCP Security Policy Rule Rate Limit Options define the parameters for rate limiting requests that match" + " specific conditions in a security policy, including actions to take when thresholds are exceeded and" + " settings for banning offenders for a specified duration." ) mapping: ClassVar[Dict[str, Bender]] = { "ban_duration_sec": S("banDurationSec"), @@ -5751,8 +5728,9 @@ class GcpHttpFaultAbort: kind: ClassVar[str] = "gcp_http_fault_abort" kind_display: ClassVar[str] = "GCP HTTP Fault Abort" kind_description: ClassVar[str] = ( - "HTTP Fault Abort is a feature in Google Cloud Platform that allows you to" - " simulate aborting an HTTP request for testing and troubleshooting purposes." + "GCP HTTP Fault Abort allows you to specify an HTTP status code that the load balancer should return," + " simulating an abort condition for a set percentage of requests to test the client's handling of" + " backend failures." ) mapping: ClassVar[Dict[str, Bender]] = {"http_status": S("httpStatus"), "percentage": S("percentage")} http_status: Optional[int] = field(default=None) @@ -5764,9 +5742,8 @@ class GcpHttpFaultDelay: kind: ClassVar[str] = "gcp_http_fault_delay" kind_display: ClassVar[str] = "GCP HTTP Fault Delay" kind_description: ClassVar[str] = ( - "HTTP Fault Delay is a feature in Google Cloud Platform that allows users to" - " inject delays in HTTP responses for testing fault tolerance and resilience" - " of applications." + "GCP HTTP Fault Delay introduces a specified delay for a percentage of requests, testing the" + " client's tolerance to increased latencies from the backend service." ) mapping: ClassVar[Dict[str, Bender]] = { "fixed_delay": S("fixedDelay", default={}) >> Bend(GcpDuration.mapping), @@ -5833,8 +5810,9 @@ class GcpHttpHeaderOption: kind: ClassVar[str] = "gcp_http_header_option" kind_display: ClassVar[str] = "GCP HTTP Header Option" kind_description: ClassVar[str] = ( - "GCP HTTP Header Option allows users to configure and control the HTTP" - " headers for their applications running on the Google Cloud Platform." + "GCP HTTP Header Option allows the specification of custom HTTP header names and values, with an option" + " to replace existing headers, to tailor how requests and responses are handled by services such" + " as load balancers or routing rules." ) mapping: ClassVar[Dict[str, Bender]] = { "header_name": S("headerName"), @@ -5851,9 +5829,9 @@ class GcpHttpHeaderAction: kind: ClassVar[str] = "gcp_http_header_action" kind_display: ClassVar[str] = "GCP HTTP Header Action" kind_description: ClassVar[str] = ( - "GCP HTTP Header Action is a feature in Google Cloud Platform that allows" - " users to configure actions to be taken based on the HTTP header of a" - " request." + "The GCP HTTP Header Action feature enables you to add or remove specified HTTP headers from requests and" + " responses as they route through load balancers, allowing for customized content delivery and client" + " request handling." ) mapping: ClassVar[Dict[str, Bender]] = { "request_headers_to_add": S("requestHeadersToAdd", default=[]) >> ForallBend(GcpHttpHeaderOption.mapping), @@ -5983,8 +5961,8 @@ class GcpInt64RangeMatch: kind: ClassVar[str] = "gcp_int64_range_match" kind_display: ClassVar[str] = "GCP Int64 Range Match" kind_description: ClassVar[str] = ( - "GCP Int64 Range Match is a feature in Google Cloud Platform that enables" - " matching a specific 64-bit integer value within a given range." + "GCP Int64 Range Match allows for the comparison of integer values within HTTP headers against a defined" + " start and end range." ) mapping: ClassVar[Dict[str, Bender]] = {"range_end": S("rangeEnd"), "range_start": S("rangeStart")} range_end: Optional[str] = field(default=None) @@ -6025,9 +6003,8 @@ class GcpHttpQueryParameterMatch: kind: ClassVar[str] = "gcp_http_query_parameter_match" kind_display: ClassVar[str] = "GCP HTTP Query Parameter Match" kind_description: ClassVar[str] = ( - "GCP HTTP Query Parameter Match is a feature in Google Cloud Platform that" - " allows users to configure HTTP(S) Load Balancing to route traffic based on" - " matching query parameters in the request URL." + "GCP HTTP Query Parameter Match defines criteria for matching HTTP query parameters in requests" + " against specified patterns or conditions to determine if an HTTP Route Rule should apply." ) mapping: ClassVar[Dict[str, Bender]] = { "exact_match": S("exactMatch"), @@ -6221,9 +6198,10 @@ class GcpResourcePolicyGroupPlacementPolicy: kind: ClassVar[str] = "gcp_resource_policy_group_placement_policy" kind_display: ClassVar[str] = "GCP Resource Policy Group Placement Policy" kind_description: ClassVar[str] = ( - "A resource policy group placement policy in Google Cloud Platform (GCP)" - " allows you to control the placement of resources within a group, ensuring" - " high availability and efficient utilization of resources." + "The GCP Resource Policy Group Placement Policy is a configuration within Google Cloud's Resource Policies" + " that manages the physical placement of VM instances to optimize for either availability or co-location," + " with settings that include the number of availability domains used and the number of VMs that should be" + " grouped together." ) mapping: ClassVar[Dict[str, Bender]] = { "availability_domain_count": S("availabilityDomainCount"), @@ -6263,8 +6241,8 @@ class GcpResourcePolicyResourceStatusInstanceSchedulePolicyStatus: kind: ClassVar[str] = "gcp_resource_policy_resource_status_instance_schedule_policy_status" kind_display: ClassVar[str] = "GCP Resource Policy Resource Status Instance Schedule Policy Status" kind_description: ClassVar[str] = ( - "This resource represents the status of a scheduling policy for instances in" - " Google Cloud Platform (GCP) resource policy." + "GCP Resource Policy Resource Status Instance Schedule Policy Status tracks the timing of the scheduled" + " operations for resources, indicating the most recent and upcoming start times for policy-driven actions." ) mapping: ClassVar[Dict[str, Bender]] = { "last_run_start_time": S("lastRunStartTime"), @@ -6279,9 +6257,9 @@ class GcpResourcePolicyResourceStatus: kind: ClassVar[str] = "gcp_resource_policy_resource_status" kind_display: ClassVar[str] = "GCP Resource Policy Resource Status" kind_description: ClassVar[str] = ( - "Resource Policy Resource Status is a feature in Google Cloud Platform (GCP)" - " that provides information about the status of resource policies applied to" - " different cloud resources within a GCP project." + "The GCP Resource Policy Resource Status provides the operational status of an instance schedule policy" + " within a resource policy, indicating whether it's active or in any other state based on the scheduling" + " configurations set." ) mapping: ClassVar[Dict[str, Bender]] = { "instance_schedule_policy": S("instanceSchedulePolicy", default={}) @@ -6332,9 +6310,9 @@ class GcpResourcePolicyHourlyCycle: kind: ClassVar[str] = "gcp_resource_policy_hourly_cycle" kind_display: ClassVar[str] = "GCP Resource Policy Hourly Cycle" kind_description: ClassVar[str] = ( - "GCP Resource Policy Hourly Cycle is a feature in Google Cloud Platform that" - " allows users to define resource policies for their cloud resources on an" - " hourly basis, ensuring efficient allocation and utilization." + "The GCP Resource Policy Hourly Cycle dictates how a specific resource policy, such as a snapshot schedule," + " should operate on an hourly basis, including the frequency per cycle, the cycle's duration, and the" + " precise start time for the policy's action to be triggered." ) mapping: ClassVar[Dict[str, Bender]] = { "duration": S("duration"), @@ -6350,11 +6328,9 @@ class GcpResourcePolicyHourlyCycle: class GcpResourcePolicyWeeklyCycleDayOfWeek: kind: ClassVar[str] = "gcp_resource_policy_weekly_cycle_day_of_week" kind_display: ClassVar[str] = "GCP Resource Policy Weekly Cycle Day of Week" - kind_description: ClassVar[str] = ( - "GCP Resource Policy Weekly Cycle Day of Week is a setting in Google Cloud" - " Platform that allows users to specify and control the day of the week when a" - " resource policy should be applied." - ) + kind_description: ClassVar[ + str + ] = "The GCP Resource Policy Weekly Cycle Day of Week defines the specific days within the week when particular operations or actions should occur, including the start time and duration of these actions." mapping: ClassVar[Dict[str, Bender]] = {"day": S("day"), "duration": S("duration"), "start_time": S("startTime")} day: Optional[str] = field(default=None) duration: Optional[str] = field(default=None) @@ -6366,10 +6342,9 @@ class GcpResourcePolicyWeeklyCycle: kind: ClassVar[str] = "gcp_resource_policy_weekly_cycle" kind_display: ClassVar[str] = "GCP Resource Policy Weekly Cycle" kind_description: ClassVar[str] = ( - "The GCP Resource Policy Weekly Cycle is a recurring schedule for managing" - " and controlling resources in Google Cloud Platform (GCP) by specifying" - " policies that define what actions can be performed on the resources during a" - " specific weekly cycle." + "The GCP Resource Policy Weekly Cycle is a scheduling configuration that specifies on which days of the" + " week, at what times, and for how long certain operations on resources should take place as part of the" + " resource policy." ) mapping: ClassVar[Dict[str, Bender]] = { "day_of_weeks": S("dayOfWeeks", default=[]) >> ForallBend(GcpResourcePolicyWeeklyCycleDayOfWeek.mapping) @@ -6442,10 +6417,9 @@ class GcpResourcePolicy(GcpResource): kind: ClassVar[str] = "gcp_resource_policy" kind_display: ClassVar[str] = "GCP Resource Policy" kind_description: ClassVar[str] = ( - "GCP Resource Policy is a feature provided by Google Cloud Platform that" - " allows users to define fine-grained policies for managing and controlling" - " access to cloud resources like compute instances, storage buckets, and" - " networking resources." + "GCP Resource Policy is a tool that helps manage compute resources for VM instances in Google" + " Cloud, enabling users to define scheduling for instance creation, automated snapshots, and" + " resource grouping, which can optimize costs and maintain the necessary resource availability." ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", @@ -6622,9 +6596,8 @@ class GcpRouterMd5AuthenticationKey: kind: ClassVar[str] = "gcp_router_md5_authentication_key" kind_display: ClassVar[str] = "GCP Router MD5 Authentication Key" kind_description: ClassVar[str] = ( - "GCP Router MD5 Authentication Key is a security feature in Google Cloud" - " Platform that uses the MD5 algorithm to authenticate traffic between" - " routers." + "The GCP Router MD5 Authentication Key is a security feature for routers that uses an MD5 key for" + " authentication, ensuring secure exchange of routing updates." ) mapping: ClassVar[Dict[str, Bender]] = {"key": S("key"), "name": S("name")} key: Optional[str] = field(default=None) @@ -6912,10 +6885,8 @@ class GcpServiceAttachmentConsumerProjectLimit: kind: ClassVar[str] = "gcp_service_attachment_consumer_project_limit" kind_display: ClassVar[str] = "GCP Service Attachment Consumer Project Limit" kind_description: ClassVar[str] = ( - "This is a limit imposed on the number of projects that can consume a" - " specific service attachment in Google Cloud Platform (GCP). A service" - " attachment allows a project to use a service or resource from another" - " project." + "GCP Service Attachment Consumer Project Limit manages the maximum number of connections a specific consumer" + " project can establish with a service provider through the service attachment feature." ) mapping: ClassVar[Dict[str, Bender]] = { "connection_limit": S("connectionLimit"), @@ -6930,9 +6901,9 @@ class GcpUint128: kind: ClassVar[str] = "gcp_uint128" kind_display: ClassVar[str] = "GCP Uint128" kind_description: ClassVar[str] = ( - "Uint128 is an unsigned 128-bit integer type in Google Cloud Platform (GCP)." - " It is used for performing arithmetic operations on large numbers in GCP" - " applications." + "A GCP Uint128 is a large numerical identifier comprising two sequential numerical parts that" + " enable a vast range of unique identifiers, typically utilized for resources requiring a very" + " large space of IDs." ) mapping: ClassVar[Dict[str, Bender]] = {"high": S("high"), "low": S("low")} high: Optional[str] = field(default=None) @@ -6944,9 +6915,9 @@ class GcpServiceAttachment(GcpResource): kind: ClassVar[str] = "gcp_service_attachment" kind_display: ClassVar[str] = "GCP Service Attachment" kind_description: ClassVar[str] = ( - "GCP Service Attachment refers to the attachment of a Google Cloud Platform" - " service to a particular resource, enabling the service to interact and" - " operate with that resource." + "GCP Service Attachment is a networking feature that manages connectivity and security policies between" + " Google Cloud services and external services, offering controls like connection preferences, domain" + " names management, and protocol support." ) reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_backend_service", "gcp_subnetwork"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( diff --git a/plugins/gcp/resoto_plugin_gcp/resources/container.py b/plugins/gcp/resoto_plugin_gcp/resources/container.py index cb884b7de8..20ce9728f3 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/container.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/container.py @@ -65,9 +65,8 @@ class GcpContainerAuthenticatorGroupsConfig: kind: ClassVar[str] = "gcp_container_authenticator_groups_config" kind_display: ClassVar[str] = "GCP Container Authenticator Groups Config" kind_description: ClassVar[str] = ( - "GCP Container Authenticator Groups Config is a configuration resource in" - " Google Cloud Platform that allows users to define groups of authenticated" - " users and their access privileges for container-based applications." + "In the context of GCP Container, the Authenticator Groups Config specifies whether" + " a security group is enabled for authenticating containers." ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "security_group": S("securityGroup")} enabled: Optional[bool] = field(default=None) @@ -115,9 +114,8 @@ class GcpContainerShieldedInstanceConfig: kind: ClassVar[str] = "gcp_container_shielded_instance_config" kind_display: ClassVar[str] = "GCP Container Shielded Instance Config" kind_description: ClassVar[str] = ( - "Shielded Instance Config is a feature in Google Cloud Platform that adds" - " layers of security to container instances, protecting them from various" - " attack vectors and ensuring the integrity of the running container images." + "The GCP Container Shielded Instance Config ensures enhanced security for GKE nodes by offering" + " options to enable integrity monitoring and secure boot features." ) mapping: ClassVar[Dict[str, Bender]] = { "enable_integrity_monitoring": S("enableIntegrityMonitoring"), @@ -151,9 +149,9 @@ class GcpContainerBlueGreenSettings: kind: ClassVar[str] = "gcp_container_blue_green_settings" kind_display: ClassVar[str] = "GCP Container Blue-Green Settings" kind_description: ClassVar[str] = ( - "GCP Container Blue-Green Settings refers to the ability to deploy new" - " versions of containers in a blue-green manner, enabling seamless deployment" - " and testing of code changes without affecting production traffic." + "GCP Container Blue-Green Settings refer to the configuration options for managing the node" + " pool upgrade process, including the soak time for new nodes and the policy for rolling out" + " upgrades across node pools." ) mapping: ClassVar[Dict[str, Bender]] = { "node_pool_soak_duration": S("nodePoolSoakDuration"), @@ -190,9 +188,9 @@ class GcpContainerAutoprovisioningNodePoolDefaults: kind: ClassVar[str] = "gcp_container_autoprovisioning_node_pool_defaults" kind_display: ClassVar[str] = "GCP Container Autoprovisioning Node Pool Defaults" kind_description: ClassVar[str] = ( - "Autoprovisioning Node Pool Defaults is a feature of Google Cloud Platform" - " (GCP) Container Engine that automatically creates and manages additional" - " node pools based on workload demands." + "In GCP Container Autoprovisioning, Node Pool Defaults determine the configuration for nodes created" + " automatically, including settings for disk encryption, disk size and type, image type, access scopes," + " and instance configuration options." ) mapping: ClassVar[Dict[str, Bender]] = { "boot_disk_kms_key": S("bootDiskKmsKey"), @@ -282,8 +280,8 @@ class GcpContainerStatusCondition: kind: ClassVar[str] = "gcp_container_status_condition" kind_display: ClassVar[str] = "GCP Container Status Condition" kind_description: ClassVar[str] = ( - "Container Status Condition represents the current status condition of a" - " container in the Google Cloud Platform Container Registry." + "The GCP Container Status Condition provides detailed status codes and messages that" + " help to diagnose the health and operational state of GKE node pools and operations." ) mapping: ClassVar[Dict[str, Bender]] = { "canonical_code": S("canonicalCode"), @@ -300,9 +298,8 @@ class GcpContainerDatabaseEncryption: kind: ClassVar[str] = "gcp_container_database_encryption" kind_display: ClassVar[str] = "GCP Container Database Encryption" kind_description: ClassVar[str] = ( - "GCP Container Database Encryption provides enhanced security by encrypting" - " the data stored in containers, ensuring the confidentiality and integrity of" - " the data at rest." + "GCP Container Database Encryption settings in a container cluster define" + " the encryption key used for database encryption and its operational state." ) mapping: ClassVar[Dict[str, Bender]] = {"key_name": S("keyName"), "state": S("state")} key_name: Optional[str] = field(default=None) @@ -398,8 +395,8 @@ class GcpContainerTimeWindow: kind: ClassVar[str] = "gcp_container_time_window" kind_display: ClassVar[str] = "GCP Container Time Window" kind_description: ClassVar[str] = ( - "A time window feature in GCP that allows users to specify the period of time" - " during which their containers are allowed to run." + "The GCP Container Time Window specifies the start and end times for maintenance windows, including" + " any specific exclusions to accommodate operational preferences within Google Kubernetes Engine." ) mapping: ClassVar[Dict[str, Bender]] = { "end_time": S("endTime"), @@ -415,10 +412,9 @@ class GcpContainerTimeWindow: class GcpContainerRecurringTimeWindow: kind: ClassVar[str] = "gcp_container_recurring_time_window" kind_display: ClassVar[str] = "GCP Container Recurring Time Window" - kind_description: ClassVar[str] = ( - "A recurring time window in Google Cloud Platform's container environment," - " used for scheduling recurring tasks or events." - ) + kind_description: ClassVar[ + str + ] = "Container Recurring Time Window defines the schedule for regular maintenance operations." mapping: ClassVar[Dict[str, Bender]] = { "recurrence": S("recurrence"), "window": S("window", default={}) >> Bend(GcpContainerTimeWindow.mapping), @@ -432,9 +428,9 @@ class GcpContainerMaintenanceWindow: kind: ClassVar[str] = "gcp_container_maintenance_window" kind_display: ClassVar[str] = "GCP Container Maintenance Window" kind_description: ClassVar[str] = ( - "A maintenance window is a designated time period during which planned" - " maintenance can be performed on Google Cloud Platform (GCP) containers" - " without impacting the availability of the services." + "The Container Maintenance Window specifies the preferred times and days for maintenance operations," + " including options for daily maintenance and recurring windows, along with any exclusions to the" + " standard schedule." ) mapping: ClassVar[Dict[str, Bender]] = { "daily_maintenance_window": S("dailyMaintenanceWindow", default={}) @@ -621,9 +617,9 @@ class GcpContainerGPUSharingConfig: kind: ClassVar[str] = "gcp_container_gpu_sharing_config" kind_display: ClassVar[str] = "GCP Container GPU Sharing Config" kind_description: ClassVar[str] = ( - "This resource allows the sharing of GPUs (Graphics Processing Units) between" - " containers in Google Cloud Platform (GCP) containers, enabling efficient" - " utilization of GPU resources." + "GCP Container GPU Sharing Config, within the scope of GCP Container Accelerator Config, determines how" + " GPUs are shared among container instances and sets the maximum number of clients that can" + " simultaneously utilize a single GPU." ) mapping: ClassVar[Dict[str, Bender]] = { "gpu_sharing_strategy": S("gpuSharingStrategy"), @@ -706,11 +702,9 @@ class GcpContainerNodePoolLoggingConfig: class GcpContainerReservationAffinity: kind: ClassVar[str] = "gcp_container_reservation_affinity" kind_display: ClassVar[str] = "GCP Container Reservation Affinity" - kind_description: ClassVar[str] = ( - "Container Reservation Affinity is a feature in Google Cloud Platform that" - " allows you to reserve specific compute nodes for your container workloads," - " ensuring they are always scheduled on those nodes." - ) + kind_description: ClassVar[ + str + ] = "Container Reservation Affinity is a setting that controls how instances are scheduled on reservations." mapping: ClassVar[Dict[str, Bender]] = { "consume_reservation_type": S("consumeReservationType"), "key": S("key"), @@ -811,9 +805,9 @@ class GcpContainerNetworkTags: kind: ClassVar[str] = "gcp_container_network_tags" kind_display: ClassVar[str] = "GCP Container Network Tags" kind_description: ClassVar[str] = ( - "GCP Container Network Tags are labels that can be assigned to GCP container" - " instances, allowing for easier management and control of network traffic" - " within Google Cloud Platform." + "Within the GCP Container Node Pool Auto Configuration, Container Network Tags are labels applied" + " to virtual machine instances, allowing for the setup of network firewall rules and routes that" + " apply to tagged instances within the container cluster." ) mapping: ClassVar[Dict[str, Bender]] = {"tags": S("tags", default=[])} tags: Optional[List[str]] = field(default=None) @@ -824,9 +818,9 @@ class GcpContainerNodePoolAutoConfig: kind: ClassVar[str] = "gcp_container_node_pool_auto_config" kind_display: ClassVar[str] = "GCP Container Node Pool Auto Config" kind_description: ClassVar[str] = ( - "Auto Config is a feature in GCP (Google Cloud Platform) that allows" - " automatic configuration of Container Node Pools, which are groups of nodes" - " in a Kubernetes cluster that run containerized applications." + "The Container Node Pool Auto Config refers to settings that automatically determine the network tags" + " for nodes within a node pool. These tags are used to configure network firewall rules that apply to" + " the instances in the node pool." ) mapping: ClassVar[Dict[str, Bender]] = { "network_tags": S("networkTags", default={}) >> Bend(GcpContainerNetworkTags.mapping) @@ -941,9 +935,8 @@ class GcpContainerUpdateInfo: kind: ClassVar[str] = "gcp_container_update_info" kind_display: ClassVar[str] = "GCP Container Update Info" kind_description: ClassVar[str] = ( - "Container Update Info is a feature in Google Cloud Platform that provides" - " information about updates and changes to container instances in a Google" - " Kubernetes Engine cluster." + "GCP Container Update Info outlines details about blue-green deployment strategies" + " for node pools in Google Kubernetes Engine." ) mapping: ClassVar[Dict[str, Bender]] = { "blue_green_info": S("blueGreenInfo", default={}) >> Bend(GcpContainerBlueGreenInfo.mapping) @@ -1002,9 +995,10 @@ class GcpContainerNodePool: class GcpContainerFilter: kind: ClassVar[str] = "gcp_container_filter" kind_display: ClassVar[str] = "GCP Container Filter" - kind_description: ClassVar[ - str - ] = "A GCP Container Filter is used to specify criteria for filtering containers in Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP Container Filter specifies the type of events that should trigger the container," + " typically based on Pub/Sub messages." + ) mapping: ClassVar[Dict[str, Bender]] = {"event_type": S("eventType", default=[])} event_type: Optional[List[str]] = field(default=None) @@ -1014,8 +1008,10 @@ class GcpContainerPubSub: kind: ClassVar[str] = "gcp_container_pub_sub" kind_display: ClassVar[str] = "GCP Container Pub/Sub" kind_description: ClassVar[str] = ( - "GCP Container Pub/Sub is a messaging service provided by Google Cloud" - " Platform for decoupling and scaling microservices and distributed systems." + "In the context of GCP Container Notification Config, the Container Pub/Sub setting enables you to configure" + " Google Cloud's Pub/Sub for receiving notifications. When enabled, it allows you to specify a filter" + " to determine the types of cluster events that should trigger notifications, and the Pub/Sub topic" + " to which these notifications will be sent." ) mapping: ClassVar[Dict[str, Bender]] = { "enabled": S("enabled"), @@ -1032,8 +1028,8 @@ class GcpContainerNotificationConfig: kind: ClassVar[str] = "gcp_container_notification_config" kind_display: ClassVar[str] = "GCP Container Notification Config" kind_description: ClassVar[str] = ( - "GCP Container Notification Config is a resource in Google Cloud Platform" - " that allows users to configure notifications for container events." + "The Container Notification Config is a setting that specifies the Pub/Sub topic to which notifications" + " for the cluster are published." ) mapping: ClassVar[Dict[str, Bender]] = {"pubsub": S("pubsub", default={}) >> Bend(GcpContainerPubSub.mapping)} pubsub: Optional[GcpContainerPubSub] = field(default=None) @@ -1072,9 +1068,9 @@ class GcpContainerResourceUsageExportConfig: kind: ClassVar[str] = "gcp_container_resource_usage_export_config" kind_display: ClassVar[str] = "GCP Container Resource Usage Export Config" kind_description: ClassVar[str] = ( - "Container Resource Usage Export Config is a feature in Google Cloud Platform" - " that allows exporting container resource usage data to external systems for" - " analysis and monitoring purposes." + "The GCP Container Resource Usage Export Config is a feature that facilitates the analysis of cluster" + " resource usage by exporting data to BigQuery and providing options for detailed consumption tracking" + " and network egress monitoring." ) mapping: ClassVar[Dict[str, Bender]] = { "bigquery_destination": S("bigqueryDestination", "datasetId"), diff --git a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py index b54bab1149..78a377c015 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/sqladmin.py @@ -177,8 +177,8 @@ class GcpSqlIpMapping: kind: ClassVar[str] = "gcp_sql_ip_mapping" kind_display: ClassVar[str] = "GCP SQL IP Mapping" kind_description: ClassVar[str] = ( - "GCP SQL IP Mapping is a feature in Google Cloud Platform that allows mapping" - " of IP addresses to Google Cloud SQL instances." + "The GCP SQL IP Mapping configures the IP address allocation for a Cloud SQL database instance, detailing" + " the assigned IP, its type, and any scheduled retirement." ) mapping: ClassVar[Dict[str, Bender]] = { "ip_address": S("ipAddress"), @@ -210,9 +210,8 @@ class GcpSqlOnPremisesConfiguration: kind: ClassVar[str] = "gcp_sql_on_premises_configuration" kind_display: ClassVar[str] = "GCP SQL On-Premises Configuration" kind_description: ClassVar[str] = ( - "GCP SQL On-Premises Configuration provides the ability to configure and" - " manage Google Cloud SQL databases that are located on customer's own on-" - " premises infrastructure." + "The GCP SQL On-Premises Configuration is used for setting up secure connections and credentials for migrating" + " or syncing data between an on-premises database and a GCP SQL Database Instance." ) mapping: ClassVar[Dict[str, Bender]] = { "ca_certificate": S("caCertificate"), @@ -238,9 +237,10 @@ class GcpSqlOnPremisesConfiguration: class GcpSqlSqlOutOfDiskReport: kind: ClassVar[str] = "gcp_sql_sql_out_of_disk_report" kind_display: ClassVar[str] = "GCP SQL Out of Disk Report" - kind_description: ClassVar[ - str - ] = "This resource represents a report that indicates when a Google Cloud SQL instance runs out of disk space." + kind_description: ClassVar[str] = ( + "The GCP SQL Out of Disk Report provides insights into the storage status of a SQL database instance," + " including recommendations on the minimum size increase necessary to prevent running out of disk space." + ) mapping: ClassVar[Dict[str, Bender]] = { "sql_min_recommended_increase_size_gb": S("sqlMinRecommendedIncreaseSizeGb"), "sql_out_of_disk_state": S("sqlOutOfDiskState"), @@ -301,13 +301,12 @@ class GcpSqlReplicaConfiguration: @define(eq=False, slots=False) -class GcpSqlSqlScheduledMaintenance: - kind: ClassVar[str] = "gcp_sql_sql_scheduled_maintenance" - kind_display: ClassVar[str] = "GCP SQL SQL Scheduled Maintenance" +class GcpSqlScheduledMaintenance: + kind: ClassVar[str] = "gcp_sql_scheduled_maintenance" + kind_display: ClassVar[str] = "GCP SQL Scheduled Maintenance" kind_description: ClassVar[str] = ( - "SQL Scheduled Maintenance is a feature in Google Cloud Platform's SQL" - " service that allows users to schedule maintenance tasks for their SQL" - " instances, ensuring minimal downtime and disruption." + "GCP SQL Scheduled Maintenance is a feature that allows database administrators to schedule maintenance" + " operations for a SQL database instance, with options to defer and reschedule within a specified deadline." ) mapping: ClassVar[Dict[str, Bender]] = { "can_defer": S("canDefer"), @@ -415,9 +414,8 @@ class GcpSqlDenyMaintenancePeriod: kind: ClassVar[str] = "gcp_sql_deny_maintenance_period" kind_display: ClassVar[str] = "GCP SQL Deny Maintenance Period" kind_description: ClassVar[str] = ( - "GCP SQL Deny Maintenance Period is a feature in Google Cloud Platform that" - " allows users to specify a period of time during which maintenance updates or" - " patches will not be applied to SQL instances." + "GCP SQL Deny Maintenance Period specifies a time frame during which maintenance activities by GCP on a SQL" + " database instance are not allowed, ensuring uninterrupted service during critical business periods." ) mapping: ClassVar[Dict[str, Bender]] = {"end_date": S("endDate"), "start_date": S("startDate"), "time": S("time")} end_date: Optional[str] = field(default=None) @@ -695,7 +693,7 @@ class GcpSqlDatabaseInstance(GcpResource): "replica_names": S("replicaNames", default=[]), "root_password": S("rootPassword"), "satisfies_pzs": S("satisfiesPzs"), - "scheduled_maintenance": S("scheduledMaintenance", default={}) >> Bend(GcpSqlSqlScheduledMaintenance.mapping), + "scheduled_maintenance": S("scheduledMaintenance", default={}) >> Bend(GcpSqlScheduledMaintenance.mapping), "secondary_gce_zone": S("secondaryGceZone"), "server_ca_cert": S("serverCaCert", default={}) >> Bend(GcpSqlSslCert.mapping), "service_account_email_address": S("serviceAccountEmailAddress"), @@ -728,7 +726,7 @@ class GcpSqlDatabaseInstance(GcpResource): replica_names: Optional[List[str]] = field(default=None) root_password: Optional[str] = field(default=None) satisfies_pzs: Optional[bool] = field(default=None) - scheduled_maintenance: Optional[GcpSqlSqlScheduledMaintenance] = field(default=None) + scheduled_maintenance: Optional[GcpSqlScheduledMaintenance] = field(default=None) secondary_gce_zone: Optional[str] = field(default=None) server_ca_cert: Optional[GcpSqlSslCert] = field(default=None) service_account_email_address: Optional[str] = field(default=None) @@ -798,9 +796,8 @@ class GcpSqlSqlexportoptions: kind: ClassVar[str] = "gcp_sql_sqlexportoptions" kind_display: ClassVar[str] = "GCP SQL SQLExportOptions" kind_description: ClassVar[str] = ( - "SQLExportOptions is a feature in Google Cloud Platform's SQL service that" - " allows users to export their SQL databases to different formats, such as CSV" - " or JSON." + "GCP SQL SQLExportOptions is a set of configurations for exporting data from a SQL database instance," + " including options for MySQL specific exports, schema-only exports, and selecting specific tables to export." ) mapping: ClassVar[Dict[str, Bender]] = { "mysql_export_options": S("mysqlExportOptions", default={}) >> Bend(GcpSqlMysqlexportoptions.mapping), @@ -817,9 +814,9 @@ class GcpSqlExportContext: kind: ClassVar[str] = "gcp_sql_export_context" kind_display: ClassVar[str] = "GCP SQL Export Context" kind_description: ClassVar[str] = ( - "GCP SQL Export Context is a feature in Google Cloud Platform that allows" - " users to export data from SQL databases to other storage or analysis" - " services." + "GCP SQL Export Context defines the parameters and settings for exporting data from a SQL database instance" + " in GCP, including the data format, destination URI, database selection, and whether the operation should" + " be offloaded to avoid impacting database performance." ) mapping: ClassVar[Dict[str, Bender]] = { "csv_export_options": S("csvExportOptions", default={}) >> Bend(GcpSqlCsvexportoptions.mapping), @@ -898,8 +895,8 @@ class GcpSqlImportContext: kind: ClassVar[str] = "gcp_sql_import_context" kind_display: ClassVar[str] = "GCP SQL Import Context" kind_description: ClassVar[str] = ( - "SQL Import Context is a feature provided by Google Cloud Platform to provide" - " contextual information while importing SQL databases." + "GCP SQL Import Context defines the settings for importing data into a Cloud SQL database," + " including file type and source URI." ) mapping: ClassVar[Dict[str, Bender]] = { "bak_import_options": S("bakImportOptions", default={}) >> Bend(GcpSqlBakimportoptions.mapping), @@ -922,8 +919,9 @@ class GcpSqlOperation(GcpResource): kind: ClassVar[str] = "gcp_sql_operation" kind_display: ClassVar[str] = "GCP SQL Operation" kind_description: ClassVar[str] = ( - "SQL Operation is a service in Google Cloud Platform (GCP) that provides" - " fully managed and highly available relational databases." + "The GCP SQL Operation is a representation of an administrative operation performed on a GCP SQL Database" + " instance, such as backups, imports, and exports, including details about execution times, status, and any" + " errors encountered." ) reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_sql_database_instance"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( diff --git a/plugins/gcp/resoto_plugin_gcp/resources/storage.py b/plugins/gcp/resoto_plugin_gcp/resources/storage.py index edabf8e397..ea20d58cca 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/storage.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/storage.py @@ -64,11 +64,10 @@ class GcpBucketAccessControl: @define(eq=False, slots=False) class GcpAutoclass: kind: ClassVar[str] = "gcp_autoclass" - kind_display: ClassVar[str] = "GCP AutoML AutoClass" + kind_display: ClassVar[str] = "GCP Autoclass" kind_description: ClassVar[str] = ( - "GCP AutoML AutoClass is a machine learning service provided by Google Cloud" - " Platform that automates the classification of data into different" - " categories." + "GCP Autoclass for a bucket indicates if automatic data classification is enabled" + " and the timestamp when this setting was last changed." ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "toggle_time": S("toggleTime")} enabled: Optional[bool] = field(default=None) @@ -80,9 +79,8 @@ class GcpCors: kind: ClassVar[str] = "gcp_cors" kind_display: ClassVar[str] = "GCP CORS" kind_description: ClassVar[str] = ( - "Cross-Origin Resource Sharing (CORS) in Google Cloud Platform allows web" - " applications running on different domains to make requests to resources in a" - " more secure manner." + "GCP CORS settings for a bucket in Google Cloud Storage define which origins can access resources" + " in the bucket, what HTTP methods are allowed, and which response headers can be exposed to the client." ) mapping: ClassVar[Dict[str, Bender]] = { "max_age_seconds": S("maxAgeSeconds"), @@ -152,10 +150,8 @@ class GcpUniformbucketlevelaccess: kind: ClassVar[str] = "gcp_uniformbucketlevelaccess" kind_display: ClassVar[str] = "GCP Uniform Bucket Level Access" kind_description: ClassVar[str] = ( - "Uniform bucket-level access is a feature in Google Cloud Platform that" - " allows for fine-grained access control to Google Cloud Storage buckets. It" - " provides more control and security for managing access to your storage" - " buckets." + "GCP Uniform Bucket Level Access is a Google Cloud Storage feature that, when enabled, applies consistent" + " IAM policies across all objects in a bucket, eliminating the need for individual object permissions." ) mapping: ClassVar[Dict[str, Bender]] = {"enabled": S("enabled"), "locked_time": S("lockedTime")} enabled: Optional[bool] = field(default=None) @@ -237,8 +233,8 @@ class GcpRule: kind: ClassVar[str] = "gcp_rule" kind_display: ClassVar[str] = "GCP Rule" kind_description: ClassVar[str] = ( - "GCP Rules are a set of policies or conditions defined to govern the behavior" - " of resources in the Google Cloud Platform." + "A GCP Rule for a Bucket refers to an object lifecycle management rule, which automates the deletion" + " or transition of objects to less expensive storage classes based on specified conditions and actions." ) mapping: ClassVar[Dict[str, Bender]] = { "action": S("action", default={}) >> Bend(GcpAction.mapping), @@ -319,9 +315,8 @@ class GcpObject(GcpResource): kind: ClassVar[str] = "gcp_object" kind_display: ClassVar[str] = "GCP Object" kind_description: ClassVar[str] = ( - "GCP Object is a generic term referring to any type of object stored in" - " Google Cloud Platform. It can include files, images, documents, or any other" - " digital asset." + "GCP Object, specifically referring to the Google Cloud Storage, is a basic unit of data that is stored" + " in Google Cloud Storage, often matching to an individual file." ) api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="storage", From 4605eee64e8fc44f6ffd3519702251cef1073326 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Tue, 7 Nov 2023 17:26:40 +0100 Subject: [PATCH 26/27] Update K8s descriptions --- plugins/k8s/resoto_plugin_k8s/resources.py | 109 +++++++++------------ 1 file changed, 47 insertions(+), 62 deletions(-) diff --git a/plugins/k8s/resoto_plugin_k8s/resources.py b/plugins/k8s/resoto_plugin_k8s/resources.py index dd4f4c1d4d..4185cb6a1c 100644 --- a/plugins/k8s/resoto_plugin_k8s/resources.py +++ b/plugins/k8s/resoto_plugin_k8s/resources.py @@ -147,7 +147,7 @@ class KubernetesNodeStatusConfigSource: kind_display: ClassVar[str] = "Kubernetes Node Status Config Active ConfigMap" kind_description: ClassVar[ str - ] = "This resource represents the active configuration map for the node status in a Kubernetes cluster." + ] = "This represents the active configuration map for the node status in a Kubernetes cluster." mapping: ClassVar[Dict[str, Bender]] = { "kubelet_config_key": S("kubeletConfigKey"), "name": S("name"), @@ -196,8 +196,8 @@ class KubernetesDaemonEndpoint: kind: ClassVar[str] = "kubernetes_daemon_endpoint" kind_display: ClassVar[str] = "Kubernetes Daemon Endpoint" kind_description: ClassVar[str] = ( - "Kubernetes Daemon Endpoint is a network endpoint used for communication" - " between the Kubernetes master and worker nodes." + "A Kubernetes Daemon Endpoint refers to the network endpoint (usually an IP and port) for a daemon service" + " running on a Kubernetes node, often used for metrics and health checks of system daemons." ) mapping: ClassVar[Dict[str, Bender]] = { "port": S("Port"), @@ -210,9 +210,8 @@ class KubernetesNodeDaemonEndpoint: kind: ClassVar[str] = "kubernetes_node_daemon_endpoint" kind_display: ClassVar[str] = "Kubernetes Node Daemon Endpoint" kind_description: ClassVar[str] = ( - "The Kubernetes Node Daemon Endpoint is an endpoint that allows communication" - " between the Kubernetes control plane and the daemons running on the node," - " such as the kubelet and kube-proxy." + "The Kubernetes Node Daemon Endpoint refers to the network endpoint for the kubelet on a node within" + " the cluster's node status details." ) mapping: ClassVar[Dict[str, Bender]] = { "kubelet_endpoint": S("kubeletEndpoint") >> Bend(KubernetesDaemonEndpoint.mapping), @@ -225,10 +224,8 @@ class KubernetesNodeStatusImages: kind: ClassVar[str] = "kubernetes_node_status_images" kind_display: ClassVar[str] = "Kubernetes Node Status Images" kind_description: ClassVar[str] = ( - "Kubernetes Node Status Images refer to the images that display the current" - " status of worker nodes in a Kubernetes cluster. These images provide visual" - " indications of whether a node is healthy, ready for workloads, or" - " experiencing issues." + "Kubernetes Node Status Images provides details about the container images available on the node, including" + " the names of the images and their respective sizes in bytes." ) mapping: ClassVar[Dict[str, Bender]] = { "names": S("names", default=[]), @@ -276,9 +273,8 @@ class KubernetesAttachedVolume: kind: ClassVar[str] = "kubernetes_attached_volume" kind_display: ClassVar[str] = "Kubernetes Attached Volume" kind_description: ClassVar[str] = ( - "Kubernetes Attached Volume refers to a storage volume that is attached to a" - " container in a Kubernetes cluster, allowing it to persist data across" - " container restarts and failures." + "Kubernetes Attached Volumes are storage volumes attached to pods in a Kubernetes cluster, allowing" + " the pod to persist data across restarts and failures." ) mapping: ClassVar[Dict[str, Bender]] = { "device_path": S("devicePath"), @@ -1748,8 +1744,8 @@ class KubernetesReplicationControllerStatusConditions: kind: ClassVar[str] = "kubernetes_replication_controller_status_conditions" kind_display: ClassVar[str] = "Kubernetes Replication Controller Status Conditions" kind_description: ClassVar[str] = ( - "Represents the status conditions of a Kubernetes Replication Controller," - " indicating the state of the controller and any potential problems or errors." + "Kubernetes Replication Controller Status Conditions track the current state of a Replication Controller," + " including any events and their reasons, status, and types." ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), @@ -2413,11 +2409,11 @@ class KubernetesHorizontalPodAutoscalerStatus: @define class KubernetesCrossVersionObjectReference: - kind: ClassVar[str] = "kubernetes_cross_object_reference" - kind_display: ClassVar[str] = "Kubernetes Cross Object Reference" + kind: ClassVar[str] = "kubernetes_cross_version_object_reference" + kind_display: ClassVar[str] = "Kubernetes Cross Version Object Reference" kind_description: ClassVar[str] = ( - "Kubernetes Cross Object Reference is a feature that allows referencing" - " objects in other namespaces within a Kubernetes cluster." + "The `scale_target_ref` in a Kubernetes Horizontal Pod Autoscaler Spec is a reference to another resource," + " whose replicas the autoscaler should manage." ) mapping: ClassVar[Dict[str, Bender]] = { "api_version": S("apiVersion"), @@ -2701,8 +2697,8 @@ class KubernetesFlowSchemaStatus: kind: ClassVar[str] = "kubernetes_flow_schema_status" kind_display: ClassVar[str] = "Kubernetes Flow Schema Status" kind_description: ClassVar[str] = ( - "The status of a flow schema in Kubernetes, which is used to define network" - " traffic policies for specific workloads and namespaces." + "The Kubernetes Flow Schema Status represents the current state of a FlowSchema resource, indicating whether" + " it is actively being used in the API server to manage traffic flow and priorities." ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) @@ -2717,9 +2713,8 @@ class KubernetesFlowSchema(KubernetesResource): kind: ClassVar[str] = "kubernetes_flow_schema" kind_display: ClassVar[str] = "Kubernetes Flow Schema" kind_description: ClassVar[str] = ( - "Kubernetes Flow Schema is a feature in Kubernetes that allows for network" - " traffic control and policy enforcement within a cluster, providing fine-" - " grained control over how traffic flows between pods and namespaces." + "A Kubernetes Flow Schema configures the prioritization and fairness for requests in the API server, managing" + " the sequence and concurrency of request processing." ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "flow_schema_status": S("status") >> Bend(KubernetesFlowSchemaStatus.mapping), @@ -2754,9 +2749,8 @@ class KubernetesPriorityLevelConfigurationStatus: kind: ClassVar[str] = "kubernetes_priority_level_configuration_status" kind_display: ClassVar[str] = "Kubernetes Priority Level Configuration Status" kind_description: ClassVar[str] = ( - "Priority Level Configuration Status in Kubernetes is used to specify and" - " manage the priority and fairness of pods in a cluster based on different" - " priority levels." + "Kubernetes Priority Level Configuration Status provides the current state of a priority level configuration," + " including information on operational parameters and health." ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) @@ -2771,9 +2765,8 @@ class KubernetesPriorityLevelConfiguration(KubernetesResource): kind: ClassVar[str] = "kubernetes_priority_level_configuration" kind_display: ClassVar[str] = "Kubernetes Priority Level Configuration" kind_description: ClassVar[str] = ( - "Kubernetes Priority Level Configuration is a feature that allows users to" - " define priority classes for pods, enabling effective prioritization and" - " scheduling of workloads based on their importance or criticality." + "The Kubernetes Priority Level Configuration represents resource configuration for establishing priority" + " levels of network traffic in a cluster." ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "priority_level_configuration_status": S("status") >> Bend(KubernetesPriorityLevelConfigurationStatus.mapping), @@ -2786,10 +2779,9 @@ class KubernetesIngressStatusLoadbalancerIngressPorts: kind: ClassVar[str] = "kubernetes_ingress_status_loadbalancer_ingress_ports" kind_display: ClassVar[str] = "Kubernetes Ingress Status LoadBalancer Ingress Ports" kind_description: ClassVar[str] = ( - "This represents the ports on a load balancer that is associated with a" - " Kubernetes Ingress resource. Load balancer ingress ports are used to route" - " incoming traffic to the appropriate backend services within a Kubernetes" - " cluster." + "Kubernetes Ingress Status LoadBalancer Ingress Ports indicate the ports on the load balancer through which" + " traffic is routed to the Ingress, including any errors encountered, the specific ports used, and the" + " protocols (such as HTTP or HTTPS) associated with those ports." ) mapping: ClassVar[Dict[str, Bender]] = { "error": S("error"), @@ -2825,8 +2817,7 @@ class KubernetesIngressStatusLoadbalancer: kind_display: ClassVar[str] = "Kubernetes Ingress Status LoadBalancer" kind_description: ClassVar[str] = ( "Kubernetes Ingress Status LoadBalancer represents the status of a load" - " balancer associated with a Kubernetes Ingress. It provides information about" - " the load balancer's configuration and routing rules." + " balancer associated with a Kubernetes Ingress." ) mapping: ClassVar[Dict[str, Bender]] = { "ingress": S("ingress", default=[]) >> ForallBend(KubernetesIngressStatusLoadbalancerIngress.mapping), @@ -2991,8 +2982,8 @@ class KubernetesNetworkPolicyStatusConditions: kind: ClassVar[str] = "kubernetes_network_policy_status_conditions" kind_display: ClassVar[str] = "Kubernetes Network Policy Status Conditions" kind_description: ClassVar[str] = ( - "Kubernetes Network Policy Status Conditions represent the current state and" - " status of network policies in a Kubernetes cluster." + "Kubernetes Network Policy Status Conditions track the health and status changes of a network policy," + " including reasons and timestamps." ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), @@ -3014,9 +3005,10 @@ class KubernetesNetworkPolicyStatusConditions: class KubernetesNetworkPolicyStatus: kind: ClassVar[str] = "kubernetes_network_policy_status" kind_display: ClassVar[str] = "Kubernetes Network Policy Status" - kind_description: ClassVar[ - str - ] = "Kubernetes Network Policy Status represents the current status of network policies in a Kubernetes cluster" + kind_description: ClassVar[str] = ( + "The status of a Kubernetes Network Policy indicates the current operational condition of the network" + " policy, such as whether it's active or encountering issues." + ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) >> SortTransitionTime @@ -3056,10 +3048,8 @@ class KubernetesPodDisruptionBudgetStatusConditions: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_status_conditions" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Status Conditions" kind_description: ClassVar[str] = ( - "Pod Disruption Budget Status Conditions are conditions that represent the" - " status of a Pod Disruption Budget in a Kubernetes cluster. They provide" - " information about the conditions that must be met for the Pod Disruption" - " Budget to function properly." + "The Kubernetes Pod Disruption Budget Status Conditions reflect the detailed status" + " and transitions of a Pod Disruption Budget." ) mapping: ClassVar[Dict[str, Bender]] = { "last_transition_time": S("lastTransitionTime"), @@ -3082,10 +3072,8 @@ class KubernetesPodDisruptionBudgetStatus: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_status" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Status" kind_description: ClassVar[str] = ( - "Pod Disruption Budget (PDB) is a Kubernetes resource that ensures a minimum" - " number of pods of a specific deployment or replica set are available during" - " maintenance or disruption events. This status resource provides information" - " about the current status of the PDB." + "The Kubernetes Pod Disruption Budget Status provides a snapshot of the current state of the" + " pod disruption budget including health and disruption information." ) mapping: ClassVar[Dict[str, Bender]] = { "conditions": S("conditions", default=[]) @@ -3112,9 +3100,8 @@ class KubernetesPodDisruptionBudgetSpec: kind: ClassVar[str] = "kubernetes_pod_disruption_budget_spec" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget Spec" kind_description: ClassVar[str] = ( - "A Pod Disruption Budget (PDB) is a Kubernetes resource that specifies the" - " minimum number or percentage of pods that must remain available during a" - " disruption or maintenance event." + "A Kubernetes Pod Disruption Budget Spec defines the criteria for evicting pods" + " from a node in a controlled way." ) mapping: ClassVar[Dict[str, Bender]] = { "max_unavailable": S("maxUnavailable"), @@ -3131,9 +3118,8 @@ class KubernetesPodDisruptionBudget(KubernetesResource): kind: ClassVar[str] = "kubernetes_pod_disruption_budget" kind_display: ClassVar[str] = "Kubernetes Pod Disruption Budget" kind_description: ClassVar[str] = ( - "Pod Disruption Budget is a Kubernetes resource that specifies the minimum" - " number of pods that must be available and the maximum number of pods that" - " can be unavailable during a disruption." + "A Kubernetes Pod Disruption Budget (PDB) is used to ensure that a specified number or percentage of" + " pods within a replicated application remain available during voluntary disruptions." ) mapping: ClassVar[Dict[str, Bender]] = KubernetesResource.mapping | { "pod_disruption_budget_status": S("status") >> Bend(KubernetesPodDisruptionBudgetStatus.mapping), @@ -3210,8 +3196,9 @@ class KubernetesCSINode(KubernetesResource): kind: ClassVar[str] = "kubernetes_csi_node" kind_display: ClassVar[str] = "Kubernetes CSI Node" kind_description: ClassVar[str] = ( - "CSI (Container Storage Interface) node is a Kubernetes concept that allows" - " dynamic provisioning and management of volume resources for containers." + "A Kubernetes CSI (Container Storage Interface) Node is a cluster node where a CSI driver is installed," + " enabling it to interact with the storage backends to attach, mount, or unmount volumes as required" + " by Pods on that node." ) @@ -3257,11 +3244,9 @@ class KubernetesVolumeError: class KubernetesVolumeAttachmentStatus: kind: ClassVar[str] = "kubernetes_volume_attachment_status" kind_display: ClassVar[str] = "Kubernetes Volume Attachment Status" - kind_description: ClassVar[str] = ( - "Kubernetes Volume Attachment Status represents the status of the attachment" - " of a volume to a Kubernetes pod, indicating whether the attachment is" - " successful or in progress." - ) + kind_description: ClassVar[ + str + ] = "Kubernetes Volume Attachment Status reflects the current attachment state of a volume to a node." mapping: ClassVar[Dict[str, Bender]] = { "attach_error": S("attachError") >> Bend(KubernetesVolumeError.mapping), "attached": S("attached"), From 9a82370da5de62cade465408f42bd61d0c5d5fe0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20L=C3=B6sche?= Date: Tue, 7 Nov 2023 17:29:12 +0100 Subject: [PATCH 27/27] Syntax --- plugins/gcp/resoto_plugin_gcp/resources/compute.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/plugins/gcp/resoto_plugin_gcp/resources/compute.py b/plugins/gcp/resoto_plugin_gcp/resources/compute.py index 4b82d40993..4175ecd5d7 100644 --- a/plugins/gcp/resoto_plugin_gcp/resources/compute.py +++ b/plugins/gcp/resoto_plugin_gcp/resources/compute.py @@ -3812,9 +3812,10 @@ class GcpInterconnect(GcpResource): class GcpLicenseResourceRequirements: kind: ClassVar[str] = "gcp_license_resource_requirements" kind_display: ClassVar[str] = "GCP License Resource Requirements" - kind_description: ClassVar[ - str - ] = "GCP License Resource Requirements refers to the set of criteria that must be met in terms of computational resources when you want to bring your own licenses (BYOL) to the Google Cloud Platform." + kind_description: ClassVar[str] = ( + "GCP License Resource Requirements refers to the set of criteria that must be met in terms of computational" + " resources when you want to bring your own licenses (BYOL) to the Google Cloud Platform." + ) mapping: ClassVar[Dict[str, Bender]] = { "min_guest_cpu_count": S("minGuestCpuCount"), "min_memory_mb": S("minMemoryMb"), @@ -6328,9 +6329,10 @@ class GcpResourcePolicyHourlyCycle: class GcpResourcePolicyWeeklyCycleDayOfWeek: kind: ClassVar[str] = "gcp_resource_policy_weekly_cycle_day_of_week" kind_display: ClassVar[str] = "GCP Resource Policy Weekly Cycle Day of Week" - kind_description: ClassVar[ - str - ] = "The GCP Resource Policy Weekly Cycle Day of Week defines the specific days within the week when particular operations or actions should occur, including the start time and duration of these actions." + kind_description: ClassVar[str] = ( + "The GCP Resource Policy Weekly Cycle Day of Week defines the specific days within the week when particular" + " operations or actions should occur, including the start time and duration of these actions." + ) mapping: ClassVar[Dict[str, Bender]] = {"day": S("day"), "duration": S("duration"), "start_time": S("startTime")} day: Optional[str] = field(default=None) duration: Optional[str] = field(default=None)