From 51b225d448283c3d2a3079a70deb5cd4ff9a7f09 Mon Sep 17 00:00:00 2001 From: Aleksander Zaruczewski Date: Tue, 23 Jan 2024 16:14:12 +0200 Subject: [PATCH] feat(filter): dragonfly support --- internal/filter/filter.go | 1 + pkg/dist/service_types.yml | 233 ++++++++++++++++++++++++++++++++++++- 2 files changed, 230 insertions(+), 4 deletions(-) diff --git a/internal/filter/filter.go b/internal/filter/filter.go index 242ff5d..a00762a 100644 --- a/internal/filter/filter.go +++ b/internal/filter/filter.go @@ -18,6 +18,7 @@ var supportedServiceTypes = func() map[string]struct{} { "cassandra": {}, "clickhouse": {}, "datadog": {}, + "dragonfly": {}, "elasticsearch": {}, "external_aws_cloudwatch_logs": {}, "external_aws_cloudwatch_metrics": {}, diff --git a/pkg/dist/service_types.yml b/pkg/dist/service_types.yml index d2ffd04..f29128f 100644 --- a/pkg/dist/service_types.yml +++ b/pkg/dist/service_types.yml @@ -61,7 +61,9 @@ cassandra: - "null" enum: - value: "4" - - value: "3" + - is_deprecated: true + deprecation_notice: This value is deprecated. + value: "3" - value: "4.1" ip_filter: title: IP filter @@ -276,6 +278,223 @@ clickhouse: description: Use static public IP addresses type: boolean example: true +dragonfly: + is_deprecated: true + deprecation_notice: This property is deprecated. + type: object + properties: + cache_mode: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Evict entries when getting close to maxmemory limit + type: boolean + default: false + dragonfly_ssl: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Require SSL to access Dragonfly + type: boolean + default: true + ip_filter: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: IP filter + description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' + type: array + default: + - 0.0.0.0/0 + items: + title: CIDR address block, either as a string, or in a dict with an optional description field + type: + - string + - object + required: + - network + properties: + description: + title: Description for IP filter list entry + type: string + max_length: 1024 + example: Production service IP range + network: + title: CIDR address block + type: string + max_length: 43 + example: 10.20.0.0/16 + max_length: 43 + example: 10.20.0.0/16 + max_items: 1024 + migration: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Migrate data from existing server + type: + - object + - "null" + required: + - host + - port + properties: + dbname: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Database name for bootstrapping the initial connection + type: string + max_length: 63 + example: defaultdb + host: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Hostname or IP address of the server where to migrate data from + type: string + max_length: 255 + example: my.server.com + ignore_dbs: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Comma-separated list of databases, which should be ignored during migration (supported by MySQL and PostgreSQL only at the moment) + type: string + max_length: 2048 + example: db1,db2 + method: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: The migration method to be used (currently supported only by Redis, Dragonfly, MySQL and PostgreSQL service types) + type: string + enum: + - is_deprecated: true + deprecation_notice: This value is deprecated. + value: dump + - is_deprecated: true + deprecation_notice: This value is deprecated. + value: replication + example: dump + password: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Password for authentication with the server where to migrate data from + type: string + max_length: 256 + example: jjKk45Nnd + port: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Port number of the server where to migrate data from + type: integer + minimum: 1 + maximum: 65535 + example: "1234" + ssl: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: The server where to migrate data from is secured with SSL + type: boolean + default: true + username: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: User name for authentication with the server where to migrate data from + type: string + max_length: 256 + example: myname + private_access: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Allow access to selected service ports from private networks + type: object + properties: + dragonfly: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Allow clients to connect to dragonfly with a DNS name that always resolves to the service's private IP addresses. Only available in certain network locations + type: boolean + example: true + prometheus: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Allow clients to connect to prometheus with a DNS name that always resolves to the service's private IP addresses. Only available in certain network locations + type: boolean + example: true + privatelink_access: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Allow access to selected service components through Privatelink + type: object + properties: + dragonfly: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Enable dragonfly + type: boolean + example: true + prometheus: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Enable prometheus + type: boolean + example: true + project_to_fork_from: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Name of another project to fork a service from. This has effect only when a new service is being created. + type: + - string + - "null" + max_length: 63 + create_only: true + example: anotherprojectname + public_access: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Allow access to selected service ports from the public Internet + type: object + properties: + dragonfly: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Allow clients to connect to dragonfly from the public internet for service nodes that are in a project VPC or another type of private network + type: boolean + example: true + prometheus: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Allow clients to connect to prometheus from the public internet for service nodes that are in a project VPC or another type of private network + type: boolean + example: true + recovery_basebackup_name: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Name of the basebackup to restore in forked service + type: string + max_length: 128 + pattern: ^[a-zA-Z0-9-_:.]+$ + example: backup-20191112t091354293891z + service_log: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Service logging + description: Store logs for the service so that they are available in the HTTP API and console. + type: + - boolean + - "null" + example: true + service_to_fork_from: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Name of another service to fork from. This has effect only when a new service is being created. + type: + - string + - "null" + max_length: 64 + create_only: true + example: anotherservicename + static_ips: + is_deprecated: true + deprecation_notice: This property is deprecated. + title: Static IP addresses + description: Use static public IP addresses + type: boolean + example: true elasticsearch: is_deprecated: true deprecation_notice: This property is deprecated. @@ -2319,8 +2538,12 @@ kafka: - is_deprecated: true deprecation_notice: This value is deprecated. value: "3.2" - - value: "3.3" - - value: "3.1" + - is_deprecated: true + deprecation_notice: This value is deprecated. + value: "3.3" + - is_deprecated: true + deprecation_notice: This value is deprecated. + value: "3.1" - value: "3.4" - value: "3.5" - value: "3.6" @@ -4988,7 +5211,9 @@ pg: - string - "null" enum: - - value: "11" + - is_deprecated: true + deprecation_notice: This value is deprecated. + value: "11" - value: "12" - value: "13" - value: "14"