paasta-tools 1.4.16__tar.gz → 1.4.18__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.16/paasta_tools.egg-info → paasta-tools-1.4.18}/PKG-INFO +1 -1
  2. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/__init__.py +1 -1
  3. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/local_run.py +17 -0
  4. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/tron_schema.json +6 -6
  5. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/utils.py +49 -0
  6. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes_tools.py +2 -2
  7. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/tron_tools.py +12 -0
  8. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/utils.py +4 -0
  9. {paasta-tools-1.4.16 → paasta-tools-1.4.18/paasta_tools.egg-info}/PKG-INFO +1 -1
  10. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/MANIFEST.in +0 -0
  11. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/README.md +0 -0
  12. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/k8s_itests/__init__.py +0 -0
  13. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/k8s_itests/test_autoscaling.py +0 -0
  14. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/k8s_itests/utils.py +0 -0
  15. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/adhoc_tools.py +0 -0
  16. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/__init__.py +0 -0
  17. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/api.py +0 -0
  18. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/api_docs/swagger.json +0 -0
  19. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/client.py +0 -0
  20. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/settings.py +0 -0
  21. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/tweens/__init__.py +0 -0
  22. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/tweens/profiling.py +0 -0
  23. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/tweens/request_logger.py +0 -0
  24. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/__init__.py +0 -0
  25. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/autoscaler.py +0 -0
  26. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/exception.py +0 -0
  27. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/flink.py +0 -0
  28. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/instance.py +0 -0
  29. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/pause_autoscaler.py +0 -0
  30. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/resources.py +0 -0
  31. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/service.py +0 -0
  32. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/api/views/version.py +0 -0
  33. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/apply_external_resources.py +0 -0
  34. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/async_utils.py +0 -0
  35. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/autoscaling/__init__.py +0 -0
  36. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/autoscaling/autoscaling_service_lib.py +0 -0
  37. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/autoscaling/forecasting.py +0 -0
  38. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/autoscaling/max_all_k8s_services.py +0 -0
  39. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/autoscaling/pause_service_autoscaler.py +0 -0
  40. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/autoscaling/utils.py +0 -0
  41. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/bounce_lib.py +0 -0
  42. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/broadcast_log_to_services.py +0 -0
  43. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cassandracluster_tools.py +0 -0
  44. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_autoscaler_max_instances.py +0 -0
  45. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_cassandracluster_services_replication.py +0 -0
  46. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_flink_services_health.py +0 -0
  47. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_kubernetes_api.py +0 -0
  48. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_kubernetes_services_replication.py +0 -0
  49. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_oom_events.py +0 -0
  50. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_services_replication_tools.py +0 -0
  51. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/check_spark_jobs.py +0 -0
  52. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cleanup_kubernetes_cr.py +0 -0
  53. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cleanup_kubernetes_crd.py +0 -0
  54. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cleanup_kubernetes_jobs.py +0 -0
  55. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cleanup_tron_namespaces.py +0 -0
  56. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/__init__.py +0 -0
  57. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cli.py +0 -0
  58. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/__init__.py +0 -0
  59. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/autoscale.py +0 -0
  60. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/check.py +0 -0
  61. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/cook_image.py +0 -0
  62. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/get_docker_image.py +0 -0
  63. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/get_image_version.py +0 -0
  64. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/get_latest_deployment.py +0 -0
  65. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/info.py +0 -0
  66. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/itest.py +0 -0
  67. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/list.py +0 -0
  68. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/list_clusters.py +0 -0
  69. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/list_deploy_queue.py +0 -0
  70. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/logs.py +0 -0
  71. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/mark_for_deployment.py +0 -0
  72. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/mesh_status.py +0 -0
  73. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/pause_service_autoscaler.py +0 -0
  74. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/push_to_registry.py +0 -0
  75. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/remote_run.py +0 -0
  76. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/rollback.py +0 -0
  77. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/secret.py +0 -0
  78. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/security_check.py +0 -0
  79. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/spark_run.py +0 -0
  80. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/start_stop_restart.py +0 -0
  81. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/status.py +0 -0
  82. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/validate.py +0 -0
  83. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/cmds/wait_for_deployment.py +0 -0
  84. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/__init__.py +0 -0
  85. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/autosuggest.py +0 -0
  86. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/template/README.md +0 -0
  87. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/template/cookiecutter.json +0 -0
  88. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/kubernetes-PROD.yaml +0 -0
  89. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/monitoring.yaml +0 -0
  90. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/service.yaml +0 -0
  91. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/smartstack.yaml +0 -0
  92. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/fsm_cmd.py +0 -0
  93. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/paasta_tabcomplete.sh +0 -0
  94. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/adhoc_schema.json +0 -0
  95. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/autoscaling_schema.json +0 -0
  96. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/autotuned_defaults/cassandracluster_schema.json +0 -0
  97. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/autotuned_defaults/kubernetes_schema.json +0 -0
  98. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/deploy_schema.json +0 -0
  99. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/eks_schema.json +0 -0
  100. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/kubernetes_schema.json +0 -0
  101. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/rollback_schema.json +0 -0
  102. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/service_schema.json +0 -0
  103. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/cli/schemas/smartstack_schema.json +0 -0
  104. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/clusterman.py +0 -0
  105. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/config_utils.py +0 -0
  106. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/__init__.py +0 -0
  107. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/bounce_log_latency_parser.py +0 -0
  108. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/check_manual_oapi_changes.sh +0 -0
  109. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/check_orphans.py +0 -0
  110. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/create_dynamodb_table.py +0 -0
  111. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/create_paasta_playground.py +0 -0
  112. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/emit_allocated_cpu_metrics.py +0 -0
  113. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/get_running_task_allocation.py +0 -0
  114. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/habitat_fixer.py +0 -0
  115. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/ide_helper.py +0 -0
  116. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/is_pod_healthy_in_proxy.py +0 -0
  117. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/is_pod_healthy_in_smartstack.py +0 -0
  118. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/kill_bad_containers.py +0 -0
  119. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/mass-deploy-tag.sh +0 -0
  120. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/mock_patch_checker.py +0 -0
  121. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/paasta_update_soa_memcpu.py +0 -0
  122. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/render_template.py +0 -0
  123. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/rightsizer_soaconfigs_update.py +0 -0
  124. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/service_shard_remove.py +0 -0
  125. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/service_shard_update.py +0 -0
  126. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/shared_ip_check.py +0 -0
  127. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/contrib/timeouts_metrics_prom.py +0 -0
  128. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/delete_kubernetes_deployments.py +0 -0
  129. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/deployment_utils.py +0 -0
  130. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/docker_wrapper.py +0 -0
  131. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/docker_wrapper_imports.py +0 -0
  132. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/drain_lib.py +0 -0
  133. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/dump_locally_running_services.py +0 -0
  134. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/eks_tools.py +0 -0
  135. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/envoy_tools.py +0 -0
  136. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/firewall.py +0 -0
  137. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/firewall_logging.py +0 -0
  138. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/firewall_update.py +0 -0
  139. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/flink_tools.py +0 -0
  140. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/flinkeks_tools.py +0 -0
  141. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/frameworks/__init__.py +0 -0
  142. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/frameworks/adhoc_scheduler.py +0 -0
  143. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/frameworks/constraints.py +0 -0
  144. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/frameworks/native_scheduler.py +0 -0
  145. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/frameworks/native_service_config.py +0 -0
  146. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/frameworks/task_store.py +0 -0
  147. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/generate_all_deployments +0 -0
  148. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/generate_authenticating_services.py +0 -0
  149. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/generate_deployments_for_service.py +0 -0
  150. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/generate_services_file.py +0 -0
  151. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/generate_services_yaml.py +0 -0
  152. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/hacheck.py +0 -0
  153. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/instance/__init__.py +0 -0
  154. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/instance/hpa_metrics_parser.py +0 -0
  155. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/instance/kubernetes.py +0 -0
  156. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/iptables.py +0 -0
  157. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kafkacluster_tools.py +0 -0
  158. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/__init__.py +0 -0
  159. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/application/__init__.py +0 -0
  160. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/application/controller_wrappers.py +0 -0
  161. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/application/tools.py +0 -0
  162. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/bin/__init__.py +0 -0
  163. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/bin/kubernetes_remove_evicted_pods.py +0 -0
  164. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/bin/paasta_cleanup_stale_nodes.py +0 -0
  165. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/kubernetes/bin/paasta_secrets_sync.py +0 -0
  166. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/list_kubernetes_service_instances.py +0 -0
  167. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/list_tron_namespaces.py +0 -0
  168. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/log_task_lifecycle_events.py +0 -0
  169. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/long_running_service_tools.py +0 -0
  170. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mac_address.py +0 -0
  171. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/marathon_dashboard.py +0 -0
  172. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/__init__.py +0 -0
  173. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/cfg.py +0 -0
  174. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/cluster.py +0 -0
  175. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/exceptions.py +0 -0
  176. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/framework.py +0 -0
  177. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/log.py +0 -0
  178. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/master.py +0 -0
  179. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/mesos_file.py +0 -0
  180. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/parallel.py +0 -0
  181. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/slave.py +0 -0
  182. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/task.py +0 -0
  183. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/util.py +0 -0
  184. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos/zookeeper.py +0 -0
  185. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos_maintenance.py +0 -0
  186. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/mesos_tools.py +0 -0
  187. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/metrics/__init__.py +0 -0
  188. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/metrics/metastatus_lib.py +0 -0
  189. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/metrics/metrics_lib.py +0 -0
  190. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/monitoring/__init__.py +0 -0
  191. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/monitoring/check_k8s_api_performance.py +0 -0
  192. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/monitoring/kill_orphaned_docker_containers.py +0 -0
  193. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/monitoring_tools.py +0 -0
  194. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/monkrelaycluster_tools.py +0 -0
  195. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/nrtsearchservice_tools.py +0 -0
  196. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/nrtsearchserviceeks_tools.py +0 -0
  197. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/oom_logger.py +0 -0
  198. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paasta_deploy_tron_jobs +0 -0
  199. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paasta_execute_docker_command.py +0 -0
  200. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paasta_native_serviceinit.py +0 -0
  201. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paasta_remote_run.py +0 -0
  202. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paasta_service_config_loader.py +0 -0
  203. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/__init__.py +0 -0
  204. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/api/__init__.py +0 -0
  205. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/api/autoscaler_api.py +0 -0
  206. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/api/default_api.py +0 -0
  207. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/api/resources_api.py +0 -0
  208. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/api/service_api.py +0 -0
  209. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/api_client.py +0 -0
  210. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/apis/__init__.py +0 -0
  211. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/configuration.py +0 -0
  212. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/exceptions.py +0 -0
  213. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/__init__.py +0 -0
  214. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/adhoc_launch_history.py +0 -0
  215. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/autoscaler_count_msg.py +0 -0
  216. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/deploy_queue.py +0 -0
  217. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/deploy_queue_service_instance.py +0 -0
  218. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/envoy_backend.py +0 -0
  219. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/envoy_location.py +0 -0
  220. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/envoy_status.py +0 -0
  221. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/flink_cluster_overview.py +0 -0
  222. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/flink_config.py +0 -0
  223. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/flink_job.py +0 -0
  224. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/flink_job_details.py +0 -0
  225. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/flink_jobs.py +0 -0
  226. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/float_and_error.py +0 -0
  227. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/hpa_metric.py +0 -0
  228. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/inline_object.py +0 -0
  229. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/inline_response200.py +0 -0
  230. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/inline_response2001.py +0 -0
  231. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_bounce_status.py +0 -0
  232. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_mesh_status.py +0 -0
  233. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status.py +0 -0
  234. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_adhoc.py +0 -0
  235. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_cassandracluster.py +0 -0
  236. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_flink.py +0 -0
  237. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_kafkacluster.py +0 -0
  238. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_kubernetes.py +0 -0
  239. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_kubernetes_autoscaling_status.py +0 -0
  240. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_kubernetes_v2.py +0 -0
  241. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_tron.py +0 -0
  242. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_status_vitesscluster.py +0 -0
  243. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/instance_tasks.py +0 -0
  244. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/integer_and_error.py +0 -0
  245. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_container.py +0 -0
  246. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_container_v2.py +0 -0
  247. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_healthcheck.py +0 -0
  248. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_pod.py +0 -0
  249. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_pod_event.py +0 -0
  250. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_pod_v2.py +0 -0
  251. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_replica_set.py +0 -0
  252. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/kubernetes_version.py +0 -0
  253. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/resource.py +0 -0
  254. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/resource_item.py +0 -0
  255. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/resource_value.py +0 -0
  256. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/smartstack_backend.py +0 -0
  257. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/smartstack_location.py +0 -0
  258. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/smartstack_status.py +0 -0
  259. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model/task_tail_lines.py +0 -0
  260. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/model_utils.py +0 -0
  261. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/models/__init__.py +0 -0
  262. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/paastaapi/rest.py +0 -0
  263. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/prune_completed_pods.py +0 -0
  264. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/puppet_service_tools.py +0 -0
  265. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/py.typed +0 -0
  266. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/remote_git.py +0 -0
  267. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/run-paasta-api-in-dev-mode.py +0 -0
  268. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/run-paasta-api-playground.py +0 -0
  269. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/secret_providers/__init__.py +0 -0
  270. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/secret_providers/vault.py +0 -0
  271. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/secret_tools.py +0 -0
  272. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/setup_istio_mesh.py +0 -0
  273. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/setup_kubernetes_cr.py +0 -0
  274. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/setup_kubernetes_crd.py +0 -0
  275. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/setup_kubernetes_internal_crd.py +0 -0
  276. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/setup_kubernetes_job.py +0 -0
  277. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/setup_prometheus_adapter_config.py +0 -0
  278. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/setup_tron_namespace.py +0 -0
  279. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/slack.py +0 -0
  280. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/smartstack_tools.py +0 -0
  281. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/spark_tools.py +0 -0
  282. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/synapse_srv_namespaces_fact.py +0 -0
  283. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/tron/__init__.py +0 -0
  284. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/tron/client.py +0 -0
  285. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/tron/tron_command_context.py +0 -0
  286. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/tron/tron_timeutils.py +0 -0
  287. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools/vitesscluster_tools.py +0 -0
  288. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools.egg-info/SOURCES.txt +0 -0
  289. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools.egg-info/dependency_links.txt +0 -0
  290. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools.egg-info/entry_points.txt +0 -0
  291. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools.egg-info/requires.txt +0 -0
  292. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/paasta_tools.egg-info/top_level.txt +0 -0
  293. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/pyproject.toml +0 -0
  294. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/requirements-minimal.txt +0 -0
  295. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/setup.cfg +0 -0
  296. {paasta-tools-1.4.16 → paasta-tools-1.4.18}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: paasta-tools
3
- Version: 1.4.16
3
+ Version: 1.4.18
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.16"
20
+ __version__ = "1.4.18"
@@ -38,6 +38,7 @@ from paasta_tools.cli.cmds.check import makefile_responds_to
38
38
  from paasta_tools.cli.cmds.cook_image import paasta_cook_image
39
39
  from paasta_tools.cli.utils import figure_out_service_name
40
40
  from paasta_tools.cli.utils import get_instance_config
41
+ from paasta_tools.cli.utils import get_service_auth_token
41
42
  from paasta_tools.cli.utils import lazy_choices_completer
42
43
  from paasta_tools.cli.utils import list_instances
43
44
  from paasta_tools.cli.utils import pick_random_port
@@ -506,6 +507,17 @@ def add_subparser(subparsers):
506
507
  required=False,
507
508
  default=False,
508
509
  )
510
+ list_parser.add_argument(
511
+ "--use-service-auth-token",
512
+ help=(
513
+ "Acquire service authentication token for the underlying instance,"
514
+ " and set it in the container environment"
515
+ ),
516
+ action="store_true",
517
+ dest="use_service_auth_token",
518
+ required=False,
519
+ default=False,
520
+ )
509
521
  list_parser.add_argument(
510
522
  "--sha",
511
523
  help=(
@@ -817,6 +829,7 @@ def run_docker_container(
817
829
  assume_role_arn="",
818
830
  use_okta_role=False,
819
831
  assume_role_aws_account: Optional[str] = None,
832
+ use_service_auth_token: bool = False,
820
833
  ):
821
834
  """docker-py has issues running a container with a TTY attached, so for
822
835
  consistency we execute 'docker run' directly in both interactive and
@@ -906,6 +919,9 @@ def run_docker_container(
906
919
  )
907
920
  environment.update(aws_creds)
908
921
 
922
+ if use_service_auth_token:
923
+ environment["YELP_SVC_AUTHZ_TOKEN"] = get_service_auth_token()
924
+
909
925
  local_run_environment = get_local_run_environment_vars(
910
926
  instance_config=instance_config, port0=chosen_port, framework=framework
911
927
  )
@@ -1251,6 +1267,7 @@ def configure_and_run_docker_container(
1251
1267
  assume_role_arn=args.assume_role_arn,
1252
1268
  assume_role_aws_account=assume_role_aws_account,
1253
1269
  use_okta_role=args.use_okta_role,
1270
+ use_service_auth_token=args.use_service_auth_token,
1254
1271
  )
1255
1272
 
1256
1273
 
@@ -383,18 +383,18 @@
383
383
  },
384
384
  "spark.executor.memory": {
385
385
  "type": "string",
386
- "pattern": "^[1-9]+[0-9]*[kmg]$"
386
+ "pattern": "^[1-9]+[0-9]*[kmgt]$"
387
387
  },
388
388
  "spark.driver.memory": {
389
389
  "type": "string",
390
- "pattern": "^[1-9]+[0-9]*[kmg]$"
390
+ "pattern": "^[1-9]+[0-9]*[kmgt]$"
391
391
  },
392
392
  "spark.driver.memoryOverhead": {
393
393
  "$comment": "we still need to validate this in code since there's a spark-enforced minimum of 384mb",
394
394
  "oneOf": [
395
395
  {
396
396
  "type": "string",
397
- "pattern": "^[1-9]+[0-9]*[kmg]$"
397
+ "pattern": "^[1-9]+[0-9]*[kmgt]$"
398
398
  },
399
399
  {
400
400
  "type": "number",
@@ -408,7 +408,7 @@
408
408
  "oneOf": [
409
409
  {
410
410
  "type": "string",
411
- "pattern": "^[1-9]+[0-9]*[kmg]$"
411
+ "pattern": "^[1-9]+[0-9]*[kmgt]$"
412
412
  },
413
413
  {
414
414
  "type": "number",
@@ -419,7 +419,7 @@
419
419
  },
420
420
  "spark.driver.maxResultSize": {
421
421
  "type": "string",
422
- "pattern": "^[1-9]+[0-9]*[kmg]$"
422
+ "pattern": "^[1-9]+[0-9]*[kmgt]$"
423
423
  },
424
424
  "spark.scheduler.minRegisteredResourcesRatio": {
425
425
  "type": "number",
@@ -429,7 +429,7 @@
429
429
  },
430
430
  "spark.scheduler.maxRegisteredResourcesWaitingTime": {
431
431
  "type": "string",
432
- "pattern": "^[1-9]+[0-9]*(s|min)$"
432
+ "pattern": "^[1-9]+[0-9]*(ms|s|m|min|h|d)$"
433
433
  },
434
434
  "spark.kubernetes.allocation.batch.size": {
435
435
  "type": "integer"
@@ -37,6 +37,8 @@ from typing import Set
37
37
  from typing import Tuple
38
38
 
39
39
  import ephemeral_port_reserve
40
+ from botocore.credentials import InstanceMetadataFetcher
41
+ from botocore.credentials import InstanceMetadataProvider
40
42
  from mypy_extensions import NamedArg
41
43
 
42
44
  from paasta_tools import remote_git
@@ -76,6 +78,22 @@ from paasta_tools.utils import SystemPaastaConfig
76
78
  from paasta_tools.utils import validate_service_instance
77
79
  from paasta_tools.vitesscluster_tools import load_vitess_instance_config
78
80
 
81
+ try:
82
+ from vault_tools.paasta_secret import get_client as get_vault_client
83
+ from vault_tools.paasta_secret import get_vault_url
84
+ from vault_tools.paasta_secret import get_vault_ca
85
+ except ImportError:
86
+
87
+ def get_vault_client(url: str, capath: str) -> None:
88
+ pass
89
+
90
+ def get_vault_url(ecosystem: str) -> str:
91
+ return ""
92
+
93
+ def get_vault_ca(ecosystem: str) -> str:
94
+ return ""
95
+
96
+
79
97
  log = logging.getLogger(__name__)
80
98
 
81
99
 
@@ -1083,3 +1101,34 @@ def get_paasta_oapi_api_clustername(cluster: str, is_eks: bool) -> str:
1083
1101
  "eks-" prefix
1084
1102
  """
1085
1103
  return f"eks-{cluster}" if is_eks else cluster
1104
+
1105
+
1106
+ def get_current_ecosystem() -> str:
1107
+ """Get current ecosystem from host configs, defaults to dev if no config is found"""
1108
+ try:
1109
+ with open("/nail/etc/ecosystem") as f:
1110
+ return f.read().strip()
1111
+ except IOError:
1112
+ pass
1113
+ return "devc"
1114
+
1115
+
1116
+ def get_service_auth_token() -> str:
1117
+ """Uses instance profile to authenticate with Vault and generate token for service authentication"""
1118
+ ecosystem = get_current_ecosystem()
1119
+ vault_client = get_vault_client(get_vault_url(ecosystem), get_vault_ca(ecosystem))
1120
+ vault_role = load_system_paasta_config().get_service_auth_vault_role()
1121
+ metadata_provider = InstanceMetadataProvider(
1122
+ iam_role_fetcher=InstanceMetadataFetcher(),
1123
+ )
1124
+ instance_credentials = metadata_provider.load().get_frozen_credentials()
1125
+ vault_client.auth.aws.iam_login(
1126
+ instance_credentials.access_key,
1127
+ instance_credentials.secret_key,
1128
+ instance_credentials.token,
1129
+ mount_point="aws-iam",
1130
+ role=vault_role,
1131
+ use_token=True,
1132
+ )
1133
+ response = vault_client.secrets.identity.generate_signed_id_token(name=vault_role)
1134
+ return response["data"]["token"]
@@ -531,8 +531,8 @@ def limit_size_with_hash(name: str, limit: int = 63, suffix: int = 4) -> str:
531
531
  """
532
532
  if len(name) > limit:
533
533
  digest = hashlib.md5(name.encode()).digest()
534
- hash = base64.b32encode(digest).decode().replace("=", "").lower()
535
- return f"{name[:(limit-suffix-1)]}-{hash[:suffix]}"
534
+ hashed = base64.b32encode(digest).decode().replace("=", "").lower()
535
+ return f"{name[:(limit-suffix-1)]}-{hashed[:suffix]}"
536
536
  else:
537
537
  return name
538
538
 
@@ -364,6 +364,18 @@ class TronActionConfig(InstanceConfig):
364
364
  ),
365
365
  user=spark_tools.SPARK_JOB_USER,
366
366
  )
367
+ # delete the dynamically generated spark.app.id to prevent frequent config updates in Tron.
368
+ # spark.app.id will be generated later by yelp spark-submit wrapper or Spark itself.
369
+ spark_conf.pop("spark.app.id", None)
370
+ # use a static spark.app.name to prevent frequent config updates in Tron.
371
+ # md5 and base64 will always generate the same encoding for a string.
372
+ # This spark.app.name might be overridden by yelp spark-submit wrapper.
373
+ if "spark.app.name" in spark_conf:
374
+ spark_conf["spark.app.name"] = limit_size_with_hash(
375
+ f"tron_spark_{self.get_service()}_{self.get_instance()}_{self.get_action_name()}"
376
+ if "spark.app.name" not in stringified_spark_args
377
+ else stringified_spark_args["spark.app.name"]
378
+ )
367
379
  # TODO: Remove this once dynamic pod template is generated inside the driver using spark-submit wrapper
368
380
  if "spark.kubernetes.executor.podTemplateFile" in spark_conf:
369
381
  print(
@@ -2041,6 +2041,7 @@ class SystemPaastaConfigDict(TypedDict, total=False):
2041
2041
  secret_sync_delay_seconds: float
2042
2042
  use_multiple_log_readers: Optional[List[str]]
2043
2043
  service_auth_token_settings: ProjectedSAVolume
2044
+ service_auth_vault_role: str
2044
2045
  always_authenticating_services: List[str]
2045
2046
  mysql_port_mappings: Dict
2046
2047
  vitess_images: Dict
@@ -2756,6 +2757,9 @@ class SystemPaastaConfig:
2756
2757
  def get_service_auth_token_volume_config(self) -> ProjectedSAVolume:
2757
2758
  return self.config_dict.get("service_auth_token_settings", {})
2758
2759
 
2760
+ def get_service_auth_vault_role(self) -> str:
2761
+ return self.config_dict.get("service_auth_vault_role", "service_authz")
2762
+
2759
2763
  def get_always_authenticating_services(self) -> List[str]:
2760
2764
  return self.config_dict.get("always_authenticating_services", [])
2761
2765
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: paasta-tools
3
- Version: 1.4.16
3
+ Version: 1.4.18
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Home-page: UNKNOWN
6
6
  Author: Compute Infrastructure @ Yelp
File without changes
File without changes