benchmark-runner 1.0.874__tar.gz → 1.0.932__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {benchmark_runner-1.0.874/benchmark_runner.egg-info → benchmark_runner-1.0.932}/PKG-INFO +4 -4
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/README.md +1 -1
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/benchmark_operator_workloads_operations.py +8 -6
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/grafana/update_grafana_latest_value_mappings.py +2 -2
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/oc/oc.py +53 -24
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_lso.py +13 -2
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_ocp_resource.py +5 -1
- benchmark_runner-1.0.932/benchmark_runner/common/ocp_resources/lso/template/01_delete_disks_template.sh +12 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/template_operations.py +2 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/hammerdb/hammerdb_data_template.yaml +3 -3
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/hammerdb_vm_template.yaml +6 -2
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/mariadb_template.yaml +32 -9
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/mssql_template.yaml +3 -3
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/postgres_template.yaml +3 -3
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/stressng/internal_data/stressng_pod_template.yaml +1 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/stressng/internal_data/stressng_vm_template.yaml +1 -1
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/uperf/internal_data/uperf_pod_template.yaml +1 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/uperf/internal_data/uperf_vm_template.yaml +1 -1
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/vdbench/internal_data/vdbench_pod_template.yaml +1 -2
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/vdbench/internal_data/vdbench_vm_template.yaml +1 -1
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/vdbench/vdbench_data_template.yaml +2 -2
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/main/environment_variables.py +15 -3
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/main/main.py +3 -3
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/bootstorm_vm.py +3 -1
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/workloads_operations.py +2 -2
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932/benchmark_runner.egg-info}/PKG-INFO +4 -4
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner.egg-info/SOURCES.txt +1 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/setup.py +4 -4
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/LICENSE +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/MANIFEST.in +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/benchmark_operator_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/benchmark_operator_workloads.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/hammerdb_pod.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/hammerdb_vm.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/stressng_pod.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/stressng_vm.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/uperf_pod.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/benchmark_operator/uperf_vm.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/clusterbuster/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/clusterbuster/clusterbuster_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/clusterbuster/clusterbuster_workloads.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/analyze/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/analyze/analyze_data.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/assisted_installer/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/assisted_installer/assisted_installer_latest_version.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/assisted_installer/jetlag/run_jetlag.sh +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/Azure/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/Azure/azure_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/BareMetal/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/BareMetal/bare_metal_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/BareMetal/bare_metal_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/IBM/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/IBM/ibm_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/IBM/ibm_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/shared/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/shared/s3/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/shared/s3/s3_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/clouds/shared/s3/s3_operations_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/elasticsearch/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/elasticsearch/elasticsearch_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/elasticsearch/elasticsearch_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/github/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/github/github_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/google_drive/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/google_drive/google_drive_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/google_drive/google_drive_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/grafana/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/grafana/grafana_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/logger/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/logger/init_logger.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/logger/logger_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/logger/logger_time_stamp.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/oc/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/oc/oc_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/oc/singleton_oc_login.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/cnv/template/01_operator_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/cnv/template/02_hyperconverge_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_cnv.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_custom.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_kata.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_nhc_far.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_ocp_resource_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_ocp_resource_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/create_odf.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/custom/template/01_coredns_patch_template.sh +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/custom/template/02_mssql_patch_template.sh +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/infra/template/01_cluster-monitoring-configmap-template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/kata/template/01_operator_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/kata/template/02_config_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/kata/template/03_ocp48_patch_template.sh +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/lso/template/01_namespace_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/lso/template/02_operator_group_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/lso/template/03_catalogsource_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/lso/template/04_subscription_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/migrate_infra.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/nhc_far/template/01_namespace_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/nhc_far/template/02_operator_group_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/nhc_far/template/03_nhc_subscription_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/nhc_far/template/04_far_subscription_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/nhc_far/template/05_nhc_far_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/01_delete_disks_template.sh +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/02_label_nodes_template.sh +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/03_local_volume_discovery_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/04_local_volume_set_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/05_namespace_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/06_operator_group_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/07_subscription_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ocp_resources/odf/template/08_storage_cluster_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/prometheus/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/prometheus/metrics-default.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/prometheus/metrics-examples.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/prometheus/prometheus_metrics.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/prometheus/prometheus_metrics_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/prometheus/prometheus_snapshot.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/prometheus/prometheus_snapshot_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/remote_ssh/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/remote_ssh/connection_data.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/remote_ssh/remote_ssh.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/remote_ssh/remote_ssh_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ssh/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ssh/ssh.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/ssh/ssh_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/render_yaml_from_template.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/bootstorm/bootstorm_data_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/bootstorm/internal_data/bootstorm_vm_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/common_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/hammerdb_pod_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/namespace_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/scale/redis_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/scale/state_signals_exporter_pod_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/stressng/stressng_data_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/uperf/uperf_data_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/vdbench/internal_data/namespace_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/windows/internal_data/windows_dv_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/windows/internal_data/windows_vm_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/template_operations/templates/windows/windows_data_template.yaml +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/virtctl/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/common/virtctl/virtctl.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/grafana/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/grafana/update_grafana_dashboard.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/grafana/update_versions_main_libsonnet.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_perfci_cluster/analyze_perfci_cluster.ipynb +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_prometheus_logs/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_prometheus_logs/analyze_prometheus_logs.ipynb +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_prometheus_logs/analyze_prometheus_logs.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_hammerdb_logs/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_hammerdb_logs/analyze_hammerdb_logs.ipynb +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_hammerdb_logs/analyze_hammerdb_logs.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_uperf_logs/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_uperf_logs/analyze_uperf_logs.ipynb +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_uperf_logs/analyze_uperf_logs.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_vdbench_logs/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_vdbench_logs/analyze_vdbench_logs.ipynb +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_vdbench_logs/analyze_vdbench_logs.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/analyze_workloads/visualize_workload_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/elasticsearch_operations/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/elasticsearch_operations/elasticsearch_operations.ipynb +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/elasticsearch_operations/elasticsearch_widgets.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/logs_operations/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/logs_operations/logs_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/summary_report/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/summary_report/summary_report_operations.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/jupyterlab/templates/summary_report/summary_report_widgets.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/krkn_hub/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/krkn_hub/krknhub_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/krkn_hub/krknhub_workloads.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/main/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/main/environment_variables_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/main/temporary_environment_variables.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/__init__.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/vdbench_pod.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/vdbench_vm.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/windows_vm.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/workloads.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/workloads_exceptions.py +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner.egg-info/dependency_links.txt +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner.egg-info/not-zip-safe +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner.egg-info/requires.txt +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner.egg-info/top_level.txt +0 -0
- {benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: benchmark-runner
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.932
|
|
4
4
|
Summary: Benchmark Runner Tool
|
|
5
5
|
Home-page: https://github.com/redhat-performance/benchmark-runner
|
|
6
6
|
Author: Red Hat
|
|
@@ -8,11 +8,11 @@ Author-email: ebattat@redhat.com
|
|
|
8
8
|
License: Apache License 2.0
|
|
9
9
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
13
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
14
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
15
13
|
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
16
16
|
Description-Content-Type: text/markdown
|
|
17
17
|
License-File: LICENSE
|
|
18
18
|
Requires-Dist: attrs==21.4.0
|
|
@@ -78,7 +78,7 @@ This framework support the following embedded workloads:
|
|
|
78
78
|
* [hammerdb](https://hammerdb.com/): running hammerdb workload on the following databases: MSSQL, Mariadb, Postgresql in Pod, Kata or VM with [Configuration](benchmark_runner/common/template_operations/templates/hammerdb)
|
|
79
79
|
* [stressng](https://wiki.ubuntu.com/Kernel/Reference/stress-ng): running stressng workload in Pod, Kata or VM [Configuration](benchmark_runner/common/template_operations/templates/stressng)
|
|
80
80
|
* [uperf](http://uperf.org/): running uperf workload in Pod, Kata or VM with [Configuration](benchmark_runner/common/template_operations/templates/uperf)
|
|
81
|
-
* [vdbench](https://wiki.lustre.org/VDBench
|
|
81
|
+
* [vdbench](https://wiki.lustre.org/VDBench): running vdbench workload in Pod, Kata or VM with [Configuration](benchmark_runner/common/template_operations/templates/vdbench)
|
|
82
82
|
* [bootstorm](https://en.wiktionary.org/wiki/boot_storm): calculate VMs boot load time [Configuration](benchmark_runner/common/template_operations/templates/bootstorm)
|
|
83
83
|
|
|
84
84
|
** For hammerdb mssql must run once [permission](https://github.com/redhat-performance/benchmark-runner/blob/main/benchmark_runner/common/ocp_resources/custom/template/02_mssql_patch_template.sh)
|
|
@@ -23,7 +23,7 @@ This framework support the following embedded workloads:
|
|
|
23
23
|
* [hammerdb](https://hammerdb.com/): running hammerdb workload on the following databases: MSSQL, Mariadb, Postgresql in Pod, Kata or VM with [Configuration](benchmark_runner/common/template_operations/templates/hammerdb)
|
|
24
24
|
* [stressng](https://wiki.ubuntu.com/Kernel/Reference/stress-ng): running stressng workload in Pod, Kata or VM [Configuration](benchmark_runner/common/template_operations/templates/stressng)
|
|
25
25
|
* [uperf](http://uperf.org/): running uperf workload in Pod, Kata or VM with [Configuration](benchmark_runner/common/template_operations/templates/uperf)
|
|
26
|
-
* [vdbench](https://wiki.lustre.org/VDBench
|
|
26
|
+
* [vdbench](https://wiki.lustre.org/VDBench): running vdbench workload in Pod, Kata or VM with [Configuration](benchmark_runner/common/template_operations/templates/vdbench)
|
|
27
27
|
* [bootstorm](https://en.wiktionary.org/wiki/boot_storm): calculate VMs boot load time [Configuration](benchmark_runner/common/template_operations/templates/bootstorm)
|
|
28
28
|
|
|
29
29
|
** For hammerdb mssql must run once [permission](https://github.com/redhat-performance/benchmark-runner/blob/main/benchmark_runner/common/ocp_resources/custom/template/02_mssql_patch_template.sh)
|
|
@@ -87,6 +87,7 @@ class BenchmarkOperatorWorkloadsOperations:
|
|
|
87
87
|
self._lso_disk_id = self._environment_variables_dict.get('lso_disk_id', '')
|
|
88
88
|
else:
|
|
89
89
|
self._lso_disk_id = None
|
|
90
|
+
self._versions = self._environment_variables_dict['versions']
|
|
90
91
|
|
|
91
92
|
def get_oc(self, kubeadmin_password: str = ''):
|
|
92
93
|
"""
|
|
@@ -238,20 +239,21 @@ class BenchmarkOperatorWorkloadsOperations:
|
|
|
238
239
|
if run_artifacts_url:
|
|
239
240
|
metadata.update({'run_artifacts_url': run_artifacts_url})
|
|
240
241
|
if database:
|
|
241
|
-
metadata.update({'vm_os_version': 'centos-
|
|
242
|
+
metadata.update({'vm_os_version': self._versions.get('db_vm_os_version', 'centos-stream9')})
|
|
243
|
+
metadata.update({'hammerdb_version': self._versions.get('hammerdb', 4.0)})
|
|
242
244
|
else:
|
|
243
|
-
metadata.update({'vm_os_version': '
|
|
245
|
+
metadata.update({'vm_os_version': self._versions.get('vm_os_version', 'fedora39')})
|
|
244
246
|
if uuid:
|
|
245
247
|
metadata.update({'uuid': uuid})
|
|
246
248
|
if prometheus_result:
|
|
247
249
|
metadata.update(prometheus_result)
|
|
248
250
|
# for hammerdb
|
|
249
251
|
if database == 'mssql':
|
|
250
|
-
metadata.update({'db_version':
|
|
252
|
+
metadata.update({'db_version': self._versions.get('mssql', 2022)})
|
|
251
253
|
elif database == 'postgres':
|
|
252
|
-
metadata.update({'db_version':
|
|
254
|
+
metadata.update({'db_version': self._versions.get('postgres', 13)})
|
|
253
255
|
elif database == 'mariadb':
|
|
254
|
-
metadata.update({'db_version': 10.
|
|
256
|
+
metadata.update({'db_version': self._versions.get('mariadb', 10.5)})
|
|
255
257
|
return metadata
|
|
256
258
|
|
|
257
259
|
@logger_time_stamp
|
|
@@ -462,7 +464,7 @@ class BenchmarkOperatorWorkloadsOperations:
|
|
|
462
464
|
:return:
|
|
463
465
|
"""
|
|
464
466
|
workload_name = self._workload.split('_')
|
|
465
|
-
if workload_name[0] in self._workloads_odf_pvc:
|
|
467
|
+
if workload_name[0] in self._workloads_odf_pvc and '_lso' not in self._workload:
|
|
466
468
|
if not self._oc.is_odf_installed():
|
|
467
469
|
raise ODFNotInstalled(workload=self._workload)
|
|
468
470
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
import json
|
|
3
|
-
from datetime import datetime, timedelta
|
|
3
|
+
from datetime import datetime, timedelta, timezone
|
|
4
4
|
|
|
5
5
|
from benchmark_runner.main.environment_variables import environment_variables
|
|
6
6
|
from benchmark_runner.common.elasticsearch.elasticsearch_operations import ElasticSearchOperations
|
|
@@ -57,7 +57,7 @@ class UpdateGrafanaLatestValueMappings:
|
|
|
57
57
|
:return:
|
|
58
58
|
"""
|
|
59
59
|
new_versions = {}
|
|
60
|
-
current_datetime = datetime.now()
|
|
60
|
+
current_datetime = datetime.now(timezone.utc).replace(tzinfo=None)
|
|
61
61
|
start_datetime = current_datetime - timedelta(days=last_es_fetch_days)
|
|
62
62
|
|
|
63
63
|
ids = self.elasticsearch.get_index_ids_between_dates(index='ci-status', start_datetime=start_datetime,
|
|
@@ -87,6 +87,23 @@ class OC(SSH):
|
|
|
87
87
|
"""
|
|
88
88
|
return self._ocp_server_version(jsonpath='.status.history[1].version')
|
|
89
89
|
|
|
90
|
+
def get_virtctl_version(self):
|
|
91
|
+
"""
|
|
92
|
+
Returns the virtctl client version as a string.
|
|
93
|
+
"""
|
|
94
|
+
return self.run('virtctl version | grep "Client Version" | sed -E \'s/.*GitVersion:"([^"]+)".*/\\1/\'').strip()
|
|
95
|
+
|
|
96
|
+
def is_virtctl_ge(self, min_version="1.6.0"):
|
|
97
|
+
"""
|
|
98
|
+
Returns True if virtctl client version >= min_version.
|
|
99
|
+
Handles pre-release tags like v1.0.0-rc.0.
|
|
100
|
+
[In virtctl v1.6.0, the SSH command syntax changed from `virtctl ssh user@vmname -n namespace` to `virtctl ssh user@vm/vmname/namespace`]
|
|
101
|
+
"""
|
|
102
|
+
version = self.get_virtctl_version().lstrip("v").split("-")[0]
|
|
103
|
+
version_tuple = tuple(map(int, version.split(".")))
|
|
104
|
+
min_version_tuple = tuple(map(int, min_version.split(".")))
|
|
105
|
+
return version_tuple >= min_version_tuple
|
|
106
|
+
|
|
90
107
|
def upgrade_ocp(self, upgrade_ocp_version: str, upgrade_channel: str = 'stable'):
|
|
91
108
|
"""
|
|
92
109
|
This method upgrades OCP version with conditional handling for specific versions.
|
|
@@ -1331,37 +1348,49 @@ class OC(SSH):
|
|
|
1331
1348
|
else:
|
|
1332
1349
|
return self.run(ssh_vm_cmd)
|
|
1333
1350
|
|
|
1334
|
-
def
|
|
1335
|
-
timeout: int = SHORT_TIMEOUT):
|
|
1351
|
+
def _build_virtctl_cmds(self, vm_name: str, namespace: str):
|
|
1336
1352
|
"""
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
:param timeout:
|
|
1340
|
-
:return:
|
|
1353
|
+
Returns a tuple of (virtctl_cmd, check_cmd) for the given VM and namespace,
|
|
1354
|
+
depending on the virtctl version.
|
|
1341
1355
|
"""
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1356
|
+
base = f"virtctl ssh --local-ssh=true --local-ssh-opts='-o BatchMode=yes' " \
|
|
1357
|
+
f"--local-ssh-opts='-o PasswordAuthentication=no' --local-ssh-opts='-o ConnectTimeout=2'"
|
|
1358
|
+
|
|
1359
|
+
if self.is_virtctl_ge(min_version="1.6.0"):
|
|
1360
|
+
virtctl_cmd = f"{base} root@vm/{vm_name}/{namespace}"
|
|
1361
|
+
check_cmd = f"{virtctl_cmd} 2>&1 | egrep 'denied|verification failed' && echo True || echo False"
|
|
1362
|
+
else:
|
|
1363
|
+
virtctl_cmd = f"{base} root@{vm_name} -n {namespace}"
|
|
1364
|
+
check_cmd = f"{virtctl_cmd} 2>&1 | egrep 'denied|verification failed' && echo True || echo False"
|
|
1365
|
+
|
|
1366
|
+
return virtctl_cmd, check_cmd
|
|
1367
|
+
|
|
1368
|
+
def wait_for_vm_access(self, vm_name: str = '',
|
|
1369
|
+
namespace: str = environment_variables.environment_variables_dict['namespace'],
|
|
1370
|
+
timeout: int = SHORT_TIMEOUT):
|
|
1371
|
+
"""
|
|
1372
|
+
Waits until the VM is accessible via virtctl ssh, or raises VMStateTimeout.
|
|
1373
|
+
"""
|
|
1374
|
+
_, check_cmd = self._build_virtctl_cmds(vm_name, namespace)
|
|
1375
|
+
elapsed = 0
|
|
1376
|
+
|
|
1377
|
+
while timeout <= 0 or elapsed <= timeout:
|
|
1378
|
+
if 'True' in self.run(check_cmd):
|
|
1379
|
+
return True
|
|
1348
1380
|
time.sleep(OC.SLEEP_TIME)
|
|
1349
|
-
|
|
1381
|
+
elapsed += OC.SLEEP_TIME
|
|
1382
|
+
|
|
1350
1383
|
raise VMStateTimeout(vm_name=vm_name, state='virtctl')
|
|
1351
1384
|
|
|
1352
|
-
def get_vm_access(self, vm_name: str = '',
|
|
1385
|
+
def get_vm_access(self, vm_name: str = '',
|
|
1386
|
+
namespace: str = environment_variables.environment_variables_dict['namespace']):
|
|
1353
1387
|
"""
|
|
1354
|
-
|
|
1355
|
-
:param vm_name:
|
|
1356
|
-
:param namespace:
|
|
1357
|
-
:return: virtctl_status 'True' if successful, or an error message if it fails.
|
|
1388
|
+
Returns True if the VM is accessible via virtctl SSH, or the SSH error output if not.
|
|
1358
1389
|
"""
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
else:
|
|
1364
|
-
return self.run(virtctl_vm_cmd)
|
|
1390
|
+
virtctl_cmd, check_cmd = self._build_virtctl_cmds(vm_name, namespace)
|
|
1391
|
+
if 'True' in self.run(check_cmd):
|
|
1392
|
+
return True
|
|
1393
|
+
return self.run(virtctl_cmd)
|
|
1365
1394
|
|
|
1366
1395
|
@logger_time_stamp
|
|
1367
1396
|
def get_vm_node(self, vm_name: str, namespace: str = environment_variables.environment_variables_dict['namespace']):
|
|
@@ -10,11 +10,14 @@ class CreateLSO(CreateOCPResourceOperations):
|
|
|
10
10
|
"""
|
|
11
11
|
This class is created Local Storage operator
|
|
12
12
|
"""
|
|
13
|
-
def __init__(self, oc: OC, path: str, resource_list: list):
|
|
13
|
+
def __init__(self, oc: OC, path: str, resource_list: list, lso_node: str, lso_disk_id: str, ceph_version: str):
|
|
14
14
|
super().__init__(oc)
|
|
15
15
|
self.__oc = oc
|
|
16
16
|
self.__path = path
|
|
17
17
|
self.__resource_list = resource_list
|
|
18
|
+
self.__lso_node = lso_node
|
|
19
|
+
self.__lso_disk_id = lso_disk_id
|
|
20
|
+
self.__ceph_version = ceph_version
|
|
18
21
|
|
|
19
22
|
@logger_time_stamp
|
|
20
23
|
def create_lso(self, upgrade_version: str):
|
|
@@ -29,7 +32,15 @@ class CreateLSO(CreateOCPResourceOperations):
|
|
|
29
32
|
else:
|
|
30
33
|
for resource in self.__resource_list:
|
|
31
34
|
logger.info(f'run {resource}')
|
|
32
|
-
|
|
35
|
+
if resource.endswith('.sh'):
|
|
36
|
+
if '01_delete_disks.sh' == resource and self.__lso_disk_id:
|
|
37
|
+
disk = f'/dev/disk/by-id/{self.__lso_disk_id}'
|
|
38
|
+
delete_node_disk = f""" podman run --authfile /var/lib/kubelet/config.json --rm --privileged --device "$(readlink -e '{disk}')" --entrypoint ceph-bluestore-tool quay.io/ceph/ceph:v{self.__ceph_version} zap-device --dev "$(readlink -e '{disk}')" --yes-i-really-really-mean-it """
|
|
39
|
+
logger.info(f'{self.__lso_node}: {delete_node_disk}')
|
|
40
|
+
self.__oc.run(cmd=f'chmod +x {os.path.join(self.__path, resource)}; {self.__path}/{resource} "{self.__lso_node}" "{delete_node_disk}"')
|
|
41
|
+
else:
|
|
42
|
+
logger.info(f'run {resource}')
|
|
43
|
+
self.__oc.create_async(yaml=os.path.join(self.__path, resource))
|
|
33
44
|
|
|
34
45
|
# verify once after create all resource files
|
|
35
46
|
self.wait_for_ocp_resource_create(operator='lso',
|
|
@@ -24,6 +24,10 @@ class CreateOCPResource:
|
|
|
24
24
|
self.__oc.populate_additional_template_variables(self.__environment_variables_dict)
|
|
25
25
|
self.__worker_disk_prefix = self.__environment_variables_dict.get('worker_disk_prefix', '')
|
|
26
26
|
self.__worker_disk_ids = self.__environment_variables_dict.get('worker_disk_ids', '')
|
|
27
|
+
self.__worker_disk_ids = self.__environment_variables_dict.get('worker_disk_ids', '')
|
|
28
|
+
self.__lso_disk_id = self.__environment_variables_dict.get('lso_disk_id', '')
|
|
29
|
+
self.__lso_node = self.__environment_variables_dict.get('lso_node', '')
|
|
30
|
+
self.__ceph_version = self.__environment_variables_dict.get('ceph_version', '')
|
|
27
31
|
if self.__worker_disk_ids:
|
|
28
32
|
if self.__worker_disk_ids:
|
|
29
33
|
# Solved GitHub Actions issue that env variable detect as string instead of dict/ list -skip for Jenkins
|
|
@@ -80,7 +84,7 @@ class CreateOCPResource:
|
|
|
80
84
|
self.remove_resource_files(path=os.path.join(self.__dir_path, resource))
|
|
81
85
|
resource_files = self.get_sorted_resources(resource=resource)
|
|
82
86
|
if 'lso' == resource:
|
|
83
|
-
create_lso = CreateLSO(self.__oc, path=os.path.join(self.__dir_path, resource), resource_list=resource_files)
|
|
87
|
+
create_lso = CreateLSO(self.__oc, path=os.path.join(self.__dir_path, resource), resource_list=resource_files, lso_node=self.__lso_node, lso_disk_id=self.__lso_disk_id, ceph_version=self.__ceph_version)
|
|
84
88
|
create_lso.create_lso(upgrade_version)
|
|
85
89
|
elif 'odf' == resource:
|
|
86
90
|
create_odf = CreateODF(self.__oc, path=os.path.join(self.__dir_path, resource), resource_list=resource_files, worker_disk_ids=self.__worker_disk_ids, worker_disk_prefix=self.__worker_disk_prefix)
|
|
@@ -5,6 +5,8 @@ import yaml
|
|
|
5
5
|
import sys
|
|
6
6
|
import benchmark_runner
|
|
7
7
|
from multiprocessing import Process
|
|
8
|
+
import multiprocessing
|
|
9
|
+
multiprocessing.set_start_method('fork', force=True)
|
|
8
10
|
|
|
9
11
|
from jinja2 import Template, TemplateSyntaxError
|
|
10
12
|
from benchmark_runner.common.template_operations.render_yaml_from_template import render_yaml_file
|
|
@@ -40,21 +40,21 @@ template_data:
|
|
|
40
40
|
requests_memory: 16Gi
|
|
41
41
|
extra:
|
|
42
42
|
mariadb:
|
|
43
|
-
db_image:
|
|
43
|
+
db_image: mariadb10.5-centos9-container-disk:latest
|
|
44
44
|
db_pass: mysql
|
|
45
45
|
db_port: 3306
|
|
46
46
|
db_type: mariadb
|
|
47
47
|
db_user: root
|
|
48
48
|
db_server_pod: mariadb-deployment.mariadb-db
|
|
49
49
|
mssql:
|
|
50
|
-
db_image:
|
|
50
|
+
db_image: mssql2022-centos9-container-disk:latest
|
|
51
51
|
db_pass: s3curePasswordString
|
|
52
52
|
db_port: 1433
|
|
53
53
|
db_type: mssql
|
|
54
54
|
db_user: SA
|
|
55
55
|
db_server_pod: mssql-deployment.mssql-db
|
|
56
56
|
postgres:
|
|
57
|
-
db_image:
|
|
57
|
+
db_image: postgresql13-centos9-container-disk:latest
|
|
58
58
|
db_pass: postgres
|
|
59
59
|
db_port: 5432
|
|
60
60
|
db_type: pg
|
|
@@ -11,7 +11,7 @@ spec:
|
|
|
11
11
|
- key: kubernetes.io/hostname
|
|
12
12
|
operator: In
|
|
13
13
|
values:
|
|
14
|
-
- {{
|
|
14
|
+
- {{ lso_node }}
|
|
15
15
|
storageClassDevices:
|
|
16
16
|
- storageClassName: local-sc
|
|
17
17
|
volumeMode: Block
|
|
@@ -42,7 +42,11 @@ spec:
|
|
|
42
42
|
name: hammerdb
|
|
43
43
|
args:
|
|
44
44
|
pin: {{ pin }} # enable for nodeSelector
|
|
45
|
+
{%- if storage_type == 'lso' %}
|
|
46
|
+
pin_node: "{{ lso_node }}"
|
|
47
|
+
{%- else %}
|
|
45
48
|
pin_node: "{{ pin_node2 }}"
|
|
49
|
+
{%- endif %}
|
|
46
50
|
db_type: "{{ db_type }}"
|
|
47
51
|
timed_test: true
|
|
48
52
|
test_type: "tpc-c"
|
|
@@ -99,7 +103,7 @@ spec:
|
|
|
99
103
|
sockets: {{ sockets }}
|
|
100
104
|
cores: {{ cores }}
|
|
101
105
|
threads: 1
|
|
102
|
-
image: quay.io/
|
|
106
|
+
image: quay.io/benchmark-runner/{{ db_image }}
|
|
103
107
|
limits:
|
|
104
108
|
memory: {{ vm_limits_memory }}
|
|
105
109
|
requests:
|
|
@@ -33,7 +33,7 @@ spec:
|
|
|
33
33
|
- key: kubernetes.io/hostname
|
|
34
34
|
operator: In
|
|
35
35
|
values:
|
|
36
|
-
- {{
|
|
36
|
+
- {{ lso_node }}
|
|
37
37
|
storageClassDevices:
|
|
38
38
|
- storageClassName: local-sc
|
|
39
39
|
volumeMode: Filesystem
|
|
@@ -72,16 +72,39 @@ data:
|
|
|
72
72
|
# use it for options that affect everything
|
|
73
73
|
#
|
|
74
74
|
[client-server]
|
|
75
|
-
#
|
|
76
|
-
# include all files from the config directory
|
|
77
|
-
#
|
|
78
75
|
!includedir /etc/my.cnf.d
|
|
79
76
|
port=3306
|
|
80
77
|
ssl=0
|
|
78
|
+
|
|
81
79
|
[mysqld]
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
80
|
+
key_buffer_size = 1638M
|
|
81
|
+
max_allowed_packet = 200M
|
|
82
|
+
table_open_cache = 400
|
|
83
|
+
sort_buffer_size = 256K
|
|
84
|
+
read_buffer_size = 16M # safer per-connection buffer
|
|
85
|
+
read_rnd_buffer_size = 256K
|
|
86
|
+
net_buffer_length = 2K
|
|
87
|
+
thread_stack = 256K
|
|
88
|
+
myisam_sort_buffer_size = 2M
|
|
89
|
+
max_connections = 151
|
|
90
|
+
|
|
91
|
+
innodb_buffer_pool_size = 8192M
|
|
92
|
+
innodb_log_file_size = 2457M
|
|
93
|
+
innodb_log_buffer_size = 2457M
|
|
94
|
+
innodb_file_per_table = 1
|
|
95
|
+
innodb_flush_method = O_DIRECT
|
|
96
|
+
innodb_adaptive_flushing = 1
|
|
97
|
+
|
|
98
|
+
[mysqldump]
|
|
99
|
+
quick
|
|
100
|
+
max_allowed_packet = 16M
|
|
101
|
+
|
|
102
|
+
[mysql]
|
|
103
|
+
no-auto-rehash
|
|
104
|
+
|
|
105
|
+
[myisamchk]
|
|
106
|
+
key_buffer_size = 8M
|
|
107
|
+
sort_buffer_size = 8M
|
|
85
108
|
---
|
|
86
109
|
apiVersion: apps/v1
|
|
87
110
|
kind: Deployment
|
|
@@ -113,8 +136,8 @@ spec:
|
|
|
113
136
|
terminationGracePeriodSeconds: 10
|
|
114
137
|
containers:
|
|
115
138
|
- name: mariadb
|
|
116
|
-
#
|
|
117
|
-
image: quay.io/
|
|
139
|
+
# quay.io/sclorg/mariadb-105-c9s:latest - rate limit issue
|
|
140
|
+
image: quay.io/benchmark-runner/mariadb10.5-centos9:latest
|
|
118
141
|
imagePullPolicy: "IfNotPresent"
|
|
119
142
|
ports:
|
|
120
143
|
- containerPort: 3306
|
|
@@ -33,7 +33,7 @@ spec:
|
|
|
33
33
|
- key: kubernetes.io/hostname
|
|
34
34
|
operator: In
|
|
35
35
|
values:
|
|
36
|
-
- {{
|
|
36
|
+
- {{ lso_node }}
|
|
37
37
|
storageClassDevices:
|
|
38
38
|
- storageClassName: local-sc
|
|
39
39
|
volumeMode: Filesystem
|
|
@@ -92,8 +92,8 @@ spec:
|
|
|
92
92
|
terminationGracePeriodSeconds: 10
|
|
93
93
|
containers:
|
|
94
94
|
- name: mssql
|
|
95
|
-
# mcr.microsoft.com/mssql/rhel/server:
|
|
96
|
-
image: quay.io/
|
|
95
|
+
# mcr.microsoft.com/mssql/rhel/server:2022-latest - rate limit issue
|
|
96
|
+
image: quay.io/benchmark-runner/mssql2022-rhel9:latest
|
|
97
97
|
imagePullPolicy: "IfNotPresent"
|
|
98
98
|
ports:
|
|
99
99
|
- containerPort: 1433
|
|
@@ -33,7 +33,7 @@ spec:
|
|
|
33
33
|
- key: kubernetes.io/hostname
|
|
34
34
|
operator: In
|
|
35
35
|
values:
|
|
36
|
-
- {{
|
|
36
|
+
- {{ lso_node }}
|
|
37
37
|
storageClassDevices:
|
|
38
38
|
- storageClassName: local-sc
|
|
39
39
|
volumeMode: Filesystem
|
|
@@ -107,8 +107,8 @@ spec:
|
|
|
107
107
|
terminationGracePeriodSeconds: 10
|
|
108
108
|
containers:
|
|
109
109
|
- name: postgres
|
|
110
|
-
#
|
|
111
|
-
image: quay.io/
|
|
110
|
+
# quay.io/sclorg/postgresql-13-c9s:latest - rate limit issue
|
|
111
|
+
image: quay.io/benchmark-runner/postgresql13-centos9:latest
|
|
112
112
|
imagePullPolicy: "IfNotPresent"
|
|
113
113
|
ports:
|
|
114
114
|
- containerPort: 5432
|
|
@@ -24,6 +24,7 @@ spec:
|
|
|
24
24
|
{%- endif %}
|
|
25
25
|
pin: {{ pin }} # enable for nodeSelector
|
|
26
26
|
pin_node: "{{ pin_node }}"
|
|
27
|
+
image: "quay.io/benchmark-runner/stressng:latest"
|
|
27
28
|
resources: {{ resources }} # enable for resources requests/limits
|
|
28
29
|
requests_cpu: {{ requests_cpu }}
|
|
29
30
|
requests_memory: {{ requests_memory }}
|
|
@@ -96,7 +96,6 @@ spec:
|
|
|
96
96
|
containers:
|
|
97
97
|
- name: vdbench-pod
|
|
98
98
|
image: {{ vdbench_image }}
|
|
99
|
-
imagePullPolicy: "IfNotPresent"
|
|
100
99
|
resources:
|
|
101
100
|
requests:
|
|
102
101
|
cpu: {{ requests_cpu }}
|
|
@@ -167,7 +166,7 @@ spec:
|
|
|
167
166
|
value: "{{ timeout }}"
|
|
168
167
|
command: ["/bin/bash"]
|
|
169
168
|
{% if scale -%}
|
|
170
|
-
args: ["-c", "python3.
|
|
169
|
+
args: ["-c", "python3.12 /state_signals_responder.py $REDIS_HOST $WORKLOAD_METHOD $TIMEOUT"]
|
|
171
170
|
{%- else -%}
|
|
172
171
|
args: ["-c", "$WORKLOAD_METHOD"]
|
|
173
172
|
{%- endif %}
|
|
@@ -121,7 +121,7 @@ spec:
|
|
|
121
121
|
- export LOGS_DIR={{ LOGS_DIR }}
|
|
122
122
|
- echo @@~@@START-WORKLOAD@@~@@
|
|
123
123
|
{% if scale -%}
|
|
124
|
-
- podman run --rm -e BLOCK_SIZES="$BLOCK_SIZES" -e IO_OPERATION="$IO_OPERATION" -e IO_THREADS="$IO_THREADS" -e FILES_IO="$FILES_IO" -e IO_RATE="$IO_RATE" -e MIX_PRECENTAGE="$MIX_PRECENTAGE" -e DURATION="$DURATION" -e PAUSE="$PAUSE" -e WARMUP="$WARMUP" -e FILES_SELECTION="$FILES_SELECTION" -e COMPRESSION_RATIO="$COMPRESSION_RATIO" -e RUN_FILLUP="$RUN_FILLUP" -e DIRECTORIES="$DIRECTORIES" -e FILES_PER_DIRECTORY="$FILES_PER_DIRECTORY" -e SIZE_PER_FILE="$SIZE_PER_FILE" -e REDIS_HOST="$REDIS_HOST" -e LOGS_DIR="$LOGS_DIR" -e TIMEOUT="$TIMEOUT" -v "/workload":"/workload" --privileged {{ vdbench_image }} python3.
|
|
124
|
+
- podman run --rm -e BLOCK_SIZES="$BLOCK_SIZES" -e IO_OPERATION="$IO_OPERATION" -e IO_THREADS="$IO_THREADS" -e FILES_IO="$FILES_IO" -e IO_RATE="$IO_RATE" -e MIX_PRECENTAGE="$MIX_PRECENTAGE" -e DURATION="$DURATION" -e PAUSE="$PAUSE" -e WARMUP="$WARMUP" -e FILES_SELECTION="$FILES_SELECTION" -e COMPRESSION_RATIO="$COMPRESSION_RATIO" -e RUN_FILLUP="$RUN_FILLUP" -e DIRECTORIES="$DIRECTORIES" -e FILES_PER_DIRECTORY="$FILES_PER_DIRECTORY" -e SIZE_PER_FILE="$SIZE_PER_FILE" -e REDIS_HOST="$REDIS_HOST" -e LOGS_DIR="$LOGS_DIR" -e TIMEOUT="$TIMEOUT" -v "/workload":"/workload" --privileged {{ vdbench_image }} python3.12 /state_signals_responder.py "$REDIS_HOST" "$WORKLOAD_METHOD" "$TIMEOUT"
|
|
125
125
|
{%- else -%}
|
|
126
126
|
- podman run --rm -e BLOCK_SIZES="$BLOCK_SIZES" -e IO_OPERATION="$IO_OPERATION" -e IO_THREADS="$IO_THREADS" -e FILES_IO="$FILES_IO" -e IO_RATE="$IO_RATE" -e MIX_PRECENTAGE="$MIX_PRECENTAGE" -e DURATION="$DURATION" -e PAUSE="$PAUSE" -e WARMUP="$WARMUP" -e FILES_SELECTION="$FILES_SELECTION" -e COMPRESSION_RATIO="$COMPRESSION_RATIO" -e RUN_FILLUP="$RUN_FILLUP" -e DIRECTORIES="$DIRECTORIES" -e FILES_PER_DIRECTORY="$FILES_PER_DIRECTORY" -e SIZE_PER_FILE="$SIZE_PER_FILE" -e REDIS_HOST="$REDIS_HOST" -e LOGS_DIR="$LOGS_DIR" -e TIMEOUT="$TIMEOUT" -v "/workload":"/workload" --privileged {{ vdbench_image }} "$WORKLOAD_METHOD"
|
|
127
127
|
{%- endif %}
|
|
@@ -5,8 +5,8 @@ template_data:
|
|
|
5
5
|
pin_node: {{ pin_node1 }}
|
|
6
6
|
odf_pvc: {{ odf_pvc }}
|
|
7
7
|
uuid: {{ uuid }}
|
|
8
|
-
vdbench_image: quay.io/
|
|
9
|
-
centos_stream_container_disk: quay.io/
|
|
8
|
+
vdbench_image: quay.io/benchmark-runner/centos-stream9-vdbench5.04.07-pod:latest
|
|
9
|
+
centos_stream_container_disk: quay.io/benchmark-runner/centos-stream9-container-disk:latest
|
|
10
10
|
run_type:
|
|
11
11
|
perf_ci:
|
|
12
12
|
BLOCK_SIZES: oltp1,oltp2,oltphw,odss2,odss128,4_cache,64_cache,4,64,4_cache,64_cache,4,64
|
{benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/main/environment_variables.py
RENAMED
|
@@ -84,8 +84,8 @@ class EnvironmentVariables:
|
|
|
84
84
|
# prometheus snap interval
|
|
85
85
|
self._environment_variables_dict['prometheus_snap_interval'] = EnvironmentVariables.get_env('PROMETHEUS_SNAP_INTERVAL', '30')
|
|
86
86
|
|
|
87
|
-
#
|
|
88
|
-
self._environment_variables_dict['fedora_container_disk'] = EnvironmentVariables.get_env('FEDORA_CONTAINER_DISK','quay.io/
|
|
87
|
+
# based on: quay.io/openshift-cnv/qe-cnv-tests-fedora:39
|
|
88
|
+
self._environment_variables_dict['fedora_container_disk'] = EnvironmentVariables.get_env('FEDORA_CONTAINER_DISK','quay.io/benchmark-runner/fedora39-container-disk:latest')
|
|
89
89
|
# windows url
|
|
90
90
|
self._environment_variables_dict['windows_url'] = EnvironmentVariables.get_env('WINDOWS_URL', '')
|
|
91
91
|
# Delete all resources before and after the run, default True
|
|
@@ -125,6 +125,16 @@ class EnvironmentVariables:
|
|
|
125
125
|
'krknhub': 'krknhub',
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
+
# Versions
|
|
129
|
+
self._environment_variables_dict['versions'] = {
|
|
130
|
+
'mssql': 2022,
|
|
131
|
+
'postgres': 13,
|
|
132
|
+
'mariadb': 10.5,
|
|
133
|
+
'db_vm_os_version': 'centos-stream9',
|
|
134
|
+
'vm_os_version': 'fedora39',
|
|
135
|
+
'hammerdb': 4.0
|
|
136
|
+
}
|
|
137
|
+
|
|
128
138
|
# Update namespace
|
|
129
139
|
base_workload = self._environment_variables_dict['workload'].split('_')[0]
|
|
130
140
|
if EnvironmentVariables.get_env('NAMESPACE'):
|
|
@@ -146,9 +156,11 @@ class EnvironmentVariables:
|
|
|
146
156
|
else:
|
|
147
157
|
self._environment_variables_dict['storage_type'] = 'ephemeral'
|
|
148
158
|
|
|
149
|
-
# LSO Disk id - auto-detect when located on worker-2
|
|
159
|
+
# LSO Disk id - auto-detect when located on worker-2, put only the id not full ( i.e. /dev/disk/by-id/{{ lso_disk_id }} )
|
|
150
160
|
self._environment_variables_dict['lso_disk_id'] = EnvironmentVariables.get_env('LSO_DISK_ID', '')
|
|
151
161
|
self._environment_variables_dict['lso_node'] = EnvironmentVariables.get_env('LSO_NODE', '')
|
|
162
|
+
# Ceph version required for disk cleanup, using default 19
|
|
163
|
+
self._environment_variables_dict['ceph_version'] = EnvironmentVariables.get_env('CEPH_VERSION', '19')
|
|
152
164
|
# Workloads that required ODF
|
|
153
165
|
self._environment_variables_dict['workloads_odf_pvc'] = ['vdbench', 'hammerdb']
|
|
154
166
|
# This parameter get from Test_CI.yml file
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import ast # change string list to list
|
|
3
3
|
from enum import Enum
|
|
4
|
-
|
|
4
|
+
import multiprocessing
|
|
5
5
|
import platform
|
|
6
6
|
|
|
7
7
|
# @todo paramiko==3.4.1/3.5.0 cause to "RunCommandError: Cannot run shell command: SSH session not active"
|
|
@@ -20,7 +20,6 @@ from benchmark_runner.common.clouds.BareMetal.bare_metal_operations import BareM
|
|
|
20
20
|
from benchmark_runner.clusterbuster.clusterbuster_workloads import ClusterBusterWorkloads
|
|
21
21
|
from benchmark_runner.krkn_hub.krknhub_workloads import KrknHubWorkloads
|
|
22
22
|
|
|
23
|
-
|
|
24
23
|
# logger
|
|
25
24
|
log_level = os.environ.get('log_level', 'INFO').upper()
|
|
26
25
|
logger.setLevel(level=log_level)
|
|
@@ -326,5 +325,6 @@ def main():
|
|
|
326
325
|
if __name__ == '__main__':
|
|
327
326
|
# spawn default in mac: https://docs.python.org/3/library/multiprocessing.html#:~:text=The%20default%20on%20Windows%20and%20macOS.
|
|
328
327
|
if 'macos' in platform.platform(terse=True).lower():
|
|
329
|
-
|
|
328
|
+
if multiprocessing.get_start_method(allow_none=True) is None:
|
|
329
|
+
multiprocessing.set_start_method('fork')
|
|
330
330
|
main()
|
{benchmark_runner-1.0.874 → benchmark_runner-1.0.932}/benchmark_runner/workloads/bootstorm_vm.py
RENAMED
|
@@ -315,7 +315,9 @@ class BootstormVM(WorkloadsOperations):
|
|
|
315
315
|
else:
|
|
316
316
|
self._save_artifacts_local = True
|
|
317
317
|
if self._es_host:
|
|
318
|
-
|
|
318
|
+
if self._google_drive_shared_drive_id:
|
|
319
|
+
self._data_dict.update({'run_artifacts_url': self.get_run_artifacts_google_drive()})
|
|
320
|
+
self._data_dict.update({'failure_vms': failure_vms, 'verification_failure': True})
|
|
319
321
|
# upload several run results
|
|
320
322
|
self._upload_to_elasticsearch(index=self._es_index, kind=self._kind, status=self._status,result=self._data_dict)
|
|
321
323
|
# verify that data upload to elastic search according to unique uuid
|
|
@@ -184,11 +184,11 @@ class WorkloadsOperations:
|
|
|
184
184
|
@logger_time_stamp
|
|
185
185
|
def odf_workload_verification(self):
|
|
186
186
|
"""
|
|
187
|
-
This method verifies whether the ODF operator is installed for ODF workloads and raises an error if it is missing
|
|
187
|
+
This method verifies whether the ODF operator is installed for ODF workloads and raises an error if it is missing, skip for LSO workload
|
|
188
188
|
:return:
|
|
189
189
|
"""
|
|
190
190
|
workload_name = self._workload.split('_')
|
|
191
|
-
if workload_name[0] in self._workloads_odf_pvc:
|
|
191
|
+
if workload_name[0] in self._workloads_odf_pvc and '_lso' not in self._workload:
|
|
192
192
|
if not self._oc.is_odf_installed():
|
|
193
193
|
raise ODFNotInstalled(workload=self._workload)
|
|
194
194
|
|