paasta-tools 1.30.7__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.7/paasta_tools.egg-info → paasta_tools-1.30.8}/PKG-INFO +1 -1
  2. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/__init__.py +1 -1
  3. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes_tools.py +4 -0
  4. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_job.py +42 -0
  5. {paasta_tools-1.30.7 → paasta_tools-1.30.8/paasta_tools.egg-info}/PKG-INFO +1 -1
  6. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_setup_kubernetes_job.py +106 -0
  7. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/LICENSE +0 -0
  8. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/MANIFEST.in +0 -0
  9. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/README.md +0 -0
  10. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/k8s_itests/__init__.py +0 -0
  11. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/k8s_itests/test_autoscaling.py +0 -0
  12. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/k8s_itests/utils.py +0 -0
  13. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/adhoc_tools.py +0 -0
  14. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/__init__.py +0 -0
  15. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/api.py +0 -0
  16. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/api_docs/swagger.json +0 -0
  17. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/client.py +0 -0
  18. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/settings.py +0 -0
  19. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/tweens/__init__.py +0 -0
  20. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/tweens/auth.py +0 -0
  21. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/tweens/profiling.py +0 -0
  22. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/tweens/request_logger.py +0 -0
  23. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/__init__.py +0 -0
  24. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/autoscaler.py +0 -0
  25. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/exception.py +0 -0
  26. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/flink.py +0 -0
  27. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/instance.py +0 -0
  28. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/pause_autoscaler.py +0 -0
  29. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/remote_run.py +0 -0
  30. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/resources.py +0 -0
  31. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/service.py +0 -0
  32. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/api/views/version.py +0 -0
  33. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/apply_external_resources.py +0 -0
  34. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/async_utils.py +0 -0
  35. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/autoscaling/__init__.py +0 -0
  36. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/autoscaling/autoscaling_service_lib.py +0 -0
  37. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/autoscaling/forecasting.py +0 -0
  38. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/autoscaling/max_all_k8s_services.py +0 -0
  39. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/autoscaling/pause_service_autoscaler.py +0 -0
  40. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/autoscaling/utils.py +0 -0
  41. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/bounce_lib.py +0 -0
  42. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/broadcast_log_to_services.py +0 -0
  43. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cassandracluster_tools.py +0 -0
  44. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_autoscaler_max_instances.py +0 -0
  45. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_cassandracluster_services_replication.py +0 -0
  46. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_flink_services_health.py +0 -0
  47. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_kubernetes_api.py +0 -0
  48. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_kubernetes_services_replication.py +0 -0
  49. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_oom_events.py +0 -0
  50. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_services_replication_tools.py +0 -0
  51. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/check_spark_jobs.py +0 -0
  52. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cleanup_expired_autoscaling_overrides.py +0 -0
  53. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cleanup_kubernetes_cr.py +0 -0
  54. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cleanup_kubernetes_crd.py +0 -0
  55. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cleanup_kubernetes_jobs.py +0 -0
  56. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cleanup_tron_namespaces.py +0 -0
  57. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/__init__.py +0 -0
  58. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/authentication.py +0 -0
  59. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cli.py +0 -0
  60. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/__init__.py +0 -0
  61. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/autoscale.py +0 -0
  62. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/check.py +0 -0
  63. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/cook_image.py +0 -0
  64. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/get_docker_image.py +0 -0
  65. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/get_image_version.py +0 -0
  66. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/get_latest_deployment.py +0 -0
  67. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/info.py +0 -0
  68. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/itest.py +0 -0
  69. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list.py +0 -0
  70. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list_clusters.py +0 -0
  71. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list_deploy_queue.py +0 -0
  72. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/list_namespaces.py +0 -0
  73. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/local_run.py +0 -0
  74. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/logs.py +0 -0
  75. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/mark_for_deployment.py +0 -0
  76. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/mesh_status.py +0 -0
  77. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/pause_service_autoscaler.py +0 -0
  78. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/push_to_registry.py +0 -0
  79. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/remote_run.py +0 -0
  80. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/rollback.py +0 -0
  81. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/secret.py +0 -0
  82. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/security_check.py +0 -0
  83. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/spark_run.py +0 -0
  84. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/start_stop_restart.py +0 -0
  85. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/status.py +0 -0
  86. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/validate.py +0 -0
  87. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/cmds/wait_for_deployment.py +0 -0
  88. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/__init__.py +0 -0
  89. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/autosuggest.py +0 -0
  90. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/README.md +0 -0
  91. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/cookiecutter.json +0 -0
  92. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/kubernetes-PROD.yaml +0 -0
  93. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/monitoring.yaml +0 -0
  94. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/service.yaml +0 -0
  95. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm/template/{{cookiecutter.service}}/smartstack.yaml +0 -0
  96. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/fsm_cmd.py +0 -0
  97. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/paasta_tabcomplete.sh +0 -0
  98. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/adhoc_schema.json +0 -0
  99. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/autoscaling_schema.json +0 -0
  100. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/autotuned_defaults/cassandracluster_schema.json +0 -0
  101. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/autotuned_defaults/kubernetes_schema.json +0 -0
  102. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/deploy_schema.json +0 -0
  103. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/eks_schema.json +0 -0
  104. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/kubernetes_schema.json +0 -0
  105. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/rollback_schema.json +0 -0
  106. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/service_schema.json +0 -0
  107. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/smartstack_schema.json +0 -0
  108. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/schemas/tron_schema.json +0 -0
  109. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/cli/utils.py +0 -0
  110. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/clusterman.py +0 -0
  111. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/config_utils.py +0 -0
  112. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/__init__.py +0 -0
  113. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/bounce_log_latency_parser.py +0 -0
  114. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/check_manual_oapi_changes.sh +0 -0
  115. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/check_orphans.py +0 -0
  116. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/create_dynamodb_table.py +0 -0
  117. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/create_paasta_playground.py +0 -0
  118. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/emit_allocated_cpu_metrics.py +0 -0
  119. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/get_running_task_allocation.py +0 -0
  120. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/habitat_fixer.py +0 -0
  121. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/ide_helper.py +0 -0
  122. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/is_pod_healthy_in_proxy.py +0 -0
  123. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/is_pod_healthy_in_smartstack.py +0 -0
  124. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/kill_bad_containers.py +0 -0
  125. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/mass-deploy-tag.sh +0 -0
  126. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/mock_patch_checker.py +0 -0
  127. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/paasta_update_soa_memcpu.py +0 -0
  128. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/render_template.py +0 -0
  129. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/rightsizer_soaconfigs_update.py +0 -0
  130. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/service_shard_remove.py +0 -0
  131. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/service_shard_update.py +0 -0
  132. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/shared_ip_check.py +0 -0
  133. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/contrib/timeouts_metrics_prom.py +0 -0
  134. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/delete_kubernetes_deployments.py +0 -0
  135. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/deployment_utils.py +0 -0
  136. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/docker_wrapper.py +0 -0
  137. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/docker_wrapper_imports.py +0 -0
  138. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/drain_lib.py +0 -0
  139. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/dump_locally_running_services.py +0 -0
  140. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/eks_tools.py +0 -0
  141. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/envoy_tools.py +0 -0
  142. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/firewall.py +0 -0
  143. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/firewall_logging.py +0 -0
  144. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/firewall_update.py +0 -0
  145. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/flink_tools.py +0 -0
  146. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/flinkeks_tools.py +0 -0
  147. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/frameworks/__init__.py +0 -0
  148. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/frameworks/adhoc_scheduler.py +0 -0
  149. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/frameworks/constraints.py +0 -0
  150. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/frameworks/native_scheduler.py +0 -0
  151. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/frameworks/native_service_config.py +0 -0
  152. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/frameworks/task_store.py +0 -0
  153. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/generate_all_deployments +0 -0
  154. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/generate_authenticating_services.py +0 -0
  155. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/generate_deployments_for_service.py +0 -0
  156. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/generate_services_file.py +0 -0
  157. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/generate_services_yaml.py +0 -0
  158. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/hacheck.py +0 -0
  159. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/instance/__init__.py +0 -0
  160. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/instance/hpa_metrics_parser.py +0 -0
  161. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/instance/kubernetes.py +0 -0
  162. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/iptables.py +0 -0
  163. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kafkacluster_tools.py +0 -0
  164. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/__init__.py +0 -0
  165. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/application/__init__.py +0 -0
  166. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/application/controller_wrappers.py +0 -0
  167. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/application/tools.py +0 -0
  168. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/__init__.py +0 -0
  169. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/kubernetes_remove_evicted_pods.py +0 -0
  170. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/paasta_cleanup_remote_run_resources.py +0 -0
  171. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/paasta_cleanup_stale_nodes.py +0 -0
  172. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/bin/paasta_secrets_sync.py +0 -0
  173. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/kubernetes/remote_run.py +0 -0
  174. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/list_kubernetes_service_instances.py +0 -0
  175. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/list_tron_namespaces.py +0 -0
  176. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/long_running_service_tools.py +0 -0
  177. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mac_address.py +0 -0
  178. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/marathon_dashboard.py +0 -0
  179. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/__init__.py +0 -0
  180. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/cfg.py +0 -0
  181. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/cluster.py +0 -0
  182. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/exceptions.py +0 -0
  183. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/framework.py +0 -0
  184. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/log.py +0 -0
  185. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/master.py +0 -0
  186. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/mesos_file.py +0 -0
  187. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/parallel.py +0 -0
  188. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/slave.py +0 -0
  189. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/task.py +0 -0
  190. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/util.py +0 -0
  191. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos/zookeeper.py +0 -0
  192. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos_maintenance.py +0 -0
  193. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/mesos_tools.py +0 -0
  194. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/metrics/__init__.py +0 -0
  195. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/metrics/metastatus_lib.py +0 -0
  196. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/metrics/metrics_lib.py +0 -0
  197. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/monitoring/__init__.py +0 -0
  198. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/monitoring/check_k8s_api_performance.py +0 -0
  199. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/monitoring_tools.py +0 -0
  200. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/monkrelaycluster_tools.py +0 -0
  201. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/nrtsearchservice_tools.py +0 -0
  202. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/nrtsearchserviceeks_tools.py +0 -0
  203. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/oom_logger.py +0 -0
  204. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paasta_deploy_tron_jobs +0 -0
  205. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paasta_execute_docker_command.py +0 -0
  206. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paasta_native_serviceinit.py +0 -0
  207. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paasta_service_config_loader.py +0 -0
  208. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/__init__.py +0 -0
  209. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/__init__.py +0 -0
  210. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/autoscaler_api.py +0 -0
  211. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/default_api.py +0 -0
  212. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/remote_run_api.py +0 -0
  213. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/resources_api.py +0 -0
  214. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api/service_api.py +0 -0
  215. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/api_client.py +0 -0
  216. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/apis/__init__.py +0 -0
  217. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/configuration.py +0 -0
  218. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/exceptions.py +0 -0
  219. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/__init__.py +0 -0
  220. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/adhoc_launch_history.py +0 -0
  221. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/autoscaler_count_msg.py +0 -0
  222. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/autoscaling_override.py +0 -0
  223. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/deploy_queue.py +0 -0
  224. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/deploy_queue_service_instance.py +0 -0
  225. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/envoy_backend.py +0 -0
  226. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/envoy_location.py +0 -0
  227. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/envoy_status.py +0 -0
  228. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_cluster_overview.py +0 -0
  229. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_config.py +0 -0
  230. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_job.py +0 -0
  231. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_job_details.py +0 -0
  232. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/flink_jobs.py +0 -0
  233. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/float_and_error.py +0 -0
  234. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/hpa_metric.py +0 -0
  235. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_object.py +0 -0
  236. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response200.py +0 -0
  237. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response2001.py +0 -0
  238. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response202.py +0 -0
  239. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/inline_response403.py +0 -0
  240. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_bounce_status.py +0 -0
  241. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_mesh_status.py +0 -0
  242. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status.py +0 -0
  243. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_adhoc.py +0 -0
  244. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_cassandracluster.py +0 -0
  245. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_flink.py +0 -0
  246. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kafkacluster.py +0 -0
  247. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kubernetes.py +0 -0
  248. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kubernetes_autoscaling_status.py +0 -0
  249. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_kubernetes_v2.py +0 -0
  250. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_status_tron.py +0 -0
  251. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/instance_tasks.py +0 -0
  252. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/integer_and_error.py +0 -0
  253. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_container.py +0 -0
  254. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_container_v2.py +0 -0
  255. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_healthcheck.py +0 -0
  256. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_pod.py +0 -0
  257. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_pod_event.py +0 -0
  258. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_pod_v2.py +0 -0
  259. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_replica_set.py +0 -0
  260. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/kubernetes_version.py +0 -0
  261. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_outcome.py +0 -0
  262. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_start.py +0 -0
  263. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_stop.py +0 -0
  264. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/remote_run_token.py +0 -0
  265. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/resource.py +0 -0
  266. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/resource_item.py +0 -0
  267. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/resource_value.py +0 -0
  268. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/smartstack_backend.py +0 -0
  269. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/smartstack_location.py +0 -0
  270. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/smartstack_status.py +0 -0
  271. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model/task_tail_lines.py +0 -0
  272. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/model_utils.py +0 -0
  273. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/models/__init__.py +0 -0
  274. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/paastaapi/rest.py +0 -0
  275. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/prune_completed_pods.py +0 -0
  276. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/puppet_service_tools.py +0 -0
  277. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/py.typed +0 -0
  278. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/remote_git.py +0 -0
  279. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/run-paasta-api-in-dev-mode.py +0 -0
  280. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/run-paasta-api-playground.py +0 -0
  281. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/secret_providers/__init__.py +0 -0
  282. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/secret_providers/vault.py +0 -0
  283. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/secret_tools.py +0 -0
  284. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/setup_istio_mesh.py +0 -0
  285. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_cr.py +0 -0
  286. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_crd.py +0 -0
  287. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/setup_kubernetes_internal_crd.py +0 -0
  288. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/setup_prometheus_adapter_config.py +0 -0
  289. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/setup_tron_namespace.py +0 -0
  290. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/slack.py +0 -0
  291. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/smartstack_tools.py +0 -0
  292. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/spark_tools.py +0 -0
  293. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/synapse_srv_namespaces_fact.py +0 -0
  294. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/tron/__init__.py +0 -0
  295. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/tron/client.py +0 -0
  296. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/tron/tron_command_context.py +0 -0
  297. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/tron/tron_timeutils.py +0 -0
  298. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/tron_tools.py +0 -0
  299. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/utils.py +0 -0
  300. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools/yaml_tools.py +0 -0
  301. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools.egg-info/SOURCES.txt +0 -0
  302. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools.egg-info/dependency_links.txt +0 -0
  303. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools.egg-info/entry_points.txt +0 -0
  304. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools.egg-info/requires.txt +0 -0
  305. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/paasta_tools.egg-info/top_level.txt +0 -0
  306. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/pyproject.toml +0 -0
  307. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/requirements-minimal.txt +0 -0
  308. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/setup.cfg +0 -0
  309. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/setup.py +0 -0
  310. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_adhoc_tools.py +0 -0
  311. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_apply_external_resources.py +0 -0
  312. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_async_utils.py +0 -0
  313. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_bounce_lib.py +0 -0
  314. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_check_flink_services_health.py +0 -0
  315. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_check_kubernetes_services_replication.py +0 -0
  316. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_check_oom_events.py +0 -0
  317. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_check_service_replication_tools.py +0 -0
  318. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_check_spark_jobs.py +0 -0
  319. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_cleanup_kubernetes_jobs.py +0 -0
  320. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_config_utils.py +0 -0
  321. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_delete_kubernetes_deployments.py +0 -0
  322. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_deployment_utils.py +0 -0
  323. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_docker_wrapper.py +0 -0
  324. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_drain_lib.py +0 -0
  325. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_eks_tools.py +0 -0
  326. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_envoy_tools.py +0 -0
  327. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_firewall.py +0 -0
  328. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_firewall_logging.py +0 -0
  329. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_firewall_update.py +0 -0
  330. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_flink_tools.py +0 -0
  331. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_flinkeks_tools.py +0 -0
  332. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_generate_authenticating_services.py +0 -0
  333. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_generate_deployments_for_service.py +0 -0
  334. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_generate_services_file.py +0 -0
  335. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_generate_services_yaml.py +0 -0
  336. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_hacheck.py +0 -0
  337. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_iptables.py +0 -0
  338. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_kubernetes_tools.py +0 -0
  339. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_list_kubernetes_service_instances.py +0 -0
  340. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_long_running_service_tools.py +0 -0
  341. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_mac_address.py +0 -0
  342. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_mesos_tools.py +0 -0
  343. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_monitoring_tools.py +0 -0
  344. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_nrtsearchserviceseks_tools.py +0 -0
  345. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_oom_logger.py +0 -0
  346. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_paasta_execute_docker_command.py +0 -0
  347. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_paasta_service_config_loader.py +0 -0
  348. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_puppet_service_tools.py +0 -0
  349. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_remote_git.py +0 -0
  350. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_secret_tools.py +0 -0
  351. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_setup_istio_mesh.py +0 -0
  352. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_setup_kubernetes_cr.py +0 -0
  353. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_setup_prometheus_adapter_config.py +0 -0
  354. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_slack.py +0 -0
  355. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_smartstack_tools.py +0 -0
  356. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_spark_tools.py +0 -0
  357. {paasta_tools-1.30.7 → paasta_tools-1.30.8}/tests/test_tron_tools.py +0 -0
  358. {paasta_tools-1.30.7 → 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.7
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.7"
20
+ __version__ = "1.30.8"
@@ -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
@@ -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.7
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