paasta-tools 1.4.2__tar.gz → 1.4.4__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.
Files changed (296) hide show
  1. {paasta-tools-1.4.2/paasta_tools.egg-info → paasta-tools-1.4.4}/PKG-INFO +1 -1
  2. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/__init__.py +1 -1
  3. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/logs.py +1 -3
  4. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/setup_kubernetes_cr.py +11 -0
  5. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/spark_tools.py +0 -21
  6. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/tron_tools.py +7 -56
  7. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/utils.py +52 -0
  8. paasta-tools-1.4.4/paasta_tools/vitesscluster_tools.py +848 -0
  9. {paasta-tools-1.4.2 → paasta-tools-1.4.4/paasta_tools.egg-info}/PKG-INFO +1 -1
  10. paasta-tools-1.4.2/paasta_tools/vitesscluster_tools.py +0 -125
  11. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/MANIFEST.in +0 -0
  12. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/README.md +0 -0
  13. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/k8s_itests/__init__.py +0 -0
  14. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/k8s_itests/test_autoscaling.py +0 -0
  15. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/k8s_itests/utils.py +0 -0
  16. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/adhoc_tools.py +0 -0
  17. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/__init__.py +0 -0
  18. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/api.py +0 -0
  19. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/api_docs/swagger.json +0 -0
  20. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/client.py +0 -0
  21. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/settings.py +0 -0
  22. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/tweens/__init__.py +0 -0
  23. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/tweens/profiling.py +0 -0
  24. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/tweens/request_logger.py +0 -0
  25. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/__init__.py +0 -0
  26. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/autoscaler.py +0 -0
  27. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/exception.py +0 -0
  28. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/flink.py +0 -0
  29. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/instance.py +0 -0
  30. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/pause_autoscaler.py +0 -0
  31. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/resources.py +0 -0
  32. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/service.py +0 -0
  33. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/api/views/version.py +0 -0
  34. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/apply_external_resources.py +0 -0
  35. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/async_utils.py +0 -0
  36. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/autoscaling/__init__.py +0 -0
  37. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/autoscaling/autoscaling_service_lib.py +0 -0
  38. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/autoscaling/forecasting.py +0 -0
  39. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/autoscaling/max_all_k8s_services.py +0 -0
  40. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/autoscaling/pause_service_autoscaler.py +0 -0
  41. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/autoscaling/utils.py +0 -0
  42. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/bounce_lib.py +0 -0
  43. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/broadcast_log_to_services.py +0 -0
  44. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cassandracluster_tools.py +0 -0
  45. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_autoscaler_max_instances.py +0 -0
  46. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_cassandracluster_services_replication.py +0 -0
  47. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_flink_services_health.py +0 -0
  48. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_kubernetes_api.py +0 -0
  49. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_kubernetes_services_replication.py +0 -0
  50. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_oom_events.py +0 -0
  51. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_services_replication_tools.py +0 -0
  52. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/check_spark_jobs.py +0 -0
  53. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cleanup_kubernetes_cr.py +0 -0
  54. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cleanup_kubernetes_crd.py +0 -0
  55. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cleanup_kubernetes_jobs.py +0 -0
  56. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cleanup_tron_namespaces.py +0 -0
  57. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/__init__.py +0 -0
  58. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cli.py +0 -0
  59. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/__init__.py +0 -0
  60. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/autoscale.py +0 -0
  61. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/check.py +0 -0
  62. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/cook_image.py +0 -0
  63. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/get_docker_image.py +0 -0
  64. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/get_image_version.py +0 -0
  65. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/get_latest_deployment.py +0 -0
  66. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/info.py +0 -0
  67. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/itest.py +0 -0
  68. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/list.py +0 -0
  69. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/list_clusters.py +0 -0
  70. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/list_deploy_queue.py +0 -0
  71. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/local_run.py +0 -0
  72. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/mark_for_deployment.py +0 -0
  73. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/mesh_status.py +0 -0
  74. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/pause_service_autoscaler.py +0 -0
  75. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/push_to_registry.py +0 -0
  76. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/remote_run.py +0 -0
  77. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/rollback.py +0 -0
  78. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/secret.py +0 -0
  79. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/security_check.py +0 -0
  80. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/spark_run.py +0 -0
  81. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/start_stop_restart.py +0 -0
  82. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/status.py +0 -0
  83. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/validate.py +0 -0
  84. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/cmds/wait_for_deployment.py +0 -0
  85. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/__init__.py +0 -0
  86. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/autosuggest.py +0 -0
  87. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/template/README.md +0 -0
  88. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/template/cookiecutter.json +0 -0
  89. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/kubernetes-PROD.yaml +0 -0
  90. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/monitoring.yaml +0 -0
  91. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/service.yaml +0 -0
  92. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/smartstack.yaml +0 -0
  93. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/fsm_cmd.py +0 -0
  94. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/paasta_tabcomplete.sh +0 -0
  95. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/adhoc_schema.json +0 -0
  96. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/autoscaling_schema.json +0 -0
  97. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/autotuned_defaults/cassandracluster_schema.json +0 -0
  98. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/autotuned_defaults/kubernetes_schema.json +0 -0
  99. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/deploy_schema.json +0 -0
  100. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/eks_schema.json +0 -0
  101. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/kubernetes_schema.json +0 -0
  102. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/rollback_schema.json +0 -0
  103. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/service_schema.json +0 -0
  104. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/smartstack_schema.json +0 -0
  105. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/schemas/tron_schema.json +0 -0
  106. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/cli/utils.py +0 -0
  107. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/clusterman.py +0 -0
  108. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/config_utils.py +0 -0
  109. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/__init__.py +0 -0
  110. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/bounce_log_latency_parser.py +0 -0
  111. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/check_manual_oapi_changes.sh +0 -0
  112. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/check_orphans.py +0 -0
  113. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/create_dynamodb_table.py +0 -0
  114. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/create_paasta_playground.py +0 -0
  115. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/emit_allocated_cpu_metrics.py +0 -0
  116. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/get_running_task_allocation.py +0 -0
  117. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/habitat_fixer.py +0 -0
  118. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/ide_helper.py +0 -0
  119. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/is_pod_healthy_in_proxy.py +0 -0
  120. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/is_pod_healthy_in_smartstack.py +0 -0
  121. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/kill_bad_containers.py +0 -0
  122. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/mass-deploy-tag.sh +0 -0
  123. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/mock_patch_checker.py +0 -0
  124. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/paasta_update_soa_memcpu.py +0 -0
  125. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/render_template.py +0 -0
  126. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/rightsizer_soaconfigs_update.py +0 -0
  127. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/service_shard_remove.py +0 -0
  128. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/service_shard_update.py +0 -0
  129. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/shared_ip_check.py +0 -0
  130. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/contrib/timeouts_metrics_prom.py +0 -0
  131. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/delete_kubernetes_deployments.py +0 -0
  132. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/deployment_utils.py +0 -0
  133. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/docker_wrapper.py +0 -0
  134. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/docker_wrapper_imports.py +0 -0
  135. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/drain_lib.py +0 -0
  136. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/dump_locally_running_services.py +0 -0
  137. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/eks_tools.py +0 -0
  138. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/envoy_tools.py +0 -0
  139. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/firewall.py +0 -0
  140. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/firewall_logging.py +0 -0
  141. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/firewall_update.py +0 -0
  142. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/flink_tools.py +0 -0
  143. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/flinkeks_tools.py +0 -0
  144. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/frameworks/__init__.py +0 -0
  145. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/frameworks/adhoc_scheduler.py +0 -0
  146. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/frameworks/constraints.py +0 -0
  147. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/frameworks/native_scheduler.py +0 -0
  148. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/frameworks/native_service_config.py +0 -0
  149. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/frameworks/task_store.py +0 -0
  150. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/generate_all_deployments +0 -0
  151. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/generate_authenticating_services.py +0 -0
  152. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/generate_deployments_for_service.py +0 -0
  153. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/generate_services_file.py +0 -0
  154. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/generate_services_yaml.py +0 -0
  155. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/hacheck.py +0 -0
  156. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/instance/__init__.py +0 -0
  157. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/instance/hpa_metrics_parser.py +0 -0
  158. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/instance/kubernetes.py +0 -0
  159. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/iptables.py +0 -0
  160. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kafkacluster_tools.py +0 -0
  161. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/__init__.py +0 -0
  162. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/application/__init__.py +0 -0
  163. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/application/controller_wrappers.py +0 -0
  164. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/application/tools.py +0 -0
  165. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/bin/__init__.py +0 -0
  166. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/bin/kubernetes_remove_evicted_pods.py +0 -0
  167. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/bin/paasta_cleanup_stale_nodes.py +0 -0
  168. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes/bin/paasta_secrets_sync.py +0 -0
  169. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/kubernetes_tools.py +0 -0
  170. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/list_kubernetes_service_instances.py +0 -0
  171. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/list_tron_namespaces.py +0 -0
  172. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/log_task_lifecycle_events.py +0 -0
  173. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/long_running_service_tools.py +0 -0
  174. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mac_address.py +0 -0
  175. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/marathon_dashboard.py +0 -0
  176. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/__init__.py +0 -0
  177. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/cfg.py +0 -0
  178. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/cluster.py +0 -0
  179. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/exceptions.py +0 -0
  180. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/framework.py +0 -0
  181. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/log.py +0 -0
  182. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/master.py +0 -0
  183. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/mesos_file.py +0 -0
  184. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/parallel.py +0 -0
  185. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/slave.py +0 -0
  186. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/task.py +0 -0
  187. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/util.py +0 -0
  188. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos/zookeeper.py +0 -0
  189. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos_maintenance.py +0 -0
  190. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/mesos_tools.py +0 -0
  191. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/metrics/__init__.py +0 -0
  192. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/metrics/metastatus_lib.py +0 -0
  193. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/metrics/metrics_lib.py +0 -0
  194. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/monitoring/__init__.py +0 -0
  195. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/monitoring/check_k8s_api_performance.py +0 -0
  196. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/monitoring/kill_orphaned_docker_containers.py +0 -0
  197. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/monitoring_tools.py +0 -0
  198. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/monkrelaycluster_tools.py +0 -0
  199. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/nrtsearchservice_tools.py +0 -0
  200. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/nrtsearchserviceeks_tools.py +0 -0
  201. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/oom_logger.py +0 -0
  202. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paasta_deploy_tron_jobs +0 -0
  203. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paasta_execute_docker_command.py +0 -0
  204. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paasta_native_serviceinit.py +0 -0
  205. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paasta_remote_run.py +0 -0
  206. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paasta_service_config_loader.py +0 -0
  207. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/__init__.py +0 -0
  208. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/api/__init__.py +0 -0
  209. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/api/autoscaler_api.py +0 -0
  210. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/api/default_api.py +0 -0
  211. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/api/resources_api.py +0 -0
  212. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/api/service_api.py +0 -0
  213. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/api_client.py +0 -0
  214. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/apis/__init__.py +0 -0
  215. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/configuration.py +0 -0
  216. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/exceptions.py +0 -0
  217. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/__init__.py +0 -0
  218. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/adhoc_launch_history.py +0 -0
  219. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/autoscaler_count_msg.py +0 -0
  220. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/deploy_queue.py +0 -0
  221. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/deploy_queue_service_instance.py +0 -0
  222. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/envoy_backend.py +0 -0
  223. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/envoy_location.py +0 -0
  224. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/envoy_status.py +0 -0
  225. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/flink_cluster_overview.py +0 -0
  226. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/flink_config.py +0 -0
  227. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/flink_job.py +0 -0
  228. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/flink_job_details.py +0 -0
  229. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/flink_jobs.py +0 -0
  230. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/float_and_error.py +0 -0
  231. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/hpa_metric.py +0 -0
  232. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/inline_object.py +0 -0
  233. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/inline_response200.py +0 -0
  234. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/inline_response2001.py +0 -0
  235. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_bounce_status.py +0 -0
  236. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_mesh_status.py +0 -0
  237. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status.py +0 -0
  238. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_adhoc.py +0 -0
  239. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_cassandracluster.py +0 -0
  240. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_flink.py +0 -0
  241. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_kafkacluster.py +0 -0
  242. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_kubernetes.py +0 -0
  243. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_kubernetes_autoscaling_status.py +0 -0
  244. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_kubernetes_v2.py +0 -0
  245. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_status_tron.py +0 -0
  246. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/instance_tasks.py +0 -0
  247. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/integer_and_error.py +0 -0
  248. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_container.py +0 -0
  249. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_container_v2.py +0 -0
  250. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_healthcheck.py +0 -0
  251. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_pod.py +0 -0
  252. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_pod_event.py +0 -0
  253. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_pod_v2.py +0 -0
  254. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_replica_set.py +0 -0
  255. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/kubernetes_version.py +0 -0
  256. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/resource.py +0 -0
  257. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/resource_item.py +0 -0
  258. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/resource_value.py +0 -0
  259. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/smartstack_backend.py +0 -0
  260. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/smartstack_location.py +0 -0
  261. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/smartstack_status.py +0 -0
  262. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model/task_tail_lines.py +0 -0
  263. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/model_utils.py +0 -0
  264. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/models/__init__.py +0 -0
  265. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/paastaapi/rest.py +0 -0
  266. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/prune_completed_pods.py +0 -0
  267. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/puppet_service_tools.py +0 -0
  268. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/py.typed +0 -0
  269. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/remote_git.py +0 -0
  270. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/run-paasta-api-in-dev-mode.py +0 -0
  271. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/run-paasta-api-playground.py +0 -0
  272. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/secret_providers/__init__.py +0 -0
  273. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/secret_providers/vault.py +0 -0
  274. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/secret_tools.py +0 -0
  275. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/setup_istio_mesh.py +0 -0
  276. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/setup_kubernetes_crd.py +0 -0
  277. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/setup_kubernetes_internal_crd.py +0 -0
  278. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/setup_kubernetes_job.py +0 -0
  279. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/setup_prometheus_adapter_config.py +0 -0
  280. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/setup_tron_namespace.py +0 -0
  281. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/slack.py +0 -0
  282. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/smartstack_tools.py +0 -0
  283. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/synapse_srv_namespaces_fact.py +0 -0
  284. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/tron/__init__.py +0 -0
  285. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/tron/client.py +0 -0
  286. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/tron/tron_command_context.py +0 -0
  287. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools/tron/tron_timeutils.py +0 -0
  288. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools.egg-info/SOURCES.txt +0 -0
  289. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools.egg-info/dependency_links.txt +0 -0
  290. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools.egg-info/entry_points.txt +0 -0
  291. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools.egg-info/requires.txt +0 -0
  292. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/paasta_tools.egg-info/top_level.txt +0 -0
  293. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/pyproject.toml +0 -0
  294. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/requirements-minimal.txt +0 -0
  295. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/setup.cfg +0 -0
  296. {paasta-tools-1.4.2 → paasta-tools-1.4.4}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: paasta-tools
3
- Version: 1.4.2
3
+ Version: 1.4.4
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Home-page: UNKNOWN
6
6
  Author: Compute Infrastructure @ Yelp
@@ -17,4 +17,4 @@
17
17
  # setup phase, the dependencies may not exist on disk yet.
18
18
  #
19
19
  # Don't bump version manually. See `make release` docs in ./Makefile
20
- __version__ = "1.4.2"
20
+ __version__ = "1.4.4"
@@ -1195,12 +1195,10 @@ class VectorLogsReader(LogReader):
1195
1195
  stream_name = get_log_name_for_service(service, prefix="app_output")
1196
1196
  superregion = self.get_superregion_for_cluster(clusters[0])
1197
1197
  reader = S3LogsReader(superregion)
1198
- start_date = start_time.date()
1199
- end_date = end_time.date()
1200
1198
  aggregated_logs: List[Dict[str, Any]] = []
1201
1199
 
1202
1200
  for line in reader.get_log_reader(
1203
- log_name=stream_name, min_date=start_date, max_date=end_date
1201
+ log_name=stream_name, start_datetime=start_time, end_datetime=end_time
1204
1202
  ):
1205
1203
  if paasta_log_line_passes_filter(
1206
1204
  line,
@@ -49,11 +49,15 @@ from paasta_tools.utils import get_config_hash
49
49
  from paasta_tools.utils import get_git_sha_from_dockerurl
50
50
  from paasta_tools.utils import load_all_configs
51
51
  from paasta_tools.utils import load_system_paasta_config
52
+ from paasta_tools.vitesscluster_tools import load_vitess_service_instance_configs
52
53
 
53
54
 
54
55
  log = logging.getLogger(__name__)
55
56
 
56
57
 
58
+ INSTANCE_TYPE_TO_CONFIG_LOADER = {"vitesscluster": load_vitess_service_instance_configs}
59
+
60
+
57
61
  class StdoutKubeClient:
58
62
  """Replace all destructive operations in Kubernetes APIs with
59
63
  writing out YAML to stdout."""
@@ -352,6 +356,13 @@ def reconcile_kubernetes_resource(
352
356
  load_deployments=True,
353
357
  soa_dir=DEFAULT_SOA_DIR,
354
358
  )
359
+ if crd.file_prefix in INSTANCE_TYPE_TO_CONFIG_LOADER:
360
+ config = INSTANCE_TYPE_TO_CONFIG_LOADER[crd.file_prefix](
361
+ service=service,
362
+ instance=inst,
363
+ cluster=cluster,
364
+ soa_dir=DEFAULT_SOA_DIR,
365
+ )
355
366
  git_sha = get_git_sha_from_dockerurl(soa_config.get_docker_url(), long=True)
356
367
  formatted_resource = format_custom_resource(
357
368
  instance_config=config,
@@ -6,7 +6,6 @@ from typing import Any
6
6
  from typing import cast
7
7
  from typing import Dict
8
8
  from typing import List
9
- from typing import Literal
10
9
  from typing import Mapping
11
10
  from typing import Set
12
11
 
@@ -24,7 +23,6 @@ SPARK_DRIVER_POOL = "stable"
24
23
  SPARK_JOB_USER = "TRON"
25
24
  SPARK_PROMETHEUS_SHARD = "ml-compute"
26
25
  SPARK_DNS_POD_TEMPLATE = "/nail/srv/configs/spark_dns_pod_template.yaml"
27
- MEM_MULTIPLIER = {"k": 1024, "m": 1024**2, "g": 1024**3, "t": 1024**4}
28
26
 
29
27
  log = logging.getLogger(__name__)
30
28
 
@@ -249,22 +247,3 @@ def get_spark_driver_monitoring_labels(
249
247
  "spark.yelp.com/driver_ui_port": ui_port_str,
250
248
  }
251
249
  return labels
252
-
253
-
254
- def get_spark_memory_in_unit(mem: str, unit: Literal["k", "m", "g", "t"]) -> float:
255
- """
256
- Converts Spark memory to the desired unit.
257
- mem is the same format as JVM memory strings: just number or number followed by 'k', 'm', 'g' or 't'.
258
- unit can be 'k', 'm', 'g' or 't'.
259
- Returns memory as a float converted to the desired unit.
260
- """
261
- try:
262
- memory_bytes = float(mem)
263
- except ValueError:
264
- try:
265
- memory_bytes = float(mem[:-1]) * MEM_MULTIPLIER[mem[-1]]
266
- except (ValueError, IndexError):
267
- print(f"Unable to parse memory value {mem}. Defaulting to 2 GB.")
268
- memory_bytes = 2147483648 # default to 2 GB
269
- memory_unit = memory_bytes / MEM_MULTIPLIER[unit]
270
- return memory_unit
@@ -282,35 +282,6 @@ class TronActionConfig(InstanceConfig):
282
282
  self.job, self.action = decompose_instance(instance)
283
283
  # Indicate whether this config object is created for validation
284
284
  self.for_validation = for_validation
285
- self.action_spark_config = None
286
- if self.get_executor() == "spark":
287
- # build the complete Spark configuration
288
- # TODO: add conditional check for Spark specific commands spark-submit, pyspark etc ?
289
- self.action_spark_config = self.build_spark_config()
290
-
291
- def get_cpus(self) -> float:
292
- # set Spark driver pod CPU if it is specified by Spark arguments
293
- if (
294
- self.action_spark_config
295
- and "spark.driver.cores" in self.action_spark_config
296
- ):
297
- return float(self.action_spark_config["spark.driver.cores"])
298
- # we fall back to this default if there's no spark.driver.cores config
299
- return super().get_cpus()
300
-
301
- def get_mem(self) -> float:
302
- # set Spark driver pod memory if it is specified by Spark arguments
303
- if (
304
- self.action_spark_config
305
- and "spark.driver.memory" in self.action_spark_config
306
- ):
307
- return int(
308
- spark_tools.get_spark_memory_in_unit(
309
- self.action_spark_config["spark.driver.memory"], "m"
310
- )
311
- )
312
- # we fall back to this default if there's no spark.driver.memory config
313
- return super().get_mem()
314
285
 
315
286
  def build_spark_config(self) -> Dict[str, str]:
316
287
  system_paasta_config = load_system_paasta_config()
@@ -469,6 +440,7 @@ class TronActionConfig(InstanceConfig):
469
440
  system_paasta_config: Optional["SystemPaastaConfig"] = None,
470
441
  ) -> Dict[str, str]:
471
442
  env = super().get_env(system_paasta_config=system_paasta_config)
443
+
472
444
  if self.get_executor() == "spark":
473
445
  # Required by some sdks like boto3 client. Throws NoRegionError otherwise.
474
446
  # AWS_REGION takes precedence if set.
@@ -633,20 +605,6 @@ class TronActionConfig(InstanceConfig):
633
605
  error_msgs.append(
634
606
  f"{self.get_job_name()}.{self.get_action_name()} must have a deploy_group set"
635
607
  )
636
- # We are not allowing users to specify `cpus` and `mem` configuration if the action is a Spark job
637
- # with driver running on k8s (executor: spark), because we derive these values from `spark.driver.cores`
638
- # and `spark.driver.memory` in order to avoid confusion.
639
- if self.get_executor() == "spark":
640
- if "cpus" in self.config_dict:
641
- error_msgs.append(
642
- f"{self.get_job_name()}.{self.get_action_name()} is a Spark job. `cpus` config is not allowed. "
643
- f"Please specify the driver cores using `spark.driver.cores`."
644
- )
645
- if "mem" in self.config_dict:
646
- error_msgs.append(
647
- f"{self.get_job_name()}.{self.get_action_name()} is a Spark job. `mem` config is not allowed. "
648
- f"Please specify the driver memory using `spark.driver.memory`."
649
- )
650
608
  return error_msgs
651
609
 
652
610
  def get_pool(self) -> str:
@@ -1017,26 +975,21 @@ def format_tron_action_dict(action_config: TronActionConfig):
1017
975
  if executor == "spark":
1018
976
  is_mrjob = action_config.config_dict.get("mrjob", False)
1019
977
  system_paasta_config = load_system_paasta_config()
1020
- # inject additional Spark configs in case of Spark commands
978
+ # inject spark configs to the original spark-submit command
979
+ spark_config = action_config.build_spark_config()
1021
980
  result["command"] = spark_tools.build_spark_command(
1022
981
  result["command"],
1023
- action_config.action_spark_config,
982
+ spark_config,
1024
983
  is_mrjob,
1025
984
  action_config.config_dict.get(
1026
985
  "max_runtime", spark_tools.DEFAULT_SPARK_RUNTIME_TIMEOUT
1027
986
  ),
1028
987
  )
1029
- # point to the KUBECONFIG needed by Spark driver
1030
988
  result["env"]["KUBECONFIG"] = system_paasta_config.get_spark_kubeconfig()
1031
-
1032
989
  # spark, unlike normal batches, needs to expose several ports for things like the spark
1033
990
  # ui and for executor->driver communication
1034
991
  result["ports"] = list(
1035
- set(
1036
- spark_tools.get_spark_ports_from_config(
1037
- action_config.action_spark_config
1038
- )
1039
- )
992
+ set(spark_tools.get_spark_ports_from_config(spark_config))
1040
993
  )
1041
994
  # mount KUBECONFIG file for Spark drivers to communicate with EKS cluster
1042
995
  extra_volumes.append(
@@ -1050,12 +1003,10 @@ def format_tron_action_dict(action_config: TronActionConfig):
1050
1003
  )
1051
1004
  # Add pod annotations and labels for Spark monitoring metrics
1052
1005
  monitoring_annotations = (
1053
- spark_tools.get_spark_driver_monitoring_annotations(
1054
- action_config.action_spark_config
1055
- )
1006
+ spark_tools.get_spark_driver_monitoring_annotations(spark_config)
1056
1007
  )
1057
1008
  monitoring_labels = spark_tools.get_spark_driver_monitoring_labels(
1058
- action_config.action_spark_config
1009
+ spark_config
1059
1010
  )
1060
1011
  result["annotations"].update(monitoring_annotations)
1061
1012
  result["labels"].update(monitoring_labels)
@@ -2022,6 +2022,12 @@ class SystemPaastaConfigDict(TypedDict, total=False):
2022
2022
  use_multiple_log_readers: Optional[List[str]]
2023
2023
  service_auth_token_settings: ProjectedSAVolume
2024
2024
  always_authenticating_services: List[str]
2025
+ mysql_port_mappings: Dict
2026
+ vitess_images: Dict
2027
+ superregion_to_region_mapping: Dict
2028
+ vitess_tablet_types: List[str]
2029
+ vitess_tablet_pool_type_mapping: Dict
2030
+ vitess_throttling_config: Dict
2025
2031
 
2026
2032
 
2027
2033
  def load_system_paasta_config(
@@ -2733,6 +2739,52 @@ class SystemPaastaConfig:
2733
2739
  def get_always_authenticating_services(self) -> List[str]:
2734
2740
  return self.config_dict.get("always_authenticating_services", [])
2735
2741
 
2742
+ def get_mysql_port_mappings(self) -> Dict:
2743
+ return self.config_dict.get("mysql_port_mappings", {})
2744
+
2745
+ def get_vitess_images(self) -> Dict:
2746
+ return self.config_dict.get(
2747
+ "vitess_images",
2748
+ {
2749
+ "vtctld_image": "docker-paasta.yelpcorp.com:443/vitess_base:v16.0.3",
2750
+ "vtgate_image": "docker-paasta.yelpcorp.com:443/vitess_base:v16.0.3",
2751
+ "vttablet_image": "docker-paasta.yelpcorp.com:443/vitess_base:v16.0.3",
2752
+ "vtadmin_image": "docker-paasta.yelpcorp.com:443/vtadmin:v16.0.3",
2753
+ },
2754
+ )
2755
+
2756
+ def get_superregion_to_region_mapping(self) -> Dict:
2757
+ return self.config_dict.get("superregion_to_region_mapping", {})
2758
+
2759
+ def get_vitess_tablet_types(self) -> List:
2760
+ return self.config_dict.get("vitess_tablet_types", ["primary", "migration"])
2761
+
2762
+ def get_vitess_tablet_pool_type_mapping(self) -> Dict:
2763
+ return self.config_dict.get("vitess_tablet_pool_type_mapping", {})
2764
+
2765
+ def get_vitess_throttling_config(self) -> Dict:
2766
+ return self.config_dict.get(
2767
+ "vitess_throttling_config",
2768
+ {
2769
+ "migration": {
2770
+ "throttle_query_table": "migration_replication_delay",
2771
+ "throttle_metrics_threshold": "7200",
2772
+ },
2773
+ "read": {
2774
+ "throttle_query_table": "read_replication_delay",
2775
+ "throttle_metrics_threshold": "3",
2776
+ },
2777
+ "reporting": {
2778
+ "throttle_query_table": "reporting_replication_delay",
2779
+ "throttle_metrics_threshold": "7200",
2780
+ },
2781
+ "primary": {
2782
+ "throttle_query_table": "read_replication_delay",
2783
+ "throttle_metrics_threshold": "3",
2784
+ },
2785
+ },
2786
+ )
2787
+
2736
2788
 
2737
2789
  def _run(
2738
2790
  command: Union[str, List[str]],