paasta-tools 0.230.1__tar.gz → 0.232.0__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 (333) hide show
  1. {paasta-tools-0.230.1/paasta_tools.egg-info → paasta-tools-0.232.0}/PKG-INFO +1 -1
  2. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/__init__.py +1 -1
  3. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/eks_schema.json +22 -0
  4. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/kubernetes_schema.json +22 -0
  5. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/tron_schema.json +22 -0
  6. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/utils.py +9 -0
  7. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/instance/kubernetes.py +1 -0
  8. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes_tools.py +49 -0
  9. paasta-tools-0.232.0/paasta_tools/nrtsearchserviceeks_tools.py +68 -0
  10. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/utils.py +12 -0
  11. {paasta-tools-0.230.1 → paasta-tools-0.232.0/paasta_tools.egg-info}/PKG-INFO +1 -1
  12. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools.egg-info/SOURCES.txt +1 -0
  13. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/MANIFEST.in +0 -0
  14. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/README.md +0 -0
  15. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/k8s_itests/__init__.py +0 -0
  16. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/k8s_itests/test_autoscaling.py +0 -0
  17. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/k8s_itests/utils.py +0 -0
  18. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/adhoc_tools.py +0 -0
  19. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/am_i_mesos_leader.py +0 -0
  20. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/__init__.py +0 -0
  21. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/api.py +0 -0
  22. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/api_docs/swagger.json +0 -0
  23. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/client.py +0 -0
  24. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/settings.py +0 -0
  25. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/tweens/__init__.py +0 -0
  26. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/tweens/profiling.py +0 -0
  27. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/tweens/request_logger.py +0 -0
  28. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/__init__.py +0 -0
  29. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/autoscaler.py +0 -0
  30. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/exception.py +0 -0
  31. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/flink.py +0 -0
  32. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/instance.py +0 -0
  33. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/marathon_dashboard.py +0 -0
  34. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/metastatus.py +0 -0
  35. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/pause_autoscaler.py +0 -0
  36. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/resources.py +0 -0
  37. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/service.py +0 -0
  38. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/api/views/version.py +0 -0
  39. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/apply_external_resources.py +0 -0
  40. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/async_utils.py +0 -0
  41. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscale_all_services.py +0 -0
  42. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/__init__.py +0 -0
  43. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/autoscaling_service_lib.py +0 -0
  44. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/ec2_fitness.py +0 -0
  45. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/forecasting.py +0 -0
  46. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/load_boost.py +0 -0
  47. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/max_all_k8s_services.py +0 -0
  48. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/pause_service_autoscaler.py +0 -0
  49. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/autoscaling/utils.py +0 -0
  50. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/bounce_lib.py +0 -0
  51. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/broadcast_log_to_services.py +0 -0
  52. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cassandracluster_tools.py +0 -0
  53. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_autoscaler_max_instances.py +0 -0
  54. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_cassandracluster_services_replication.py +0 -0
  55. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_flink_services_health.py +0 -0
  56. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_kubernetes_api.py +0 -0
  57. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_kubernetes_services_replication.py +0 -0
  58. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_oom_events.py +0 -0
  59. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_services_replication_tools.py +0 -0
  60. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/check_spark_jobs.py +0 -0
  61. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cleanup_kubernetes_cr.py +0 -0
  62. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cleanup_kubernetes_crd.py +0 -0
  63. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cleanup_kubernetes_jobs.py +0 -0
  64. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cleanup_maintenance.py +0 -0
  65. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cleanup_tron_namespaces.py +0 -0
  66. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/__init__.py +0 -0
  67. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cli.py +0 -0
  68. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/__init__.py +0 -0
  69. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/autoscale.py +0 -0
  70. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/boost.py +0 -0
  71. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/check.py +0 -0
  72. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/cook_image.py +0 -0
  73. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/get_docker_image.py +0 -0
  74. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/get_image_version.py +0 -0
  75. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/get_latest_deployment.py +0 -0
  76. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/info.py +0 -0
  77. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/itest.py +0 -0
  78. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/list.py +0 -0
  79. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/list_clusters.py +0 -0
  80. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/list_deploy_queue.py +0 -0
  81. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/local_run.py +0 -0
  82. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/logs.py +0 -0
  83. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/mark_for_deployment.py +0 -0
  84. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/mesh_status.py +0 -0
  85. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/metastatus.py +0 -0
  86. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/pause_service_autoscaler.py +0 -0
  87. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/push_to_registry.py +0 -0
  88. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/remote_run.py +0 -0
  89. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/rollback.py +0 -0
  90. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/secret.py +0 -0
  91. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/security_check.py +0 -0
  92. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/spark_run.py +0 -0
  93. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/start_stop_restart.py +0 -0
  94. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/status.py +0 -0
  95. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/sysdig.py +0 -0
  96. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/validate.py +0 -0
  97. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/cmds/wait_for_deployment.py +0 -0
  98. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/__init__.py +0 -0
  99. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/autosuggest.py +0 -0
  100. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/template/README.md +0 -0
  101. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/template/cookiecutter.json +0 -0
  102. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/marathon-PROD.yaml +0 -0
  103. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/monitoring.yaml +0 -0
  104. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/service.yaml +0 -0
  105. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/smartstack.yaml +0 -0
  106. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/fsm_cmd.py +0 -0
  107. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/paasta_tabcomplete.sh +0 -0
  108. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/adhoc_schema.json +0 -0
  109. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/autoscaling_schema.json +0 -0
  110. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/autotuned_defaults/cassandracluster_schema.json +0 -0
  111. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/autotuned_defaults/kubernetes_schema.json +0 -0
  112. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/deploy_schema.json +0 -0
  113. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/rollback_schema.json +0 -0
  114. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/service_schema.json +0 -0
  115. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/cli/schemas/smartstack_schema.json +0 -0
  116. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/clusterman.py +0 -0
  117. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/config_utils.py +0 -0
  118. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/__init__.py +0 -0
  119. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/bounce_log_latency_parser.py +0 -0
  120. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/check_deployd_leader_election.sh +0 -0
  121. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/check_manual_oapi_changes.sh +0 -0
  122. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/check_orphans.py +0 -0
  123. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/create_dynamodb_table.py +0 -0
  124. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/create_paasta_playground.py +0 -0
  125. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/delete_old_marathon_deployments.py +0 -0
  126. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/emit_allocated_cpu_metrics.py +0 -0
  127. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/get_running_task_allocation.py +0 -0
  128. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/graceful_container_drain.py +0 -0
  129. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/habitat_fixer.py +0 -0
  130. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/ide_helper.py +0 -0
  131. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/is_pod_healthy_in_proxy.py +0 -0
  132. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/is_pod_healthy_in_smartstack.py +0 -0
  133. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/kill_bad_containers.py +0 -0
  134. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/mass-deploy-tag.sh +0 -0
  135. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/mock_patch_checker.py +0 -0
  136. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/paasta_get_num_deployments.py +0 -0
  137. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/paasta_update_soa_memcpu.py +0 -0
  138. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/render_template.py +0 -0
  139. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/rightsizer_soaconfigs_update.py +0 -0
  140. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/service_shard_remove.py +0 -0
  141. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/service_shard_update.py +0 -0
  142. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/shared_ip_check.py +0 -0
  143. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/timeouts_metrics_prom.py +0 -0
  144. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/contrib/utilization_check.py +0 -0
  145. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/delete_kubernetes_deployments.py +0 -0
  146. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/deployment_utils.py +0 -0
  147. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/docker_wrapper.py +0 -0
  148. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/docker_wrapper_imports.py +0 -0
  149. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/drain_lib.py +0 -0
  150. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/dump_locally_running_services.py +0 -0
  151. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/eks_tools.py +0 -0
  152. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/envoy_tools.py +0 -0
  153. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/firewall.py +0 -0
  154. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/firewall_logging.py +0 -0
  155. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/firewall_update.py +0 -0
  156. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/flink_tools.py +0 -0
  157. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/flinkeks_tools.py +0 -0
  158. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/frameworks/__init__.py +0 -0
  159. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/frameworks/adhoc_scheduler.py +0 -0
  160. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/frameworks/constraints.py +0 -0
  161. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/frameworks/native_scheduler.py +0 -0
  162. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/frameworks/native_service_config.py +0 -0
  163. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/frameworks/task_store.py +0 -0
  164. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/generate_all_deployments +0 -0
  165. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/generate_deployments_for_service.py +0 -0
  166. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/generate_services_file.py +0 -0
  167. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/generate_services_yaml.py +0 -0
  168. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/get_mesos_leader.py +0 -0
  169. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/hacheck.py +0 -0
  170. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/instance/__init__.py +0 -0
  171. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/instance/hpa_metrics_parser.py +0 -0
  172. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/iptables.py +0 -0
  173. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kafkacluster_tools.py +0 -0
  174. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/__init__.py +0 -0
  175. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/application/__init__.py +0 -0
  176. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/application/controller_wrappers.py +0 -0
  177. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/application/tools.py +0 -0
  178. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/bin/__init__.py +0 -0
  179. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/bin/kubernetes_remove_evicted_pods.py +0 -0
  180. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/bin/paasta_cleanup_stale_nodes.py +0 -0
  181. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/kubernetes/bin/paasta_secrets_sync.py +0 -0
  182. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/list_kubernetes_service_instances.py +0 -0
  183. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/list_marathon_service_instances.py +0 -0
  184. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/list_tron_namespaces.py +0 -0
  185. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/log_task_lifecycle_events.py +0 -0
  186. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/long_running_service_tools.py +0 -0
  187. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mac_address.py +0 -0
  188. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/marathon_dashboard.py +0 -0
  189. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/marathon_tools.py +0 -0
  190. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/__init__.py +0 -0
  191. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/cfg.py +0 -0
  192. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/cluster.py +0 -0
  193. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/exceptions.py +0 -0
  194. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/framework.py +0 -0
  195. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/log.py +0 -0
  196. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/master.py +0 -0
  197. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/mesos_file.py +0 -0
  198. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/parallel.py +0 -0
  199. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/slave.py +0 -0
  200. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/task.py +0 -0
  201. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/util.py +0 -0
  202. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos/zookeeper.py +0 -0
  203. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos_maintenance.py +0 -0
  204. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/mesos_tools.py +0 -0
  205. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/metrics/__init__.py +0 -0
  206. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/metrics/metastatus_lib.py +0 -0
  207. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/metrics/metrics_lib.py +0 -0
  208. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/__init__.py +0 -0
  209. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/check_capacity.py +0 -0
  210. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/check_k8s_api_performance.py +0 -0
  211. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/check_marathon_has_apps.py +0 -0
  212. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/check_mesos_active_frameworks.py +0 -0
  213. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/check_mesos_duplicate_frameworks.py +0 -0
  214. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/check_mesos_outdated_tasks.py +0 -0
  215. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/check_mesos_quorum.py +0 -0
  216. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring/kill_orphaned_docker_containers.py +0 -0
  217. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monitoring_tools.py +0 -0
  218. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/monkrelaycluster_tools.py +0 -0
  219. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/native_mesos_scheduler.py +0 -0
  220. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/nrtsearchservice_tools.py +0 -0
  221. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/oom_logger.py +0 -0
  222. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_cluster_boost.py +0 -0
  223. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_deploy_tron_jobs +0 -0
  224. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_execute_docker_command.py +0 -0
  225. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_maintenance.py +0 -0
  226. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_metastatus.py +0 -0
  227. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_native_serviceinit.py +0 -0
  228. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_remote_run.py +0 -0
  229. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paasta_service_config_loader.py +0 -0
  230. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/__init__.py +0 -0
  231. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/api/__init__.py +0 -0
  232. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/api/autoscaler_api.py +0 -0
  233. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/api/default_api.py +0 -0
  234. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/api/marathon_dashboard_api.py +0 -0
  235. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/api/resources_api.py +0 -0
  236. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/api/service_api.py +0 -0
  237. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/api_client.py +0 -0
  238. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/apis/__init__.py +0 -0
  239. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/configuration.py +0 -0
  240. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/exceptions.py +0 -0
  241. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/__init__.py +0 -0
  242. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/adhoc_launch_history.py +0 -0
  243. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/autoscaler_count_msg.py +0 -0
  244. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/deploy_queue.py +0 -0
  245. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/deploy_queue_service_instance.py +0 -0
  246. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/envoy_backend.py +0 -0
  247. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/envoy_location.py +0 -0
  248. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/envoy_status.py +0 -0
  249. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/flink_cluster_overview.py +0 -0
  250. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/flink_config.py +0 -0
  251. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/flink_job.py +0 -0
  252. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/flink_job_details.py +0 -0
  253. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/flink_jobs.py +0 -0
  254. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/float_and_error.py +0 -0
  255. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/hpa_metric.py +0 -0
  256. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/inline_object.py +0 -0
  257. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/inline_response200.py +0 -0
  258. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/inline_response2001.py +0 -0
  259. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_bounce_status.py +0 -0
  260. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_mesh_status.py +0 -0
  261. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status.py +0 -0
  262. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_adhoc.py +0 -0
  263. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_cassandracluster.py +0 -0
  264. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_flink.py +0 -0
  265. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_kafkacluster.py +0 -0
  266. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_kubernetes.py +0 -0
  267. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_kubernetes_autoscaling_status.py +0 -0
  268. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_kubernetes_v2.py +0 -0
  269. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_marathon.py +0 -0
  270. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_status_tron.py +0 -0
  271. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/instance_tasks.py +0 -0
  272. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/integer_and_error.py +0 -0
  273. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_container.py +0 -0
  274. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_container_v2.py +0 -0
  275. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_healthcheck.py +0 -0
  276. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_pod.py +0 -0
  277. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_pod_event.py +0 -0
  278. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_pod_v2.py +0 -0
  279. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_replica_set.py +0 -0
  280. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/kubernetes_version.py +0 -0
  281. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_app_status.py +0 -0
  282. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_autoscaling_info.py +0 -0
  283. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_dashboard.py +0 -0
  284. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_dashboard_cluster.py +0 -0
  285. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_dashboard_item.py +0 -0
  286. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_mesos_nonrunning_task.py +0 -0
  287. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_mesos_running_task.py +0 -0
  288. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_mesos_status.py +0 -0
  289. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/marathon_task.py +0 -0
  290. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/meta_status.py +0 -0
  291. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/resource.py +0 -0
  292. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/resource_item.py +0 -0
  293. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/resource_value.py +0 -0
  294. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/smartstack_backend.py +0 -0
  295. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/smartstack_location.py +0 -0
  296. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/smartstack_status.py +0 -0
  297. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model/task_tail_lines.py +0 -0
  298. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/model_utils.py +0 -0
  299. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/models/__init__.py +0 -0
  300. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/paastaapi/rest.py +0 -0
  301. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/prune_completed_pods.py +0 -0
  302. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/py.typed +0 -0
  303. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/remote_git.py +0 -0
  304. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/run-paasta-api-in-dev-mode.py +0 -0
  305. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/run-paasta-api-playground.py +0 -0
  306. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/secret_providers/__init__.py +0 -0
  307. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/secret_providers/vault.py +0 -0
  308. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/secret_tools.py +0 -0
  309. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/setup_istio_mesh.py +0 -0
  310. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/setup_kubernetes_cr.py +0 -0
  311. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/setup_kubernetes_crd.py +0 -0
  312. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/setup_kubernetes_internal_crd.py +0 -0
  313. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/setup_kubernetes_job.py +0 -0
  314. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/setup_prometheus_adapter_config.py +0 -0
  315. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/setup_tron_namespace.py +0 -0
  316. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/slack.py +0 -0
  317. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/smartstack_tools.py +0 -0
  318. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/spark_tools.py +0 -0
  319. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/synapse_srv_namespaces_fact.py +0 -0
  320. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/tron/__init__.py +0 -0
  321. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/tron/client.py +0 -0
  322. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/tron/tron_command_context.py +0 -0
  323. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/tron/tron_timeutils.py +0 -0
  324. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/tron_tools.py +0 -0
  325. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools/vitesscluster_tools.py +0 -0
  326. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools.egg-info/dependency_links.txt +0 -0
  327. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools.egg-info/entry_points.txt +0 -0
  328. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools.egg-info/requires.txt +0 -0
  329. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/paasta_tools.egg-info/top_level.txt +0 -0
  330. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/pyproject.toml +0 -0
  331. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/requirements-minimal.txt +0 -0
  332. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/setup.cfg +0 -0
  333. {paasta-tools-0.230.1 → paasta-tools-0.232.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: paasta-tools
3
- Version: 0.230.1
3
+ Version: 0.232.0
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__ = "0.230.1"
20
+ __version__ = "0.232.0"
@@ -586,6 +586,28 @@
586
586
  },
587
587
  "uniqueItems": true
588
588
  },
589
+ "projected_sa_volumes": {
590
+ "type": "array",
591
+ "items": {
592
+ "type": "object",
593
+ "properties": {
594
+ "container_path": {
595
+ "type": "string"
596
+ },
597
+ "audience": {
598
+ "type": "string"
599
+ },
600
+ "expiration_seconds": {
601
+ "type": "integer"
602
+ }
603
+ },
604
+ "required": [
605
+ "container_path",
606
+ "audience"
607
+ ]
608
+ },
609
+ "uniqueItems": true
610
+ },
589
611
  "replication_threshold": {
590
612
  "type": "integer",
591
613
  "minimum": 0
@@ -586,6 +586,28 @@
586
586
  },
587
587
  "uniqueItems": true
588
588
  },
589
+ "projected_sa_volumes": {
590
+ "type": "array",
591
+ "items": {
592
+ "type": "object",
593
+ "properties": {
594
+ "container_path": {
595
+ "type": "string"
596
+ },
597
+ "audience": {
598
+ "type": "string"
599
+ },
600
+ "expiration_seconds": {
601
+ "type": "integer"
602
+ }
603
+ },
604
+ "required": [
605
+ "container_path",
606
+ "audience"
607
+ ]
608
+ },
609
+ "uniqueItems": true
610
+ },
589
611
  "replication_threshold": {
590
612
  "type": "integer",
591
613
  "minimum": 0
@@ -283,6 +283,28 @@
283
283
  },
284
284
  "uniqueItems": true
285
285
  },
286
+ "projected_sa_volumes": {
287
+ "type": "array",
288
+ "items": {
289
+ "type": "object",
290
+ "properties": {
291
+ "container_path": {
292
+ "type": "string"
293
+ },
294
+ "audience": {
295
+ "type": "string"
296
+ },
297
+ "expiration_seconds": {
298
+ "type": "integer"
299
+ }
300
+ },
301
+ "required": [
302
+ "container_path",
303
+ "audience"
304
+ ]
305
+ },
306
+ "uniqueItems": true
307
+ },
286
308
  "cluster": {
287
309
  "type": "string"
288
310
  },
@@ -53,6 +53,9 @@ from paasta_tools.long_running_service_tools import LongRunningServiceConfig
53
53
  from paasta_tools.marathon_tools import load_marathon_service_config
54
54
  from paasta_tools.monkrelaycluster_tools import load_monkrelaycluster_instance_config
55
55
  from paasta_tools.nrtsearchservice_tools import load_nrtsearchservice_instance_config
56
+ from paasta_tools.nrtsearchserviceeks_tools import (
57
+ load_nrtsearchserviceeks_instance_config,
58
+ )
56
59
  from paasta_tools.paasta_service_config_loader import PaastaServiceConfigLoader
57
60
  from paasta_tools.tron_tools import load_tron_instance_config
58
61
  from paasta_tools.utils import _log
@@ -796,6 +799,9 @@ INSTANCE_TYPE_HANDLERS: Mapping[str, InstanceTypeHandler] = defaultdict(
796
799
  nrtsearchservice=InstanceTypeHandler(
797
800
  get_service_instance_list, load_nrtsearchservice_instance_config
798
801
  ),
802
+ nrtsearchserviceeks=InstanceTypeHandler(
803
+ get_service_instance_list, load_nrtsearchserviceeks_instance_config
804
+ ),
799
805
  monkrelays=InstanceTypeHandler(
800
806
  get_service_instance_list, load_monkrelaycluster_instance_config
801
807
  ),
@@ -829,6 +835,9 @@ LONG_RUNNING_INSTANCE_TYPE_HANDLERS: Mapping[
829
835
  nrtsearchservice=LongRunningInstanceTypeHandler(
830
836
  get_service_instance_list, load_nrtsearchservice_instance_config
831
837
  ),
838
+ nrtsearchserviceeks=LongRunningInstanceTypeHandler(
839
+ get_service_instance_list, load_nrtsearchserviceeks_instance_config
840
+ ),
832
841
  monkrelays=LongRunningInstanceTypeHandler(
833
842
  get_service_instance_list, load_monkrelaycluster_instance_config
834
843
  ),
@@ -71,6 +71,7 @@ INSTANCE_TYPE_CR_ID = dict(
71
71
  kafkacluster=kafkacluster_tools.cr_id,
72
72
  vitesscluster=vitesscluster_tools.cr_id,
73
73
  nrtsearchservice=nrtsearchservice_tools.cr_id,
74
+ nrtsearchserviceeks=nrtsearchservice_tools.cr_id,
74
75
  monkrelaycluster=monkrelaycluster_tools.cr_id,
75
76
  )
76
77
 
@@ -98,6 +98,7 @@ from kubernetes.client import V1PodSpec
98
98
  from kubernetes.client import V1PodTemplateSpec
99
99
  from kubernetes.client import V1PreferredSchedulingTerm
100
100
  from kubernetes.client import V1Probe
101
+ from kubernetes.client import V1ProjectedVolumeSource
101
102
  from kubernetes.client import V1ReplicaSet
102
103
  from kubernetes.client import V1ResourceRequirements
103
104
  from kubernetes.client import V1RoleBinding
@@ -108,6 +109,7 @@ from kubernetes.client import V1SecretKeySelector
108
109
  from kubernetes.client import V1SecretVolumeSource
109
110
  from kubernetes.client import V1SecurityContext
110
111
  from kubernetes.client import V1ServiceAccount
112
+ from kubernetes.client import V1ServiceAccountTokenProjection
111
113
  from kubernetes.client import V1StatefulSet
112
114
  from kubernetes.client import V1StatefulSetSpec
113
115
  from kubernetes.client import V1Subject
@@ -115,6 +117,7 @@ from kubernetes.client import V1TCPSocketAction
115
117
  from kubernetes.client import V1TopologySpreadConstraint
116
118
  from kubernetes.client import V1Volume
117
119
  from kubernetes.client import V1VolumeMount
120
+ from kubernetes.client import V1VolumeProjection
118
121
  from kubernetes.client import V1WeightedPodAffinityTerm
119
122
  from kubernetes.client import V2beta2CrossVersionObjectReference
120
123
  from kubernetes.client import V2beta2HorizontalPodAutoscaler
@@ -171,6 +174,7 @@ from paasta_tools.utils import load_v2_deployments_json
171
174
  from paasta_tools.utils import PaastaColors
172
175
  from paasta_tools.utils import PaastaNotConfiguredError
173
176
  from paasta_tools.utils import PersistentVolume
177
+ from paasta_tools.utils import ProjectedSAVolume
174
178
  from paasta_tools.utils import SecretVolume
175
179
  from paasta_tools.utils import SystemPaastaConfig
176
180
  from paasta_tools.utils import time_cache
@@ -227,6 +231,9 @@ DEFAULT_SIDECAR_REQUEST: KubeContainerResourceRequest = {
227
231
  "ephemeral-storage": "256Mi",
228
232
  }
229
233
 
234
+ DEFAULT_PROJECTED_SA_EXPIRATION_SECONDS = 3600
235
+ PROJECTED_SA_TOKEN_PATH = "token"
236
+
230
237
 
231
238
  # conditions is None when creating a new HPA, but the client raises an error in that case.
232
239
  # For detail, https://github.com/kubernetes-client/python/issues/553
@@ -1002,6 +1009,14 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
1002
1009
  "secret--{name}".format(name=secret_volume["secret_name"]), length_limit=63
1003
1010
  )
1004
1011
 
1012
+ def get_projected_sa_volume_name(
1013
+ self, projected_sa_volume: ProjectedSAVolume
1014
+ ) -> str:
1015
+ return self.get_sanitised_volume_name(
1016
+ "projected-sa--{audience}".format(audience=projected_sa_volume["audience"]),
1017
+ length_limit=63,
1018
+ )
1019
+
1005
1020
  def get_boto_secret_volume_name(self, service_name: str) -> str:
1006
1021
  return self.get_sanitised_volume_name(
1007
1022
  f"secret-boto-key-{service_name}", length_limit=63
@@ -1130,6 +1145,7 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
1130
1145
  aws_ebs_volumes=[],
1131
1146
  persistent_volumes=[],
1132
1147
  secret_volumes=[],
1148
+ projected_sa_volumes=[],
1133
1149
  ),
1134
1150
  )
1135
1151
  return None
@@ -1440,6 +1456,7 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
1440
1456
  aws_ebs_volumes=aws_ebs_volumes,
1441
1457
  persistent_volumes=self.get_persistent_volumes(),
1442
1458
  secret_volumes=secret_volumes,
1459
+ projected_sa_volumes=self.get_projected_sa_volumes(),
1443
1460
  ),
1444
1461
  )
1445
1462
  containers = [service_container] + self.get_sidecar_containers( # type: ignore
@@ -1477,6 +1494,7 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
1477
1494
  docker_volumes: Sequence[DockerVolume],
1478
1495
  aws_ebs_volumes: Sequence[AwsEbsVolume],
1479
1496
  secret_volumes: Sequence[SecretVolume],
1497
+ projected_sa_volumes: Sequence[ProjectedSAVolume],
1480
1498
  ) -> Sequence[V1Volume]:
1481
1499
  pod_volumes = []
1482
1500
  unique_docker_volumes = {
@@ -1534,6 +1552,27 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
1534
1552
  ),
1535
1553
  )
1536
1554
  )
1555
+ for projected_volume in projected_sa_volumes:
1556
+ pod_volumes.append(
1557
+ V1Volume(
1558
+ name=self.get_projected_sa_volume_name(projected_volume),
1559
+ projected=V1ProjectedVolumeSource(
1560
+ sources=[
1561
+ V1VolumeProjection(
1562
+ service_account_token=V1ServiceAccountTokenProjection(
1563
+ audience=projected_volume["audience"],
1564
+ expiration_seconds=projected_volume.get(
1565
+ "expiration_seconds",
1566
+ DEFAULT_PROJECTED_SA_EXPIRATION_SECONDS,
1567
+ ),
1568
+ path=PROJECTED_SA_TOKEN_PATH,
1569
+ )
1570
+ )
1571
+ ],
1572
+ ),
1573
+ ),
1574
+ )
1575
+
1537
1576
  boto_volume = self.get_boto_volume()
1538
1577
  if boto_volume:
1539
1578
  pod_volumes.append(boto_volume)
@@ -1694,6 +1733,7 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
1694
1733
  aws_ebs_volumes: Sequence[AwsEbsVolume],
1695
1734
  persistent_volumes: Sequence[PersistentVolume],
1696
1735
  secret_volumes: Sequence[SecretVolume],
1736
+ projected_sa_volumes: Sequence[ProjectedSAVolume],
1697
1737
  ) -> Sequence[V1VolumeMount]:
1698
1738
  volume_mounts = (
1699
1739
  [
@@ -1728,6 +1768,14 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
1728
1768
  )
1729
1769
  for volume in secret_volumes
1730
1770
  ]
1771
+ + [
1772
+ V1VolumeMount(
1773
+ mount_path=volume["container_path"],
1774
+ name=self.get_projected_sa_volume_name(volume),
1775
+ read_only=True,
1776
+ )
1777
+ for volume in projected_sa_volumes
1778
+ ]
1731
1779
  )
1732
1780
  if self.config_dict.get("boto_keys", []):
1733
1781
  secret_hash = self.get_boto_secret_hash()
@@ -2140,6 +2188,7 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
2140
2188
  docker_volumes=docker_volumes + hacheck_sidecar_volumes,
2141
2189
  aws_ebs_volumes=self.get_aws_ebs_volumes(),
2142
2190
  secret_volumes=self.get_secret_volumes(),
2191
+ projected_sa_volumes=self.get_projected_sa_volumes(),
2143
2192
  ),
2144
2193
  )
2145
2194
  # need to check if there are node selectors/affinities. if there are none
@@ -0,0 +1,68 @@
1
+ from typing import Optional
2
+
3
+ import service_configuration_lib
4
+
5
+ from paasta_tools.nrtsearchservice_tools import NrtsearchServiceDeploymentConfig
6
+ from paasta_tools.utils import BranchDictV2
7
+ from paasta_tools.utils import deep_merge_dictionaries
8
+ from paasta_tools.utils import DEFAULT_SOA_DIR
9
+ from paasta_tools.utils import load_service_instance_config
10
+ from paasta_tools.utils import load_v2_deployments_json
11
+
12
+
13
+ class NrtsearchServiceEksDeploymentConfig(NrtsearchServiceDeploymentConfig):
14
+ config_filename_prefix = "nrtsearchserviceeks"
15
+
16
+
17
+ def load_nrtsearchserviceeks_instance_config(
18
+ service: str,
19
+ instance: str,
20
+ cluster: str,
21
+ load_deployments: bool = True,
22
+ soa_dir: str = DEFAULT_SOA_DIR,
23
+ ) -> NrtsearchServiceEksDeploymentConfig:
24
+ """Read a service instance's configuration for Nrtsearch.
25
+
26
+ If a branch isn't specified for a config, the 'branch' key defaults to
27
+ paasta-${cluster}.${instance}.
28
+
29
+ :param service: The service name
30
+ :param instance: The instance of the service to retrieve
31
+ :param cluster: The cluster to read the configuration for
32
+ :param load_deployments: A boolean indicating if the corresponding deployments.json for this service
33
+ should also be loaded
34
+ :param soa_dir: The SOA configuration directory to read from
35
+ :returns: A dictionary of whatever was in the config for the service instance"""
36
+ general_config = service_configuration_lib.read_service_configuration(
37
+ service, soa_dir=soa_dir
38
+ )
39
+ instance_config = load_service_instance_config(
40
+ service, instance, "nrtsearchserviceeks", cluster, soa_dir=soa_dir
41
+ )
42
+ general_config = deep_merge_dictionaries(
43
+ overrides=instance_config, defaults=general_config
44
+ )
45
+
46
+ branch_dict: Optional[BranchDictV2] = None
47
+ if load_deployments:
48
+ deployments_json = load_v2_deployments_json(service, soa_dir=soa_dir)
49
+ temp_instance_config = NrtsearchServiceEksDeploymentConfig(
50
+ service=service,
51
+ cluster=cluster,
52
+ instance=instance,
53
+ config_dict=general_config,
54
+ branch_dict=None,
55
+ soa_dir=soa_dir,
56
+ )
57
+ branch = temp_instance_config.get_branch()
58
+ deploy_group = temp_instance_config.get_deploy_group()
59
+ branch_dict = deployments_json.get_branch_dict(service, branch, deploy_group)
60
+
61
+ return NrtsearchServiceEksDeploymentConfig(
62
+ service=service,
63
+ cluster=cluster,
64
+ instance=instance,
65
+ config_dict=general_config,
66
+ branch_dict=branch_dict,
67
+ soa_dir=soa_dir,
68
+ )
@@ -138,6 +138,7 @@ INSTANCE_TYPES = (
138
138
  "vitesscluster",
139
139
  "monkrelays",
140
140
  "nrtsearchservice",
141
+ "nrtsearchserviceeks",
141
142
  )
142
143
 
143
144
  PAASTA_K8S_INSTANCE_TYPES = {
@@ -155,6 +156,7 @@ INSTANCE_TYPE_TO_K8S_NAMESPACE = {
155
156
  "kafkacluster": "paasta-kafkaclusters",
156
157
  "vitesscluster": "paasta-vitessclusters",
157
158
  "nrtsearchservice": "paasta-nrtsearchservices",
159
+ "nrtsearchserviceeks": "paasta-nrtsearchservices",
158
160
  }
159
161
 
160
162
  SHARED_SECRETS_K8S_NAMESPACES = {"paasta-spark", "paasta-cassandraclusters"}
@@ -285,6 +287,12 @@ class SecretVolume(TypedDict, total=False):
285
287
  items: List[SecretVolumeItem]
286
288
 
287
289
 
290
+ class ProjectedSAVolume(TypedDict, total=False):
291
+ container_path: str
292
+ audience: str
293
+ expiration_seconds: int
294
+
295
+
288
296
  class TronSecretVolume(SecretVolume, total=False):
289
297
  secret_volume_name: str
290
298
 
@@ -329,6 +337,7 @@ class InstanceConfigDict(TypedDict, total=False):
329
337
  extra_volumes: List[DockerVolume]
330
338
  aws_ebs_volumes: List[AwsEbsVolume]
331
339
  secret_volumes: List[SecretVolume]
340
+ projected_sa_volumes: List[ProjectedSAVolume]
332
341
  security: SecurityConfigDict
333
342
  dependencies_reference: str
334
343
  dependencies: Dict[str, Dict]
@@ -958,6 +967,9 @@ class InstanceConfig:
958
967
  def get_secret_volumes(self) -> List[SecretVolume]:
959
968
  return self.config_dict.get("secret_volumes", [])
960
969
 
970
+ def get_projected_sa_volumes(self) -> List[ProjectedSAVolume]:
971
+ return self.config_dict.get("projected_sa_volumes", [])
972
+
961
973
  def get_iam_role(self) -> str:
962
974
  return self.config_dict.get("iam_role", "")
963
975
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: paasta-tools
3
- Version: 0.230.1
3
+ Version: 0.232.0
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Home-page: UNKNOWN
6
6
  Author: Compute Infrastructure @ Yelp
@@ -66,6 +66,7 @@ paasta_tools/monitoring_tools.py
66
66
  paasta_tools/monkrelaycluster_tools.py
67
67
  paasta_tools/native_mesos_scheduler.py
68
68
  paasta_tools/nrtsearchservice_tools.py
69
+ paasta_tools/nrtsearchserviceeks_tools.py
69
70
  paasta_tools/oom_logger.py
70
71
  paasta_tools/paasta_cluster_boost.py
71
72
  paasta_tools/paasta_deploy_tron_jobs
File without changes