paasta-tools 1.30.5__tar.gz → 1.30.8__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 (358) hide show
  1. {paasta_tools-1.30.5/paasta_tools.egg-info → paasta_tools-1.30.8}/PKG-INFO +1 -1
  2. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/__init__.py +1 -1
  3. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/info.py +5 -2
  4. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/remote_run.py +1 -1
  5. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/smartstack_schema.json +2 -0
  6. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes_tools.py +4 -0
  7. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/long_running_service_tools.py +7 -4
  8. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_job.py +42 -0
  9. {paasta_tools-1.30.5 → paasta_tools-1.30.8/paasta_tools.egg-info}/PKG-INFO +1 -1
  10. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_setup_kubernetes_job.py +106 -0
  11. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/LICENSE +0 -0
  12. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/MANIFEST.in +0 -0
  13. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/README.md +0 -0
  14. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/k8s_itests/__init__.py +0 -0
  15. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/k8s_itests/test_autoscaling.py +0 -0
  16. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/k8s_itests/utils.py +0 -0
  17. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/adhoc_tools.py +0 -0
  18. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/__init__.py +0 -0
  19. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/api.py +0 -0
  20. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/api_docs/swagger.json +0 -0
  21. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/client.py +0 -0
  22. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/settings.py +0 -0
  23. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/tweens/__init__.py +0 -0
  24. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/tweens/auth.py +0 -0
  25. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/tweens/profiling.py +0 -0
  26. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/tweens/request_logger.py +0 -0
  27. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/__init__.py +0 -0
  28. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/autoscaler.py +0 -0
  29. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/exception.py +0 -0
  30. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/flink.py +0 -0
  31. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/instance.py +0 -0
  32. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/pause_autoscaler.py +0 -0
  33. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/remote_run.py +0 -0
  34. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/resources.py +0 -0
  35. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/service.py +0 -0
  36. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/api/views/version.py +0 -0
  37. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/apply_external_resources.py +0 -0
  38. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/async_utils.py +0 -0
  39. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/autoscaling/__init__.py +0 -0
  40. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/autoscaling/autoscaling_service_lib.py +0 -0
  41. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/autoscaling/forecasting.py +0 -0
  42. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/autoscaling/max_all_k8s_services.py +0 -0
  43. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/autoscaling/pause_service_autoscaler.py +0 -0
  44. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/autoscaling/utils.py +0 -0
  45. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/bounce_lib.py +0 -0
  46. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/broadcast_log_to_services.py +0 -0
  47. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cassandracluster_tools.py +0 -0
  48. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_autoscaler_max_instances.py +0 -0
  49. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_cassandracluster_services_replication.py +0 -0
  50. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_flink_services_health.py +0 -0
  51. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_kubernetes_api.py +0 -0
  52. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_kubernetes_services_replication.py +0 -0
  53. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_oom_events.py +0 -0
  54. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_services_replication_tools.py +0 -0
  55. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/check_spark_jobs.py +0 -0
  56. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cleanup_expired_autoscaling_overrides.py +0 -0
  57. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cleanup_kubernetes_cr.py +0 -0
  58. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cleanup_kubernetes_crd.py +0 -0
  59. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cleanup_kubernetes_jobs.py +0 -0
  60. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cleanup_tron_namespaces.py +0 -0
  61. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/__init__.py +0 -0
  62. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/authentication.py +0 -0
  63. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cli.py +0 -0
  64. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/__init__.py +0 -0
  65. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/autoscale.py +0 -0
  66. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/check.py +0 -0
  67. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/cook_image.py +0 -0
  68. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/get_docker_image.py +0 -0
  69. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/get_image_version.py +0 -0
  70. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/get_latest_deployment.py +0 -0
  71. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/itest.py +0 -0
  72. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list.py +0 -0
  73. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list_clusters.py +0 -0
  74. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list_deploy_queue.py +0 -0
  75. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list_namespaces.py +0 -0
  76. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/local_run.py +0 -0
  77. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/logs.py +0 -0
  78. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/mark_for_deployment.py +0 -0
  79. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/mesh_status.py +0 -0
  80. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/pause_service_autoscaler.py +0 -0
  81. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/push_to_registry.py +0 -0
  82. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/rollback.py +0 -0
  83. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/secret.py +0 -0
  84. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/security_check.py +0 -0
  85. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/spark_run.py +0 -0
  86. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/start_stop_restart.py +0 -0
  87. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/status.py +0 -0
  88. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/validate.py +0 -0
  89. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/wait_for_deployment.py +0 -0
  90. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/__init__.py +0 -0
  91. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/autosuggest.py +0 -0
  92. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/README.md +0 -0
  93. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/cookiecutter.json +0 -0
  94. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/kubernetes-PROD.yaml +0 -0
  95. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/monitoring.yaml +0 -0
  96. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/service.yaml +0 -0
  97. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/smartstack.yaml +0 -0
  98. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/fsm_cmd.py +0 -0
  99. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/paasta_tabcomplete.sh +0 -0
  100. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/adhoc_schema.json +0 -0
  101. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/autoscaling_schema.json +0 -0
  102. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/autotuned_defaults/cassandracluster_schema.json +0 -0
  103. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/autotuned_defaults/kubernetes_schema.json +0 -0
  104. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/deploy_schema.json +0 -0
  105. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/eks_schema.json +0 -0
  106. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/kubernetes_schema.json +0 -0
  107. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/rollback_schema.json +0 -0
  108. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/service_schema.json +0 -0
  109. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/tron_schema.json +0 -0
  110. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/cli/utils.py +0 -0
  111. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/clusterman.py +0 -0
  112. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/config_utils.py +0 -0
  113. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/__init__.py +0 -0
  114. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/bounce_log_latency_parser.py +0 -0
  115. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/check_manual_oapi_changes.sh +0 -0
  116. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/check_orphans.py +0 -0
  117. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/create_dynamodb_table.py +0 -0
  118. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/create_paasta_playground.py +0 -0
  119. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/emit_allocated_cpu_metrics.py +0 -0
  120. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/get_running_task_allocation.py +0 -0
  121. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/habitat_fixer.py +0 -0
  122. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/ide_helper.py +0 -0
  123. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/is_pod_healthy_in_proxy.py +0 -0
  124. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/is_pod_healthy_in_smartstack.py +0 -0
  125. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/kill_bad_containers.py +0 -0
  126. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/mass-deploy-tag.sh +0 -0
  127. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/mock_patch_checker.py +0 -0
  128. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/paasta_update_soa_memcpu.py +0 -0
  129. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/render_template.py +0 -0
  130. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/rightsizer_soaconfigs_update.py +0 -0
  131. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/service_shard_remove.py +0 -0
  132. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/service_shard_update.py +0 -0
  133. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/shared_ip_check.py +0 -0
  134. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/contrib/timeouts_metrics_prom.py +0 -0
  135. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/delete_kubernetes_deployments.py +0 -0
  136. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/deployment_utils.py +0 -0
  137. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/docker_wrapper.py +0 -0
  138. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/docker_wrapper_imports.py +0 -0
  139. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/drain_lib.py +0 -0
  140. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/dump_locally_running_services.py +0 -0
  141. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/eks_tools.py +0 -0
  142. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/envoy_tools.py +0 -0
  143. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/firewall.py +0 -0
  144. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/firewall_logging.py +0 -0
  145. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/firewall_update.py +0 -0
  146. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/flink_tools.py +0 -0
  147. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/flinkeks_tools.py +0 -0
  148. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/frameworks/__init__.py +0 -0
  149. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/frameworks/adhoc_scheduler.py +0 -0
  150. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/frameworks/constraints.py +0 -0
  151. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/frameworks/native_scheduler.py +0 -0
  152. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/frameworks/native_service_config.py +0 -0
  153. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/frameworks/task_store.py +0 -0
  154. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/generate_all_deployments +0 -0
  155. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/generate_authenticating_services.py +0 -0
  156. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/generate_deployments_for_service.py +0 -0
  157. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/generate_services_file.py +0 -0
  158. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/generate_services_yaml.py +0 -0
  159. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/hacheck.py +0 -0
  160. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/instance/__init__.py +0 -0
  161. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/instance/hpa_metrics_parser.py +0 -0
  162. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/instance/kubernetes.py +0 -0
  163. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/iptables.py +0 -0
  164. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kafkacluster_tools.py +0 -0
  165. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/__init__.py +0 -0
  166. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/application/__init__.py +0 -0
  167. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/application/controller_wrappers.py +0 -0
  168. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/application/tools.py +0 -0
  169. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/__init__.py +0 -0
  170. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/kubernetes_remove_evicted_pods.py +0 -0
  171. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/paasta_cleanup_remote_run_resources.py +0 -0
  172. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/paasta_cleanup_stale_nodes.py +0 -0
  173. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/paasta_secrets_sync.py +0 -0
  174. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/kubernetes/remote_run.py +0 -0
  175. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/list_kubernetes_service_instances.py +0 -0
  176. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/list_tron_namespaces.py +0 -0
  177. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mac_address.py +0 -0
  178. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/marathon_dashboard.py +0 -0
  179. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/__init__.py +0 -0
  180. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/cfg.py +0 -0
  181. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/cluster.py +0 -0
  182. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/exceptions.py +0 -0
  183. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/framework.py +0 -0
  184. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/log.py +0 -0
  185. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/master.py +0 -0
  186. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/mesos_file.py +0 -0
  187. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/parallel.py +0 -0
  188. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/slave.py +0 -0
  189. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/task.py +0 -0
  190. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/util.py +0 -0
  191. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos/zookeeper.py +0 -0
  192. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos_maintenance.py +0 -0
  193. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/mesos_tools.py +0 -0
  194. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/metrics/__init__.py +0 -0
  195. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/metrics/metastatus_lib.py +0 -0
  196. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/metrics/metrics_lib.py +0 -0
  197. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/monitoring/__init__.py +0 -0
  198. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/monitoring/check_k8s_api_performance.py +0 -0
  199. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/monitoring_tools.py +0 -0
  200. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/monkrelaycluster_tools.py +0 -0
  201. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/nrtsearchservice_tools.py +0 -0
  202. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/nrtsearchserviceeks_tools.py +0 -0
  203. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/oom_logger.py +0 -0
  204. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paasta_deploy_tron_jobs +0 -0
  205. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paasta_execute_docker_command.py +0 -0
  206. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paasta_native_serviceinit.py +0 -0
  207. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paasta_service_config_loader.py +0 -0
  208. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/__init__.py +0 -0
  209. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/__init__.py +0 -0
  210. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/autoscaler_api.py +0 -0
  211. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/default_api.py +0 -0
  212. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/remote_run_api.py +0 -0
  213. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/resources_api.py +0 -0
  214. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/service_api.py +0 -0
  215. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api_client.py +0 -0
  216. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/apis/__init__.py +0 -0
  217. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/configuration.py +0 -0
  218. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/exceptions.py +0 -0
  219. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/__init__.py +0 -0
  220. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/adhoc_launch_history.py +0 -0
  221. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/autoscaler_count_msg.py +0 -0
  222. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/autoscaling_override.py +0 -0
  223. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/deploy_queue.py +0 -0
  224. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/deploy_queue_service_instance.py +0 -0
  225. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/envoy_backend.py +0 -0
  226. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/envoy_location.py +0 -0
  227. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/envoy_status.py +0 -0
  228. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_cluster_overview.py +0 -0
  229. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_config.py +0 -0
  230. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_job.py +0 -0
  231. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_job_details.py +0 -0
  232. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_jobs.py +0 -0
  233. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/float_and_error.py +0 -0
  234. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/hpa_metric.py +0 -0
  235. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_object.py +0 -0
  236. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response200.py +0 -0
  237. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response2001.py +0 -0
  238. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response202.py +0 -0
  239. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response403.py +0 -0
  240. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_bounce_status.py +0 -0
  241. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_mesh_status.py +0 -0
  242. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status.py +0 -0
  243. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_adhoc.py +0 -0
  244. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_cassandracluster.py +0 -0
  245. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_flink.py +0 -0
  246. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kafkacluster.py +0 -0
  247. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kubernetes.py +0 -0
  248. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kubernetes_autoscaling_status.py +0 -0
  249. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kubernetes_v2.py +0 -0
  250. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_tron.py +0 -0
  251. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_tasks.py +0 -0
  252. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/integer_and_error.py +0 -0
  253. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_container.py +0 -0
  254. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_container_v2.py +0 -0
  255. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_healthcheck.py +0 -0
  256. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_pod.py +0 -0
  257. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_pod_event.py +0 -0
  258. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_pod_v2.py +0 -0
  259. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_replica_set.py +0 -0
  260. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_version.py +0 -0
  261. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_outcome.py +0 -0
  262. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_start.py +0 -0
  263. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_stop.py +0 -0
  264. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_token.py +0 -0
  265. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/resource.py +0 -0
  266. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/resource_item.py +0 -0
  267. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/resource_value.py +0 -0
  268. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/smartstack_backend.py +0 -0
  269. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/smartstack_location.py +0 -0
  270. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/smartstack_status.py +0 -0
  271. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/task_tail_lines.py +0 -0
  272. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model_utils.py +0 -0
  273. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/models/__init__.py +0 -0
  274. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/paastaapi/rest.py +0 -0
  275. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/prune_completed_pods.py +0 -0
  276. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/puppet_service_tools.py +0 -0
  277. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/py.typed +0 -0
  278. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/remote_git.py +0 -0
  279. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/run-paasta-api-in-dev-mode.py +0 -0
  280. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/run-paasta-api-playground.py +0 -0
  281. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/secret_providers/__init__.py +0 -0
  282. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/secret_providers/vault.py +0 -0
  283. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/secret_tools.py +0 -0
  284. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/setup_istio_mesh.py +0 -0
  285. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_cr.py +0 -0
  286. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_crd.py +0 -0
  287. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_internal_crd.py +0 -0
  288. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/setup_prometheus_adapter_config.py +0 -0
  289. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/setup_tron_namespace.py +0 -0
  290. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/slack.py +0 -0
  291. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/smartstack_tools.py +0 -0
  292. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/spark_tools.py +0 -0
  293. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/synapse_srv_namespaces_fact.py +0 -0
  294. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/tron/__init__.py +0 -0
  295. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/tron/client.py +0 -0
  296. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/tron/tron_command_context.py +0 -0
  297. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/tron/tron_timeutils.py +0 -0
  298. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/tron_tools.py +0 -0
  299. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/utils.py +0 -0
  300. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools/yaml_tools.py +0 -0
  301. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools.egg-info/SOURCES.txt +0 -0
  302. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools.egg-info/dependency_links.txt +0 -0
  303. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools.egg-info/entry_points.txt +0 -0
  304. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools.egg-info/requires.txt +0 -0
  305. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/paasta_tools.egg-info/top_level.txt +0 -0
  306. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/pyproject.toml +0 -0
  307. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/requirements-minimal.txt +0 -0
  308. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/setup.cfg +0 -0
  309. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/setup.py +0 -0
  310. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_adhoc_tools.py +0 -0
  311. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_apply_external_resources.py +0 -0
  312. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_async_utils.py +0 -0
  313. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_bounce_lib.py +0 -0
  314. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_check_flink_services_health.py +0 -0
  315. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_check_kubernetes_services_replication.py +0 -0
  316. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_check_oom_events.py +0 -0
  317. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_check_service_replication_tools.py +0 -0
  318. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_check_spark_jobs.py +0 -0
  319. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_cleanup_kubernetes_jobs.py +0 -0
  320. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_config_utils.py +0 -0
  321. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_delete_kubernetes_deployments.py +0 -0
  322. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_deployment_utils.py +0 -0
  323. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_docker_wrapper.py +0 -0
  324. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_drain_lib.py +0 -0
  325. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_eks_tools.py +0 -0
  326. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_envoy_tools.py +0 -0
  327. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_firewall.py +0 -0
  328. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_firewall_logging.py +0 -0
  329. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_firewall_update.py +0 -0
  330. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_flink_tools.py +0 -0
  331. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_flinkeks_tools.py +0 -0
  332. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_generate_authenticating_services.py +0 -0
  333. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_generate_deployments_for_service.py +0 -0
  334. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_generate_services_file.py +0 -0
  335. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_generate_services_yaml.py +0 -0
  336. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_hacheck.py +0 -0
  337. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_iptables.py +0 -0
  338. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_kubernetes_tools.py +0 -0
  339. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_list_kubernetes_service_instances.py +0 -0
  340. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_long_running_service_tools.py +0 -0
  341. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_mac_address.py +0 -0
  342. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_mesos_tools.py +0 -0
  343. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_monitoring_tools.py +0 -0
  344. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_nrtsearchserviceseks_tools.py +0 -0
  345. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_oom_logger.py +0 -0
  346. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_paasta_execute_docker_command.py +0 -0
  347. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_paasta_service_config_loader.py +0 -0
  348. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_puppet_service_tools.py +0 -0
  349. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_remote_git.py +0 -0
  350. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_secret_tools.py +0 -0
  351. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_setup_istio_mesh.py +0 -0
  352. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_setup_kubernetes_cr.py +0 -0
  353. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_setup_prometheus_adapter_config.py +0 -0
  354. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_slack.py +0 -0
  355. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_smartstack_tools.py +0 -0
  356. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_spark_tools.py +0 -0
  357. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_tron_tools.py +0 -0
  358. {paasta_tools-1.30.5 → paasta_tools-1.30.8}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: paasta-tools
3
- Version: 1.30.5
3
+ Version: 1.30.8
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.30.5"
20
+ __version__ = "1.30.8"
@@ -78,8 +78,9 @@ def get_smartstack_endpoints(service, soa_dir):
78
78
  service, full_name=False, soa_dir=soa_dir
79
79
  ):
80
80
  mode = config.get("mode", "http")
81
+ url_scheme = "http" if mode == "http2" else mode
81
82
  port = config.get("proxy_port")
82
- endpoints.append(f"{mode}://169.254.255.254:{port} ({name})")
83
+ endpoints.append(f"{url_scheme}://169.254.255.254:{port} ({name})")
83
84
  return endpoints
84
85
 
85
86
 
@@ -96,10 +97,12 @@ def get_deployments_strings(service: str, soa_dir: str) -> List[str]:
96
97
  service=service, namespace="main", soa_dir=soa_dir
97
98
  )
98
99
  service_mode = service_config.get_mode()
100
+ url_scheme = "http" if service_mode == "http2" else service_mode
101
+
99
102
  for cluster in deployments_to_clusters(deployments):
100
103
  if service_mode in TESTABLE_SERVICE_MODES:
101
104
  link = PaastaColors.cyan(
102
- f"{service_mode}://{service}.proxy.{cluster}.paasta/"
105
+ f"{url_scheme}://{service}.proxy.{cluster}.paasta/"
103
106
  )
104
107
  else:
105
108
  link = "N/A"
@@ -369,7 +369,7 @@ def add_subparser(subparsers: argparse._SubParsersAction) -> None:
369
369
  "automatically stopped (capped by the API backend)"
370
370
  ),
371
371
  type=int,
372
- default=1800,
372
+ default=7200,
373
373
  )
374
374
  start_parser.add_argument(
375
375
  "-f",
@@ -37,6 +37,7 @@
37
37
  "enum": [
38
38
  "http",
39
39
  "https",
40
+ "http2",
40
41
  "tcp"
41
42
  ]
42
43
  },
@@ -117,6 +118,7 @@
117
118
  "enum": [
118
119
  "http",
119
120
  "https",
121
+ "http2",
120
122
  "tcp"
121
123
  ]
122
124
  },
@@ -270,6 +270,10 @@ class KubeDeployment(NamedTuple):
270
270
  namespace: str
271
271
  replicas: Optional[int]
272
272
 
273
+ @property
274
+ def deployment_version(self) -> DeploymentVersion:
275
+ return DeploymentVersion(self.git_sha, self.image_version)
276
+
273
277
 
274
278
  class KubeCustomResource(NamedTuple):
275
279
  service: str
@@ -95,9 +95,12 @@ class ServiceNamespaceConfig(dict):
95
95
  """
96
96
  healthcheck_mode = self.get("healthcheck_mode", None)
97
97
  if not healthcheck_mode:
98
- return self.get_mode()
99
- else:
100
- return healthcheck_mode
98
+ mode = self.get_mode()
99
+ if mode == "http2":
100
+ healthcheck_mode = "http"
101
+ else:
102
+ healthcheck_mode = mode
103
+ return healthcheck_mode
101
104
 
102
105
  def get_mode(self) -> str:
103
106
  """Get the mode that the service runs in and check that we support it.
@@ -112,7 +115,7 @@ class ServiceNamespaceConfig(dict):
112
115
  return None
113
116
  else:
114
117
  return "http"
115
- elif mode in ["http", "tcp", "https"]:
118
+ elif mode in ["http", "http2", "tcp", "https"]:
116
119
  return mode
117
120
  else:
118
121
  raise InvalidSmartstackMode("Unknown mode: %s" % mode)
@@ -52,6 +52,7 @@ from paasta_tools.kubernetes_tools import load_kubernetes_service_config_no_cach
52
52
  from paasta_tools.metrics import metrics_lib
53
53
  from paasta_tools.utils import decompose_job_id
54
54
  from paasta_tools.utils import DEFAULT_SOA_DIR
55
+ from paasta_tools.utils import DeploymentVersion
55
56
  from paasta_tools.utils import InvalidJobNameError
56
57
  from paasta_tools.utils import load_system_paasta_config
57
58
  from paasta_tools.utils import NoConfigurationForServiceError
@@ -363,6 +364,14 @@ def setup_kube_deployments(
363
364
  for deployment in existing_kube_deployments
364
365
  }
365
366
 
367
+ existing_deployment_versions: Dict[
368
+ Tuple[str, str, str], List[DeploymentVersion]
369
+ ] = {}
370
+ for deployment in existing_kube_deployments:
371
+ existing_deployment_versions.setdefault(
372
+ (deployment.service, deployment.instance, deployment.namespace), []
373
+ ).append(deployment.deployment_version)
374
+
366
375
  hpa_overrides = hpa_overrides or {}
367
376
 
368
377
  applications = [
@@ -379,6 +388,39 @@ def setup_kube_deployments(
379
388
  else (_, None)
380
389
  for _, service_instance in service_instance_configs_list
381
390
  ]
391
+
392
+ def sort_key(ok_app: Tuple[bool, Optional[Application]]) -> int:
393
+ """This will return 1 if the desired deployment_version matches an existing deployment_version, 2 if the deployment is unhealthy and 0
394
+ otherwise. This will cause applications that need a new deployment_version to be handled first.
395
+ This prioritizes "real" bounces (developers pushing new service versions) over things that are likely to be big
396
+ bounces (config-only changes).
397
+ Most of the time, this won't matter much, as we should get through our backlog quickly, but when there is a
398
+ backlog, we want to avoid blocking developers.
399
+ """
400
+ _, app = ok_app
401
+ if app:
402
+ if (
403
+ app.kube_deployment.deployment_version
404
+ in existing_deployment_versions.get(
405
+ (
406
+ app.kube_deployment.service,
407
+ app.kube_deployment.instance,
408
+ app.kube_deployment.namespace,
409
+ ),
410
+ [],
411
+ )
412
+ ):
413
+ # Desired version exists, so this is just a configuration update; handle this second.
414
+ return 1
415
+ else:
416
+ # Desired version doesn't exist, handle this first.
417
+ return 0
418
+ else:
419
+ # Handle broken app last.
420
+ return 2
421
+
422
+ applications.sort(key=sort_key)
423
+
382
424
  api_updates = 0
383
425
  for _, app in applications:
384
426
  if app:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: paasta-tools
3
- Version: 1.30.5
3
+ Version: 1.30.8
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Author: Compute Infrastructure @ Yelp
6
6
  Author-email: compute-infra@yelp.com
@@ -1,4 +1,5 @@
1
1
  from typing import List
2
+ from typing import Optional
2
3
  from typing import Tuple
3
4
  from typing import Union
4
5
 
@@ -10,6 +11,7 @@ from pytest import raises
10
11
 
11
12
  from paasta_tools.eks_tools import EksDeploymentConfig
12
13
  from paasta_tools.kubernetes.application.controller_wrappers import Application
14
+ from paasta_tools.kubernetes_tools import HpaOverride
13
15
  from paasta_tools.kubernetes_tools import InvalidKubernetesConfig
14
16
  from paasta_tools.kubernetes_tools import KubeDeployment
15
17
  from paasta_tools.kubernetes_tools import KubernetesDeploymentConfig
@@ -20,6 +22,7 @@ from paasta_tools.setup_kubernetes_job import get_service_instances_with_valid_n
20
22
  from paasta_tools.setup_kubernetes_job import main
21
23
  from paasta_tools.setup_kubernetes_job import parse_args
22
24
  from paasta_tools.setup_kubernetes_job import setup_kube_deployments
25
+ from paasta_tools.utils import DeploymentVersion
23
26
  from paasta_tools.utils import NoConfigurationForServiceError
24
27
  from paasta_tools.utils import NoDeploymentsAvailable
25
28
 
@@ -935,3 +938,106 @@ def test_setup_kube_deployments_skip_malformed_apps(
935
938
  assert mock_log_obj.exception.call_args_list[0] == mock.call(
936
939
  "Error while processing: fake_app"
937
940
  )
941
+
942
+
943
+ def test_setup_kube_deployments_does_git_sha_changes_first():
944
+ with mock.patch(
945
+ "paasta_tools.setup_kubernetes_job.create_application_object",
946
+ autospec=True,
947
+ ) as mock_create_application_object, mock.patch(
948
+ "paasta_tools.setup_kubernetes_job.list_all_paasta_deployments", autospec=True
949
+ ) as mock_list_all_paasta_deployments, mock.patch(
950
+ "paasta_tools.setup_kubernetes_job.log", autospec=True
951
+ ) as mock_log_obj:
952
+ mock_client = mock.Mock()
953
+ mock_kube_deploy_config_fm = KubernetesDeploymentConfig(
954
+ service="kurupt",
955
+ instance="fm",
956
+ cluster="fake_cluster",
957
+ config_dict={},
958
+ branch_dict=None,
959
+ )
960
+ mock_kube_deploy_config_garage = KubernetesDeploymentConfig(
961
+ service="kurupt",
962
+ instance="garage",
963
+ cluster="fake_cluster",
964
+ config_dict={},
965
+ branch_dict=None,
966
+ )
967
+
968
+ mock_list_all_paasta_deployments.return_value = [
969
+ KubeDeployment(
970
+ service="kurupt",
971
+ instance="garage",
972
+ git_sha="1",
973
+ namespace="paasta",
974
+ image_version="extrastuff-1",
975
+ config_sha="1",
976
+ replicas=1,
977
+ ),
978
+ KubeDeployment(
979
+ service="kurupt",
980
+ instance="fm",
981
+ git_sha="1",
982
+ namespace="paasta",
983
+ image_version="extrastuff-1",
984
+ config_sha="1",
985
+ replicas=1,
986
+ ),
987
+ ]
988
+
989
+ mock_service_instance_configs_list = [
990
+ (True, mock_kube_deploy_config_garage),
991
+ (True, mock_kube_deploy_config_fm),
992
+ ]
993
+
994
+ garage_app = mock.Mock(
995
+ kube_deployment=mock.Mock(
996
+ git_sha="1",
997
+ service="kurupt",
998
+ instance="garage",
999
+ image_version="extrastuff-1",
1000
+ namespace="paasta",
1001
+ deployment_version=DeploymentVersion("1", "extrastuff-1"),
1002
+ ),
1003
+ )
1004
+ fm_app = mock.Mock(
1005
+ kube_deployment=mock.Mock(
1006
+ git_sha="2",
1007
+ service="kurupt",
1008
+ instance="fm",
1009
+ image_version="extrastuff-1",
1010
+ namespace="paasta",
1011
+ deployment_version=DeploymentVersion("2", "extrastuff-1"),
1012
+ ),
1013
+ )
1014
+
1015
+ def fake_create_application_object(
1016
+ cluster: str,
1017
+ soa_dir: str,
1018
+ service_instance_config: KubernetesDeploymentConfig,
1019
+ eks: bool = False,
1020
+ hpa_override: Optional[HpaOverride] = None,
1021
+ ):
1022
+ if service_instance_config.instance == "garage":
1023
+ return (True, garage_app)
1024
+ elif service_instance_config.instance == "fm":
1025
+ return (True, fm_app)
1026
+ raise ValueError("expecting instance of 'fm' or 'garage'")
1027
+
1028
+ mock_create_application_object.side_effect = fake_create_application_object
1029
+
1030
+ setup_kube_deployments(
1031
+ kube_client=mock_client,
1032
+ service_instance_configs_list=mock_service_instance_configs_list,
1033
+ cluster="fake_cluster",
1034
+ soa_dir="/nail/blah",
1035
+ rate_limit=1,
1036
+ )
1037
+
1038
+ # With rate_limit == 1, only the app with a different `git_sha` should be bounced.
1039
+ assert garage_app.update.call_count == 0
1040
+ assert fm_app.update.call_count == 1
1041
+ mock_log_obj.info.assert_any_call(
1042
+ "Not doing any further updates as we reached the limit (1)"
1043
+ )
File without changes
File without changes
File without changes