benchmark-runner 1.0.806__tar.gz → 1.0.808__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.

Potentially problematic release.


This version of benchmark-runner might be problematic. Click here for more details.

Files changed (188) hide show
  1. {benchmark_runner-1.0.806/benchmark_runner.egg-info → benchmark_runner-1.0.808}/PKG-INFO +1 -1
  2. benchmark_runner-1.0.808/benchmark_runner/common/google_drive/google_drive_exceptions.py +13 -0
  3. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/google_drive/google_drive_operations.py +38 -10
  4. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/oc/oc.py +25 -3
  5. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/bootstorm_vm.py +64 -65
  6. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/workloads_operations.py +13 -0
  7. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808/benchmark_runner.egg-info}/PKG-INFO +1 -1
  8. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner.egg-info/SOURCES.txt +1 -0
  9. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/setup.py +1 -1
  10. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/LICENSE +0 -0
  11. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/MANIFEST.in +0 -0
  12. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/README.md +0 -0
  13. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/__init__.py +0 -0
  14. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/__init__.py +0 -0
  15. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/benchmark_operator_exceptions.py +0 -0
  16. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/benchmark_operator_workloads.py +0 -0
  17. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/benchmark_operator_workloads_operations.py +0 -0
  18. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/hammerdb_pod.py +0 -0
  19. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/hammerdb_vm.py +0 -0
  20. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/stressng_pod.py +0 -0
  21. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/stressng_vm.py +0 -0
  22. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/uperf_pod.py +0 -0
  23. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/benchmark_operator/uperf_vm.py +0 -0
  24. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/clusterbuster/__init__.py +0 -0
  25. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/clusterbuster/clusterbuster_exceptions.py +0 -0
  26. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/clusterbuster/clusterbuster_workloads.py +0 -0
  27. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/__init__.py +0 -0
  28. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/analyze/__init__.py +0 -0
  29. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/analyze/analyze_data.py +0 -0
  30. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/assisted_installer/__init__.py +0 -0
  31. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/assisted_installer/assisted_installer_latest_version.py +0 -0
  32. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/assisted_installer/jetlag/run_jetlag.sh +0 -0
  33. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/Azure/__init__.py +0 -0
  34. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/Azure/azure_operations.py +0 -0
  35. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/BareMetal/__init__.py +0 -0
  36. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/BareMetal/bare_metal_exceptions.py +0 -0
  37. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/BareMetal/bare_metal_operations.py +0 -0
  38. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/IBM/__init__.py +0 -0
  39. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/IBM/ibm_exceptions.py +0 -0
  40. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/IBM/ibm_operations.py +0 -0
  41. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/__init__.py +0 -0
  42. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/shared/__init__.py +0 -0
  43. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/shared/s3/__init__.py +0 -0
  44. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/shared/s3/s3_operations.py +0 -0
  45. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/clouds/shared/s3/s3_operations_exceptions.py +0 -0
  46. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/elasticsearch/__init__.py +0 -0
  47. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/elasticsearch/elasticsearch_exceptions.py +0 -0
  48. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/elasticsearch/elasticsearch_operations.py +0 -0
  49. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/github/__init__.py +0 -0
  50. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/github/github_operations.py +0 -0
  51. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/google_drive/__init__.py +0 -0
  52. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/grafana/__init__.py +0 -0
  53. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/grafana/grafana_operations.py +0 -0
  54. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/grafana/update_grafana_latest_value_mappings.py +0 -0
  55. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/logger/__init__.py +0 -0
  56. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/logger/init_logger.py +0 -0
  57. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/logger/logger_exceptions.py +0 -0
  58. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/logger/logger_time_stamp.py +0 -0
  59. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/oc/__init__.py +0 -0
  60. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/oc/oc_exceptions.py +0 -0
  61. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/oc/singleton_oc_login.py +0 -0
  62. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/__init__.py +0 -0
  63. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/cnv/template/01_operator_template.yaml +0 -0
  64. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/cnv/template/02_hyperconverge_template.yaml +0 -0
  65. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_cnv.py +0 -0
  66. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_custom.py +0 -0
  67. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_kata.py +0 -0
  68. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_lso.py +0 -0
  69. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_nhc_snr.py +0 -0
  70. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_ocp_resource.py +0 -0
  71. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_ocp_resource_exceptions.py +0 -0
  72. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_ocp_resource_operations.py +0 -0
  73. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/create_odf.py +0 -0
  74. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/custom/template/01_coredns_patch_template.sh +0 -0
  75. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/custom/template/02_mssql_patch_template.sh +0 -0
  76. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/infra/template/01_cluster-monitoring-configmap-template.yaml +0 -0
  77. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/kata/template/01_operator_template.yaml +0 -0
  78. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/kata/template/02_config_template.yaml +0 -0
  79. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/kata/template/03_ocp48_patch_template.sh +0 -0
  80. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/lso/template/01_namespace_template.yaml +0 -0
  81. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/lso/template/02_operator_group_template.yaml +0 -0
  82. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/lso/template/03_catalogsource_template.yaml +0 -0
  83. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/lso/template/04_subscription_template.yaml +0 -0
  84. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/migrate_infra.py +0 -0
  85. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/nhc_snr/template/01_namespace_template.yaml +0 -0
  86. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/nhc_snr/template/02_operator_group_template.yaml +0 -0
  87. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/nhc_snr/template/03_nhc_subscription_template.yaml +0 -0
  88. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/nhc_snr/template/04_snr_subscription_template.yaml +0 -0
  89. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/nhc_snr/template/05_nhc_snr_template.yaml +0 -0
  90. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/01_delete_disks_template.sh +0 -0
  91. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/02_label_nodes_template.sh +0 -0
  92. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/03_local_volume_discovery_template.yaml +0 -0
  93. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/04_local_volume_set_template.yaml +0 -0
  94. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/05_namespace_template.yaml +0 -0
  95. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/06_operator_group_template.yaml +0 -0
  96. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/07_subscription_template.yaml +0 -0
  97. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ocp_resources/odf/template/08_storage_cluster_template.yaml +0 -0
  98. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/prometheus/__init__.py +0 -0
  99. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/prometheus/metrics-default.yaml +0 -0
  100. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/prometheus/metrics-examples.yaml +0 -0
  101. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/prometheus/prometheus_metrics.py +0 -0
  102. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/prometheus/prometheus_metrics_operations.py +0 -0
  103. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/prometheus/prometheus_snapshot.py +0 -0
  104. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/prometheus/prometheus_snapshot_exceptions.py +0 -0
  105. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/remote_ssh/__init__.py +0 -0
  106. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/remote_ssh/connection_data.py +0 -0
  107. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/remote_ssh/remote_ssh.py +0 -0
  108. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/remote_ssh/remote_ssh_exceptions.py +0 -0
  109. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ssh/__init__.py +0 -0
  110. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ssh/ssh.py +0 -0
  111. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/ssh/ssh_exceptions.py +0 -0
  112. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/__init__.py +0 -0
  113. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/render_yaml_from_template.py +0 -0
  114. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/template_operations.py +0 -0
  115. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/bootstorm/bootstorm_data_template.yaml +0 -0
  116. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/bootstorm/internal_data/bootstorm_vm_template.yaml +0 -0
  117. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/common_template.yaml +0 -0
  118. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/hammerdb/hammerdb_data_template.yaml +0 -0
  119. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/hammerdb_pod_template.yaml +0 -0
  120. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/hammerdb_vm_template.yaml +0 -0
  121. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/mariadb_template.yaml +0 -0
  122. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/mssql_template.yaml +0 -0
  123. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/hammerdb/internal_data/postgres_template.yaml +0 -0
  124. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/namespace_template.yaml +0 -0
  125. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/scale/redis_template.yaml +0 -0
  126. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/scale/state_signals_exporter_pod_template.yaml +0 -0
  127. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/stressng/internal_data/stressng_pod_template.yaml +0 -0
  128. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/stressng/internal_data/stressng_vm_template.yaml +0 -0
  129. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/stressng/stressng_data_template.yaml +0 -0
  130. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/uperf/internal_data/uperf_pod_template.yaml +0 -0
  131. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/uperf/internal_data/uperf_vm_template.yaml +0 -0
  132. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/uperf/uperf_data_template.yaml +0 -0
  133. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/vdbench/internal_data/namespace_template.yaml +0 -0
  134. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/vdbench/internal_data/vdbench_pod_template.yaml +0 -0
  135. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/vdbench/internal_data/vdbench_vm_template.yaml +0 -0
  136. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/vdbench/vdbench_data_template.yaml +0 -0
  137. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/windows/internal_data/windows_dv_template.yaml +0 -0
  138. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/windows/internal_data/windows_vm_template.yaml +0 -0
  139. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/template_operations/templates/windows/windows_data_template.yaml +0 -0
  140. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/virtctl/__init__.py +0 -0
  141. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/common/virtctl/virtctl.py +0 -0
  142. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/grafana/__init__.py +0 -0
  143. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/grafana/update_grafana_dashboard.py +0 -0
  144. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/grafana/update_versions_main_libsonnet.py +0 -0
  145. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/__init__.py +0 -0
  146. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/__init__.py +0 -0
  147. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_perfci_cluster/analyze_perfci_cluster.ipynb +0 -0
  148. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_prometheus_logs/__init__.py +0 -0
  149. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_prometheus_logs/analyze_prometheus_logs.ipynb +0 -0
  150. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_prometheus_logs/analyze_prometheus_logs.py +0 -0
  151. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/__init__.py +0 -0
  152. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_hammerdb_logs/__init__.py +0 -0
  153. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_hammerdb_logs/analyze_hammerdb_logs.ipynb +0 -0
  154. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_hammerdb_logs/analyze_hammerdb_logs.py +0 -0
  155. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_uperf_logs/__init__.py +0 -0
  156. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_uperf_logs/analyze_uperf_logs.ipynb +0 -0
  157. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_uperf_logs/analyze_uperf_logs.py +0 -0
  158. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_vdbench_logs/__init__.py +0 -0
  159. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_vdbench_logs/analyze_vdbench_logs.ipynb +0 -0
  160. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/analyze_vdbench_logs/analyze_vdbench_logs.py +0 -0
  161. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/analyze_workloads/visualize_workload_operations.py +0 -0
  162. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/elasticsearch_operations/__init__.py +0 -0
  163. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/elasticsearch_operations/elasticsearch_operations.ipynb +0 -0
  164. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/elasticsearch_operations/elasticsearch_widgets.py +0 -0
  165. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/logs_operations/__init__.py +0 -0
  166. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/logs_operations/logs_operations.py +0 -0
  167. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/summary_report/__init__.py +0 -0
  168. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/summary_report/summary_report_operations.py +0 -0
  169. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/jupyterlab/templates/summary_report/summary_report_widgets.py +0 -0
  170. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/krkn_hub/__init__.py +0 -0
  171. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/krkn_hub/krknhub_exceptions.py +0 -0
  172. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/krkn_hub/krknhub_workloads.py +0 -0
  173. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/main/__init__.py +0 -0
  174. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/main/environment_variables.py +0 -0
  175. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/main/environment_variables_exceptions.py +0 -0
  176. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/main/main.py +0 -0
  177. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/main/temporary_environment_variables.py +0 -0
  178. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/__init__.py +0 -0
  179. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/vdbench_pod.py +0 -0
  180. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/vdbench_vm.py +0 -0
  181. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/windows_vm.py +0 -0
  182. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/workloads.py +0 -0
  183. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner/workloads/workloads_exceptions.py +0 -0
  184. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner.egg-info/dependency_links.txt +0 -0
  185. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner.egg-info/not-zip-safe +0 -0
  186. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner.egg-info/requires.txt +0 -0
  187. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/benchmark_runner.egg-info/top_level.txt +0 -0
  188. {benchmark_runner-1.0.806 → benchmark_runner-1.0.808}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: benchmark-runner
3
- Version: 1.0.806
3
+ Version: 1.0.808
4
4
  Summary: Benchmark Runner Tool
5
5
  Home-page: https://github.com/redhat-performance/benchmark-runner
6
6
  Author: Red Hat
@@ -0,0 +1,13 @@
1
+ class GoogleDrive(Exception):
2
+ """ Base class for all ElasticSearch error classes.
3
+ All exceptions raised by the google drive library should inherit from this class. """
4
+ pass
5
+
6
+
7
+ class FolderNotCreated(GoogleDrive):
8
+ """Raised when a folder cannot be created in Google Drive after retries."""
9
+ def __init__(self, folder_path, message=None):
10
+ if message is None:
11
+ message = f"Failed to create folder: {folder_path}"
12
+ super().__init__(message)
13
+ self.folder_path = folder_path
@@ -9,7 +9,7 @@ from googleapiclient.http import MediaFileUpload
9
9
  from google.auth.transport.requests import Request
10
10
  from google_auth_oauthlib.flow import InstalledAppFlow
11
11
  from benchmark_runner.common.logger.logger_time_stamp import logger # Added logger import
12
-
12
+ from benchmark_runner.common.google_drive.google_drive_exceptions import FolderNotCreated
13
13
  # Define the scope
14
14
  SCOPES = ['https://www.googleapis.com/auth/drive']
15
15
 
@@ -241,16 +241,44 @@ class GoogleDriveOperations:
241
241
  # Folder exists, return the folder URL
242
242
  folder_url = f"{self._google_drive_path}/{folder_id}"
243
243
  return folder_url
244
- else:
245
- # If folder does not exist, create it along the path
246
- folder_id = self.create_folder_at_path(folder_path, parent_folder_id)
244
+
245
+ def create_drive_folder_url(self, folder_path, parent_folder_id, retries=3, delay=5):
246
+ """
247
+ Create folder if it doesn't exist. Retries in case of failure.
248
+ :param folder_path: The full folder path to retrieve or create.
249
+ :param parent_folder_id: The starting parent folder ID.
250
+ :param retries: Number of retry attempts on failure.
251
+ :param delay: Initial delay between retries in seconds.
252
+ :return: The Google Drive URL for the folder, or None on failure.
253
+ """
254
+ attempt = 1
255
+ while attempt <= retries:
256
+ folder_id = self.get_folder_id_by_path(folder_path, parent_folder_id)
247
257
  if folder_id:
248
- # Return the newly created folder's URL
249
- folder_url = f"{self._google_drive_path}/{folder_id}"
250
- return folder_url
251
- else:
252
- logger.error(f"Unable to create or find the folder path: {folder_path}")
253
- return None
258
+ logger.debug(f"Folder already exists: {folder_path}")
259
+ break
260
+
261
+ logger.warning(f"Folder not found. Attempting to create it (Attempt {attempt}/{retries}).")
262
+ try:
263
+ folder_id = self.create_folder_at_path(folder_path, parent_folder_id)
264
+ if folder_id:
265
+ logger.info(f"Successfully created folder: {folder_path}")
266
+ break
267
+ except Exception as e:
268
+ logger.error(f"Failed to create folder on attempt {attempt} due to: {e}")
269
+ raise FolderNotCreated(folder_path)
270
+
271
+ if attempt < retries:
272
+ wait_time = delay * (2 ** (attempt - 1))
273
+ logger.warning(f"Retrying in {wait_time} seconds...")
274
+ time.sleep(wait_time)
275
+
276
+ attempt += 1
277
+
278
+ if not folder_id:
279
+ error_msg = f"Unable to create or find the folder path after {retries} attempts: {folder_path}"
280
+ logger.error(error_msg)
281
+ raise FolderNotCreated(folder_path)
254
282
 
255
283
  def list_files_in_folder(self, folder_id, level=0):
256
284
  """
@@ -1229,6 +1229,10 @@ class OC(SSH):
1229
1229
  node_ips_list = node_ips.split()
1230
1230
  return dict([(k, v) for k, v in zip(node_ips_list[1::2], node_ips_list[::2])])
1231
1231
 
1232
+ def get_vm_status(self, vm_name, namespace: str = environment_variables.environment_variables_dict['namespace']):
1233
+ namespace = f'-n {namespace}' if namespace else ''
1234
+ return self.run(f"{self._cli} get vm {vm_name} {namespace}")
1235
+
1232
1236
  @logger_time_stamp
1233
1237
  def wait_for_vm_status(self, vm_name: str = '', status: VMStatus = VMStatus.Stopped,
1234
1238
  namespace: str = environment_variables.environment_variables_dict['namespace'],
@@ -1586,8 +1590,26 @@ class OC(SSH):
1586
1590
  :param output_dir:
1587
1591
  :return:
1588
1592
  """
1589
- self.run(f"oc get vmi {vm_name} -n {namespace} -o yaml > '{output_dir}/{vm_name}.yaml'")
1593
+ self.run(f"oc get vmi '{vm_name}' -n '{namespace}' -o yaml > '{output_dir}/{vm_name}.yaml'")
1590
1594
  pod_name = self.run(
1591
- f'oc get pod -n {namespace} -o jsonpath="{{.items[?(@.metadata.generateName==\'virt-launcher-{vm_name}-\')].metadata.name}}"'
1595
+ f"oc get pod -n '{namespace}' -o jsonpath=\"{{.items[?(@.metadata.generateName=='virt-launcher-{vm_name}-')].metadata.name}}\""
1592
1596
  )
1593
- self.run(f"oc get pod {pod_name} -n {namespace} -o yaml > '{output_dir}/{pod_name}.yaml'")
1597
+ self.run(f"oc get pod '{pod_name}' -n '{namespace}' -o yaml > '{output_dir}/{pod_name}.yaml'")
1598
+
1599
+ def save_describe_yml(self, vm_name, vm_access, output_dir='/tmp', namespace: str = environment_variables.environment_variables_dict['namespace']):
1600
+ """
1601
+ This method save pod and vm into yaml per namespace
1602
+ :param vm_name:
1603
+ :param vm_access: True is vm accessible
1604
+ :param namespace:
1605
+ :param output_dir:
1606
+ :return:
1607
+ """
1608
+ if vm_access:
1609
+ self.run(f"oc describe vmi '{vm_name}' -n '{namespace}' > '{output_dir}/describe_vmi_{vm_name}.yaml'")
1610
+ pod_name = self.run(
1611
+ f'oc get pod -n {namespace} -o jsonpath="{{.items[?(@.metadata.generateName==\'virt-launcher-{vm_name}-\')].metadata.name}}"'
1612
+ )
1613
+ self.run(f"oc describe pod '{pod_name}' -n '{namespace}' > '{output_dir}/describe_pod_{pod_name}.yaml'")
1614
+ else:
1615
+ self.run(f"oc describe vm '{vm_name}' -n '{namespace}' > '{output_dir}/describe_vm_{vm_name}.yaml'")
@@ -69,7 +69,7 @@ class BootstormVM(WorkloadsOperations):
69
69
  @logger_time_stamp
70
70
  def _wait_vm_access(self, vm_name: str):
71
71
  """
72
- This method verifies virtctl into VM and return vm node in success or False if failed
72
+ This method waits for VM access and returns the VM node on success, or False if it fails
73
73
  @return:
74
74
  """
75
75
  if self._oc.get_vm_node(vm_name=vm_name):
@@ -137,7 +137,7 @@ class BootstormVM(WorkloadsOperations):
137
137
  total_run_time = self._get_bootstorm_vm_total_run_time()
138
138
  self._data_dict.update({'total_run_time': total_run_time})
139
139
  # Google drive run_artifacts_url folder path
140
- if self._google_drive_path and self.get_run_artifacts_google_drive():
140
+ if self._google_drive_path:
141
141
  self._data_dict.update({'run_artifacts_url': self.get_run_artifacts_google_drive()})
142
142
  if self._es_host:
143
143
  # upload several run results
@@ -165,9 +165,9 @@ class BootstormVM(WorkloadsOperations):
165
165
  yaml=os.path.join(f'{self._run_artifacts_path}', f'{self._name}.yaml'),
166
166
  vm_name=self._vm_name)
167
167
 
168
- def _verify_single_vm(self, vm_name, retries=5, delay=10):
168
+ def _verify_single_vm_access(self, vm_name, retries=5, delay=10):
169
169
  """
170
- This method verifies the virtctl status of a single VM using a retry mechanism
170
+ This method verifies single vm access using a retry mechanism
171
171
  :param vm_name: The name of the VM to verify.
172
172
  :param retries: Number of retry attempts.
173
173
  :param delay: Time to wait (in seconds) between retries.
@@ -192,7 +192,6 @@ class BootstormVM(WorkloadsOperations):
192
192
  if attempt < retries - 1:
193
193
  time.sleep(delay)
194
194
 
195
-
196
195
  # Final update to self._data_dict after all attempts
197
196
  vm_node = self._oc.get_vm_node(vm_name) # Get the node again in case it changed
198
197
  self._data_dict = {
@@ -217,27 +216,29 @@ class BootstormVM(WorkloadsOperations):
217
216
 
218
217
  try:
219
218
  with open(error_log_path, "w") as error_log_file:
220
- error_log_file.write(str(status_message))
219
+ error_log_file.write(self._oc.get_vm_status(vm_name=vm_name) + "\n\n")
220
+ error_log_file.write(str(status_message) + "\n")
221
221
  except Exception as write_err:
222
222
  logger.error(f"Failed to write error log for {vm_name}: {write_err}")
223
223
 
224
224
  self._finalize_vm()
225
225
  return access_status
226
226
 
227
- def _verify_single_vm_wrapper(self, vm_name, return_dict):
227
+ def _verify_single_vm_access_wrapper(self, vm_name, return_dict):
228
228
  """
229
- This method verifies single vm and update vm status in return_dict
229
+ This method verifies access to a single VM, saves its YAML files, and updates the VM status in return_dict
230
230
  :param vm_name:
231
231
  :param return_dict:
232
232
  :return:
233
233
  """
234
234
  self._oc.save_to_yaml(vm_name, output_dir=self._run_artifacts_path)
235
- status = self._verify_single_vm(vm_name)
236
- return_dict[vm_name] = status
235
+ vm_access = self._verify_single_vm_access(vm_name)
236
+ self._oc.save_describe_yml(vm_name, str(vm_access).lower() == 'true', output_dir=self._run_artifacts_path)
237
+ return_dict[vm_name] = vm_access
237
238
 
238
- def _verify_vms_in_parallel(self, vm_names):
239
+ def _verify_vms_access_in_parallel(self, vm_names):
239
240
  """
240
- This method verifies vms in parallel
241
+ This method verifies VM access in parallel
241
242
  :param vm_names:
242
243
  :return:
243
244
  """
@@ -251,7 +252,7 @@ class BootstormVM(WorkloadsOperations):
251
252
  processes = []
252
253
 
253
254
  for vm_name in bulk:
254
- p = Process(target=self._verify_single_vm_wrapper, args=(vm_name, return_dict))
255
+ p = Process(target=self._verify_single_vm_access_wrapper, args=(vm_name, return_dict))
255
256
  p.start()
256
257
  processes.append(p)
257
258
 
@@ -265,64 +266,62 @@ class BootstormVM(WorkloadsOperations):
265
266
  return failure_vms
266
267
 
267
268
  def _verify_vms_access(self, delay=10):
268
- """
269
- This method verifies the virtctl SSH login for each VM, either during the upgrade or once for each VM.
270
- It prepares the data for ElasticSearch, generates a must-gather in case of an error, and uploads it to Google Drive.
271
- :param delay: delay between each iteration
272
- """
273
- try:
274
- vm_names = self._oc._get_all_vm_names()
275
- if not vm_names:
276
- raise MissingVMs("No VM names were retrieved from the cluster.")
269
+ """
270
+ This method verifies access for each VM
271
+ It prepares the data for ElasticSearch, generates a must-gather in case of an error, and uploads it to Google Drive.
272
+ :param delay: delay between each iteration
273
+ """
274
+ try:
275
+ vm_names = self._oc._get_all_vm_names()
276
+ if not vm_names:
277
+ raise MissingVMs()
278
+
279
+ upgrade_done = True
280
+ failure_vms = [] # List to store failed VM names
277
281
 
278
- upgrade_done = True
279
- failure_vms = [] # List to store failed VM names
282
+ if self._wait_for_upgrade_version:
283
+ logger.info(f"wait for ocp upgrade version: {self._wait_for_upgrade_version}")
284
+ upgrade_done = self._oc.get_cluster_status() == f'Cluster version is {self._wait_for_upgrade_version}'
285
+ start_time = time.time()
280
286
 
281
- if self._wait_for_upgrade_version:
282
- logger.info(f"wait for ocp upgrade version: {self._wait_for_upgrade_version}")
287
+ while (self._timeout <= 0 or time.time() - start_time <= self._timeout) and not upgrade_done:
288
+ failure_vms = self._verify_vms_access_in_parallel(vm_names)
283
289
  upgrade_done = self._oc.get_cluster_status() == f'Cluster version is {self._wait_for_upgrade_version}'
284
- start_time = time.time()
285
290
 
286
- while (self._timeout <= 0 or time.time() - start_time <= self._timeout) and not upgrade_done:
287
- failure_vms = self._verify_vms_in_parallel(vm_names)
288
- upgrade_done = self._oc.get_cluster_status() == f'Cluster version is {self._wait_for_upgrade_version}'
291
+ if upgrade_done:
292
+ break
289
293
 
290
- if upgrade_done:
291
- break
294
+ # Sleep between each cycle
295
+ time.sleep(delay)
296
+ else:
297
+ failure_vms = self._verify_vms_access_in_parallel(vm_names)
298
+
299
+ if self._wait_for_upgrade_version:
300
+ logger.info(f'Cluster is upgraded to: {self._wait_for_upgrade_version}')
301
+
302
+ if failure_vms:
303
+ self._oc.generate_cnv_must_gather(destination_path=self._run_artifacts_path, cnv_version=self._cnv_version)
304
+ self._oc.generate_odf_must_gather(destination_path=self._run_artifacts_path, odf_version=self._odf_version)
305
+ # Error log with details of failed VM, for catching all vm errors
306
+ logger.error(f"Failed to verify virtctl SSH login for the following VMs: {', '.join(failure_vms)}")
307
+ # Upload artifacts in validation
308
+ if self._google_drive_shared_drive_id:
309
+ self.upload_run_artifacts_to_google_drive()
310
+ elif self._endpoint_url:
311
+ self.upload_run_artifacts_to_s3()
312
+ else:
313
+ self._save_artifacts_local = True
314
+ if self._es_host:
315
+ self._data_dict.update({'run_artifacts_url': self.get_run_artifacts_google_drive(), 'failure_vms': failure_vms, 'verification_failure': True})
316
+ # upload several run results
317
+ self._upload_to_elasticsearch(index=self._es_index, kind=self._kind, status=self._status,result=self._data_dict)
318
+ # verify that data upload to elastic search according to unique uuid
319
+ self._verify_elasticsearch_data_uploaded(index=self._es_index, uuid=self._uuid)
292
320
 
293
- # Sleep between each cycle
294
- time.sleep(delay)
295
- else:
296
- failure_vms = self._verify_vms_in_parallel(vm_names)
297
-
298
- if self._wait_for_upgrade_version:
299
- logger.info(f'Cluster is upgraded to: {self._wait_for_upgrade_version}')
300
-
301
- if failure_vms:
302
- self._oc.generate_cnv_must_gather(destination_path=self._run_artifacts_path,
303
- cnv_version=self._cnv_version)
304
- self._oc.generate_odf_must_gather(destination_path=self._run_artifacts_path,
305
- odf_version=self._odf_version)
306
- # Error log with details of failed VM, for catching all vm errors
307
- logger.error(f"Failed to verify virtctl SSH login for the following VMs: {', '.join(failure_vms)}")
308
- # Upload artifacts
309
- if self._google_drive_shared_drive_id:
310
- self.upload_run_artifacts_to_google_drive()
311
- elif self._endpoint_url:
312
- self.upload_run_artifacts_to_s3()
313
- else:
314
- self._save_artifacts_local = True
315
- if self._es_host:
316
- self._data_dict.update({'run_artifacts_url': self.get_run_artifacts_google_drive(), 'failure_vms': failure_vms, 'verification_failure': True})
317
- # upload several run results
318
- self._upload_to_elasticsearch(index=self._es_index, kind=self._kind, status=self._status,result=self._data_dict)
319
- # verify that data upload to elastic search according to unique uuid
320
- self._verify_elasticsearch_data_uploaded(index=self._es_index, uuid=self._uuid)
321
-
322
- except Exception as err:
323
- # Save run artifacts logs
324
- self.save_error_logs()
325
- raise err
321
+ except Exception as err:
322
+ # Save run artifacts logs
323
+ self.save_error_logs()
324
+ raise err
326
325
 
327
326
  def _run_vm_scale(self, vm_num: str):
328
327
  """
@@ -373,6 +373,15 @@ class WorkloadsOperations:
373
373
  run_artifacts_hierarchy = self._get_run_artifacts_hierarchy(workload_name=workload)
374
374
  return self._google_drive_operation.get_drive_folder_url(folder_path=run_artifacts_hierarchy, parent_folder_id=self._google_drive_shared_drive_id)
375
375
 
376
+ def create_run_artifacts_google_drive(self):
377
+ """
378
+ This method creates google drive run artifacts folder path
379
+ :return:
380
+ """
381
+ workload = self._workload.replace('_', '-')
382
+ run_artifacts_hierarchy = self._get_run_artifacts_hierarchy(workload_name=workload)
383
+ self._google_drive_operation.create_drive_folder_url(folder_path=run_artifacts_hierarchy, parent_folder_id=self._google_drive_shared_drive_id)
384
+
376
385
  @logger_time_stamp
377
386
  def upload_run_artifacts_to_google_drive(self):
378
387
  """
@@ -524,6 +533,8 @@ class WorkloadsOperations:
524
533
  self._template.generate_yamls(scale=str(self._scale), scale_nodes=self._scale_node_list, redis=self._redis, thread_limit=self._threads_limit)
525
534
  if self._enable_prometheus_snapshot:
526
535
  self.start_prometheus()
536
+ if self._google_drive_path:
537
+ self.create_run_artifacts_google_drive()
527
538
 
528
539
  def finalize_workload(self):
529
540
  """
@@ -535,6 +546,8 @@ class WorkloadsOperations:
535
546
  self.end_prometheus()
536
547
  if self._endpoint_url:
537
548
  self.upload_run_artifacts_to_s3()
549
+ elif self._google_drive_path:
550
+ self.upload_run_artifacts_to_google_drive()
538
551
  if not self._save_artifacts_local:
539
552
  self.delete_local_artifacts()
540
553
  if self._delete_all:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: benchmark-runner
3
- Version: 1.0.806
3
+ Version: 1.0.808
4
4
  Summary: Benchmark Runner Tool
5
5
  Home-page: https://github.com/redhat-performance/benchmark-runner
6
6
  Author: Red Hat
@@ -48,6 +48,7 @@ benchmark_runner/common/elasticsearch/elasticsearch_operations.py
48
48
  benchmark_runner/common/github/__init__.py
49
49
  benchmark_runner/common/github/github_operations.py
50
50
  benchmark_runner/common/google_drive/__init__.py
51
+ benchmark_runner/common/google_drive/google_drive_exceptions.py
51
52
  benchmark_runner/common/google_drive/google_drive_operations.py
52
53
  benchmark_runner/common/grafana/__init__.py
53
54
  benchmark_runner/common/grafana/grafana_operations.py
@@ -4,7 +4,7 @@ from os import path
4
4
  from setuptools import setup, find_packages
5
5
 
6
6
 
7
- __version__ = '1.0.806' # update also .bumpversion.cfg
7
+ __version__ = '1.0.808' # update also .bumpversion.cfg
8
8
 
9
9
 
10
10
  here = path.abspath(path.dirname(__file__))