diff --git a/docs/configuration_options.md b/docs/configuration_options.md
index c372308353..bc6a0311f1 100644
--- a/docs/configuration_options.md
+++ b/docs/configuration_options.md
@@ -1,11 +1,19 @@
# scylla-cluster-tests configuration options
+#### Appending with environment variables or with config files
+* **strings:** can be appended with adding `++` at the beginning of the string:
+`export SCT_APPEND_SCYLLA_ARGS="++ --overprovisioned 1"`
+* **list:** can be appended by adding `++` as the first item of the list
+`export SCT_SCYLLA_D_OVERRIDES_FILES='["++", "extra_file/scylla.d/io.conf"]'`
+
## **config_files** / SCT_CONFIG_FILES
a list of config files that would be used
**default:** N/A
+**type:** str_or_list_or_eval
+
## **cluster_backend** / SCT_CLUSTER_BACKEND
@@ -13,6 +21,8 @@ backend that will be used, aws/gce/docker
**default:** N/A
+**type:** str
+
## **test_method** / SCT_TEST_METHOD
@@ -20,6 +30,8 @@ class.method used to run the test. Filled automatically with run-test sct comman
**default:** N/A
+**type:** str
+
## **test_duration** / SCT_TEST_DURATION
@@ -27,6 +39,8 @@ Test duration (min). Parameter used to keep instances produced by tests
and f
**default:** 60
+**type:** int
+
## **prepare_stress_duration** / SCT_PREPARE_STRESS_DURATION
@@ -34,6 +48,8 @@ Time in minutes, which is required to run prepare stress commands
defined in
**default:** 300
+**type:** int
+
## **stress_duration** / SCT_STRESS_DURATION
@@ -41,6 +57,8 @@ Time in minutes, Time of execution for stress commands from stress_cmd parameter
**default:** N/A
+**type:** int
+
## **n_db_nodes** / SCT_N_DB_NODES
@@ -48,6 +66,8 @@ Number list of database data nodes in multiple data centers. To use with
mult
**default:** N/A
+**type:** int_or_space_separated_ints
+
## **n_test_oracle_db_nodes** / SCT_N_TEST_ORACLE_DB_NODES
@@ -55,6 +75,8 @@ Number list of oracle test nodes in multiple data centers.
**default:** 1
+**type:** int_or_space_separated_ints
+
## **n_loaders** / SCT_N_LOADERS
@@ -62,6 +84,8 @@ Number list of loader nodes in multiple data centers
**default:** N/A
+**type:** int_or_space_separated_ints
+
## **n_monitor_nodes** / SCT_N_MONITORS_NODES
@@ -69,6 +93,8 @@ Number list of monitor nodes in multiple data centers
**default:** N/A
+**type:** int_or_space_separated_ints
+
## **intra_node_comm_public** / SCT_INTRA_NODE_COMM_PUBLIC
@@ -76,6 +102,8 @@ If True, all communication between nodes are via public addresses
**default:** N/A
+**type:** boolean
+
## **endpoint_snitch** / SCT_ENDPOINT_SNITCH
@@ -83,6 +111,8 @@ The snitch class scylla would use
'GossipingPropertyFileSnitch' - default
**default:** N/A
+**type:** str (appendable)
+
## **user_credentials_path** / SCT_USER_CREDENTIALS_PATH
@@ -90,6 +120,8 @@ Path to your user credentials. qa key are downloaded automatically from S3 bucke
**default:** N/A
+**type:** str (appendable)
+
## **cloud_credentials_path** / SCT_CLOUD_CREDENTIALS_PATH
@@ -97,6 +129,8 @@ Path to your user credentials. qa key are downloaded automatically from S3 bucke
**default:** N/A
+**type:** str (appendable)
+
## **cloud_cluster_id** / SCT_CLOUD_CLUSTER_ID
@@ -104,6 +138,8 @@ scylla cloud cluster id
**default:** N/A
+**type:** int
+
## **cloud_prom_bearer_token** / SCT_CLOUD_PROM_BEARER_TOKEN
@@ -111,6 +147,8 @@ scylla cloud promproxy bearer_token to federate monitoring data into our monitor
**default:** N/A
+**type:** str (appendable)
+
## **cloud_prom_path** / SCT_CLOUD_PROM_PATH
@@ -118,6 +156,8 @@ scylla cloud promproxy path to federate monitoring data into our monitoring inst
**default:** N/A
+**type:** str (appendable)
+
## **cloud_prom_host** / SCT_CLOUD_PROM_HOST
@@ -125,6 +165,8 @@ scylla cloud promproxy hostname to federate monitoring data into our monitoring
**default:** N/A
+**type:** str (appendable)
+
## **ip_ssh_connections** / SCT_IP_SSH_CONNECTIONS
@@ -132,6 +174,8 @@ Type of IP used to connect to machine instances.
This depends on whether you
**default:** private
+**type:** str (appendable)
+
## **scylla_repo** / SCT_SCYLLA_REPO
@@ -139,6 +183,8 @@ Url to the repo of scylla version to install scylla. Can provide specific versio
**default:** N/A
+**type:** str (appendable)
+
## **scylla_apt_keys** / SCT_SCYLLA_APT_KEYS
@@ -146,6 +192,8 @@ APT keys for ScyllaDB repos
**default:** ['17723034C56D4B19', '5E08FBD8B5D6EC9C', 'D0A112E067426AB2', '491C93B9DE7496A7', 'A43E06657BAC99E3']
+**type:** str_or_list (appendable)
+
## **unified_package** / SCT_UNIFIED_PACKAGE
@@ -153,6 +201,8 @@ Url to the unified package of scylla version to install scylla
**default:** N/A
+**type:** str (appendable)
+
## **nonroot_offline_install** / SCT_NONROOT_OFFLINE_INSTALL
@@ -160,6 +210,8 @@ Install Scylla without required root priviledge
**default:** N/A
+**type:** boolean
+
## **install_mode** / SCT_INSTALL_MODE
@@ -167,6 +219,8 @@ Scylla install mode, repo/offline/web
**default:** repo
+**type:** str
+
## **scylla_version** / SCT_SCYLLA_VERSION
@@ -174,6 +228,8 @@ Version of scylla to install, ex. '2.3.1'
Automatically lookup AMIs and repo
**default:** N/A
+**type:** str
+
## **user_data_format_version** / SCT_USER_DATA_FORMAT_VERSION
@@ -181,6 +237,8 @@ Format version of the user-data to use for scylla images,
default to what tag
**default:** N/A
+**type:** str
+
## **oracle_user_data_format_version** / SCT_ORACLE_USER_DATA_FORMAT_VERSION
@@ -188,6 +246,8 @@ Format version of the user-data to use for scylla images,
default to what tag
**default:** N/A
+**type:** str
+
## **oracle_scylla_version** / SCT_ORACLE_SCYLLA_VERSION
@@ -195,6 +255,8 @@ Version of scylla to use as oracle cluster with gemini tests, ex. '3.0.11'
Au
**default:** 2022.1.14
+**type:** str
+
## **scylla_linux_distro** / SCT_SCYLLA_LINUX_DISTRO
@@ -202,6 +264,8 @@ The distro name and family name to use. Example: 'ubuntu-jammy' or 'debian-bookw
**default:** ubuntu-focal
+**type:** str
+
## **scylla_linux_distro_loader** / SCT_SCYLLA_LINUX_DISTRO_LOADER
@@ -209,6 +273,8 @@ The distro name and family name to use. Example: 'ubuntu-jammy' or 'debian-bookw
**default:** ubuntu-jammy
+**type:** str
+
## **assert_linux_distro_features** / SCT_ASSERT_LINUX_DISTRO_FEATURES
@@ -216,6 +282,8 @@ List of distro features relevant to SCT test. Example: 'fips'.
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **scylla_repo_m** / SCT_SCYLLA_REPO_M
@@ -223,6 +291,8 @@ Url to the repo of scylla version to install scylla from for managment tests
**default:** N/A
+**type:** str (appendable)
+
## **scylla_repo_loader** / SCT_SCYLLA_REPO_LOADER
@@ -230,6 +300,8 @@ Url to the repo of scylla version to install c-s for loader
**default:** https://s3.amazonaws.com/downloads.scylladb.com/deb/ubuntu/scylla-5.2.list
+**type:** str (appendable)
+
## **scylla_mgmt_address** / SCT_SCYLLA_MGMT_ADDRESS
@@ -237,6 +309,8 @@ Url to the repo of scylla manager version to install for management tests
**default:** N/A
+**type:** str (appendable)
+
## **scylla_mgmt_agent_address** / SCT_SCYLLA_MGMT_AGENT_ADDRESS
@@ -244,6 +318,8 @@ Url to the repo of scylla manager agent version to install for management tests
**default:** N/A
+**type:** str (appendable)
+
## **manager_version** / SCT_MANAGER_VERSION
@@ -251,6 +327,8 @@ Branch of scylla manager server and agent to install. Options in defaults/manage
**default:** 3.4
+**type:** str
+
## **target_manager_version** / SCT_TARGET_MANAGER_VERSION
@@ -258,6 +336,8 @@ Branch of scylla manager server and agent to upgrade to. Options in defaults/man
**default:** N/A
+**type:** str
+
## **manager_scylla_backend_version** / SCT_MANAGER_SCYLLA_BACKEND_VERSION
@@ -265,6 +345,8 @@ Branch of scylla db enterprise to install. Options in defaults/manager_versions.
**default:** 2024
+**type:** str
+
## **scylla_mgmt_agent_version** / SCT_SCYLLA_MGMT_AGENT_VERSION
@@ -272,6 +354,8 @@ Branch of scylla db enterprise to install. Options in defaults/manager_versions.
**default:** 3.4.0
+**type:** str
+
## **scylla_mgmt_pkg** / SCT_SCYLLA_MGMT_PKG
@@ -279,6 +363,8 @@ Url to the scylla manager packages to install for management tests
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_i** / SCT_STRESS_CMD_LWT_I
@@ -286,6 +372,8 @@ Stress command for LWT performance test for INSERT baseline
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_d** / SCT_STRESS_CMD_LWT_D
@@ -293,6 +381,8 @@ Stress command for LWT performance test for DELETE baseline
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_u** / SCT_STRESS_CMD_LWT_U
@@ -300,6 +390,8 @@ Stress command for LWT performance test for UPDATE baseline
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_ine** / SCT_STRESS_CMD_LWT_INE
@@ -307,6 +399,8 @@ Stress command for LWT performance test for INSERT with IF NOT EXISTS
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_uc** / SCT_STRESS_CMD_LWT_UC
@@ -314,6 +408,8 @@ Stress command for LWT performance test for UPDATE with IF
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_ue** / SCT_STRESS_CMD_LWT_UE
@@ -321,6 +417,8 @@ Stress command for LWT performance test for UPDATE with IF EXISTS
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_de** / SCT_STRESS_CMD_LWT_DE
@@ -328,6 +426,8 @@ Stress command for LWT performance test for DELETE with IF EXISTS
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_dc** / SCT_STRESS_CMD_LWT_DC
@@ -335,6 +435,8 @@ Stress command for LWT performance test for DELETE with IF condition>
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_mixed** / SCT_STRESS_CMD_LWT_MIXED
@@ -342,6 +444,8 @@ Stress command for LWT performance test for mixed lwt load
**default:** N/A
+**type:** str (appendable)
+
## **stress_cmd_lwt_mixed_baseline** / SCT_STRESS_CMD_LWT_MIXED_BASELINE
@@ -349,6 +453,8 @@ Stress command for LWT performance test for mixed lwt load baseline
**default:** N/A
+**type:** str (appendable)
+
## **use_cloud_manager** / SCT_USE_CLOUD_MANAGER
@@ -356,6 +462,8 @@ When define true, will install scylla cloud manager
**default:** N/A
+**type:** boolean
+
## **use_ldap** / SCT_USE_LDAP
@@ -363,6 +471,8 @@ When defined true, LDAP is going to be used.
**default:** N/A
+**type:** boolean
+
## **use_ldap_authorization** / SCT_USE_LDAP_AUTHORIZATION
@@ -370,6 +480,8 @@ When defined true, will create a docker container with LDAP and configure scylla
**default:** N/A
+**type:** boolean
+
## **use_ldap_authentication** / SCT_USE_LDAP_AUTHENTICATION
@@ -377,6 +489,8 @@ When defined true, will create a docker container with LDAP and configure scylla
**default:** N/A
+**type:** boolean
+
## **prepare_saslauthd** / SCT_PREPARE_SASLAUTHD
@@ -384,6 +498,8 @@ When defined true, will install and start saslauthd service
**default:** N/A
+**type:** boolean
+
## **ldap_server_type** / SCT_LDAP_SERVER_TYPE
@@ -391,6 +507,8 @@ This option indicates which server is going to be used for LDAP operations. [ope
**default:** N/A
+**type:** str (appendable)
+
## **use_mgmt** / SCT_USE_MGMT
@@ -398,6 +516,8 @@ When define true, will install scylla management
**default:** True
+**type:** boolean
+
## **parallel_node_operations** / SCT_PARALLEL_NODE_OPERATIONS
@@ -405,6 +525,8 @@ When defined true, will run node operations in parallel. Supported operations: s
**default:** N/A
+**type:** boolean
+
## **manager_prometheus_port** / SCT_MANAGER_PROMETHEUS_PORT
@@ -412,6 +534,8 @@ Port to be used by the manager to contact Prometheus
**default:** 5090
+**type:** int
+
## **target_scylla_mgmt_server_address** / SCT_TARGET_SCYLLA_MGMT_SERVER_ADDRESS
@@ -419,6 +543,8 @@ Url to the repo of scylla manager version used to upgrade the manager server
**default:** N/A
+**type:** str (appendable)
+
## **target_scylla_mgmt_agent_address** / SCT_TARGET_SCYLLA_MGMT_AGENT_ADDRESS
@@ -426,6 +552,8 @@ Url to the repo of scylla manager version used to upgrade the manager agents
**default:** N/A
+**type:** str (appendable)
+
## **update_db_packages** / SCT_UPDATE_DB_PACKAGES
@@ -433,6 +561,8 @@ A local directory of rpms to install a custom version on top of
the scylla in
**default:** N/A
+**type:** str (appendable)
+
## **monitor_branch** / SCT_MONITOR_BRANCH
@@ -440,6 +570,8 @@ The port of scylla management
**default:** branch-4.8
+**type:** str (appendable)
+
## **db_type** / SCT_DB_TYPE
@@ -447,6 +579,8 @@ Db type to install into db nodes, scylla/cassandra
**default:** scylla
+**type:** str (appendable)
+
## **user_prefix** / SCT_USER_PREFIX
@@ -454,6 +588,8 @@ the prefix of the name of the cloud instances, defaults to username
**default:** N/A
+**type:** str (appendable)
+
## **ami_id_db_scylla_desc** / SCT_AMI_ID_DB_SCYLLA_DESC
@@ -461,6 +597,8 @@ version name to report stats to Elasticsearch and tagged on cloud instances
**default:** N/A
+**type:** str (appendable)
+
## **sct_public_ip** / SCT_SCT_PUBLIC_IP
@@ -468,6 +606,8 @@ Override the default hostname address of the sct test runner,
for the monitor
**default:** N/A
+**type:** str (appendable)
+
## **sct_ngrok_name** / SCT_NGROK_NAME
@@ -475,6 +615,8 @@ Override the default hostname address of the sct test runner,
using ngrok ser
**default:** N/A
+**type:** str (appendable)
+
## **backtrace_decoding** / SCT_BACKTRACE_DECODING
@@ -482,6 +624,8 @@ If True, all backtraces found in db nodes would be decoded automatically
**default:** True
+**type:** boolean
+
## **print_kernel_callstack** / SCT_PRINT_KERNEL_CALLSTACK
@@ -489,6 +633,8 @@ Scylla will print kernel callstack to logs if True, otherwise, it will try and m
**default:** True
+**type:** boolean
+
## **instance_provision** / SCT_INSTANCE_PROVISION
@@ -496,6 +642,8 @@ instance_provision: spot|on_demand|spot_fleet
**default:** spot
+**type:** str (appendable)
+
## **instance_provision_fallback_on_demand** / SCT_INSTANCE_PROVISION_FALLBACK_ON_DEMAND
@@ -503,6 +651,8 @@ instance_provision_fallback_on_demand: create instance on_demand provision type
**default:** N/A
+**type:** boolean
+
## **reuse_cluster** / SCT_REUSE_CLUSTER
@@ -510,6 +660,8 @@ If reuse_cluster is set it should hold test_id of the cluster that will be reuse
**default:** N/A
+**type:** str (appendable)
+
## **test_id** / SCT_TEST_ID
@@ -517,6 +669,8 @@ test id to filter by
**default:** N/A
+**type:** str (appendable)
+
## **db_nodes_shards_selection** / SCT_NODES_SHARDS_SELECTION
@@ -524,6 +678,8 @@ How to select number of shards of Scylla. Expected values: default/random.
De
**default:** default
+**type:** str (appendable)
+
## **seeds_selector** / SCT_SEEDS_SELECTOR
@@ -531,6 +687,8 @@ How to select the seeds. Expected values: random/first/all
**default:** all
+**type:** str (appendable)
+
## **seeds_num** / SCT_SEEDS_NUM
@@ -538,6 +696,8 @@ Number of seeds to select
**default:** 1
+**type:** int
+
## **email_recipients** / SCT_EMAIL_RECIPIENTS
@@ -545,6 +705,8 @@ list of email of send the performance regression test to
**default:** ['qa@scylladb.com']
+**type:** str_or_list (appendable)
+
## **email_subject_postfix** / SCT_EMAIL_SUBJECT_POSTFIX
@@ -552,6 +714,8 @@ Email subject postfix
**default:** N/A
+**type:** str (appendable)
+
## **enable_test_profiling** / SCT_ENABLE_TEST_PROFILING
@@ -559,6 +723,8 @@ Turn on sct profiling
**default:** N/A
+**type:** boolean
+
## **ssh_transport** / SSH_TRANSPORT
@@ -566,6 +732,8 @@ Set type of ssh library to use. Could be 'fabric' (default) or 'libssh2'
**default:** libssh2
+**type:** str (appendable)
+
## **experimental_features** / SCT_EXPERIMENTAL_FEATURES
@@ -573,6 +741,8 @@ unlock specified experimental features
**default:** N/A
+**type:** list
+
## **server_encrypt** / SCT_SERVER_ENCRYPT
@@ -580,6 +750,8 @@ when enable scylla will use encryption on the server side
**default:** N/A
+**type:** boolean
+
## **client_encrypt** / SCT_CLIENT_ENCRYPT
@@ -587,6 +759,8 @@ when enable scylla will use encryption on the client side
**default:** N/A
+**type:** boolean
+
## **client_encrypt_mtls** / SCT_CLIENT_ENCRYPT_MTLS
@@ -594,6 +768,8 @@ when enabled scylla will enforce mutual authentication when client-to-node encry
**default:** N/A
+**type:** boolean
+
## **server_encrypt_mtls** / SCT_SERVER_ENCRYPT_MTLS
@@ -601,6 +777,8 @@ when enabled scylla will enforce mutual authentication when node-to-node encrypt
**default:** N/A
+**type:** boolean
+
## **hinted_handoff** / SCT_HINTED_HANDOFF
@@ -608,6 +786,8 @@ when enable or disable scylla hinted handoff (enabled/disabled)
**default:** disabled
+**type:** str (appendable)
+
## **authenticator** / SCT_AUTHENTICATOR
@@ -615,6 +795,8 @@ which authenticator scylla will use AllowAllAuthenticator/PasswordAuthenticator
**default:** N/A
+**type:** str (appendable)
+
## **authenticator_user** / SCT_AUTHENTICATOR_USER
@@ -622,6 +804,8 @@ the username if PasswordAuthenticator is used
**default:** N/A
+**type:** str (appendable)
+
## **authenticator_password** / SCT_AUTHENTICATOR_PASSWORD
@@ -629,6 +813,8 @@ the password if PasswordAuthenticator is used
**default:** N/A
+**type:** str (appendable)
+
## **authorizer** / SCT_AUTHORIZER
@@ -636,6 +822,8 @@ which authorizer scylla will use AllowAllAuthorizer/CassandraAuthorizer
**default:** N/A
+**type:** str (appendable)
+
## **sla** / SCT_SLA
@@ -643,6 +831,8 @@ run SLA nemeses if the test is SLA only
**default:** N/A
+**type:** boolean
+
## **service_level_shares** / SCT_SERVICE_LEVEL_SHARES
@@ -650,6 +840,8 @@ List if service level shares - how many server levels to create and test. Uses i
**default:** [1000]
+**type:** list
+
## **alternator_port** / SCT_ALTERNATOR_PORT
@@ -657,6 +849,8 @@ Port to configure for alternator in scylla.yaml
**default:** N/A
+**type:** int
+
## **dynamodb_primarykey_type** / SCT_DYNAMODB_PRIMARYKEY_TYPE
@@ -664,6 +858,8 @@ Type of dynamodb table to create with range key or not, can be:
HASH,HASH_AND
**default:** HASH
+**type:** str (appendable)
+
## **alternator_write_isolation** / SCT_ALTERNATOR_WRITE_ISOLATION
@@ -671,6 +867,8 @@ Set the write isolation for the alternator table, see https://github.com/scyllad
**default:** N/A
+**type:** str (appendable)
+
## **alternator_use_dns_routing** / SCT_ALTERNATOR_USE_DNS_ROUTING
@@ -678,6 +876,8 @@ If true, spawn a docker with a dns server for the ycsb loader to point to
**default:** N/A
+**type:** boolean
+
## **alternator_enforce_authorization** / SCT_ALTERNATOR_ENFORCE_AUTHORIZATION
@@ -685,6 +885,8 @@ If true, enable the authorization check in dynamodb api (alternator)
**default:** N/A
+**type:** boolean
+
## **alternator_access_key_id** / SCT_ALTERNATOR_ACCESS_KEY_ID
@@ -692,6 +894,8 @@ the aws_access_key_id that would be used for alternator
**default:** N/A
+**type:** str (appendable)
+
## **alternator_secret_access_key** / SCT_ALTERNATOR_SECRET_ACCESS_KEY
@@ -699,6 +903,8 @@ the aws_secret_access_key that would be used for alternator
**default:** N/A
+**type:** str (appendable)
+
## **region_aware_loader** / SCT_REGION_AWARE_LOADER
@@ -706,6 +912,8 @@ When in multi region mode, run stress on loader that is located in the same regi
**default:** N/A
+**type:** boolean
+
## **append_scylla_args** / SCT_APPEND_SCYLLA_ARGS
@@ -713,6 +921,8 @@ More arguments to append to scylla command line
**default:** --blocked-reactor-notify-ms 25 --abort-on-lsa-bad-alloc 1 --abort-on-seastar-bad-alloc --abort-on-internal-error 1 --abort-on-ebadf 1 --enable-sstable-key-validation 1
+**type:** str (appendable)
+
## **append_scylla_args_oracle** / SCT_APPEND_SCYLLA_ARGS_ORACLE
@@ -720,6 +930,8 @@ More arguments to append to oracle command line
**default:** --enable-cache false
+**type:** str (appendable)
+
## **append_scylla_yaml** / SCT_APPEND_SCYLLA_YAML
@@ -727,6 +939,8 @@ More configuration to append to /etc/scylla/scylla.yaml
**default:** N/A
+**type:** dict_or_str
+
## **append_scylla_node_exporter_args** / SCT_SCYLLA_NODE_EXPORTER_ARGS
@@ -734,6 +948,8 @@ More arguments to append to scylla-node-exporter command line
**default:** N/A
+**type:** str (appendable)
+
## **nemesis_class_name** / SCT_NEMESIS_CLASS_NAME
@@ -741,6 +957,8 @@ Nemesis class to use (possible types in sdcm.nemesis).
Next syntax supporting
**default:** NoOpMonkey
+**type:** _str
+
## **nemesis_interval** / SCT_NEMESIS_INTERVAL
@@ -748,6 +966,8 @@ Nemesis sleep interval to use if None provided specifically in the test
**default:** 5
+**type:** int
+
## **nemesis_sequence_sleep_between_ops** / SCT_NEMESIS_SEQUENCE_SLEEP_BETWEEN_OPS
@@ -755,6 +975,8 @@ Sleep interval between nemesis operations for use in unique_sequence nemesis kin
**default:** N/A
+**type:** int
+
## **nemesis_during_prepare** / SCT_NEMESIS_DURING_PREPARE
@@ -762,6 +984,8 @@ Run nemesis during prepare stage of the test
**default:** True
+**type:** boolean
+
## **nemesis_seed** / SCT_NEMESIS_SEED
@@ -769,6 +993,8 @@ A seed number in order to repeat nemesis sequence as part of SisyphusMonkey
**default:** N/A
+**type:** int
+
## **nemesis_add_node_cnt** / SCT_NEMESIS_ADD_NODE_CNT
@@ -776,6 +1002,8 @@ Add/remove nodes during GrowShrinkCluster nemesis
**default:** 1
+**type:** int
+
## **nemesis_grow_shrink_instance_type** / SCT_NEMESIS_GROW_SHRINK_INSTANCE_TYPE
@@ -783,6 +1011,8 @@ Instance type to use for adding/removing nodes during GrowShrinkCluster nemesis
**default:** N/A
+**type:** _str
+
## **cluster_target_size** / SCT_CLUSTER_TARGET_SIZE
@@ -790,6 +1020,8 @@ Used for scale test: max size of the cluster
**default:** N/A
+**type:** int
+
## **space_node_threshold** / SCT_SPACE_NODE_THRESHOLD
@@ -797,6 +1029,8 @@ Space node threshold before starting nemesis (bytes)
The default value is 6GB
**default:** N/A
+**type:** int
+
## **nemesis_filter_seeds** / SCT_NEMESIS_FILTER_SEEDS
@@ -804,6 +1038,8 @@ If true runs the nemesis only on non seed nodes
**default:** N/A
+**type:** boolean
+
## **stress_cmd** / SCT_STRESS_CMD
@@ -811,6 +1047,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **gemini_schema_url** / SCT_GEMINI_SCHEMA_URL
@@ -818,6 +1056,8 @@ Url of the schema/configuration the gemini tool would use
**default:** N/A
+**type:** str (appendable)
+
## **gemini_cmd** / SCT_GEMINI_CMD
@@ -825,6 +1065,8 @@ gemini command to run (for now used only in GeminiTest)
**default:** N/A
+**type:** str (appendable)
+
## **gemini_seed** / SCT_GEMINI_SEED
@@ -832,6 +1074,8 @@ Seed number for gemini command
**default:** N/A
+**type:** int
+
## **gemini_table_options** / SCT_GEMINI_TABLE_OPTIONS
@@ -839,6 +1083,8 @@ table options for created table. example:
["cdc={'enabled': true}"]
["cdc=
**default:** N/A
+**type:** list
+
## **instance_type_loader** / SCT_INSTANCE_TYPE_LOADER
@@ -846,6 +1092,8 @@ AWS image type of the loader node
**default:** N/A
+**type:** str (appendable)
+
## **instance_type_monitor** / SCT_INSTANCE_TYPE_MONITOR
@@ -853,6 +1101,8 @@ AWS image type of the monitor node
**default:** N/A
+**type:** str (appendable)
+
## **instance_type_db** / SCT_INSTANCE_TYPE_DB
@@ -860,6 +1110,8 @@ AWS image type of the db node
**default:** N/A
+**type:** str (appendable)
+
## **instance_type_db_oracle** / SCT_INSTANCE_TYPE_DB_ORACLE
@@ -867,6 +1119,8 @@ AWS image type of the oracle node
**default:** N/A
+**type:** str (appendable)
+
## **instance_type_runner** / SCT_INSTANCE_TYPE_RUNNER
@@ -874,6 +1128,8 @@ instance type of the sct-runner node
**default:** N/A
+**type:** str (appendable)
+
## **region_name** / SCT_REGION_NAME
@@ -881,6 +1137,8 @@ AWS regions to use
**default:** N/A
+**type:** str_or_list_or_eval
+
## **security_group_ids** / SCT_SECURITY_GROUP_IDS
@@ -888,6 +1146,8 @@ AWS security groups ids to use
**default:** N/A
+**type:** str_or_list (appendable)
+
## **use_placement_group** / SCT_USE_PLACEMENT_GROUP
@@ -895,6 +1155,8 @@ if true, create 'cluster' placement group for test case for low-latency network
**default:** N/A
+**type:** str (appendable)
+
## **subnet_id** / SCT_SUBNET_ID
@@ -902,6 +1164,8 @@ AWS subnet ids to use
**default:** N/A
+**type:** str_or_list (appendable)
+
## **ami_id_db_scylla** / SCT_AMI_ID_DB_SCYLLA
@@ -909,6 +1173,8 @@ AMS AMI id to use for scylla db node
**default:** N/A
+**type:** str (appendable)
+
## **ami_id_loader** / SCT_AMI_ID_LOADER
@@ -916,6 +1182,8 @@ AMS AMI id to use for loader node
**default:** N/A
+**type:** str (appendable)
+
## **ami_id_monitor** / SCT_AMI_ID_MONITOR
@@ -923,6 +1191,8 @@ AMS AMI id to use for monitor node
**default:** N/A
+**type:** str (appendable)
+
## **ami_id_db_cassandra** / SCT_AMI_ID_DB_CASSANDRA
@@ -930,6 +1200,8 @@ AMS AMI id to use for cassandra node
**default:** N/A
+**type:** str (appendable)
+
## **ami_id_db_oracle** / SCT_AMI_ID_DB_ORACLE
@@ -937,6 +1209,8 @@ AMS AMI id to use for oracle node
**default:** N/A
+**type:** str (appendable)
+
## **root_disk_size_db** / SCT_ROOT_DISK_SIZE_DB
@@ -944,6 +1218,8 @@ AMS AMI id to use for oracle node
**default:** N/A
+**type:** int
+
## **root_disk_size_monitor** / SCT_ROOT_DISK_SIZE_MONITOR
@@ -951,6 +1227,8 @@ AMS AMI id to use for oracle node
**default:** N/A
+**type:** int
+
## **root_disk_size_loader** / SCT_ROOT_DISK_SIZE_LOADER
@@ -958,6 +1236,8 @@ AMS AMI id to use for oracle node
**default:** N/A
+**type:** int
+
## **root_disk_size_runner** / SCT_ROOT_DISK_SIZE_RUNNER
@@ -965,6 +1245,8 @@ root disk size in Gb for sct-runner
**default:** N/A
+**type:** int
+
## **ami_db_scylla_user** / SCT_AMI_DB_SCYLLA_USER
@@ -972,6 +1254,8 @@ root disk size in Gb for sct-runner
**default:** N/A
+**type:** str (appendable)
+
## **ami_monitor_user** / SCT_AMI_MONITOR_USER
@@ -979,6 +1263,8 @@ root disk size in Gb for sct-runner
**default:** N/A
+**type:** str (appendable)
+
## **ami_loader_user** / SCT_AMI_LOADER_USER
@@ -986,6 +1272,8 @@ root disk size in Gb for sct-runner
**default:** N/A
+**type:** str (appendable)
+
## **ami_db_cassandra_user** / SCT_AMI_DB_CASSANDRA_USER
@@ -993,6 +1281,8 @@ root disk size in Gb for sct-runner
**default:** N/A
+**type:** str (appendable)
+
## **spot_max_price** / SCT_SPOT_MAX_PRICE
@@ -1000,6 +1290,8 @@ The max percentage of the on demand price we set for spot/fleet instances
**default:** N/A
+**type:** float
+
## **extra_network_interface** / SCT_EXTRA_NETWORK_INTERFACE
@@ -1007,6 +1299,8 @@ if true, create extra network interface on each node
**default:** N/A
+**type:** boolean
+
## **aws_instance_profile_name_db** / SCT_AWS_INSTANCE_PROFILE_NAME_DB
@@ -1014,6 +1308,8 @@ This is the name of the instance profile to set on all db instances
**default:** N/A
+**type:** str (appendable)
+
## **aws_instance_profile_name_loader** / SCT_AWS_INSTANCE_PROFILE_NAME_LOADER
@@ -1021,6 +1317,8 @@ This is the name of the instance profile to set on all loader instances
**default:** N/A
+**type:** str (appendable)
+
## **backup_bucket_backend** / SCT_BACKUP_BUCKET_BACKEND
@@ -1028,6 +1326,8 @@ the backend to be used for backup (e.g., 's3', 'gcs' or 'azure')
**default:** N/A
+**type:** str (appendable)
+
## **backup_bucket_location** / SCT_BACKUP_BUCKET_LOCATION
@@ -1035,6 +1335,8 @@ the bucket name to be used for backup (e.g., 'manager-backup-tests')
**default:** N/A
+**type:** str_or_list (appendable)
+
## **backup_bucket_region** / SCT_BACKUP_BUCKET_REGION
@@ -1042,6 +1344,8 @@ the AWS region of a bucket to be used for backup (e.g., 'eu-west-1')
**default:** N/A
+**type:** str (appendable)
+
## **use_prepared_loaders** / SCT_USE_PREPARED_LOADERS
@@ -1049,13 +1353,17 @@ If True, we use prepared VMs for loader (instead of using docker images)
**default:** N/A
+**type:** boolean
-## **scylla_d_overrides_files** / SCT_scylla_d_overrides_files
+
+## **scylla_d_overrides_files** / SCT_SCYLLA_D_OVERRIDES_FILES
list of files that should upload to /etc/scylla.d/ directory to override scylla config files
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **gce_project** / SCT_GCE_PROJECT
@@ -1063,6 +1371,8 @@ gcp project name to use
**default:** N/A
+**type:** str (appendable)
+
## **gce_datacenter** / SCT_GCE_DATACENTER
@@ -1070,6 +1380,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str_or_list_or_eval
+
## **gce_network** / SCT_GCE_NETWORK
@@ -1077,6 +1389,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_image_db** / SCT_GCE_IMAGE_DB
@@ -1084,6 +1398,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_image_monitor** / SCT_GCE_IMAGE_MONITOR
@@ -1091,6 +1407,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_image_loader** / SCT_GCE_IMAGE_LOADER
@@ -1098,6 +1416,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_image_username** / SCT_GCE_IMAGE_USERNAME
@@ -1105,6 +1425,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_instance_type_loader** / SCT_GCE_INSTANCE_TYPE_LOADER
@@ -1112,6 +1434,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_root_disk_type_loader** / SCT_GCE_ROOT_DISK_TYPE_LOADER
@@ -1119,6 +1443,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_n_local_ssd_disk_loader** / SCT_GCE_N_LOCAL_SSD_DISK_LOADER
@@ -1126,6 +1452,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** int
+
## **gce_instance_type_monitor** / SCT_GCE_INSTANCE_TYPE_MONITOR
@@ -1133,6 +1461,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_root_disk_type_monitor** / SCT_GCE_ROOT_DISK_TYPE_MONITOR
@@ -1140,6 +1470,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_n_local_ssd_disk_monitor** / SCT_GCE_N_LOCAL_SSD_DISK_MONITOR
@@ -1147,6 +1479,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** int
+
## **gce_instance_type_db** / SCT_GCE_INSTANCE_TYPE_DB
@@ -1154,6 +1488,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_root_disk_type_db** / SCT_GCE_ROOT_DISK_TYPE_DB
@@ -1161,6 +1497,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** str (appendable)
+
## **gce_n_local_ssd_disk_db** / SCT_GCE_N_LOCAL_SSD_DISK_DB
@@ -1168,6 +1506,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** int
+
## **gce_pd_standard_disk_size_db** / SCT_GCE_PD_STANDARD_DISK_SIZE_DB
@@ -1175,6 +1515,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** int
+
## **gce_pd_ssd_disk_size_db** / SCT_GCE_PD_SSD_DISK_SIZE_DB
@@ -1182,6 +1524,8 @@ Supported: us-east1 - means that the zone will be selected automatically or you
**default:** N/A
+**type:** int
+
## **gce_setup_hybrid_raid** / SCT_GCE_SETUP_HYBRID_RAID
@@ -1189,6 +1533,8 @@ If True, SCT configures a hybrid RAID of NVMEs and an SSD for scylla's data
**default:** N/A
+**type:** boolean
+
## **gce_pd_ssd_disk_size_loader** / SCT_GCE_PD_SSD_DISK_SIZE_LOADER
@@ -1196,6 +1542,8 @@ If True, SCT configures a hybrid RAID of NVMEs and an SSD for scylla's data
**default:** N/A
+**type:** int
+
## **gce_pd_ssd_disk_size_monitor** / SCT_GCE_SSD_DISK_SIZE_MONITOR
@@ -1203,6 +1551,8 @@ If True, SCT configures a hybrid RAID of NVMEs and an SSD for scylla's data
**default:** N/A
+**type:** int
+
## **azure_region_name** / SCT_AZURE_REGION_NAME
@@ -1210,6 +1560,8 @@ Supported: eastus
**default:** N/A
+**type:** str_or_list_or_eval
+
## **azure_instance_type_loader** / SCT_AZURE_INSTANCE_TYPE_LOADER
@@ -1217,6 +1569,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **azure_instance_type_monitor** / SCT_AZURE_INSTANCE_TYPE_MONITOR
@@ -1224,6 +1578,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **azure_instance_type_db** / SCT_AZURE_INSTANCE_TYPE_DB
@@ -1231,6 +1587,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **azure_instance_type_db_oracle** / SCT_AZURE_INSTANCE_TYPE_DB_ORACLE
@@ -1238,6 +1596,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **azure_image_db** / SCT_AZURE_IMAGE_DB
@@ -1245,6 +1605,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **azure_image_monitor** / SCT_AZURE_IMAGE_MONITOR
@@ -1252,6 +1614,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **azure_image_loader** / SCT_AZURE_IMAGE_LOADER
@@ -1259,6 +1623,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **azure_image_username** / SCT_AZURE_IMAGE_USERNAME
@@ -1266,6 +1632,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **eks_service_ipv4_cidr** / SCT_EKS_SERVICE_IPV4_CIDR
@@ -1273,6 +1641,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **eks_vpc_cni_version** / SCT_EKS_VPC_CNI_VERSION
@@ -1280,6 +1650,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **eks_role_arn** / SCT_EKS_ROLE_ARN
@@ -1287,6 +1659,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **eks_cluster_version** / SCT_EKS_CLUSTER_VERSION
@@ -1294,6 +1668,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **eks_nodegroup_role_arn** / SCT_EKS_NODEGROUP_ROLE_ARN
@@ -1301,6 +1677,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **gke_cluster_version** / SCT_GKE_CLUSTER_VERSION
@@ -1308,6 +1686,8 @@ Supported: eastus
**default:** N/A
+**type:** str (appendable)
+
## **gke_k8s_release_channel** / SCT_GKE_K8S_RELEASE_CHANNEL
@@ -1315,6 +1695,8 @@ K8S release channel name to be used. Expected values are: 'rapid', 'regular', 's
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_utils_docker_image** / SCT_K8S_SCYLLA_UTILS_DOCKER_IMAGE
@@ -1322,6 +1704,8 @@ Docker image to be used by Scylla operator to tune K8S nodes for performance. Us
**default:** N/A
+**type:** str (appendable)
+
## **k8s_enable_performance_tuning** / SCT_K8S_ENABLE_PERFORMANCE_TUNING
@@ -1329,6 +1713,8 @@ Define whether performance tuning must run or not.
**default:** N/A
+**type:** boolean
+
## **k8s_deploy_monitoring** / SCT_K8S_DEPLOY_MONITORING
@@ -1336,6 +1722,8 @@ Define whether performance tuning must run or not.
**default:** N/A
+**type:** boolean
+
## **k8s_local_volume_provisioner_type** / SCT_K8S_LOCAL_VOLUME_PROVISIONER_TYPE
@@ -1343,6 +1731,8 @@ Defines the type of the K8S local volume provisioner to be deployed. It may be e
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_operator_docker_image** / SCT_K8S_SCYLLA_OPERATOR_DOCKER_IMAGE
@@ -1350,6 +1740,8 @@ Docker image to be used for installation of scylla operator.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_operator_upgrade_docker_image** / SCT_K8S_SCYLLA_OPERATOR_UPGRADE_DOCKER_IMAGE
@@ -1357,6 +1749,8 @@ Docker image to be used for upgrade of scylla operator.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_operator_helm_repo** / SCT_K8S_SCYLLA_OPERATOR_HELM_REPO
@@ -1364,6 +1758,8 @@ Link to the Helm repository where to get 'scylla-operator' charts from.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_operator_upgrade_helm_repo** / SCT_K8S_SCYLLA_OPERATOR_UPGRADE_HELM_REPO
@@ -1371,6 +1767,8 @@ Link to the Helm repository where to get 'scylla-operator' charts for upgrade.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_operator_chart_version** / SCT_K8S_SCYLLA_OPERATOR_CHART_VERSION
@@ -1378,6 +1776,8 @@ Version of 'scylla-operator' Helm chart to use. If not set then latest one will
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_operator_upgrade_chart_version** / SCT_K8S_SCYLLA_OPERATOR_UPGRADE_CHART_VERSION
@@ -1385,6 +1785,8 @@ Version of 'scylla-operator' Helm chart to use for upgrade.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_functional_test_dataset** / SCT_K8S_FUNCTIONAL_TEST_DATASET
@@ -1392,6 +1794,8 @@ Defines whether dataset uses for pre-fill cluster in functional test. Defined in
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_cpu_limit** / SCT_K8S_SCYLLA_CPU_LIMIT
@@ -1399,6 +1803,8 @@ The CPU limit that will be set for each Scylla cluster deployed in K8S. If not s
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_memory_limit** / SCT_K8S_SCYLLA_MEMORY_LIMIT
@@ -1406,6 +1812,8 @@ The memory limit that will be set for each Scylla cluster deployed in K8S. If no
**default:** N/A
+**type:** str (appendable)
+
## **k8s_scylla_cluster_name** / SCT_K8S_SCYLLA_CLUSTER_NAME
@@ -1413,6 +1821,8 @@ The memory limit that will be set for each Scylla cluster deployed in K8S. If no
**default:** N/A
+**type:** str (appendable)
+
## **k8s_n_scylla_pods_per_cluster** / K8S_N_SCYLLA_PODS_PER_CLUSTER
@@ -1420,6 +1830,8 @@ Number of loader pods per loader cluster.
**default:** 3
+**type:** int_or_space_separated_ints
+
## **k8s_scylla_disk_gi** / SCT_K8S_SCYLLA_DISK_GI
@@ -1427,6 +1839,8 @@ Number of loader pods per loader cluster.
**default:** N/A
+**type:** int
+
## **k8s_scylla_disk_class** / SCT_K8S_SCYLLA_DISK_CLASS
@@ -1434,6 +1848,8 @@ Number of loader pods per loader cluster.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_loader_cluster_name** / SCT_K8S_LOADER_CLUSTER_NAME
@@ -1441,6 +1857,8 @@ Number of loader pods per loader cluster.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_n_loader_pods_per_cluster** / SCT_K8S_N_LOADER_PODS_PER_CLUSTER
@@ -1448,6 +1866,8 @@ Number of loader pods per loader cluster.
**default:** N/A
+**type:** int_or_space_separated_ints
+
## **k8s_loader_run_type** / SCT_K8S_LOADER_RUN_TYPE
@@ -1455,6 +1875,8 @@ Defines how the loader pods must run. It may be either 'static' (default, run st
**default:** dynamic
+**type:** str (appendable)
+
## **k8s_instance_type_auxiliary** / SCT_K8S_INSTANCE_TYPE_AUXILIARY
@@ -1462,6 +1884,8 @@ Instance type for the nodes of the K8S auxiliary/default node pool.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_instance_type_monitor** / SCT_K8S_INSTANCE_TYPE_MONITOR
@@ -1469,6 +1893,8 @@ Instance type for the nodes of the K8S monitoring node pool.
**default:** N/A
+**type:** str (appendable)
+
## **mini_k8s_version** / SCT_MINI_K8S_VERSION
@@ -1476,6 +1902,8 @@ Instance type for the nodes of the K8S monitoring node pool.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_cert_manager_version** / SCT_K8S_CERT_MANAGER_VERSION
@@ -1483,6 +1911,8 @@ Instance type for the nodes of the K8S monitoring node pool.
**default:** N/A
+**type:** str (appendable)
+
## **k8s_minio_storage_size** / SCT_K8S_MINIO_STORAGE_SIZE
@@ -1490,6 +1920,8 @@ Instance type for the nodes of the K8S monitoring node pool.
**default:** 10Gi
+**type:** str (appendable)
+
## **k8s_log_api_calls** / SCT_K8S_LOG_API_CALLS
@@ -1497,6 +1929,8 @@ Defines whether the K8S API server logging must be enabled and it's logs gathere
**default:** N/A
+**type:** boolean
+
## **k8s_tenants_num** / SCT_TENANTS_NUM
@@ -1504,6 +1938,8 @@ Number of Scylla clusters to create in the K8S cluster.
**default:** 1
+**type:** int
+
## **k8s_enable_tls** / SCT_K8S_ENABLE_TLS
@@ -1511,6 +1947,8 @@ Defines whether we enable the scylla operator TLS feature or not.
**default:** N/A
+**type:** boolean
+
## **k8s_enable_sni** / SCT_K8S_ENABLE_SNI
@@ -1518,6 +1956,8 @@ Defines whether we install SNI and use it or not (serverless feature).
**default:** N/A
+**type:** boolean
+
## **k8s_enable_alternator** / SCT_K8S_ENABLE_ALTERNATOR
@@ -1525,6 +1965,8 @@ Defines whether we enable the alternator feature using scylla-operator or not.
**default:** N/A
+**type:** boolean
+
## **k8s_connection_bundle_file** / SCT_K8S_CONNECTION_BUNDLE_FILE
@@ -1532,6 +1974,8 @@ Serverless configuration bundle file
**default:** N/A
+**type:** _file
+
## **k8s_db_node_service_type** / SCT_K8S_DB_NODE_SERVICE_TYPE
@@ -1539,6 +1983,8 @@ Defines the type of the K8S 'Service' objects type used for ScyllaDB pods. Empty
**default:** N/A
+**type:** str (appendable)
+
## **k8s_db_node_to_node_broadcast_ip_type** / SCT_K8S_DB_NODE_TO_NODE_BROADCAST_IP_TYPE
@@ -1546,6 +1992,8 @@ Defines the source of the IP address to be used for the 'broadcast_address' conf
**default:** N/A
+**type:** str (appendable)
+
## **k8s_db_node_to_client_broadcast_ip_type** / SCT_K8S_DB_NODE_TO_CLIENT_BROADCAST_IP_TYPE
@@ -1553,6 +2001,8 @@ Defines the source of the IP address to be used for the 'broadcast_rpc_address'
**default:** N/A
+**type:** str (appendable)
+
## **k8s_use_chaos_mesh** / SCT_K8S_USE_CHAOS_MESH
@@ -1560,6 +2010,8 @@ enables chaos-mesh for k8s testing
**default:** N/A
+**type:** boolean
+
## **k8s_n_auxiliary_nodes** / SCT_K8S_N_AUXILIARY_NODES
@@ -1567,6 +2019,8 @@ Number of nodes in auxiliary pool
**default:** N/A
+**type:** int
+
## **k8s_n_monitor_nodes** / SCT_K8S_N_MONITOR_NODES
@@ -1574,6 +2028,8 @@ Number of nodes in monitoring pool that will be used for scylla-operator's deplo
**default:** N/A
+**type:** int
+
## **mgmt_docker_image** / SCT_MGMT_DOCKER_IMAGE
@@ -1581,6 +2037,8 @@ Scylla manager docker image, i.e. 'scylladb/scylla-manager:2.2.1'
**default:** scylladb/scylla-manager:3.4.0
+**type:** str (appendable)
+
## **docker_image** / SCT_DOCKER_IMAGE
@@ -1588,6 +2046,8 @@ Scylla docker image repo, i.e. 'scylladb/scylla', if omitted is calculated from
**default:** N/A
+**type:** str (appendable)
+
## **docker_network** / SCT_DOCKER_NETWORK
@@ -1595,6 +2055,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str (appendable)
+
## **s3_baremetal_config** / SCT_S3_BAREMETAL_CONFIG
@@ -1602,6 +2064,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str (appendable)
+
## **db_nodes_private_ip** / SCT_DB_NODES_PRIVATE_IP
@@ -1609,6 +2073,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **db_nodes_public_ip** / SCT_DB_NODES_PUBLIC_IP
@@ -1616,6 +2082,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **loaders_private_ip** / SCT_LOADERS_PRIVATE_IP
@@ -1623,6 +2091,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **loaders_public_ip** / SCT_LOADERS_PUBLIC_IP
@@ -1630,6 +2100,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **monitor_nodes_private_ip** / SCT_MONITOR_NODES_PRIVATE_IP
@@ -1637,6 +2109,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **monitor_nodes_public_ip** / SCT_MONITOR_NODES_PUBLIC_IP
@@ -1644,6 +2118,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **cassandra_stress_population_size** / SCT_CASSANDRA_STRESS_POPULATION_SIZE
@@ -1651,6 +2127,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** 1000000
+**type:** int
+
## **cassandra_stress_threads** / SCT_CASSANDRA_STRESS_THREADS
@@ -1658,6 +2136,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** 1000
+**type:** int
+
## **add_node_cnt** / SCT_ADD_NODE_CNT
@@ -1665,6 +2145,8 @@ local docker network to use, if there's need to have db cluster connect to other
**default:** 1
+**type:** int
+
## **stress_multiplier** / SCT_STRESS_MULTIPLIER
@@ -1672,6 +2154,8 @@ Number of cassandra-stress processes
**default:** 1
+**type:** int
+
## **stress_multiplier_w** / SCT_STRESS_MULTIPLIER_W
@@ -1679,6 +2163,8 @@ Number of cassandra-stress processes for write workload
**default:** 1
+**type:** int
+
## **stress_multiplier_r** / SCT_STRESS_MULTIPLIER_R
@@ -1686,6 +2172,8 @@ Number of cassandra-stress processes for read workload
**default:** 1
+**type:** int
+
## **stress_multiplier_m** / SCT_STRESS_MULTIPLIER_M
@@ -1693,6 +2181,8 @@ Number of cassandra-stress processes for mixed workload
**default:** 1
+**type:** int
+
## **run_fullscan** / SCT_RUN_FULLSCAN
@@ -1700,6 +2190,8 @@ Number of cassandra-stress processes for mixed workload
**default:** N/A
+**type:** list
+
## **run_full_partition_scan** / SCT_run_full_partition_scan
@@ -1707,6 +2199,8 @@ Runs a background thread that issues reversed-queries on a table random partitio
**default:** N/A
+**type:** str (appendable)
+
## **run_tombstone_gc_verification** / SCT_RUN_TOMBSTONE_GC_VERIFICATION
@@ -1714,6 +2208,8 @@ Runs a background thread that verifies Tombstones GC on a table by an interval
**default:** N/A
+**type:** str (appendable)
+
## **keyspace_num** / SCT_KEYSPACE_NUM
@@ -1721,6 +2217,8 @@ Runs a background thread that verifies Tombstones GC on a table by an interval
**default:** 1
+**type:** int
+
## **round_robin** / SCT_ROUND_ROBIN
@@ -1728,6 +2226,8 @@ Runs a background thread that verifies Tombstones GC on a table by an interval
**default:** N/A
+**type:** boolean
+
## **batch_size** / SCT_BATCH_SIZE
@@ -1735,6 +2235,8 @@ Runs a background thread that verifies Tombstones GC on a table by an interval
**default:** 1
+**type:** int
+
## **pre_create_schema** / SCT_PRE_CREATE_SCHEMA
@@ -1742,6 +2244,8 @@ Runs a background thread that verifies Tombstones GC on a table by an interval
**default:** N/A
+**type:** boolean
+
## **pre_create_keyspace** / SCT_PRE_CREATE_KEYSPACE
@@ -1749,6 +2253,8 @@ Command to create keysapce to be pre-create before running workload
**default:** N/A
+**type:** str_or_list (appendable)
+
## **post_prepare_cql_cmds** / SCT_POST_PREPARE_CQL_CMDS
@@ -1756,6 +2262,8 @@ CQL Commands to run after prepare stage finished (relevant only to longevity_tes
**default:** N/A
+**type:** str_or_list (appendable)
+
## **prepare_wait_no_compactions_timeout** / SCT_PREPARE_WAIT_NO_COMPACTIONS_TIMEOUT
@@ -1763,6 +2271,8 @@ At the end of prepare stage, run major compaction and wait for this time (in min
**default:** N/A
+**type:** int
+
## **compaction_strategy** / SCT_COMPACTION_STRATEGY
@@ -1770,6 +2280,8 @@ Choose a specific compaction strategy to pre-create schema with.
**default:** SizeTieredCompactionStrategy
+**type:** str (appendable)
+
## **sstable_size** / SSTABLE_SIZE
@@ -1777,6 +2289,8 @@ Configure sstable size for the usage of pre-create-schema mode
**default:** N/A
+**type:** int
+
## **cluster_health_check** / SCT_CLUSTER_HEALTH_CHECK
@@ -1784,6 +2298,8 @@ When true, start cluster health checker for all nodes
**default:** True
+**type:** boolean
+
## **data_validation** / SCT_DATA_VALIDATION
@@ -1791,6 +2307,8 @@ A group of sub-parameters: validate_partitions, table_name, primary_key_column,<
**default:** N/A
+**type:** str (appendable)
+
## **stress_read_cmd** / SCT_STRESS_READ_CMD
@@ -1798,6 +2316,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **prepare_verify_cmd** / SCT_PREPARE_VERIFY_CMD
@@ -1805,6 +2325,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **user_profile_table_count** / SCT_USER_PROFILE_TABLE_COUNT
@@ -1812,6 +2334,8 @@ number of tables to create for template user c-s
**default:** 1
+**type:** int
+
## **scylla_mgmt_upgrade_to_repo** / SCT_SCYLLA_MGMT_UPGRADE_TO_REPO
@@ -1819,6 +2343,8 @@ Url to the repo of scylla manager version to upgrade to for management tests
**default:** N/A
+**type:** str (appendable)
+
## **mgmt_restore_extra_params** / SCT_MGMT_RESTORE_EXTRA_PARAMS
@@ -1826,6 +2352,8 @@ Manager restore operation extra parameters: batch-size, parallel, etc.For exampl
**default:** N/A
+**type:** str (appendable)
+
## **mgmt_agent_backup_config** / SCT_MGMT_AGENT_BACKUP_CONFIG
@@ -1833,6 +2361,8 @@ Manager agent backup general configuration: checkers, transfers, low_level_retri
**default:** N/A
+**type:** dict_or_str_or_pydantic
+
## **mgmt_reuse_backup_snapshot_name** / SCT_MGMT_REUSE_BACKUP_SNAPSHOT_NAME
@@ -1840,6 +2370,8 @@ Name of backup snapshot to use in Manager restore benchmark test, for example, 5
**default:** N/A
+**type:** str (appendable)
+
## **mgmt_skip_post_restore_stress_read** / SCT_MGMT_SKIP_POST_RESTORE_STRESS_READ
@@ -1847,6 +2379,8 @@ Skip post-restore c-s verification read in the Manager restore benchmark tests
**default:** N/A
+**type:** boolean
+
## **mgmt_nodetool_refresh_flags** / SCT_MGMT_NODETOOL_REFRESH_FLAGS
@@ -1854,6 +2388,8 @@ Nodetool refresh extra options like --load-and-stream or --primary-replica-only
**default:** N/A
+**type:** str (appendable)
+
## **mgmt_prepare_snapshot_size** / SCT_MGMT_PREPARE_SNAPSHOT_SIZE
@@ -1861,6 +2397,8 @@ Size of backup snapshot in Gb to be prepared to be prepared for backup
**default:** N/A
+**type:** int
+
## **stress_cmd_w** / SCT_STRESS_CMD_W
@@ -1868,6 +2406,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_r** / SCT_STRESS_CMD_R
@@ -1875,6 +2415,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_m** / SCT_STRESS_CMD_M
@@ -1882,6 +2424,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_cache_warmup** / SCT_STRESS_CMD_CACHE_WARM_UP
@@ -1889,6 +2433,8 @@ cassandra-stress commands for warm-up before read workload.
You can specify e
**default:** N/A
+**type:** str_or_list (appendable)
+
## **prepare_write_cmd** / SCT_PREPARE_WRITE_CMD
@@ -1896,6 +2442,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_no_mv** / SCT_STRESS_CMD_NO_MV
@@ -1903,6 +2451,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_no_mv_profile** / SCT_STRESS_CMD_NO_MV_PROFILE
@@ -1910,6 +2460,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str (appendable)
+
## **perf_extra_jobs_to_compare** / SCT_PERF_EXTRA_JOBS_TO_COMPARE
@@ -1917,6 +2469,8 @@ jobs to compare performance results with, for example if running in staging, we
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **cs_user_profiles** / SCT_CS_USER_PROFILES
@@ -1924,6 +2478,8 @@ cassandra-stress user-profiles list. Executed in test step
**default:** N/A
+**type:** str_or_list (appendable)
+
## **prepare_cs_user_profiles** / SCT_PREPARE_CS_USER_PROFILES
@@ -1931,6 +2487,8 @@ cassandra-stress user-profiles list. Executed in prepare step
**default:** N/A
+**type:** str_or_list (appendable)
+
## **cs_duration** / SCT_CS_DURATION
@@ -1938,6 +2496,8 @@ cassandra-stress user-profiles list. Executed in prepare step
**default:** 50m
+**type:** str (appendable)
+
## **cs_debug** / SCT_CS_DEBUG
@@ -1945,6 +2505,8 @@ enable debug for cassandra-stress
**default:** N/A
+**type:** boolean
+
## **stress_cmd_mv** / SCT_STRESS_CMD_MV
@@ -1952,6 +2514,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **prepare_stress_cmd** / SCT_PREPARE_STRESS_CMD
@@ -1959,6 +2523,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **perf_gradual_threads** / SCT_PERF_GRADUAL_THREADS
@@ -1966,6 +2532,8 @@ Threads amount of c-s load for gradual performance test per sub-test. Example: {
**default:** N/A
+**type:** dict
+
## **perf_gradual_throttle_steps** / SCT_PERF_GRADUAL_THROTTLE_STEPS
@@ -1973,6 +2541,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** dict
+
## **skip_download** / SCT_SKIP_DOWNLOAD
@@ -1980,6 +2550,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** boolean
+
## **sstable_file** / SCT_SSTABLE_FILE
@@ -1987,6 +2559,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** str (appendable)
+
## **sstable_url** / SCT_SSTABLE_URL
@@ -1994,6 +2568,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** str (appendable)
+
## **sstable_md5** / SCT_SSTABLE_MD5
@@ -2001,6 +2577,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** str (appendable)
+
## **flush_times** / SCT_FLUSH_TIMES
@@ -2008,6 +2586,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** int
+
## **flush_period** / SCT_FLUSH_PERIOD
@@ -2015,6 +2595,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** int
+
## **new_scylla_repo** / SCT_NEW_SCYLLA_REPO
@@ -2022,6 +2604,8 @@ Used for gradual performance test. Define throttle for load step in ops. Example
**default:** N/A
+**type:** str (appendable)
+
## **new_version** / SCT_NEW_VERSION
@@ -2029,6 +2613,8 @@ Assign new upgrade version, use it to upgrade to specific minor release. eg: 3.0
**default:** N/A
+**type:** str (appendable)
+
## **target_upgrade_version** / SCT_TARGET_UPGRADE_VERSION
@@ -2036,6 +2622,8 @@ Assign target upgrade version, use for decide if the truncate entries test shoul
**default:** N/A
+**type:** str (appendable)
+
## **disable_raft** / SCT_DISABLE_RAFT
@@ -2043,6 +2631,8 @@ As for now, raft will be enable by default in all [upgrade] tests, so this flag
**default:** True
+**type:** boolean
+
## **enable_tablets_on_upgrade** / SCT_ENABLE_TABLETS_ON_UPGRADE
@@ -2050,6 +2640,8 @@ By default, the tablets feature is disabled. With this parameter, created for th
**default:** N/A
+**type:** boolean
+
## **upgrade_node_packages** / SCT_UPGRADE_NODE_PACKAGES
@@ -2057,6 +2649,8 @@ By default, the tablets feature is disabled. With this parameter, created for th
**default:** N/A
+**type:** str (appendable)
+
## **upgrade_node_system** / SCT_UPGRADE_NODE_SYSTEM
@@ -2064,6 +2658,8 @@ Upgrade system packages on nodes before upgrading Scylla. Enabled by default
**default:** True
+**type:** boolean
+
## **test_sst3** / SCT_TEST_SST3
@@ -2071,6 +2667,8 @@ Upgrade system packages on nodes before upgrading Scylla. Enabled by default
**default:** N/A
+**type:** boolean
+
## **test_upgrade_from_installed_3_1_0** / SCT_TEST_UPGRADE_FROM_INSTALLED_3_1_0
@@ -2078,6 +2676,8 @@ Enable an option for installed 3.1.0 for work around a scylla issue if it's true
**default:** N/A
+**type:** boolean
+
## **recover_system_tables** / SCT_RECOVER_SYSTEM_TABLES
@@ -2085,6 +2685,8 @@ Enable an option for installed 3.1.0 for work around a scylla issue if it's true
**default:** N/A
+**type:** boolean
+
## **stress_cmd_1** / SCT_STRESS_CMD_1
@@ -2092,6 +2694,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_complex_prepare** / SCT_STRESS_CMD_COMPLEX_PREPARE
@@ -2099,6 +2703,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **prepare_write_stress** / SCT_PREPARE_WRITE_STRESS
@@ -2106,6 +2712,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_read_10m** / SCT_STRESS_CMD_READ_10M
@@ -2113,6 +2721,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_read_cl_one** / SCT_STRESS_CMD_READ_CL_ONE
@@ -2120,6 +2730,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_read_60m** / SCT_STRESS_CMD_READ_60M
@@ -2127,6 +2739,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_complex_verify_read** / SCT_STRESS_CMD_COMPLEX_VERIFY_READ
@@ -2134,6 +2748,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_complex_verify_more** / SCT_STRESS_CMD_COMPLEX_VERIFY_MORE
@@ -2141,6 +2757,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **write_stress_during_entire_test** / SCT_WRITE_STRESS_DURING_ENTIRE_TEST
@@ -2148,6 +2766,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **verify_data_after_entire_test** / SCT_VERIFY_DATA_AFTER_ENTIRE_TEST
@@ -2155,6 +2775,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_read_cl_quorum** / SCT_STRESS_CMD_READ_CL_QUORUM
@@ -2162,6 +2784,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **verify_stress_after_cluster_upgrade** / SCT_VERIFY_STRESS_AFTER_CLUSTER_UPGRADE
@@ -2169,6 +2793,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **stress_cmd_complex_verify_delete** / SCT_STRESS_CMD_COMPLEX_VERIFY_DELETE
@@ -2176,6 +2802,8 @@ cassandra-stress commands.
You can specify everything but the -node parameter
**default:** N/A
+**type:** str_or_list (appendable)
+
## **scylla_encryption_options** / SCT_SCYLLA_ENCRYPTION_OPTIONS
@@ -2183,6 +2811,8 @@ options will be used for enable encryption at-rest for tables
**default:** N/A
+**type:** str_or_list (appendable)
+
## **kms_key_rotation_interval** / SCT_KMS_KEY_ROTATION_INTERVAL
@@ -2190,6 +2820,8 @@ The time interval in minutes which gets waited before the KMS key rotation happe
**default:** N/A
+**type:** int
+
## **enterprise_disable_kms** / SCT_ENTERPRISE_DISABLE_KMS
@@ -2197,6 +2829,8 @@ An escape hatch to disable KMS for enterprise run, when needed, we enable kms by
**default:** N/A
+**type:** boolean
+
## **logs_transport** / SCT_LOGS_TRANSPORT
@@ -2204,6 +2838,8 @@ How to transport logs: syslog-ng, ssh or docker
**default:** syslog-ng
+**type:** str (appendable)
+
## **collect_logs** / SCT_COLLECT_LOGS
@@ -2211,6 +2847,8 @@ Collect logs from instances and sct runner
**default:** N/A
+**type:** boolean
+
## **execute_post_behavior** / SCT_EXECUTE_POST_BEHAVIOR
@@ -2218,6 +2856,8 @@ Run post behavior actions in sct teardown step
**default:** N/A
+**type:** boolean
+
## **post_behavior_db_nodes** / SCT_POST_BEHAVIOR_DB_NODES
@@ -2225,6 +2865,8 @@ Failure/post test behavior, i.e. what to do with the db cloud instances at the e
**default:** keep-on-failure
+**type:** str (appendable)
+
## **post_behavior_loader_nodes** / SCT_POST_BEHAVIOR_LOADER_NODES
@@ -2232,6 +2874,8 @@ Failure/post test behavior, i.e. what to do with the loader cloud instances at t
**default:** destroy
+**type:** str (appendable)
+
## **post_behavior_monitor_nodes** / SCT_POST_BEHAVIOR_MONITOR_NODES
@@ -2239,6 +2883,8 @@ Failure/post test behavior, i.e. what to do with the monitor cloud instances at
**default:** keep-on-failure
+**type:** str (appendable)
+
## **post_behavior_k8s_cluster** / SCT_POST_BEHAVIOR_K8S_CLUSTER
@@ -2246,6 +2892,8 @@ Failure/post test behavior, i.e. what to do with the k8s cluster at the end of t
**default:** keep-on-failure
+**type:** str (appendable)
+
## **internode_compression** / SCT_INTERNODE_COMPRESSION
@@ -2253,6 +2901,8 @@ scylla option: internode_compression
**default:** N/A
+**type:** str (appendable)
+
## **internode_encryption** / SCT_INTERNODE_ENCRYPTION
@@ -2260,6 +2910,8 @@ scylla sub option of server_encryption_options: internode_encryption
**default:** all
+**type:** str (appendable)
+
## **jmx_heap_memory** / SCT_JMX_HEAP_MEMORY
@@ -2267,6 +2919,8 @@ The total size of the memory allocated to JMX. Values in MB, so for 1GB enter 10
**default:** N/A
+**type:** int
+
## **store_perf_results** / SCT_STORE_PERF_RESULTS
@@ -2274,6 +2928,8 @@ A flag that indicates whether or not to gather the prometheus stats at the end o
**default:** N/A
+**type:** boolean
+
## **append_scylla_setup_args** / SCT_APPEND_SCYLLA_SETUP_ARGS
@@ -2281,6 +2937,8 @@ More arguments to append to scylla_setup command line
**default:** N/A
+**type:** str (appendable)
+
## **use_preinstalled_scylla** / SCT_USE_PREINSTALLED_SCYLLA
@@ -2288,6 +2946,8 @@ Don't install/update ScyllaDB on DB nodes
**default:** N/A
+**type:** boolean
+
## **force_run_iotune** / SCT_FORCE_RUN_IOTUNE
@@ -2295,6 +2955,8 @@ Force running iotune on the DB nodes, regdless if image has predefined values
**default:** N/A
+**type:** boolean
+
## **stress_cdclog_reader_cmd** / SCT_STRESS_CDCLOG_READER_CMD
@@ -2302,6 +2964,8 @@ cdc-stressor command to read cdc_log table.
You can specify everything but th
**default:** cdc-stressor -stream-query-round-duration 30s
+**type:** str (appendable)
+
## **store_cdclog_reader_stats_in_es** / SCT_STORE_CDCLOG_READER_STATS_IN_ES
@@ -2309,6 +2973,8 @@ Add cdclog reader stats to ES for future performance result calculating
**default:** N/A
+**type:** boolean
+
## **stop_test_on_stress_failure** / SCT_STOP_TEST_ON_STRESS_FAILURE
@@ -2316,6 +2982,8 @@ If set to True the test will be stopped immediately when stress command failed.<
**default:** True
+**type:** boolean
+
## **stress_cdc_log_reader_batching_enable** / SCT_STRESS_CDC_LOG_READER_BATCHING_ENABLE
@@ -2323,6 +2991,8 @@ retrieving data from multiple streams in one poll
**default:** True
+**type:** boolean
+
## **use_legacy_cluster_init** / SCT_USE_LEGACY_CLUSTER_INIT
@@ -2330,6 +3000,8 @@ Use legacy cluster initialization with autobootsrap disabled and parallel node s
**default:** N/A
+**type:** boolean
+
## **availability_zone** / SCT_AVAILABILITY_ZONE
@@ -2337,6 +3009,8 @@ Availability zone to use. Specify multiple (comma separated) to deploy resources
**default:** N/A
+**type:** str (appendable)
+
## **aws_fallback_to_next_availability_zone** / SCT_AWS_FALLBACK_TO_NEXT_AVAILABILITY_ZONE
@@ -2344,6 +3018,8 @@ Try all availability zones one by one in order to maximize the chances of gettin
**default:** N/A
+**type:** boolean
+
## **num_nodes_to_rollback** / SCT_NUM_NODES_TO_ROLLBACK
@@ -2351,6 +3027,8 @@ Number of nodes to upgrade and rollback in test_generic_cluster_upgrade
**default:** N/A
+**type:** str (appendable)
+
## **upgrade_sstables** / SCT_UPGRADE_SSTABLES
@@ -2358,6 +3036,8 @@ Whether to upgrade sstables as part of upgrade_node or not
**default:** N/A
+**type:** boolean
+
## **stress_before_upgrade** / SCT_STRESS_BEFORE_UPGRADE
@@ -2365,6 +3045,8 @@ Stress command to be run before upgrade (preapre stage)
**default:** N/A
+**type:** str (appendable)
+
## **stress_during_entire_upgrade** / SCT_STRESS_DURING_ENTIRE_UPGRADE
@@ -2372,6 +3054,8 @@ Stress command to be run during the upgrade - user should take care for suitable
**default:** N/A
+**type:** str (appendable)
+
## **stress_after_cluster_upgrade** / SCT_STRESS_AFTER_CLUSTER_UPGRADE
@@ -2379,6 +3063,8 @@ Stress command to be run after full upgrade - usually used to read the dataset f
**default:** N/A
+**type:** str (appendable)
+
## **jepsen_scylla_repo** / SCT_JEPSEN_SCYLLA_REPO
@@ -2386,6 +3072,8 @@ Link to the git repository with Jepsen Scylla tests
**default:** https://github.com/jepsen-io/scylla.git
+**type:** str (appendable)
+
## **jepsen_test_cmd** / SCT_JEPSEN_TEST_CMD
@@ -2393,6 +3081,8 @@ Jepsen test command (e.g., 'test-all')
**default:** ['test-all -w cas-register --concurrency 10n', 'test-all -w counter --concurrency 10n', 'test-all -w cmap --concurrency 10n', 'test-all -w cset --concurrency 10n', 'test-all -w write-isolation --concurrency 10n', 'test-all -w list-append --concurrency 10n', 'test-all -w wr-register --concurrency 10n']
+**type:** str_or_list (appendable)
+
## **jepsen_test_count** / SCT_JEPSEN_TEST_COUNT
@@ -2400,6 +3090,8 @@ possible number of reruns of single Jepsen test command
**default:** 1
+**type:** int
+
## **jepsen_test_run_policy** / SCT_JEPSEN_TEST_RUN_POLICY
@@ -2407,6 +3099,8 @@ Jepsen test run policy (i.e., what we want to consider as passed for a single te
**default:** all
+**type:** str (appendable)
+
## **max_events_severities** / SCT_MAX_EVENTS_SEVERITIES
@@ -2414,6 +3108,8 @@ Limit severity level for event types
**default:** N/A
+**type:** str_or_list (appendable)
+
## **scylla_rsyslog_setup** / SCT_SCYLLA_RSYSLOG_SETUP
@@ -2421,6 +3117,8 @@ Configure rsyslog on Scylla nodes to send logs to monitoring nodes
**default:** N/A
+**type:** boolean
+
## **events_limit_in_email** / SCT_EVENTS_LIMIT_IN_EMAIL
@@ -2428,6 +3126,8 @@ Limit number events in email reports
**default:** 10
+**type:** int
+
## **data_volume_disk_num** / SCT_DATA_VOLUME_DISK_NUM
@@ -2435,6 +3135,8 @@ Number of additional data volumes attached to instances
if data_volume_disk_n
**default:** N/A
+**type:** int
+
## **data_volume_disk_type** / SCT_DATA_VOLUME_DISK_TYPE
@@ -2442,6 +3144,8 @@ Type of addtitional volumes: gp2|gp3|io2|io3
**default:** N/A
+**type:** str (appendable)
+
## **data_volume_disk_size** / SCT_DATA_VOLUME_DISK_SIZE
@@ -2449,6 +3153,8 @@ Size of additional volume in GB
**default:** N/A
+**type:** int
+
## **data_volume_disk_iops** / SCT_DATA_VOLUME_DISK_IOPS
@@ -2456,6 +3162,8 @@ Number of iops for ebs type io2|io3|gp3
**default:** N/A
+**type:** int
+
## **data_volume_disk_throughput** / SCT_DATA_VOLUME_DISK_THROUGHPUT
@@ -2463,6 +3171,8 @@ Throughput in MiB/sec for ebs type gp3. Min is 125. Max is 1000.
**default:** N/A
+**type:** int
+
## **run_db_node_benchmarks** / SCT_RUN_DB_NODE_BENCHMARKS
@@ -2470,6 +3180,8 @@ Flag for running db node benchmarks before the tests
**default:** N/A
+**type:** boolean
+
## **nemesis_selector** / SCT_NEMESIS_SELECTOR
@@ -2477,6 +3189,8 @@ nemesis_selector gets a list of "nemesis properties" and filters IN all the neme
**default:** N/A
+**type:** str_or_list (appendable)
+
## **nemesis_exclude_disabled** / SCT_NEMESIS_EXCLUDE_DISABLED
@@ -2484,6 +3198,8 @@ nemesis_exclude_disabled determines whether 'disabled' nemeses are filtered out
**default:** True
+**type:** boolean
+
## **nemesis_multiply_factor** / SCT_NEMESIS_MULTIPLY_FACTOR
@@ -2491,6 +3207,8 @@ Multiply the list of nemesis to execute by the specified factor
**default:** 6
+**type:** int
+
## **nemesis_double_load_during_grow_shrink_duration** / SCT_NEMESIS_DOUBLE_LOAD_DURING_GROW_SHRINK_DURATION
@@ -2498,6 +3216,8 @@ After growing (and before shrink) in GrowShrinkCluster nemesis it will double th
**default:** N/A
+**type:** int
+
## **raid_level** / SCT_RAID_LEVEL
@@ -2505,6 +3225,8 @@ Number of of raid level: 0 - RAID0, 5 - RAID5
**default:** N/A
+**type:** int
+
## **bare_loaders** / SCT_BARE_LOADERS
@@ -2512,6 +3234,8 @@ Don't install anything but node_exporter to the loaders during cluster setup
**default:** N/A
+**type:** boolean
+
## **stress_image** / SCT_STRESS_IMAGE
@@ -2519,6 +3243,8 @@ Dict of the images to use for the stress tools
**default:** N/A
+**type:** dict_or_str
+
## **scylla_network_config** / SCT_SCYLLA_NETWORK_CONFIG
@@ -2526,6 +3252,8 @@ Configure Scylla networking with single or multiple NIC/IP combinations.
It m
**default:** N/A
+**type:** list
+
## **enable_argus** / SCT_ENABLE_ARGUS
@@ -2533,6 +3261,8 @@ Control reporting to argus
**default:** True
+**type:** boolean
+
## **cs_populating_distribution** / SCT_CS_POPULATING_DISTRIBUTION
@@ -2540,6 +3270,8 @@ set c-s parameter '-pop' with gauss/uniform distribution for
performance grad
**default:** N/A
+**type:** str (appendable)
+
## **latte_schema_parameters** / SCT_LATTE_SCHEMA_PARAMETERS
@@ -2547,6 +3279,8 @@ Optional. Allows to pass through custom rune script parameters to the 'latte sch
**default:** N/A
+**type:** dict
+
## **num_loaders_step** / SCT_NUM_LOADERS_STEP
@@ -2554,6 +3288,8 @@ Number of loaders which should be added per step
**default:** N/A
+**type:** int
+
## **stress_threads_start_num** / SCT_STRESS_THREADS_START_NUM
@@ -2561,6 +3297,8 @@ Number of threads for c-s command
**default:** N/A
+**type:** int
+
## **num_threads_step** / SCT_NUM_THREADS_STEP
@@ -2568,6 +3306,8 @@ Number of threads which should be added on per step
**default:** N/A
+**type:** int
+
## **stress_step_duration** / SCT_STRESS_STEP_DURATION
@@ -2575,6 +3315,8 @@ Duration of time for stress round
**default:** 15m
+**type:** str (appendable)
+
## **max_deviation** / SCT_MAX_DEVIATION
@@ -2582,6 +3324,8 @@ Max relative difference between best and current throughput,
if current throu
**default:** N/A
+**type:** float
+
## **n_stress_process** / SCT_N_STRESS_PROCESS
@@ -2589,6 +3333,8 @@ Number of stress processes per loader
**default:** N/A
+**type:** int
+
## **stress_process_step** / SCT_STRESS_PROCESS_STEP
@@ -2596,6 +3342,8 @@ add/remove num of process on each round
**default:** N/A
+**type:** int
+
## **use_hdr_cs_histogram** / SCT_USE_HDR_CS_HISTOGRAM
@@ -2603,6 +3351,8 @@ Enable hdr histogram logging for cs
**default:** N/A
+**type:** boolean
+
## **stop_on_hw_perf_failure** / SCT_STOP_ON_HW_PERF_FAILURE
@@ -2610,6 +3360,8 @@ Stop sct performance test if hardware performance test failed
Hardware pe
**default:** N/A
+**type:** boolean
+
## **custom_es_index** / SCT_CUSTOM_ES_INDEX
@@ -2617,6 +3369,8 @@ Use custom ES index for storing test results
**default:** N/A
+**type:** str (appendable)
+
## **simulated_regions** / SCT_SIMULATED_REGIONS
@@ -2624,6 +3378,8 @@ Defines how many regions must be simulated on the Scylla config side. If set the
**default:** N/A
+**type:** int
+
## **simulated_racks** / SCT_SIMULATED_RACKS
@@ -2631,6 +3387,8 @@ Forces GossipingPropertyFileSnitch (regardless `endpoint_snitch`) to simulate ra
**default:** N/A
+**type:** int
+
## **use_dns_names** / SCT_USE_DNS_NAMES
@@ -2638,6 +3396,8 @@ Use dns names instead of ip addresses for nodes in cluster
**default:** N/A
+**type:** boolean
+
## **validate_large_collections** / SCT_VALIDATE_LARGE_COLLECTIONS
@@ -2645,6 +3405,8 @@ Enable validation for large cells in system table and logs
**default:** N/A
+**type:** boolean
+
## **run_commit_log_check_thread** / SCT_RUN_COMMIT_LOG_CHECK_THREAD
@@ -2652,6 +3414,8 @@ Run commit log check thread if commitlog_use_hard_size_limit is True
**default:** True
+**type:** boolean
+
## **teardown_validators** / SCT_TEARDOWN_VALIDATORS
@@ -2659,6 +3423,8 @@ Configuration for additional validations executed after the test
**default:** {'scrub': {'enabled': False, 'timeout': 1200, 'keyspace': '', 'table': ''}, 'test_error_events': {'enabled': False, 'failing_events': [{'event_class': 'DatabaseLogEvent', 'event_type': 'RUNTIME_ERROR', 'regex': '.*runtime_error.*'}, {'event_class': 'CoreDumpEvent'}]}}
+**type:** dict_or_str
+
## **use_capacity_reservation** / SCT_USE_CAPACITY_RESERVATION
@@ -2666,6 +3432,8 @@ reserves instances capacity for whole duration of the test run (AWS only).
Fa
**default:** N/A
+**type:** boolean
+
## **bisect_start_date** / SCT_BISECT_START_DATE
@@ -2673,6 +3441,8 @@ Scylla build date from which bisecting should start.
Setting this date enable
**default:** N/A
+**type:** str (appendable)
+
## **bisect_end_date** / SCT_BISECT_END_DATE
@@ -2680,6 +3450,8 @@ Scylla build date until which bisecting should run. Format: YYYY-MM-DD
**default:** N/A
+**type:** str (appendable)
+
## **kafka_backend** / SCT_KAFKA_BACKEND
@@ -2687,6 +3459,8 @@ Enable validation for large cells in system table and logs
**default:** N/A
+**type:** str (appendable)
+
## **kafka_connectors** / SCT_KAFKA_CONNECTORS
@@ -2694,6 +3468,8 @@ configuration for setup up kafka connectors
**default:** N/A
+**type:** str_or_list_or_eval (appendable)
+
## **run_scylla_doctor** / SCT_RUN_SCYLLA_DOCTOR
@@ -2701,6 +3477,8 @@ Run scylla-doctor in artifact tests
**default:** N/A
+**type:** boolean
+
## **skip_test_stages** / SCT_SKIP_TEST_STAGES
@@ -2708,6 +3486,8 @@ Skip selected stages of a test scenario
**default:** N/A
+**type:** dict_or_str
+
## **use_zero_nodes** / SCT_USE_ZERO_NODES
@@ -2715,6 +3495,8 @@ If True, enable support in sct of zero nodes(configuration, nemesis)
**default:** N/A
+**type:** boolean
+
## **n_db_zero_token_nodes** / SCT_N_DB_ZERO_TOKEN_NODES
@@ -2722,6 +3504,8 @@ Number of zero token nodes in cluster. Value should be set as "0 1 1"
for mul
**default:** N/A
+**type:** int_or_space_separated_ints
+
## **zero_token_instance_type_db** / SCT_ZERO_TOKEN_INSTANCE_TYPE_DB
@@ -2729,6 +3513,8 @@ Instance type for zero token node
**default:** i4i.large
+**type:** str (appendable)
+
## **sct_aws_account_id** / SCT_AWS_ACCOUNT_ID
@@ -2736,9 +3522,13 @@ AWS account id on behalf of which the test is run
**default:** N/A
+**type:** str (appendable)
+
## **latency_decorator_error_thresholds** / SCT_LATENCY_DECORATOR_ERROR_THRESHOLDS
Error thresholds for latency decorator. Defined by dict: {: {:{: {: }}}
**default:** {'write': {'default': {'P90 write': {'fixed_limit': 5}, 'P99 write': {'fixed_limit': 10}}}, 'read': {'default': {'P90 read': {'fixed_limit': 5}, 'P99 read': {'fixed_limit': 10}}}, 'mixed': {'default': {'P90 write': {'fixed_limit': 5}, 'P90 read': {'fixed_limit': 5}, 'P99 write': {'fixed_limit': 10}, 'P99 read': {'fixed_limit': 10}}}}
+
+**type:** dict_or_str
diff --git a/sdcm/sct_config.py b/sdcm/sct_config.py
index e4e109475b..4ed58fd62f 100644
--- a/sdcm/sct_config.py
+++ b/sdcm/sct_config.py
@@ -24,6 +24,7 @@
import pathlib
import tempfile
import yaml
+import copy
from copy import deepcopy
from typing import List, Union, Set
@@ -182,6 +183,40 @@ def boolean(value):
raise ValueError("{} isn't a boolean".format(type(value)))
+def is_config_option_appendable(option_name: str) -> bool:
+ for option in SCTConfiguration.config_options:
+ if option['name'] == option_name:
+ break
+ else:
+ raise ValueError(f"Option {option_name} not found in SCTConfiguration.config_options")
+
+ return option.get('appendable', option.get('type') in (str, str_or_list_or_eval, str_or_list))
+
+
+def merge_dicts_append_strings(d1, d2):
+ """
+ merge two dictionaries, while having option
+ to append string if the value starts with '++'
+ and append list if first item is '++'
+ """
+
+ for key, value in copy.deepcopy(d2).items():
+ if isinstance(value, str) and value.startswith('++'):
+ assert is_config_option_appendable(key), f"Option {key} is not appendable"
+ if key not in d1:
+ d1[key] = ''
+ d1[key] += value[2:]
+ del d2[key]
+ if isinstance(value, list) and value and isinstance(value[0], str) and value[0].startswith('++'):
+ assert is_config_option_appendable(key), f"Option {key} is not appendable"
+ if key not in d1:
+ d1[key] = []
+ d1[key].extend(value[1:])
+ del d2[key]
+
+ anyconfig.merge(d1, d2, ac_merge=anyconfig.MS_DICTS)
+
+
class SCTConfiguration(dict):
"""
Class the hold the SCT configuration
@@ -200,13 +235,14 @@ class SCTConfiguration(dict):
config_options = [
dict(name="config_files", env="SCT_CONFIG_FILES", type=str_or_list_or_eval,
- help="a list of config files that would be used"),
+ help="a list of config files that would be used", appendable=False),
dict(name="cluster_backend", env="SCT_CLUSTER_BACKEND", type=str,
- help="backend that will be used, aws/gce/docker"),
+ help="backend that will be used, aws/gce/docker", appendable=False),
dict(name="test_method", env="SCT_TEST_METHOD", type=str,
- help="class.method used to run the test. Filled automatically with run-test sct command."),
+ help="class.method used to run the test. Filled automatically with run-test sct command.",
+ appendable=False),
dict(name="test_duration", env="SCT_TEST_DURATION", type=int,
help="""
@@ -295,38 +331,46 @@ class SCTConfiguration(dict):
help="Install Scylla without required root priviledge"),
dict(name="install_mode", env="SCT_INSTALL_MODE", type=str,
- help="Scylla install mode, repo/offline/web"),
+ help="Scylla install mode, repo/offline/web",
+ appendable=False),
dict(name="scylla_version", env="SCT_SCYLLA_VERSION",
type=str,
help="""Version of scylla to install, ex. '2.3.1'
Automatically lookup AMIs and repo links for formal versions.
- WARNING: can't be used together with 'scylla_repo' or 'ami_id_db_scylla'"""),
+ WARNING: can't be used together with 'scylla_repo' or 'ami_id_db_scylla'""",
+ appendable=False),
dict(name="user_data_format_version", env="SCT_USER_DATA_FORMAT_VERSION",
type=str,
help="""Format version of the user-data to use for scylla images,
- default to what tagged on the image used"""),
+ default to what tagged on the image used""",
+ appendable=False),
dict(name="oracle_user_data_format_version", env="SCT_ORACLE_USER_DATA_FORMAT_VERSION",
type=str,
help="""Format version of the user-data to use for scylla images,
- default to what tagged on the image used"""),
+ default to what tagged on the image used""",
+ appendable=False),
dict(name="oracle_scylla_version", env="SCT_ORACLE_SCYLLA_VERSION",
type=str,
help="""Version of scylla to use as oracle cluster with gemini tests, ex. '3.0.11'
Automatically lookup AMIs for formal versions.
- WARNING: can't be used together with 'ami_id_db_oracle'"""),
+ WARNING: can't be used together with 'ami_id_db_oracle'""",
+ appendable=False),
dict(name="scylla_linux_distro", env="SCT_SCYLLA_LINUX_DISTRO", type=str,
- help="""The distro name and family name to use. Example: 'ubuntu-jammy' or 'debian-bookworm'."""),
+ help="""The distro name and family name to use. Example: 'ubuntu-jammy' or 'debian-bookworm'.""",
+ appendable=False),
dict(name="scylla_linux_distro_loader", env="SCT_SCYLLA_LINUX_DISTRO_LOADER", type=str,
- help="""The distro name and family name to use. Example: 'ubuntu-jammy' or 'debian-bookworm'."""),
+ help="""The distro name and family name to use. Example: 'ubuntu-jammy' or 'debian-bookworm'.""",
+ appendable=False),
dict(name="assert_linux_distro_features", env="SCT_ASSERT_LINUX_DISTRO_FEATURES", type=str_or_list_or_eval,
- help="""List of distro features relevant to SCT test. Example: 'fips'."""),
+ help="""List of distro features relevant to SCT test. Example: 'fips'.""",
+ appendable=True),
dict(name="scylla_repo_m", env="SCT_SCYLLA_REPO_M", type=str,
help="Url to the repo of scylla version to install scylla from for managment tests"),
@@ -344,18 +388,22 @@ class SCTConfiguration(dict):
dict(name="manager_version", env="SCT_MANAGER_VERSION",
type=str,
- help="Branch of scylla manager server and agent to install. Options in defaults/manager_versions.yaml"),
+ help="Branch of scylla manager server and agent to install. Options in defaults/manager_versions.yaml",
+ appendable=False),
dict(name="target_manager_version", env="SCT_TARGET_MANAGER_VERSION",
type=str,
- help="Branch of scylla manager server and agent to upgrade to. Options in defaults/manager_versions.yaml"),
+ help="Branch of scylla manager server and agent to upgrade to. Options in defaults/manager_versions.yaml",
+ appendable=False),
dict(name="manager_scylla_backend_version", env="SCT_MANAGER_SCYLLA_BACKEND_VERSION",
type=str,
- help="Branch of scylla db enterprise to install. Options in defaults/manager_versions.yaml"),
+ help="Branch of scylla db enterprise to install. Options in defaults/manager_versions.yaml",
+ appendable=False),
dict(name="scylla_mgmt_agent_version", env="SCT_SCYLLA_MGMT_AGENT_VERSION", type=str,
- help=""),
+ help="",
+ appendable=False),
dict(name="scylla_mgmt_pkg", env="SCT_SCYLLA_MGMT_PKG",
type=str,
@@ -508,7 +556,7 @@ class SCTConfiguration(dict):
dict(name="email_subject_postfix", env="SCT_EMAIL_SUBJECT_POSTFIX", type=str,
help="""Email subject postfix"""),
- dict(name="enable_test_profiling", env="SCT_ENABLE_TEST_PROFILING", type=bool,
+ dict(name="enable_test_profiling", env="SCT_ENABLE_TEST_PROFILING", type=boolean,
help="""Turn on sct profiling"""),
dict(name="ssh_transport", env="SSH_TRANSPORT", type=str,
help="""Set type of ssh library to use. Could be 'fabric' (default) or 'libssh2'"""),
@@ -572,7 +620,7 @@ class SCTConfiguration(dict):
dict(name="alternator_secret_access_key", env="SCT_ALTERNATOR_SECRET_ACCESS_KEY", type=str,
help="the aws_secret_access_key that would be used for alternator"),
- dict(name="region_aware_loader", env="SCT_REGION_AWARE_LOADER", type=bool,
+ dict(name="region_aware_loader", env="SCT_REGION_AWARE_LOADER", type=boolean,
help="When in multi region mode, run stress on loader that is located in the same region as db node"),
dict(name="append_scylla_args", env="SCT_APPEND_SCYLLA_ARGS", type=str,
@@ -682,7 +730,7 @@ class SCTConfiguration(dict):
help="instance type of the sct-runner node"),
dict(name="region_name", env="SCT_REGION_NAME", type=str_or_list_or_eval,
- help="AWS regions to use"),
+ help="AWS regions to use", appendable=False),
dict(name="security_group_ids", env="SCT_SECURITY_GROUP_IDS", type=str_or_list,
help="AWS security groups ids to use"),
@@ -758,7 +806,7 @@ class SCTConfiguration(dict):
dict(name="use_prepared_loaders", env="SCT_USE_PREPARED_LOADERS", type=boolean,
help="If True, we use prepared VMs for loader (instead of using docker images)"),
- dict(name="scylla_d_overrides_files", env="SCT_scylla_d_overrides_files", type=str_or_list_or_eval,
+ dict(name="scylla_d_overrides_files", env="SCT_SCYLLA_D_OVERRIDES_FILES", type=str_or_list_or_eval,
help="list of files that should upload to /etc/scylla.d/ directory to override scylla config files"),
# GCE config options
@@ -767,7 +815,8 @@ class SCTConfiguration(dict):
dict(name="gce_datacenter", env="SCT_GCE_DATACENTER", type=str_or_list_or_eval,
help="Supported: us-east1 - means that the zone will be selected automatically or "
- "you can mention the zone explicitly, for example: us-east1-b"),
+ "you can mention the zone explicitly, for example: us-east1-b",
+ appendable=False),
dict(name="gce_network", env="SCT_GCE_NETWORK", type=str,
help=""),
@@ -828,7 +877,8 @@ class SCTConfiguration(dict):
# azure options
dict(name="azure_region_name", env="SCT_AZURE_REGION_NAME", type=str_or_list_or_eval,
- help="Supported: eastus "),
+ help="Supported: eastus ",
+ appendable=False),
dict(name="azure_instance_type_loader", env="SCT_AZURE_INSTANCE_TYPE_LOADER", type=str,
help=""),
@@ -1466,7 +1516,7 @@ class SCTConfiguration(dict):
type=boolean,
help="""retrieving data from multiple streams in one poll"""),
- dict(name="use_legacy_cluster_init", env="SCT_USE_LEGACY_CLUSTER_INIT", type=bool,
+ dict(name="use_legacy_cluster_init", env="SCT_USE_LEGACY_CLUSTER_INIT", type=boolean,
help="""Use legacy cluster initialization with autobootsrap disabled and parallel node setup"""),
dict(name="availability_zone", env="SCT_AVAILABILITY_ZONE",
type=str,
@@ -1670,7 +1720,7 @@ class SCTConfiguration(dict):
dict(name="skip_test_stages", env="SCT_SKIP_TEST_STAGES", type=dict_or_str,
help="""Skip selected stages of a test scenario"""),
- dict(name="use_zero_nodes", env="SCT_USE_ZERO_NODES", type=bool,
+ dict(name="use_zero_nodes", env="SCT_USE_ZERO_NODES", type=boolean,
help="If True, enable support in sct of zero nodes(configuration, nemesis)"),
dict(name="n_db_zero_token_nodes", env="SCT_N_DB_ZERO_TOKEN_NODES", type=int_or_space_separated_ints,
@@ -1821,7 +1871,7 @@ def __init__(self): # noqa: PLR0912, PLR0914, PLR0915
# 1) load the default backend config files
files = anyconfig.load(list(backend_config_files))
- anyconfig.merge(self, files)
+ merge_dicts_append_strings(self, files)
# 2) load the config files
try:
@@ -1829,7 +1879,7 @@ def __init__(self): # noqa: PLR0912, PLR0914, PLR0915
if not os.path.exists(conf_file):
raise FileNotFoundError(f"Couldn't find config file: {conf_file}")
files = anyconfig.load(list(config_files))
- anyconfig.merge(self, files)
+ merge_dicts_append_strings(self, files)
except ValueError:
self.log.warning("Failed to load configuration files: %s", config_files)
@@ -1861,7 +1911,7 @@ def __init__(self): # noqa: PLR0912, PLR0914, PLR0915
raise ValueError(f"{region} isn't supported, use: {self.aws_supported_regions}")
# 3) overwrite with environment variables
- anyconfig.merge(self, env)
+ merge_dicts_append_strings(self, env)
# 4) update events max severities
add_severity_limit_rules(self.get("max_events_severities"))
@@ -2745,6 +2795,12 @@ def dump_help_config_markdown(self):
header = """
# scylla-cluster-tests configuration options
+ #### Appending with environment variables or with config files
+ * **strings:** can be appended with adding `++` at the beginning of the string:
+ `export SCT_APPEND_SCYLLA_ARGS="++ --overprovisioned 1"`
+ * **list:** can be appended by adding `++` as the first item of the list
+ `export SCT_SCYLLA_D_OVERRIDES_FILES='["++", "extra_file/scylla.d/io.conf"]'`
+
"""
def strip_help_text(text):
@@ -2761,11 +2817,10 @@ def strip_help_text(text):
help_text = '
'.join(strip_help_text(opt['help']).splitlines())
else:
help_text = ''
-
+ appendable = ' (appendable)' if is_config_option_appendable(opt.get('name')) else ''
default = self.get_default_value(opt['name'])
default_text = default if default else 'N/A'
- ret += """## **{name}** / {env}\n\n{help_text}\n\n**default:** {default_text}\n\n\n""".format(
- help_text=help_text, default_text=default_text, **opt)
+ ret += f"""## **{opt['name']}** / {opt['env']}\n\n{help_text}\n\n**default:** {default_text}\n\n**type:** {opt.get('type').__name__}{appendable}\n\n\n"""
return ret
diff --git a/unit_tests/test_config.py b/unit_tests/test_config.py
index 7a0ca09bef..394505ea31 100644
--- a/unit_tests/test_config.py
+++ b/unit_tests/test_config.py
@@ -55,6 +55,9 @@ def tearDown(self):
@classmethod
def setup_default_env(cls):
+ os.environ['SCT_CLUSTER_BACKEND'] = 'docker'
+ os.environ['SCT_USE_MGMT'] = 'false'
+ os.environ['SCT_SCYLLA_VERSION'] = get_latest_scylla_release(product='scylla')
os.environ['SCT_CONFIG_FILES'] = 'internal_test_data/minimal_test_case.yaml'
@classmethod
@@ -384,6 +387,7 @@ def test_15_new_scylla_repo(self):
'-525a0255f73d454f8f97f32b8bdd71c8dec35d3d-a6b2b2355c666b1893f702a587287da978aeec22/71/scylla' \
'.repo'
+ os.environ.pop('SCT_SCYLLA_VERSION', None)
os.environ['SCT_CLUSTER_BACKEND'] = 'gce'
os.environ['SCT_SCYLLA_REPO'] = centos_repo
os.environ['SCT_NEW_SCYLLA_REPO'] = centos_repo
@@ -537,7 +541,7 @@ def test_17_2_raise_error_if_scylla_bench_command_dont_have_mode(self):
@pytest.mark.integration
def test_18_error_if_no_version_repo_ami_selected(self):
os.environ.pop('SCT_AMI_ID_DB_SCYLLA', None)
-
+ os.environ.pop('SCT_SCYLLA_VERSION', None)
for backend in sct_config.SCTConfiguration.available_backends:
if 'k8s' in backend:
continue
@@ -965,6 +969,44 @@ def test_34_nemesis_grow_shrink_instance_type_azure(self):
conf = sct_config.SCTConfiguration()
conf.verify_configuration()
+ @staticmethod
+ def test_35_append_str_options():
+ os.environ['SCT_APPEND_SCYLLA_ARGS'] = '++ --overprovisioned 5'
+ conf = sct_config.SCTConfiguration()
+ conf.verify_configuration()
+ assert conf.get('append_scylla_args') == ('--blocked-reactor-notify-ms 25 --abort-on-lsa-bad-alloc 1 '
+ '--abort-on-seastar-bad-alloc --abort-on-internal-error 1 --abort-on-ebadf 1 '
+ '--enable-sstable-key-validation 1 --overprovisioned 5')
+
+ @staticmethod
+ def test_35_append_list_options():
+ os.environ[
+ 'SCT_SCYLLA_D_OVERRIDES_FILES'] = '["++", "extra_file/scylla.d/io.conf"]'
+
+ conf = sct_config.SCTConfiguration()
+ conf.verify_configuration()
+ assert conf.get('scylla_d_overrides_files') == ["extra_file/scylla.d/io.conf"]
+
+ @staticmethod
+ def test_35_append_unsupported_list_options():
+ os.environ['SCT_AZURE_REGION_NAME'] = '["++", "euwest"]'
+
+ with pytest.raises(AssertionError) as context:
+ conf = sct_config.SCTConfiguration()
+ conf.verify_configuration()
+
+ assert 'Option azure_region_name is not appendable' == str(context.value)
+
+ @staticmethod
+ def test_35_append_unsupported_str_options():
+ os.environ['SCT_MANAGER_VERSION'] = '++ new version'
+
+ with pytest.raises(AssertionError) as context:
+ conf = sct_config.SCTConfiguration()
+ conf.verify_configuration()
+
+ assert 'Option manager_version is not appendable' == str(context.value)
+
if __name__ == "__main__":
unittest.main()
diff --git a/unit_tests/test_teardown_validator.py b/unit_tests/test_teardown_validator.py
index d073a421d2..79deb0d090 100644
--- a/unit_tests/test_teardown_validator.py
+++ b/unit_tests/test_teardown_validator.py
@@ -57,7 +57,7 @@ def setup_mocks(self, get_events_main_device_mock, event_data, critical_events=N
@patch('sdcm.teardown_validators.events.get_events_main_device')
def test_validate_no_failing_events_no_critical_events(self, get_events_main_device_mock):
- self.setup_validator(FAILING_EVENTS.values())
+ self.setup_validator(list(FAILING_EVENTS.values()))
event_data = (
'{"severity": "WARNING", "base": "Event1", "type": "Type1", "line": "failing event line"}\n'
'{"severity": "ERROR", "base": "Event4", "type": "Type1", "line": "failing event line"}\n')