Extend Redis and RabbitMQ instance parameters (#431)

* Extend RabbitMQ instance parameters (#409)

* Extend Schema

* initial parameter integration in resource

* datasource, resource and acceptance testing

* add docs, fix map fields edge case

* improve testing

* rename tls_protocols to singular

* revert renaming

* Extend Redis instance parameters (#410)

* Extend Schema

* initial parameter integration in resource

* datasource, resource and acceptance testing

* add docs, fix map fields edge case

* improve testing

* rename tls_protocols to singular

* revert renaming

* initial schema

* resource and datasource

* acceptance testing

* fix linting and testing, generate docs

* improve acceptance testing

---------

Co-authored-by: Diogo Ferrão <diogo.ferrao@freiheit.com>
This commit is contained in:
João Palet 2024-06-25 16:03:59 +01:00 committed by GitHub
parent 923764172d
commit 9f82c3262b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 1009 additions and 244 deletions

View file

@ -46,4 +46,16 @@ data "stackit_rabbitmq_instance" "example" {
Read-Only:
- `consumer_timeout` (Number)
- `enable_monitoring` (Boolean)
- `graphite` (String)
- `max_disk_threshold` (Number)
- `metrics_frequency` (Number)
- `metrics_prefix` (String)
- `monitoring_instance_id` (String)
- `plugins` (List of String)
- `roles` (List of String)
- `sgw_acl` (String)
- `syslog` (List of String)
- `tls_ciphers` (List of String)
- `tls_protocols` (String)

View file

@ -46,4 +46,25 @@ data "stackit_redis_instance" "example" {
Read-Only:
- `down_after_milliseconds` (Number)
- `enable_monitoring` (Boolean)
- `failover_timeout` (Number)
- `graphite` (String)
- `lazyfree_lazy_eviction` (String)
- `lazyfree_lazy_expire` (String)
- `lua_time_limit` (Number)
- `max_disk_threshold` (Number)
- `maxclients` (Number)
- `maxmemory_policy` (String)
- `maxmemory_samples` (Number)
- `metrics_frequency` (Number)
- `metrics_prefix` (String)
- `min_replicas_max_lag` (Number)
- `monitoring_instance_id` (String)
- `notify_keyspace_events` (String)
- `sgw_acl` (String)
- `snapshot` (String)
- `syslog` (List of String)
- `tls_ciphers` (List of String)
- `tls_ciphersuites` (String)
- `tls_protocols` (String)

View file

@ -19,7 +19,10 @@ resource "stackit_rabbitmq_instance" "example" {
version = "10"
plan_name = "example-plan-name"
parameters = {
sgw_acl = "x.x.x.x/x,y.y.y.y/y"
sgw_acl = "x.x.x.x/x,y.y.y.y/y"
consumer_timeout = 18000000
enable_monitoring = false
plugins = ["example-plugin1", "example-plugin2"]
}
}
```
@ -54,4 +57,16 @@ resource "stackit_rabbitmq_instance" "example" {
Optional:
- `sgw_acl` (String)
- `consumer_timeout` (Number) The timeout in milliseconds for the consumer.
- `enable_monitoring` (Boolean) Enable monitoring.
- `graphite` (String) Graphite server URL (host and port). If set, monitoring with Graphite will be enabled.
- `max_disk_threshold` (Number) The maximum disk threshold in MB. If the disk usage exceeds this threshold, the instance will be stopped.
- `metrics_frequency` (Number) The frequency in seconds at which metrics are emitted.
- `metrics_prefix` (String) The prefix for the metrics. Could be useful when using Graphite monitoring to prefix the metrics with a certain value, like an API key
- `monitoring_instance_id` (String) The monitoring instance ID.
- `plugins` (List of String) List of plugins to install. Must be a supported plugin name.
- `roles` (List of String) List of roles to assign to the instance.
- `sgw_acl` (String) Comma separated list of IP networks in CIDR notation which are allowed to access this instance.
- `syslog` (List of String) List of syslog servers to send logs to.
- `tls_ciphers` (List of String) List of TLS ciphers to use.
- `tls_protocols` (String) TLS protocol to use.

View file

@ -19,7 +19,10 @@ resource "stackit_redis_instance" "example" {
version = "10"
plan_name = "example-plan-name"
parameters = {
sgw_acl = "x.x.x.x/x,y.y.y.y/y"
sgw_acl = "x.x.x.x/x,y.y.y.y/y"
enable_monitoring = false
down_after_milliseconds = 30000
syslog = ["syslog.example.com:514"]
}
}
```
@ -54,4 +57,25 @@ resource "stackit_redis_instance" "example" {
Optional:
- `sgw_acl` (String)
- `down_after_milliseconds` (Number) The number of milliseconds after which the instance is considered down.
- `enable_monitoring` (Boolean) Enable monitoring.
- `failover_timeout` (Number) The failover timeout in milliseconds.
- `graphite` (String) Graphite server URL (host and port). If set, monitoring with Graphite will be enabled.
- `lazyfree_lazy_eviction` (String) The lazy eviction enablement (yes or no).
- `lazyfree_lazy_expire` (String) The lazy expire enablement (yes or no).
- `lua_time_limit` (Number) The Lua time limit.
- `max_disk_threshold` (Number) The maximum disk threshold in MB. If the disk usage exceeds this threshold, the instance will be stopped.
- `maxclients` (Number) The maximum number of clients.
- `maxmemory_policy` (String) The policy to handle the maximum memory (volatile-lru, noeviction, etc).
- `maxmemory_samples` (Number) The maximum memory samples.
- `metrics_frequency` (Number) The frequency in seconds at which metrics are emitted.
- `metrics_prefix` (String) The prefix for the metrics. Could be useful when using Graphite monitoring to prefix the metrics with a certain value, like an API key
- `min_replicas_max_lag` (Number) The minimum replicas maximum lag.
- `monitoring_instance_id` (String) The monitoring instance ID.
- `notify_keyspace_events` (String) The notify keyspace events.
- `sgw_acl` (String) Comma separated list of IP networks in CIDR notation which are allowed to access this instance.
- `snapshot` (String) The snapshot configuration.
- `syslog` (List of String) List of syslog servers to send logs to.
- `tls_ciphers` (List of String) List of TLS ciphers to use.
- `tls_ciphersuites` (String) TLS cipher suites to use.
- `tls_protocols` (String) TLS protocol to use.