From 4ba56c1921d537e375d9fc7cc01933263d35c39a Mon Sep 17 00:00:00 2001 From: Matthias Veit Date: Tue, 1 Oct 2024 08:42:59 +0200 Subject: [PATCH] [plugin][feat] Better docs and docs_url (#2210) --- fixcore/fixcore/model/exportable_model.py | 9 +- fixcore/fixcore/model/model.py | 10 +- fixcore/fixcore/static/api-doc.yaml | 48 ++- fixcore/fixcore/web/api.py | 17 +- fixlib/fixlib/baseresources.py | 4 +- fixlib/fixlib/core/model_export.py | 2 + plugins/aws/fix_plugin_aws/collector.py | 4 +- plugins/aws/fix_plugin_aws/resource/acm.py | 3 +- .../aws/fix_plugin_aws/resource/amazonq.py | 63 ++- .../aws/fix_plugin_aws/resource/apigateway.py | 38 +- plugins/aws/fix_plugin_aws/resource/athena.py | 14 +- .../fix_plugin_aws/resource/autoscaling.py | 7 +- plugins/aws/fix_plugin_aws/resource/backup.py | 67 +-- plugins/aws/fix_plugin_aws/resource/base.py | 8 +- .../aws/fix_plugin_aws/resource/bedrock.py | 72 ++-- .../fix_plugin_aws/resource/cloudformation.py | 19 +- .../aws/fix_plugin_aws/resource/cloudfront.py | 69 ++-- .../aws/fix_plugin_aws/resource/cloudtrail.py | 6 +- .../aws/fix_plugin_aws/resource/cloudwatch.py | 19 +- .../aws/fix_plugin_aws/resource/cognito.py | 22 +- plugins/aws/fix_plugin_aws/resource/config.py | 7 +- .../aws/fix_plugin_aws/resource/dynamodb.py | 14 +- plugins/aws/fix_plugin_aws/resource/ec2.py | 133 ++---- plugins/aws/fix_plugin_aws/resource/ecr.py | 3 +- plugins/aws/fix_plugin_aws/resource/ecs.py | 39 +- plugins/aws/fix_plugin_aws/resource/efs.py | 19 +- plugins/aws/fix_plugin_aws/resource/eks.py | 14 +- .../fix_plugin_aws/resource/elasticache.py | 15 +- .../resource/elasticbeanstalk.py | 13 +- plugins/aws/fix_plugin_aws/resource/elb.py | 8 +- plugins/aws/fix_plugin_aws/resource/elbv2.py | 14 +- .../aws/fix_plugin_aws/resource/glacier.py | 12 +- plugins/aws/fix_plugin_aws/resource/iam.py | 47 +-- .../aws/fix_plugin_aws/resource/kinesis.py | 7 +- plugins/aws/fix_plugin_aws/resource/kms.py | 7 +- .../aws/fix_plugin_aws/resource/lambda_.py | 1 + .../aws/fix_plugin_aws/resource/opensearch.py | 2 + plugins/aws/fix_plugin_aws/resource/rds.py | 23 +- .../aws/fix_plugin_aws/resource/redshift.py | 5 +- .../aws/fix_plugin_aws/resource/route53.py | 19 +- plugins/aws/fix_plugin_aws/resource/s3.py | 12 +- .../aws/fix_plugin_aws/resource/sagemaker.py | 161 +++----- .../fix_plugin_aws/resource/secretsmanager.py | 3 +- .../fix_plugin_aws/resource/service_quotas.py | 6 +- plugins/aws/fix_plugin_aws/resource/sns.py | 29 +- plugins/aws/fix_plugin_aws/resource/sqs.py | 7 +- plugins/aws/fix_plugin_aws/resource/ssm.py | 11 +- plugins/aws/fix_plugin_aws/resource/waf.py | 3 +- .../resource/authorization.py | 12 + .../azure/fix_plugin_azure/resource/base.py | 10 + .../fix_plugin_azure/resource/compute.py | 40 ++ .../resource/containerservice.py | 6 + .../fix_plugin_azure/resource/cosmosdb.py | 88 ++++ .../fix_plugin_azure/resource/keyvault.py | 8 + .../resource/machinelearning.py | 124 ++++++ .../fix_plugin_azure/resource/monitor.py | 26 ++ .../azure/fix_plugin_azure/resource/mysql.py | 20 + .../fix_plugin_azure/resource/network.py | 128 +++++- .../fix_plugin_azure/resource/postgresql.py | 24 +- .../fix_plugin_azure/resource/security.py | 14 + .../fix_plugin_azure/resource/sql_server.py | 54 +++ .../fix_plugin_azure/resource/storage.py | 18 + .../azure/fix_plugin_azure/resource/web.py | 16 + plugins/gcp/fix_plugin_gcp/resources/base.py | 34 +- .../gcp/fix_plugin_gcp/resources/billing.py | 25 +- .../gcp/fix_plugin_gcp/resources/compute.py | 381 ++++++------------ .../gcp/fix_plugin_gcp/resources/container.py | 14 +- .../gcp/fix_plugin_gcp/resources/sqladmin.py | 30 +- .../gcp/fix_plugin_gcp/resources/storage.py | 12 +- plugins/gcp/tox.ini | 2 +- 70 files changed, 1184 insertions(+), 1037 deletions(-) diff --git a/fixcore/fixcore/model/exportable_model.py b/fixcore/fixcore/model/exportable_model.py index 0d4e2cc447..6afa19f6c9 100644 --- a/fixcore/fixcore/model/exportable_model.py +++ b/fixcore/fixcore/model/exportable_model.py @@ -1,4 +1,4 @@ -from typing import List +from typing import List, Union from fixcore.model.model import ( Model, @@ -18,7 +18,7 @@ def json_export_simple_schema( model: Model, with_properties: bool = True, with_relatives: bool = True, - with_metadata: bool = True, + with_metadata: Union[bool, List[str]] = True, ) -> List[Json]: def export_simple(kind: SimpleKind) -> Json: result = kind.as_json() @@ -56,7 +56,10 @@ def export_complex(kind: ComplexKind) -> Json: aggregate_root=kind.aggregate_root, ) if with_metadata: - result["metadata"] = kind.metadata + if isinstance(with_metadata, list): + result["metadata"] = {k: v for k, v in kind.metadata.items() if k in with_metadata} + else: + result["metadata"] = kind.metadata if with_properties: result["allow_unknown_props"] = kind.allow_unknown_props result["properties"] = {prop.name: export_property(prop, kind) for prop, kind in kind.all_props_with_kind()} diff --git a/fixcore/fixcore/model/model.py b/fixcore/fixcore/model/model.py index 9c74c70937..b197d62fc3 100644 --- a/fixcore/fixcore/model/model.py +++ b/fixcore/fixcore/model/model.py @@ -945,14 +945,18 @@ def is_complex(self) -> bool: def as_json(self, **kwargs: bool) -> Json: result: Json = {"fqn": self.fqn, "aggregate_root": self.aggregate_root} - if kwargs.get("with_metadata", True): - result["metadata"] = self.metadata + if wm := kwargs.get("with_metadata", True): + if isinstance(wm, list): + result["metadata"] = {k: v for k, v in self.metadata.items() if k in wm} + else: + result["metadata"] = self.metadata if kwargs.get("with_properties", True): result["allow_unknown_props"] = self.allow_unknown_props result["properties"] = [to_js(prop) for prop in self.properties] if kwargs.get("with_relatives", True): - result["bases"] = self.bases result["successor_kinds"] = self.successor_kinds + if kwargs.get("with_bases", True): + result["bases"] = self.bases return result def copy( diff --git a/fixcore/fixcore/static/api-doc.yaml b/fixcore/fixcore/static/api-doc.yaml index 257aec489a..d32c72bc04 100644 --- a/fixcore/fixcore/static/api-doc.yaml +++ b/fixcore/fixcore/static/api-doc.yaml @@ -55,6 +55,15 @@ paths: schema: type: boolean default: false + - name: format + description: "The format of the returned json" + in: query + schema: + type: string + enum: + - schema + - simple + required: false - name: kind description: "Only return information about the defined kinds. Comma separated list." in: query @@ -69,27 +78,48 @@ paths: schema: type: string default: null - - name: with_bases - description: "Render all base classes. Only together with kind or filter" + - name: aggregate_roots_only + description: "Only return aggregate roots." in: query schema: type: boolean default: false - - name: format - description: "The format of the returned json" + - name: with_bases + description: "Include base classes and render the base section" in: query schema: - type: string - enum: - - schema - - simple - required: false + type: boolean + default: false - name: with_property_kinds description: "Render types of property values. Only together with kind or filter" in: query schema: type: boolean default: false + - name: with_properties + description: "Render the properties of complex kinds" + in: query + schema: + type: boolean + default: true + - name: with_relatives + description: "Include information about relationships to other kinds." + in: query + schema: + type: boolean + default: true + - name: with_metadata + description: "Include metadata information." + in: query + schema: + oneOf: + - type: boolean + description: "If true, all metadata is included." + - type: array + description: "List of metadata keys to include." + items: + type: string + default: true responses: diff --git a/fixcore/fixcore/web/api.py b/fixcore/fixcore/web/api.py index 245832f64a..e7c830160b 100644 --- a/fixcore/fixcore/web/api.py +++ b/fixcore/fixcore/web/api.py @@ -961,13 +961,21 @@ async def model_uml(self, request: Request, deps: TenantDependencies) -> StreamR return response async def get_model(self, request: Request, deps: TenantDependencies) -> StreamResponse: + def parse_bool_or_list(s: str) -> Union[bool, List[str]]: + lwr = s.lower() + if lwr == "true": + return True + if lwr == "false": + return False + return s.split(",") + graph_id = GraphName(request.match_info.get("graph_id", "fix")) full_model = await deps.model_handler.load_model(graph_id) with_bases = if_set(request.query.get("with_bases"), lambda x: x.lower() == "true", False) with_property_kinds = if_set(request.query.get("with_property_kinds"), lambda x: x.lower() == "true", False) with_properties = if_set(request.query.get("with_properties"), lambda x: x.lower() == "true", True) with_relatives = if_set(request.query.get("with_relatives"), lambda x: x.lower() == "true", True) - with_metadata = if_set(request.query.get("with_metadata"), lambda x: x.lower() == "true", True) + with_metadata = if_set(request.query.get("with_metadata"), parse_bool_or_list, True) aggregate_roots_only = if_set(request.query.get("aggregate_roots_only"), lambda x: x.lower() == "true", False) md = full_model if kind := request.query.get("kind"): @@ -990,7 +998,12 @@ async def get_model(self, request: Request, deps: TenantDependencies) -> StreamR ) else: json_model = [ - m.as_json(with_properties=with_properties, with_relatives=with_relatives, with_metadata=with_metadata) + m.as_json( + with_properties=with_properties, + with_relatives=with_relatives, + with_metadata=with_metadata, + with_bases=with_bases, + ) for m in md.kinds.values() ] return await single_result(request, json.loads(json.dumps(json_model, sort_keys=True))) diff --git a/fixlib/fixlib/baseresources.py b/fixlib/fixlib/baseresources.py index 46e50b1989..af4cb99b6c 100644 --- a/fixlib/fixlib/baseresources.py +++ b/fixlib/fixlib/baseresources.py @@ -268,9 +268,11 @@ class BaseResource(ABC): _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "misc"} # Categories of this resource kind. _categories: ClassVar[List[Category]] = [] + # Link to the cloud providers product documentation of this resource kind. + _docs_url: ClassVar[Optional[str]] = None ################################################################################ - # InstanceVariables + # Instance Variables # Identifier of this resource. Does not need to be globally unique. chksum is used to compute a unique identifier. id: str diff --git a/fixlib/fixlib/core/model_export.py b/fixlib/fixlib/core/model_export.py index 5a60dad2f6..cde470610d 100644 --- a/fixlib/fixlib/core/model_export.py +++ b/fixlib/fixlib/core/model_export.py @@ -257,6 +257,8 @@ def export_data_class(clazz: type) -> None: metadata["service"] = s if (slc := getattr(clazz, "categories", None)) and callable(slc) and (sl := slc()): metadata["categories"] = sl + if (docs_url := getattr(clazz, "_docs_url", None)) and isinstance(docs_url, str): + metadata["docs_url"] = docs_url if ( # only export kind description on aggregate roots with_kind_description and (ar := aggregate_root) diff --git a/plugins/aws/fix_plugin_aws/collector.py b/plugins/aws/fix_plugin_aws/collector.py index 3ddbb8c1d3..78b22d207f 100644 --- a/plugins/aws/fix_plugin_aws/collector.py +++ b/plugins/aws/fix_plugin_aws/collector.py @@ -461,7 +461,8 @@ def add_accounts(parent: Union[AwsOrganizationalRoot, AwsOrganizationalUnit]) -> class AwsOrganizationalRoot(BaseOrganizationalRoot, AwsResource): kind: ClassVar[str] = "aws_organizational_root" _kind_display: ClassVar[str] = "AWS Organizational Root" - _kind_description: ClassVar[str] = "An AWS Organizational Root is the root of an AWS Organization." + _kind_description: ClassVar[str] = "AWS Organizational Root is the top-level entity in AWS Organizations. It serves as the starting point for creating and managing multiple AWS accounts within an organization. The root provides centralized control over billing, access management, and resource allocation across all member accounts, ensuring consistent policies and governance throughout the organizational structure." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_root.html" _kind_service = "organizations" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "management"} @@ -471,5 +472,6 @@ class AwsOrganizationalUnit(BaseOrganizationalUnit, AwsResource): kind: ClassVar[str] = "aws_organizational_unit" _kind_display: ClassVar[str] = "AWS Organizational Unit" _kind_description: ClassVar[str] = "An AWS Organizational Unit is a container for AWS Accounts." + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_ous.html" _kind_service = "organizations" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "management"} diff --git a/plugins/aws/fix_plugin_aws/resource/acm.py b/plugins/aws/fix_plugin_aws/resource/acm.py index e30f720bb9..8a12298791 100644 --- a/plugins/aws/fix_plugin_aws/resource/acm.py +++ b/plugins/aws/fix_plugin_aws/resource/acm.py @@ -71,7 +71,8 @@ class AwsAcmCertificate(AwsResource, BaseCertificate): kind: ClassVar[str] = "aws_acm_certificate" _kind_display: ClassVar[str] = "AWS ACM Certificate" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/acm/home?region={region}#/certificates/{id}", "arn_tpl": "arn:{partition}:acm:{region}:{account}:certificate/{id}"} # fmt: skip - _kind_description: ClassVar[str] = "An AWS ACM Certificate is used to provision, manage, and deploy Secure Sockets Layer/Transport Layer Security (SSL/TLS) certificates for secure web traffic on AWS services." # fmt: skip + _kind_description: ClassVar[str] = "AWS ACM Certificate is a digital credential issued by Amazon Web Services Certificate Manager. It authenticates the identity of websites and secures connections between clients and servers. ACM Certificates encrypt data in transit, prevent unauthorized access, and establish trust for online services. They support various AWS services and can be deployed across multiple regions." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec("acm", "describe-certificate", "Certificate") mapping: ClassVar[Dict[str, Bender]] = { diff --git a/plugins/aws/fix_plugin_aws/resource/amazonq.py b/plugins/aws/fix_plugin_aws/resource/amazonq.py index 163c7979a1..a80d32c387 100644 --- a/plugins/aws/fix_plugin_aws/resource/amazonq.py +++ b/plugins/aws/fix_plugin_aws/resource/amazonq.py @@ -47,10 +47,10 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsQBusinessApplication(AmazonQTaggable, AwsResource): kind: ClassVar[str] = "aws_q_business_application" - _kind_display: ClassVar[str] = "AWS QBusiness Application" + _kind_display: ClassVar[str] = "AWS Q Business Application" _kind_description: ClassVar[str] = ( - "Represents a QBusiness application within the AWS QBusiness service. Applications" - " define a set of tasks and configuration for processing data within the QBusiness ecosystem." + "Represents a Q Business application within the AWS Q Business service. Applications" + " define a set of tasks and configuration for processing data within the Q Business ecosystem." ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "ai"} @@ -313,9 +313,9 @@ def collect_index_resources( @define(eq=False, slots=False) class AwsQBusinessConversation(AwsResource): kind: ClassVar[str] = "aws_q_business_conversation" - _kind_display: ClassVar[str] = "AWS QBusiness Conversation" + _kind_display: ClassVar[str] = "AWS Q Business Conversation" _kind_description: ClassVar[str] = ( - "Represents a conversation within the AWS QBusiness service. Conversations are" + "Represents a conversation within the AWS Q Business service. Conversations are" " interactions that involve a series of messages or data exchanges." ) _kind_service: ClassVar[Optional[str]] = service_name @@ -347,10 +347,10 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsQBusinessDataSource(AmazonQTaggable, AwsResource): kind: ClassVar[str] = "aws_q_business_data_source" - _kind_display: ClassVar[str] = "AWS QBusiness Data Source" + _kind_display: ClassVar[str] = "AWS Q Business Data Source" _kind_description: ClassVar[str] = ( - "Represents a data source in the AWS QBusiness service. Data sources are the origins" - " from which data is ingested for processing or analysis within the QBusiness framework." + "Represents a data source in the AWS Q Business service. Data sources are the origins" + " from which data is ingested for processing or analysis within the Q Business framework." ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "bucket", "group": "ai"} @@ -437,9 +437,9 @@ class AwsQBusinessDataSourceSyncJobMetrics: @define(eq=False, slots=False) class AwsQBusinessDataSourceSyncJob(AwsResource): kind: ClassVar[str] = "aws_q_business_data_source_sync_job" - _kind_display: ClassVar[str] = "AWS QBusiness Data Source Sync Job" + _kind_display: ClassVar[str] = "AWS Q Business Data Source Sync Job" _kind_description: ClassVar[str] = ( - "Represents a data source synchronization job in the AWS QBusiness service. Sync jobs" + "Represents a data source synchronization job in the AWS Q Business service. Sync jobs" " ensure that data from data sources is up-to-date and correctly integrated into the system." ) _kind_service: ClassVar[Optional[str]] = service_name @@ -479,11 +479,9 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsQBusinessDocument(AwsResource): kind: ClassVar[str] = "aws_q_business_document" - _kind_display: ClassVar[str] = "AWS QBusiness Document" - _kind_description: ClassVar[str] = ( - "Represents a document within the AWS QBusiness service. Documents are structured pieces" - " of information that can be used for various purposes within the QBusiness ecosystem." - ) + _kind_display: ClassVar[str] = "AWS Q Business Document" + _kind_description: ClassVar[str] = "AWS Q Business Document is an AI-powered tool for querying and analyzing business documents. It uses natural language processing to interpret user questions and search through document repositories to find relevant information. The system can extract data, summarize content, and provide answers based on the documents it has access to." # fmt: skip + _docs_url: ClassVar[str] = "https://aws.amazon.com/q/business-docs/" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "ai"} # Collected via AwsQBusinessApplication() @@ -519,11 +517,12 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsQBusinessIndice(AmazonQTaggable, AwsResource): kind: ClassVar[str] = "aws_q_business_indice" - _kind_display: ClassVar[str] = "AWS QBusiness Indice" + _kind_display: ClassVar[str] = "AWS Q Business Indice" _kind_description: ClassVar[str] = ( - "Represents an index in the AWS QBusiness service. Indices are used to organize and" - " facilitate efficient searching and retrieval of data within the QBusiness framework." + "Represents an index in the AWS Q Business service. Indices are used to organize and" + " facilitate efficient searching and retrieval of data within the Q Business framework." ) + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/qs/latest/userguide/business-indices-qs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = { @@ -700,11 +699,9 @@ class AwsQBusinessActionExecution: @define(eq=False, slots=False) class AwsQBusinessMessage(AwsResource): kind: ClassVar[str] = "aws_q_business_message" - _kind_display: ClassVar[str] = "AWS QBusiness Message" - _kind_description: ClassVar[str] = ( - "Represents a message within the AWS QBusiness service. Messages are used for communication" - " or data exchange between various components or users within the QBusiness ecosystem." - ) + _kind_display: ClassVar[str] = "AWS Q Business Message" + _kind_description: ClassVar[str] = "AWS Q Business Message is a generative AI-powered tool for business communication within Amazon Web Services. It helps users create professional messages, emails, and documents by understanding context and generating appropriate content. The service aims to improve communication efficiency and quality while maintaining consistency with company standards and guidelines." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/qbusiness/latest/adminguide/what-is-qbusiness.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "ai"} # Collected via AwsQBusinessApplication() @@ -744,11 +741,9 @@ def service_name(cls) -> str: @define(eq=False, slots=False) class AwsQBusinessPlugin(AmazonQTaggable, AwsResource): kind: ClassVar[str] = "aws_q_business_plugin" - _kind_display: ClassVar[str] = "AWS QBusiness Plugin" - _kind_description: ClassVar[str] = ( - "Represents a plugin in the AWS QBusiness service. Plugins extend the functionality of" - " the QBusiness framework by adding new features or capabilities." - ) + _kind_display: ClassVar[str] = "AWS Q Business Plugin" + _kind_description: ClassVar[str] = "AWS Q Business Plugin is a software tool that integrates with business applications. It provides users access to AWS Q's generative AI capabilities within their existing work environments. The plugin offers features like answering questions, summarizing documents, and generating content, helping users complete tasks efficiently while maintaining data security and compliance standards." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/agents-business.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = { @@ -811,10 +806,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsQBusinessRetriever(AmazonQTaggable, AwsResource): kind: ClassVar[str] = "aws_q_business_retriever" _kind_display: ClassVar[str] = "AWS Q Business Retriever" - _kind_description: ClassVar[str] = ( - "Represents a retriever in the AWS QBusiness service. Retrievers are used to fetch and" - " process data from various sources within the QBusiness ecosystem." - ) + _kind_description: ClassVar[str] = "" # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/retriever.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = { @@ -868,10 +861,8 @@ def delete_resource(self, client: AwsClient, graph: Graph) -> bool: class AwsQBusinessWebExperience(AmazonQTaggable, AwsResource): kind: ClassVar[str] = "aws_q_business_web_experience" _kind_display: ClassVar[str] = "AWS Q Business Web Experience" - _kind_description: ClassVar[str] = ( - "Represents a web experience in the AWS QBusiness service. Web experiences define" - " interactive web-based applications or interfaces within the QBusiness ecosystem." - ) + _kind_description: ClassVar[str] = "AWS Q Business Web Experience is a generative AI assistant for business users. It provides answers to questions about company data, policies, and processes. The tool integrates with an organization's knowledge base and applications to offer contextual responses. Users can interact with AWS Q through a web interface to access information and complete tasks." # fmt: skip + _docs_url: ClassVar[str] = "https://aws.amazon.com/q/business/" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = { diff --git a/plugins/aws/fix_plugin_aws/resource/apigateway.py b/plugins/aws/fix_plugin_aws/resource/apigateway.py index a6d2031c92..a46c4cff38 100644 --- a/plugins/aws/fix_plugin_aws/resource/apigateway.py +++ b/plugins/aws/fix_plugin_aws/resource/apigateway.py @@ -184,9 +184,9 @@ class AwsApiGatewayResource(AwsResource): # collection of resource resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_apigateway_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] = "AWS API Gateway Resource is a component within Amazon Web Services that defines the structure and behavior of APIs. It represents a URL path segment and can be configured with methods, integrations, and authorizers. API Gateway Resources handle incoming requests, route them to backend services, and manage responses, facilitating the creation and management of APIs." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-basic-concept.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} @@ -250,10 +250,9 @@ class AwsApiGatewayAuthorizer(AwsResource): # collection of authorizer resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_apigateway_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] = "AWS API Gateway Authorizer is a security feature that controls access to API endpoints. It validates incoming requests by examining tokens or other credentials, applying custom logic to determine authorization. Authorizers can integrate with various authentication systems and provide fine-grained access control, ensuring only authenticated and authorized clients can access protected API resources." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html" ) _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/apigateway/main/apis/{api_link}/authorizers/{id}?api={api_link}®ion={region}", "arn_tpl": "arn:{partition}:apigateway:{region}:{account}:authorizer/{name}/{id}"} # fmt: skip _metadata: ClassVar[Dict[str, Any]] = {"icon": "access_control", "group": "networking"} @@ -344,10 +343,8 @@ class AwsApiGatewayStage(ApiGatewayTaggable, AwsResource): # collection of stage resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_apigateway_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] = "AWS API Gateway Stage represents a deployment snapshot of an API, providing a distinct endpoint for client access. It acts as a named reference to a deployment, allowing version control and management of different API iterations. Stages facilitate the separation of development, testing, and production environments, enabling API versioning and controlled updates to API configurations." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/apigateway/latest/developerguide/stages.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/apigateway/main/apis/{api_link}/stages?api={api_link}®ion={region}", "arn_tpl": "arn:{partition}:apigateway:{region}:{account}:/restapis/{id}/stages/{name}"} # fmt: skip @@ -408,10 +405,8 @@ class AwsApiGatewayDeployment(AwsResource): # collection of deployment resources happens in AwsApiGatewayRestApi.collect() kind: ClassVar[str] = "aws_apigateway_deployment" _kind_display: ClassVar[str] = "AWS API Gateway Deployment" - _kind_description: ClassVar[str] = ( - "API Gateway Deployments represents a deployment of an API to an API Gateway stage." - " This allows the API to be invocable by end-users." - ) + _kind_description: ClassVar[str] = "AWS API Gateway Deployment is a process that publishes an API to a specific stage, making it accessible to clients. It creates a snapshot of the API configuration and resources, which can be invoked through a unique URL. Deployments manage versioning and facilitate updates to APIs without disrupting existing users or applications." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": None, "arn_tpl": "arn:{partition}:apigateway:{region}:{account}:/restapis/{id}/deployments/{name}"} # fmt: skip @@ -470,10 +465,8 @@ class AwsApiGatewayEndpointConfiguration: class AwsApiGatewayRestApi(ApiGatewayTaggable, AwsResource): kind: ClassVar[str] = "aws_apigateway_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] = "AWS API Gateway REST API is a service for creating, publishing, and managing APIs. It acts as an entry point for applications to access data, business logic, or functionality from backend services. The service handles tasks such as traffic management, authorization, access control, monitoring, and API version management for REST APIs." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-rest-api.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/apigateway/main/apis/{id}/resources?api={id}&experience=rest®ion={region}", "arn_tpl": "arn:{partition}:apigateway:{region}:{account}:restapi/{id}"} # fmt: skip @@ -627,11 +620,8 @@ class AwsApiGatewayMutualTlsAuthentication: class AwsApiGatewayDomainName(ApiGatewayTaggable, AwsResource): kind: ClassVar[str] = "aws_apigateway_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] = "AWS API Gateway Domain Name is a feature that associates a custom domain name with an API Gateway API. It provides a personalized URL for API access, replacing the default API Gateway-generated endpoint. This service handles SSL/TLS certificates and integrates with Amazon Route 53 for DNS management, offering a professional and branded API interface for users." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/apigateway/main/publish/domain-names?api=unselected&domain={name}&®ion={region}", "arn_tpl": "arn:aws:apigateway:{region}:{account}:domainname/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/athena.py b/plugins/aws/fix_plugin_aws/resource/athena.py index 2d727a9cab..ead51898aa 100644 --- a/plugins/aws/fix_plugin_aws/resource/athena.py +++ b/plugins/aws/fix_plugin_aws/resource/athena.py @@ -92,11 +92,8 @@ class AwsAthenaWorkGroupConfiguration: class AwsAthenaWorkGroup(AwsResource): kind: ClassVar[str] = "aws_athena_work_group" _kind_display: ClassVar[str] = "AWS Athena Work Group" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS Athena Work Group is a feature that organizes users, teams, or applications within Athena. It helps manage query execution, control costs, and track usage across different projects or departments. Work Groups let administrators set query limits, enforce security policies, and monitor resource consumption, providing a structured approach to Athena resource management and access control." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/athena/latest/ug/workgroups.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/athena/home?region={region}#/workgroups/details/{name}", "arn_tpl": "arn:{partition}:athena:{region}:{account}:workgroup/{id}"} # fmt: skip @@ -209,11 +206,8 @@ 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] = "AWS Athena Data Catalog is a metadata repository for data stored in AWS services. It organizes and manages information about databases, tables, and partitions. Users can query this catalog to locate and access data across various sources, facilitating data analysis and exploration without moving or transforming the underlying data." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/athena/latest/ug/data-catalog.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/athena/home?region={region}#datacatalog/detail/{name}", "arn_tpl": "arn:{partition}:athena:{region}:{account}:catalog/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/autoscaling.py b/plugins/aws/fix_plugin_aws/resource/autoscaling.py index 0815449d93..70673cb63e 100644 --- a/plugins/aws/fix_plugin_aws/resource/autoscaling.py +++ b/plugins/aws/fix_plugin_aws/resource/autoscaling.py @@ -278,11 +278,8 @@ class AwsAutoScalingGroup(AwsResource, BaseAutoScalingGroup): kind: ClassVar[str] = "aws_autoscaling_group" _kind_display: ClassVar[str] = "AWS Autoscaling Group" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/awsautoscaling/home?region={region}#dashboard/{name}", "arn_tpl": "arn:{partition}:autoscaling:{region}:{account}:autoscalinggroup/{name}"} # fmt: skip - _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] = "AWS Auto Scaling Group is a service that manages multiple EC2 instances as a collective unit. It automatically adjusts the number of instances based on defined conditions, ensuring optimal performance and resource utilization. It maintains a specified number of instances, replaces unhealthy ones, and scales capacity up or down according to demand or schedule." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-groups.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-auto-scaling-groups", "AutoScalingGroups") _reference_kinds: ClassVar[ModelReference] = { diff --git a/plugins/aws/fix_plugin_aws/resource/backup.py b/plugins/aws/fix_plugin_aws/resource/backup.py index 46ad6210ad..5a1bd24c6d 100644 --- a/plugins/aws/fix_plugin_aws/resource/backup.py +++ b/plugins/aws/fix_plugin_aws/resource/backup.py @@ -70,10 +70,8 @@ class AwsBackupRecoveryPointCreator: class AwsBackupJob(AwsResource): kind: ClassVar[str] = "aws_backup_job" _kind_display: ClassVar[str] = "AWS Backup Job" - _kind_description: ClassVar[str] = ( - "AWS Backup Jobs represent the individual backup tasks that are executed based on backup plans. " - "They encompass the execution details and status of the backup process for a specified resource." - ) + _kind_description: ClassVar[str] = "AWS Backup Job is a task that creates and manages backups of AWS resources. It defines the source data, backup frequency, and retention policy. The job executes according to a schedule, creating point-in-time snapshots of specified resources. It handles backup creation, storage, and lifecycle management, ensuring data protection and recovery capabilities for AWS environments." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/backup-jobs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/backupplan/details/{id}"} # fmt: skip @@ -153,10 +151,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsBackupProtectedResource(AwsResource): kind: ClassVar[str] = "aws_backup_protected_resource" _kind_display: ClassVar[str] = "AWS Backup Protected Resource" - _kind_description: ClassVar[str] = ( - "AWS Backup Protected Resources represent the AWS resources that are configured to be backed up according to a backup plan. " - "They include information about the resource type and identifiers." - ) + _kind_description: ClassVar[str] = "AWS Backup Protected Resource refers to a specific data entity or system component safeguarded by AWS Backup service. It includes databases, file systems, and storage volumes that are backed up and can be restored as needed. This resource type helps organizations maintain data integrity, comply with retention policies, and recover from potential data loss or system failures." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/protected-resources.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/resources/{id}"} # fmt: skip @@ -231,10 +227,8 @@ class AwsBackupAdvancedBackupSetting: class AwsBackupPlan(BackupResourceTaggable, AwsResource): kind: ClassVar[str] = "aws_backup_plan" _kind_display: ClassVar[str] = "AWS Backup Plan" - _kind_description: ClassVar[str] = ( - "AWS Backup Plans define the schedule and rules for automatically backing up AWS resources. " - "They include settings such as backup frequency, retention period, and lifecycle policies." - ) + _kind_description: ClassVar[str] = "AWS Backup Plan is a feature of AWS Backup that automates and manages data protection for AWS resources. It defines when and how often backups are created, specifies retention periods for backups, and sets rules for copying backups across AWS Regions or accounts. Users can create custom backup plans or use pre-configured plans to meet their data protection requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/create-a-backup-plan.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "plan", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/backupplan/details/{id}", "arn_tpl": "arn:{partition}:backup:{region}:{account}:backup-plan:{id}"} # fmt: skip @@ -313,10 +307,8 @@ def add_tags(backup_plan: AwsBackupPlan) -> None: class AwsBackupVault(BackupResourceTaggable, AwsResource): kind: ClassVar[str] = "aws_backup_vault" _kind_display: ClassVar[str] = "AWS Backup Vault" - _kind_description: ClassVar[str] = ( - "AWS Backup Vaults are secure storage locations for backup data. " - "They are used to store and organize backups created by AWS Backup, providing encryption and access control." - ) + _kind_description: ClassVar[str] = "AWS Backup Vault is a secure storage container for backup data in AWS Backup. It stores and organizes backup copies, providing encryption and access policies to protect backups. Users can create multiple vaults to separate backups by application, environment, or compliance requirements. AWS Backup Vault supports retention policies and lifecycle management for stored backups." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/vaults.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "bucket", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/backupplan/details/{name}", "arn_tpl": "arn:{partition}:backup:{region}:{account}:backup-vault:{name}"} # fmt: skip @@ -445,11 +437,8 @@ class AwsBackupLifecycle: class AwsBackupRecoveryPoint(AwsResource): kind: ClassVar[str] = "aws_backup_recovery_point" _kind_display: ClassVar[str] = "AWS Backup Recovery Point" - _kind_description: ClassVar[str] = ( - "AWS Backup Recovery Points by Vault represent specific instances of backup data stored within a backup vault. " - "They provide detailed information on the recovery points, including metadata, status, and lifecycle policies. " - "These recovery points are crucial for restoring data during disaster recovery or operational recovery scenarios." - ) + _kind_description: ClassVar[str] = "AWS Backup Recovery Point is a snapshot of data created by AWS Backup. It represents a point-in-time copy of resources, such as EBS volumes, RDS databases, or EFS file systems. Recovery Points can be used to restore data to a specific state, helping organizations recover from data loss or system failures." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/recovery-points.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "backup", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/backupvaults/details/{backup_vault_name}/{id}"} # fmt: skip @@ -599,10 +588,8 @@ class AwsBackupReportDeliveryChannel: class AwsBackupReportPlan(BackupResourceTaggable, AwsResource): kind: ClassVar[str] = "aws_backup_report_plan" _kind_display: ClassVar[str] = "AWS Backup Report Plan" - _kind_description: ClassVar[str] = ( - "AWS Backup Report Plans generate reports that provide detailed information on backup jobs and resource compliance. " - "These reports help in monitoring and auditing backup activities and compliance with organizational policies." - ) + _kind_description: ClassVar[str] = "AWS Backup Report Plan is a feature that generates reports on backup activities across AWS services. It provides insights into backup jobs, restore points, and protected resources. Users can schedule recurring reports or create on-demand reports, customizing content and delivery options. These reports help monitor backup compliance, track resource changes, and analyze backup trends." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/report-plans.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "plan", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/compliance/reports/details/{name}", "arn_tpl": "arn:{partition}:backup:{region}:{account}:report-plan:{name}"} # fmt: skip @@ -689,10 +676,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsBackupRestoreTestingPlan(BackupResourceTaggable, AwsResource): kind: ClassVar[str] = "aws_backup_restore_testing_plan" _kind_display: ClassVar[str] = "AWS Backup Restore Testing Plan" - _kind_description: ClassVar[str] = ( - "AWS Backup Restore Testing Plans are configurations designed to test the restore capabilities and processes for backed-up data. " - "They ensure that recovery procedures are effective and that data can be reliably restored." - ) + _kind_description: ClassVar[str] = "An AWS Backup Restore Testing Plan outlines procedures for validating backup recovery processes in AWS environments. It specifies test scenarios, recovery objectives, and success criteria for restoring data and applications from AWS Backup. This plan helps organizations verify their backup strategies, identify potential issues, and ensure reliable data recovery capabilities in case of system failures or data loss events." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "plan", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/restoretesting/details/{name}", "arn_tpl": "arn:{partition}:backup:{region}:{account}:restore-testing-plan:{name}"} # fmt: skip @@ -769,10 +754,8 @@ def add_tags(restore_plan: AwsBackupRestoreTestingPlan) -> None: class AwsBackupLegalHold(BackupResourceTaggable, AwsResource): kind: ClassVar[str] = "aws_backup_legal_hold" _kind_display: ClassVar[str] = "AWS Backup Legal Hold" - _kind_description: ClassVar[str] = ( - "AWS Backup Legal Holds are used to retain backup data for compliance and legal purposes. " - "They prevent deletion of backups that might be required for legal or regulatory reasons." - ) + _kind_description: ClassVar[str] = "AWS Backup Legal Hold is a feature that preserves backup copies of data for legal or compliance purposes. It prevents the deletion or modification of specified backups, ensuring data remains intact and accessible during investigations or litigation. Users can apply legal holds to backups across multiple AWS services, maintaining data integrity and meeting regulatory requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/legal-holds.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/legalholds/details/{id}", "arn_tpl": "arn:{partition}:backup:{region}:{account}:legal-hold:{id}"} # fmt: skip @@ -836,10 +819,8 @@ def add_tags(legal_hold: AwsBackupLegalHold) -> None: class AwsBackupRestoreJob(AwsResource): kind: ClassVar[str] = "aws_backup_restore_job" _kind_display: ClassVar[str] = "AWS Backup Restore Job" - _kind_description: ClassVar[str] = ( - "AWS Backup Restore Jobs represent the tasks that restore data from backups. " - "They include details on the restore process, target resources, and status of the restoration." - ) + _kind_description: ClassVar[str] = "An AWS Backup Restore Job is a process that retrieves data from an AWS Backup vault and reinstates it to its original or a new location. It recovers backed-up resources, such as databases, file systems, or EC2 instances, to a specified point in time. Users can initiate and monitor restore jobs through the AWS Management Console or API." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-a-backup.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/jobs/restore/details/{id}"} # fmt: skip @@ -902,10 +883,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsBackupCopyJob(AwsResource): kind: ClassVar[str] = "aws_backup_copy_job" _kind_display: ClassVar[str] = "AWS Backup Copy Job" - _kind_description: ClassVar[str] = ( - "AWS Backup Copy Jobs are operations that duplicate backups from one backup vault to another. " - "They facilitate data redundancy and disaster recovery by ensuring copies are stored in different locations." - ) + _kind_description: ClassVar[str] = "AWS Backup Copy Job is a feature that creates and transfers copies of backup data between AWS Regions or AWS accounts. It automates the process of replicating backups, enhancing disaster recovery capabilities and data protection. Users can specify source and destination locations, schedule copy jobs, and manage retention policies for the copied backups." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/backup-copy-job.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/jobs/copy/details/{id}"} # fmt: skip @@ -977,10 +956,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsBackupFramework(BackupResourceTaggable, AwsResource): kind: ClassVar[str] = "aws_backup_framework" _kind_display: ClassVar[str] = "AWS Backup Framework" - _kind_description: ClassVar[str] = ( - "AWS Backup Frameworks are predefined sets of controls and requirements designed to help organizations align their backup operations with regulatory and compliance standards. " - "They provide a structured approach to managing backups, ensuring adherence to policies, and facilitating audits." - ) + _kind_description: ClassVar[str] = "AWS Backup Framework is a set of tools and practices for managing data backups in Amazon Web Services. It provides centralized control for creating, scheduling, and monitoring backups across multiple AWS services. The framework helps organizations implement consistent backup policies, meet compliance requirements, and protect data from accidental deletion, system failures, or disasters." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/aws-backup/latest/devguide/aws-backup-framework.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "backup", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/backup/home?region={region_id}#/compliance/frameworks/details/{name}", "arn_tpl": "arn:{partition}:backup:{region}:{account}:framework:{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/base.py b/plugins/aws/fix_plugin_aws/resource/base.py index b54f2d8197..27ee85b543 100644 --- a/plugins/aws/fix_plugin_aws/resource/base.py +++ b/plugins/aws/fix_plugin_aws/resource/base.py @@ -273,11 +273,8 @@ def __str__(self) -> str: class AwsAccount(BaseAccount, AwsResource, BaseIamPrincipal): 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 Amazon Web Services resources and services. It provides access to the AWS Management Console, APIs, and command-line tools. Users can create, manage, and monitor AWS resources, set security permissions, and track usage and billing. Each account has a unique identifier and can be linked to other accounts for consolidated billing." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/accounts/latest/reference/welcome.html" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/billing/home?region={region}#/account"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_region"]}} @@ -324,6 +321,7 @@ class AwsRegion(BaseRegion, AwsResource): " allowing users to choose the geographic area in which their resources are" " located." ) + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/general/latest/gr/rande.html" _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ diff --git a/plugins/aws/fix_plugin_aws/resource/bedrock.py b/plugins/aws/fix_plugin_aws/resource/bedrock.py index 300d54b730..b889841660 100644 --- a/plugins/aws/fix_plugin_aws/resource/bedrock.py +++ b/plugins/aws/fix_plugin_aws/resource/bedrock.py @@ -86,10 +86,8 @@ def service_name(cls) -> str: class AwsBedrockFoundationModel(BaseAIModel, AwsResource): kind: ClassVar[str] = "aws_bedrock_foundation_model" _kind_display: ClassVar[str] = "AWS Bedrock Foundation Model" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Foundation Model represents the base machine learning models provided by AWS Bedrock. " - "These models are pre-trained and can be used as a starting point for various machine learning tasks." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Foundation Model is a managed service for accessing and using large language models from various providers through a single API. It offers tools for customizing models, fine-tuning them with specific data, and integrating them into applications. Users can experiment with different models and deploy them for tasks like text generation and analysis." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html" _kind_service: ClassVar[Optional[str]] = service_name _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/providers?model={id}"} # fmt: skip _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} @@ -132,10 +130,8 @@ class AwsBedrockValidationDataConfig: class AwsBedrockCustomModel(BedrockTaggable, BaseAIModel, AwsResource): kind: ClassVar[str] = "aws_bedrock_custom_model" _kind_display: ClassVar[str] = "AWS Bedrock Custom Model" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Custom Model enables users to create and train machine learning models " - "tailored to specific needs, providing flexibility in model customization for a variety of applications." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Custom Model is a service that lets users create and deploy their own AI models on AWS infrastructure. It provides tools for model training, fine-tuning, and hosting. Users can build models for various tasks like natural language processing, image recognition, and predictive analytics. The service integrates with other AWS offerings for data storage and management." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html" _kind_service: ClassVar[Optional[str]] = service_name _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/custom-models/{name}"} # fmt: skip _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} @@ -233,10 +229,8 @@ def add_tags(job: AwsResource) -> None: class AwsBedrockProvisionedModelThroughput(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_provisioned_model_throughput" _kind_display: ClassVar[str] = "AWS Bedrock Provisioned Model Throughput" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Provisioned Model Throughput manages the throughput capacity for machine learning models, " - "ensuring consistent performance and scalability to handle varying workloads." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Provisioned Model Throughput is a feature that allocates dedicated compute resources for foundation models in AWS Bedrock. It provides consistent performance and response times for AI workloads by reserving capacity for specific models. Users can set and adjust throughput levels to meet their application's demands, ensuring reliable access to AI capabilities during peak usage periods." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/provisioned-throughput.html" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/provisioned-throughput/{name}"} # fmt: skip _kind_service: ClassVar[Optional[str]] = service_name @@ -413,10 +407,8 @@ class AwsBedrockGuardrailContextualGroundingPolicy: class AwsBedrockGuardrail(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_guardrail" _kind_display: ClassVar[str] = "AWS Bedrock Guardrail" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Guardrail provides safety mechanisms and policies to ensure responsible use of machine learning models, " - "helping to enforce compliance, security, and ethical standards." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Guardrail is a feature that helps manage and control access to foundation models in AWS Bedrock. It applies filters to user inputs and model outputs, enforcing content policies and preventing misuse. Administrators can set rules to block specific topics, limit personal information sharing, and ensure appropriate content generation across applications using AWS Bedrock." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html" api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( "bedrock", "list-guardrails", "guardrails", expected_errors=["AccessDeniedException"] ) @@ -532,10 +524,8 @@ class AwsBedrockVpcConfig: class AwsBedrockModelCustomizationJob(BedrockTaggable, BaseAIJob, AwsResource): kind: ClassVar[str] = "aws_bedrock_model_customization_job" _kind_display: ClassVar[str] = "AWS Bedrock Model Customization Job" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Model Customization Job is responsible for executing the processes involved in tailoring a machine learning model " - "to specific datasets and tasks, optimizing the model for unique use cases." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Model Customization Job is a service for fine-tuning foundation models on custom datasets. Users can train models to perform specific tasks or adapt to domain-specific language. The service handles the infrastructure setup, model training, and optimization processes. It provides options for data preprocessing, hyperparameter tuning, and model evaluation to improve performance on target tasks." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/custom-models.html" _kind_service: ClassVar[Optional[str]] = service_name _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/custom-models/item/?arn={arn}"} # fmt: skip _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "ai"} @@ -764,10 +754,8 @@ class AwsBedrockEvaluationInferenceConfig: class AwsBedrockEvaluationJob(BedrockTaggable, BaseAIJob, AwsResource): kind: ClassVar[str] = "aws_bedrock_evaluation_job" _kind_display: ClassVar[str] = "AWS Bedrock Evaluation Job" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Evaluation Job assesses the performance of machine learning models, running test datasets and producing metrics " - "that indicate the effectiveness of the model's predictions." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Evaluation Job is a feature that assesses the performance of foundation models in AWS Bedrock. It runs a set of predefined or custom tasks on selected models, comparing their outputs against human-generated responses. The job generates metrics and reports to help users evaluate model quality and suitability for specific use cases." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/evaluation-jobs.html" _aws_metadata: ClassVar[Dict[str, Any]] = {} _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "ai"} _kind_service: ClassVar[Optional[str]] = service_name @@ -924,10 +912,8 @@ class AwsBedrockPromptOverrideConfiguration: class AwsBedrockAgent(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_agent" _kind_display: ClassVar[str] = "AWS Bedrock Agent" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Agent is an intelligent service designed to facilitate communication with machine learning models, " - "acting as a mediator between applications and model execution workflows." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Agent is a service for building AI-powered applications. It provides tools to create, train, and deploy conversational AI agents. Users can develop agents that interact with customers, answer questions, and perform tasks. The service integrates with other AWS offerings and supports multiple languages and platforms for agent deployment." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html" _aws_metadata: ClassVar[Dict[str, Any]] = { "provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/agents/{id}" } @@ -1069,10 +1055,8 @@ def collect_agent_versions(agent: AwsBedrockAgent) -> None: class AwsBedrockAgentVersion(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_agent_version" _kind_display: ClassVar[str] = "AWS Bedrock Agent Version" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Agent Version refers to a specific iteration of the Bedrock Agent, ensuring compatibility " - "and enhancements across different versions of the agent for improved functionality." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Agent Version is a feature that tracks changes in Bedrock agents over time. It maintains a record of agent configurations, including knowledge bases, prompts, and action groups. Users can view, compare, and revert to previous versions, ensuring version control and facilitating collaboration across teams working on AI agent development." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/agents-version.html" _kind_service: ClassVar[Optional[str]] = "bedrock-agent" _aws_metadata: ClassVar[Dict[str, Any]] = { "provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/agents/{id}/versions/{version}" @@ -1364,10 +1348,8 @@ class AwsBedrockStorageConfiguration: class AwsBedrockAgentKnowledgeBase(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_agent_knowledge_base" _kind_display: ClassVar[str] = "AWS Bedrock Agent Knowledge Base" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Agent Knowledge Base contains the knowledge resources that the Bedrock Agent relies on " - "to provide accurate responses and perform tasks based on learned information." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Agent Knowledge Base is a feature that stores and manages information for AI agents. It provides a structured repository for data, documents, and facts that agents can access and use to answer questions, make decisions, and perform tasks. The knowledge base supports natural language queries and helps maintain context during interactions." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/agents-knowledge-base.html" _kind_service: ClassVar[Optional[str]] = "bedrock-agent" _aws_metadata: ClassVar[Dict[str, Any]] = { "provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/knowledge-bases/knowledge-base/{name}/{id}/0" @@ -1533,10 +1515,8 @@ class AwsBedrockPromptVariant: class AwsBedrockAgentPrompt(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_agent_prompt" _kind_display: ClassVar[str] = "AWS Bedrock Agent Prompt" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Agent Prompt defines the input that the agent uses to generate responses or actions, " - "guiding the interaction between users and machine learning models through structured prompts." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Agent Prompt is a feature that helps developers create AI agents within the AWS Bedrock service. It provides a framework for defining agent behaviors, integrating with foundation models, and handling user interactions. The prompt system guides the creation of agents that can perform tasks, answer questions, and assist users in various applications." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/agents-prompt.html" _kind_service: ClassVar[Optional[str]] = "bedrock-agent" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/prompt-management/{id}"} # fmt: skip @@ -1839,10 +1819,8 @@ class AwsBedrockFlowValidation: class AwsBedrockAgentFlow(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_agent_flow" _kind_display: ClassVar[str] = "AWS Bedrock Agent Flow" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Agent Flow outlines the logical sequence of interactions between the agent and the model, " - "defining the steps to be followed in executing tasks or answering queries." - ) + _kind_description: ClassVar[str] = "AWS Bedrock Agent Flow is a tool for creating conversational AI agents. It provides a visual interface to define agent behaviors, integrate with external data sources and APIs, and configure conversation flows. Users can build agents that perform tasks, answer questions, and interact with users based on predefined rules and natural language understanding capabilities." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/bedrock/latest/userguide/agents-flow.html" _kind_service: ClassVar[Optional[str]] = "bedrock-agent" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/bedrock/home?region={region_id}#/prompt-flows/{id}"} # fmt: skip @@ -1970,9 +1948,9 @@ def collect_flow_versions(flow: AwsBedrockAgentFlow) -> None: class AwsBedrockAgentFlowVersion(BedrockTaggable, AwsResource): kind: ClassVar[str] = "aws_bedrock_agent_flow_version" _kind_display: ClassVar[str] = "AWS Bedrock Agent Flow Version" - _kind_description: ClassVar[str] = ( - "AWS Bedrock Agent Flow Version tracks the version history of agent workflows, ensuring compatibility and stability " - "as workflows evolve and improve over time." + _kind_description: ClassVar[str] = "AWS Bedrock Agent Flow Version represents a specific iteration of an AWS Bedrock Agent's workflow configuration. It defines the agent's interaction patterns, data processing steps, and decision-making logic. Each version captures a distinct set of instructions that guide the agent's behavior when responding to user inputs or performing tasks within the AWS Bedrock environment." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Agent_CreateAgentFlowVersion.html" ) _kind_service: ClassVar[Optional[str]] = "bedrock-agent" _metadata: ClassVar[Dict[str, Any]] = {"icon": "version", "group": "ai"} diff --git a/plugins/aws/fix_plugin_aws/resource/cloudformation.py b/plugins/aws/fix_plugin_aws/resource/cloudformation.py index a931fb3a66..352fbbf414 100644 --- a/plugins/aws/fix_plugin_aws/resource/cloudformation.py +++ b/plugins/aws/fix_plugin_aws/resource/cloudformation.py @@ -92,10 +92,8 @@ class AwsCloudFormationStack(AwsResource, BaseStack): kind: ClassVar[str] = "aws_cloudformation_stack" _kind_display: ClassVar[str] = "AWS CloudFormation Stack" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/cloudformation/home?region={region}#/stacks/stackinfo?stackId={id}", "arn_tpl": "arn:{partition}:cloudformation:{region}:{account}:stack/{name}/{id}"} # fmt: skip - _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] = "AWS CloudFormation Stack is a collection of AWS resources managed as a single unit. It defines and provisions infrastructure components using templates, which specify resource configurations and relationships. CloudFormation Stacks automate resource creation, update, and deletion processes, maintaining consistency across deployments. Users can version control and replicate entire infrastructure setups using these stacks." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-stacks", "Stacks") _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["aws_resource"]}} @@ -254,10 +252,9 @@ 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] = "AWS CloudFormation Stack Set is a service that creates, updates, or deletes stacks across multiple accounts and regions with a single operation. It manages the deployment of consistent resources or applications across AWS accounts and regions, providing centralized control and automation for infrastructure management in large-scale environments or organizations with distributed AWS resources." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "stack", "group": "management"} @@ -375,10 +372,8 @@ 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 the overall stacks in a CloudFormation" - " deployment. The information includes current status, name, and any associated resources or parameters." - ) + _kind_description: ClassVar[str] = "AWS CloudFormation Stack Instance Summary provides an overview of stack instances within a stack set. It displays key information such as stack instance status, account ID, region, and drift status. This summary helps users monitor and manage multiple stack instances across accounts and regions, offering insights into the deployment and synchronization state of resources." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stackinstances-view.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "stack", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:cloudformation:{region}:{account}:stack-instance/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/cloudfront.py b/plugins/aws/fix_plugin_aws/resource/cloudfront.py index d98830d250..eebd6bb5f3 100644 --- a/plugins/aws/fix_plugin_aws/resource/cloudfront.py +++ b/plugins/aws/fix_plugin_aws/resource/cloudfront.py @@ -581,10 +581,9 @@ class AwsCloudFrontDistribution(CloudFrontTaggable, CloudFrontResource, AwsResou kind: ClassVar[str] = "aws_cloudfront_distribution" api_spec: ClassVar[AwsApiSpec] = AwsApiSpec("cloudfront", "get-distribution", "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] = "AWS CloudFront Distribution is a content delivery network service that caches and serves web content from edge locations worldwide. It reduces latency by delivering data, videos, applications, and APIs to users from the nearest server. CloudFront integrates with other AWS services and supports custom domain names, SSL certificates, and security features like DDoS protection." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-working-with.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cdn", "group": "networking"} @@ -763,10 +762,9 @@ class AwsCloudFrontFunctionConfig: class AwsCloudFrontFunction(CloudFrontTaggable, BaseServerlessFunction, 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] = "AWS CloudFront Function is a serverless compute platform integrated with CloudFront's content delivery network. It executes lightweight JavaScript code at the edge locations, close to users. This function can modify viewer requests and responses, perform authentication, authorization, and URL rewriting tasks. It operates with low latency and high throughput for improved performance." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-functions.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "function", "group": "networking"} @@ -817,9 +815,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 in conjunction with a private key for managing the" - " identity of the content distributors and validating access to content served by AWS CloudFront." + _kind_description: ClassVar[str] = "AWS CloudFront Public Key is a component of Amazon's content delivery network service. It is used to verify signed URLs and signed cookies, which control access to private content distributed through CloudFront. The public key is paired with a private key to create trusted signatures, ensuring that only authorized users can access protected content across CloudFront's global edge locations." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html#private-content-trusted-signers" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "access_control"} @@ -880,11 +878,8 @@ 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] = "AWS CloudFront Real-time Log Configuration is a feature that sends log data about viewer requests to CloudFront distributions to specified destinations in real-time. It delivers logs within seconds of viewer requests, providing immediate insights into content delivery and user behavior. This configuration helps monitor and analyze distribution performance and usage patterns promptly." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/cloudfront/v4/home?region={region}#/logs/realtime/{name}", "arn_tpl": "arn:{partition}:cloudfront:{region}:{account}:real-time-log-config/{id}"} # fmt: skip @@ -1117,10 +1112,9 @@ 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] = "AWS CloudFront Response Headers Policy is a configuration that controls HTTP headers in responses sent from CloudFront to viewers. It lets users add, modify, or remove headers for improved security, caching, and content delivery. This policy can be applied to multiple distributions, simplifying header management across CloudFront's content delivery network." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/adding-response-headers.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "networking"} @@ -1172,10 +1166,9 @@ 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] = "AWS CloudFront Streaming Distribution is a content delivery service for streaming media. It caches and distributes video content from origin servers to edge locations worldwide, reducing latency and improving performance for viewers. The service supports various streaming protocols and can handle live and on-demand content, providing a reliable and efficient way to deliver streaming media to global audiences." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-rtmp.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cdn", "group": "networking"} @@ -1211,10 +1204,9 @@ 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] = ( - "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." + _kind_description: ClassVar[str] = "AWS CloudFront Origin Access Control is a security feature that restricts access to Amazon S3 bucket content, ensuring it's only accessible through CloudFront. It creates a trust relationship between CloudFront and S3, preventing direct access to S3 objects. This mechanism enhances content protection by controlling who can retrieve files from the origin, reducing potential security risks." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "access_control", "group": "access_control"} @@ -1352,10 +1344,9 @@ 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] = "AWS CloudFront Cache Policy is a configuration component for CloudFront distributions. It defines how CloudFront caches and serves content from edge locations. The policy specifies caching behaviors, including TTL settings, cache key composition, and compression support. It controls which HTTP headers, cookies, and query strings are included in the cache key for content delivery optimization." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html#cache-policy-reference" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "networking"} @@ -1456,10 +1447,9 @@ 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 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." + _kind_description: ClassVar[str] = "AWS CloudFront Field-Level Encryption Configuration is a security feature that encrypts sensitive data fields in web forms before transmission to origin servers. It uses public key cryptography to protect specific information, ensuring that only authorized applications with the corresponding private key can decrypt the data, enhancing security for sensitive user input during transit." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} @@ -1533,10 +1523,9 @@ 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] = "AWS CloudFront Field Level Encryption Profile is a security feature that encrypts specific data fields in web forms before transmitting them to origin servers. It uses public key cryptography to protect sensitive information, ensuring that only authorized systems with the corresponding private key can decrypt the data. This adds an extra layer of protection for user-submitted data." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "profile", "group": "networking"} diff --git a/plugins/aws/fix_plugin_aws/resource/cloudtrail.py b/plugins/aws/fix_plugin_aws/resource/cloudtrail.py index 5aa75e6fbf..ec6ace19ea 100644 --- a/plugins/aws/fix_plugin_aws/resource/cloudtrail.py +++ b/plugins/aws/fix_plugin_aws/resource/cloudtrail.py @@ -137,10 +137,8 @@ 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] = "AWS CloudTrail is a service that records API calls and events in AWS accounts. It provides an audit trail of actions taken by users, roles, and services. CloudTrail logs these activities, stores them securely, and offers tools for analysis and compliance. Users can monitor account activity, investigate security incidents, and meet regulatory requirements using CloudTrail's data." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/cloudtrail/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/cloudtrail/home?region={region}#/trails/{arn}:trail/{name}", "arn_tpl": "arn:{partition}:cloudtrail:{region}:{account}:trail/{name}"} # fmt: skip _kind_service: ClassVar[Optional[str]] = service_name diff --git a/plugins/aws/fix_plugin_aws/resource/cloudwatch.py b/plugins/aws/fix_plugin_aws/resource/cloudwatch.py index 4b7db16db1..20fd8ff30c 100644 --- a/plugins/aws/fix_plugin_aws/resource/cloudwatch.py +++ b/plugins/aws/fix_plugin_aws/resource/cloudwatch.py @@ -235,9 +235,8 @@ 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] = "AWS CloudWatch Alarm is a monitoring service that tracks metrics from AWS resources and applications. It sends notifications or performs automated actions when predefined thresholds are breached. Users can set alarms for various metrics, including CPU utilization, network traffic, and custom application metrics. CloudWatch Alarm integrates with other AWS services to trigger responses based on specified conditions." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "alarm", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/cloudwatch/home?region={region}#alarmsV2:alarm/{name}", "arn_tpl": "arn:{partition}:cloudwatch:{region}:{account}:alarm/{name}"} # fmt: skip @@ -336,10 +335,9 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: 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." + _kind_description: ClassVar[str] = "AWS CloudWatch Log Group is a container for log streams in Amazon CloudWatch. It organizes and stores log data from various AWS resources and applications. Users can set retention policies, apply metric filters, and configure alarms based on log content. Log Groups facilitate centralized monitoring, analysis, and troubleshooting of systems and applications within the AWS ecosystem." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "management"} @@ -407,11 +405,8 @@ class AwsCloudwatchMetricTransformation: 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." - ) + _kind_description: ClassVar[str] = "AWS CloudWatch Metric Filter is a feature that extracts specific data from CloudWatch Logs and transforms it into metrics. It applies user-defined patterns to log events, creating numerical values that can be graphed, used in alarms, or monitored. This functionality helps users track and analyze log data, converting textual information into quantifiable metrics for monitoring and alerting purposes." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/cloudwatch/home?region={region}#logsV2:log-groups/log-group/{arn}", "arn_tpl": "arn:{partition}:logs:{region}:{account}:metric-filter/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/cognito.py b/plugins/aws/fix_plugin_aws/resource/cognito.py index 660da20486..c2cdd3e0ae 100644 --- a/plugins/aws/fix_plugin_aws/resource/cognito.py +++ b/plugins/aws/fix_plugin_aws/resource/cognito.py @@ -20,10 +20,9 @@ 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] = "AWS Cognito Group is a feature within Amazon Cognito that organizes users into collections for access control and permission management. It assigns users to specific groups, each with defined roles and privileges. Administrators can create, modify, and delete groups, as well as add or remove users from them, simplifying user management and enhancing security in applications and services." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-user-groups.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "access_control"} @@ -99,12 +98,10 @@ class AwsCognitoUser(AwsResource, BaseUser): # collection of user resources happens in AwsCognitoUserPool.collect() kind: ClassVar[str] = "aws_cognito_user" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/cognito/v2/idp/user-pools/{_pool_id}/users/details/{id}?region={region}", "arn_tpl": "arn:{partition}:cognito-idp:{region}:{account}:user/{id}"} # fmt: skip - _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 is an identity management service that handles user authentication and authorization for applications. It supports user sign-up, sign-in, and access control, integrating with social identity providers and enterprise identity systems. Cognito User manages user profiles, secures access to AWS resources, and syncs user data across devices, simplifying user identity management for developers." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html" ) _kind_service: ClassVar[Optional[str]] = service_name mapping: ClassVar[Dict[str, Bender]] = { @@ -206,10 +203,9 @@ 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] = "AWS Cognito User Pool is a managed service for user authentication and authorization. It handles user sign-up, sign-in, and access control for web and mobile applications. The service stores user profiles, supports multi-factor authentication, and integrates with social identity providers. It also offers customizable UI components and SDKs for various programming languages." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "access_control"} diff --git a/plugins/aws/fix_plugin_aws/resource/config.py b/plugins/aws/fix_plugin_aws/resource/config.py index 4817287c4f..695eaaceb6 100644 --- a/plugins/aws/fix_plugin_aws/resource/config.py +++ b/plugins/aws/fix_plugin_aws/resource/config.py @@ -64,10 +64,9 @@ 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 that tracks and records configuration changes in AWS resources. It captures resource relationships and modifications, storing this information in a detailed history. This data can be used for compliance auditing, security analysis, and resource management. Config Recorder supports various AWS services and provides a foundation for configuration management." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/config/latest/developerguide/config-concepts.html#config-recorder" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "management"} diff --git a/plugins/aws/fix_plugin_aws/resource/dynamodb.py b/plugins/aws/fix_plugin_aws/resource/dynamodb.py index ae253b6d29..a5547954b8 100644 --- a/plugins/aws/fix_plugin_aws/resource/dynamodb.py +++ b/plugins/aws/fix_plugin_aws/resource/dynamodb.py @@ -359,11 +359,8 @@ class AwsDynamoDbContinuousBackup: class AwsDynamoDbTable(DynamoDbTaggable, AwsResource): kind: ClassVar[str] = "aws_dynamodb_table" _kind_display: ClassVar[str] = "AWS DynamoDB Table" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS DynamoDB Table is a fully managed NoSQL database service that stores and retrieves data. It supports key-value and document data models, offering automatic scaling and low-latency performance. DynamoDB Tables handle data storage, indexing, and querying, providing consistent read and write throughput. They offer data encryption, backup, and recovery features for secure and reliable data management." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/dynamodbv2/home?region={region}#table?name={name}", "arn_tpl": "arn:{partition}:dynamodb:{region}:{account}:table/{name}"} # fmt: skip @@ -504,11 +501,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsDynamoDbGlobalTable(DynamoDbTaggable, AwsResource): kind: ClassVar[str] = "aws_dynamodb_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 Table is a feature that replicates DynamoDB tables across multiple AWS regions. It provides multi-region read and write access to data, ensuring low-latency access for globally distributed applications. Global Table maintains consistency across regions, handles conflict resolution, and offers automatic failover, improving availability and disaster recovery capabilities for applications with global user bases." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:dynamodb:{region}:{account}:table/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/ec2.py b/plugins/aws/fix_plugin_aws/resource/ec2.py index 3b3b27b174..68dced2a8c 100644 --- a/plugins/aws/fix_plugin_aws/resource/ec2.py +++ b/plugins/aws/fix_plugin_aws/resource/ec2.py @@ -387,11 +387,8 @@ 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] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS EC2 Instance Types are predefined virtual server configurations offered by Amazon Web Services. Each type specifies the compute, memory, storage, and networking capacity of the virtual machine. Users select an instance type based on their application's requirements, balancing performance and cost. EC2 instances can be launched, stopped, and terminated as needed for various computing workloads." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:ec2:{region}:{account}:instance/{id}"} # fmt: skip @@ -516,11 +513,8 @@ class AwsEc2Volume(EC2Taggable, AwsResource, BaseVolume): kind: ClassVar[str] = "aws_ec2_volume" _kind_display: ClassVar[str] = "AWS EC2 Volume" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#VolumeDetails:volumeId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:volume/{id}"} # fmt: skip - _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] = "AWS EC2 Volume Type refers to the storage options available for Amazon Elastic Compute Cloud (EC2) instances. These volume types include General Purpose SSD, Provisioned IOPS SSD, Throughput Optimized HDD, and Cold HDD. Each type offers different performance characteristics and pricing, catering to various workload requirements such as database storage, log processing, and data archiving." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volumes.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-volumes", "Volumes") _reference_kinds: ClassVar[ModelReference] = { @@ -737,11 +731,8 @@ class AwsEc2Snapshot(EC2Taggable, AwsResource, BaseSnapshot): kind: ClassVar[str] = "aws_ec2_snapshot" _kind_display: ClassVar[str] = "AWS EC2 Snapshot" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#SnapshotDetails:snapshotId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:snapshot/{id}"} # fmt: skip - _kind_description: ClassVar[str] = ( - "EC2 Snapshots are 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] = "AWS EC2 Snapshot is a backup tool for Amazon Elastic Compute Cloud (EC2) instances. It creates point-in-time copies of Elastic Block Store (EBS) volumes, preserving data at a specific moment. Users can restore snapshots to new EBS volumes, create images for launching new instances, or transfer data between AWS regions for disaster recovery and data migration purposes." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-snapshots", "Snapshots", dict(OwnerIds=["self"]) @@ -807,7 +798,8 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsEc2KeyPair(EC2Taggable, AwsResource, BaseKeyPair): 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." # fmt: skip + _kind_description: ClassVar[str] = "AWS EC2 Keypair is a security credential for Amazon Elastic Compute Cloud. It consists of a public key stored by AWS and a private key file kept by the user. This keypair authenticates secure SSH connections to EC2 instances, providing access control and encryption for remote management of virtual servers in the AWS cloud environment." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "access_control"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#KeyPairs:search={name}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:keypair/{name}"} # fmt: skip @@ -1247,10 +1239,8 @@ class AwsEc2Instance(EC2Taggable, AwsResource, BaseInstance): kind: ClassVar[str] = "aws_ec2_instance" _kind_display: ClassVar[str] = "AWS EC2 Instance" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#InstanceDetails:instanceId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:instance/{id}"} # fmt: skip - _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] = "AWS EC2 Instance is a virtual server in Amazon's Elastic Compute Cloud. It provides computing capacity in the cloud, offering various configurations of CPU, memory, storage, and networking capacity. Users can launch instances with different operating systems, configure security and networking, and manage storage. EC2 instances support diverse workloads and applications, from web servers to databases." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/ec2/" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-instances", "Reservations") _reference_kinds: ClassVar[ModelReference] = { @@ -1576,11 +1566,8 @@ 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] = "AWS EC2 Reserved Instances are a purchasing option for Amazon Elastic Compute Cloud (EC2) that provide discounted hourly rates in exchange for a one-time upfront payment and commitment to a specific instance type in a chosen region for a term of one or three years. They offer cost savings compared to On-Demand Instance pricing for workloads with predictable usage." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-reserved-instances.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#ReservedInstances:instanceId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:reserved-instances/{id}"} # fmt: skip @@ -1714,10 +1701,8 @@ class AwsEc2NetworkAclEntry: class AwsEc2NetworkAcl(EC2Taggable, AwsResource, BaseNetworkAcl): 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] = "AWS EC2 Network ACL is a security layer for Amazon Virtual Private Clouds (VPCs) that controls inbound and outbound traffic at the subnet level. It acts as a firewall, evaluating network traffic against user-defined rules. Network ACLs filter packets based on protocol, port, and source/destination IP addresses, providing an additional line of defense for EC2 instances within VPCs." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "access_control", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpc/home?region={region}#NetworkAclDetails:networkAclId={NetworkAclId}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:network-acl/{id}"} # fmt: skip @@ -1768,11 +1753,8 @@ class AwsEc2ElasticIp(EC2Taggable, AwsResource, BaseIPAddress): kind: ClassVar[str] = "aws_ec2_elastic_ip" _kind_display: ClassVar[str] = "AWS EC2 Elastic IP" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#ElasticIpDetails:AllocationId={AllocationId}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:elastic-ip/{name}"} # fmt: skip - _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] = "AWS EC2 Elastic IP is a static IPv4 address for dynamic cloud computing. It provides a consistent public IP that can be associated with different EC2 instances, masking instance failures or replacements. Users can remap the address to other instances in their account, maintaining a fixed entry point for applications and services running on EC2." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-addresses", "Addresses") _reference_kinds: ClassVar[ModelReference] = { @@ -1939,11 +1921,8 @@ 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 AWS EC2 Network Interface is a virtual network card that can be attached to EC2 instances. It provides network connectivity for instances within a VPC, allowing them to communicate with other resources and the internet. Network Interfaces can have multiple IP addresses, security groups, and can be moved between instances to maintain network configurations." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/v2/home?region={region}#NetworkInterface:networkInterfaceId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:network-interface/{id}"} # fmt: skip @@ -2114,11 +2093,8 @@ class AwsEc2Vpc(EC2Taggable, AwsResource, BaseNetwork): kind: ClassVar[str] = "aws_vpc" _kind_display: ClassVar[str] = "AWS VPC" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpcconsole/home?region={region}#VpcDetails:VpcId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:vpc/{id}"} # fmt: skip - _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 (Amazon Virtual Private Cloud) is a network service that creates isolated cloud environments within AWS. It lets users define virtual networks, configure IP ranges, set up subnets, and manage network gateways. VPC provides control over network architecture, enhances security through access controls, and supports connectivity between AWS resources and on-premises infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-vpcs", "Vpcs") mapping: ClassVar[Dict[str, Bender]] = { @@ -2228,11 +2204,8 @@ class AwsEc2VpcPeeringConnection(EC2Taggable, AwsResource, BasePeeringConnection kind: ClassVar[str] = "aws_vpc_peering_connection" _kind_display: ClassVar[str] = "AWS VPC Peering Connection" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpcconsole/home?region={region}#PeeringConnectionDetails:vpcPeeringConnectionId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:vpc-peering-connection/{id}"} # fmt: skip - _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] = "AWS VPC Peering Connection is a networking feature that connects two Virtual Private Clouds (VPCs) within the same or different AWS accounts. It establishes direct network routing between VPCs, letting resources in each VPC communicate with each other using private IP addresses. This connection works across regions and improves network performance by bypassing the public internet for inter-VPC traffic." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "describe-vpc-peering-connections", "VpcPeeringConnections" @@ -2314,11 +2287,8 @@ class AwsEc2VpcEndpoint(EC2Taggable, AwsResource, BaseEndpoint): kind: ClassVar[str] = "aws_vpc_endpoint" _kind_display: ClassVar[str] = "AWS VPC Endpoint" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpcconsole/home?region={region}#Endpoints:vpcEndpointId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:vpc-endpoint/{id}"} # fmt: skip - _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] = "An AWS VPC Endpoint is a service that provides private connectivity between Amazon Virtual Private Clouds (VPCs) and supported AWS services. It routes traffic within the Amazon network, bypassing the public internet. VPC Endpoints improve security by keeping data within the AWS infrastructure and can reduce data transfer costs for certain services." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-vpc-endpoints", "VpcEndpoints") _reference_kinds: ClassVar[ModelReference] = { @@ -2457,11 +2427,8 @@ class AwsEc2Subnet(EC2Taggable, AwsResource, BaseSubnet): kind: ClassVar[str] = "aws_ec2_subnet" _kind_display: ClassVar[str] = "AWS EC2 Subnet" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpcconsole/home?region={region}#SubnetDetails:subnetId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:subnet/{id}"} # fmt: skip - _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 segmented portion of a Virtual Private Cloud (VPC) network. It defines a range of IP addresses within the VPC and can be configured as public or private. Subnets help organize and isolate resources, control network traffic, and manage security settings. They operate in specific Availability Zones, supporting high availability and fault tolerance." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-subnets", "Subnets") _reference_kinds: ClassVar[ModelReference] = { @@ -2629,10 +2596,8 @@ 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] = "AWS EC2 Security Groups are virtual firewalls that control inbound and outbound traffic for EC2 instances. They act at the instance level, specifying which protocols, ports, and IP ranges can communicate with the associated instances. Security Groups operate on a deny-all-by-default principle, requiring explicit rules to permit traffic, and can be modified while instances are running." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "security_group", "group": "access_control"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/v2/home?region={region}#SecurityGroup:groupId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:security-group/{id}"} # fmt: skip @@ -2773,12 +2738,8 @@ class AwsEc2NatGateway(EC2Taggable, AwsResource, BaseGateway): kind: ClassVar[str] = "aws_ec2_nat_gateway" _kind_display: ClassVar[str] = "AWS EC2 NAT Gateway" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpcconsole/home?region={region}#NatGatewayDetails:natGatewayId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:nat-gateway/{id}"} # fmt: skip - _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] = "AWS EC2 NAT Gateway is a managed service that provides Network Address Translation for Amazon EC2 instances in private subnets. It routes outbound internet traffic from these instances while preventing inbound connections from the internet. NAT Gateway handles network address translation, improving security and facilitating internet access for resources in private subnets within a Virtual Private Cloud." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-nat-gateways", "NatGateways") _reference_kinds: ClassVar[ModelReference] = { @@ -2906,11 +2867,8 @@ 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 AWS EC2 Internet Gateway is a component that connects a Virtual Private Cloud (VPC) to the internet. It acts as a bridge between the VPC and the public internet, facilitating inbound and outbound traffic. The Internet Gateway provides a target for route tables and performs network address translation for instances with public IP addresses." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpc/home?region={region}#InternetGateway:internetGatewayId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:internet-gateway/{id}"} # fmt: skip @@ -3057,10 +3015,8 @@ class AwsEc2RouteTable(EC2Taggable, AwsResource, BaseRoutingTable): kind: ClassVar[str] = "aws_ec2_route_table" _kind_display: ClassVar[str] = "AWS EC2 Route Table" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/vpcconsole/home?region={region}#RouteTableDetails:RouteTableId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:route-table/{id}"} # fmt: skip - _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] = "An AWS EC2 Route Table is a networking component in Amazon Web Services that directs traffic between subnets within a Virtual Private Cloud (VPC) and to external networks. It contains rules, called routes, which determine where network traffic is sent based on its destination IP address. Route tables control both inbound and outbound traffic for associated subnets." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "describe-route-tables", "RouteTables") _reference_kinds: ClassVar[ModelReference] = { @@ -3201,9 +3157,8 @@ 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] = "AWS EC2 Host is a virtual server in Amazon's Elastic Compute Cloud (EC2) service. It provides computing capacity in the cloud, letting users run applications on Amazon's infrastructure. EC2 Hosts offer various instance types with different CPU, memory, storage, and networking capabilities. Users can start, stop, and terminate instances as needed, paying only for the resources they use." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-overview.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "host", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#Host:hostId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:host/{id}"} # fmt: skip @@ -3299,11 +3254,8 @@ 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] = "AWS EC2 Flow Logs capture network traffic information for EC2 instances, VPCs, and subnet interfaces. They record details about IP traffic, including source and destination addresses, ports, protocols, and packet counts. This data helps monitor network traffic patterns, troubleshoot connectivity issues, and enhance security by identifying potential threats or anomalies within AWS infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:ec2:{region}:{account}:flow-log/{id}"} # fmt: skip @@ -3402,10 +3354,8 @@ class AwsEc2BlockDeviceMapping: class AwsEc2Image(AwsResource): kind: ClassVar[str] = "aws_ec2_image" _kind_display: ClassVar[str] = "AWS EC2 Image" - _kind_description: ClassVar[str] = ( - "An Amazon Machine Image (AMI) is a supported and maintained image " - "provided by AWS that provides the information required to launch an instance. " - ) + _kind_description: ClassVar[str] = "AWS EC2 Image is a pre-configured virtual machine template for Amazon Elastic Compute Cloud (EC2). It contains an operating system, applications, and settings, serving as a blueprint for launching EC2 instances. Users can create custom images or choose from a library of public images to quickly deploy virtual servers with specific configurations in the cloud." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "image", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#ImageDetails:imageId={id}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:image/{id}"} # fmt: skip @@ -3974,7 +3924,8 @@ class AwsEc2LaunchTemplateData: class AwsEc2LaunchTemplate(EC2Taggable, AwsResource): kind: ClassVar[str] = "aws_ec2_launch_template" _kind_display: ClassVar[str] = "AWS EC2 Launch Template" - _kind_description: ClassVar[str] = "An AWS EC2 Launch Template provides a configurable blueprint for launching EC2 instances, allowing for the specification of settings like instance type, AMI, security groups, and block device mappings for consistency and automation in instance creation." # fmt: skip + _kind_description: ClassVar[str] = "AWS EC2 Launch Template is a configuration tool for Amazon EC2 instances. It stores instance settings, including AMI ID, instance type, network configurations, and storage options. Users can create multiple versions of templates and use them to launch instances or auto scaling groups, reducing repetitive configuration steps and ensuring consistent instance deployments across an AWS environment." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/v2/home?region={region}#LaunchTemplateDetails:launchTemplateId={LaunchTemplateId}", "arn_tpl": "arn:{partition}:ec2:{region}:{account}:launch-template/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/ecr.py b/plugins/aws/fix_plugin_aws/resource/ecr.py index f0342b3a72..81bc06ac20 100644 --- a/plugins/aws/fix_plugin_aws/resource/ecr.py +++ b/plugins/aws/fix_plugin_aws/resource/ecr.py @@ -28,7 +28,8 @@ class AwsEcrEncryptionConfiguration: class AwsEcrRepository(AwsResource): kind: ClassVar[str] = "aws_ecr_repository" _kind_display: ClassVar[str] = "AWS ECR Repository" - _kind_description: ClassVar[str] = "An AWS Elastic Container Registry (ECR) Repository is used for storing, managing, and deploying Docker container images in a secure, scalable, and private environment on AWS." # fmt: skip + _kind_description: ClassVar[str] = "AWS ECR (Elastic Container Registry) is a managed Docker container registry service. It stores, manages, and deploys container images for applications. ECR integrates with other AWS services, provides secure access control, and supports image scanning for vulnerabilities. Users can push, pull, and share Docker images within their AWS environment or with external parties." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "repository", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ecr/repositories/{name}?region={region}", "arn_tpl": "arn:{partition}:ecr:{region}:{account}:repository/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/ecs.py b/plugins/aws/fix_plugin_aws/resource/ecs.py index bf571c46f6..933181f81b 100644 --- a/plugins/aws/fix_plugin_aws/resource/ecs.py +++ b/plugins/aws/fix_plugin_aws/resource/ecs.py @@ -106,9 +106,9 @@ 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] = "AWS ECS Capacity Provider is a feature that manages compute capacity for Amazon Elastic Container Service (ECS) clusters. It automates the scaling of EC2 instances based on task demands, balancing resource utilization and availability. Capacity Providers can work with EC2 Auto Scaling groups to add or remove instances as needed, optimizing cluster performance and cost efficiency." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cluster-capacity-providers.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "provider", "group": "compute"} @@ -427,10 +427,8 @@ 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] = "An AWS ECS Task is a configuration that defines one or more containers to run together on Amazon Elastic Container Service. It specifies the Docker image, CPU and memory requirements, network settings, and other parameters for each container. Tasks are used to deploy and manage applications within ECS clusters." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ecs/v2/clusters/{clusterArn}/tasks/{id}/configuration?region={region}", "arn_tpl": "arn:{partition}:ecs:{region}:{account}:task/{name}"} # fmt: skip @@ -1075,11 +1073,8 @@ 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 AWS ECS Task Definition is a configuration file that specifies how containers should run within an Amazon ECS cluster. It defines container images, resource requirements, environment variables, networking settings, and storage options for tasks. Task Definitions serve as blueprints for deploying and managing containerized applications in Amazon ECS environments." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ecs/v2/task-definitions/{name}?region={region}", "arn_tpl": "arn:{partition}:ecs:{region}:{account}:task-definition/{name}"} # fmt: skip @@ -1498,11 +1493,8 @@ 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] = "AWS ECS Service is a container management feature within Amazon Elastic Container Service. It maintains and scales a specified number of task instances, automatically replaces failed tasks, and integrates with Elastic Load Balancing for distributing traffic. ECS Service handles task placement, scheduling, and service discovery, simplifying the deployment and management of containerized applications on AWS infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "service", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ecs/v2/clusters/{clusterArn}/services/{name}/health?region={region}", "arn_tpl": "arn:{partition}:ecs:{region}:{account}:service/{name}"} # fmt: skip @@ -1789,11 +1781,8 @@ 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] = "An AWS ECS Container Instance is a virtual machine that runs the Amazon ECS container agent and Docker daemon. It serves as a host for containers managed by Amazon ECS. These instances provide compute resources for running containers, handle container scheduling, and communicate with the ECS service to manage tasks and report instance status." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:ecs:{region}:{account}:container-instance/{id}"} # fmt: skip @@ -1936,10 +1925,8 @@ 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] = "AWS ECS Cluster is a container management service that organizes and runs Docker containers on EC2 instances. It handles container deployment, scheduling, and scaling across multiple instances. ECS Cluster manages the underlying infrastructure, monitors container health, and balances workloads. It integrates with other AWS services for networking, storage, and security." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_clusters.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ecs/v2/clusters/{name}/services?region={region}", "arn_tpl": "arn:{partition}:ecs:{region}:{account}:cluster/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/efs.py b/plugins/aws/fix_plugin_aws/resource/efs.py index df5719f2dd..7cd16c17f6 100644 --- a/plugins/aws/fix_plugin_aws/resource/efs.py +++ b/plugins/aws/fix_plugin_aws/resource/efs.py @@ -51,10 +51,8 @@ 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] = "An AWS EFS Mount Target is a network interface in a Virtual Private Cloud (VPC) subnet that connects to an Elastic File System (EFS). It provides an IP address for accessing the file system within the VPC. Mount targets act as endpoints for NFS clients to connect and mount EFS file systems on EC2 instances." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/efs/latest/ug/mounting-fs-mount-cmd-general.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": None, "arn_tpl": "arn:{partition}:efs:{region}:{account}:mount-target/{id}"} # fmt: skip @@ -81,10 +79,8 @@ class AwsEfsFileSystem(EfsTaggable, AwsResource, BaseNetworkShare): kind: ClassVar[str] = "aws_efs_file_system" _kind_display: ClassVar[str] = "AWS EFS File System" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/efs/home?region={region}#/file-systems/{FileSystemId}", "arn_tpl": "arn:{partition}:efs:{region}:{account}:file-system/{id}"} # fmt: skip - _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] = "AWS EFS (Elastic File System) is a cloud-based network file storage service for Amazon EC2 instances. It provides a shared file system that can be accessed by multiple EC2 instances simultaneously. EFS automatically scales storage capacity as files are added or removed, and users pay only for the storage they use." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/efs/latest/ug/" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, @@ -232,11 +228,8 @@ 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 feature of Amazon Elastic File System that creates a unique entry point to an EFS file system. It manages access permissions and enforces a root directory for NFS clients. Access Points simplify sharing data in multi-tenant applications by providing isolated namespaces within a single file system." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/efs/home?region={region}#/access-points/{id}", "arn_tpl": "arn:{partition}:efs:{region}:{account}:access-point/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/eks.py b/plugins/aws/fix_plugin_aws/resource/eks.py index 70b5ea7b77..9ad54520b6 100644 --- a/plugins/aws/fix_plugin_aws/resource/eks.py +++ b/plugins/aws/fix_plugin_aws/resource/eks.py @@ -190,11 +190,8 @@ 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] = "AWS EKS Nodegroup is a feature of Amazon Elastic Kubernetes Service that manages groups of EC2 instances for Kubernetes clusters. It automates the provisioning and lifecycle of worker nodes, handles node updates and terminations, and integrates with other AWS services. Nodegroups simplify cluster management by reducing manual configuration and maintenance tasks for Kubernetes deployments." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "managed_kubernetes"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:eks:{region}:{account}:nodegroup/{id}"} # fmt: skip @@ -405,11 +402,8 @@ class AwsEksConnectorConfig: class AwsEksCluster(EKSTaggable, BaseManagedKubernetesClusterProvider, 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] = "AWS EKS Cluster is a managed Kubernetes service that runs and orchestrates containerized applications on Amazon Web Services. It automates the deployment, scaling, and management of Kubernetes control plane and worker nodes. EKS integrates with AWS services for networking, storage, and security, providing a platform for running distributed applications across multiple availability zones." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/eks/latest/userguide/clusters.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "managed_kubernetes"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/eks/home?region={region}#/clusters/{name}", "arn_tpl": "arn:{partition}:eks:{region}:{account}:cluster/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/elasticache.py b/plugins/aws/fix_plugin_aws/resource/elasticache.py index 39f6be390a..e40ffd436b 100644 --- a/plugins/aws/fix_plugin_aws/resource/elasticache.py +++ b/plugins/aws/fix_plugin_aws/resource/elasticache.py @@ -249,12 +249,8 @@ 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] = "AWS ElastiCache Cache Cluster is a managed service that deploys and operates in-memory cache engines Redis or Memcached in the cloud. It stores frequently accessed data in memory, reducing database load and improving application response times. Users can create, configure, and maintain cache clusters without managing the underlying infrastructure or software installation." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/WhatIs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/elasticache/home?region={region}#/{Engine}/{name}", "arn_tpl": "arn:{partition}:elasticache:{region}:{account}:cache-cluster/{name}"} # fmt: skip @@ -501,11 +497,8 @@ 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] = "AWS ElastiCache Replication Group is a feature that creates multiple interconnected cache nodes. It provides redundancy and improves read performance by distributing data across nodes. The group consists of a primary node for write operations and one or more read replicas. It supports automatic failover and data synchronization between nodes, enhancing reliability and availability of cached data." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Replication.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:elasticache:{region}:{account}:replication-group/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/elasticbeanstalk.py b/plugins/aws/fix_plugin_aws/resource/elasticbeanstalk.py index a8d90dfa68..94485da700 100644 --- a/plugins/aws/fix_plugin_aws/resource/elasticbeanstalk.py +++ b/plugins/aws/fix_plugin_aws/resource/elasticbeanstalk.py @@ -92,10 +92,8 @@ 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] = "AWS Elastic Beanstalk Application is a service that deploys and manages web applications. It handles infrastructure provisioning, capacity adjustment, load balancing, and health monitoring. Developers can upload their code, and Elastic Beanstalk automatically handles deployment details. It supports multiple programming languages and web servers, simplifying the process of running applications in the AWS cloud." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/Welcome.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/elasticbeanstalk/home?region={region}#/application/overview?applicationName={name}", "arn_tpl": "arn:{partition}:elasticbeanstalk:{region}:{account}:application/{name}"} # fmt: skip @@ -289,11 +287,8 @@ class AwsBeanstalkEnvironmentResourcesDescription: class AwsBeanstalkEnvironment(AwsResource): kind: ClassVar[str] = "aws_beanstalk_environment" _kind_display: ClassVar[str] = "AWS Elastic Beanstalk Environment" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS Elastic Beanstalk Environment is a managed service that automates application deployment and infrastructure provisioning. It handles capacity provisioning, load balancing, auto-scaling, and application health monitoring. Users can deploy applications in multiple languages and frameworks while AWS manages the underlying infrastructure, reducing the complexity of server management and application maintenance." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features-managing-env.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "environment", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/elasticbeanstalk/home?region={region}#/environment/dashboard?environmentId={id}", "arn_tpl": "arn:{partition}:elasticbeanstalk:{region}:{account}:environment/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/elb.py b/plugins/aws/fix_plugin_aws/resource/elb.py index 56a3dced3e..c20a1a0218 100644 --- a/plugins/aws/fix_plugin_aws/resource/elb.py +++ b/plugins/aws/fix_plugin_aws/resource/elb.py @@ -250,12 +250,8 @@ class AwsElbLoadBalancerAttributes: 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] = "AWS Elastic Load Balancing (ELB) is a service that distributes incoming application traffic across multiple targets, such as EC2 instances, containers, and IP addresses. It automatically adjusts capacity based on traffic patterns, provides health checks for connected resources, and supports various load balancing algorithms to optimize application performance and availability in Amazon Web Services environments." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/elasticloadbalancing/" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "load_balancer", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#LoadBalancer:loadBalancerArn={name}", "arn_tpl": "arn:{partition}:elasticloadbalancing:{region}:{account}:loadbalancer/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/elbv2.py b/plugins/aws/fix_plugin_aws/resource/elbv2.py index 3cba2aa93d..7e825ab991 100644 --- a/plugins/aws/fix_plugin_aws/resource/elbv2.py +++ b/plugins/aws/fix_plugin_aws/resource/elbv2.py @@ -347,11 +347,8 @@ class AwsAlb(ElbV2Taggable, AwsResource, BaseLoadBalancer): kind: ClassVar[str] = "aws_alb" _kind_display: ClassVar[str] = "AWS ALB" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/ec2/home?region={region}#LoadBalancer:loadBalancerArn={arn}", "arn_tpl": "arn:{partition}:elasticloadbalancing:{region}:{account}:loadbalancer/app/{name}/{id}"} # fmt: skip - _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 Application Load Balancer (ALB) is a Layer 7 load balancing service that distributes incoming application traffic across multiple targets, such as EC2 instances, containers, and IP addresses. It supports content-based routing, can handle HTTP/HTTPS traffic, and provides features like SSL termination, health checks, and integration with other AWS services for improved application performance and availability." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, @@ -599,10 +596,9 @@ 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] = "AWS ALB Target Group is a component of the Application Load Balancer service that routes incoming traffic to registered targets. It defines rules for health checks, load balancing algorithms, and target selection. Target Groups can include EC2 instances, containers, IP addresses, or Lambda functions, providing flexibility in distributing traffic across various backend resources." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "load_balancer", "group": "networking"} diff --git a/plugins/aws/fix_plugin_aws/resource/glacier.py b/plugins/aws/fix_plugin_aws/resource/glacier.py index b03383d597..f9737a49ee 100644 --- a/plugins/aws/fix_plugin_aws/resource/glacier.py +++ b/plugins/aws/fix_plugin_aws/resource/glacier.py @@ -137,10 +137,8 @@ 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 Job is a process for retrieving data from Amazon S3 Glacier storage. It initiates and manages the retrieval of archives or inventory from Glacier vaults. Users can specify job parameters, including the retrieval type and data range. The job runs asynchronously, and users can track its progress and access results upon completion." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/amazonglacier/latest/dev/querying-glacier-archives.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:glacier:{region}:{account}:job/{id}"} # fmt: skip @@ -212,10 +210,8 @@ 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 Vault is a storage container within Amazon S3 Glacier for archiving data. It holds archives, which are objects stored in the vault. Users can create multiple vaults in their AWS account and control access to each vault independently. Glacier Vault provides secure, durable storage for long-term data retention and compliance purposes." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-vaults.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "bucket", "group": "storage"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/glacier/home?region={region}#/vault/{name}/view/properties", "arn_tpl": "arn:{partition}:glacier:{region}:{account}:vault/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/iam.py b/plugins/aws/fix_plugin_aws/resource/iam.py index c4d266ef07..ceb2eeaed9 100644 --- a/plugins/aws/fix_plugin_aws/resource/iam.py +++ b/plugins/aws/fix_plugin_aws/resource/iam.py @@ -110,12 +110,8 @@ class AwsIamRole(AwsResource, BaseRole, BaseIamPrincipal): kind: ClassVar[str] = "aws_iam_role" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/iam/home?region={region}#/roles/details/{RoleName}", "arn_tpl": "arn:{partition}:iam:{region}:{account}:role/{name}"} # fmt: skip _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] = "AWS IAM Role is a security feature in Amazon Web Services that defines permissions for AWS resources. It specifies what actions an entity can perform and which resources it can access within AWS. IAM Roles can be assigned to users, applications, or services, providing temporary credentials and eliminating the need to manage long-term access keys." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -223,12 +219,8 @@ class AwsIamServerCertificate(AwsResource, BaseCertificate): kind: ClassVar[str] = "aws_iam_server_certificate" _kind_display: ClassVar[str] = "AWS IAM Server Certificate" _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:iam:{region}:{account}:server-certificate/{name}"} # fmt: skip - _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] = "" # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-server-certificates", "ServerCertificateMetadataList" @@ -317,10 +309,8 @@ class AwsIamPolicy(AwsResource, BasePolicy): kind: ClassVar[str] = "aws_iam_policy" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/iamv2/home?region={region}#/policies/details/{arn}?section=permissions", "arn_tpl": "arn:{partition}:iam::{account}:policy/{name}"} # fmt: skip _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] = "AWS IAM Policy is a document that defines permissions for AWS resources. It specifies actions users, groups, or roles can perform on specific resources under certain conditions. These policies control access to AWS services and operations, enhancing security by implementing the principle of least privilege. Administrators use IAM policies to manage and enforce access controls across their AWS environment." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html" _kind_service: ClassVar[Optional[str]] = service_name mapping: ClassVar[Dict[str, Bender]] = { "id": S("PolicyId"), @@ -394,11 +384,8 @@ class AwsIamGroup(AwsResource, BaseGroup): kind: ClassVar[str] = "aws_iam_group" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/iam/home?region={region}#/groups/details/{name}", "arn_tpl": "arn:{partition}:iam::{account}:group/{name}"} # fmt: skip _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] = "AWS IAM Group is a feature of Amazon Web Services Identity and Access Management that organizes users with similar access needs. It simplifies permissions management by assigning policies to groups rather than individual users. Administrators can add or remove users from groups, controlling access to AWS resources and services efficiently across multiple users." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "successors": {"default": ["aws_iam_policy"], "delete": ["aws_iam_policy"]}, @@ -496,9 +483,8 @@ class AwsIamAccessKey(AwsResource, BaseAccessKey): kind: ClassVar[str] = "aws_iam_access_key" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/iam/home?region={region}#/users/{UserName}?section=security_credentials&display=access_key&accessKeyID={AccessKeyId}"} # fmt: skip _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 a set of credentials used to authenticate and authorize programmatic access to AWS services. It consists of an access key ID and a secret access key. These keys are used in API calls, SDKs, and command-line tools to interact with AWS resources securely, granting permissions defined by the associated IAM user or role." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html" _kind_service: ClassVar[Optional[str]] = service_name mapping: ClassVar[Dict[str, Bender]] = { "id": S("AccessKeyId"), @@ -633,6 +619,7 @@ class AwsRootUser(AwsResource, BaseUser, BaseIamPrincipal): "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." ) + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["aws_account"]}, @@ -650,10 +637,8 @@ class AwsIamUser(AwsResource, BaseUser, BaseIamPrincipal): kind: ClassVar[str] = "aws_iam_user" _kind_display: ClassVar[str] = "AWS IAM User" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/iam/home?region={region}#/users/details/{name}", "arn_tpl": "arn:{partition}:iam::{account}:user/{name}"} # fmt: skip - _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] = "" # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "get-account-authorization-details") _reference_kinds: ClassVar[ModelReference] = { @@ -815,9 +800,9 @@ 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] = "An AWS IAM Instance Profile is a container for an IAM role that can be attached to Amazon EC2 instances. It provides temporary security credentials to applications running on the instance, granting them permissions to access AWS resources. This eliminates the need to store long-term credentials on EC2 instances, enhancing security and simplifying credential management." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "profile", "group": "access_control"} diff --git a/plugins/aws/fix_plugin_aws/resource/kinesis.py b/plugins/aws/fix_plugin_aws/resource/kinesis.py index 70f0d5b792..9d01c9bdb3 100644 --- a/plugins/aws/fix_plugin_aws/resource/kinesis.py +++ b/plugins/aws/fix_plugin_aws/resource/kinesis.py @@ -92,11 +92,8 @@ 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] = "" # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/streams/latest/dev/introduction.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "queue", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/kinesis/home?region={region}#/streams/details/{name}", "arn_tpl": "arn:{partition}:kinesis:{region}:{account}:stream/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/kms.py b/plugins/aws/fix_plugin_aws/resource/kms.py index 005c35967c..097429dfce 100644 --- a/plugins/aws/fix_plugin_aws/resource/kms.py +++ b/plugins/aws/fix_plugin_aws/resource/kms.py @@ -66,11 +66,8 @@ 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 is a managed service that creates and controls cryptographic keys used to protect data in AWS services and applications. It generates, stores, and manages keys for encryption and decryption operations. KMS Keys integrate with other AWS services, providing a centralized system for key management and helping users meet compliance requirements for data security and access control." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/kms/home?region={region}#/kms/keys/{id}", "arn_tpl": "arn:{partition}:kms:{region}:{account}:key/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/lambda_.py b/plugins/aws/fix_plugin_aws/resource/lambda_.py index 013eab440d..aaacd1482b 100644 --- a/plugins/aws/fix_plugin_aws/resource/lambda_.py +++ b/plugins/aws/fix_plugin_aws/resource/lambda_.py @@ -239,6 +239,7 @@ class AwsLambdaFunction(AwsResource, BaseServerlessFunction): " without provisioning or managing servers. Lambda functions are the compute" " units that run your code in response to events." ) + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/opensearch-service/latest/developerguide/what-is.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-functions", "Functions") _reference_kinds: ClassVar[ModelReference] = { diff --git a/plugins/aws/fix_plugin_aws/resource/opensearch.py b/plugins/aws/fix_plugin_aws/resource/opensearch.py index cb9afeebe4..b5e5fdbd02 100644 --- a/plugins/aws/fix_plugin_aws/resource/opensearch.py +++ b/plugins/aws/fix_plugin_aws/resource/opensearch.py @@ -251,6 +251,8 @@ class AwsOpenSearchDomain(AwsResource): kind: ClassVar[str] = "aws_opensearch_domain" _kind_display: ClassVar[str] = "AWS OpenSearch Domain" _kind_description: ClassVar[str] = "An AWS OpenSearch Domain provides a managed environment in the AWS cloud to easily deploy, operate, and scale OpenSearch, a popular search and analytics engine." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/accounts/latest/reference/welcome.html" + _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/fix_plugin_aws/resource/rds.py b/plugins/aws/fix_plugin_aws/resource/rds.py index 9a4a73bec4..f1d4e11b40 100644 --- a/plugins/aws/fix_plugin_aws/resource/rds.py +++ b/plugins/aws/fix_plugin_aws/resource/rds.py @@ -322,10 +322,8 @@ class AwsRdsDBRole: 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] = "AWS RDS Instance is a managed relational database service in Amazon Web Services. It provides a database instance with automated backups, software patching, and monitoring. Users can choose from various database engines, including MySQL, PostgreSQL, and Oracle. RDS handles routine database tasks, freeing developers to focus on application development and optimization." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/rds/home?region={region}#database:id={id};is-cluster=false", "arn_tpl": "arn:{partition}:rds:{region}:{account}:db:{name}"} # fmt: skip @@ -855,11 +853,8 @@ 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] = "AWS RDS Cluster is a managed database service that groups multiple database instances together. It provides high availability and fault tolerance by replicating data across instances in different availability zones. Users can scale read capacity by adding read replicas and perform automatic failover to maintain database accessibility during instance failures or maintenance." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Overview.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/rds/home?region={region}#database:id={id};is-cluster=true", "arn_tpl": "arn:{partition}:rds:{region}:{account}:cluster/{name}"} # fmt: skip @@ -1064,7 +1059,10 @@ def called_mutator_apis(cls) -> List[AwsApiSpec]: class AwsRdsSnapshot(RdsTaggable, AwsResource, BaseSnapshot): kind: ClassVar[str] = "aws_rds_snapshot" _kind_display: ClassVar[str] = "AWS RDS Snapshot" - _kind_description: ClassVar[str] = "An AWS RDS Snapshot is a backup tool used for creating a point-in-time copy of an RDS database instance, facilitating data recovery and replication." # fmt: skip + _kind_description: ClassVar[str] = "AWS RDS Snapshot is a feature of Amazon Relational Database Service that creates point-in-time copies of entire database instances. These snapshots preserve data and configurations, serving as backups or for creating new instances. Users can restore databases to specific points, migrate data between regions, or clone environments for testing and development purposes." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow" + ) _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": [AwsRdsInstance.kind, AwsEc2Vpc.kind]}} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/rds/home?region={region}#db-snapshot:engine={Engine};id={id}", "arn_tpl": "arn:{partition}:rds:{region}:{account}:snapshot:{id}/{name}"} # fmt: skip @@ -1165,7 +1163,10 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AwsRdsClusterSnapshot(AwsResource): kind: ClassVar[str] = "aws_rds_cluster_snapshot" _kind_display: ClassVar[str] = "AWS RDS Cluster Snapshot" - _kind_description: ClassVar[str] = "An AWS RDS Cluster Snapshot is a point-in-time backup of an Amazon RDS cluster that provides data persistence and recovery for disaster management." # fmt: skip + _kind_description: ClassVar[str] = "An AWS RDS Cluster Snapshot is a point-in-time backup of an entire Amazon Aurora database cluster. It captures data from all instances in the cluster, including the primary and replicas. Users can create manual snapshots or configure automated backups. These snapshots are used for data recovery, cloning databases, or migrating data between regions." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_CreateSnapshotCluster.html" + ) _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": [AwsRdsCluster.kind, AwsEc2Vpc.kind]}, diff --git a/plugins/aws/fix_plugin_aws/resource/redshift.py b/plugins/aws/fix_plugin_aws/resource/redshift.py index e91f36b795..df458af12f 100644 --- a/plugins/aws/fix_plugin_aws/resource/redshift.py +++ b/plugins/aws/fix_plugin_aws/resource/redshift.py @@ -417,9 +417,8 @@ class AwsRedshiftLoggingStatus: 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] = "" # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-console.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:redshift:{region}:{account}:cluster/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/route53.py b/plugins/aws/fix_plugin_aws/resource/route53.py index fe3d524037..c92f2c4659 100644 --- a/plugins/aws/fix_plugin_aws/resource/route53.py +++ b/plugins/aws/fix_plugin_aws/resource/route53.py @@ -62,9 +62,9 @@ class AwsRoute53LoggingConfig: class AwsRoute53Zone(AwsResource, BaseDNSZone): kind: ClassVar[str] = "aws_route53_zone" _kind_display: ClassVar[str] = "AWS Route53 Zone" - _kind_description: ClassVar[str] = ( - "AWS Route 53 Zones manage domain DNS settings, enabling users to direct" - " internet traffic for their domains through various DNS records." + _kind_description: ClassVar[str] = "AWS Route 53 Zone is a DNS hosting service that manages domain names and routes internet traffic. It translates human-readable domain names into IP addresses, stores DNS records, and handles DNS queries. Route 53 Zone supports various record types, provides global distribution for low-latency responses, and integrates with other AWS services for DNS management." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-working-with.html" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "zone", "group": "networking"} @@ -240,10 +240,8 @@ class AwsRoute53CidrRoutingConfig: class AwsRoute53ResourceRecord(AwsResource, BaseDNSRecord): kind: ClassVar[str] = "aws_route53_resource_record" _kind_display: ClassVar[str] = "AWS Route53 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] = "AWS Route 53 Resource Record is a DNS record that defines how traffic is routed for a specific domain or subdomain. It contains information such as IP addresses, domain names, or values specific to the record type. Route 53 uses these records to respond to DNS queries and direct internet traffic to the appropriate destinations." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/ResourceRecordTypes.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns_record", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:route53:::{id}"} # fmt: skip @@ -267,11 +265,8 @@ def service_name(cls) -> str: class AwsRoute53ResourceRecordSet(AwsResource, BaseDNSRecordSet): kind: ClassVar[str] = "aws_route53_resource_record_set" _kind_display: ClassVar[str] = "AWS Route53 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] = "AWS Route 53 Resource Record Set is a collection of DNS records for a domain. It defines how traffic is routed to resources like websites, email servers, or other services. These records include types such as A, AAAA, CNAME, MX, and TXT, each serving specific purposes in DNS resolution and domain configuration." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/Route53/latest/APIReference/API_ResourceRecordSet.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:route53::{account}:recordset/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/s3.py b/plugins/aws/fix_plugin_aws/resource/s3.py index 2cbc30ce37..78970757a8 100644 --- a/plugins/aws/fix_plugin_aws/resource/s3.py +++ b/plugins/aws/fix_plugin_aws/resource/s3.py @@ -167,10 +167,8 @@ class AwsS3Bucket(AwsResource, BaseBucket): kind: ClassVar[str] = "aws_s3_bucket" _kind_display: ClassVar[str] = "AWS S3 Bucket" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://s3.console.aws.amazon.com/s3/buckets/{name}?region={region_id}&bucketType=general&tab=objects", "arn_tpl": "arn:{partition}:s3:{region}:{account}:bucket/{name}"} # fmt: skip - _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] = "AWS S3 Bucket is a cloud storage service provided by Amazon Web Services. It stores and retrieves data objects, such as files, documents, and images. S3 Buckets organize data into containers, offering features like access control, versioning, and lifecycle management. Users can interact with S3 Buckets through APIs, SDKs, or the AWS Management Console." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[AwsApiSpec] = AwsApiSpec( service_name, "list-buckets", "Buckets", override_iam_permission="s3:ListAllMyBuckets" @@ -451,10 +449,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." - ) + _kind_description: ClassVar[str] = "AWS S3 Account Settings is a configuration interface for managing Amazon Simple Storage Service (S3) at the account level. It provides options to control public access, default encryption, and versioning for S3 buckets. Users can set policies, adjust security measures, and configure access points to align S3 behavior with their organization's requirements and compliance standards." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AmazonS3/latest/userguide/manage-account-settings.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://s3.console.aws.amazon.com/s3/settings?region={region_id}", "arn_tpl": "arn:{partition}:s3control:{region}:{account}:account/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/sagemaker.py b/plugins/aws/fix_plugin_aws/resource/sagemaker.py index 497b2ffa1a..d0e872a7f4 100644 --- a/plugins/aws/fix_plugin_aws/resource/sagemaker.py +++ b/plugins/aws/fix_plugin_aws/resource/sagemaker.py @@ -72,11 +72,8 @@ 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] = "AWS SageMaker Notebook is a cloud-based development environment for machine learning. It provides Jupyter notebooks with pre-configured kernels and libraries for data science and ML tasks. Users can create, edit, and run code, visualize data, and train models within the notebook interface. It integrates with other AWS services for data storage, processing, and model deployment." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/nbi.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "function", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:notebook/{name}"} # fmt: skip @@ -759,10 +756,8 @@ 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] = "AWS SageMaker Algorithm is a machine learning component within Amazon SageMaker. It provides pre-built algorithms for common machine learning tasks, including classification, regression, and clustering. Users can select and deploy these algorithms to train models on their data without writing extensive code, reducing the complexity of implementing machine learning solutions in cloud environments." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:algorithm/{name}"} # fmt: skip @@ -901,10 +896,8 @@ 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] = "AWS SageMaker Model is a component of Amazon SageMaker that manages machine learning models. It stores, versions, and deploys trained models for inference. Users can create models from their own algorithms or pre-trained models, configure them for different hardware, and deploy them to production environments. It integrates with other SageMaker features for end-to-end machine learning workflows." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:model/{name}"} # fmt: skip @@ -1001,11 +994,8 @@ class AwsSagemakerResourceSpec: class AwsSagemakerApp(AwsResource): kind: ClassVar[str] = "aws_sagemaker_app" _kind_display: ClassVar[str] = "AWS SageMaker App" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS SageMaker App is a machine learning development environment integrated within Amazon SageMaker. It provides tools for data scientists and developers to build, train, and deploy machine learning models. Users can access Jupyter notebooks, code editors, and data visualization tools through a web-based interface, facilitating collaborative work on machine learning projects within the AWS ecosystem." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/studio.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:app/{name}"} # fmt: skip @@ -1373,11 +1363,8 @@ class AwsSagemakerDefaultSpaceSettings: class AwsSagemakerDomain(AwsResource): kind: ClassVar[str] = "aws_sagemaker_domain" _kind_display: ClassVar[str] = "AWS SageMaker Domain" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS SageMaker Domain is a managed environment for machine learning workflows. It provides a unified interface for data scientists and developers to access SageMaker tools, including notebooks, data preparation, model training, and deployment. Users can collaborate on projects, share resources, and manage access controls within the domain, simplifying the end-to-end machine learning process on AWS." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/sm-domain.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/sagemaker/home?region={region}#/studio/{id}", "arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:domain/{name}"} # fmt: skip @@ -1575,11 +1562,8 @@ 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] = "AWS SageMaker Experiment is a feature of Amazon SageMaker that helps data scientists and machine learning engineers organize, track, and compare machine learning experiments. It records metadata, parameters, and artifacts for each experiment run, facilitating reproducibility and analysis. Users can visualize results, compare different runs, and share findings with team members to improve collaboration and decision-making in ML projects." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/experiments.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:experiment/{name}"} # fmt: skip @@ -1658,11 +1642,8 @@ class AwsSagemakerMetadataProperties: class AwsSagemakerTrial(AwsResource): kind: ClassVar[str] = "aws_sagemaker_trial" _kind_display: ClassVar[str] = "AWS SageMaker Trial" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS SageMaker Trial is a component of Amazon SageMaker that organizes machine learning experiments. It tracks and manages individual iterations within an experiment, recording parameters, metrics, and artifacts. SageMaker Trial helps data scientists and developers compare different model versions, evaluate performance, and reproduce results. It integrates with other SageMaker features for end-to-end machine learning workflow management." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/experiments-create.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:trial/{name}"} # fmt: skip @@ -1745,11 +1726,8 @@ 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] = "AWS SageMaker Project is a feature within Amazon SageMaker that helps organize and manage machine learning workflows. It provides templates for creating end-to-end ML solutions, including data preparation, model training, and deployment. SageMaker Project facilitates collaboration among team members, version control of ML artifacts, and automation of CI/CD pipelines for ML models." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-projects.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "profile", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:project/{id}"} # fmt: skip @@ -1796,10 +1774,8 @@ class AwsSagemakerGitConfig: class AwsSagemakerCodeRepository(AwsResource): kind: ClassVar[str] = "aws_sagemaker_code_repository" _kind_display: ClassVar[str] = "AWS SageMaker Code Repository" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS SageMaker Code Repository is a version control service integrated with SageMaker. It hosts Git repositories for machine learning projects, providing a centralized location for storing and managing code. Users can access, edit, and version their code directly within SageMaker, facilitating collaboration and maintaining a history of changes throughout the development process." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "repository", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:code-repository/{name}"} # fmt: skip @@ -2262,10 +2238,8 @@ 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] = "AWS SageMaker Endpoint is a fully managed service for deploying machine learning models. It provides an HTTPS endpoint for real-time predictions, handles scaling and load balancing, and supports multiple instance types. Users can deploy models trained in SageMaker or other platforms, monitor performance, and update models without downtime. It integrates with other AWS services for logging and security." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:endpoint/{name}"} # fmt: skip @@ -2364,11 +2338,8 @@ 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 Image is a container image service for machine learning tasks on Amazon SageMaker. It provides pre-built images with popular frameworks and tools, and supports custom images. Users can create, manage, and deploy images for training, inference, and model development. The service integrates with SageMaker's infrastructure for ML workflows." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "image", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:image/{name}"} # fmt: skip @@ -2458,10 +2429,8 @@ class AwsSagemakerArtifactSource: class AwsSagemakerArtifact(AwsResource): kind: ClassVar[str] = "aws_sagemaker_artifact" _kind_display: ClassVar[str] = "AWS SageMaker Artifact" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS SageMaker Artifact is a feature within Amazon SageMaker that manages and stores machine learning artifacts. It provides a central repository for model versions, datasets, and other resources used in ML workflows. SageMaker Artifact tracks lineage, ensures reproducibility, and supports compliance requirements by maintaining records of artifacts throughout the machine learning lifecycle." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/model-cards.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:artifact/{id}"} # fmt: skip @@ -2547,11 +2516,8 @@ 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] = "AWS SageMaker User Profile is a feature within Amazon SageMaker that manages individual user settings and permissions in a SageMaker Domain. It stores user-specific configurations, including execution roles, security groups, and custom settings. User Profiles control access to SageMaker resources and define user-specific environments, ensuring proper isolation and resource allocation for machine learning projects." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/domain-user-profile.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "profile", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:user-profile/{name}"} # fmt: skip @@ -2594,11 +2560,8 @@ 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] = "AWS SageMaker Pipeline is a feature of Amazon SageMaker that automates and manages machine learning workflows. It defines a series of interconnected steps for data processing, model training, and deployment. Users can create reusable templates, track lineage, and version their ML pipelines. It integrates with other AWS services and supports both code-based and visual interfaces." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:pipeline/{name}"} # fmt: skip @@ -2732,11 +2695,8 @@ 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] = "AWS SageMaker Workteam is a feature of Amazon SageMaker that manages human workforce for data labeling tasks. It provides tools to create, organize, and monitor labeling jobs using Amazon Mechanical Turk, third-party vendors, or private workforce. Users can set up labeling projects, distribute tasks, track progress, and integrate labeled data into machine learning workflows within the SageMaker ecosystem." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:workteam/{name}"} # fmt: skip @@ -2811,11 +2771,8 @@ 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] = "AWS SageMaker Job is a managed service for executing machine learning workflows. It automates the process of training, testing, and deploying models at scale. Users can configure and run jobs for data preprocessing, model training, and evaluation. The service handles resource provisioning, data management, and job monitoring, simplifying the end-to-end machine learning pipeline for data scientists and developers." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/processing-job.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "ai"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:job/{id}"} # fmt: skip @@ -3140,10 +3097,9 @@ class AwsSagemakerModelDeployConfig: class AwsSagemakerAutoMLJob(AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_auto_ml_job" _kind_display: ClassVar[str] = "AWS SageMaker Auto ML 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] = "AWS SageMaker Auto ML Job is a feature that automates machine learning model development. It handles data preprocessing, algorithm selection, and hyperparameter tuning. Users input their dataset and specify the target variable. The system then trains and evaluates multiple models, providing the best-performing one. This reduces the time and expertise required for creating machine learning models." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development.html" ) _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:automl-job/{name}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { @@ -3348,11 +3304,8 @@ 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] = "AWS SageMaker Compilation Job is a service that optimizes machine learning models for specific target hardware. It converts models trained in SageMaker or other platforms into an executable format, reducing the model's size and improving inference performance. This process adapts the model for deployment on various devices, from cloud instances to edge devices with limited resources." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/neo-job-compilation.html" _kind_service = service_name _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:compilation-job/{name}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { @@ -3822,11 +3775,8 @@ class AwsSagemakerHyperParameterTuningJobWarmStartConfig: class AwsSagemakerHyperParameterTuningJob(SagemakerTaggable, AwsSagemakerJob): kind: ClassVar[str] = "aws_sagemaker_hyper_parameter_tuning_job" _kind_display: ClassVar[str] = "AWS SageMaker Hyper Parameter 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] = "AWS SageMaker Hyperparameter Tuning Job automates the process of finding optimal hyperparameters for machine learning models. It runs multiple training jobs with different hyperparameter combinations, evaluates model performance, and selects the best-performing configuration. This service helps data scientists and developers improve model accuracy and efficiency without manually testing numerous parameter sets." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning.html" _kind_service = service_name _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:hyperparameter-tuning-job/{id}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { @@ -4289,11 +4239,8 @@ 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] = ( - "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." - ) + _kind_description: ClassVar[str] = "AWS SageMaker Inference Recommendations Job is a feature that analyzes machine learning models and suggests optimal configurations for deployment. It evaluates model performance across different instance types and sizes, considering factors like latency and throughput. The job provides recommendations for instance selection and endpoint configuration to optimize cost and performance for inference workloads." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/inference-recommender.html" _kind_service = service_name _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:transform-job/{name}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { @@ -4640,10 +4587,8 @@ 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] = "AWS SageMaker Labeling Job is a feature within Amazon SageMaker that facilitates data labeling for machine learning projects. It provides tools for creating, managing, and monitoring labeling tasks. Users can assign work to human annotators, track progress, and review results. The service supports various data types including images, text, and audio for classification and object detection tasks." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/sms.html" _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:labeling-job/{name}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -5037,11 +4982,8 @@ 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] = "AWS SageMaker Processing Job is a feature that runs data processing, feature engineering, and model evaluation tasks on Amazon SageMaker. It provides a managed environment to execute scripts for data preparation, algorithm fine-tuning, and post-training analysis. Users can specify input data, output locations, and compute resources for their processing tasks within the SageMaker ecosystem." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/processing-job.html" _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:processing-job/{id}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -5442,10 +5384,8 @@ 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] = "AWS SageMaker Training Job is a service that trains machine learning models using specified algorithms and datasets. It provisions and manages the necessary compute resources, executes the training process, and stores the resulting model artifacts. Users can configure training parameters, input data sources, and output locations. The service supports various machine learning frameworks and algorithms." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/train-model.html" _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:sagemaker-training-job/{id}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -5686,11 +5626,8 @@ 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] = "AWS SageMaker Transform Job is a batch processing feature that applies machine learning models to large datasets. It takes input data, processes it through a trained model, and generates predictions or inferences. Transform Jobs can handle various data formats, distribute workloads across multiple instances, and output results to specified locations, facilitating efficient large-scale data processing and analysis." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform.html" _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sagemaker:{region}:{account}:transform-job/{name}"} # fmt: skip _reference_kinds: ClassVar[ModelReference] = { "predecessors": { diff --git a/plugins/aws/fix_plugin_aws/resource/secretsmanager.py b/plugins/aws/fix_plugin_aws/resource/secretsmanager.py index ad0c53b034..7303962d3d 100644 --- a/plugins/aws/fix_plugin_aws/resource/secretsmanager.py +++ b/plugins/aws/fix_plugin_aws/resource/secretsmanager.py @@ -31,7 +31,8 @@ class AwsSecretsManagerSecret(AwsResource): kind: ClassVar[str] = "aws_secretsmanager_secret" api_spec: ClassVar[AwsApiSpec] = AwsApiSpec(service_name, "list-secrets", "SecretList") _kind_display: ClassVar[str] = "AWS Secrets Manager Secret" - _kind_description: ClassVar[str] = "An AWS Secrets Manager Secret is used for securely storing and managing sensitive information, such as passwords, API keys, and database credentials, in AWS environments." # fmt: skip + _kind_description: ClassVar[str] = "AWS Secrets Manager Secret is a secure storage service for sensitive information like passwords, API keys, and database credentials. It encrypts and manages secrets, rotates them automatically, and provides access control. Applications and services can retrieve secrets programmatically, reducing the risk of exposing sensitive data in code or configuration files." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": [AwsKmsKey.kind]}} _metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "access_control"} diff --git a/plugins/aws/fix_plugin_aws/resource/service_quotas.py b/plugins/aws/fix_plugin_aws/resource/service_quotas.py index 02168fd0d0..682a20a8e0 100644 --- a/plugins/aws/fix_plugin_aws/resource/service_quotas.py +++ b/plugins/aws/fix_plugin_aws/resource/service_quotas.py @@ -67,10 +67,8 @@ class AwsServiceQuota(AwsResource, BaseQuota): kind: ClassVar[str] = "aws_service_quota" _kind_display: ClassVar[str] = "AWS Service Quota" _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/servicequotas/home/services/{source.ServiceCode}/quotas/{id}", "arn_tpl": "arn:{partition}:service-quotas:{region}:{account}:quotas/{id}"} # fmt: skip - _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 manages and tracks usage limits for AWS resources across an account or organization. It provides a centralized view of quotas, lets users request increases, and monitors quota utilization. The service helps prevent resource overuse, ensures compliance with AWS limits, and supports capacity planning for applications and workloads running on AWS." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "successors": { diff --git a/plugins/aws/fix_plugin_aws/resource/sns.py b/plugins/aws/fix_plugin_aws/resource/sns.py index f83e35ff17..141b1547c6 100644 --- a/plugins/aws/fix_plugin_aws/resource/sns.py +++ b/plugins/aws/fix_plugin_aws/resource/sns.py @@ -20,12 +20,8 @@ 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 Topic is a messaging service that facilitates communication between distributed systems, applications, and microservices. It implements a publish-subscribe model, where publishers send messages to topics and subscribers receive those messages. SNS supports multiple protocols for message delivery, including HTTP, email, SMS, and mobile push notifications, making it useful for various notification scenarios." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "queue", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/sns/v3/home?region={region}#/topic/{arn}", "arn_tpl": "arn:{partition}:sns:{region}:{account}:{name}"} # fmt: skip @@ -176,11 +172,8 @@ 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] = "AWS SNS Subscription is a feature of Amazon Simple Notification Service that lets users receive messages from SNS topics. It supports multiple protocols, including email, SMS, HTTP/S, and AWS Lambda. Subscribers can filter messages based on attributes, ensuring they only receive relevant information. SNS Subscription facilitates message delivery across distributed systems and applications." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/sns/v3/home?region={region}#/topic/{arn}", "arn_tpl": "arn:{partition}:sns:{region}:{account}:{name}"} # fmt: skip @@ -265,11 +258,8 @@ 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] = "AWS SNS Endpoint is a destination for Amazon Simple Notification Service (SNS) messages. It represents a specific target where notifications are sent, such as mobile devices, email addresses, or web servers. SNS Endpoints receive messages published to SNS topics, facilitating the distribution of information across various platforms and applications within AWS infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sns/latest/dg/sns-create-endpoint.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sns:{region}:{account}:endpoint/{id}"} # fmt: skip @@ -299,11 +289,8 @@ 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 component of Amazon Simple Notification Service that facilitates message delivery to mobile devices. It represents a specific mobile platform, such as iOS or Android, and manages the credentials required to send push notifications to devices on that platform. It handles authentication and communication with platform-specific notification services." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/sns/latest/dg/sns-mobile-application-as-subscriber.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:sns:{region}:{account}:platform-application/{name}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/sqs.py b/plugins/aws/fix_plugin_aws/resource/sqs.py index c586ca1f5d..52e1db3472 100644 --- a/plugins/aws/fix_plugin_aws/resource/sqs.py +++ b/plugins/aws/fix_plugin_aws/resource/sqs.py @@ -38,11 +38,8 @@ class AwsSqsRedrivePolicy: class AwsSqsQueue(AwsResource, BaseQueue): 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] = "AWS SQS Queue is a managed message queuing service that facilitates communication between distributed system components. It stores messages from producers and delivers them to consumers, ensuring reliable data transfer. SQS supports multiple messaging patterns, including point-to-point and publish-subscribe, and handles message retention, delivery, and deletion. It integrates with other AWS services for building decoupled applications." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "queue", "group": "compute"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/sqs/v3/home?region={region}#/queues/{QueueUrl}", "arn_tpl": "arn:{partition}:sqs:{region}:{account}:{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/ssm.py b/plugins/aws/fix_plugin_aws/resource/ssm.py index b1873cf405..dd823f9575 100644 --- a/plugins/aws/fix_plugin_aws/resource/ssm.py +++ b/plugins/aws/fix_plugin_aws/resource/ssm.py @@ -35,7 +35,8 @@ class AwsSSMInstanceAggregatedAssociationOverview: class AwsSSMInstance(AwsResource): kind: ClassVar[str] = "aws_ssm_instance" _kind_display: ClassVar[str] = "AWS SSM Instance" - _kind_description: ClassVar[str] = "An AWS SSM Instance refers to an EC2 instance or a managed node that has been configured for management by AWS Systems Manager, enabling centralized and automated management of configuration, security, and software updates." # fmt: skip + _kind_description: ClassVar[str] = "AWS Systems Manager (SSM) Instance is a managed service that provides visibility and control over AWS infrastructure. It automates operational tasks, manages configuration, and maintains security compliance across EC2 instances and on-premises servers. SSM Instance collects system data, applies patches, executes commands, and configures instances according to defined policies, simplifying IT operations and enhancing system management capabilities." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/systems-manager/latest/userguide/managed_instances.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/systems-manager/fleet-manager/managed-nodes/{id}/general?region={region}", "arn_tpl": "arn:{partition}:ssm:{region}:{account}:instance/{name}"} # fmt: skip @@ -152,7 +153,8 @@ class AwsSSMAccountSharingInfo: class AwsSSMDocument(AwsResource): kind: ClassVar[str] = "aws_ssm_document" _kind_display: ClassVar[str] = "AWS SSM Document" - _kind_description: ClassVar[str] = "An AWS Systems Manager (SSM) Document defines the actions that Systems Manager performs on your managed instances and other AWS resources." # fmt: skip + _kind_description: ClassVar[str] = "An AWS SSM Document is a configuration file that defines a set of actions to be performed on managed instances. It specifies tasks like installing software, configuring settings, or running scripts. SSM Documents can be created in JSON or YAML format and are used by AWS Systems Manager to automate system management and maintenance tasks across multiple instances." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/systems-manager/documents/{name}/description?region={region}", "arn_tpl": "arn:{partition}:ssm:{region}:{account}:document/{name}"} # fmt: skip @@ -352,7 +354,10 @@ class AwsSSMNonCompliantSummary: class AwsSSMResourceCompliance(AwsResource): kind: ClassVar[str] = "aws_ssm_resource_compliance" _kind_display: ClassVar[str] = "AWS SSM Resource Compliance" - _kind_description: ClassVar[str] = "AWS SSM Resource Compliance is used to track the compliance status of your resources in relation to your AWS Systems Manager (SSM) configurations and policies." # fmt: skip + _kind_description: ClassVar[str] = "AWS SSM Resource Compliance is a feature within AWS Systems Manager that evaluates and reports on the compliance status of AWS resources. It checks resources against predefined or custom rules, identifying non-compliant configurations and security issues. Users can view compliance data, generate reports, and take corrective actions to maintain resource adherence to organizational standards and best practices." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-compliance-about.html" + ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "management"} _aws_metadata: ClassVar[Dict[str, Any]] = {"arn_tpl": "arn:{partition}:ssm:{region}:{account}:resource-compliance/{id}"} # fmt: skip diff --git a/plugins/aws/fix_plugin_aws/resource/waf.py b/plugins/aws/fix_plugin_aws/resource/waf.py index 5215f6543a..a87b444384 100644 --- a/plugins/aws/fix_plugin_aws/resource/waf.py +++ b/plugins/aws/fix_plugin_aws/resource/waf.py @@ -800,7 +800,8 @@ class AwsWafLoggingConfiguration: class AwsWafWebACL(AwsResource, BaseFirewall): kind: ClassVar[str] = "aws_waf_web_acl" _kind_display: ClassVar[str] = "AWS WAF Web ACL" - _kind_description: ClassVar[str] = "An AWS WAF Web ACL (Web Access Control List) is used for monitoring HTTP and HTTPS requests directed to AWS resources, allowing you to control access by permitting or blocking specific requests based on defined criteria." # fmt: skip + _kind_description: ClassVar[str] = "AWS WAF Web ACL is a security tool that protects web applications from common attacks. It filters incoming web traffic based on customizable rules, blocking malicious requests and permitting legitimate ones. Users can define conditions to inspect various aspects of HTTP requests, such as IP addresses, headers, and content, to control access to their web resources." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "access_control", "group": "networking"} _aws_metadata: ClassVar[Dict[str, Any]] = {"provider_link_tpl": "https://{region_id}.console.aws.amazon.com/wafv2/homev2/web-acl/{name}/{id}/overview?region={region}", "arn_tpl": "arn:{partition}:wafv2:{region}:{account}:webacl/{id}"} # fmt: skip diff --git a/plugins/azure/fix_plugin_azure/resource/authorization.py b/plugins/azure/fix_plugin_azure/resource/authorization.py index aad1c0416b..fbf8941178 100644 --- a/plugins/azure/fix_plugin_azure/resource/authorization.py +++ b/plugins/azure/fix_plugin_azure/resource/authorization.py @@ -65,6 +65,8 @@ class AzureAuthorizationDenyAssignment(MicrosoftResource): kind: ClassVar[str] = "azure_authorization_deny_assignment" _kind_display: ClassVar[str] = "Azure Authorization Deny Assignment" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Authorization Deny Assignment is a feature in Azure's Role-Based Access Control (RBAC) system. It creates explicit restrictions on resource access, overriding existing permissions. Deny Assignments prevent specified users, groups, or service principals from performing certain actions on resources, even if a role assignment grants them access. This helps enforce stricter access control policies in Azure environments." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/role-based-access-control/deny-assignments" _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "access_control"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service=service_name, @@ -118,6 +120,10 @@ class AzureAuthorizationRoleAssignment(MicrosoftResource): kind: ClassVar[str] = "azure_authorization_role_assignment" _kind_display: ClassVar[str] = "Azure Authorization Role Assignment" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Authorization Role Assignment is a security feature in Azure that controls access to resources. It grants specific permissions to users, groups, or applications within Azure subscriptions and resource groups. By assigning roles, administrators define what actions can be performed on Azure resources, ensuring proper access management and adherence to the principle of least privilege." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/role-based-access-control/role-assignments-portal" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "access_control"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service=service_name, @@ -225,6 +231,8 @@ class AzureAuthorizationRoleDefinition(MicrosoftResource, BaseRole): kind: ClassVar[str] = "azure_authorization_role_definition" _kind_display: ClassVar[str] = "Azure Authorization Role Definition" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Authorization Role Definition is a security component in Microsoft Azure that specifies a set of permissions for accessing and managing Azure resources. It defines what actions users or applications can perform on specific resources within a subscription or resource group. Role definitions are used to implement role-based access control (RBAC) in Azure environments." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/role-based-access-control/role-definitions" _metadata: ClassVar[Dict[str, Any]] = {"icon": "role", "group": "access_control"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service=service_name, @@ -264,6 +272,10 @@ class AzureAuthorizationManagementLock(MicrosoftResource): kind: ClassVar[str] = "azure_authorization_management_lock" _kind_display: ClassVar[str] = "Azure Authorization Management Lock" _kind_service: ClassVar[Optional[str]] = "resources" + _kind_description: ClassVar[str] = "Azure Authorization Management Lock is a security feature in Microsoft Azure that prevents accidental deletion or modification of resources. It applies restrictions at the subscription or resource group level, ensuring critical assets remain protected from unauthorized changes. Users with appropriate permissions can configure locks to either prevent deletion or block all modifications to specified resources." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/lock-resources" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "lock", "group": "access_control"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": [MicrosoftResource.kind]}} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( diff --git a/plugins/azure/fix_plugin_azure/resource/base.py b/plugins/azure/fix_plugin_azure/resource/base.py index 8a6ef2fd67..ead4d6b60a 100644 --- a/plugins/azure/fix_plugin_azure/resource/base.py +++ b/plugins/azure/fix_plugin_azure/resource/base.py @@ -309,6 +309,8 @@ class AzureLocation(MicrosoftResource, BaseRegion): kind: ClassVar[str] = "azure_location" _kind_display: ClassVar[str] = "Azure Location" _kind_service: ClassVar[str] = "resources" + _kind_description: ClassVar[str] = "Azure Location is a geographic area containing one or more Azure data centers. It represents a specific region where customers can deploy and run their cloud resources. Azure Locations provide options for data residency, compliance, and reduced latency by allowing users to choose where their applications and data are stored and processed within Microsoft's global infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/regions" _metadata: ClassVar[Dict[str, Any]] = {"icon": "region", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="resources", @@ -345,6 +347,10 @@ class AzureResourceGroup(MicrosoftResource, BaseGroup): kind: ClassVar[str] = "azure_resource_group" _kind_display: ClassVar[str] = "Azure Resource Group" _kind_service: ClassVar[str] = "resources" + _kind_description: ClassVar[str] = "An Azure Resource Group is a container for organizing and managing related Azure resources. It serves as a logical unit for grouping services, applications, and infrastructure components within a single Azure subscription. Resource Groups help users control access, track costs, and apply policies across multiple resources, simplifying administration and deployment of cloud-based solutions." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-portal" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="resources", @@ -548,6 +554,10 @@ class AzureSubscription(MicrosoftResource, BaseAccount): kind: ClassVar[str] = "azure_subscription" _kind_display: ClassVar[str] = "Azure Subscription" _kind_service: ClassVar[str] = "resources" + _kind_description: ClassVar[str] = "An Azure Subscription is a logical container for organizing and managing Microsoft Azure resources. It provides access to cloud services and defines usage limits and billing arrangements. Users can create, deploy, and control Azure resources within their subscription, while Microsoft tracks resource consumption and generates invoices based on the subscription's payment model." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/create-subscription" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "account", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="resources", diff --git a/plugins/azure/fix_plugin_azure/resource/compute.py b/plugins/azure/fix_plugin_azure/resource/compute.py index 9f5d8ed98a..9d5d6d6c87 100644 --- a/plugins/azure/fix_plugin_azure/resource/compute.py +++ b/plugins/azure/fix_plugin_azure/resource/compute.py @@ -69,6 +69,8 @@ class AzureComputeAvailabilitySet(MicrosoftResource): kind: ClassVar[str] = "azure_compute_availability_set" _kind_display: ClassVar[str] = "Azure Compute Availability Set" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Availability Set is a feature that groups virtual machines to distribute them across multiple physical servers, racks, storage units, and network switches. This configuration helps maintain service continuity during planned maintenance or hardware failures by ensuring that at least one virtual machine remains operational, reducing downtime and improving overall reliability for applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/availability-set-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -124,6 +126,8 @@ class AzureComputeCapacityReservationGroup(MicrosoftResource): kind: ClassVar[str] = "azure_compute_capacity_reservation_group" _kind_display: ClassVar[str] = "Azure Compute Capacity Reservation Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Capacity Reservation Group is a feature that lets users reserve virtual machine capacity in advance for specific Azure regions and availability zones. It ensures that the reserved resources are available when needed, helping to maintain consistent performance and reduce deployment delays for critical workloads during periods of high demand or limited capacity." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/capacity-reservation-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -300,6 +304,8 @@ class AzureComputeCloudService(MicrosoftResource): kind: ClassVar[str] = "azure_compute_cloud_service" _kind_display: ClassVar[str] = "Azure Compute Cloud Service" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Cloud Service is a Platform as a Service (PaaS) offering from Microsoft Azure. It provides a hosting environment for applications without the need to manage underlying infrastructure. Users can deploy, manage, and scale applications using virtual machines that run on Microsoft's data centers, with automatic OS and security updates." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cloud-services/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "service", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -355,6 +361,8 @@ class AzureComputeDedicatedHostGroup(MicrosoftResource): kind: ClassVar[str] = "azure_compute_dedicated_host_group" _kind_display: ClassVar[str] = "Azure Compute Dedicated Host Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Dedicated Host Group is a logical grouping of isolated physical servers in Azure that host virtual machines. It provides control over the underlying hardware, ensuring compliance with specific regulatory or security requirements. Users can manage and allocate resources within the group, offering flexibility in VM placement and hardware isolation for workloads." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/dedicated-hosts" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -721,6 +729,8 @@ class AzureComputeDiskTypePricing(MicrosoftResource): kind: ClassVar[str] = "azure_compute_disk_type_pricing" _kind_display: ClassVar[str] = "Azure Compute Disk Type Pricing" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Disk Type Pricing refers to the cost structure for different storage options available for virtual machines in Microsoft Azure. It outlines the prices for various disk types, including Standard HDD, Standard SSD, and Premium SSD, based on their performance characteristics, capacity, and usage. This pricing model helps users select appropriate storage solutions for their workloads." # fmt: skip + _docs_url: ClassVar[str] = "https://azure.microsoft.com/en-us/pricing/details/managed-disks/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "misc"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -746,6 +756,8 @@ class AzureComputeDiskType(MicrosoftResource, BaseVolumeType): kind: ClassVar[str] = "azure_compute_disk_type" _kind_display: ClassVar[str] = "Azure Compute Disk Type" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Disk Types are storage options for virtual machines in Microsoft Azure. They provide persistent block storage for data and applications. Users can choose from different disk types, including standard HDD, standard SSD, and premium SSD, each offering varying performance levels and capacities to meet specific workload requirements and budget constraints." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/disks-types" _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "storage"} # Collect via AzureComputeDisk() mapping: ClassVar[Dict[str, Bender]] = { @@ -930,6 +942,8 @@ class AzureComputeDisk(MicrosoftResource, BaseVolume): kind: ClassVar[str] = "azure_compute_disk" _kind_display: ClassVar[str] = "Azure Compute Disk" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Disk is a storage service for virtual machines in Microsoft Azure. It provides persistent block storage for Azure VMs, offering various disk types with different performance levels and capacities. Users can select disk options based on their workload requirements, attach multiple disks to VMs, and manage data storage and retrieval for their cloud-based applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/managed-disks-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "volume", "group": "storage"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -1185,6 +1199,8 @@ class AzureComputeDiskAccess(MicrosoftResource): kind: ClassVar[str] = "azure_compute_disk_access" _kind_display: ClassVar[str] = "Azure Compute Disk Access" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Disk Access is a feature that manages access to Azure managed disks. It provides granular control over disk operations, including read, write, and delete actions. This service enhances security by restricting disk access to authorized virtual machines and users, reducing potential vulnerabilities and improving data protection in Azure cloud environments." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/disks-types#disk-access" _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "storage"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -1273,6 +1289,8 @@ class AzureComputeDiskEncryptionSet(MicrosoftResource): kind: ClassVar[str] = "azure_compute_disk_encryption_set" _kind_display: ClassVar[str] = "Azure Compute Disk Encryption Set" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Disk Encryption Set is a resource that manages encryption keys for Azure virtual machine disks. It provides centralized control over key management and encryption settings for multiple disks. Users can apply consistent encryption policies across their VM infrastructure, enhancing data protection and compliance with security standards." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/disk-encryption-sets" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -1374,6 +1392,8 @@ class AzureComputeGallery(MicrosoftResource): kind: ClassVar[str] = "azure_compute_gallery" _kind_display: ClassVar[str] = "Azure Compute Gallery" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Gallery is a service for storing and managing virtual machine images and related artifacts. It provides a central repository for sharing, versioning, and replicating images across Azure regions and subscriptions. Users can create and maintain custom images, distribute them to different teams, and deploy virtual machines from these shared resources." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/shared-image-galleries" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -1449,6 +1469,8 @@ class AzureComputeImage(MicrosoftResource): kind: ClassVar[str] = "azure_compute_image" _kind_display: ClassVar[str] = "Azure Compute Image" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Image is a template for virtual machines in Microsoft Azure. It contains a pre-configured operating system and software stack. Users can create and deploy multiple identical virtual machines from a single image, saving time on installation and configuration. Images can be customized and shared across an organization or made available in the Azure Marketplace." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/image-version" _metadata: ClassVar[Dict[str, Any]] = {"icon": "image", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -1496,6 +1518,8 @@ class AzureComputeProximityPlacementGroup(MicrosoftResource): kind: ClassVar[str] = "azure_compute_proximity_placement_group" _kind_display: ClassVar[str] = "Azure Compute Proximity Placement Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Proximity Placement Group is a feature that groups virtual machines within a single Azure datacenter. It minimizes network latency between VMs by placing them physically close to each other. This configuration improves performance for applications that require low-latency communication between components, such as high-performance computing or tightly coupled distributed systems." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/co-location" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -2016,6 +2040,8 @@ class AzureComputeRestorePointCollection(MicrosoftResource): kind: ClassVar[str] = "azure_compute_restore_point_collection" _kind_display: ClassVar[str] = "Azure Compute Restore Point Collection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Restore Point Collection is a feature in Microsoft Azure that stores multiple restore points for virtual machines. It provides a way to capture and manage VM states at specific times, facilitating quick recovery or rollback to previous configurations. This collection helps users maintain system consistency and recover from errors or unwanted changes efficiently." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/restore-point-collections" _metadata: ClassVar[Dict[str, Any]] = {"icon": "snapshot", "group": "storage"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -2071,6 +2097,8 @@ class AzureComputeVirtualMachineSnapshot(MicrosoftResource, BaseSnapshot): kind: ClassVar[str] = "azure_compute_virtual_machine_snapshot" _kind_display: ClassVar[str] = "Azure Compute Virtual Machine Snapshot" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Virtual Machine Snapshot is a feature that creates point-in-time copies of virtual machine disks. It captures the disk's data state at a specific moment, including all files and system settings. These snapshots can be used for backup, disaster recovery, or to create new virtual machines with the same configuration and data as the original." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/snapshot-copy-managed-disk" _metadata: ClassVar[Dict[str, Any]] = {"icon": "snapshot", "group": "storage"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -2162,6 +2190,8 @@ class AzureComputeSshPublicKey(MicrosoftResource, BaseKeyPair): kind: ClassVar[str] = "azure_compute_ssh_public_key" _kind_display: ClassVar[str] = "Azure Compute SSH Public Key" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute SSH Public Key is a cryptographic key used for secure authentication when connecting to Azure virtual machines via SSH. It provides a more secure alternative to password-based authentication, reducing the risk of unauthorized access. Users can generate or import SSH key pairs and associate them with Azure VMs for remote access and management." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/linux/ssh-keys-portal" _metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -2801,6 +2831,8 @@ class AzureComputeVirtualMachineBase(MicrosoftResource, BaseInstance): kind: ClassVar[str] = "azure_compute_virtual_machine_base" _kind_display: ClassVar[str] = "Azure Compute Virtual Machine Base" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Virtual Machine Base is a foundational service in Microsoft Azure that provides virtual machines for computing tasks. It offers a range of virtual machine sizes and types, supporting various operating systems and workloads. Users can create, manage, and scale virtual machines to run applications, host services, and perform computational operations in the cloud environment." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "compute"} _reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -3096,6 +3128,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class AzureComputeVirtualMachine(AzureComputeVirtualMachineBase): kind: ClassVar[str] = "azure_compute_virtual_machine" _kind_display: ClassVar[str] = "Azure Compute Virtual Machine" + _kind_description: ClassVar[str] = "Azure Compute Virtual Machine is a cloud service that provides on-demand, configurable computing resources. It offers Windows or Linux-based virtual machines that run on Microsoft's infrastructure. Users can select from various machine sizes and types, install custom software, and manage their VMs remotely. These VMs support diverse workloads, from development and testing to running applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/" api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", version="2023-03-01", @@ -3548,6 +3582,8 @@ class AzureComputeVirtualMachineScaleSet(MicrosoftResource, BaseAutoScalingGroup kind: ClassVar[str] = "azure_compute_virtual_machine_scale_set" _kind_display: ClassVar[str] = "Azure Compute Virtual Machine Scale Set" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Virtual Machine Scale Set is a service that manages and scales multiple identical virtual machines. It automates the creation, updating, and deletion of VMs based on demand or schedules. The service distributes traffic, handles load balancing, and integrates with Azure monitoring tools to maintain performance and availability across the scaled instances." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machine-scale-sets/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "autoscaling_group", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="compute", @@ -3678,6 +3714,8 @@ class AzureComputeVirtualMachineSize(MicrosoftResource, BaseInstanceType): kind: ClassVar[str] = "azure_compute_virtual_machine_size" _kind_display: ClassVar[str] = "Azure Compute Virtual Machine Size" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Compute Virtual Machine Size refers to the configuration options for virtual machines in Microsoft Azure. It defines the CPU, memory, storage, and networking capacity allocated to a VM. Users can select from various predefined sizes or customize specifications to match their workload requirements, balancing performance and cost considerations for their cloud computing needs." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machines/sizes" _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "compute"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("name"), @@ -3724,6 +3762,8 @@ class AzureComputeVirtualMachineScaleSetInstance(AzureComputeVirtualMachineBase) kind: ClassVar[str] = "azure_compute_virtual_machine_scale_set_instance" _kind_display: ClassVar[str] = "Azure Compute Virtual Machine Scale Set Instance" + _kind_description: ClassVar[str] = "Azure Compute Virtual Machine Scale Set Instance is a component of Microsoft Azure's cloud infrastructure. It creates and manages a group of identical, load-balanced virtual machines that can automatically increase or decrease in number based on demand or defined rules. This service helps distribute workloads and maintain application availability during fluctuations in resource requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-machine-scale-sets/" resources: List[Type[MicrosoftResource]] = [ diff --git a/plugins/azure/fix_plugin_azure/resource/containerservice.py b/plugins/azure/fix_plugin_azure/resource/containerservice.py index 5248853cf2..564b83fb42 100644 --- a/plugins/azure/fix_plugin_azure/resource/containerservice.py +++ b/plugins/azure/fix_plugin_azure/resource/containerservice.py @@ -67,6 +67,8 @@ class AzureContainerServiceFleet(MicrosoftResource): kind: ClassVar[str] = "azure_container_service_fleet" _kind_display: ClassVar[str] = "Azure Container Service Fleet" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Container Service Fleet is a management tool for containerized applications across multiple Azure Kubernetes Service (AKS) clusters. It provides centralized control for deploying, updating, and monitoring applications in different environments or regions. The service offers consistent application management, resource optimization, and unified governance for large-scale Kubernetes deployments within Azure." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/container-apps/fleet-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "managed_kubernetes"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="containerservice", @@ -750,6 +752,8 @@ class AzureContainerServiceManagedCluster(MicrosoftResource, BaseManagedKubernet kind: ClassVar[str] = "azure_container_service_managed_cluster" _kind_display: ClassVar[str] = "Azure Container Service Managed Cluster" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Container Service Managed Cluster is a Kubernetes-based container orchestration platform offered by Microsoft Azure. It automates the deployment, scaling, and management of containerized applications. The service handles cluster provisioning, upgrades, and monitoring, while providing integration with Azure services for networking, storage, and security. Users can focus on application development and deployment without managing the underlying infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/aks/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "managed_kubernetes"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="containerservice", @@ -895,6 +899,8 @@ class AzureContainerServiceManagedClusterSnapshot(MicrosoftResource, BaseSnapsho kind: ClassVar[str] = "azure_container_service_managed_cluster_snapshot" _kind_display: ClassVar[str] = "Azure Container Service Managed Cluster Snapshot" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Container Service Managed Cluster Snapshot is a feature that creates point-in-time copies of Azure Kubernetes Service (AKS) clusters. It captures the cluster's configuration, workloads, and associated resources. These snapshots can be used for backup, disaster recovery, or to replicate cluster environments. Users can restore clusters to previous states or create new clusters from snapshots." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/aks/managed-cluster-snapshot" _metadata: ClassVar[Dict[str, Any]] = {"icon": "snapshot", "group": "managed_kubernetes"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="containerservice", diff --git a/plugins/azure/fix_plugin_azure/resource/cosmosdb.py b/plugins/azure/fix_plugin_azure/resource/cosmosdb.py index 31fdff24ed..10258e1f1b 100644 --- a/plugins/azure/fix_plugin_azure/resource/cosmosdb.py +++ b/plugins/azure/fix_plugin_azure/resource/cosmosdb.py @@ -166,6 +166,8 @@ class AzureCosmosDBCassandraClusterPublicStatus(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_cassandra_cluster_public_status" _kind_display: ClassVar[str] = "Azure Cosmos DB Cassandra Cluster Public Status" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Cassandra Cluster Public Status is a monitoring feature that displays the current operational condition of Cassandra clusters within Azure Cosmos DB. It provides real-time information about cluster health, availability, and performance metrics. Users can check this status to assess service reliability, identify potential issues, and make informed decisions about their database operations." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/cassandra/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "database"} # Collect via AzureCosmosDBCassandraCluster() mapping: ClassVar[Dict[str, Bender]] = { @@ -230,6 +232,8 @@ class AzureCosmosDBCassandraKeyspace(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_cassandra_keyspace" _kind_display: ClassVar[str] = "Azure Cosmos DB Cassandra Keyspace" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Cassandra Keyspace is a container within Azure Cosmos DB that organizes data for Apache Cassandra workloads. It functions as a namespace for tables and provides a logical grouping for related data. Users can create, manage, and query keyspaces using Cassandra Query Language (CQL), maintaining compatibility with existing Cassandra applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/cassandra/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -323,6 +327,8 @@ class AzureCosmosDBCassandraTable(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_cassandra_table" _kind_display: ClassVar[str] = "Azure Cosmos DB Cassandra Table" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Cassandra Table is a feature within Azure Cosmos DB that provides compatibility with Apache Cassandra. It offers a distributed database solution for applications using Cassandra Query Language (CQL) and protocols. Users can store and manage data in a table format, benefiting from Azure Cosmos DB's global distribution and performance capabilities while maintaining Cassandra-like operations." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/cassandra/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBCassandraKeyspace() mapping: ClassVar[Dict[str, Bender]] = { @@ -371,6 +377,8 @@ class AzureCosmosDBSqlDatabaseClientEncryptionKey(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_sql_database_client_encryption_key" _kind_display: ClassVar[str] = "Azure Cosmos DB SQL Database Client Encryption Key" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB SQL Database Client Encryption Key is a security feature that encrypts sensitive data on the client side before sending it to the database. It provides an additional layer of protection for confidential information by ensuring data remains encrypted at rest and in transit, with decryption occurring only on authorized clients using the specified encryption key." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/how-to-setup-client-side-encryption" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBSqlDatabase() mapping: ClassVar[Dict[str, Bender]] = { @@ -400,6 +408,8 @@ class AzureCosmosDBCassandraCluster(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_cassandra_cluster" _kind_display: ClassVar[str] = "Azure Cosmos DB Cassandra Cluster" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Cassandra Cluster is a managed service that provides Apache Cassandra-compatible storage within the Azure cloud platform. It offers distributed NoSQL database capabilities, supporting multi-region writes and reads. Users can deploy and operate Cassandra workloads on Azure infrastructure while maintaining compatibility with existing Cassandra applications and tools." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/cassandra/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="cosmos-db", @@ -564,6 +574,10 @@ class AzureCosmosDBCassandraClusterDataCenter(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_cassandra_cluster_data_center" _kind_display: ClassVar[str] = "Azure Cosmos DB Cassandra Cluster Data Center" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Cassandra Cluster Data Center is a managed service within Microsoft's Azure cloud platform. It provides a distributed database system compatible with Apache Cassandra, offering multi-region replication and automatic scaling. The service handles data storage, querying, and management tasks, supporting applications that require low-latency access and global data distribution." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/cosmos-db/cassandra/manage-data-centers-multi-region" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} # Collect via AzureCosmosDBCassandraCluster() _reference_kinds: ClassVar[ModelReference] = { @@ -788,6 +802,8 @@ class AzureCosmosDBAccount(MicrosoftResource, BaseDatabase): kind: ClassVar[str] = "azure_cosmos_db_account" _kind_display: ClassVar[str] = "Azure Cosmos DB Account" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Account is a cloud-based database service offered by Microsoft Azure. It provides a globally distributed, multi-model database platform for storing and managing data. Users can create and manage databases, containers, and items within the account. It supports multiple APIs, including SQL, MongoDB, Cassandra, Gremlin, and Table, offering flexibility for various application needs." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "account", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="cosmos-db", @@ -1080,6 +1096,8 @@ class AzureCosmosDBGremlinDatabase(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_gremlin_database" _kind_display: ClassVar[str] = "Azure Cosmos DB Gremlin Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Gremlin Database is a graph database service within Microsoft's Azure cloud platform. It supports the Apache TinkerPop Gremlin API for storing and querying graph data. Users can model complex relationships between entities, perform traversals, and execute graph operations. The service offers global distribution and multi-region writes for graph data workloads." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/gremlin/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -1253,6 +1271,8 @@ class AzureCosmosDBGremlinGraph(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_gremlin_graph" _kind_display: ClassVar[str] = "Azure Cosmos DB Gremlin Graph" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Gremlin Graph is a graph database service within Microsoft's Azure cloud platform. It supports the Apache TinkerPop graph traversal language and Gremlin API for storing and querying graph data. Users can model complex relationships between entities, perform graph queries, and manage data with global distribution and automatic scaling capabilities." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/gremlin/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBGremlinDatabase() mapping: ClassVar[Dict[str, Bender]] = { @@ -1316,6 +1336,8 @@ class AzureCosmosDBMongoDBCollection(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_mongo_db_collection" _kind_display: ClassVar[str] = "Azure Cosmos DB Mongo DB Collection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB MongoDB Collection is a storage container within Azure Cosmos DB that supports MongoDB API. It stores JSON-like documents and provides querying, indexing, and CRUD operations compatible with MongoDB. Users can interact with the collection using MongoDB drivers, tools, and protocols while benefiting from Azure Cosmos DB's global distribution and performance capabilities." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBMongoDBDatabase() mapping: ClassVar[Dict[str, Bender]] = { @@ -1347,6 +1369,8 @@ class AzureCosmosDBMongoDBDatabase(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_mongo_db_database" _kind_display: ClassVar[str] = "Azure Cosmos DB Mongo DB Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB MongoDB Database is a cloud-based service that provides MongoDB API compatibility within Microsoft's Azure ecosystem. It offers document storage and querying capabilities, supporting MongoDB operations and drivers. Users can create, read, update, and delete data using familiar MongoDB syntax while benefiting from Azure's global distribution and consistency options." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -1421,6 +1445,8 @@ class AzureCosmosDBMongoDBRoleDefinition(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_mongo_db_role_definition" _kind_display: ClassVar[str] = "Azure Cosmos DB Mongo DB Role Definition" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Mongo DB Role Definition specifies access permissions for users and applications interacting with Azure Cosmos DB's MongoDB API. It defines the actions and operations allowed on database resources, including read, write, and execute privileges. This role-based access control helps manage security and compliance in MongoDB-compatible databases within the Azure ecosystem." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/rbac-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "role", "group": "access_control"} # Collect via AzureCosmosDBAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -1443,6 +1469,8 @@ class AzureCosmosDBMongoDBUserDefinition(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_mongo_db_user_definition" _kind_display: ClassVar[str] = "Azure Cosmos DB Mongo DB User Definition" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB MongoDB User Definition specifies access permissions for users in a MongoDB database within Azure Cosmos DB. It defines authentication credentials and authorization roles, controlling database operations a user can perform. This configuration helps manage security and access control for MongoDB workloads in the Azure Cosmos DB environment." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "access_control"} # Collect via AzureCosmosDBAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -1469,6 +1497,8 @@ class AzureCosmosDBNotebookWorkspace(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_notebook_workspace" _kind_display: ClassVar[str] = "Azure Cosmos DB Notebook Workspace" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Notebook Workspace is an integrated development environment within Azure Cosmos DB. It provides a platform for data scientists and developers to write, execute, and share code using Jupyter notebooks. Users can analyze data, create visualizations, and perform database operations directly on their Cosmos DB data without switching between different tools or environments." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/notebooks-workspace" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -1487,6 +1517,8 @@ class AzureCosmosDBPrivateLink(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_private_link" _kind_display: ClassVar[str] = "Azure Cosmos DB Private Link" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Private Link is a network security feature that provides private connectivity to Cosmos DB accounts. It creates a direct connection between virtual networks and Cosmos DB resources using Microsoft's private network infrastructure. This service restricts access to specific resources, enhancing data isolation and reducing exposure to public internet threats." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/how-to-configure-private-endpoints" _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "networking"} # Collect via AzureCosmosDBAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -1522,6 +1554,8 @@ class AzureCosmosDBRestorableAccount(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_account" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable Account" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable Account is a feature that provides data recovery capabilities for Azure Cosmos DB databases. It creates periodic backups of your database, letting you restore your account to a specific point in time within the last 30 days. This helps protect against accidental deletions, modifications, or other data loss scenarios." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/configure-periodic-backup-restore" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="cosmos-db", @@ -1702,6 +1736,8 @@ class AzureCosmosDBSqlDatabaseContainer(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_sql_database_container" _kind_display: ClassVar[str] = "Azure Cosmos DB SQL Database Container" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB SQL Database Container is a storage unit within Azure Cosmos DB that holds JSON documents and related JavaScript stored procedures, triggers, and user-defined functions. It supports SQL queries for data retrieval and manipulation. Containers have a defined schema and partition key, which determine how data is distributed and accessed across physical partitions." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/sql/how-to-create-container" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBSqlDatabase() _reference_kinds: ClassVar[ModelReference] = { @@ -1765,6 +1801,8 @@ class AzureCosmosDBSqlDatabase(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_sql_database" _kind_display: ClassVar[str] = "Azure Cosmos DB SQL Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB SQL Database is a cloud-based NoSQL database service provided by Microsoft Azure. It stores and queries data using SQL syntax, supports multiple data models, and offers global distribution. The service provides automatic indexing, multi-region replication, and consistent performance. It caters to applications requiring low-latency data access and global scalability." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/sql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -1837,6 +1875,8 @@ class AzureCosmosDBSqlRoleAssignment(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_sql_role_assignment" _kind_display: ClassVar[str] = "Azure Cosmos DB SQL Role Assignment" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB SQL Role Assignment is a feature that manages access control for Cosmos DB SQL API accounts. It defines permissions for users and applications to perform specific actions on database resources. This role-based system enhances security by granting precise access levels, from read-only to full administrative rights, based on assigned roles." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/how-to-setup-rbac" _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "access_control"} # Collect via AzureCosmosDBAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -1892,6 +1932,8 @@ class AzureCosmosDBSqlRoleDefinition(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_sql_role_definition" _kind_display: ClassVar[str] = "Azure Cosmos DB SQL Role Definition" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB SQL Role Definition is a security feature that defines permissions for users and applications accessing Cosmos DB resources. It specifies the actions allowed on containers, databases, and items within a Cosmos DB account. Administrators can create custom roles to manage access control and implement principle of least privilege in their database environments." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/sql/how-to-setup-rbac" _metadata: ClassVar[Dict[str, Any]] = {"icon": "role", "group": "access_control"} # Collect via AzureCosmosDBAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -1925,6 +1967,8 @@ class AzureCosmosDBTable(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_table" _kind_display: ClassVar[str] = "Azure Cosmos DB Table" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Table is a NoSQL database service in Microsoft Azure. It stores data in key-value pairs and supports schema-less designs. The service offers automatic indexing, fast query performance, and global distribution. It provides APIs compatible with Azure Table Storage, making it suitable for applications requiring low-latency access to structured data at scale." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.microsoft.com/en-us/azure/cosmos-db/table/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -1943,6 +1987,10 @@ class AzureCosmosDBSqlThroughputSetting(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_sql_throughput_setting" _kind_display: ClassVar[str] = "Azure Cosmos DB SQL Throughput Setting" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB SQL Throughput Setting controls the performance and capacity of a Cosmos DB container or database. It determines the amount of resources allocated for read and write operations, measured in Request Units per second (RU/s). Users can adjust this setting to meet their application's needs, balancing performance requirements with cost considerations." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/cosmos-db/sql/how-to-provision-container-throughput" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "database"} # Collect via AzureCosmosDBSqlDatabase() mapping: ClassVar[Dict[str, Bender]] = { @@ -1959,6 +2007,8 @@ class AzureCosmosDBAccountUsage(MicrosoftResource, AzureBaseUsage): kind: ClassVar[str] = "azure_cosmos_db_account_usage" _kind_display: ClassVar[str] = "Azure Cosmos DB Account Usage" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Account Usage provides metrics and data about the consumption of resources within an Azure Cosmos DB account. It tracks database operations, storage usage, and throughput utilization. This information helps users monitor performance, optimize resource allocation, and manage costs associated with their Cosmos DB deployments. It supports capacity planning and troubleshooting efforts." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/monitor-account-usage" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "management"} # Collect via AzureCosmosDBAccount() mapping: ClassVar[Dict[str, Bender]] = AzureBaseUsage.mapping | { @@ -1986,6 +2036,8 @@ class AzureCosmosDBLocation(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_location" _kind_display: ClassVar[str] = "Azure Cosmos DB Location" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Location refers to the geographic region where an Azure Cosmos DB database is deployed and hosted. It determines the physical data center that stores and processes the database, affecting latency, compliance, and data residency. Users can select specific locations to optimize performance and meet regulatory requirements for their applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/location-based-routing" _metadata: ClassVar[Dict[str, Any]] = {"icon": "region", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="cosmos-db", @@ -2050,6 +2102,8 @@ class AzureCosmosDBMongoDBCluster(MicrosoftResource, AzureTrackedResource): kind: ClassVar[str] = "azure_cosmos_db_mongo_db_cluster" _kind_display: ClassVar[str] = "Azure Cosmos DB Mongo DB Cluster" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Mongo DB Cluster is a managed database service that provides MongoDB compatibility on Microsoft's Azure cloud platform. It offers distributed data storage and retrieval, supporting MongoDB APIs and drivers. Users can deploy, scale, and manage MongoDB databases while benefiting from Azure's global infrastructure, automatic backups, and security features." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="cosmos-db", @@ -2113,6 +2167,8 @@ class AzureCosmosDBRestorableGremlinDatabase(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_gremlin_database" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable Gremlin Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable Gremlin Database is a feature that provides point-in-time recovery for graph databases in Azure Cosmos DB. It creates automatic backups of the database at regular intervals, allowing users to restore the database to a specific point within the retention period. This helps protect against accidental data loss or corruption." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/gremlin/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBRestorableAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -2159,6 +2215,8 @@ class AzureCosmosDBRestorableGremlinGraph(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_gremlin_graph" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable Gremlin Graph" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable Gremlin Graph is a feature that provides point-in-time recovery for graph databases in Azure Cosmos DB. It creates automatic backups of Gremlin graph data at regular intervals, allowing users to restore their database to a specific moment within the retention period. This helps protect against data loss and accidental changes." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/restorable-gremlin-graph-accounts" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBRestorableAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -2175,6 +2233,8 @@ class AzureCosmosDBRestorableMongoDBCollection(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_mongo_db_collection" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable Mongo DB Collection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable MongoDB Collection is a feature that provides point-in-time recovery for MongoDB databases in Azure Cosmos DB. It creates backups of collections at regular intervals, letting users restore data to a specific timestamp within the retention period. This helps recover from accidental deletions, modifications, or application errors." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/restorable-mongodb-resources" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBRestorableAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -2191,6 +2251,8 @@ class AzureCosmosDBRestorableMongoDBDatabase(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_mongo_db_database" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable Mongo DB Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable MongoDB Database is a feature that provides point-in-time recovery for MongoDB databases within Azure Cosmos DB. It creates periodic backups of your database, letting you restore to any moment within the retention period. This helps protect against data loss, corruption, or accidental changes, ensuring data continuity and recovery options." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/restorable-mongodb-resources" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBRestorableAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -2237,6 +2299,8 @@ class AzureCosmosDBRestorableSqlContainer(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_sql_container" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable SQL Container" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable SQL Container is a feature that provides point-in-time recovery for SQL API containers in Azure Cosmos DB. It creates continuous backups of container data, letting users restore to any timestamp within the retention period. This functionality helps protect against accidental deletions, modifications, or corruption of data." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/sql/restorable-container-properties" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBRestorableAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -2284,6 +2348,8 @@ class AzureCosmosDBRestorableSqlDatabase(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_sql_database" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable SQL Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable SQL Database is a feature that creates automatic backups of your database. It lets you restore your database to any point within the last 30 days. This helps recover from accidental deletions, modifications, or other data loss scenarios, ensuring data integrity and business continuity." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/sql/how-to-restore-database" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBRestorableAccount() _reference_kinds: ClassVar[ModelReference] = { @@ -2344,6 +2410,8 @@ class AzureCosmosDBRestorableTable(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_restorable_table" _kind_display: ClassVar[str] = "Azure Cosmos DB Restorable Table" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB Restorable Table is a feature that provides point-in-time recovery for Azure Cosmos DB table data. It creates periodic backups of table data, allowing users to restore tables to a specific timestamp within the retention period. This functionality helps protect against accidental deletions, modifications, or corruption of data in Azure Cosmos DB tables." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/table/restorable-table-accounts" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureCosmosDBRestorableAccount() mapping: ClassVar[Dict[str, Bender]] = { @@ -2386,6 +2454,8 @@ class AzureCosmosDBPostgresqlCluster(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_postgresql_cluster" _kind_display: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster is a managed database service that provides PostgreSQL compatibility within the Azure cloud environment. It offers distributed data storage and processing capabilities, supporting multi-region deployments and automatic scaling. The service handles database administration tasks, including backups, updates, and security, while maintaining PostgreSQL compatibility for existing applications and tools." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/postgresql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="cosmos-db", @@ -2540,6 +2610,8 @@ class AzureCosmosDBPostgresqlClusterServer(MicrosoftResource, BaseDatabase, Azur kind: ClassVar[str] = "azure_cosmos_db_postgresql_cluster_server" _kind_display: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Server" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Server is a managed database service that combines PostgreSQL with distributed database capabilities. It provides horizontal scaling, automatic sharding, and global distribution for PostgreSQL workloads. Users can deploy and manage PostgreSQL databases across multiple regions, ensuring data consistency and availability while maintaining compatibility with existing PostgreSQL tools and applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/postgresql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "database"} # Collect via AzureCosmosDBPostgresqlCluster() _reference_kinds: ClassVar[ModelReference] = { @@ -2635,6 +2707,8 @@ class AzureCosmosDBPostgresqlClusterConfiguration(MicrosoftResource, AzureProxyR kind: ClassVar[str] = "azure_cosmos_db_postgresql_cluster_configuration" _kind_display: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Configuration" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Configuration defines settings for PostgreSQL clusters within Azure Cosmos DB. It manages node count, compute resources, storage capacity, network configurations, and security options. Users can specify replication settings, backup policies, and performance parameters. This configuration controls the deployment and operation of PostgreSQL databases in the Azure cloud environment." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/postgresql/howto-create-cluster" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} # Collect via AzureCosmosDBPostgresqlCluster() config: Json = field(factory=dict) @@ -2673,6 +2747,10 @@ class AzureCosmosDBPostgresqlClusterServerConfiguration(MicrosoftResource, Azure kind: ClassVar[str] = "azure_cosmos_db_postgresql_cluster_server_configuration" _kind_display: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Server Configuration" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Server Configuration is a setting within Azure Cosmos DB that manages PostgreSQL clusters. It controls server parameters, resource allocation, and performance settings for PostgreSQL databases. Users can adjust these configurations to optimize database operations, manage workloads, and customize the PostgreSQL environment according to their specific application requirements and performance needs." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/cosmos-db/postgresql/how-to-manage-server-configuration" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "database"} # Collect via AzureCosmosDBPostgresqlClusterServer() config: Json = field(factory=dict) @@ -2710,6 +2788,10 @@ class AzureCosmosDBPostgresqlClusterPrivateEndpointConnection(MicrosoftResource) kind: ClassVar[str] = "azure_cosmos_db_postgresql_cluster_private_endpoint_connection" _kind_display: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Private Endpoint Connection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Private Endpoint Connection provides a secure, private network link between a virtual network and an Azure Cosmos DB PostgreSQL cluster. It uses Azure Private Link to create this connection, bypassing the public internet. This feature enhances data security and reduces exposure to potential threats while maintaining network performance." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/cosmos-db/postgresql/how-to-configure-private-endpoints" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} # Collect via AzureCosmosDBPostgresqlCluster() mapping: ClassVar[Dict[str, Bender]] = { @@ -2736,6 +2818,10 @@ class AzureCosmosDBPostgresqlClusterPrivateLink(MicrosoftResource): kind: ClassVar[str] = "azure_cosmos_db_postgresql_cluster_private_link" _kind_display: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Private Link" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Private Link is a network security feature that provides private connectivity between your virtual network and your PostgreSQL database cluster. It eliminates exposure of your database to the public internet by creating a private endpoint within your virtual network, ensuring data traffic remains on the Microsoft Azure backbone network." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/cosmos-db/postgresql/howto-configure-privatelink" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "networking"} # Collect via AzureCosmosDBPostgresqlCluster() mapping: ClassVar[Dict[str, Bender]] = { @@ -2760,6 +2846,8 @@ class AzureCosmosDBPostgresqlClusterRole(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_cosmos_db_postgresql_cluster_role" _kind_display: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Role" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Cosmos DB PostgreSQL Cluster Role represents a PostgreSQL database instance within an Azure Cosmos DB cluster. It provides PostgreSQL-compatible database services with distributed capabilities. This role handles data storage, query processing, and transaction management while offering compatibility with existing PostgreSQL tools and applications in a distributed environment." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/cosmos-db/postgresql/concepts-roles" _metadata: ClassVar[Dict[str, Any]] = {"icon": "role", "group": "access_control"} # Collect via AzureCosmosDBPostgresqlCluster() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { diff --git a/plugins/azure/fix_plugin_azure/resource/keyvault.py b/plugins/azure/fix_plugin_azure/resource/keyvault.py index 67c9d6bf1d..dc21314985 100644 --- a/plugins/azure/fix_plugin_azure/resource/keyvault.py +++ b/plugins/azure/fix_plugin_azure/resource/keyvault.py @@ -185,6 +185,8 @@ class AzureKeyVaultSecret(MicrosoftResource): kind: ClassVar[str] = "azure_key_vault_secret" _kind_display: ClassVar[str] = "Azure Key Vault Secret" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Key Vault Secret is a secure storage service for sensitive information in Azure cloud. It stores and manages secrets, encryption keys, and certificates. The service provides access control, encryption at rest, and logging capabilities. Users can retrieve secrets programmatically or through Azure portal, ensuring confidentiality and integrity of sensitive data in cloud applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/key-vault/secrets/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "management"} # collected via AzureKeyVault mapping: ClassVar[Dict[str, Bender]] = { @@ -211,6 +213,8 @@ class AzureKeyVaultManagedHsm(MicrosoftResource): kind: ClassVar[str] = "azure_key_vault_managed_hsm" _kind_display: ClassVar[str] = "Azure Key Vault Managed Hsm" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Key Vault Managed HSM is a cloud service that provides secure storage and management of cryptographic keys and secrets. It uses FIPS 140-2 Level 3 validated hardware security modules (HSMs) to protect sensitive data. Users can create, store, and control access to encryption keys, passwords, and certificates within the Azure cloud environment." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/key-vault/managed-hsm/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="keyvault", @@ -274,6 +278,8 @@ class AzureKeyVaultKey(MicrosoftResource): kind: ClassVar[str] = "azure_key_vault_key" _kind_display: ClassVar[str] = "Azure Key Vault Key" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Key Vault Key is a secure storage and management service for cryptographic keys in Microsoft Azure. It provides encryption for sensitive data, supports key rotation, and integrates with Azure services. Users can create, import, and control access to keys, while the service handles key storage, backup, and compliance requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/key-vault/keys/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "key", "group": "management"} # collected via AzureKeyVault mapping: ClassVar[Dict[str, Bender]] = { @@ -308,6 +314,8 @@ class AzureKeyVault(MicrosoftResource): kind: ClassVar[str] = "azure_key_vault" _kind_display: ClassVar[str] = "Azure Key Vault" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Key Vault is a cloud service for storing and managing cryptographic keys, secrets, and certificates. It provides secure storage and access control for sensitive information used by applications and services. Key Vault offers encryption, key rotation, and monitoring features to protect data and comply with security standards in cloud environments." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/key-vault/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "vault", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="keyvault", diff --git a/plugins/azure/fix_plugin_azure/resource/machinelearning.py b/plugins/azure/fix_plugin_azure/resource/machinelearning.py index 5707232cd0..de7338df40 100644 --- a/plugins/azure/fix_plugin_azure/resource/machinelearning.py +++ b/plugins/azure/fix_plugin_azure/resource/machinelearning.py @@ -68,6 +68,8 @@ class AzureMachineLearningBatchEndpoint(MicrosoftResource, AzureTrackedResource) kind: ClassVar[str] = "azure_machine_learning_batch_endpoint" _kind_display: ClassVar[str] = "Azure Machine Learning Batch Endpoint" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Batch Endpoint is a feature for processing large volumes of data asynchronously. It provides a consistent interface for running machine learning models on batches of data, managing compute resources, and retrieving results. Users can schedule jobs, monitor progress, and access outputs through API calls or the Azure portal." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-use-batch-endpoint" _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -153,6 +155,10 @@ class AzureMachineLearningWorkspaceCodeContainer(AzureMachineLearningCodeContain # Defined to split registry and workspace resource kind: ClassVar[str] = "azure_machine_learning_workspace_code_container" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Code Container" + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Code Container is a development environment for machine learning projects in Azure. It provides tools and libraries for data preparation, model training, and deployment. Users can write, test, and run code within the container, which integrates with Azure services and resources. The container supports collaboration and version control for ML workflows." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-access-workspace?view=azureml-api-2" + ) _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -189,6 +195,10 @@ class AzureMachineLearningRegistryCodeContainer(AzureMachineLearningCodeContaine # Defined to split registry and workspace resource kind: ClassVar[str] = "azure_machine_learning_registry_code_container" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Code Container" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Code Container is a component of Azure Machine Learning that stores and manages versioned machine learning code assets. It provides a central repository for data scientists and developers to share, track, and collaborate on code artifacts, including scripts, notebooks, and models, within their machine learning projects and workflows." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-use-registry-container-resource" + ) _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -252,12 +262,18 @@ class AzureMachineLearningWorkspaceCodeVersion(AzureMachineLearningCodeVersionBa # Defined to split registry and workspace resource kind: ClassVar[str] = "azure_machine_learning_workspace_code_version" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Code Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Code Version is a feature that tracks and manages different iterations of machine learning code within an Azure workspace. It stores and organizes code snapshots, facilitating version control and collaboration among data scientists. Users can compare versions, revert changes, and reproduce experiments based on specific code states." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-code-version" @define(eq=False, slots=False) class AzureMachineLearningRegistryCodeVersion(AzureMachineLearningCodeVersionBase, MicrosoftResource): # Defined to split registry and workspace resource kind: ClassVar[str] = "azure_machine_learning_registry_code_version" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Code Version is a component of Azure Machine Learning that manages and tracks different versions of machine learning code. It stores and organizes code iterations, facilitating collaboration among team members. Users can access, compare, and revert to previous versions, ensuring reproducibility and maintaining a history of code changes throughout the development process." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-manage-models-in-registry" + ) _kind_display: ClassVar[str] = "Azure Machine Learning Registry Code Version" _metadata: ClassVar[Dict[str, Any]] = {"icon": "version", "group": "ai"} @@ -295,6 +311,10 @@ class AzureMachineLearningWorkspaceComponentContainer(AzureMachineLearningCompon kind: ClassVar[str] = "azure_machine_learning_workspace_component_container" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Component Container" + _kind_description: ClassVar[str] = "The Azure Machine Learning Workspace Component Container is a containerized environment within Azure Machine Learning that hosts and manages workspace components. It provides a unified space for storing, organizing, and accessing machine learning assets such as datasets, models, and experiments. Users can collaborate, version control, and deploy machine learning projects from this centralized container." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-component-specification" + ) _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -332,6 +352,10 @@ class AzureMachineLearningRegistryComponentContainer(AzureMachineLearningCompone kind: ClassVar[str] = "azure_machine_learning_registry_component_container" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Component Container" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Component Container is a service for storing and managing machine learning components in Azure. It provides a centralized repository for versioning, sharing, and reusing ML artifacts such as models, datasets, and environments. Users can access and deploy components across different projects and teams, promoting collaboration and standardization in ML workflows." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-component-specification" + ) _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -397,6 +421,10 @@ class AzureMachineLearningWorkspaceComponentVersion(AzureMachineLearningComponen kind: ClassVar[str] = "azure_machine_learning_workspace_component_version" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Component Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Component Version is a specific iteration of a reusable asset within an Azure Machine Learning workspace. It represents a snapshot of a component's configuration, code, and dependencies at a particular point in time. This versioning system helps track changes, maintain consistency, and facilitate collaboration among data scientists and machine learning engineers." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-manage-component-version" + ) @define(eq=False, slots=False) @@ -405,6 +433,10 @@ class AzureMachineLearningRegistryComponentVersion(AzureMachineLearningComponent kind: ClassVar[str] = "azure_machine_learning_registry_component_version" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Component Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Component Version represents a specific iteration of a component within the Azure Machine Learning Registry. It contains the component's code, dependencies, and metadata for a particular version. This versioning system helps track changes, manage different implementations, and ensure reproducibility of machine learning workflows across projects and teams." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/reference-yaml-component-version" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "version", "group": "ai"} @@ -413,6 +445,8 @@ class AzureMachineLearningComputeNode(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_machine_learning_compute_node" _kind_display: ClassVar[str] = "Azure Machine Learning Compute Node" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Compute Node is a managed compute resource for running machine learning workloads. It provides a dedicated virtual machine environment for training models, conducting experiments, and deploying solutions. Users can configure the node's specifications, including CPU, GPU, and memory, to match their computational needs. It integrates with other Azure ML services for data processing and model management." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-compute-target" _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "compute"} # Collected via AzureMachineLearningCompute() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { @@ -465,6 +499,8 @@ class AzureMachineLearningCompute(MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_compute" _kind_display: ClassVar[str] = "Azure Machine Learning Compute" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Compute is a cloud-based service for running machine learning workloads. It provides managed compute resources for training and deploying models. Users can create and manage compute clusters, select virtual machine sizes, and autoscale resources as needed. The service supports various machine learning frameworks and integrates with other Azure services for data processing and model deployment." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.microsoft.com/en-us/azure/machine-learning/concept-compute-target" _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "compute"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -622,6 +658,8 @@ class AzureMachineLearningWorkspaceDataContainer(AzureMachineLearningDataContain kind: ClassVar[str] = "azure_machine_learning_workspace_data_container" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Data Container" + _kind_description: ClassVar[str] = "The Azure Machine Learning Workspace Data Container is a storage resource within Azure Machine Learning. It serves as a central repository for datasets, models, and other artifacts used in machine learning projects. This container stores and manages data, facilitating collaboration among team members and providing version control for machine learning assets." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-data" _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -659,6 +697,10 @@ class AzureMachineLearningRegistryDataContainer(AzureMachineLearningDataContaine kind: ClassVar[str] = "azure_machine_learning_registry_data_container" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Data Container" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Data Container is a storage solution for machine learning artifacts in Azure. It stores and manages models, datasets, and environments, providing version control and collaboration features. Users can access, share, and deploy these artifacts across projects and teams, supporting the entire machine learning lifecycle within the Azure ecosystem." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-share-models-pipelines-across-workspaces-with-registries" + ) _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -726,6 +768,8 @@ class AzureMachineLearningWorkspaceDataVersion(AzureMachineLearningDataVersionBa kind: ClassVar[str] = "azure_machine_learning_workspace_data_version" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Data Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Data Version is a feature that tracks and manages different iterations of datasets within a workspace. It stores metadata about data changes, creation dates, and lineage information. This versioning system helps data scientists and machine learning engineers maintain data consistency, reproduce experiments, and collaborate on projects using shared datasets." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-version-track-datasets" @define(eq=False, slots=False) @@ -734,6 +778,10 @@ class AzureMachineLearningRegistryDataVersion(AzureMachineLearningDataVersionBas kind: ClassVar[str] = "azure_machine_learning_registry_data_version" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Data Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Data Version is a component that tracks and manages versions of datasets within the Azure Machine Learning service. It stores metadata about data assets, including their source, format, and schema. This versioning system helps data scientists and machine learning engineers maintain data lineage, reproduce experiments, and collaborate on projects effectively." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-manage-registries?tabs=cli" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "version", "group": "ai"} @@ -742,6 +790,10 @@ class AzureMachineLearningDatastore(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_machine_learning_datastore" _kind_display: ClassVar[str] = "Azure Machine Learning Datastore" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Datastore is a storage abstraction that connects to various Azure storage services. It provides a unified interface for accessing data across different storage types, including Azure Blob Storage, Azure Data Lake Storage, and Azure SQL Database. Users can read from and write to datastores without specifying connection information or authentication details in their code." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-data?view=azureml-api-2" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "bucket", "group": "storage"} # Collected via AzureMachineLearningWorkspace() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { @@ -787,6 +839,8 @@ class AzureMachineLearningEndpoint(MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_endpoint" _kind_display: ClassVar[str] = "Azure Machine Learning Endpoint" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Endpoint is a cloud-based service that provides a deployment target for machine learning models. It creates a secure HTTPS endpoint for real-time inference, handling incoming requests and returning predictions. Users can deploy models, manage versions, and monitor performance through this interface, facilitating integration of machine learning into applications and services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-endpoints" _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "ai"} # Collected via AzureMachineLearningWorkspace() mapping: ClassVar[Dict[str, Bender]] = { @@ -878,6 +932,8 @@ class AzureMachineLearningWorkspaceEnvironmentContainer( kind: ClassVar[str] = "azure_machine_learning_workspace_environment_container" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Environment Container" + _kind_description: ClassVar[str] = "The Azure Machine Learning Workspace Environment Container is a component of Azure's cloud-based machine learning platform. It provides a preconfigured workspace with necessary tools and dependencies for developing, training, and deploying machine learning models. This container includes libraries, frameworks, and computational resources, offering a consistent environment for data scientists and developers to collaborate on machine learning projects." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-use-environments" _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -915,6 +971,8 @@ class AzureMachineLearningRegistryEnvironmentContainer(AzureMachineLearningEnvir kind: ClassVar[str] = "azure_machine_learning_registry_environment_container" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Environment Container" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Environment Container is a component of Azure Machine Learning that stores and manages environment definitions. It provides a central repository for containerized environments used in machine learning workflows. Users can create, version, and share environments across projects and teams, ensuring reproducibility and consistency in model development and deployment processes." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-use-environments" _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -994,6 +1052,8 @@ class AzureMachineLearningWorkspaceEnvironmentVersion(AzureMachineLearningEnviro kind: ClassVar[str] = "azure_machine_learning_workspace_environment_version" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Environment Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Environment Version represents a specific configuration snapshot of a workspace environment. It includes libraries, dependencies, and settings required for machine learning projects. Users can create, manage, and deploy different versions to maintain consistency across development stages and ensure reproducibility of experiments and models within the Azure Machine Learning platform." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-environments" @define(eq=False, slots=False) @@ -1002,6 +1062,10 @@ class AzureMachineLearningRegistryEnvironmentVersion(AzureMachineLearningEnviron kind: ClassVar[str] = "azure_machine_learning_registry_environment_version" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Environment Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Environment Version represents a specific iteration of a containerized environment in Azure Machine Learning. It includes dependencies, libraries, and runtime configurations required for machine learning workflows. Users can create, manage, and deploy these versions to maintain consistency across different stages of model development and deployment within Azure Machine Learning projects." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-environments?view=azureml-api-2#environment-versions" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "version", "group": "ai"} @@ -1010,6 +1074,8 @@ class AzureMachineLearningFeature(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_machine_learning_feature" _kind_display: ClassVar[str] = "Azure Machine Learning Feature" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Feature is a cloud-based service for creating, managing, and deploying machine learning models. It offers tools for data preparation, model training, and evaluation. Users can build, test, and deploy models using various programming languages and frameworks. The service integrates with other Azure products and supports both supervised and unsupervised learning techniques." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} # Collected via AzureMachineLearningFeaturesetVersion() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { @@ -1113,6 +1179,8 @@ class AzureMachineLearningFeaturesetContainer(MicrosoftResource, AzureProxyResou kind: ClassVar[str] = "azure_machine_learning_featureset_container" _kind_display: ClassVar[str] = "Azure Machine Learning Featureset Container" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Featureset Container is a component of Azure Machine Learning that stores and manages feature data for machine learning models. It provides a centralized repository for feature definitions, values, and metadata. Users can create, update, and retrieve features, ensuring consistency across training and inference pipelines while supporting feature reuse and version control." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-datasets-featuresets" _metadata: ClassVar[Dict[str, Any]] = {"icon": "container", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -1169,6 +1237,8 @@ class AzureMachineLearningFeaturesetVersion(MicrosoftResource, AzureProxyResourc kind: ClassVar[str] = "azure_machine_learning_featureset_version" _kind_display: ClassVar[str] = "Azure Machine Learning Featureset Version" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Featureset Version is a component of Azure Machine Learning that manages and tracks versions of feature sets. It stores feature definitions, data, and metadata, enabling data scientists to reproduce experiments, compare model performance across versions, and maintain consistency in machine learning pipelines. This versioning system supports collaboration and helps ensure data lineage in ML projects." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-feature-store" _metadata: ClassVar[Dict[str, Any]] = {"icon": "version", "group": "ai"} # Collected via AzureMachineLearningFeaturesetContainer() _reference_kinds: ClassVar[ModelReference] = { @@ -1233,6 +1303,8 @@ class AzureMachineLearningFeaturestoreEntityContainer(MicrosoftResource, AzurePr kind: ClassVar[str] = "azure_machine_learning_featurestore_entity_container" _kind_display: ClassVar[str] = "Azure Machine Learning Featurestore Entity Container" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Featurestore Entity Container is a storage component within Azure Machine Learning. It stores and manages feature data for machine learning models. This container organizes features into logical groups, tracks feature lineage, and provides version control. It supports data access across different projects and teams, promoting feature reuse and consistency in model development." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-feature-store" _metadata: ClassVar[Dict[str, Any]] = {"icon": "container", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -1297,6 +1369,8 @@ class AzureMachineLearningFeaturestoreEntityVersion(MicrosoftResource, AzureProx kind: ClassVar[str] = "azure_machine_learning_featurestore_entity_version" _kind_display: ClassVar[str] = "Azure Machine Learning Featurestore Entity Version" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Featurestore Entity Version represents a specific iteration of a feature entity in the Azure Machine Learning Featurestore. It contains metadata about the feature entity, including its schema, data sources, and transformations. This versioning system tracks changes to feature definitions over time, supporting reproducibility and consistency in machine learning workflows." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-feature-store" _metadata: ClassVar[Dict[str, Any]] = {"icon": "version", "group": "ai"} # Collected via AzureMachineLearningFeaturestoreEntityContainer() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { @@ -1348,6 +1422,8 @@ class AzureMachineLearningJob(BaseAIJob, MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_machine_learning_job" _kind_display: ClassVar[str] = "Azure Machine Learning Job" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Job is a task execution unit within Azure Machine Learning service. It encapsulates the code, data, and compute resources required to run a machine learning workflow. Jobs can perform various operations like data preparation, model training, and evaluation. They support different compute targets and can be monitored, managed, and tracked through the Azure ML platform." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-ml-job" _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -1517,6 +1593,10 @@ class AzureMachineLearningLabelingJob(BaseAIJob, MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_labeling_job" _kind_display: ClassVar[str] = "Azure Machine Learning Labeling Job" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Labeling Job is a feature that helps users annotate data for machine learning projects. It provides tools for tagging images, text, or other data types, and supports collaboration among team members. The job organizes tasks, tracks progress, and manages the labeling workflow to prepare datasets for model training and evaluation." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-create-labeling-projects" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "ai"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), @@ -1588,6 +1668,10 @@ class AzureMachineLearningWorkspaceModelContainer( kind: ClassVar[str] = "azure_machine_learning_workspace_model_container" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Model Container" + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Model Container is a component within Azure Machine Learning that stores and manages machine learning models. It provides a centralized location for data scientists and developers to register, version, and deploy models. The container supports various model formats and integrates with Azure Machine Learning pipelines for model training, evaluation, and deployment processes." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-model-management-and-deployment" + ) _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -1627,6 +1711,10 @@ class AzureMachineLearningRegistryModelContainer( kind: ClassVar[str] = "azure_machine_learning_registry_model_container" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Model Container" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Model Container is a component of Azure Machine Learning that stores and manages machine learning models. It provides version control, metadata tracking, and deployment capabilities for models. Users can register, retrieve, and share models within their organization, facilitating collaboration and reproducibility in machine learning projects." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-model-management-and-deployment" + ) _reference_kinds: ClassVar[ModelReference] = { "successors": { "default": [ @@ -1707,6 +1795,10 @@ class AzureMachineLearningWorkspaceModelVersion(AzureMachineLearningModelVersion kind: ClassVar[str] = "azure_machine_learning_workspace_model_version" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Model Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Model Version represents a specific iteration of a machine learning model within an Azure ML workspace. It captures the model's artifacts, code, and metadata at a particular point in time. This versioning system facilitates tracking, comparing, and managing different iterations of models throughout their lifecycle, supporting reproducibility and collaboration in machine learning projects." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-model-management-and-deployment" + ) @define(eq=False, slots=False) @@ -1715,6 +1807,10 @@ class AzureMachineLearningRegistryModelVersion(AzureMachineLearningModelVersionB kind: ClassVar[str] = "azure_machine_learning_registry_model_version" _kind_display: ClassVar[str] = "Azure Machine Learning Registry Model Version" + _kind_description: ClassVar[str] = "Azure Machine Learning Registry Model Version is a component that stores and manages versions of machine learning models in Azure. It tracks model metadata, artifacts, and performance metrics across iterations. Users can register, retrieve, and deploy specific model versions, facilitating version control, reproducibility, and collaboration in machine learning workflows." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-model-management-and-deployment#registering-and-versioning-models" + ) @define(eq=False, slots=False) @@ -1722,6 +1818,8 @@ class AzureMachineLearningOnlineEndpoint(MicrosoftResource, AzureTrackedResource kind: ClassVar[str] = "azure_machine_learning_online_endpoint" _kind_display: ClassVar[str] = "Azure Machine Learning Online Endpoint" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Online Endpoint is a cloud-based service for deploying and hosting machine learning models. It provides a secure, managed environment for serving real-time predictions. Users can deploy models, manage versions, and scale compute resources as needed. The endpoint handles incoming requests, processes data, and returns predictions using the deployed model." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-endpoints" _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -1788,6 +1886,8 @@ class AzureMachineLearningPrivateEndpointConnection(MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_private_endpoint_connection" _kind_display: ClassVar[str] = "Azure Machine Learning Private Endpoint Connection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Private Endpoint Connection is a network interface that securely connects Azure Machine Learning workspaces to virtual networks. It uses Azure Private Link to establish a private connection, restricting data access to authorized resources within the virtual network and preventing exposure to the public internet, enhancing security and compliance for machine learning workflows." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-configure-private-link" _metadata: ClassVar[Dict[str, Any]] = {"icon": "connection", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -1839,6 +1939,8 @@ class AzureMachineLearningPrivateLink(MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_private_link" _kind_display: ClassVar[str] = "Azure Machine Learning Private Link" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Private Link is a network security feature that provides private connectivity between Azure Machine Learning workspaces and other Azure resources. It creates a secure, private endpoint within a virtual network, restricting access to authorized networks and eliminating exposure to the public internet while maintaining full functionality of Azure Machine Learning services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-configure-private-link" _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -2001,6 +2103,8 @@ class AzureMachineLearningRegistry(MicrosoftResource, AzureTrackedResource): kind: ClassVar[str] = "azure_machine_learning_registry" _kind_display: ClassVar[str] = "Azure Machine Learning Registry" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Registry is a centralized repository for storing and managing machine learning models, datasets, and components. It provides version control, collaboration features, and integration with Azure Machine Learning workflows. Users can publish, share, and deploy models across their organization, ensuring reproducibility and governance in machine learning projects." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-use-model-registry" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="machinelearningservices", @@ -2124,6 +2228,8 @@ class AzureMachineLearningQuota(MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_quota" _kind_display: ClassVar[str] = "Azure Machine Learning Quota" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Quota sets limits on resources available for machine learning workloads in Azure. It controls the number of compute instances, cores, and other resources a user or organization can utilize. This quota system helps manage costs and resource allocation, ensuring fair distribution across users and preventing overuse of Azure's machine learning services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-manage-quotas" _metadata: ClassVar[Dict[str, Any]] = {"icon": "queue", "group": "ai"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="machinelearningservices", @@ -2152,6 +2258,10 @@ class AzureMachineLearningSchedule(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_machine_learning_schedule" _kind_display: ClassVar[str] = "Azure Machine Learning Schedule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Schedule is a feature within Azure Machine Learning that automates and manages the execution of machine learning workflows. It enables users to set up recurring or one-time runs of their ML pipelines, experiments, or scripts. This tool helps coordinate tasks, handle dependencies, and optimize resource allocation for machine learning processes in Azure." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-endpoints-online#schedule" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "ai"} # Collected via AzureMachineLearningWorkspace() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { @@ -2189,6 +2299,10 @@ class AzureMachineLearningServerlessEndpoint(MicrosoftResource, AzureTrackedReso kind: ClassVar[str] = "azure_machine_learning_serverless_endpoint" _kind_display: ClassVar[str] = "Azure Machine Learning Serverless Endpoint" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Serverless Endpoint is a deployment option for machine learning models in Azure. It provides on-demand compute resources for model inference without the need to manage infrastructure. Users can deploy models, send requests, and receive predictions while paying only for the compute time used during inference operations." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-use-managed-online-endpoint-serverless" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "ai"} # Collected via AzureMachineLearningWorkspace() _reference_kinds: ClassVar[ModelReference] = { @@ -2259,6 +2373,8 @@ class AzureMachineLearningUsage(MicrosoftResource, AzureBaseUsage): kind: ClassVar[str] = "azure_machine_learning_usage" _kind_display: ClassVar[str] = "Azure Machine Learning Usage" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Usage refers to the utilization of Microsoft's cloud-based platform for developing, training, and deploying machine learning models. It provides tools and services for data preparation, model creation, and deployment across various environments. Users can build, test, and manage machine learning workflows while monitoring resource consumption and performance metrics." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-plan-manage-cost" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "ai"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="machinelearningservices", @@ -2316,6 +2432,10 @@ class AzureMachineLearningVirtualMachineSize(MicrosoftResource, BaseInstanceType kind: ClassVar[str] = "azure_machine_learning_virtual_machine_size" _kind_display: ClassVar[str] = "Azure Machine Learning Virtual Machine Size" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Virtual Machine Size refers to the computational resources allocated to a virtual machine used for machine learning tasks in Azure. It determines the processing power, memory, and storage capacity available for training models, running experiments, and deploying solutions. Users can select from various sizes to match their specific machine learning workload requirements and budget constraints." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/machine-learning/concept-compute-target#supported-vm-series-and-sizes" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "management"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("name"), @@ -2497,6 +2617,8 @@ class AzureMachineLearningWorkspace(MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_workspace" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace is a cloud-based environment for developing, training, and deploying machine learning models. It provides tools and services for data preparation, model creation, and experiment tracking. Users can collaborate on projects, manage datasets, and deploy models to production. The workspace integrates with other Azure services for enhanced functionality and resource management." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/concept-workspace" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="machinelearningservices", @@ -2720,6 +2842,8 @@ class AzureMachineLearningWorkspaceConnection(MicrosoftResource): kind: ClassVar[str] = "azure_machine_learning_workspace_connection" _kind_display: ClassVar[str] = "Azure Machine Learning Workspace Connection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Machine Learning Workspace Connection is a resource that links an Azure Machine Learning workspace to other Azure services. It facilitates data access, compute resource management, and model deployment within the Azure ecosystem. This connection integrates machine learning projects with Azure storage, compute, and networking capabilities, supporting the end-to-end machine learning lifecycle." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/machine-learning/how-to-manage-workspace-cli" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "ai"} # Collected via AzureMachineLearningWorkspace() mapping: ClassVar[Dict[str, Bender]] = { diff --git a/plugins/azure/fix_plugin_azure/resource/monitor.py b/plugins/azure/fix_plugin_azure/resource/monitor.py index 86b5aeb018..817ddbe021 100644 --- a/plugins/azure/fix_plugin_azure/resource/monitor.py +++ b/plugins/azure/fix_plugin_azure/resource/monitor.py @@ -204,6 +204,8 @@ class AzureMonitorActionGroup(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_action_group" _kind_display: ClassVar[str] = "Azure Monitor Action Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Action Group is a configuration service for automated responses to monitoring alerts. It defines a set of actions to be executed when specific conditions are met. These actions can include sending notifications via email, SMS, or voice calls, triggering automated processes, or integrating with external systems to manage and respond to issues in Azure resources." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/action-groups" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -298,6 +300,8 @@ class AzureMonitorActivityLogAlert(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_activity_log_alert" _kind_display: ClassVar[str] = "Azure Monitor Activity Log Alert" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Activity Log Alert is a service that monitors and notifies users about specific events or changes in Azure resources. It tracks operations performed on Azure services, including resource creation, modification, or deletion. Users can set up custom alerts based on defined criteria and receive notifications through various channels when those conditions are met." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-activity-log" _metadata: ClassVar[Dict[str, Any]] = {"icon": "alarm", "group": "management"} _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": [AzureMonitorActionGroup.kind]}, @@ -366,6 +370,8 @@ class AzureMonitorAlertRule(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_alert_rule" _kind_display: ClassVar[str] = "Azure Monitor Alert Rule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Alert Rule is a feature in Microsoft Azure that defines conditions for monitoring resources and triggers notifications when specified thresholds are met. It evaluates metrics, logs, and activity data from Azure services, then sends alerts via various channels when predefined criteria are satisfied, helping administrators respond to issues and maintain system health." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -428,6 +434,8 @@ class AzureMonitorPrivateLinkScope(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_private_link_scope" _kind_display: ClassVar[str] = "Azure Monitor Private Link Scope" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Private Link Scope is a networking feature that creates a private endpoint for Azure Monitor services. It restricts access to Azure Monitor data to specific virtual networks, enhancing security by eliminating public internet exposure. This service integrates with Azure Private Link to ensure data transfer occurs over Microsoft's private network infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/logs/private-link-security" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -710,6 +718,10 @@ class AzureMonitorWorkspace(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_workspace" _kind_display: ClassVar[str] = "Azure Monitor Workspace" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Workspace is a centralized data storage and analysis solution for Azure resources. It collects logs, metrics, and traces from multiple sources, providing a unified view of operational data. Users can query, visualize, and analyze this data to gain insights into application performance, infrastructure health, and security events across their Azure environment." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-monitor/logs/log-analytics-workspace-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -748,6 +760,10 @@ class AzureMonitorDataCollectionRule(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_data_collection_rule" _kind_display: ClassVar[str] = "Azure Monitor Data Collection Rule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Data Collection Rule is a configuration resource that defines how monitoring data is collected and processed in Azure. It specifies the data sources, collection settings, and destinations for log and metric data. Data Collection Rules help manage and organize monitoring across multiple resources, ensuring consistent data collection and routing within Azure environments." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/data-collection-rule-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -809,6 +825,8 @@ class AzureMonitorLogProfile(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_log_profile" _kind_display: ClassVar[str] = "Azure Monitor Log Profile" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Log Profile is a configuration setting that defines how activity logs are collected and stored in Azure. It specifies which log categories to capture, the retention period for logs, and the destination for log data. This profile helps organizations manage their Azure resource monitoring and maintain compliance with data retention policies." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/activity-log" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -853,6 +871,8 @@ class AzureMetricAlert(MicrosoftResource): kind: ClassVar[str] = "azure_metric_alert" _kind_display: ClassVar[str] = "Azure Metric Alert" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Metric Alert is a monitoring service in Microsoft Azure that tracks specified metrics for resources. It evaluates data against predefined thresholds and triggers notifications when these thresholds are breached. Users can configure alerts for various metrics, set custom conditions, and define actions such as sending emails or executing automated responses when alert conditions are met." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-metric-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "alarm", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -1117,6 +1137,8 @@ class AzureMonitorNetworkingConfiguration: class AzureMonitorPipelineGroup(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_pipeline_group" _kind_display: ClassVar[str] = "Azure Monitor Pipeline Group" + _kind_description: ClassVar[str] = "Azure Monitor Pipeline Group is a feature in Azure Monitor that organizes and manages multiple data pipelines. It collects, processes, and routes telemetry data from various sources to different destinations. Users can configure, monitor, and control multiple pipelines within a single group, simplifying management and providing a unified view of data flow across Azure resources." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/pipeline-groups" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "management"} _create_provider_link: ClassVar[bool] = False @@ -1231,6 +1253,8 @@ class AzureMonitorScheduledQueryRule(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_scheduled_query_rule" _kind_display: ClassVar[str] = "Azure Monitor Scheduled Query Rule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Scheduled Query Rule is a feature that executes predefined queries on log data at specified intervals. It evaluates the query results against set thresholds and triggers alerts when conditions are met. This tool helps users monitor their Azure resources and applications, detect issues, and respond to potential problems based on collected telemetry data." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/alerts/alerts-scheduled-query" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -1327,6 +1351,8 @@ class AzureMonitorDiagnosticSettings(MicrosoftResource): kind: ClassVar[str] = "azure_monitor_diagnostic_settings" _kind_display: ClassVar[str] = "Azure Monitor Diagnostic Settings" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Monitor Diagnostic Settings is a feature that collects and routes platform logs and metrics from Azure resources to specified destinations. It supports sending data to Log Analytics workspaces, storage accounts, and event hubs. Users can configure multiple settings per resource, selecting specific log categories and metrics to capture, aiding in monitoring and analysis of Azure resources." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-monitor/essentials/diagnostic-settings" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} _create_provider_link: ClassVar[bool] = False api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( diff --git a/plugins/azure/fix_plugin_azure/resource/mysql.py b/plugins/azure/fix_plugin_azure/resource/mysql.py index 5a53df10c9..c786837030 100644 --- a/plugins/azure/fix_plugin_azure/resource/mysql.py +++ b/plugins/azure/fix_plugin_azure/resource/mysql.py @@ -107,6 +107,8 @@ class AzureMysqlServerADAdministrator(MicrosoftResource): kind: ClassVar[str] = "azure_mysql_server_ad_administrator" _kind_display: ClassVar[str] = "Azure MySQL Server Ad Administrator" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server AD Administrator is a role that integrates Azure Active Directory authentication with Azure Database for MySQL. It manages access and permissions for Azure AD users and groups to connect to MySQL databases using their Azure AD credentials, enhancing security by centralizing identity management and supporting single sign-on for database access." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/flexible-server/how-to-azure-ad" _metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "database"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": [MicrosoftGraphUser.kind]}} # Collect via AzureMysqlServer() @@ -217,6 +219,8 @@ class AzureMysqlServerType(MicrosoftResource, BaseDatabaseInstanceType): kind: ClassVar[str] = "azure_mysql_server_type" _kind_display: ClassVar[str] = "Azure MySQL Server Type" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server Type is a configuration option for MySQL databases in Microsoft Azure. It defines the hardware resources allocated to the database server, including CPU, memory, and storage. Users can choose from various server types to match their performance requirements and workload needs, with the ability to scale up or down as necessary." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "database"} # Collect via AzureMysqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -327,6 +331,8 @@ class AzureMysqlServerConfiguration(MicrosoftResource): kind: ClassVar[str] = "azure_mysql_server_configuration" _kind_display: ClassVar[str] = "Azure MySQL Server Configuration" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server Configuration is a management tool for MySQL databases hosted on Microsoft Azure. It provides settings to control database performance, security, networking, and backup options. Users can adjust parameters like connection limits, storage capacity, and access controls. The service integrates with other Azure features for monitoring and maintenance of MySQL instances." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/single-server/concepts-server-parameters" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "database"} # Collect via AzureMysqlServer() config: Json = field(factory=dict) @@ -364,6 +370,8 @@ class AzureMysqlServerDatabase(MicrosoftResource): kind: ClassVar[str] = "azure_mysql_server_database" _kind_display: ClassVar[str] = "Azure MySQL Server Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server Database is a managed relational database service on Microsoft's cloud platform. It provides MySQL-compatible database capabilities, handling infrastructure management, backups, and security. Users can create, scale, and operate MySQL databases in the cloud, with options for high availability and automatic updates while maintaining compatibility with existing MySQL applications and tools." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureMysqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -388,6 +396,10 @@ class AzureMysqlServerFirewallRule(MicrosoftResource): kind: ClassVar[str] = "azure_mysql_server_firewall_rule" _kind_display: ClassVar[str] = "Azure MySQL Server Firewall Rule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server Firewall Rule is a security feature that controls network access to your Azure Database for MySQL server. It specifies which IP addresses or IP ranges can connect to the server, blocking all other connections. This rule helps protect your database from unauthorized access and provides a layer of security for your MySQL deployments in Azure." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/mysql/single-server/how-to-manage-firewall-using-portal" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "firewall", "group": "networking"} # Collect via AzureMysqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -412,6 +424,8 @@ class AzureMysqlServerLogFile(MicrosoftResource): kind: ClassVar[str] = "azure_mysql_server_log_file" _kind_display: ClassVar[str] = "Azure MySQL Server Log File" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server Log File is a component of Azure Database for MySQL that records database activities and events. It captures information about queries, connections, errors, and system operations. Administrators can use these logs for monitoring, troubleshooting, security auditing, and performance analysis. The log file helps maintain database health and optimize operations in Azure's managed MySQL service." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/single-server/concepts-server-logs" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "database"} # Collect via AzureMysqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -440,6 +454,8 @@ class AzureMysqlServerMaintenance(MicrosoftResource): kind: ClassVar[str] = "azure_mysql_server_maintenance" _kind_display: ClassVar[str] = "Azure MySQL Server Maintenance" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server Maintenance is a service that manages and performs routine upkeep tasks for MySQL databases hosted on Azure. It handles tasks such as software updates, security patches, performance tuning, and backup management. This service helps maintain database health, security, and performance while reducing manual administrative work for database administrators." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/concepts-maintenance" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "database"} # Collect via AzureMysqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -531,6 +547,8 @@ class AzureMysqlServer(MicrosoftResource, BaseDatabase): kind: ClassVar[str] = "azure_mysql_server" _kind_display: ClassVar[str] = "Azure MySQL Server" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server is a managed database service offered by Microsoft Azure. It provides a MySQL-compatible relational database in the cloud. Users can create, operate, and scale MySQL databases without managing infrastructure. The service offers automated backups, security features, and performance optimization tools. It supports various application types and integrates with other Azure services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="mysql", @@ -771,6 +789,8 @@ class AzureMysqlServerBackup(MicrosoftResource): kind: ClassVar[str] = "azure_mysql_server_backup" _kind_display: ClassVar[str] = "Azure MySQL Server Backup" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure MySQL Server Backup is a service that creates and manages backups of MySQL databases hosted on Azure. It performs regular automated backups, stores them securely, and provides options for point-in-time restoration. Users can configure backup frequency, retention periods, and geo-redundancy settings. The service helps protect data and supports disaster recovery scenarios." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/mysql/single-server/concepts-backup" _metadata: ClassVar[Dict[str, Any]] = {"icon": "backup", "group": "database"} # Collect via AzureMysqlServer() mapping: ClassVar[Dict[str, Bender]] = { diff --git a/plugins/azure/fix_plugin_azure/resource/network.py b/plugins/azure/fix_plugin_azure/resource/network.py index 3048507a77..a7f93802f3 100644 --- a/plugins/azure/fix_plugin_azure/resource/network.py +++ b/plugins/azure/fix_plugin_azure/resource/network.py @@ -958,6 +958,8 @@ class AzureNetworkApplicationGateway(MicrosoftResource, BaseGateway): kind: ClassVar[str] = "azure_network_application_gateway" _kind_display: ClassVar[str] = "Azure Network Application Gateway" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Application Gateway is a web traffic load balancer operating at the application layer. It routes incoming requests to appropriate backend pools based on URL paths, host headers, or other criteria. It provides SSL termination, web application firewall protection, and session affinity. The gateway supports both HTTP and HTTPS traffic." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/application-gateway/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -1121,6 +1123,8 @@ class AzureNetworkApplicationGatewayFirewallRuleSet(MicrosoftResource): kind: ClassVar[str] = "azure_network_application_gateway_firewall_rule_set" _kind_display: ClassVar[str] = "Azure Network Application Gateway Firewall Rule Set" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Application Gateway Firewall Rule Set is a configuration component for Azure Application Gateway's Web Application Firewall. It defines a collection of security rules that protect web applications from common vulnerabilities and attacks. The rule set filters incoming traffic, blocking malicious requests and ensuring compliance with security standards for web applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/waf-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "firewall", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -1352,6 +1356,8 @@ class AzureNetworkFirewall(MicrosoftResource, BaseFirewall): kind: ClassVar[str] = "azure_network_firewall" _kind_display: ClassVar[str] = "Azure Network Firewall" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Firewall is a cloud-based security service that protects Azure Virtual Network resources. It filters incoming and outgoing traffic using stateful inspection, application-level filtering, and threat intelligence. The firewall supports both IPv4 and IPv6 protocols, implements network address translation, and provides logging and analytics capabilities for monitoring network activity." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.microsoft.com/en-us/azure/firewall/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "firewall", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -1451,6 +1457,8 @@ class AzureNetworkBastionHost(MicrosoftResource): kind: ClassVar[str] = "azure_network_bastion_host" _kind_display: ClassVar[str] = "Azure Network Bastion Host" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Bastion Host is a managed service that provides secure remote access to virtual machines in Azure virtual networks. It acts as a jump server, eliminating the need for public IP addresses on VMs. Users connect through the Azure portal or via SSH/RDP protocols, with Bastion handling authentication and network traversal." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/bastion/bastion-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "host", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -1519,6 +1527,10 @@ class AzureNetworkCustomIpPrefix(MicrosoftResource): kind: ClassVar[str] = "azure_network_custom_ip_prefix" _kind_display: ClassVar[str] = "Azure Network Custom IP Prefix" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Custom IP Prefix is a feature that lets users bring their own public IP address ranges to Azure. It provides control over IP address management, facilitates IP address migration to Azure, and supports scenarios requiring specific IP ranges. Users can associate these prefixes with resources like public IP addresses and public load balancers." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/ip-services/custom-ip-address-prefix" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -1573,6 +1585,8 @@ class AzureNetworkDdosProtectionPlan(MicrosoftResource): kind: ClassVar[str] = "azure_network_ddos_protection_plan" _kind_display: ClassVar[str] = "Azure Network DDoS Protection Plan" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network DDoS Protection Plan is a service that defends Azure resources against Distributed Denial of Service attacks. It monitors network traffic, detects potential threats, and automatically mitigates them. The plan provides real-time attack metrics, alerting, and logging. It offers protection for virtual networks, public IP addresses, and application gateways without requiring changes to applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/ddos-protection/ddos-protection-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -1755,6 +1769,10 @@ class AzureNetworkFlowLog(MicrosoftResource): kind: ClassVar[str] = "azure_network_flow_log" _kind_display: ClassVar[str] = "Azure Network Flow Log" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Flow Log is a feature that records information about IP traffic flowing through Azure network security groups. It captures data on allowed and denied connections, including source and destination IP addresses, ports, protocols, and traffic direction. This log helps administrators monitor network activity, troubleshoot connectivity issues, and enhance security posture." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/network-watcher/network-watcher-nsg-flow-logging-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} # Collect via AzureNetworkWatcher() _reference_kinds: ClassVar[ModelReference] = { @@ -1799,6 +1817,10 @@ class AzureNetworkSecurityGroup(MicrosoftResource, BaseSecurityGroup): kind: ClassVar[str] = "azure_network_security_group" _kind_display: ClassVar[str] = "Azure Network Security Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Security Group is a virtual firewall that controls inbound and outbound network traffic for Azure resources. It filters traffic based on rules that specify allowed or denied communication between resources. These rules can be applied to subnets, virtual machines, or network interfaces, providing a layer of protection for Azure-hosted applications and services." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/network-security-groups-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "security_group", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -1879,6 +1901,8 @@ class AzureNetworkRouteTable(MicrosoftResource, BaseRoutingTable): kind: ClassVar[str] = "azure_network_route_table" _kind_display: ClassVar[str] = "Azure Network Route Table" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Route Table is a networking component in Microsoft Azure that controls traffic routing within virtual networks. It defines custom routes to direct network traffic between subnets, virtual networks, and on-premises networks. Route tables override Azure's default system routes, providing granular control over data flow and enhancing network security by specifying next-hop destinations for network traffic." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/manage-route-table" _metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -2018,6 +2042,8 @@ class AzureNetworkNatGateway(MicrosoftResource): kind: ClassVar[str] = "azure_network_nat_gateway" _kind_display: ClassVar[str] = "Azure Network NAT Gateway" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network NAT Gateway is a managed service that provides outbound internet connectivity for virtual networks. It translates private IP addresses to public IP addresses, letting multiple resources share a single public IP. This service enhances security by hiding internal network structures and centralizes outbound internet traffic management for Azure resources." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/nat-gateway-resource" _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -2060,6 +2086,8 @@ class AzureNetworkPublicIPAddress(MicrosoftResource, BaseIPAddress): kind: ClassVar[str] = "azure_network_public_ip_address" _kind_display: ClassVar[str] = "Azure Network Public IP Address" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Public IP Address is a resource that provides a static or dynamic public IP address for Azure resources. It assigns an internet-facing IP to virtual machines, load balancers, and other services, enabling inbound and outbound communication with the internet. This address can be associated with network interfaces or used as a frontend IP for load balancers." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/ip-services/public-ip-addresses" _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -2234,6 +2262,8 @@ class AzureNetworkSubnet(MicrosoftResource, BaseSubnet): kind: ClassVar[str] = "azure_network_subnet" _kind_display: ClassVar[str] = "Azure Network Subnet" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Subnet is a logical subdivision of an Azure virtual network. It segments the network address space, organizing resources and controlling traffic flow. Subnets define IP address ranges for devices and services, enabling network isolation and security. They facilitate communication between resources within the same subnet and manage access to other subnets or external networks." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-manage-subnet" _metadata: ClassVar[Dict[str, Any]] = {"icon": "subnet", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -2351,6 +2381,8 @@ class AzureNetworkVirtualNetworkTap(MicrosoftResource): kind: ClassVar[str] = "azure_network_virtual_network_tap" _kind_display: ClassVar[str] = "Azure Network Virtual Network TAP" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Network TAP is a feature that copies network traffic from Azure virtual machines. It sends the copied data to a network packet collector or analytics tool. This lets users monitor, analyze, and troubleshoot network traffic without affecting the original data flow or VM performance. It supports both inbound and outbound traffic monitoring." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-tap-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -2555,6 +2587,8 @@ class AzureNetworkPrivateLinkService(MicrosoftResource): kind: ClassVar[str] = "azure_network_private_link_service" _kind_display: ClassVar[str] = "Azure Network Private Link Service" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Private Link Service is a networking feature that provides private connectivity to services in Azure. It creates a secure link between a service provider's resources and a consumer's virtual network, bypassing the public internet. This service offers enhanced security and reduced data exposure by keeping network traffic within the Azure backbone." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/private-link/private-link-service-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -2606,6 +2640,10 @@ class AzureNetworkInterface(MicrosoftResource, BaseNetworkInterface): kind: ClassVar[str] = "azure_network_interface" _kind_display: ClassVar[str] = "Azure Network Interface" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "An Azure Network Interface is a virtual network adapter that connects Azure virtual machines to the internet, Azure virtual networks, and on-premises networks. It assigns IP addresses, network security group rules, and load balancing settings to VMs. Network Interfaces can be attached to or detached from VMs and configured with multiple IP configurations." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-network-interface" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -2720,6 +2758,8 @@ class AzureNetworkDscpConfiguration(MicrosoftResource): kind: ClassVar[str] = "azure_network_dscp_configuration" _kind_display: ClassVar[str] = "Azure Network Dscp Configuration" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network DSCP Configuration is a feature that manages Quality of Service (QoS) for network traffic in Azure. It allows users to set Differentiated Services Code Point (DSCP) values on outbound packets from virtual machines. This configuration helps prioritize and control network traffic, ensuring specific applications or services receive appropriate bandwidth and performance levels within Azure networks." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-qos-settings" _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3007,6 +3047,8 @@ class AzureNetworkExpressRouteCircuit(MicrosoftResource): kind: ClassVar[str] = "azure_network_express_route_circuit" _kind_display: ClassVar[str] = "Azure Network Express Route Circuit" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Express Route Circuit is a service that creates a private connection between an organization's on-premises network and Microsoft Azure data centers. It bypasses the public internet, offering more reliable connectivity, lower latency, and higher security for data transfer. This service supports various connectivity models and can be integrated with virtual networks." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/expressroute/expressroute-circuit-peerings" _metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3137,6 +3179,10 @@ class AzureNetworkExpressRouteCrossConnection(MicrosoftResource): kind: ClassVar[str] = "azure_network_express_route_cross_connection" _kind_display: ClassVar[str] = "Azure Network Express Route Cross Connection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Express Route Cross Connection is a service that links on-premises networks to Microsoft Azure through a dedicated private connection. It bypasses the public internet, providing direct access to Azure services with increased reliability, lower latency, and higher security. This connection supports various network protocols and can be used for data transfer, application hosting, and disaster recovery." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/expressroute/expressroute-cross-connections-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3284,6 +3330,10 @@ class AzureNetworkExpressRouteGateway(MicrosoftResource, BaseGateway): kind: ClassVar[str] = "azure_network_express_route_gateway" _kind_display: ClassVar[str] = "Azure Network Express Route Gateway" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Express Route Gateway is a service that connects on-premises networks to Microsoft Azure using dedicated private connections. It provides a direct route to Azure services, bypassing the public internet for improved performance and security. The gateway facilitates data transfer between on-premises infrastructure and Azure virtual networks, supporting various connectivity options and protocols." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/expressroute/expressroute-about-virtual-network-gateways" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "access_control"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3361,6 +3411,8 @@ class AzureNetworkExpressRoutePort(MicrosoftResource): kind: ClassVar[str] = "azure_network_express_route_port" _kind_display: ClassVar[str] = "Azure Network Express Route Port" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Express Route Port is a Microsoft Azure service that provides dedicated high-bandwidth connections between on-premises networks and Azure data centers. It bypasses the public internet, offering direct connectivity for faster data transfer and reduced latency. This service supports large-scale data migration, disaster recovery, and hybrid cloud deployments for organizations requiring consistent network performance." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/expressroute/expressroute-ports-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3417,6 +3469,8 @@ class AzureNetworkExpressRoutePortsLocation(MicrosoftResource): kind: ClassVar[str] = "azure_network_express_route_ports_location" _kind_display: ClassVar[str] = "Azure Network Express Route Ports Location" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Express Route Ports Location is a physical connection point for direct, private connectivity between on-premises networks and Microsoft Azure. It provides dedicated, high-bandwidth links to Azure, bypassing the public internet. This service offers consistent network performance, reduced latency, and enhanced security for critical workloads and data transfer between enterprise infrastructure and Azure datacenters." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/expressroute/expressroute-locations-providers" _metadata: ClassVar[Dict[str, Any]] = {"icon": "region", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3604,6 +3658,8 @@ class AzureNetworkFirewallPolicy(MicrosoftResource, BasePolicy): kind: ClassVar[str] = "azure_network_firewall_policy" _kind_display: ClassVar[str] = "Azure Network Firewall Policy" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Firewall Policy is a cloud-based security service that manages network traffic rules for Azure Firewall instances. It enforces security controls across multiple virtual networks and subscriptions, providing centralized configuration and management of firewall rules. The policy defines network and application rules, threat intelligence settings, and DNS configurations for connected firewalls." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/firewall-manager/policy-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3663,6 +3719,10 @@ class AzureNetworkIpAllocation(MicrosoftResource): kind: ClassVar[str] = "azure_network_ip_allocation" _kind_display: ClassVar[str] = "Azure Network IP Allocation" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network IP Allocation is a service that manages IP address assignments within Azure virtual networks. It automates the distribution of IP addresses to resources, tracks usage, and prevents conflicts. The service handles both public and private IP addresses, supporting IPv4 and IPv6 protocols. It integrates with other Azure networking features for efficient address management." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/ip-services/ip-address-allocation-types" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3709,6 +3769,8 @@ class AzureNetworkIpGroup(MicrosoftResource): kind: ClassVar[str] = "azure_network_ip_group" _kind_display: ClassVar[str] = "Azure Network IP Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network IP Group is a feature in Azure networking that lets users group IP addresses, ranges, and subnets. It simplifies network security rule management by applying policies to multiple IPs simultaneously. Users can create, update, and delete IP groups, then reference them in security rules for network security groups and Azure Firewalls." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/ip-groups-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -3771,6 +3833,10 @@ class AzureNetworkLoadBalancerProbe(MicrosoftResource, BaseHealthCheck): kind: ClassVar[str] = "azure_network_load_balancer_probe" _kind_display: ClassVar[str] = "Azure Network Load Balancer Probe" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Load Balancer Probe is a component that checks the health of backend instances in a load-balanced pool. It sends periodic requests to each instance and monitors responses. Based on these checks, the probe determines which instances are healthy and can receive traffic, ensuring that requests are only routed to functioning servers within the load balancer's backend pool." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/load-balancer/load-balancer-custom-probe-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "networking"} # Collect via AzureNetworkLoadBalancer mapping: ClassVar[Dict[str, Bender]] = { @@ -3998,6 +4064,8 @@ class AzureNetworkLoadBalancer(MicrosoftResource, BaseLoadBalancer): kind: ClassVar[str] = "azure_network_load_balancer" _kind_display: ClassVar[str] = "Azure Network Load Balancer" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Load Balancer is a Layer 4 load balancing service for Azure resources. It distributes incoming network traffic across multiple instances of an application, improving availability and fault tolerance. The service supports both inbound and outbound scenarios, can handle millions of flows, and works with virtual machines in virtual networks or internet-facing services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/load-balancer/load-balancer-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "load_balancer", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4199,6 +4267,10 @@ class AzureNetworkProfile(MicrosoftResource): kind: ClassVar[str] = "azure_network_profile" _kind_display: ClassVar[str] = "Azure Network Profile" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Profile is a configuration template for network resources in Microsoft Azure. It defines settings for virtual networks, subnets, network security groups, and other network components. Network Profiles simplify the deployment and management of consistent network configurations across multiple Azure resources, reducing setup time and potential configuration errors in cloud environments." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-network-interface#network-interface-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "profile", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4334,6 +4406,10 @@ class AzureNetworkVirtualAppliance(MicrosoftResource): kind: ClassVar[str] = "azure_network_virtual_appliance" _kind_display: ClassVar[str] = "Azure Network Virtual Appliance" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Appliance is a network security service in Microsoft Azure. It functions as a virtual firewall, routing traffic between subnets and enforcing security policies. The appliance inspects network packets, filters traffic, and protects against threats. It can be deployed in virtual networks to control data flow and implement network security rules." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-vnet-plan-design-arm#network-virtual-appliances" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4458,6 +4534,10 @@ class AzureNetworkVirtualApplianceSku(MicrosoftResource): kind: ClassVar[str] = "azure_network_virtual_appliance_sku" _kind_display: ClassVar[str] = "Azure Network Virtual Appliance SKU" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Appliance SKU is a service offering from Microsoft Azure that provides network security and connectivity services. It includes virtual appliances for firewalls, intrusion detection, load balancing, and VPN gateways. These appliances can be deployed in Azure virtual networks to protect and manage network traffic between on-premises and cloud resources." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-virtual-appliance-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "misc"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4489,6 +4569,8 @@ class AzureNetworkWatcher(MicrosoftResource): kind: ClassVar[str] = "azure_network_watcher" _kind_display: ClassVar[str] = "Azure Network Watcher" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Watcher is a monitoring and diagnostic service for Azure networks. It provides tools to observe, analyze, and troubleshoot network issues. Users can view network topology, test connectivity, capture packets, and diagnose VPN problems. Network Watcher offers insights into network performance and security, helping administrators maintain and optimize their Azure network infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/network-watcher/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4649,6 +4731,8 @@ class AzureNetworkP2SVpnGateway(MicrosoftResource, BaseGateway): kind: ClassVar[str] = "azure_network_p2_s_vpn_gateway" _kind_display: ClassVar[str] = "Azure Network P2 S VPN Gateway" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network P2S VPN Gateway is a virtual network gateway that establishes secure connections between remote clients and Azure virtual networks. It supports point-to-site VPN connectivity, letting individual devices access resources in Azure over an encrypted tunnel. Users can connect from various locations using supported VPN clients, maintaining secure access to Azure resources." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/vpn-gateway/point-to-site-about" _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4696,6 +4780,8 @@ class AzureNetworkPublicIPPrefix(MicrosoftResource): kind: ClassVar[str] = "azure_network_public_ip_prefix" _kind_display: ClassVar[str] = "Azure Network Public IP Prefix" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Public IP Prefix is a feature that reserves a contiguous range of public IP addresses in Azure. It provides a fixed set of public IPs for network resources, simplifying IP management and reducing the need for frequent updates to firewall rules. Users can assign addresses from this prefix to multiple resources within their Azure environment." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/public-ip-address-prefix" _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4763,6 +4849,8 @@ class AzureNetworkRouteFilter(MicrosoftResource): kind: ClassVar[str] = "azure_network_route_filter" _kind_display: ClassVar[str] = "Azure Network Route Filter" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Route Filter is a service that controls BGP route exchange between virtual network gateways and Microsoft Edge routers. It filters incoming and outgoing routes based on specified criteria, such as route prefix or community values. This helps manage traffic flow and optimize routing in Azure networking environments, enhancing security and performance." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/route-server/route-filter-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4793,6 +4881,10 @@ class AzureNetworkSecurityPartnerProvider(MicrosoftResource): kind: ClassVar[str] = "azure_network_security_partner_provider" _kind_display: ClassVar[str] = "Azure Network Security Partner Provider" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Security Partner Provider is a service that integrates third-party network security solutions into Azure's infrastructure. It offers a range of security tools from Microsoft's partners, including firewalls, intrusion detection systems, and content filtering. This service helps organizations enhance their network security posture within the Azure environment by implementing additional protective measures." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-service-provider-security-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4823,6 +4915,8 @@ class AzureNetworkUsage(MicrosoftResource, AzureBaseUsage, BaseNetworkQuota): kind: ClassVar[str] = "azure_network_usage" _kind_display: ClassVar[str] = "Azure Network Usage" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Usage is a monitoring feature in Microsoft Azure that tracks and reports network traffic data for virtual machines, virtual networks, and other Azure resources. It provides information on data transfer volumes, bandwidth consumption, and network connectivity patterns, helping users analyze and optimize their network resource utilization and costs within the Azure cloud environment." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/networking/azure-network-usage" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -4898,6 +4992,8 @@ class AzureNetworkVirtualHub(MicrosoftResource): kind: ClassVar[str] = "azure_network_virtual_hub" _kind_display: ClassVar[str] = "Azure Network Virtual Hub" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Hub is a managed networking service in Microsoft Azure. It serves as a central connection point for virtual networks and on-premises networks. The hub facilitates secure communication between connected networks, implements routing, and integrates with other Azure networking services. It supports site-to-site VPN, ExpressRoute, and point-to-site VPN connections." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-wan/virtual-wan-about" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -5100,6 +5196,8 @@ class AzureNetworkVirtualNetwork(MicrosoftResource, BaseNetwork): kind: ClassVar[str] = "azure_network_virtual_network" _kind_display: ClassVar[str] = "Azure Network Virtual Network" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Network is a service in Microsoft Azure that creates isolated, private networks in the cloud. It lets users define IP address ranges, subnets, and network security policies. Virtual Network connects Azure resources, enables communication between them, and provides connectivity to on-premises networks through VPN or ExpressRoute. It supports network segmentation and traffic filtering." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -5180,6 +5278,8 @@ class AzureNetworkVirtualRouter(MicrosoftResource): kind: ClassVar[str] = "azure_network_virtual_router" _kind_display: ClassVar[str] = "Azure Network Virtual Router" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Router is a cloud service that provides routing capabilities within Azure virtual networks. It manages traffic flow between subnets, on-premises networks, and the internet. The service supports BGP routing protocols, custom route tables, and network address translation, enabling users to control and optimize network traffic across their Azure infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-network/virtual-router-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -5214,6 +5314,8 @@ class AzureNetworkVirtualWAN(MicrosoftResource): kind: ClassVar[str] = "azure_network_virtual_wan" _kind_display: ClassVar[str] = "Azure Network Virtual WAN" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual WAN is a Microsoft networking service that connects and manages multiple networks across different locations. It integrates on-premises networks, branch offices, and remote sites with Azure virtual networks. The service provides automated routing, optimized data paths, and simplified connectivity for organizations with distributed network infrastructures, supporting both site-to-site and point-to-site VPN configurations." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-wan/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -5347,6 +5449,8 @@ class AzureNetworkVirtualWANVpnConnection(MicrosoftResource, BaseTunnel): kind: ClassVar[str] = "azure_network_virtual_wan_vpn_connection" _kind_display: ClassVar[str] = "Azure Network Virtual WAN VPN Connection" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual WAN VPN Connection is a service that establishes secure tunnels between on-premises networks and Azure's Virtual WAN. It creates encrypted connections over the internet, facilitating data transfer and resource access across distributed locations. This service integrates with Azure's global network infrastructure to provide connectivity for branch offices and remote sites." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-wan/virtual-wan-site-to-site-portal" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} # Collect via AzureNetworkVirtualWANVpnGateway mapping: ClassVar[Dict[str, Bender]] = { @@ -5483,6 +5587,8 @@ class AzureNetworkVirtualWANVpnGateway(MicrosoftResource, BaseGateway): kind: ClassVar[str] = "azure_network_virtual_wan_vpn_gateway" _kind_display: ClassVar[str] = "Azure Network Virtual WAN VPN Gateway" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual WAN VPN Gateway is a managed service that connects on-premises networks to Azure through site-to-site VPN tunnels. It provides encrypted communication between remote locations and Azure virtual networks, supporting both policy-based and route-based VPN connections. The service handles routing, encryption, and high availability for secure and reliable connectivity across distributed environments." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/virtual-wan/virtual-wan-about" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -5609,6 +5715,8 @@ class AzureNetworkVpnServerConfiguration(MicrosoftResource): kind: ClassVar[str] = "azure_network_vpn_server_configuration" _kind_display: ClassVar[str] = "Azure Network VPN Server Configuration" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network VPN Server Configuration is a service in Microsoft Azure that sets up and manages virtual private network gateways. It creates secure connections between on-premises networks and Azure virtual networks, encrypting data transmitted over the internet. This configuration supports site-to-site, point-to-site, and VNet-to-VNet connections, providing remote access and network integration capabilities." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-about-vpn-devices" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -5738,6 +5846,8 @@ class AzureNetworkVpnSite(MicrosoftResource, BasePeeringConnection): kind: ClassVar[str] = "azure_network_vpn_site" _kind_display: ClassVar[str] = "Azure Network VPN Site" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network VPN Site is a service that creates secure connections between on-premises networks and Azure virtual networks. It establishes encrypted tunnels over the internet, facilitating data transfer and resource access across locations. This service supports both site-to-site and point-to-site configurations, providing remote users with access to Azure resources while maintaining network security." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-about-vpn-gateway" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -5987,6 +6097,8 @@ class AzureNetworkWebApplicationFirewallPolicy(MicrosoftResource): kind: ClassVar[str] = "azure_network_web_application_firewall_policy" _kind_display: ClassVar[str] = "Azure Network Web Application Firewall Policy" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Web Application Firewall Policy is a security configuration for web applications in Azure. It defines rules to protect against common web vulnerabilities and threats. The policy filters incoming traffic, blocks malicious requests, and enforces security measures. It can be applied to Azure Application Gateway, Azure Front Door, and Azure CDN to safeguard web applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/policy-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "firewall", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", @@ -6224,6 +6336,8 @@ class AzureNetworkVirtualNetworkGateway(MicrosoftResource, BaseGateway): kind: ClassVar[str] = "azure_network_virtual_network_gateway" _kind_display: ClassVar[str] = "Azure Network Virtual Network Gateway" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Network Gateway is a managed service that connects on-premises networks to Azure virtual networks through site-to-site VPNs or ExpressRoute circuits. It establishes secure connections, handles traffic routing, and provides encryption for data transfer between on-premises and cloud environments. The gateway supports various VPN types and can be configured for high availability." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-about-vpngateways" _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} # Collect via AzureResourceGroup mapping: ClassVar[Dict[str, Bender]] = { @@ -6300,6 +6414,10 @@ class AzureNetworkLocalNetworkGateway(MicrosoftResource, BaseGateway): kind: ClassVar[str] = "azure_network_local_network_gateway" _kind_display: ClassVar[str] = "Azure Network Local Network Gateway" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Local Network Gateway represents an on-premises network in Azure. It defines the IP address ranges of the local network and serves as a connection point for site-to-site VPN tunnels. This resource facilitates secure communication between Azure virtual networks and on-premises networks, enabling hybrid connectivity and data exchange across environments." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-about-vpn-gateway#local-network-gateway" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} # Collect via AzureResourceGroup mapping: ClassVar[Dict[str, Bender]] = { @@ -6346,9 +6464,13 @@ class AzureTunnelConnectionHealth: class AzureNetworkVirtualNetworkGatewayConnection(MicrosoftResource, BaseTunnel): kind: ClassVar[str] = "azure_network_virtual_network_gateway_connection" _kind_display: ClassVar[str] = "Azure Network Virtual Network Gateway Connection" + _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network Virtual Network Gateway Connection is a service that links on-premises networks with Azure virtual networks through secure VPN tunnels. It establishes encrypted connections over the internet or private peering, facilitating data transfer and resource access between local infrastructure and Azure cloud environments. This service supports site-to-site, point-to-site, and VNet-to-VNet connectivity options." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-about-vpn-gateway-settings" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} # Collect via AzureResourceGroup - _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["azure_network_virtual_network_gateway", "azure_network_local_network_gateway"]}, } @@ -6507,6 +6629,8 @@ class AzureNetworkDNSRecordSet(MicrosoftResource, BaseDNSRecordSet): kind: ClassVar[str] = "azure_network_dns_record_set" _kind_display: ClassVar[str] = "Azure Network DNS Record Set" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network DNS Record Set is a collection of DNS records within a specific domain hosted in Azure DNS. It contains multiple records of the same type (e.g., A, CNAME, MX) for a given name. This feature manages and organizes DNS entries, facilitating domain name resolution and routing for Azure resources and external services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/dns/dns-zones-records" _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["azure_network_dns_zone"]}, @@ -6553,6 +6677,8 @@ class AzureNetworkDNSZone(MicrosoftResource, BaseDNSZone): kind: ClassVar[str] = "azure_network_dns_zone" _kind_display: ClassVar[str] = "Azure Network DNS Zone" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Network DNS Zone is a managed service that hosts DNS records for a domain within Microsoft Azure. It provides name resolution for resources in virtual networks and public internet services. Users can create, update, and delete DNS records through Azure's management interfaces or APIs, supporting various record types like A, AAAA, CNAME, and MX." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/dns/dns-zones-records" _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns_record", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="network", diff --git a/plugins/azure/fix_plugin_azure/resource/postgresql.py b/plugins/azure/fix_plugin_azure/resource/postgresql.py index a4b9ef6bff..289dd8f116 100644 --- a/plugins/azure/fix_plugin_azure/resource/postgresql.py +++ b/plugins/azure/fix_plugin_azure/resource/postgresql.py @@ -38,8 +38,12 @@ class AzurePostgresqlServerADAdministrator(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_postgresql_ad_administrator" _kind_display: ClassVar[str] = "Azure PostgreSQL Ad Administrator" - _metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "database"} _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure PostgreSQL AD Administrator is a role that manages access to Azure Database for PostgreSQL using Azure Active Directory credentials. It controls user authentication, assigns database roles, and sets permissions for AD users and groups. This administrator can create and manage logins, ensuring secure and centralized identity management for PostgreSQL databases in Azure." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/how-to-configure-sign-in-azure-ad-authentication" + ) + _metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "database"} # Collect via AzurePostgresqlServer() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { "id": S("id"), @@ -203,6 +207,8 @@ class AzurePostgresqlServerType(MicrosoftResource, BaseDatabaseInstanceType): kind: ClassVar[str] = "azure_postgresql_server_type" _kind_display: ClassVar[str] = "Azure PostgreSQL Server Type" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure PostgreSQL Server Type is a managed database service on Microsoft Azure cloud platform. It offers PostgreSQL databases with built-in security, automated backups, and performance optimization. Users can deploy, manage, and scale PostgreSQL databases without infrastructure management responsibilities. The service supports various PostgreSQL versions and provides options for different workload requirements and performance tiers." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/postgresql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "management"} # Collect via AzurePostgresqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -321,6 +327,10 @@ class AzurePostgresqlServerConfiguration(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_postgresql_server_configuration" _kind_display: ClassVar[str] = "Azure PostgreSQL Server Configuration" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure PostgreSQL Server Configuration is a service for managing PostgreSQL database settings in Microsoft Azure. It provides options to adjust server parameters, performance tuning, and security settings. Users can modify configurations such as connection limits, memory allocation, and query optimization to align with specific application requirements and workload demands within the Azure cloud environment." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/postgresql/single-server/concepts-server-parameters" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "database"} # Collect via AzurePostgresqlServer() config: Json = field(factory=dict) @@ -358,6 +368,8 @@ class AzurePostgresqlServerDatabase(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_postgresql_server_database" _kind_display: ClassVar[str] = "Azure PostgreSQL Server Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure PostgreSQL Server Database is a managed database service on Microsoft's cloud platform. It provides a fully-functional PostgreSQL database environment without the need for infrastructure management. Users can create, operate, and scale PostgreSQL databases in the cloud, benefiting from built-in security features, automated backups, and integration with other Azure services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/postgresql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzurePostgresqlServer() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { @@ -378,6 +390,10 @@ class AzurePostgresqlServerFirewallRule(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_postgresql_server_firewall_rule" _kind_display: ClassVar[str] = "Azure PostgreSQL Server Firewall Rule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure PostgreSQL Server Firewall Rule is a security feature that controls network access to a PostgreSQL database server in Azure. It defines a range of IP addresses permitted to connect to the server, blocking all other incoming connections. This rule helps protect the database from unauthorized access and potential security threats." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-firewall-rules" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "firewall", "group": "networking"} # Collect via AzurePostgresqlServer() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { @@ -413,6 +429,8 @@ class AzurePostgresqlServer(MicrosoftResource, AzureTrackedResource, BaseDatabas kind: ClassVar[str] = "azure_postgresql_server" _kind_display: ClassVar[str] = "Azure PostgreSQL Server" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure PostgreSQL Server is a managed database service offering PostgreSQL on Microsoft's cloud platform. It provides automated backups, patching, and security updates. Users can deploy, manage, and scale PostgreSQL databases without infrastructure management responsibilities. The service supports various PostgreSQL versions and offers features like high availability, monitoring, and performance optimization tools." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.microsoft.com/en-us/azure/postgresql/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="postgresql", @@ -654,6 +672,10 @@ class AzurePostgresqlServerBackup(MicrosoftResource, AzureProxyResource): kind: ClassVar[str] = "azure_postgresql_server_backup" _kind_display: ClassVar[str] = "Azure PostgreSQL Server Backup" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure PostgreSQL Server Backup is a feature in Azure Database for PostgreSQL that creates backups of your database automatically. It stores these backups in geo-redundant storage for data protection. The service retains backups for a specified period and supports point-in-time recovery, letting users restore their database to a previous state within the retention period." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-backup-restore" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "backup", "group": "database"} # Collect via AzurePostgresqlServer() mapping: ClassVar[Dict[str, Bender]] = AzureProxyResource.mapping | { diff --git a/plugins/azure/fix_plugin_azure/resource/security.py b/plugins/azure/fix_plugin_azure/resource/security.py index 5a4e781a23..e0dd85baac 100644 --- a/plugins/azure/fix_plugin_azure/resource/security.py +++ b/plugins/azure/fix_plugin_azure/resource/security.py @@ -40,6 +40,8 @@ class AzureSecurityPricing(MicrosoftResource): kind: ClassVar[str] = "azure_security_pricing" _kind_display: ClassVar[str] = "Azure Security Pricing" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Security Pricing outlines the costs associated with Microsoft's cloud security services. It covers various security features and tools offered within the Azure platform, including identity management, threat protection, and data encryption. The pricing structure typically follows a pay-as-you-go model, with options for different service tiers based on specific security needs and usage levels." # fmt: skip + _docs_url: ClassVar[str] = "https://azure.microsoft.com/en-us/pricing/details/security-center/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "misc"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service=service_name, @@ -94,6 +96,10 @@ class AzureSecurityAssessment(MicrosoftResource): kind: ClassVar[str] = "azure_security_assessment" _kind_display: ClassVar[str] = "Azure Security Assessment" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Security Assessment is a service that evaluates Azure resources for potential security vulnerabilities and compliance issues. It scans configurations, identifies risks, and provides recommendations to improve security posture. The assessment covers various aspects including network security, data protection, and access control, offering insights to help organizations strengthen their Azure environment's security." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/defender-for-cloud/secure-score-security-controls" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "management"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": [MicrosoftResource.kind]}} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( @@ -137,6 +143,10 @@ class AzureSecurityServerVulnerabilityAssessmentsSetting(MicrosoftResource): kind: ClassVar[str] = "azure_security_server_vulnerability_assessments_setting" _kind_display: ClassVar[str] = "Azure Security Server Vulnerability Assessments Setting" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Security Server Vulnerability Assessments Setting is a feature that scans Azure virtual machines for security vulnerabilities. It identifies potential weaknesses in the system configuration, missing security updates, and other security risks. The setting provides recommendations for addressing these vulnerabilities, helping organizations improve their overall security posture and reduce the risk of cyber attacks." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/defender-for-cloud/deploy-vulnerability-assessment-vm" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service=service_name, @@ -165,6 +175,8 @@ class AzureSecuritySetting(MicrosoftResource): kind: ClassVar[str] = "azure_security_setting" _kind_display: ClassVar[str] = "Azure Security Setting" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Security Setting is a feature in Microsoft Azure that configures and manages security controls for cloud resources. It provides options to set access policies, enable encryption, implement network security, and monitor for threats. Users can adjust these settings to align with their organization's security requirements and compliance standards across Azure services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/security/fundamentals/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service=service_name, @@ -191,6 +203,8 @@ class AzureSecurityAutoProvisioningSetting(MicrosoftResource): kind: ClassVar[str] = "azure_security_auto_provisioning_setting" _kind_display: ClassVar[str] = "Azure Security Auto Provisioning Setting" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Security Auto Provisioning Setting is a feature that automatically deploys security agents to Azure virtual machines and other resources. It monitors these resources for security vulnerabilities and compliance issues, then reports findings to Azure Security Center. This setting helps maintain consistent security across an Azure environment without manual intervention for each resource." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/defender-for-cloud/enable-data-collection" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service=service_name, diff --git a/plugins/azure/fix_plugin_azure/resource/sql_server.py b/plugins/azure/fix_plugin_azure/resource/sql_server.py index d3328d4136..121bf16ed5 100644 --- a/plugins/azure/fix_plugin_azure/resource/sql_server.py +++ b/plugins/azure/fix_plugin_azure/resource/sql_server.py @@ -30,6 +30,10 @@ class AzureSqlServerADAdministrator(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_ad_administrator" _kind_display: ClassVar[str] = "Azure SQL Server Ad Administrator" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server AD Administrator is a role that integrates Azure Active Directory authentication with SQL Server. It manages access control for SQL databases using Azure AD credentials, allowing organizations to centralize user management and enforce multi-factor authentication. This role simplifies security administration by applying Azure AD policies and permissions to SQL Server resources." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/database/authentication-aad-configure?tabs=azure-powershell" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "database"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": [MicrosoftResource.kind]}} # Collect via AzureSqlServer() @@ -86,6 +90,8 @@ class AzureSqlServerDatabase(MicrosoftResource, BaseDatabase): kind: ClassVar[str] = "azure_sql_server_database" _kind_display: ClassVar[str] = "Azure SQL Server Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Database is a cloud-based relational database service provided by Microsoft. It offers SQL Server functionality in a managed environment, handling tasks like backups, updates, and scaling. Users can store and retrieve structured data, run complex queries, and integrate with applications while Microsoft maintains the underlying infrastructure and ensures data security and availability." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureSqlServer() _reference_kinds: ClassVar[ModelReference] = { @@ -324,6 +330,8 @@ class AzureSqlServerElasticPool(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_elastic_pool" _kind_display: ClassVar[str] = "Azure SQL Server Elastic Pool" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Elastic Pool is a resource management tool for multiple SQL databases. It allocates a shared set of compute and storage resources across databases, optimizing performance and costs. Administrators can set resource limits for the pool and individual databases, adjusting capacity as needed without affecting application availability or performance." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/elastic-pool-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "profile", "group": "compute"} # Collect via AzureSqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -390,6 +398,8 @@ class AzureSqlServerFailoverGroup(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_failover_group" _kind_display: ClassVar[str] = "Azure SQL Server Failover Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Failover Group is a feature that manages automatic failover for multiple databases across Azure regions. It maintains data synchronization between primary and secondary servers, ensuring database availability during outages or disasters. When failover occurs, the group redirects client connections to the secondary server, minimizing downtime and data loss for mission-critical applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/auto-failover-group-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} # Collect via AzureSqlServer() _reference_kinds: ClassVar[ModelReference] = { @@ -429,6 +439,8 @@ class AzureSqlServerFirewallRule(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_firewall_rule" _kind_display: ClassVar[str] = "Azure SQL Server Firewall Rule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Firewall Rule is a security feature that controls network access to Azure SQL databases and servers. It defines IP address ranges permitted to connect to the database, blocking unauthorized access attempts. Administrators can configure rules at the server or database level, specifying individual IP addresses or address ranges to grant or restrict access." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/firewall-configure" _metadata: ClassVar[Dict[str, Any]] = {"icon": "firewall", "group": "networking"} # Collect via AzureSqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -449,6 +461,10 @@ class AzureSqlServerDatabaseGeoBackupPolicy(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_database_geo_backup_policy" _kind_display: ClassVar[str] = "Azure SQL Server Database Geo Backup Policy" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Database Geo Backup Policy is a feature that creates automated backups of SQL databases in a secondary region. It provides disaster recovery capabilities by replicating data across geographically distant Azure regions. This policy ensures data protection and business continuity in case of regional outages or failures, minimizing data loss and enabling quick recovery to maintain database availability." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/database/active-geo-replication-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "database"} # Collect via AzureSqlServerDatabase() mapping: ClassVar[Dict[str, Bender]] = { @@ -501,6 +517,10 @@ class AzureSqlServerManagedInstanceFailoverGroup(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_managed_instance_failover_group" _kind_display: ClassVar[str] = "Azure SQL Server Managed Instance Failover Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Managed Instance Failover Group is a feature that provides database redundancy and high availability across multiple regions. It automatically replicates databases from a primary managed instance to a secondary instance in a different region. During outages or disasters, it initiates failover to the secondary instance, ensuring continuous data access and minimizing downtime for applications." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/auto-failover-group-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureSqlServerManagedInstance() _reference_kinds: ClassVar[ModelReference] = { @@ -555,6 +575,10 @@ class AzureSqlServerManagedInstancePool(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_managed_instance_pool" _kind_display: ClassVar[str] = "Azure SQL Server Managed Instance Pool" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Managed Instance Pool is a service that hosts multiple SQL Server Managed Instances within a shared resource environment. It provides cost-effective database management by sharing resources across instances while maintaining isolation. Users can create and manage instances within the pool, optimizing resource utilization and reducing operational overhead for database deployments." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/instance-pools-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="sql", @@ -596,6 +620,8 @@ class AzureSqlServerJobAgent(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_job_agent" _kind_display: ClassVar[str] = "Azure SQL Server Job Agent" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Job Agent is a component of Azure SQL Managed Instance that automates and schedules database maintenance tasks. It executes jobs containing Transact-SQL scripts across multiple databases, performs routine operations, and manages backups. The agent supports recurring schedules, monitors job status, and provides notifications for successful or failed job runs." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/job-agent-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "database"} # Collect via AzureSqlServer() _reference_kinds: ClassVar[ModelReference] = { @@ -629,6 +655,10 @@ class AzureSqlServerManagedInstanceADAdministrator(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_managed_instance_ad_administrator" _kind_display: ClassVar[str] = "Azure SQL Server Managed Instance Ad Administrator" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Managed Instance AD Administrator is a role that manages authentication and authorization for a SQL Managed Instance using Azure Active Directory. It configures and maintains AD integration, sets up single sign-on, and controls access to database resources. This role ensures secure user authentication and simplifies identity management within the SQL Managed Instance environment." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/authentication-aad-configure?view=azuresql#provision-azure-ad-administrator" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "access_control"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": [MicrosoftResource.kind]}} # Collect via AzureSqlManagedInstance() @@ -662,6 +692,10 @@ class AzureSqlServerManagedInstanceDatabase(MicrosoftResource, BaseDatabase): kind: ClassVar[str] = "azure_sql_server_managed_instance_database" _kind_display: ClassVar[str] = "Azure SQL Server Managed Instance Database" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Managed Instance Database is a cloud-based service that provides SQL Server functionality in Azure. It offers compatibility with on-premises SQL Server databases while handling maintenance, updates, and backups. Users can migrate existing databases to the cloud, retaining features and security settings, and benefit from Azure's infrastructure without managing hardware or software." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/instance-create-quickstart" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} # Collect via AzureSqlServerManagedInstance() mapping: ClassVar[Dict[str, Bender]] = { @@ -819,6 +853,8 @@ class AzureSqlServerManagedInstance(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_managed_instance" _kind_display: ClassVar[str] = "Azure SQL Server Managed Instance" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Managed Instance is a cloud database service that provides SQL Server compatibility with automated management features. It offers a near-complete parity with on-premises SQL Server instances, including native virtual network support and full SQL Server engine compatibility, while handling routine database management tasks such as backups, patching, and monitoring." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="sql", @@ -1032,6 +1068,8 @@ class AzureSqlServerVirtualCluster(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_virtual_cluster" _kind_display: ClassVar[str] = "Azure SQL Server Virtual Cluster" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Virtual Cluster is a managed database service in Microsoft Azure. It provides SQL Server functionality in a cloud environment, offering high availability and disaster recovery features. Users can deploy, manage, and scale SQL Server databases without maintaining physical infrastructure. The service supports various workloads and integrates with other Azure services for data management and analytics." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/virtual-cluster-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="sql", @@ -1079,6 +1117,10 @@ class AzureSqlServerTrustGroup(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_trust_group" _kind_display: ClassVar[str] = "Azure SQL Server Trust Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Trust Group is a security feature that enhances data protection across multiple SQL Server instances. It creates a trusted boundary for data sharing and communication between servers, reducing the need for individual firewall rules. This group facilitates secure cross-server queries and transactions while maintaining isolation from external networks." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/database/trust-group-concept-overview?view=azuresql" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "access_control"} # Collect via AzureSqlServerManagedInstance() mapping: ClassVar[Dict[str, Bender]] = { @@ -1099,6 +1141,10 @@ class AzureSqlServerVirtualNetworkRule(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_virtual_network_rule" _kind_display: ClassVar[str] = "Azure SQL Server Virtual Network Rule" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Virtual Network Rule is a security feature that controls network access to SQL Server instances. It defines which subnet within an Azure Virtual Network can connect to the SQL Server. This rule enhances database security by restricting access to specific virtual networks, reducing potential attack surfaces and improving data protection." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/database/vnet-service-endpoint-rule-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} # Collect via AzureSqlServer() mapping: ClassVar[Dict[str, Bender]] = { @@ -1121,6 +1167,10 @@ class AzureSqlServerDatabaseWorkloadGroup(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_database_workload_group" _kind_display: ClassVar[str] = "Azure SQL Server Database Workload Group" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Database Workload Group is a resource management feature that organizes database queries into groups with defined resource limits. It controls CPU, memory, and concurrent request usage for each group, ensuring fair resource distribution and preventing resource contention. This feature helps manage workload priorities and maintain performance across different database tasks." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/azure-sql/database/workload-group-resource-governor-overview" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} # Collect via AzureSqlServerDatabase() mapping: ClassVar[Dict[str, Bender]] = { @@ -1275,6 +1325,8 @@ class AzureSqlServerAdvisor(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server_advisor" _kind_display: ClassVar[str] = "Azure SQL Server Advisor" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server Advisor is a performance optimization tool for SQL databases in Microsoft Azure. It analyzes database usage patterns and provides recommendations to improve query performance, indexing strategies, and overall database efficiency. The advisor identifies potential issues, suggests corrective actions, and offers guidance on implementing its recommendations to enhance database operations." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/advisor-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "profile", "group": "database"} # Collect via AzureSqlServer() and AzureSqlServerDatabase() mapping: ClassVar[Dict[str, Bender]] = { @@ -1376,6 +1428,8 @@ class AzureSqlServer(MicrosoftResource): kind: ClassVar[str] = "azure_sql_server" _kind_display: ClassVar[str] = "Azure SQL Server" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure SQL Server is a cloud-based relational database service provided by Microsoft. It offers SQL Server functionality in a managed environment, including automatic updates, backups, and performance optimization. Users can create, scale, and maintain databases without managing infrastructure, while benefiting from built-in security features and integration with other Azure services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/azure-sql/database/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="sql", diff --git a/plugins/azure/fix_plugin_azure/resource/storage.py b/plugins/azure/fix_plugin_azure/resource/storage.py index 1526b43870..8d47ffe699 100644 --- a/plugins/azure/fix_plugin_azure/resource/storage.py +++ b/plugins/azure/fix_plugin_azure/resource/storage.py @@ -135,6 +135,8 @@ class AzureStorageBlobContainer(MicrosoftResource, BaseBucket): kind: ClassVar[str] = "azure_storage_blob_container" _kind_display: ClassVar[str] = "Azure Storage Blob Container" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage Blob Container is a Microsoft Azure service that stores unstructured data as objects. It organizes and manages large amounts of binary or text data, such as documents, images, and videos. Users can access, upload, and download files via HTTP/HTTPS, with options for public or private access. It supports data redundancy and integrates with other Azure services." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction" _metadata: ClassVar[Dict[str, Any]] = {"icon": "bucket", "group": "storage"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), @@ -190,6 +192,8 @@ class AzureStorageAccountDeleted(MicrosoftResource): kind: ClassVar[str] = "azure_storage_account_deleted" _kind_display: ClassVar[str] = "Azure Storage Account Deleted" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage Account Deleted is an event that occurs when a storage account is removed from an Azure subscription. This action permanently erases all data within the account, including blobs, files, queues, and tables. Once deleted, the storage account name becomes available for reuse, and associated resources are released back to the Azure infrastructure." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/storage/common/storage-account-delete" _metadata: ClassVar[Dict[str, Any]] = {"icon": "account", "group": "storage"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="storage", @@ -248,6 +252,8 @@ class AzureStorageFileShare(MicrosoftResource, BaseNetworkShare): kind: ClassVar[str] = "azure_storage_file_share" _kind_display: ClassVar[str] = "Azure Storage File Share" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage File Share is a cloud-based file storage service provided by Microsoft Azure. It offers shared access to files across multiple virtual machines and applications using the Server Message Block (SMB) protocol. Users can mount file shares on Windows, Linux, and macOS systems, and access them like traditional network drives." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/storage/files/storage-files-introduction" _metadata: ClassVar[Dict[str, Any]] = {"icon": "network_share", "group": "storage"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), @@ -302,6 +308,8 @@ class AzureStorageQueue(MicrosoftResource, BaseQueue): kind: ClassVar[str] = "azure_storage_queue" _kind_display: ClassVar[str] = "Azure Storage Queue" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage Queue is a cloud-based messaging service for storing and retrieving messages. It provides asynchronous communication between application components, supporting distributed applications and microservices. Users can create, send, receive, and delete messages programmatically. The service offers durability, reliability, and scalability for handling large volumes of messages across multiple clients." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/storage/queues/storage-queues-introduction" _metadata: ClassVar[Dict[str, Any]] = {"icon": "queue", "group": "storage"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), @@ -336,6 +344,10 @@ class AzureStorageSku(MicrosoftResource): kind: ClassVar[str] = "azure_storage_sku" _kind_display: ClassVar[str] = "Azure Storage SKU" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage SKU is a pricing tier for Microsoft's cloud storage service. It defines the capacity, performance, and features available for storing and managing data in Azure. SKUs offer different levels of redundancy, access speeds, and data protection options, allowing users to choose the most suitable storage solution for their specific needs and budget." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://learn.microsoft.com/en-us/azure/storage/common/storage-account-overview#storage-account-skus" + ) _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "misc"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="storage", @@ -710,6 +722,8 @@ class AzureStorageAccount(MicrosoftResource): kind: ClassVar[str] = "azure_storage_account" _kind_display: ClassVar[str] = "Azure Storage Account" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage Account is a Microsoft cloud service that provides data storage for various applications. It offers different storage types including blob, file, queue, and table storage. Users can store and retrieve data securely, manage access controls, and integrate with other Azure services. The account supports data redundancy and encryption for data protection." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/storage/common/storage-account-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "account", "group": "storage"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="storage", @@ -1056,6 +1070,8 @@ class AzureStorageAccountUsage(MicrosoftResource, AzureBaseUsage): kind: ClassVar[str] = "azure_storage_account_usage" _kind_display: ClassVar[str] = "Azure Storage Account Usage" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage Account Usage tracks and reports the consumption of Azure storage services within an account. It provides data on storage capacity utilization, transaction counts, and data transfer volumes across various storage types like blobs, files, queues, and tables. This information helps users monitor resource usage, manage costs, and plan for capacity needs." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/storage/common/storage-account-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "management"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="storage", @@ -1102,6 +1118,8 @@ class AzureStorageTable(MicrosoftResource): kind: ClassVar[str] = "azure_storage_table" _kind_display: ClassVar[str] = "Azure Storage Table" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Storage Table is a NoSQL data store in Microsoft Azure that stores structured data without a schema. It organizes data into entities with properties, grouped into tables. Users can query and update data using REST APIs or client libraries. It supports large volumes of data and provides automatic partitioning for performance and scalability." # fmt: skip + _docs_url: ClassVar[str] = "https://docs.microsoft.com/en-us/azure/storage/tables/table-storage-overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "storage"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("id"), diff --git a/plugins/azure/fix_plugin_azure/resource/web.py b/plugins/azure/fix_plugin_azure/resource/web.py index f706d23316..c1f0296c72 100644 --- a/plugins/azure/fix_plugin_azure/resource/web.py +++ b/plugins/azure/fix_plugin_azure/resource/web.py @@ -72,6 +72,8 @@ class AzureWebAppServicePlan(MicrosoftResource): kind: ClassVar[str] = "azure_web_app_service_plan" _kind_display: ClassVar[str] = "Azure Web App Service Plan" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web App Service Plan is a resource that defines the compute capacity for running web apps in Azure. It specifies the number of virtual machines, their size, and features available to the hosted applications. Users can choose from various tiers, each offering different performance levels, storage options, and additional capabilities to match their application requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/app-service/overview-hosting-plans" _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "misc"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", @@ -147,6 +149,8 @@ class AzureWebCertificate(MicrosoftResource): kind: ClassVar[str] = "azure_web_certificate" _kind_display: ClassVar[str] = "Azure Web Certificate" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web Certificate is a digital credential issued by Microsoft Azure for websites hosted on its platform. It verifies the identity and security of web applications, ensuring encrypted connections between users and servers. This certificate helps protect data in transit, prevents unauthorized access, and enhances trust in Azure-hosted websites for both site owners and visitors." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/app-service/configure-ssl-certificate" _metadata: ClassVar[Dict[str, Any]] = {"icon": "certificate", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", @@ -392,6 +396,8 @@ class AzureWebContainerApp(MicrosoftResource): kind: ClassVar[str] = "azure_web_container_app" _kind_display: ClassVar[str] = "Azure Web Container App" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web Container App is a cloud service for deploying containerized web applications. It runs and manages containers in a serverless environment, handling infrastructure tasks like scaling and load balancing. The service supports various programming languages and frameworks, integrates with Azure services, and offers features for monitoring, security, and continuous deployment of containerized applications." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/container-apps/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "application", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", @@ -503,6 +509,8 @@ class AzureWebDomain(MicrosoftResource): kind: ClassVar[str] = "azure_web_domain" _kind_display: ClassVar[str] = "Azure Web Domain" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web Domain is a service provided by Microsoft Azure that manages domain names for web applications. It offers domain registration, DNS configuration, and integration with other Azure services. Users can purchase domains, set up DNS records, and connect their domains to Azure-hosted websites or applications, simplifying web hosting and domain management within the Azure ecosystem." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/app-service/manage-custom-dns-buy-domain" _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", @@ -646,6 +654,8 @@ class AzureWebHostingEnvironment(MicrosoftResource): kind: ClassVar[str] = "azure_web_hosting_environment" _kind_display: ClassVar[str] = "Azure Web Hosting Environment" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web Hosting Environment is a cloud-based service for deploying and running web applications. It provides infrastructure, tools, and resources for hosting websites and web apps on Microsoft's Azure platform. Users can deploy applications, manage domains, configure security settings, and scale resources as needed. The service supports multiple programming languages and frameworks." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/app-service/environment/intro" _metadata: ClassVar[Dict[str, Any]] = {"icon": "environment", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", @@ -790,6 +800,8 @@ class AzureWebKubeEnvironment(MicrosoftResource): kind: ClassVar[str] = "azure_web_kube_environment" _kind_display: ClassVar[str] = "Azure Web Kube Environment" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web Kube Environment is a service for deploying and managing containerized web applications on Azure Kubernetes Service. It provides tools for configuring, monitoring, and scaling applications in Kubernetes clusters. Users can deploy applications, set up networking, manage container registries, and handle application updates through this integrated platform." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/app-service/environment/overview" _metadata: ClassVar[Dict[str, Any]] = {"icon": "environment", "group": "managed_kubernetes"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", @@ -1390,6 +1402,8 @@ class AzureWebApp(MicrosoftResource, BaseServerlessFunction): kind: ClassVar[str] = "azure_web_app" _kind_display: ClassVar[str] = "Azure Web App" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web App is a cloud-based platform for hosting web applications. It supports multiple programming languages and frameworks, offering automatic scaling and load balancing. Users can deploy code directly from version control systems, configure custom domains, and implement SSL certificates. The service integrates with other Azure products for monitoring, security, and database connectivity." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/app-service/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "function", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", @@ -1649,6 +1663,8 @@ class AzureWebAppStaticSite(MicrosoftResource): kind: ClassVar[str] = "azure_web_app_static_site" _kind_display: ClassVar[str] = "Azure Web App Static Site" _kind_service: ClassVar[Optional[str]] = service_name + _kind_description: ClassVar[str] = "Azure Web App Static Site is a service for hosting static web content. It offers global content distribution, automated builds and deployments from code repositories, and integration with Azure services. Users can deploy HTML, CSS, JavaScript, and image files directly from their repositories, with support for custom domains and free SSL certificates." # fmt: skip + _docs_url: ClassVar[str] = "https://learn.microsoft.com/en-us/azure/static-web-apps/" _metadata: ClassVar[Dict[str, Any]] = {"icon": "service", "group": "compute"} api_spec: ClassVar[AzureResourceSpec] = AzureResourceSpec( service="web", diff --git a/plugins/gcp/fix_plugin_gcp/resources/base.py b/plugins/gcp/fix_plugin_gcp/resources/base.py index 9e002c23be..1c5cf31241 100644 --- a/plugins/gcp/fix_plugin_gcp/resources/base.py +++ b/plugins/gcp/fix_plugin_gcp/resources/base.py @@ -283,11 +283,8 @@ 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] = "A GCP Resource is a specific instance of a service or component within Google Cloud Platform. It represents a unit of cloud infrastructure or functionality, such as a virtual machine, storage bucket, or database. GCP Resources are created, managed, and organized to build and operate cloud-based applications and services on the Google Cloud Platform." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/docs" api_spec: ClassVar[Optional[GcpApiSpec]] = None mapping: ClassVar[Dict[str, Bender]] = {} @@ -449,10 +446,8 @@ class GcpProject(GcpResource, BaseAccount): kind: ClassVar[str] = "gcp_project" _kind_display: ClassVar[str] = "GCP Project" _metadata: ClassVar[Dict[str, Any]] = {"icon": "access_control", "group": "networking"} - _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 organizing and managing resources on Google Cloud Platform. It groups related services, applications, and configurations under a single entity. Projects provide access control, billing, and resource allocation mechanisms. Users can create, modify, and delete resources within projects, ensuring separation and organization of cloud assets across different initiatives or teams." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/resource-manager/docs/creating-managing-projects" @define(eq=False, slots=False) @@ -502,11 +497,8 @@ 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] = "GCP Region Quota is a Google Cloud Platform feature that limits resource usage within specific geographic regions. It controls the number of resources, such as virtual machines or storage capacity, that can be created in a given region. This helps manage costs, ensure resource availability, and comply with regional regulations or organizational policies." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/quotas#region_quotas" _metadata: ClassVar[Dict[str, Any]] = {"icon": "quota", "group": "misc"} mapping: ClassVar[Dict[str, Bender]] = { "id": S("name").or_else(S("id")).or_else(S("selfLink")), @@ -524,10 +516,8 @@ 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 geographic area where Google Cloud Platform resources are hosted. It consists of multiple data centers called zones. Regions provide redundancy and reduced latency for cloud services. Users can deploy applications and store data in specific regions to meet performance, compliance, or data residency requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/regions-zones" api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", @@ -580,12 +570,8 @@ 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 geographical location within a Google Cloud Platform region where computing resources are hosted. It contains data centers with independent power, cooling, and networking infrastructure. Zones provide isolation for workloads and help improve fault tolerance and availability by distributing resources across multiple physical locations within a region." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/regions-zones" api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service="compute", version="v1", diff --git a/plugins/gcp/fix_plugin_gcp/resources/billing.py b/plugins/gcp/fix_plugin_gcp/resources/billing.py index 525153f2fc..8b6d7abad6 100644 --- a/plugins/gcp/fix_plugin_gcp/resources/billing.py +++ b/plugins/gcp/fix_plugin_gcp/resources/billing.py @@ -20,10 +20,8 @@ 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] = "A GCP Billing Account is a financial entity in Google Cloud Platform that manages payment for services used across projects. It tracks costs, sets budgets, generates invoices, and handles payments. Users can associate multiple projects with a single billing account, view detailed usage reports, and configure alerts for spending thresholds." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/billing/docs/how-to/manage-billing-account" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "account", "group": "management"} _reference_kinds: ClassVar[ModelReference] = { @@ -72,10 +70,8 @@ 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 detailed financial data for Google Cloud Platform projects. It displays current charges, past expenses, and usage breakdowns for services and resources. Users can view, analyze, and export billing information, set budget alerts, and manage payment methods. This feature helps organizations track costs and make informed decisions about cloud spending." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/billing/docs/how-to/get-project-billing-info" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "management"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -114,11 +110,8 @@ 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] = "Google Cloud Platform (GCP) Service is a suite of cloud computing tools and infrastructure provided by Google. It offers computing, storage, networking, and data analytics capabilities. Users can deploy applications, manage databases, and process data using GCP's infrastructure. The service supports various programming languages and provides APIs for integration with other systems." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/docs" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "service", "group": "management"} _reference_kinds: ClassVar[ModelReference] = { @@ -318,10 +311,8 @@ 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 (Google Cloud Platform Stock Keeping Unit) is a unique identifier for a specific product or service within Google Cloud. It represents a distinct billing unit for resources, features, or offerings. SKUs help users track and manage their cloud usage, costs, and resource allocation across different GCP services and configurations." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/skus" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service=service_name, diff --git a/plugins/gcp/fix_plugin_gcp/resources/compute.py b/plugins/gcp/fix_plugin_gcp/resources/compute.py index 6969c185bc..893543d315 100644 --- a/plugins/gcp/fix_plugin_gcp/resources/compute.py +++ b/plugins/gcp/fix_plugin_gcp/resources/compute.py @@ -50,11 +50,8 @@ 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 Type refers to specialized hardware components available in Google Cloud Platform. These accelerators, such as GPUs and TPUs, enhance computational performance for specific workloads like machine learning, data processing, and scientific simulations. Users can attach accelerators to virtual machines to boost processing speed and efficiency for their applications and tasks." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/gpus" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "compute"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -96,11 +93,8 @@ def get_ip_address_type(ip_address: str) -> str: class GcpAddress(GcpResource, BaseIPAddress): 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 Google Cloud Platform resource that provides static external IP addresses for virtual machine instances and network load balancers. It assigns permanent IP addresses to resources, ensuring consistent accessibility even when instances are stopped and restarted. GCP Address supports both regional and global IP addresses, facilitating network configuration and management in cloud environments." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/ip-addresses" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -329,11 +323,8 @@ class GcpAutoscalerStatusDetails: class GcpAutoscaler(GcpResource, BaseAutoScalingGroup): 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 Google Cloud Platform service that adjusts the number of virtual machine instances in a managed instance group based on workload demands. It monitors resource usage and automatically adds or removes instances to maintain performance and optimize costs. Users can set scaling policies and thresholds to control the autoscaling behavior." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/autoscaler" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "successors": { @@ -460,10 +451,8 @@ class GcpBackendBucketCdnPolicy: class GcpBackendBucket(GcpResource, BaseBucket): 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] = "GCP Backend Bucket is a Cloud Storage bucket that serves as the backend for a Google Cloud Load Balancer. It stores and delivers static content to users, reducing load on application servers. Backend Buckets can handle large files and high traffic volumes, improving website performance and reducing costs by offloading static content delivery from compute resources." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/backend-bucket" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service=service_name, @@ -853,11 +842,8 @@ 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 Google Cloud Platform component that distributes incoming network traffic across multiple backend instances. It handles load balancing, health checks, and traffic routing for applications and services. Backend Service defines how traffic reaches the backend instances and can be used with various load balancing options in GCP." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/backend-service" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "load_balancer", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -984,10 +970,8 @@ 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 Type refers to the storage options available for virtual machine instances in Google Cloud Platform. It includes persistent disks like standard HDD, balanced SSD, and performance SSD, as well as local SSDs. These disk types offer different performance characteristics and price points, catering to various workload requirements and storage needs in cloud computing environments." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/disks#disk-types" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "storage"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -1110,10 +1094,8 @@ 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 storage option in Google Cloud Platform that provides persistent block storage for virtual machines. It functions as a hard drive for compute instances, storing data and operating systems. GCP Disk offers various types, including standard, balanced, and SSD, with different performance characteristics to suit diverse workload requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/disks" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_disk_type", "gcp_instance"]}, @@ -1239,10 +1221,8 @@ class GcpExternalVpnGatewayInterface: class GcpExternalVpnGateway(GcpResource, BaseGateway): kind: ClassVar[str] = "gcp_external_vpn_gateway" _kind_display: ClassVar[str] = "GCP External VPN Gateway" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "GCP External VPN Gateway is a network resource representing a VPN device located outside Google Cloud Platform. It establishes secure, encrypted connections between on-premises networks and GCP virtual networks. This gateway facilitates data transfer and communication between external networks and GCP resources, extending an organization's network infrastructure into the cloud while maintaining security and privacy." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/vpn/concepts/external-vpn-gateway" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service=service_name, @@ -1386,10 +1366,8 @@ 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 network security feature in Google Cloud Platform. It defines rules to control incoming and outgoing traffic for virtual machine instances. The policy specifies which network connections are permitted or blocked based on criteria like IP addresses, ports, and protocols. It helps protect cloud resources from unauthorized access and potential security threats." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/vpc/docs/firewall-policies" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_network"]}} @@ -1482,11 +1460,8 @@ class GcpFirewallLogConfig: class GcpFirewall(GcpResource, BaseFirewall): 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] = "Google Cloud Platform (GCP) Firewall is a network security service that controls incoming and outgoing traffic to GCP resources. It uses rules to filter traffic based on IP addresses, protocols, and ports. GCP Firewall helps protect virtual machine instances and other resources from unauthorized access and potential security threats within the cloud environment." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/vpc/docs/firewalls" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_network"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -1591,11 +1566,8 @@ class GcpForwardingRuleServiceDirectoryRegistration: class GcpForwardingRule(GcpResource, BaseLoadBalancer): 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] = "A GCP Forwarding Rule is a network configuration component in Google Cloud Platform that directs incoming traffic to specific destinations. It maps an IP address and port to one or more backend services or target instances, distributing network load across multiple resources. Forwarding rules can be used for load balancing, traffic routing, and network address translation." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/forwarding-rules" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -1811,11 +1783,8 @@ 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 (NEG) is a configuration object that specifies a group of backend endpoints or services. It functions as a target for load balancing in Google Cloud Platform. NEGs can contain IP addresses, ports, and instance groups, providing flexibility in defining backend services and supporting various load balancing scenarios across different regions and instance types." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/negs" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -2011,10 +1980,8 @@ 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] = "GCP Operation represents a long-running task in Google Cloud Platform. It tracks the progress and status of asynchronous operations, such as creating or modifying resources. GCP Operation provides information about the operation's start time, end time, current state, and any errors encountered. Users can monitor and manage these tasks through the GCP API or console." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/reference/rest/v1/operations" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "log", "group": "management"} _reference_kinds: ClassVar[ModelReference] = { @@ -2112,10 +2079,9 @@ 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] = "GCP Public Delegated Prefix is a networking feature that lets users bring their own IP addresses to Google Cloud. It assigns a specific range of public IP addresses to a project, which can be used for various resources within that project. This feature provides control over IP address management and facilitates migration of existing workloads to GCP." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://cloud.google.com/network-connectivity/docs/network-connectivity-center/concepts/public-delegated-prefix" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} @@ -2311,11 +2277,8 @@ class GcpTCPHealthCheck: class GcpHealthCheck(GcpResource, BaseHealthCheck): 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] = "GCP Health Check is a Google Cloud Platform service that monitors the health of backend instances in load balancing configurations. It performs periodic checks on specified endpoints to determine instance availability and readiness. Health Check reports instance status to load balancers, which use this information to direct traffic only to healthy instances, improving application reliability and performance." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/health-checks" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "health", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -2369,11 +2332,8 @@ class GcpHealthCheck(GcpResource, BaseHealthCheck): 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] = "GCP HTTP Health Check is a monitoring service that verifies the availability and functionality of HTTP-based services running on Google Cloud Platform. It sends periodic HTTP requests to specified endpoints, evaluates responses, and reports the health status of the target resources. This information helps maintain service reliability by triggering automatic actions or alerting administrators to potential issues." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/health-checks" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "health", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -2417,11 +2377,8 @@ 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] = "GCP HTTPS Health Check is a Google Cloud Platform service that monitors the health of HTTPS endpoints. It performs regular checks on specified URLs, verifying their availability and response status. The service helps maintain system reliability by detecting issues and facilitating automated responses, such as rerouting traffic or triggering alerts when problems are identified." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/health-checks#https-hc" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "health", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -2516,10 +2473,8 @@ 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 Image is a virtual machine image in Google Cloud Platform. It contains an operating system and pre-installed software, serving as a template for creating instances. Users can select from public images provided by Google or create custom images. GCP Images can be used to launch multiple identical instances or replicate environments across projects." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/images" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "image", "group": "compute"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk"]}} @@ -2818,9 +2773,9 @@ 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 Google Cloud Platform service that automates the creation, management, and scaling of virtual machine instances. It maintains a specified number of instances, replaces unhealthy ones, and adjusts the group size based on defined rules. The service handles load balancing, rolling updates, and auto-scaling to meet application demands." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://cloud.google.com/compute/docs/instance-groups/working-with-managed-instance-groups" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} @@ -2902,10 +2857,8 @@ 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] = "A GCP Instance Group is a collection of virtual machine instances that operate as a single entity. It manages multiple identical instances, distributes incoming traffic, and automatically adjusts the number of instances based on demand. Instance Groups provide load balancing, auto-scaling, and rolling updates to maintain application availability and performance in Google Cloud Platform." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/instance-groups" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network", "gcp_subnetwork"], "delete": ["gcp_network", "gcp_subnetwork"]} @@ -3402,10 +3355,8 @@ 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] = "A GCP Instance Template is a resource that defines the configuration for virtual machine instances in Google Cloud Platform. It specifies the machine type, boot disk image, network interfaces, and other settings. Instance Templates serve as blueprints for creating multiple identical instances or instance groups, facilitating consistent and repeatable VM deployments across projects." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/instance-templates" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "compute"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_machine_type"]}} @@ -3456,10 +3407,8 @@ 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] = "A GCP Instance is a virtual machine running on Google Cloud Platform. It provides computing resources for applications and services. Users can choose from various machine types, operating systems, and configurations to meet their specific needs. GCP Instances can be created, modified, and terminated as required, offering flexibility for workload management and resource allocation." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/instances" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": { @@ -3655,11 +3604,8 @@ 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] = "GCP Interconnect Attachment is a networking component in Google Cloud Platform that connects on-premises networks to Google's network. It establishes a direct, private connection between a customer's data center and Google's infrastructure, bypassing the public internet. This connection provides increased security, reduced latency, and improved network performance for data transfer and cloud resource access." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/interconnect/concepts/overview" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -3762,12 +3708,8 @@ 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] = "A GCP Interconnect Location is a physical facility where Google Cloud Platform connects to external networks. It serves as a point of presence for establishing direct, private network connections between an organization's on-premises infrastructure and Google's network. This connection reduces latency, enhances security, and improves data transfer performance compared to public internet connections." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/interconnect/concepts/locations" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "region", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -3865,11 +3807,8 @@ 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 network connectivity service from Google Cloud Platform. It provides direct physical connections between on-premises networks and Google's network. This service offers dedicated bandwidth and reduced latency compared to public internet connections. It supports both layer 2 and layer 3 connectivity options, enhancing data transfer speeds and network security for organizations using Google Cloud services." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/interconnect" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -3948,9 +3887,8 @@ 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 License refers to the agreement between Google and users of Google Cloud Platform (GCP) services. It outlines terms of use, pricing, and access rights for cloud computing resources. The license governs data storage, processing, and application deployment on GCP infrastructure. It specifies user responsibilities, service limitations, and compliance requirements for utilizing Google's cloud technologies." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/license-manager/docs" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "certificate", "group": "compute"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -4111,11 +4049,8 @@ 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] = "A GCP Machine Image is a resource that captures the complete state of a virtual machine instance, including its configuration, data, and software. It serves as a template for creating new instances or restoring existing ones. Machine Images can be used for backup, disaster recovery, and rapid deployment of preconfigured environments across Google Cloud Platform." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/machine-images" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "image", "group": "compute"} _reference_kinds: ClassVar[ModelReference] = { @@ -4200,10 +4135,8 @@ 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 Type defines the hardware configuration for virtual machine instances in Google Cloud Platform. It specifies the CPU, memory, and storage resources allocated to a VM. Users select machine types based on their workload requirements, balancing performance and cost. Machine types range from small, economical options to large, high-performance configurations for resource-intensive applications." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/machine-types" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "compute"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -4373,11 +4306,8 @@ 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 is a cloud-based security solution that protects networks at their entry points. It filters incoming traffic, detects and blocks threats, and secures connections between users and applications. The service applies security policies, inspects traffic for malware, and provides visibility into network activity, helping organizations maintain a secure network perimeter." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-edge-security/docs" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "service", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -4453,10 +4383,8 @@ class GcpNetworkPeering: class GcpNetwork(GcpResource, BaseNetwork): 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 Google Cloud Platform's networking infrastructure. It provides connectivity between resources within GCP and to external networks. The service includes virtual private clouds, load balancing, DNS, VPN, and CDN capabilities. It manages traffic routing, security, and performance optimization for applications and services running on Google Cloud." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/vpc/docs" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service=service_name, @@ -4570,11 +4498,8 @@ class GcpShareSettings: class GcpNodeGroup(GcpResource): kind: ClassVar[str] = "gcp_node_group" _kind_display: ClassVar[str] = "GCP Node Group" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "A GCP Node Group is a collection of virtual machine instances in Google Cloud Platform that function as worker nodes in a Kubernetes cluster. It manages node creation, scaling, and maintenance within a specified configuration. Node Groups automate the provisioning and lifecycle of compute resources, ensuring consistent performance and availability for containerized applications." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "compute"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_node_template"]}} @@ -4660,10 +4585,8 @@ 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 pre-configured setup for deploying Node.js applications on Google Cloud Platform. It includes the necessary files and settings to run a Node.js app on GCP services. The template provides a starting point for developers, reducing setup time and ensuring compatibility with GCP's infrastructure and best practices for Node.js deployments." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/reference/rest/v1/nodeTemplates" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "compute"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk_type"]}} @@ -4718,11 +4641,8 @@ 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 Type refers to the configuration of virtual machine instances in Google Cloud Platform. It specifies the CPU, memory, and storage resources allocated to a node in a cluster. Node types determine the compute capacity and performance characteristics of instances, influencing workload capabilities and cost. Users select node types based on their application requirements and budget constraints." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/machine-types" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "type", "group": "compute"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -4855,11 +4775,8 @@ 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 network traffic inspection tool that copies packets from specific instances or subnets and forwards them to a collector. It captures both ingress and egress traffic, providing visibility into network communications for security analysis, performance monitoring, and troubleshooting purposes. Users can configure filters to target specific traffic types or protocols." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/vpc/docs/packet-mirroring" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_instance", "gcp_subnetwork"]}} @@ -4933,10 +4850,8 @@ 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] = "GCP Public Advertised Prefix is a networking feature in Google Cloud Platform that announces IP address ranges to the internet. It enables organizations to advertise their own IP addresses through Google's network infrastructure, maintaining control over their address space while benefiting from Google's global network for routing and connectivity to other networks and service providers." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/public-advertised-prefixes" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "dns", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_public_delegated_prefix"]}} @@ -5124,10 +5039,8 @@ 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] = "GCP Commitment is a pricing model offered by Google Cloud Platform. It allows customers to reserve and prepay for specific amounts of cloud resources for a fixed term. In exchange for this commitment, users receive discounted rates compared to on-demand pricing. This model helps organizations manage costs and ensure resource availability for their cloud workloads." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/instances/signing-up-committed-use-discounts" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "compute"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -5184,11 +5097,8 @@ 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] = "GCP Health Check Service monitors the health and performance of applications and services running on Google Cloud Platform. It periodically sends probes to specified endpoints, verifying their availability and responsiveness. The service can detect issues, trigger alerts, and integrate with load balancers to route traffic away from unhealthy instances, helping maintain application reliability and uptime." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/health-checks" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "service", "group": "access_control"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -5252,10 +5162,8 @@ 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] = "GCP Notification Endpoint is a Google Cloud Platform service that receives and processes notifications from various GCP resources. It acts as a central point for collecting and routing alerts, updates, and event data. Users can configure endpoints to direct notifications to specific destinations like email, SMS, or third-party applications for monitoring and response purposes." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/eventarc/docs/create-notification-endpoint" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "endpoint", "group": "management"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -5520,11 +5428,8 @@ 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 set of rules and configurations that define access controls and network security for Google Cloud Platform resources. It manages firewall rules, network traffic, and user permissions across projects and organizations. This policy helps protect cloud infrastructure from unauthorized access and potential threats while enforcing compliance requirements." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/vpc/docs/security-policies" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -5603,11 +5508,8 @@ class GcpSslCertificateSelfManagedSslCertificate: class GcpSslCertificate(GcpResource, BaseCertificate): 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] = "GCP SSL Certificate is a digital security credential used to encrypt data transmitted between web servers and browsers. It authenticates website identity and ensures secure communication. Google Cloud Platform manages the certificate lifecycle, including issuance, renewal, and revocation. This service helps protect sensitive information and maintains user trust in websites hosted on GCP." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/ssl-certificates" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "resource", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -5653,10 +5555,8 @@ class GcpSslCertificate(GcpResource, BaseCertificate): 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] = "GCP SSL Policy is a configuration feature in Google Cloud Platform that defines the SSL/TLS protocols and cipher suites used for secure connections. It controls the encryption standards and security levels for HTTPS load balancers, enhancing data protection and communication security. Administrators can customize SSL policies to meet specific compliance requirements or security needs for their applications." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/ssl-policies-concepts" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "networking"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -5698,10 +5598,8 @@ 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] = "A GCP Target HTTP Proxy is a Google Cloud Platform resource that routes incoming HTTP requests to backend services. It acts as an intermediary between external clients and internal services, distributing traffic based on URL maps. Target HTTP Proxies work with global load balancers to manage and direct incoming HTTP traffic across multiple regions." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/target-proxies" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "proxy", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -5745,11 +5643,8 @@ 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 component in Google Cloud Platform that routes HTTPS requests to backend services. It terminates SSL connections, performs SSL offloading, and directs traffic based on URL maps. This proxy works with load balancers to distribute incoming requests across multiple backend instances, enhancing security and performance for web applications." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/target-https-proxy" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "proxy", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -5810,11 +5705,8 @@ 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] = "GCP Target TCP Proxy is a Google Cloud Platform component that distributes incoming TCP traffic across backend services. It acts as an intermediary, receiving client requests and forwarding them to appropriate backend instances based on configured rules. Target TCP Proxy supports load balancing, SSL termination, and protocol forwarding, improving network performance and security for TCP-based applications." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/target-tcp-proxy" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "proxy", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -6304,11 +6196,8 @@ 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 Google Cloud Platform resource that routes incoming HTTP(S) requests to specific backend services or buckets based on defined rules. It matches the URL path or host of requests to configured patterns and directs traffic accordingly, supporting load balancing and content-based routing across multiple backends within a single load balancer." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/url-map" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "config", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_backend_service"]}} @@ -6579,11 +6468,8 @@ 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 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." - ) + _kind_description: ClassVar[str] = "GCP Resource Policy is a Google Cloud Platform feature that defines rules and constraints for resource management. It controls the creation, modification, and deletion of resources across projects and organizations. Resource policies enforce governance, security, and compliance standards, ensuring consistent resource configurations and reducing potential misconfigurations or unauthorized actions within a GCP environment." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/reference/rest/v1/resourcePolicies" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "policy", "group": "management"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -6893,10 +6779,8 @@ 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 and on-premises networks. It manages routing tables, implements BGP protocols, and facilitates communication between different subnets. GCP Router supports static and dynamic routing, enabling network administrators to control traffic flow and connect resources across various network environments." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/router" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -6964,10 +6848,8 @@ 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] = "GCP Route is a Google Cloud Platform service that defines paths for network traffic between virtual machine instances and other destinations. It specifies how packets should be forwarded within a network or between networks. Routes can be static or dynamic, and they control traffic flow based on destination IP addresses, ensuring data reaches its intended destination efficiently." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/reference/rest/v1/routes" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "routing_table", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -7083,11 +6965,8 @@ 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 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." - ) + _kind_description: ClassVar[str] = "GCP Service Attachment is a networking feature that connects services across different Google Cloud projects or organizations. It creates private endpoints for services, restricting access to specific consumers while maintaining network isolation. Service Attachment facilitates secure communication between services without exposing them to the public internet, enhancing data security and network control." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/vpc/docs/private-service-connect#service-attachments" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "compute"} _reference_kinds: ClassVar[ModelReference] = {"successors": {"default": ["gcp_backend_service", "gcp_subnetwork"]}} @@ -7149,10 +7028,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpSnapshot(GcpResource, BaseSnapshot): 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 data backup feature for Google Cloud Platform. It creates point-in-time copies of persistent disks, providing a way to safeguard data and recover from system failures. Snapshots can be used to clone disks, transfer data between regions, or restore data to a previous state, offering protection against data loss and system disruptions." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/disks/snapshots" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_disk"]}} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -7274,11 +7151,8 @@ class GcpSubnetworkSecondaryRange: class GcpSubnetwork(GcpResource, BaseSubnet): 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 regional network segment within a Virtual Private Cloud (VPC) network. It defines an IP address range and controls network traffic flow between resources. Subnetworks isolate resources, enhance security, and manage network topology. They can be connected to other subnetworks and external networks through various networking features provided by Google Cloud Platform." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/vpc/docs/subnets" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "network", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -7349,10 +7223,8 @@ 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] = "A GCP Target gRPC Proxy is a Google Cloud Platform component that routes gRPC traffic to backend services. It acts as an intermediary between clients and servers, handling load balancing, authentication, and protocol conversion. This proxy supports HTTP/2 and can distribute incoming requests across multiple backend instances, improving performance and reliability for gRPC-based applications." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/target-grpc-proxy" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "proxy", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -7400,10 +7272,8 @@ 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] = "A GCP Target Instance is a network resource in Google Cloud Platform that receives and handles incoming traffic for specific IP addresses and ports. It acts as a proxy, forwarding requests to designated virtual machine instances, facilitating load balancing and traffic management. Target Instances can be used to implement various networking scenarios and improve application availability." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/compute/docs/protocol-forwarding#targetinstances" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -7449,11 +7319,8 @@ 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] = "A GCP Target Pool is a network resource that distributes incoming traffic across multiple instances in a region. It acts as a single endpoint for load balancing, directing requests to healthy instances within the pool. Target Pools can be used with network load balancers to distribute traffic based on IP protocol data." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/target-pools" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "group", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -7505,11 +7372,8 @@ 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 Google Cloud Platform resource that terminates SSL connections from clients and forwards traffic to backend services. It manages SSL certificates, handles encryption/decryption, and distributes incoming requests across multiple backend instances. This proxy supports HTTPS load balancing and can route traffic based on SNI information." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/load-balancing/docs/target-ssl-proxy" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "proxy", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -7560,11 +7424,8 @@ 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] = "GCP Target VPN Gateway is a Google Cloud Platform network resource that facilitates secure connections between on-premises networks and Google Cloud VPCs. It acts as an endpoint for VPN tunnels, encrypting traffic and managing routing between the connected networks. This gateway supports both static and dynamic routing protocols for flexible network configuration." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/vpn/concepts/overview#gateway" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "gateway", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { @@ -7628,11 +7489,8 @@ class GcpVpnGatewayVpnGatewayInterface: class GcpVpnGateway(GcpResource, BaseGateway): 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 network component in Google Cloud Platform that establishes secure connections between on-premises networks and Google Cloud resources. It encrypts traffic over the public internet, creating a virtual private network. The gateway manages multiple tunnels, supports both static and dynamic routing, and provides secure access to cloud-based applications and data." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/vpn/concepts/overview" _kind_service: ClassVar[Optional[str]] = service_name _reference_kinds: ClassVar[ModelReference] = { "predecessors": {"default": ["gcp_network"], "delete": ["gcp_network"]}, @@ -7678,11 +7536,8 @@ def connect_in_graph(self, builder: GraphBuilder, source: Json) -> None: class GcpVpnTunnel(GcpResource, BaseTunnel): 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] = "GCP VPN Tunnel is a secure connection service in Google Cloud Platform. It creates encrypted links between on-premises networks and Google Cloud resources over the public internet. This service helps organizations extend their private networks to the cloud, ensuring data transmission security and enabling hybrid cloud architectures while maintaining network isolation and control." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/network-connectivity/docs/vpn/concepts/overview" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "link", "group": "networking"} _reference_kinds: ClassVar[ModelReference] = { diff --git a/plugins/gcp/fix_plugin_gcp/resources/container.py b/plugins/gcp/fix_plugin_gcp/resources/container.py index 903bb919b1..21b43ed2e1 100644 --- a/plugins/gcp/fix_plugin_gcp/resources/container.py +++ b/plugins/gcp/fix_plugin_gcp/resources/container.py @@ -1088,11 +1088,8 @@ class GcpContainerResourceUsageExportConfig: class GcpContainerCluster(BaseManagedKubernetesClusterProvider, 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] = "GCP Container Cluster is a managed Kubernetes service on Google Cloud Platform. It provides a platform for deploying, managing, and scaling containerized applications. Users can create and operate clusters of virtual machines running Kubernetes, with automatic upgrades and maintenance. The service integrates with other GCP products for networking, storage, and monitoring of containerized workloads." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/kubernetes-engine/docs" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "cluster", "group": "managed_kubernetes"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -1301,10 +1298,9 @@ 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] = "GCP Container Operation is a Google Cloud Platform service that manages container-based workloads. It orchestrates the deployment, scaling, and maintenance of containerized applications across clusters. The service handles tasks such as load balancing, auto-scaling, and rolling updates, ensuring application availability and performance while reducing operational overhead for developers and system administrators." # fmt: skip + _docs_url: ClassVar[str] = ( + "https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.zones.operations" ) _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "managed_kubernetes"} diff --git a/plugins/gcp/fix_plugin_gcp/resources/sqladmin.py b/plugins/gcp/fix_plugin_gcp/resources/sqladmin.py index 18230971df..8786452307 100644 --- a/plugins/gcp/fix_plugin_gcp/resources/sqladmin.py +++ b/plugins/gcp/fix_plugin_gcp/resources/sqladmin.py @@ -34,10 +34,8 @@ 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 of Google Cloud Platform that creates and manages backups for Cloud SQL databases. It automatically captures database snapshots at scheduled intervals, storing them securely in Google Cloud Storage. These backups can be used to restore databases to specific points in time, protecting against data loss and facilitating disaster recovery." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/sql/docs/mysql/backup-recovery/backups" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "backup", "group": "database"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_database_instance"]}} @@ -116,9 +114,8 @@ 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 on Google Cloud Platform. It offers MySQL, PostgreSQL, and SQL Server instances, handling maintenance, backups, and updates. Users can create, configure, and operate databases without managing infrastructure. The service provides features like replication, encryption, and automatic storage scaling for database management and performance optimization." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/sql/docs" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "database", "group": "database"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( @@ -646,10 +643,8 @@ class GcpSqlSettings: class GcpSqlDatabaseInstance(GcpResource, BaseDatabase): 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 managed relational database service on Google Cloud Platform. It provides MySQL, PostgreSQL, and SQL Server databases with automated backups, replication, and patching. Users can create, configure, and operate database instances without managing the underlying infrastructure, focusing on application development and data management tasks." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/sql/docs/mysql/instance-settings" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "instance", "group": "database"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_ssl_certificate"]}} @@ -943,11 +938,8 @@ class GcpSqlImportContext: class GcpSqlOperation(GcpResource): kind: ClassVar[str] = "gcp_sql_operation" _kind_display: ClassVar[str] = "GCP SQL Operation" - _kind_description: ClassVar[str] = ( - "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." - ) + _kind_description: ClassVar[str] = "GCP SQL Operation represents an asynchronous database operation in Google Cloud Platform's Cloud SQL service. It tracks the progress and status of tasks like instance creation, modification, or deletion. Users can monitor, manage, and retrieve information about these operations through the Cloud SQL API or command-line interface, ensuring visibility into database management processes." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/operations" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "job", "group": "database"} _reference_kinds: ClassVar[ModelReference] = {"predecessors": {"default": ["gcp_sql_database_instance"]}} @@ -1063,10 +1055,8 @@ 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 is an account within Google Cloud Platform's Cloud SQL service that has permissions to access and manage databases. It can connect to databases, execute queries, modify data, and perform administrative tasks based on its assigned privileges. GCP SQL Users are created and managed by database administrators to control access to Cloud SQL instances." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/sql/docs/mysql/users" _kind_service: ClassVar[Optional[str]] = service_name _metadata: ClassVar[Dict[str, Any]] = {"icon": "user", "group": "database"} api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( diff --git a/plugins/gcp/fix_plugin_gcp/resources/storage.py b/plugins/gcp/fix_plugin_gcp/resources/storage.py index 70630298d5..f907077642 100644 --- a/plugins/gcp/fix_plugin_gcp/resources/storage.py +++ b/plugins/gcp/fix_plugin_gcp/resources/storage.py @@ -317,10 +317,8 @@ 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, 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." - ) + _kind_description: ClassVar[str] = "GCP Object refers to data stored in Google Cloud Storage, a component of Google Cloud Platform. It represents files or unstructured data of any size or format. Users can upload, download, and manage these objects through APIs or web interfaces. GCP Objects support versioning, access control, and metadata, facilitating data storage and retrieval for various applications." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/storage/docs/json_api/v1/objects" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service=service_name, @@ -342,10 +340,8 @@ class GcpObject(GcpResource): class GcpBucket(GcpResource, BaseBucket): 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 in Google Cloud Platform. It stores and organizes data objects, such as files and folders. Users can upload, download, and manage data in buckets through APIs or web interfaces. Buckets offer access control, versioning, and lifecycle management features. They support various data types and can be accessed globally." # fmt: skip + _docs_url: ClassVar[str] = "https://cloud.google.com/storage/docs/buckets" _kind_service: ClassVar[Optional[str]] = service_name api_spec: ClassVar[GcpApiSpec] = GcpApiSpec( service=service_name, diff --git a/plugins/gcp/tox.ini b/plugins/gcp/tox.ini index 92587cf9cc..cfaa6a45a9 100644 --- a/plugins/gcp/tox.ini +++ b/plugins/gcp/tox.ini @@ -4,7 +4,7 @@ env_list = flake8, syntax, tests, black, mypy [flake8] max-line-length=120 exclude = .git,.tox,__pycache__,.idea,.pytest_cache -ignore=F403, F405, E722, N806, N813, E266, W503, E203 +ignore=F403, F405, E722, N806, N813, E266, W503, E203, E501 [pytest] testpaths= test