[ { "name": "cerberus-enabled", "short_description": "Enable Cerberus", "description": "Enables Cerberus Support", "variable": "CERBERUS_ENABLED", "type": "enum", "default": "False", "allowed_values": "True,False", "separator": ",", "required": "false" }, { "name": "cerberus-url", "short_description": "Cerberus URL", "description": "Cerberus http url", "variable": "CERBERUS_URL", "type": "string", "default": "http://0.0.0.0:8080", "validator": "^(http|https):\/\/.*", "required": "false" }, { "name": "distribution", "short_description": "Orchestrator distribution", "description": "Selects the orchestrator distribution", "variable": "DISTRIBUTION", "type": "enum", "default": "openshift", "allowed_values": "openshift,kubernetes", "separator": ",", "required": "false" }, { "name": "ssh-public-key", "short_description": "Krkn ssh public key path", "description": "Sets the path where krkn will search for ssh public key (in container)", "variable": "KRKN_SSH_PUBLIC", "type": "string", "default": "", "required": "false" }, { "name": "ssh-private-key", "short_description": "Krkn ssh private key path", "description": "Sets the path where krkn will search for ssh private key (in container)", "variable": "KRKN_SSH_PRIVATE", "type": "string", "default": "", "required": "false" }, { "name": "krkn-kubeconfig", "short_description": "Krkn kubeconfig path", "description": "Sets the path where krkn will search for kubeconfig (in container)", "variable": "KRKN_KUBE_CONFIG", "type": "string", "default": "/home/krkn/.kube/config", "required": "false" }, { "name": "wait-duration", "short_description": "Post chaos wait duration", "description": "waits for a certain amount of time after the scenario", "variable": "WAIT_DURATION", "type": "number", "default": "1" }, { "name": "iterations", "short_description": "Chaos scenario iterations", "description": "number of times the same chaos scenario will be executed", "variable": "ITERATIONS", "type": "number", "default": "1" }, { "name": "daemon-mode", "short_description": "Sets krkn daemon mode", "description": "if set the scenario will execute forever", "variable": "DAEMON_MODE", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "prometheus-url", "short_description": "Prometheus url", "description": "Prometheus url for when running on kuberenetes", "variable": "PROMETHEUS_URL", "type": "string", "default": "", "required": "false" }, { "name": "prometheus-token", "short_description": "Prometheus bearer token", "description": "Prometheus bearer token for prometheus url authentication", "variable": "PROMETHEUS_TOKEN", "type": "string", "default": "", "required": "false" }, { "name": "uuid", "short_description": "Sets krkn run uuid", "description": "sets krkn run uuid instead of generating it", "variable": "UUID", "type": "string", "default": "", "required": "false" }, { "name": "capture-metrics", "short_description": "Enables metrics capture", "description": "Enables metrics capture", "variable": "CAPTURE_METRICS", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "enable-alerts", "short_description": "Enables cluster alerts check", "description": "Enables cluster alerts check", "variable": "ENABLE_ALERTS", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "alerts-path", "short_description": "Cluster alerts path file (in container)", "description": "Allows to specify a different alert file path", "variable": "ALERTS_PATH", "type": "string", "default": "config/alerts.yaml", "required": "false" }, { "name": "metrics-path", "short_description": "Cluster metrics path file (in container)", "description": "Allows to specify a different metrics file path", "variable": "METRICS_PATH", "type": "string", "default": "config/metrics-aggregated.yaml", "required": "false" }, { "name": "enable-es", "short_description": "Enables elastic search data collection", "description": "Enables elastic search data collection", "variable": "ENABLE_ES", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "es-run-tag", "short_description": "Elasticsearch run tag", "description": "Elasticsearch run tag to compare similar runs", "variable": "ES_RUN_TAG", "type": "string", "default": "", "required": "false" }, { "name": "es-server", "short_description": "Elasticsearch instance URL", "description": "Elasticsearch instance URL", "variable": "ES_SERVER", "type": "string", "default": "http://0.0.0.0", "required": "false" }, { "name": "es-port", "short_description": "Elasticsearch instance port", "description": "Elasticsearch instance port", "variable": "ES_PORT", "type": "number", "default": "443", "required": "false" }, { "name": "es-username", "short_description": "Elasticsearch instance username", "description": "Elasticsearch instance username", "variable": "ES_USERNAME", "type": "string", "default": "elastic", "required": "false" }, { "name": "es-password", "short_description": "Elasticsearch instance password", "description": "Elasticsearch instance password", "variable": "ES_PASSWORD", "type": "string", "default": "", "required": "false" }, { "name": "es-verify-certs", "short_description": "Enables elasticsearch TLS certificate verification", "description": "Enables elasticsearch TLS certificate verification", "variable": "ES_VERIFY_CERTS", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "es-metrics-index", "short_description": "Elasticsearch metrics index", "description": "Index name for metrics in Elasticsearch", "variable": "ES_METRICS_INDEX", "type": "string", "default": "krkn-metrics", "required": "false" }, { "name": "es-alerts-index", "short_description": "Elasticsearch alerts index", "description": "Index name for alerts in Elasticsearch", "variable": "ES_ALERTS_INDEX", "type": "string", "default": "krkn-alerts", "required": "false" }, { "name": "es-telemetry-index", "short_description": "Elasticsearch telemetry index", "description": "Index name for telemetry in Elasticsearch", "variable": "ES_TELEMETRY_INDEX", "type": "string", "default": "krkn-telemetry", "required": "false" }, { "name": "check-critical-alerts", "short_description": "Check critical alerts", "description": "Enables checking for critical alerts", "variable": "CHECK_CRITICAL_ALERTS", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "telemetry-enabled", "short_description": "Enable telemetry", "description": "Enables telemetry support", "variable": "TELEMETRY_ENABLED", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "telemetry-api-url", "short_description": "Telemetry API URL", "description": "API endpoint for telemetry data", "variable": "TELEMETRY_API_URL", "type": "string", "default": "https://ulnmf9xv7j.execute-api.us-west-2.amazonaws.com/production", "validator": "^(http|https):\/\/.*", "required": "false" }, { "name": "telemetry-username", "short_description": "Telemetry username", "description": "Username for telemetry authentication", "variable": "TELEMETRY_USERNAME", "type": "string", "default": "redhat-chaos", "required": "false" }, { "name": "telemetry-password", "short_description": "Telemetry password", "description": "Password for telemetry authentication", "variable": "TELEMETRY_PASSWORD", "type": "string", "default": "", "required": "false" }, { "name": "telemetry-prometheus-backup", "short_description": "Prometheus backup for telemetry", "description": "Enables Prometheus backup for telemetry", "variable": "TELEMETRY_PROMETHEUS_BACKUP", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "True", "required": "false" }, { "name": "telemetry-full-prometheus-backup", "short_description": "Full Prometheus backup", "description": "Enables full Prometheus backup for telemetry", "variable": "TELEMETRY_FULL_PROMETHEUS_BACKUP", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "telemetry-backup-threads", "short_description": "Telemetry backup threads", "description": "Number of threads for telemetry backup", "variable": "TELEMETRY_BACKUP_THREADS", "type": "number", "default": "5", "required": "false" }, { "name": "telemetry-archive-path", "short_description": "Telemetry archive path", "description": "Path to save telemetry archive", "variable": "TELEMETRY_ARCHIVE_PATH", "type": "string", "default": "/tmp", "required": "false" }, { "name": "telemetry-max-retries", "short_description": "Telemetry max retries", "description": "Maximum retries for telemetry operations", "variable": "TELEMETRY_MAX_RETRIES", "type": "number", "default": "0", "required": "false" }, { "name": "telemetry-run-tag", "short_description": "Telemetry run tag", "description": "Tag for telemetry run", "variable": "TELEMETRY_RUN_TAG", "type": "string", "default": "chaos", "required": "false" }, { "name": "telemetry-group", "short_description": "Telemetry group", "description": "Group name for telemetry data", "variable": "TELEMETRY_GROUP", "type": "string", "default": "default", "required": "false" }, { "name": "telemetry-archive-size", "short_description": "Telemetry archive size", "description": "Maximum size for telemetry archives", "variable": "TELEMETRY_ARCHIVE_SIZE", "type": "number", "default": "1000", "required": "false" }, { "name": "telemetry-logs-backup", "short_description": "Telemetry logs backup", "description": "Enables logs backup for telemetry", "variable": "TELEMETRY_LOGS_BACKUP", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "telemetry-filter-pattern", "short_description": "Telemetry filter pattern", "description": "Filter pattern for telemetry logs", "variable": "TELEMETRY_FILTER_PATTERN", "type": "string", "default": "[\"(\\\\w{3}\\\\s\\\\d{1,2}\\\\s\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d+).+\",\"kinit (\\\\d+/\\\\d+/\\\\d+\\\\s\\\\d{2}:\\\\d{2}:\\\\d{2})\\\\s+\",\"(\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d+Z).+\"]", "required": "false" }, { "name": "telemetry-cli-path", "short_description": "Telemetry CLI path (oc)", "description": "Path to telemetry CLI tool (oc)", "variable": "TELEMETRY_CLI_PATH", "type": "string", "default": "", "required": "false" }, { "name": "telemetry-events-backup", "short_description": "Telemetry events backup", "description": "Enables events backup for telemetry", "variable": "TELEMETRY_EVENTS_BACKUP", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "True", "required": "false" }, { "name": "health-check-interval", "short_description": "Heath check interval", "description": "How often to check the health check urls", "variable": "HEALTH_CHECK_INTERVAL", "type": "number", "default": "2", "required": "false" }, { "name": "health-check-url", "short_description": "Health check url", "description": "Url to check the health of", "variable": "HEALTH_CHECK_URL", "type": "string", "default": "", "required": "false" }, { "name": "health-check-auth", "short_description": "Health check authentication tuple", "description": "Authentication tuple to authenticate into health check URL", "variable": "HEALTH_CHECK_AUTH", "type": "string", "default": "", "required": "false" }, { "name": "health-check-bearer-token", "short_description": "Health check bearer token", "description": "Bearer token to authenticate into health check URL", "variable": "HEALTH_CHECK_BEARER_TOKEN", "type": "string", "default": "", "required": "false" }, { "name": "health-check-exit", "short_description": "Health check exit on failure", "description": "Exit on failure when health check URL is not able to connect", "variable": "HEALTH_CHECK_EXIT_ON_FAILURE", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "health-check-verify", "short_description": "SSL Verification of health check url", "description": "SSL Verification to authenticate into health check URL", "variable": "HEALTH_CHECK_VERIFY", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "kubevirt-check-interval", "short_description": "Kube Virt check interval", "description": "How often to check the kube virt check Vms ssh status", "variable": "KUBE_VIRT_CHECK_INTERVAL", "type": "number", "default": "2", "required": "false" }, { "name": "kubevirt-namespace", "short_description": "KubeVirt namespace to check", "description": "KubeVirt namespace to check the health of", "variable": "KUBE_VIRT_NAMESPACE", "type": "string", "default": "", "required": "false" }, { "name": "kubevirt-name", "short_description": "KubeVirt regex names to watch", "description": "KubeVirt regex names to check VMs", "variable": "KUBE_VIRT_NAME", "type": "string", "default": "", "required": "false" }, { "name": "kubevirt-only-failures", "short_description": "KubeVirt checks only report if failure occurs", "description": "KubeVirt checks only report if failure occurs", "variable": "KUBE_VIRT_FAILURES", "type": "enum", "allowed_values": "True,False,true,false", "separator": ",", "default": "False", "required": "false" }, { "name": "kubevirt-disconnected", "short_description": "KubeVirt checks in disconnected mode", "description": "KubeVirt checks in disconnected mode, bypassing the clusters Api", "variable": "KUBE_VIRT_DISCONNECTED", "type": "enum", "allowed_values": "True,False,true,false", "separator": ",", "default": "False", "required": "false" }, { "name": "kubevirt-ssh-node", "short_description": "KubeVirt node to ssh from", "description": "KubeVirt node to ssh from, should be available whole chaos run", "variable": "KUBE_VIRT_SSH_NODE", "type": "string", "default": "", "required": "false" }, { "name": "kubevirt-exit-on-failure", "short_description": "KubeVirt fail if failed vms at end of run", "description": "KubeVirt fails run if vms still have false status", "variable": "KUBE_VIRT_EXIT_ON_FAIL", "type": "enum", "allowed_values": "True,False,true,false", "separator": ",", "default": "False", "required": "false" }, { "name": "kubevirt-node-node", "short_description": "KubeVirt node to filter vms on", "description": "Only track VMs in KubeVirt on given node name", "variable": "KUBE_VIRT_NODE_NAME", "type": "string", "default": "", "required": "false" }, { "name": "krkn-debug", "short_description": "Krkn debug mode", "description": "Enables debug mode for Krkn", "variable": "KRKN_DEBUG", "type": "enum", "allowed_values": "True,False", "separator": ",", "default": "False", "required": "false" }, { "name": "resiliency-score", "short_description": "Enable resiliency score calculation", "description": "The system outputs a detailed resiliency score as a single-line JSON object, facilitating easy aggregation across multiple test scenarios.", "variable": "RESILIENCY_SCORE", "type": "boolean", "required": "false" }, { "name": "disable-resiliency-score", "short_description": "Disable resiliency score calculation", "description": "Disable resiliency score calculation", "variable": "DISABLE_RESILIENCY_SCORE", "type": "boolean", "required": "false" }, { "name": "resiliency-file", "short_description": "Resiliency Score metrics file", "description": "Custom Resiliency score file", "variable": "RESILIENCY_FILE", "type": "file", "required": "false", "mount_path": "/home/krkn/resiliency-file.yaml" } ]