paasta-tools 1.31.1__tar.gz → 1.31.3__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 (353) hide show
  1. {paasta_tools-1.31.1/paasta_tools.egg-info → paasta_tools-1.31.3}/PKG-INFO +1 -1
  2. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/__init__.py +1 -1
  3. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/api_docs/swagger.json +5 -0
  4. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/status.py +29 -17
  5. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/instance/kubernetes.py +58 -25
  6. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_version.py +3 -0
  7. {paasta_tools-1.31.1 → paasta_tools-1.31.3/paasta_tools.egg-info}/PKG-INFO +1 -1
  8. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/LICENSE +0 -0
  9. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/MANIFEST.in +0 -0
  10. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/README.md +0 -0
  11. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/k8s_itests/__init__.py +0 -0
  12. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/k8s_itests/test_autoscaling.py +0 -0
  13. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/k8s_itests/utils.py +0 -0
  14. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/adhoc_tools.py +0 -0
  15. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/__init__.py +0 -0
  16. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/api.py +0 -0
  17. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/client.py +0 -0
  18. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/settings.py +0 -0
  19. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/tweens/__init__.py +0 -0
  20. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/tweens/auth.py +0 -0
  21. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/tweens/profiling.py +0 -0
  22. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/tweens/request_logger.py +0 -0
  23. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/__init__.py +0 -0
  24. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/autoscaler.py +0 -0
  25. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/exception.py +0 -0
  26. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/flink.py +0 -0
  27. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/instance.py +0 -0
  28. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/pause_autoscaler.py +0 -0
  29. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/remote_run.py +0 -0
  30. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/resources.py +0 -0
  31. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/service.py +0 -0
  32. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/api/views/version.py +0 -0
  33. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/apply_external_resources.py +0 -0
  34. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/async_utils.py +0 -0
  35. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/autoscaling/__init__.py +0 -0
  36. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/autoscaling/autoscaling_service_lib.py +0 -0
  37. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/autoscaling/forecasting.py +0 -0
  38. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/autoscaling/max_all_k8s_services.py +0 -0
  39. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/autoscaling/pause_service_autoscaler.py +0 -0
  40. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/autoscaling/utils.py +0 -0
  41. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/bounce_lib.py +0 -0
  42. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/broadcast_log_to_services.py +0 -0
  43. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cassandracluster_tools.py +0 -0
  44. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_autoscaler_max_instances.py +0 -0
  45. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_cassandracluster_services_replication.py +0 -0
  46. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_flink_services_health.py +0 -0
  47. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_kubernetes_api.py +0 -0
  48. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_kubernetes_services_replication.py +0 -0
  49. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_oom_events.py +0 -0
  50. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_services_replication_tools.py +0 -0
  51. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/check_spark_jobs.py +0 -0
  52. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cleanup_expired_autoscaling_overrides.py +0 -0
  53. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cleanup_kubernetes_cr.py +0 -0
  54. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cleanup_kubernetes_crd.py +0 -0
  55. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cleanup_kubernetes_jobs.py +0 -0
  56. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cleanup_tron_namespaces.py +0 -0
  57. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/__init__.py +0 -0
  58. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/authentication.py +0 -0
  59. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cli.py +0 -0
  60. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/__init__.py +0 -0
  61. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/autoscale.py +0 -0
  62. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/check.py +0 -0
  63. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/cook_image.py +0 -0
  64. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/get_docker_image.py +0 -0
  65. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/get_image_version.py +0 -0
  66. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/get_latest_deployment.py +0 -0
  67. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/info.py +0 -0
  68. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/itest.py +0 -0
  69. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/list.py +0 -0
  70. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/list_clusters.py +0 -0
  71. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/list_deploy_queue.py +0 -0
  72. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/list_namespaces.py +0 -0
  73. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/local_run.py +0 -0
  74. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/logs.py +0 -0
  75. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/mark_for_deployment.py +0 -0
  76. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/mesh_status.py +0 -0
  77. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/pause_service_autoscaler.py +0 -0
  78. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/push_to_registry.py +0 -0
  79. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/remote_run.py +0 -0
  80. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/rollback.py +0 -0
  81. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/secret.py +0 -0
  82. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/security_check.py +0 -0
  83. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/spark_run.py +0 -0
  84. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/start_stop_restart.py +0 -0
  85. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/validate.py +0 -0
  86. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/cmds/wait_for_deployment.py +0 -0
  87. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/__init__.py +0 -0
  88. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/autosuggest.py +0 -0
  89. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/template/README.md +0 -0
  90. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/template/cookiecutter.json +0 -0
  91. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/kubernetes-PROD.yaml +0 -0
  92. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/monitoring.yaml +0 -0
  93. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/service.yaml +0 -0
  94. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/smartstack.yaml +0 -0
  95. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/fsm_cmd.py +0 -0
  96. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/paasta_tabcomplete.sh +0 -0
  97. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/adhoc_schema.json +0 -0
  98. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/autoscaling_schema.json +0 -0
  99. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/autotuned_defaults/cassandracluster_schema.json +0 -0
  100. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/autotuned_defaults/kubernetes_schema.json +0 -0
  101. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/deploy_schema.json +0 -0
  102. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/eks_schema.json +0 -0
  103. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/kubernetes_schema.json +0 -0
  104. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/rollback_schema.json +0 -0
  105. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/service_schema.json +0 -0
  106. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/smartstack_schema.json +0 -0
  107. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/schemas/tron_schema.json +0 -0
  108. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/cli/utils.py +0 -0
  109. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/clusterman.py +0 -0
  110. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/config_utils.py +0 -0
  111. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/__init__.py +0 -0
  112. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/bounce_log_latency_parser.py +0 -0
  113. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/check_manual_oapi_changes.sh +0 -0
  114. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/check_orphans.py +0 -0
  115. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/create_dynamodb_table.py +0 -0
  116. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/create_paasta_playground.py +0 -0
  117. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/emit_allocated_cpu_metrics.py +0 -0
  118. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/get_running_task_allocation.py +0 -0
  119. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/habitat_fixer.py +0 -0
  120. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/ide_helper.py +0 -0
  121. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/is_pod_healthy_in_proxy.py +0 -0
  122. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/is_pod_healthy_in_smartstack.py +0 -0
  123. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/kill_bad_containers.py +0 -0
  124. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/mass-deploy-tag.sh +0 -0
  125. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/mock_patch_checker.py +0 -0
  126. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/paasta_update_soa_memcpu.py +0 -0
  127. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/render_template.py +0 -0
  128. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/rightsizer_soaconfigs_update.py +0 -0
  129. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/service_shard_remove.py +0 -0
  130. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/service_shard_update.py +0 -0
  131. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/shared_ip_check.py +0 -0
  132. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/contrib/timeouts_metrics_prom.py +0 -0
  133. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/delete_kubernetes_deployments.py +0 -0
  134. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/deployment_utils.py +0 -0
  135. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/docker_wrapper.py +0 -0
  136. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/docker_wrapper_imports.py +0 -0
  137. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/drain_lib.py +0 -0
  138. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/dump_locally_running_services.py +0 -0
  139. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/eks_tools.py +0 -0
  140. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/envoy_tools.py +0 -0
  141. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/firewall.py +0 -0
  142. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/firewall_logging.py +0 -0
  143. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/firewall_update.py +0 -0
  144. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/flink_tools.py +0 -0
  145. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/flinkeks_tools.py +0 -0
  146. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/frameworks/__init__.py +0 -0
  147. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/frameworks/constraints.py +0 -0
  148. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/frameworks/native_service_config.py +0 -0
  149. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/generate_all_deployments +0 -0
  150. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/generate_authenticating_services.py +0 -0
  151. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/generate_deployments_for_service.py +0 -0
  152. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/generate_services_file.py +0 -0
  153. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/generate_services_yaml.py +0 -0
  154. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/hacheck.py +0 -0
  155. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/instance/__init__.py +0 -0
  156. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/instance/hpa_metrics_parser.py +0 -0
  157. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/iptables.py +0 -0
  158. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kafkacluster_tools.py +0 -0
  159. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/__init__.py +0 -0
  160. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/application/__init__.py +0 -0
  161. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/application/controller_wrappers.py +0 -0
  162. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/application/tools.py +0 -0
  163. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/bin/__init__.py +0 -0
  164. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/bin/kubernetes_remove_evicted_pods.py +0 -0
  165. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/bin/paasta_cleanup_remote_run_resources.py +0 -0
  166. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/bin/paasta_cleanup_stale_nodes.py +0 -0
  167. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/bin/paasta_secrets_sync.py +0 -0
  168. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes/remote_run.py +0 -0
  169. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/kubernetes_tools.py +0 -0
  170. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/list_kubernetes_service_instances.py +0 -0
  171. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/list_tron_namespaces.py +0 -0
  172. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/long_running_service_tools.py +0 -0
  173. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mac_address.py +0 -0
  174. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/marathon_dashboard.py +0 -0
  175. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/__init__.py +0 -0
  176. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/cfg.py +0 -0
  177. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/cluster.py +0 -0
  178. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/exceptions.py +0 -0
  179. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/framework.py +0 -0
  180. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/log.py +0 -0
  181. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/master.py +0 -0
  182. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/mesos_file.py +0 -0
  183. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/parallel.py +0 -0
  184. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/slave.py +0 -0
  185. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/task.py +0 -0
  186. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/util.py +0 -0
  187. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos/zookeeper.py +0 -0
  188. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/mesos_tools.py +0 -0
  189. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/metrics/__init__.py +0 -0
  190. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/metrics/metastatus_lib.py +0 -0
  191. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/metrics/metrics_lib.py +0 -0
  192. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/monitoring/__init__.py +0 -0
  193. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/monitoring/check_k8s_api_performance.py +0 -0
  194. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/monitoring_tools.py +0 -0
  195. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/monkrelaycluster_tools.py +0 -0
  196. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/nrtsearchservice_tools.py +0 -0
  197. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/nrtsearchserviceeks_tools.py +0 -0
  198. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/oom_logger.py +0 -0
  199. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paasta_deploy_tron_jobs +0 -0
  200. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paasta_execute_docker_command.py +0 -0
  201. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paasta_service_config_loader.py +0 -0
  202. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/__init__.py +0 -0
  203. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/api/__init__.py +0 -0
  204. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/api/autoscaler_api.py +0 -0
  205. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/api/default_api.py +0 -0
  206. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/api/remote_run_api.py +0 -0
  207. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/api/resources_api.py +0 -0
  208. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/api/service_api.py +0 -0
  209. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/api_client.py +0 -0
  210. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/apis/__init__.py +0 -0
  211. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/configuration.py +0 -0
  212. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/exceptions.py +0 -0
  213. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/__init__.py +0 -0
  214. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/adhoc_launch_history.py +0 -0
  215. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/autoscaler_count_msg.py +0 -0
  216. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/autoscaling_override.py +0 -0
  217. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/deploy_queue.py +0 -0
  218. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/deploy_queue_service_instance.py +0 -0
  219. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/envoy_backend.py +0 -0
  220. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/envoy_location.py +0 -0
  221. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/envoy_status.py +0 -0
  222. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/flink_cluster_overview.py +0 -0
  223. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/flink_config.py +0 -0
  224. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/flink_job.py +0 -0
  225. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/flink_job_details.py +0 -0
  226. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/flink_jobs.py +0 -0
  227. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/float_and_error.py +0 -0
  228. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/hpa_metric.py +0 -0
  229. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/inline_object.py +0 -0
  230. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/inline_response200.py +0 -0
  231. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/inline_response2001.py +0 -0
  232. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/inline_response202.py +0 -0
  233. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/inline_response403.py +0 -0
  234. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_bounce_status.py +0 -0
  235. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_mesh_status.py +0 -0
  236. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status.py +0 -0
  237. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_adhoc.py +0 -0
  238. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_cassandracluster.py +0 -0
  239. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_flink.py +0 -0
  240. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_kafkacluster.py +0 -0
  241. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_kubernetes.py +0 -0
  242. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_kubernetes_autoscaling_status.py +0 -0
  243. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_kubernetes_v2.py +0 -0
  244. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_status_tron.py +0 -0
  245. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/instance_tasks.py +0 -0
  246. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/integer_and_error.py +0 -0
  247. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_container.py +0 -0
  248. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_container_v2.py +0 -0
  249. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_healthcheck.py +0 -0
  250. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_pod.py +0 -0
  251. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_pod_event.py +0 -0
  252. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_pod_v2.py +0 -0
  253. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/kubernetes_replica_set.py +0 -0
  254. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/remote_run_outcome.py +0 -0
  255. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/remote_run_start.py +0 -0
  256. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/remote_run_stop.py +0 -0
  257. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/remote_run_token.py +0 -0
  258. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/resource.py +0 -0
  259. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/resource_item.py +0 -0
  260. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/resource_value.py +0 -0
  261. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/smartstack_backend.py +0 -0
  262. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/smartstack_location.py +0 -0
  263. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/smartstack_status.py +0 -0
  264. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model/task_tail_lines.py +0 -0
  265. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/model_utils.py +0 -0
  266. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/models/__init__.py +0 -0
  267. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/paastaapi/rest.py +0 -0
  268. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/prune_completed_pods.py +0 -0
  269. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/puppet_service_tools.py +0 -0
  270. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/py.typed +0 -0
  271. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/remote_git.py +0 -0
  272. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/run-paasta-api-in-dev-mode.py +0 -0
  273. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/run-paasta-api-playground.py +0 -0
  274. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/secret_providers/__init__.py +0 -0
  275. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/secret_providers/vault.py +0 -0
  276. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/secret_tools.py +0 -0
  277. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/setup_istio_mesh.py +0 -0
  278. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/setup_kubernetes_cr.py +0 -0
  279. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/setup_kubernetes_crd.py +0 -0
  280. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/setup_kubernetes_internal_crd.py +0 -0
  281. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/setup_kubernetes_job.py +0 -0
  282. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/setup_prometheus_adapter_config.py +0 -0
  283. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/setup_tron_namespace.py +0 -0
  284. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/slack.py +0 -0
  285. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/smartstack_tools.py +0 -0
  286. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/spark_tools.py +0 -0
  287. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/synapse_srv_namespaces_fact.py +0 -0
  288. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/tron/__init__.py +0 -0
  289. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/tron/client.py +0 -0
  290. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/tron/tron_command_context.py +0 -0
  291. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/tron/tron_timeutils.py +0 -0
  292. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/tron_tools.py +0 -0
  293. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/utils.py +0 -0
  294. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools/yaml_tools.py +0 -0
  295. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools.egg-info/SOURCES.txt +0 -0
  296. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools.egg-info/dependency_links.txt +0 -0
  297. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools.egg-info/entry_points.txt +0 -0
  298. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools.egg-info/requires.txt +0 -0
  299. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/paasta_tools.egg-info/top_level.txt +0 -0
  300. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/pyproject.toml +0 -0
  301. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/requirements-minimal.txt +0 -0
  302. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/setup.cfg +0 -0
  303. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/setup.py +0 -0
  304. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_adhoc_tools.py +0 -0
  305. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_apply_external_resources.py +0 -0
  306. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_async_utils.py +0 -0
  307. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_bounce_lib.py +0 -0
  308. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_check_flink_services_health.py +0 -0
  309. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_check_kubernetes_services_replication.py +0 -0
  310. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_check_oom_events.py +0 -0
  311. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_check_service_replication_tools.py +0 -0
  312. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_check_spark_jobs.py +0 -0
  313. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_cleanup_kubernetes_jobs.py +0 -0
  314. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_config_utils.py +0 -0
  315. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_delete_kubernetes_deployments.py +0 -0
  316. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_deployment_utils.py +0 -0
  317. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_docker_wrapper.py +0 -0
  318. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_drain_lib.py +0 -0
  319. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_eks_tools.py +0 -0
  320. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_envoy_tools.py +0 -0
  321. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_firewall.py +0 -0
  322. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_firewall_logging.py +0 -0
  323. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_firewall_update.py +0 -0
  324. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_flink_tools.py +0 -0
  325. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_flinkeks_tools.py +0 -0
  326. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_generate_authenticating_services.py +0 -0
  327. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_generate_deployments_for_service.py +0 -0
  328. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_generate_services_file.py +0 -0
  329. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_generate_services_yaml.py +0 -0
  330. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_hacheck.py +0 -0
  331. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_iptables.py +0 -0
  332. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_kubernetes_tools.py +0 -0
  333. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_list_kubernetes_service_instances.py +0 -0
  334. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_long_running_service_tools.py +0 -0
  335. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_mac_address.py +0 -0
  336. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_mesos_tools.py +0 -0
  337. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_monitoring_tools.py +0 -0
  338. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_nrtsearchserviceseks_tools.py +0 -0
  339. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_oom_logger.py +0 -0
  340. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_paasta_execute_docker_command.py +0 -0
  341. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_paasta_service_config_loader.py +0 -0
  342. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_puppet_service_tools.py +0 -0
  343. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_remote_git.py +0 -0
  344. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_secret_tools.py +0 -0
  345. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_setup_istio_mesh.py +0 -0
  346. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_setup_kubernetes_cr.py +0 -0
  347. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_setup_kubernetes_job.py +0 -0
  348. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_setup_prometheus_adapter_config.py +0 -0
  349. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_slack.py +0 -0
  350. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_smartstack_tools.py +0 -0
  351. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_spark_tools.py +0 -0
  352. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_tron_tools.py +0 -0
  353. {paasta_tools-1.31.1 → paasta_tools-1.31.3}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: paasta-tools
3
- Version: 1.31.1
3
+ Version: 1.31.3
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Author: Compute Infrastructure @ Yelp
6
6
  Author-email: compute-infra@yelp.com
@@ -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.31.1"
20
+ __version__ = "1.31.3"
@@ -1788,6 +1788,11 @@
1788
1788
  "KubernetesVersion": {
1789
1789
  "type": "object",
1790
1790
  "properties": {
1791
+ "container_port": {
1792
+ "description": "Port the container is expecting to receive traffic on",
1793
+ "type": "integer",
1794
+ "format": "int32"
1795
+ },
1791
1796
  "type": {
1792
1797
  "description": "Type of version (ReplicaSet or ControllerRevision)",
1793
1798
  "type": "string"
@@ -72,7 +72,6 @@ from paasta_tools.kubernetes_tools import format_tail_lines_for_kubernetes_pod
72
72
  from paasta_tools.kubernetes_tools import KubernetesDeploymentConfig
73
73
  from paasta_tools.kubernetes_tools import KubernetesDeployStatus
74
74
  from paasta_tools.kubernetes_tools import paasta_prefixed
75
- from paasta_tools.long_running_service_tools import DEFAULT_CONTAINER_PORT
76
75
  from paasta_tools.monitoring_tools import get_runbook
77
76
  from paasta_tools.monitoring_tools import get_team
78
77
  from paasta_tools.monitoring_tools import list_teams
@@ -918,11 +917,13 @@ def _print_flink_status_from_job_manager(
918
917
  else f"{pod_evicted_count}"
919
918
  )
920
919
 
920
+ pods_total_count = pod_running_count + pod_evicted_count + pod_other_count
921
921
  output.append(
922
922
  " Pods:"
923
923
  f" {pod_running_count} running,"
924
924
  f" {evicted} evicted,"
925
- f" {pod_other_count} other"
925
+ f" {pod_other_count} other,"
926
+ f" {pods_total_count} total"
926
927
  )
927
928
 
928
929
  if not should_job_info_be_shown(status["state"]):
@@ -945,12 +946,19 @@ def _print_flink_status_from_job_manager(
945
946
  output.append(str(e))
946
947
  return 1
947
948
 
949
+ jobs_total_count = (
950
+ overview.jobs_running
951
+ + overview.jobs_finished
952
+ + overview.jobs_failed
953
+ + overview.jobs_cancelled
954
+ )
948
955
  output.append(
949
956
  " Jobs:"
950
957
  f" {overview.jobs_running} running,"
951
958
  f" {overview.jobs_finished} finished,"
952
959
  f" {overview.jobs_failed} failed,"
953
- f" {overview.jobs_cancelled} cancelled"
960
+ f" {overview.jobs_cancelled} cancelled,"
961
+ f" {jobs_total_count} total"
954
962
  )
955
963
  output.append(
956
964
  " "
@@ -1314,7 +1322,9 @@ def get_version_table_entry(
1314
1322
  for state in ReplicaState
1315
1323
  if state in replica_state_counts
1316
1324
  ]
1317
- entry.append(f" Replica States: {' / '.join(replica_state_display)}")
1325
+ entry.append(
1326
+ f" Replica States: {' / '.join(replica_state_display)} / {replica_state_counts.total()} total"
1327
+ )
1318
1328
  if not verbose:
1319
1329
  unhealthy_replicas = [
1320
1330
  (state, pod) for state, pod in replica_states if state.is_unhealthy()
@@ -1322,13 +1332,23 @@ def get_version_table_entry(
1322
1332
  if unhealthy_replicas:
1323
1333
  entry.append(" Unhealthy Replicas:")
1324
1334
  replica_table = create_replica_table(
1325
- unhealthy_replicas, service, instance, cluster, verbose
1335
+ unhealthy_replicas,
1336
+ service,
1337
+ instance,
1338
+ cluster,
1339
+ version.container_port,
1340
+ verbose,
1326
1341
  )
1327
1342
  for line in replica_table:
1328
1343
  entry.append(f" {line}")
1329
1344
  else:
1330
1345
  replica_table = create_replica_table(
1331
- replica_states, service, instance, cluster, verbose
1346
+ replica_states,
1347
+ service,
1348
+ instance,
1349
+ cluster,
1350
+ version.container_port,
1351
+ verbose,
1332
1352
  )
1333
1353
  for line in replica_table:
1334
1354
  entry.append(f" {line}")
@@ -1403,12 +1423,6 @@ def get_main_container(pod: KubernetesPodV2) -> Optional[KubernetesContainerV2]:
1403
1423
  )
1404
1424
 
1405
1425
 
1406
- def get_container_env(container: Optional[KubernetesContainerV2]) -> Dict[str, str]:
1407
- if not container or not container.env:
1408
- return {}
1409
- return {env_var.name: env_var.value for env_var in container.env}
1410
-
1411
-
1412
1426
  def get_replica_state(pod: KubernetesPodV2) -> ReplicaState:
1413
1427
  phase = pod.phase
1414
1428
  state = ReplicaState.UNKNOWN
@@ -1474,6 +1488,7 @@ def create_replica_table(
1474
1488
  service: str,
1475
1489
  instance: str,
1476
1490
  cluster: str,
1491
+ container_port: int,
1477
1492
  verbose: int = 0,
1478
1493
  ) -> List[str]:
1479
1494
  header = ["ID", "IP/Port", "Host deployed to", "Started at what localtime", "State"]
@@ -1481,14 +1496,10 @@ def create_replica_table(
1481
1496
  for state, pod in pods:
1482
1497
  start_datetime = datetime.fromtimestamp(pod.create_timestamp)
1483
1498
  humanized_start_time = humanize.naturaltime(start_datetime)
1484
- # Get port from the main container's PAASTA_PORT env var, fallback to DEFAULT_CONTAINER_PORT
1485
- main_container = get_main_container(pod)
1486
- container_env = get_container_env(main_container)
1487
- paasta_port = container_env.get("PAASTA_PORT", str(DEFAULT_CONTAINER_PORT))
1488
1499
 
1489
1500
  row = [
1490
1501
  pod.name,
1491
- f"{pod.ip}:{paasta_port}" if pod.ip else "None",
1502
+ f"{pod.ip}:{container_port}" if pod.ip else "None",
1492
1503
  pod.host or "None",
1493
1504
  humanized_start_time,
1494
1505
  state.formatted_message,
@@ -1503,6 +1514,7 @@ def create_replica_table(
1503
1514
  )
1504
1515
  )
1505
1516
 
1517
+ main_container = get_main_container(pod)
1506
1518
  if main_container:
1507
1519
  if main_container.timestamp:
1508
1520
  timestamp = datetime.fromtimestamp(main_container.timestamp)
@@ -1,4 +1,5 @@
1
1
  import asyncio
2
+ import logging
2
3
  from asyncio.tasks import Task
3
4
  from collections import defaultdict
4
5
  from enum import Enum
@@ -17,6 +18,7 @@ from typing import Union
17
18
 
18
19
  import a_sync
19
20
  import pytz
21
+ import requests.exceptions
20
22
  from kubernetes.client import V1Container
21
23
  from kubernetes.client import V1ControllerRevision
22
24
  from kubernetes.client import V1Pod
@@ -75,6 +77,8 @@ INSTANCE_TYPE_CR_ID = dict(
75
77
  monkrelaycluster=monkrelaycluster_tools.cr_id,
76
78
  )
77
79
 
80
+ logger = logging.getLogger(__name__)
81
+
78
82
 
79
83
  class ServiceMesh(Enum):
80
84
  SMARTSTACK = "smartstack"
@@ -100,6 +104,7 @@ class KubernetesVersionDict(TypedDict, total=False):
100
104
  config_sha: str
101
105
  pods: Sequence[Mapping[str, Any]]
102
106
  namespace: str
107
+ container_port: Optional[int]
103
108
 
104
109
 
105
110
  def cr_id(service: str, instance: str, instance_type: str) -> Mapping[str, str]:
@@ -347,31 +352,49 @@ async def mesh_status(
347
352
 
348
353
  pods = await pods_task
349
354
  for location, hosts in node_hostname_by_location.items():
350
- host = replication_checker.get_hostname_in_pool(hosts, instance_pool)
351
- if service_mesh == ServiceMesh.SMARTSTACK:
352
- mesh_status["locations"].append(
353
- _build_smartstack_location_dict(
354
- synapse_host=host,
355
- synapse_port=settings.system_paasta_config.get_synapse_port(),
356
- synapse_haproxy_url_format=settings.system_paasta_config.get_synapse_haproxy_url_format(),
357
- registration=registration,
358
- pods=pods,
359
- location=location,
360
- should_return_individual_backends=should_return_individual_backends,
361
- )
362
- )
363
- elif service_mesh == ServiceMesh.ENVOY:
364
- mesh_status["locations"].append(
365
- _build_envoy_location_dict(
366
- envoy_host=host,
367
- envoy_admin_port=settings.system_paasta_config.get_envoy_admin_port(),
368
- envoy_admin_endpoint_format=settings.system_paasta_config.get_envoy_admin_endpoint_format(),
369
- registration=registration,
370
- pods=pods,
371
- location=location,
372
- should_return_individual_backends=should_return_individual_backends,
373
- )
374
- )
355
+ max_retries = 3
356
+
357
+ for attempt in range(max_retries):
358
+ host = replication_checker.get_hostname_in_pool(hosts, instance_pool)
359
+ try:
360
+ if service_mesh == ServiceMesh.SMARTSTACK:
361
+ location_dict = _build_smartstack_location_dict(
362
+ synapse_host=host,
363
+ synapse_port=settings.system_paasta_config.get_synapse_port(),
364
+ synapse_haproxy_url_format=settings.system_paasta_config.get_synapse_haproxy_url_format(),
365
+ registration=registration,
366
+ pods=pods,
367
+ location=location,
368
+ should_return_individual_backends=should_return_individual_backends,
369
+ )
370
+ elif service_mesh == ServiceMesh.ENVOY:
371
+ location_dict = _build_envoy_location_dict(
372
+ envoy_host=host,
373
+ envoy_admin_port=settings.system_paasta_config.get_envoy_admin_port(),
374
+ envoy_admin_endpoint_format=settings.system_paasta_config.get_envoy_admin_endpoint_format(),
375
+ registration=registration,
376
+ pods=pods,
377
+ location=location,
378
+ should_return_individual_backends=should_return_individual_backends,
379
+ )
380
+
381
+ mesh_status["locations"].append(location_dict)
382
+ return mesh_status
383
+
384
+ except requests.exceptions.ConnectTimeout:
385
+ if attempt < max_retries - 1:
386
+ logger.warning(
387
+ "attempt %s/%s: Unable to connect to %s, retrying (on another host, hopefully)...",
388
+ attempt,
389
+ max_retries,
390
+ host,
391
+ )
392
+ continue
393
+ else:
394
+ logger.critical(
395
+ "Unable to connect to %s, not retrying again.", host
396
+ )
397
+ raise
375
398
  return mesh_status
376
399
 
377
400
 
@@ -698,6 +721,7 @@ async def kubernetes_status_v2(
698
721
  instance=instance,
699
722
  namespaces=relevant_namespaces,
700
723
  pod_status_by_sha_and_readiness_task=pod_status_by_sha_and_readiness_task, # type: ignore # PAASTA-18698; ignoring due to unexpected type mismatch
724
+ container_port=job_config.get_container_port(),
701
725
  )
702
726
  )
703
727
  tasks.extend([pod_status_by_sha_and_readiness_task, versions_task]) # type: ignore # PAASTA-18698; ignoring due to unexpected type mismatch
@@ -717,6 +741,7 @@ async def kubernetes_status_v2(
717
741
  instance=instance,
718
742
  namespaces=relevant_namespaces,
719
743
  pod_status_by_replicaset_task=pod_status_by_replicaset_task, # type: ignore # PAASTA-18698; ignoring due to unexpected type mismatch
744
+ container_port=job_config.get_container_port(),
720
745
  )
721
746
  )
722
747
  tasks.extend([pod_status_by_replicaset_task, versions_task]) # type: ignore # PAASTA-18698; ignoring due to unexpected type mismatch
@@ -788,6 +813,7 @@ async def get_versions_for_replicasets(
788
813
  instance: str,
789
814
  namespaces: Iterable[str],
790
815
  pod_status_by_replicaset_task: "asyncio.Future[Mapping[str, Sequence[asyncio.Future[Dict[str, Any]]]]]",
816
+ container_port: Optional[int],
791
817
  ) -> List[KubernetesVersionDict]:
792
818
 
793
819
  replicaset_list: List[V1ReplicaSet] = []
@@ -815,6 +841,7 @@ async def get_versions_for_replicasets(
815
841
  replicaset,
816
842
  kube_client,
817
843
  pod_status_by_replicaset.get(replicaset.metadata.name),
844
+ container_port,
818
845
  )
819
846
  for replicaset in actually_running_replicasets
820
847
  ]
@@ -826,6 +853,7 @@ async def get_replicaset_status(
826
853
  replicaset: V1ReplicaSet,
827
854
  client: kubernetes_tools.KubeClient,
828
855
  pod_status_tasks: Sequence["asyncio.Future[Dict[str, Any]]"],
856
+ container_port: Optional[int],
829
857
  ) -> KubernetesVersionDict:
830
858
  return {
831
859
  "name": replicaset.metadata.name,
@@ -840,6 +868,7 @@ async def get_replicaset_status(
840
868
  "config_sha": replicaset.metadata.labels.get("paasta.yelp.com/config_sha"),
841
869
  "pods": await asyncio.gather(*pod_status_tasks) if pod_status_tasks else [],
842
870
  "namespace": replicaset.metadata.namespace,
871
+ "container_port": container_port,
843
872
  }
844
873
 
845
874
 
@@ -1063,6 +1092,7 @@ async def get_versions_for_controller_revisions(
1063
1092
  instance: str,
1064
1093
  namespaces: Iterable[str],
1065
1094
  pod_status_by_sha_and_readiness_task: "asyncio.Future[Mapping[Tuple[str, str], Mapping[bool, Sequence[asyncio.Future[Mapping[str, Any]]]]]]",
1095
+ container_port: Optional[int] = None,
1066
1096
  ) -> List[KubernetesVersionDict]:
1067
1097
  controller_revision_list: List[V1ControllerRevision] = []
1068
1098
 
@@ -1092,6 +1122,7 @@ async def get_versions_for_controller_revisions(
1092
1122
  cr,
1093
1123
  kube_client,
1094
1124
  pod_status_by_sha_and_readiness[(git_sha, config_sha)],
1125
+ container_port=container_port,
1095
1126
  )
1096
1127
  for (git_sha, config_sha), cr in cr_by_shas.items()
1097
1128
  ]
@@ -1106,6 +1137,7 @@ async def get_version_for_controller_revision(
1106
1137
  pod_status_tasks_by_readiness: Mapping[
1107
1138
  bool, Sequence["asyncio.Future[Mapping[str, Any]]"]
1108
1139
  ],
1140
+ container_port: Optional[int] = None,
1109
1141
  ) -> KubernetesVersionDict:
1110
1142
  all_pod_status_tasks = [
1111
1143
  task for tasks in pod_status_tasks_by_readiness.values() for task in tasks
@@ -1122,6 +1154,7 @@ async def get_version_for_controller_revision(
1122
1154
  "config_sha": cr.metadata.labels.get("paasta.yelp.com/config_sha"),
1123
1155
  "pods": [task.result() for task in all_pod_status_tasks],
1124
1156
  "namespace": cr.metadata.namespace,
1157
+ "container_port": container_port,
1125
1158
  }
1126
1159
 
1127
1160
 
@@ -81,6 +81,7 @@ class KubernetesVersion(ModelNormal):
81
81
  """
82
82
  lazy_import()
83
83
  return {
84
+ 'container_port': (int,), # noqa: E501
84
85
  'type': (str,), # noqa: E501
85
86
  'create_timestamp': (float,), # noqa: E501
86
87
  'git_sha': (str,), # noqa: E501
@@ -99,6 +100,7 @@ class KubernetesVersion(ModelNormal):
99
100
 
100
101
 
101
102
  attribute_map = {
103
+ 'container_port': 'container_port', # noqa: E501
102
104
  'type': 'type', # noqa: E501
103
105
  'create_timestamp': 'create_timestamp', # noqa: E501
104
106
  'git_sha': 'git_sha', # noqa: E501
@@ -157,6 +159,7 @@ class KubernetesVersion(ModelNormal):
157
159
  Animal class but this time we won't travel
158
160
  through its discriminator because we passed in
159
161
  _visited_composed_classes = (Animal,)
162
+ container_port (int): Port the container is expecting to receive traffic on. [optional] # noqa: E501
160
163
  type (str): Type of version (ReplicaSet or ControllerRevision). [optional] # noqa: E501
161
164
  create_timestamp (float): Unix timestamp when version was created. [optional] # noqa: E501
162
165
  git_sha (str): Git SHA of service code for this version of the instance. [optional] # noqa: E501
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: paasta-tools
3
- Version: 1.31.1
3
+ Version: 1.31.3
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Author: Compute Infrastructure @ Yelp
6
6
  Author-email: compute-infra@yelp.com
File without changes
File without changes
File without changes