Skip to content

Commit

Permalink
feat(filter): dragonfly support
Browse files Browse the repository at this point in the history
  • Loading branch information
Serpentiel committed Jan 23, 2024
1 parent 2b53c39 commit 51b225d
Show file tree
Hide file tree
Showing 2 changed files with 230 additions and 4 deletions.
1 change: 1 addition & 0 deletions internal/filter/filter.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ var supportedServiceTypes = func() map[string]struct{} {
"cassandra": {},
"clickhouse": {},
"datadog": {},
"dragonfly": {},
"elasticsearch": {},
"external_aws_cloudwatch_logs": {},
"external_aws_cloudwatch_metrics": {},
Expand Down
233 changes: 229 additions & 4 deletions pkg/dist/service_types.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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"
Expand Down Expand Up @@ -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"
Expand Down

0 comments on commit 51b225d

Please sign in to comment.