paasta-tools 1.30.8__py3-none-any.whl → 1.30.9__py3-none-any.whl

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 (89) hide show
  1. paasta_tools/__init__.py +1 -1
  2. paasta_tools/api/views/instance.py +9 -2
  3. paasta_tools/async_utils.py +4 -1
  4. paasta_tools/bounce_lib.py +8 -5
  5. paasta_tools/check_services_replication_tools.py +10 -4
  6. paasta_tools/check_spark_jobs.py +1 -1
  7. paasta_tools/cli/cli.py +4 -4
  8. paasta_tools/cli/cmds/logs.py +29 -7
  9. paasta_tools/cli/cmds/mark_for_deployment.py +2 -2
  10. paasta_tools/cli/cmds/mesh_status.py +1 -1
  11. paasta_tools/cli/cmds/remote_run.py +1 -1
  12. paasta_tools/cli/cmds/rollback.py +1 -1
  13. paasta_tools/cli/cmds/spark_run.py +3 -3
  14. paasta_tools/cli/cmds/status.py +24 -21
  15. paasta_tools/cli/cmds/validate.py +3 -3
  16. paasta_tools/cli/utils.py +32 -19
  17. paasta_tools/contrib/check_orphans.py +1 -1
  18. paasta_tools/contrib/get_running_task_allocation.py +1 -1
  19. paasta_tools/instance/kubernetes.py +2 -1
  20. paasta_tools/kubernetes_tools.py +1 -1
  21. paasta_tools/metrics/metastatus_lib.py +0 -24
  22. paasta_tools/metrics/metrics_lib.py +12 -3
  23. paasta_tools/setup_kubernetes_job.py +1 -1
  24. paasta_tools/setup_tron_namespace.py +2 -2
  25. paasta_tools/tron_tools.py +1 -1
  26. paasta_tools/utils.py +2 -1
  27. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_orphans.py +1 -1
  28. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_spark_jobs.py +1 -1
  29. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/get_running_task_allocation.py +1 -1
  30. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/setup_kubernetes_job.py +1 -1
  31. {paasta_tools-1.30.8.dist-info → paasta_tools-1.30.9.dist-info}/METADATA +2 -2
  32. {paasta_tools-1.30.8.dist-info → paasta_tools-1.30.9.dist-info}/RECORD +84 -89
  33. paasta_tools/frameworks/adhoc_scheduler.py +0 -71
  34. paasta_tools/frameworks/native_scheduler.py +0 -652
  35. paasta_tools/frameworks/task_store.py +0 -245
  36. paasta_tools/mesos_maintenance.py +0 -848
  37. paasta_tools/paasta_native_serviceinit.py +0 -21
  38. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/apply_external_resources.py +0 -0
  39. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/bounce_log_latency_parser.py +0 -0
  40. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_autoscaler_max_instances.py +0 -0
  41. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_cassandracluster_services_replication.py +0 -0
  42. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_flink_services_health.py +0 -0
  43. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_kubernetes_api.py +0 -0
  44. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_kubernetes_services_replication.py +0 -0
  45. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_manual_oapi_changes.sh +0 -0
  46. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/check_oom_events.py +0 -0
  47. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/cleanup_kubernetes_cr.py +0 -0
  48. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/cleanup_kubernetes_crd.py +0 -0
  49. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/cleanup_kubernetes_jobs.py +0 -0
  50. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/create_dynamodb_table.py +0 -0
  51. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/create_paasta_playground.py +0 -0
  52. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/delete_kubernetes_deployments.py +0 -0
  53. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/emit_allocated_cpu_metrics.py +0 -0
  54. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/generate_all_deployments +0 -0
  55. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/generate_authenticating_services.py +0 -0
  56. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/generate_deployments_for_service.py +0 -0
  57. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/generate_services_file.py +0 -0
  58. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/generate_services_yaml.py +0 -0
  59. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/habitat_fixer.py +0 -0
  60. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/ide_helper.py +0 -0
  61. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/is_pod_healthy_in_proxy.py +0 -0
  62. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/is_pod_healthy_in_smartstack.py +0 -0
  63. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/kill_bad_containers.py +0 -0
  64. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/kubernetes_remove_evicted_pods.py +0 -0
  65. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/mass-deploy-tag.sh +0 -0
  66. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/mock_patch_checker.py +0 -0
  67. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/paasta_cleanup_remote_run_resources.py +0 -0
  68. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/paasta_cleanup_stale_nodes.py +0 -0
  69. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/paasta_deploy_tron_jobs +0 -0
  70. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/paasta_execute_docker_command.py +0 -0
  71. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/paasta_secrets_sync.py +0 -0
  72. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/paasta_tabcomplete.sh +0 -0
  73. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/paasta_update_soa_memcpu.py +0 -0
  74. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/render_template.py +0 -0
  75. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/rightsizer_soaconfigs_update.py +0 -0
  76. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/service_shard_remove.py +0 -0
  77. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/service_shard_update.py +0 -0
  78. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/setup_istio_mesh.py +0 -0
  79. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/setup_kubernetes_cr.py +0 -0
  80. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/setup_kubernetes_crd.py +0 -0
  81. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/setup_kubernetes_internal_crd.py +0 -0
  82. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/setup_prometheus_adapter_config.py +0 -0
  83. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/shared_ip_check.py +0 -0
  84. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/synapse_srv_namespaces_fact.py +0 -0
  85. {paasta_tools-1.30.8.data → paasta_tools-1.30.9.data}/scripts/timeouts_metrics_prom.py +0 -0
  86. {paasta_tools-1.30.8.dist-info → paasta_tools-1.30.9.dist-info}/WHEEL +0 -0
  87. {paasta_tools-1.30.8.dist-info → paasta_tools-1.30.9.dist-info}/entry_points.txt +0 -0
  88. {paasta_tools-1.30.8.dist-info → paasta_tools-1.30.9.dist-info}/licenses/LICENSE +0 -0
  89. {paasta_tools-1.30.8.dist-info → paasta_tools-1.30.9.dist-info}/top_level.txt +0 -0
@@ -43,7 +43,6 @@ from paasta_tools.kubernetes_tools import paasta_prefixed
43
43
  from paasta_tools.kubernetes_tools import PodStatus
44
44
  from paasta_tools.mesos.master import MesosMetrics
45
45
  from paasta_tools.mesos.master import MesosState
46
- from paasta_tools.mesos_maintenance import MAINTENANCE_ROLE
47
46
  from paasta_tools.mesos_tools import get_all_tasks_from_state
48
47
  from paasta_tools.mesos_tools import get_mesos_quorum
49
48
  from paasta_tools.mesos_tools import get_number_of_mesos_masters
@@ -97,9 +96,6 @@ def get_mesos_cpu_status(
97
96
  total = metrics["master/cpus_total"]
98
97
  used = metrics["master/cpus_used"]
99
98
 
100
- for slave in mesos_state["slaves"]:
101
- used += reserved_maintenence_resources(slave["reserved_resources"])["cpus"]
102
-
103
99
  available = total - used
104
100
  return total, used, available
105
101
 
@@ -135,9 +131,6 @@ def get_mesos_memory_status(
135
131
  total = metrics["master/mem_total"]
136
132
  used = metrics["master/mem_used"]
137
133
 
138
- for slave in mesos_state["slaves"]:
139
- used += reserved_maintenence_resources(slave["reserved_resources"])["mem"]
140
-
141
134
  available = total - used
142
135
 
143
136
  return total, used, available
@@ -176,9 +169,6 @@ def get_mesos_disk_status(
176
169
  total = metrics["master/disk_total"]
177
170
  used = metrics["master/disk_used"]
178
171
 
179
- for slave in mesos_state["slaves"]:
180
- used += reserved_maintenence_resources(slave["reserved_resources"])["disk"]
181
-
182
172
  available = total - used
183
173
  return total, used, available
184
174
 
@@ -216,9 +206,6 @@ def get_mesos_gpu_status(
216
206
  total = metrics["master/gpus_total"]
217
207
  used = metrics["master/gpus_used"]
218
208
 
219
- for slave in mesos_state["slaves"]:
220
- used += reserved_maintenence_resources(slave["reserved_resources"])["gpus"]
221
-
222
209
  available = total - used
223
210
  return total, used, available
224
211
 
@@ -647,11 +634,6 @@ def calculate_resource_utilization_for_slaves(
647
634
  for task in tasks:
648
635
  task_resources = task["resources"]
649
636
  resource_free_dict.subtract(Counter(filter_mesos_state_metrics(task_resources)))
650
- for slave in slaves:
651
- filtered_resources = filter_mesos_state_metrics(
652
- reserved_maintenence_resources(slave["reserved_resources"])
653
- )
654
- resource_free_dict.subtract(Counter(filtered_resources))
655
637
  return {
656
638
  "free": ResourceInfo(
657
639
  cpus=resource_free_dict["cpus"],
@@ -1102,9 +1084,3 @@ def get_table_rows_for_resource_info_dict(
1102
1084
  return attribute_values + format_row_for_resource_utilization_healthchecks(
1103
1085
  healthcheck_utilization_pairs
1104
1086
  )
1105
-
1106
-
1107
- def reserved_maintenence_resources(
1108
- resources: MesosResources,
1109
- ):
1110
- return resources.get(MAINTENANCE_ROLE, {"cpus": 0, "mem": 0, "disk": 0, "gpus": 0})
@@ -8,6 +8,7 @@ from inspect import currentframe
8
8
  from types import TracebackType
9
9
  from typing import Any
10
10
  from typing import Callable
11
+ from typing import cast
11
12
  from typing import Dict
12
13
  from typing import Optional
13
14
  from typing import Type
@@ -110,10 +111,18 @@ class MeteoriteMetrics(BaseMetrics):
110
111
  )
111
112
 
112
113
  def create_timer(self, name: str, **kwargs: Any) -> TimerProtocol:
113
- return yelp_meteorite.create_timer(self.base_name + "." + name, **kwargs)
114
+ # yelp_meteorite returns an EmptyMetric object if the timer is misconfigured
115
+ # ...but that doesn't have the same interface ;_;
116
+ return cast(
117
+ Timer, yelp_meteorite.create_timer(self.base_name + "." + name, **kwargs)
118
+ )
114
119
 
115
120
  def create_gauge(self, name: str, **kwargs: Any) -> GaugeProtocol:
116
- return yelp_meteorite.create_gauge(self.base_name + "." + name, **kwargs)
121
+ # yelp_meteorite returns an EmptyMetric object if the gauge is misconfigured
122
+ # ...but that doesn't have the same interface ;_;
123
+ return cast(
124
+ Gauge, yelp_meteorite.create_gauge(self.base_name + "." + name, **kwargs)
125
+ )
117
126
 
118
127
  def create_counter(self, name: str, **kwargs: Any) -> CounterProtocol:
119
128
  return yelp_meteorite.create_counter(self.base_name + "." + name, **kwargs)
@@ -163,7 +172,7 @@ class Gauge(GaugeProtocol):
163
172
  log.debug(f"gauge {self.name} set to {value}")
164
173
 
165
174
 
166
- class Counter(GaugeProtocol):
175
+ class Counter(CounterProtocol):
167
176
  def __init__(self, name: str) -> None:
168
177
  self.name = name
169
178
  self.counter = 0
@@ -242,7 +242,7 @@ def get_kubernetes_deployment_config(
242
242
  service_instance_configs_list.append((True, None))
243
243
  except NoConfigurationForServiceError:
244
244
  error_msg = (
245
- f"Could not read kubernetes configuration file for %s.%s in cluster %s"
245
+ "Could not read kubernetes configuration file for %s.%s in cluster %s"
246
246
  % (service_instance[0], service_instance[1], cluster)
247
247
  )
248
248
  log.error(error_msg)
@@ -114,7 +114,7 @@ def ensure_service_accounts(job_configs: List[TronJobConfig]) -> None:
114
114
  )
115
115
 
116
116
 
117
- def main():
117
+ def main() -> None:
118
118
  args = parse_args()
119
119
  log_level = logging.DEBUG if args.verbose else logging.INFO
120
120
  logging.basicConfig(level=log_level)
@@ -232,7 +232,7 @@ def main():
232
232
  log.debug(f"Updated {updated}")
233
233
 
234
234
  if updated_namespaces != new_configs.keys():
235
- skipped = set(new_configs.keys()) - set(updated_namespaces.keys())
235
+ skipped = list(set(new_configs.keys()) - set(updated_namespaces.keys()))
236
236
  log.debug(f"Skipped {skipped}")
237
237
 
238
238
  skipped_report = skipped if args.verbose else len(skipped)
@@ -1289,7 +1289,7 @@ def load_tron_service_config_no_cache(
1289
1289
  def create_complete_master_config(cluster, soa_dir=DEFAULT_SOA_DIR):
1290
1290
  system_paasta_config = load_system_paasta_config()
1291
1291
  tronfig_folder = get_tronfig_folder(soa_dir=soa_dir, cluster=cluster)
1292
- config = read_yaml_file(os.path.join(tronfig_folder, f"MASTER.yaml"))
1292
+ config = read_yaml_file(os.path.join(tronfig_folder, "MASTER.yaml"))
1293
1293
  master_config = format_master_config(
1294
1294
  config,
1295
1295
  system_paasta_config.get_volumes(),
paasta_tools/utils.py CHANGED
@@ -53,6 +53,7 @@ from typing import Collection
53
53
  from typing import ContextManager
54
54
  from typing import Dict
55
55
  from typing import FrozenSet
56
+ from typing import Generic
56
57
  from typing import IO
57
58
  from typing import Iterable
58
59
  from typing import Iterator
@@ -4139,7 +4140,7 @@ def timeout(
4139
4140
  return decorate
4140
4141
 
4141
4142
 
4142
- class _Timeout:
4143
+ class _Timeout(Generic[_TimeoutFuncRetType]):
4143
4144
  def __init__(
4144
4145
  self,
4145
4146
  function: Callable[..., _TimeoutFuncRetType],
@@ -56,7 +56,7 @@ def get_zk_data(ignored_services: Set[str]) -> SmartstackData:
56
56
  zk = KazooClient(hosts=zk_hosts)
57
57
  zk.start()
58
58
 
59
- logger.debug(f"pulling smartstack data from zookeeper")
59
+ logger.debug("pulling smartstack data from zookeeper")
60
60
  zk_data = {}
61
61
  services = zk.get_children(PREFIX)
62
62
  for service in services:
@@ -124,7 +124,7 @@ def format_framework(info):
124
124
  def format_message_for_service(service, frameworks):
125
125
  output = f"Found the following long-running Spark frameworks associated with service {service}.\n"
126
126
  output += (
127
- f"Please check why they are still running and terminate if appropriate.\n\n"
127
+ "Please check why they are still running and terminate if appropriate.\n\n"
128
128
  )
129
129
  output += "\n".join(format_framework(f) for f in frameworks)
130
130
  return output
@@ -1,5 +1,6 @@
1
1
  #!python
2
2
  import argparse
3
+ import json
3
4
  import time
4
5
  from typing import Any
5
6
  from typing import Dict
@@ -12,7 +13,6 @@ from typing import Optional
12
13
  from typing import Tuple
13
14
 
14
15
  import a_sync
15
- import simplejson as json
16
16
  from kubernetes.client import V1Pod
17
17
  from kubernetes.client import V1ResourceRequirements
18
18
 
@@ -242,7 +242,7 @@ def get_kubernetes_deployment_config(
242
242
  service_instance_configs_list.append((True, None))
243
243
  except NoConfigurationForServiceError:
244
244
  error_msg = (
245
- f"Could not read kubernetes configuration file for %s.%s in cluster %s"
245
+ "Could not read kubernetes configuration file for %s.%s in cluster %s"
246
246
  % (service_instance[0], service_instance[1], cluster)
247
247
  )
248
248
  log.error(error_msg)
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: paasta-tools
3
- Version: 1.30.8
3
+ Version: 1.30.9
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Author: Compute Infrastructure @ Yelp
6
6
  Author-email: compute-infra@yelp.com
7
7
  Provides: paasta_tools
8
- Requires-Python: >=3.8.0
8
+ Requires-Python: >=3.9.0
9
9
  License-File: LICENSE
10
10
  Requires-Dist: a-sync>=0.5.0
11
11
  Requires-Dist: aiohttp>=3.5.4
@@ -1,11 +1,11 @@
1
1
  k8s_itests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  k8s_itests/test_autoscaling.py,sha256=gX30L1wG1sDBaM0wE2aYR4OqHPSLvQBZ6LV0mLTrXZA,536
3
3
  k8s_itests/utils.py,sha256=PNibpYR0-g8Jcts9CjpkNb3oVzmdk9tZQrrNRuATCCM,966
4
- paasta_tools/__init__.py,sha256=nr6VBJvAjI6wcr9h80MZ_5ALr6Do1-N5jaPB3DwS8Og,865
4
+ paasta_tools/__init__.py,sha256=3iZR_8cg-0uelfOVZvDQc4pmB3-jnbohKvPSK7Y9XOc,865
5
5
  paasta_tools/adhoc_tools.py,sha256=OfhyZwilB93kNX8r4Nq_KyZCvsZ4rNX-FBcQAi41KCM,4751
6
6
  paasta_tools/apply_external_resources.py,sha256=DHZJ8zkGQKTBR6Ku2lNxnrdHo8rD7PD0rZEN2yloOn8,3375
7
- paasta_tools/async_utils.py,sha256=ELB2qHP-F2IlMes-kxgy5q9PRUSUTZ-AKw5hQ2K0l_E,3514
8
- paasta_tools/bounce_lib.py,sha256=YZJDuMtpQxUBLy9pZqiVmJr72Tw1StqzJ4AYje__6to,6217
7
+ paasta_tools/async_utils.py,sha256=LOpYxaN-8u7js6IlibPRGq9OtgWFig59LGeIFgW9PsA,3591
8
+ paasta_tools/bounce_lib.py,sha256=-mSgdz1A0hG9v5HpUm1K93X1_u4FaSocUO-OuXWeqDk,6477
9
9
  paasta_tools/broadcast_log_to_services.py,sha256=SW740QQAjEqmHckk6dgXSzWAoEJ0iCsfN6wvihGbjLQ,2042
10
10
  paasta_tools/cassandracluster_tools.py,sha256=0V1_B53kfnO3bM0kYalcn--bAGSdtgu7jK--5IYd_qo,7288
11
11
  paasta_tools/check_autoscaler_max_instances.py,sha256=eWyAeNWqrSm-VnQ11J0C4dElmD2ZI7E6Vfnqjcx3qTs,9436
@@ -14,8 +14,8 @@ paasta_tools/check_flink_services_health.py,sha256=ACwbJg9soov96CvpqmbmxTPRI8CfK
14
14
  paasta_tools/check_kubernetes_api.py,sha256=Vv7D28cSZ272ktS1tQGZXa-X9YFnwyR9p4faTdc05mI,1550
15
15
  paasta_tools/check_kubernetes_services_replication.py,sha256=UR_dUZ7xSUwMccQrD6ncVl5SqpOfIt4nYAlOHCGUZHs,5764
16
16
  paasta_tools/check_oom_events.py,sha256=z5jsIwpdC_wLHigaYKbJjvAYMVhellLaM9pD2041gCQ,7814
17
- paasta_tools/check_services_replication_tools.py,sha256=w6hMyE4x4XUcABQw3LnmOXzTLRV6Tkkj74o51Bj1dsU,11221
18
- paasta_tools/check_spark_jobs.py,sha256=oo08IOtRvZMW0Aw7vXUYfJQKTiAdEl2wzm_XCkA-mg0,7330
17
+ paasta_tools/check_services_replication_tools.py,sha256=V9if6Qjl8CB1MAAY4rQKdd9X_peGutlYH4pHbEbNwZE,11477
18
+ paasta_tools/check_spark_jobs.py,sha256=kzMOlhlmt22aYkUv4t8qfGxb8jee0C2GKNg4CKYHKGs,7329
19
19
  paasta_tools/cleanup_expired_autoscaling_overrides.py,sha256=WORimMeULugPwr8soJTi_zAZrL-nPgneiX-Ywt3VJgo,5182
20
20
  paasta_tools/cleanup_kubernetes_cr.py,sha256=cbFvIPt059t2ThwgouzINNC-YPnu3HuYtw9mbLUtOJc,4672
21
21
  paasta_tools/cleanup_kubernetes_crd.py,sha256=O2RbfYeCUbNFEmJlKpzazy4odjAZfm39UKYxhXxbi-U,4491
@@ -44,13 +44,12 @@ paasta_tools/generate_services_yaml.py,sha256=BM760XGEOmLeJcEm0ez5nBZ2NmFJWsNXbZ
44
44
  paasta_tools/hacheck.py,sha256=GtQd32G4JoB2bOWqzH9h9NPrkg8a50i-iXAblfYz2p4,2748
45
45
  paasta_tools/iptables.py,sha256=SQ7hutHarfCd13oAknKv_h9rUuln4rf11W6C2HHUy9g,7518
46
46
  paasta_tools/kafkacluster_tools.py,sha256=NMfowdpYhFpXW55MKx_eX6rrQj5Fn-5M_9ryZKd749A,4992
47
- paasta_tools/kubernetes_tools.py,sha256=CWwDxyngSEXhXy2u6iyX2Uzcs2VV0FO0Iaomv9zvwG4,183177
47
+ paasta_tools/kubernetes_tools.py,sha256=U1NG_fqwP_aYV4dip6rqS_B5e2MFVqKAD3FqnNua5Bo,183176
48
48
  paasta_tools/list_kubernetes_service_instances.py,sha256=UEPiTqNxUAqUgSyPzJlNcrI2W4HBwpngzDM1QD6AAVQ,3910
49
49
  paasta_tools/list_tron_namespaces.py,sha256=wfSkPY9_C-RkORmnon3DWL2lVZ4GNSSDG9VkFrDfY1E,1679
50
50
  paasta_tools/long_running_service_tools.py,sha256=jrTKLT5Abbl0aclcyULYssMpLQz8hJi_AooYEXd4wyg,26260
51
51
  paasta_tools/mac_address.py,sha256=YWEXbRSBwJXrH--iDDFqBV0BWjRH9DedbPcKFPk36A0,1324
52
52
  paasta_tools/marathon_dashboard.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
- paasta_tools/mesos_maintenance.py,sha256=M4Q0Qb7DYmBYaIyWlnUWrf_ZAvBOQ9ZYX8djIAgVki8,31450
54
53
  paasta_tools/mesos_tools.py,sha256=WWRC4bGuEXqF1Y0MR3_EjvgaFSPBRlPYXI419CWnNKY,35540
55
54
  paasta_tools/monitoring_tools.py,sha256=s-UeYgAPnuVlvJibxdp94Fo5YjfhfHKf9G1IFSUNWy4,24665
56
55
  paasta_tools/monkrelaycluster_tools.py,sha256=czg5CTlYp30lJ5fDsJ3xzDrKgWFLdDKvMNsCOAVZdnI,5092
@@ -59,7 +58,6 @@ paasta_tools/nrtsearchserviceeks_tools.py,sha256=ry2HIQJmDJH74DIiOnenfg0iMFKrh6C
59
58
  paasta_tools/oom_logger.py,sha256=2-aVhRNrPAxuG_tx7my38bjwvpDJBim5WkmDvRZoBqI,10120
60
59
  paasta_tools/paasta_deploy_tron_jobs,sha256=fFN2aP5FNSm5WfDV3yvLpihXaKkAF65MRXFcN2iD7S4,106
61
60
  paasta_tools/paasta_execute_docker_command.py,sha256=n31pgU7cDuy1VDmLIHCOJxMF85cFd2lsMSXhywPHVV8,4099
62
- paasta_tools/paasta_native_serviceinit.py,sha256=9AsOBIhhqFetnaL1PzbRpkHVeqMMfjBU0jPAZwzjzyw,819
63
61
  paasta_tools/paasta_service_config_loader.py,sha256=GrUeqffiYxyAqKaOcilwV2eXI5VE6TnQsNrsWZE4ULs,7324
64
62
  paasta_tools/prune_completed_pods.py,sha256=U2NG8RrqNFU_KcFWyUv1JlmiZudWdteFeE3nysQFfjo,7742
65
63
  paasta_tools/puppet_service_tools.py,sha256=xvSIUiDzGHiJwXzv-LS_hpSjhkny4IzUP-yq9zLbFf4,2238
@@ -72,15 +70,15 @@ paasta_tools/setup_istio_mesh.py,sha256=RbgurGILky-vuLU0QZ3KL1pg5Ku47vDkfaX6JFwE
72
70
  paasta_tools/setup_kubernetes_cr.py,sha256=s7oOAKopjs_RzmKMptlkEKTDCvLbvCLO1ilYwBg5A_0,14944
73
71
  paasta_tools/setup_kubernetes_crd.py,sha256=kDpZKbpQa8niY-dhEKf_Q5IE5h7yDRES_Wg-2atJ6kY,4033
74
72
  paasta_tools/setup_kubernetes_internal_crd.py,sha256=bkc4t2hUM9JoTIVDnfZWsVkoQ-IlRoTI-E_FISLGpk4,4642
75
- paasta_tools/setup_kubernetes_job.py,sha256=j1AEUwu04PduHfoftz3RHMDQgt8djPabjoByGQ8j2Jw,19109
73
+ paasta_tools/setup_kubernetes_job.py,sha256=uWXOwG_c-vnoeCmQC1Ode-zBQRz3655qVNy6aGHidXo,19108
76
74
  paasta_tools/setup_prometheus_adapter_config.py,sha256=DCA0-AY8dPivV5D4FxMGY1wIoIvWXXWV_3V5O1LJBXc,40741
77
- paasta_tools/setup_tron_namespace.py,sha256=CGVrTyHb6ypagIRrYLSpVDV-Kd-VxcLoEC_6K98M1OM,9729
75
+ paasta_tools/setup_tron_namespace.py,sha256=SnXD98BdC0gyqH2Ii_J10Xvy9i9zpPMzmvmZAN35q0Y,9743
78
76
  paasta_tools/slack.py,sha256=WEJsTcr2vCdftG4bVkePNBFaC2hzEzMDwglHA0UC0s8,2700
79
77
  paasta_tools/smartstack_tools.py,sha256=J0mPialC9KFW9mW0fOUCj040VyowEjQgBI_s13fzEgE,25557
80
78
  paasta_tools/spark_tools.py,sha256=qZIa1g9JQrX3Nndd3vsblJ3nfXEhSMyizmOTQfFP2k8,9749
81
79
  paasta_tools/synapse_srv_namespaces_fact.py,sha256=XG_Fgr_3D-MaEYkhKyQSmKHbOyZp9zwpevyTX4BOLWE,1421
82
- paasta_tools/tron_tools.py,sha256=yCCAeXDmkaeQeAFkuo8GTzaA4hZhjrU0b_SaSAgZE-I,55902
83
- paasta_tools/utils.py,sha256=bRU3BwH-hcNOM5Ma16E6A_1eRsDtgDkPY0m3EcEsuBo,149098
80
+ paasta_tools/tron_tools.py,sha256=XJjuLp98zdaJeZt7Wg55t7G8lhTffL5HuA1G_mkiekA,55901
81
+ paasta_tools/utils.py,sha256=5hHPQXxtFaeqL_vXNlYXYpihDWMfv1h6WxB5X06Tu0M,149155
84
82
  paasta_tools/yaml_tools.py,sha256=4gXbrFQWWihp9edKt4J14MWcdS8r8sYJAsMYmmL3byk,1263
85
83
  paasta_tools/api/__init__.py,sha256=H0VmJeHyCSXD9GbiEjjQwcB_sKOcoBiyK-IEJMmtCyQ,578
86
84
  paasta_tools/api/api.py,sha256=SwlBbwH9e8ihnBSSkLU65CHrnzyQeDHPfRg_ik5LWZU,9859
@@ -95,7 +93,7 @@ paasta_tools/api/views/__init__.py,sha256=H0VmJeHyCSXD9GbiEjjQwcB_sKOcoBiyK-IEJM
95
93
  paasta_tools/api/views/autoscaler.py,sha256=zemFWhpealhH92mzpWnjGQAOXiDJbHJutoVYK8fDwKo,11021
96
94
  paasta_tools/api/views/exception.py,sha256=sHdSArpJNh2z-azJNiGtodPPUREMwb7IinOI8H7B_i0,1457
97
95
  paasta_tools/api/views/flink.py,sha256=X7GHgWaunGarll31FUIYb9Apm9RomcJp2uFmbRrb2H8,2475
98
- paasta_tools/api/views/instance.py,sha256=mL5V5d3LDcD_0Ex_mrRZZv20x-5qhfuTokBjfSpKvfw,13830
96
+ paasta_tools/api/views/instance.py,sha256=ToEEn03EOFv1XeK4SXuT2MaUt9NT0Il5qD1IwIxoUJo,14138
99
97
  paasta_tools/api/views/pause_autoscaler.py,sha256=XDLAftUoQHwONvt2k97mPT4nsqAq97vQY3UCy6505Zs,2277
100
98
  paasta_tools/api/views/remote_run.py,sha256=FFco4MwHWkp-Rrty8FOcmXLyov-SZxBcLsVu8Xmv_7Q,4221
101
99
  paasta_tools/api/views/resources.py,sha256=7iMQeog-BITtvKkgSugqSSrMHWaWOUuePX_OXGa2RE8,2755
@@ -109,10 +107,10 @@ paasta_tools/autoscaling/pause_service_autoscaler.py,sha256=6wM2N_VfvQIPSLkYpwmx
109
107
  paasta_tools/autoscaling/utils.py,sha256=2aknKgA6YNejpEw597HmhLZ5pk8BNdh3Yxyj_DQr0R8,1671
110
108
  paasta_tools/cli/__init__.py,sha256=H0VmJeHyCSXD9GbiEjjQwcB_sKOcoBiyK-IEJMmtCyQ,578
111
109
  paasta_tools/cli/authentication.py,sha256=yy5nl3Gf7t5ZU6934i87d7fNBYVBEgfiJTvsRRXf5HY,1826
112
- paasta_tools/cli/cli.py,sha256=VUIhbvQEs8Gj-JbmAmEVjHpIWheDK3LTyx3F-jNfl1M,8468
110
+ paasta_tools/cli/cli.py,sha256=uDfUZIGAQkqwMo2QjYdy-QniCA6B_VVDK66ICLM-e8Q,8515
113
111
  paasta_tools/cli/fsm_cmd.py,sha256=c6FFvmaDxEe21MiqL_lrn9uWpnmh2pCNhh1ZjU4ahJA,4135
114
112
  paasta_tools/cli/paasta_tabcomplete.sh,sha256=qbQKSriz_L4MogA12L_8i-tg0Lplpshbk_FUMjK6uG0,929
115
- paasta_tools/cli/utils.py,sha256=Y1WsUtorvePHT5v3wRAhy_98gxzRou1bhFRirwddIMs,37738
113
+ paasta_tools/cli/utils.py,sha256=gsvwGvvwmieg9d63pSoiaSoU6s6AA8Gybgl-cRnCnBU,38741
116
114
  paasta_tools/cli/cmds/__init__.py,sha256=H0VmJeHyCSXD9GbiEjjQwcB_sKOcoBiyK-IEJMmtCyQ,578
117
115
  paasta_tools/cli/cmds/autoscale.py,sha256=RURc0v-WXrwpFy3ClyETMFjIkr0UdhpPlBA_cVVc0Xk,10599
118
116
  paasta_tools/cli/cmds/check.py,sha256=OSEFTL_r22I8lrxS4XHa3syMxz6nrgN_7DH1B57h2ho,12968
@@ -127,19 +125,19 @@ paasta_tools/cli/cmds/list_clusters.py,sha256=7L1kK9xS7o9iYpAikTUjsGFR1cpX8ME31B
127
125
  paasta_tools/cli/cmds/list_deploy_queue.py,sha256=IqtsblfL0LpZyp-cwaRHpo6tAfvo5IAgnCyI5MMcVoM,5577
128
126
  paasta_tools/cli/cmds/list_namespaces.py,sha256=KPszBdsOAqRaPECUF1HgCFm1BYQqfBPTG3dwAsvywm4,3138
129
127
  paasta_tools/cli/cmds/local_run.py,sha256=UIeQX4doGUfHR5-5HKseJWiKLNmFW6QM92k0ygZdwQw,51045
130
- paasta_tools/cli/cmds/logs.py,sha256=qLx55GV3vfueTt-EZZZgFXop2_BwhFCnEJGaRLvVqzk,58055
131
- paasta_tools/cli/cmds/mark_for_deployment.py,sha256=mlb2BJECJnvbzAY7nTVly_kA5pNhsuGbai0bwXwvpCw,76217
132
- paasta_tools/cli/cmds/mesh_status.py,sha256=PRhUVeDqURVm1RtiCH5Hcj7OUOqvkOTfa_JsCyCmyDg,6125
128
+ paasta_tools/cli/cmds/logs.py,sha256=fx4hdmHssPNRpmqEuyLLxnBAbevrDG-r89VULr89bzE,58922
129
+ paasta_tools/cli/cmds/mark_for_deployment.py,sha256=kgtB3Dst4tFfmS6PWWFozzfmEdM1g6bmGK3QnMLw0aE,76215
130
+ paasta_tools/cli/cmds/mesh_status.py,sha256=KpNfSomS5Uh98szloSpFh3qn0-IYHq4M37BS92t5mdc,6124
133
131
  paasta_tools/cli/cmds/pause_service_autoscaler.py,sha256=3Ie0wTkpRkl-Uja33WzWkPmBa5EJcPxMNAcZ8_P1LSo,3494
134
132
  paasta_tools/cli/cmds/push_to_registry.py,sha256=F7hWPY7MFtqznUfmJoQ0QPc5zAF5BS30_FWdQOrIqME,9736
135
- paasta_tools/cli/cmds/remote_run.py,sha256=574o-hrljK_mSt5hYJN3h0mxgoi-4pwKTLLf7swJLFU,16003
136
- paasta_tools/cli/cmds/rollback.py,sha256=_42IwJaCXzo8e_GRbjImeG-7_o4ZGUMqX6meLRXD10Y,13841
133
+ paasta_tools/cli/cmds/remote_run.py,sha256=nqo_i6ubxK65qYknEIMX9p_4fDDh5nh5xsCndJ7LGco,16002
134
+ paasta_tools/cli/cmds/rollback.py,sha256=2Wc4JWEudCKRHVWibeASNrF56xJ9xbvANT-_nmCuFHE,13840
137
135
  paasta_tools/cli/cmds/secret.py,sha256=onVUKyh4uuxBHLcBQcMYH_1uBbRjJrnPa5nMwHGzDSk,19709
138
136
  paasta_tools/cli/cmds/security_check.py,sha256=IEtcM0Hv2BWcavCjWcnPbyfrLcCRYC8jHLiHDj020z4,2377
139
- paasta_tools/cli/cmds/spark_run.py,sha256=3-kGdVAE3lukxIOhnrb022Ni031KtPirD5mWzsBswsU,51358
137
+ paasta_tools/cli/cmds/spark_run.py,sha256=NEPPCf5pvkW0Kn9SKAaazZn3ge4HhidWVAm-hEQybnk,51355
140
138
  paasta_tools/cli/cmds/start_stop_restart.py,sha256=MIMShmHer_uPEsLCb3qDaBOYyHSgqDHrLHEVFCcxaE0,14600
141
- paasta_tools/cli/cmds/status.py,sha256=lozS-6kk06qZs7Rhj7qMsaYC2lWsASOXa6yhERd7iDo,86869
142
- paasta_tools/cli/cmds/validate.py,sha256=GlLC_utF2VdrTpts-lPqBGSphBC86zuo1vtMebtsaZU,40560
139
+ paasta_tools/cli/cmds/status.py,sha256=VHLqJHvxfa86WRj6vtHej3iCsc-LxsGPFLGM80UT3P8,87113
140
+ paasta_tools/cli/cmds/validate.py,sha256=nzTaeVB6aKGP7YzpPxxR3e6L4QuoJLm5gAgWivyzDHY,40557
143
141
  paasta_tools/cli/cmds/wait_for_deployment.py,sha256=8vPnJ6vXxJCfxQ20PTI3RgrH8mbNe-NuU663SbSXobk,9298
144
142
  paasta_tools/cli/fsm/__init__.py,sha256=H0VmJeHyCSXD9GbiEjjQwcB_sKOcoBiyK-IEJMmtCyQ,578
145
143
  paasta_tools/cli/fsm/autosuggest.py,sha256=M4pxd4khsS5NWnSRihJe4ODvMr0XmwHdfLyaPh0w3m4,2789
@@ -163,11 +161,11 @@ paasta_tools/cli/schemas/autotuned_defaults/kubernetes_schema.json,sha256=xfaobv
163
161
  paasta_tools/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
164
162
  paasta_tools/contrib/bounce_log_latency_parser.py,sha256=Cp-Dm5ZzqqSGGG0kplDFSxoCV5zUrp-5E9xiZdj-hBo,2242
165
163
  paasta_tools/contrib/check_manual_oapi_changes.sh,sha256=1IdphwXP7xnMNS7huZ3FeEHy67-nY4n3ydHmbojQvJg,879
166
- paasta_tools/contrib/check_orphans.py,sha256=ovXvM_NW2GiS71unOOkceeFDABLyZZiYBJ41A-tD3fs,9999
164
+ paasta_tools/contrib/check_orphans.py,sha256=_FfeV-C8WPrFjnkt5b4tv5ELODRrIPT_H452DxXFGOU,9998
167
165
  paasta_tools/contrib/create_dynamodb_table.py,sha256=QIeRFKxPzRok1XLeR8RN6PbJUzksHn1hQv5weyu6qms,1181
168
166
  paasta_tools/contrib/create_paasta_playground.py,sha256=jzoE5e1pxWeVXwCEkD9O0jefOhEnIlSa3QMP9PC2f0M,3239
169
167
  paasta_tools/contrib/emit_allocated_cpu_metrics.py,sha256=TuGTLd6EYH2pyicODHzUESfUrnF3frv52kkxZiVgPnA,1872
170
- paasta_tools/contrib/get_running_task_allocation.py,sha256=OIFXgMs7DHr46yuLD7cDS8beQEgarFbZcw_-uz-7i1o,10918
168
+ paasta_tools/contrib/get_running_task_allocation.py,sha256=Co6yMB_OEypXsKwObmqq6O-5NGTySrx44Mufb-sb_DQ,10904
171
169
  paasta_tools/contrib/habitat_fixer.py,sha256=gSaUYtHQY-z_BhZeV1JkFbBieWObQ44hCRnC5uO5Q-A,2638
172
170
  paasta_tools/contrib/ide_helper.py,sha256=QUVWxIeh54IhTn3HEhBrmJKvtgw6RDv9smoJ-6pZA4c,12348
173
171
  paasta_tools/contrib/is_pod_healthy_in_proxy.py,sha256=mkpFjVkRaNhGxyJwvKP8V38RNTZadecLgAS66rmjCQE,4334
@@ -183,14 +181,11 @@ paasta_tools/contrib/service_shard_update.py,sha256=AajuRS4s-HXhEcIIYK2dsyBSdCjZ
183
181
  paasta_tools/contrib/shared_ip_check.py,sha256=aX5plYbUOyUj7o4NjhJMoYuJfjfefDXCTv6pnLGg4b4,2481
184
182
  paasta_tools/contrib/timeouts_metrics_prom.py,sha256=3pP7c-KVWieU1rZ6TRMF5RozWSVQGQX6kXrL-scoURQ,2635
185
183
  paasta_tools/frameworks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
186
- paasta_tools/frameworks/adhoc_scheduler.py,sha256=uVq4L8BobCUdJMH5h3mxwBruE5kGQKejanY0IYfzUzE,2770
187
184
  paasta_tools/frameworks/constraints.py,sha256=1ctyAzrAZlplcJp9pQ4zSuc-by988bQJrSdwxHOLsWY,2969
188
- paasta_tools/frameworks/native_scheduler.py,sha256=JSUm2Rf9S3ClXSD2dZAiuiKSxRGFGdSHrahgq6JdCNo,24535
189
185
  paasta_tools/frameworks/native_service_config.py,sha256=C9fThwq2g0TnNQhRbK5Pz3RwfO23GLUZWFKwh8KdAUE,9182
190
- paasta_tools/frameworks/task_store.py,sha256=E00EbVbbb2NjN70OYpenYyKnruyndamUKiBsblgT148,8536
191
186
  paasta_tools/instance/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
192
187
  paasta_tools/instance/hpa_metrics_parser.py,sha256=IsAYHSITL0z7LZUPC7gFj8oeASBx_Ad4bj5507irLx8,4371
193
- paasta_tools/instance/kubernetes.py,sha256=clFyPvkOrk3OA4GkQCmuYF5yzLnZ8P46FI1iViUynwY,47729
188
+ paasta_tools/instance/kubernetes.py,sha256=raR3kcJlBckJaNR-dqyPwaXg5FKjn-pp0Qll2oef1dk,47783
194
189
  paasta_tools/kubernetes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
195
190
  paasta_tools/kubernetes/remote_run.py,sha256=QavlPQdNUI17CCY9QqFA3LJDRucXxMsIfk4mGR8e1xc,18986
196
191
  paasta_tools/kubernetes/application/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -215,8 +210,8 @@ paasta_tools/mesos/task.py,sha256=sltNJnP380pKvhDyXoqxLbPHBG58fm9Znm2ZdgFR1xg,29
215
210
  paasta_tools/mesos/util.py,sha256=np6e0BrDNbm3i2bACbBdonG04s-llhCgILZjLoUXTkA,2199
216
211
  paasta_tools/mesos/zookeeper.py,sha256=vHi-U91Y0PxEwkf6Sk6fj74cA9CGFJGNcsSH5OkKIHA,1158
217
212
  paasta_tools/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
218
- paasta_tools/metrics/metastatus_lib.py,sha256=DgjNuQS3KQ6QzW8Hh4uMKHANph754JUa3n7aN8sfgYI,37835
219
- paasta_tools/metrics/metrics_lib.py,sha256=yL2z0qoHvhpyif4triYYtAKbhKQpDFq1V6FvmT7vZtI,6402
213
+ paasta_tools/metrics/metastatus_lib.py,sha256=cbguH4fVjCrC-eLnJq7wrulqcOexSxq5YiT7TcrNrYk,36887
214
+ paasta_tools/metrics/metrics_lib.py,sha256=-aM-nSKPcGTD-mMYeLMVhNb-eL7ScLi5YCPQG3-t2ew,6784
220
215
  paasta_tools/monitoring/__init__.py,sha256=H0VmJeHyCSXD9GbiEjjQwcB_sKOcoBiyK-IEJMmtCyQ,578
221
216
  paasta_tools/monitoring/check_k8s_api_performance.py,sha256=Pih9M7Tf6Y2mHgIlP30ecjXlIdN4IXcp_flyiSfPylE,2997
222
217
  paasta_tools/paastaapi/__init__.py,sha256=IJsEOL-T4f34giiLFz09gLhsxDHTkjsWtQgwVFYHtAc,850
@@ -292,61 +287,61 @@ paasta_tools/tron/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
292
287
  paasta_tools/tron/client.py,sha256=ypWjM4bZCzQWLn-qe1driqAxvF0ux8dROuFUv63dryA,5562
293
288
  paasta_tools/tron/tron_command_context.py,sha256=c6mph_DAt7pjcE3Uo271haJ0DfxJzfvcRhR2o-UmOeY,5379
294
289
  paasta_tools/tron/tron_timeutils.py,sha256=vDn04K7A3Xbs3lM04EgLuViC8AavOc5qyo8J5MC5nLk,3054
295
- paasta_tools-1.30.8.data/scripts/apply_external_resources.py,sha256=BOIdCQ5Md9RI3enzqbIWQge3clkXhPybAmLE3hqfDwQ,3347
296
- paasta_tools-1.30.8.data/scripts/bounce_log_latency_parser.py,sha256=dC06a0a5LdtPJ8xo88QWe5DMH_vwVB1BNbkFH7kJ3j0,2225
297
- paasta_tools-1.30.8.data/scripts/check_autoscaler_max_instances.py,sha256=2z6ifSU26-ULOK-FXp75b45mCdjSJnuvU8TxvapB8Wk,9423
298
- paasta_tools-1.30.8.data/scripts/check_cassandracluster_services_replication.py,sha256=mKlCK9pRNzxnOt41wA6CtDQIHhcky438i044kA6pbEc,1127
299
- paasta_tools-1.30.8.data/scripts/check_flink_services_health.py,sha256=ElYa1hr6KUcXuu0B8Nf-dt2Vfyo5FrwF5gVV4QBX7Lg,7162
300
- paasta_tools-1.30.8.data/scripts/check_kubernetes_api.py,sha256=BhOqJkkKNJPfonfIPonW5dlIubd1ji-3ppjXHomNwzM,1522
301
- paasta_tools-1.30.8.data/scripts/check_kubernetes_services_replication.py,sha256=LCLlumReRdy9Cw_sPpqanjPcBlbcrJDiECaYYru5Cwk,5751
302
- paasta_tools-1.30.8.data/scripts/check_manual_oapi_changes.sh,sha256=1IdphwXP7xnMNS7huZ3FeEHy67-nY4n3ydHmbojQvJg,879
303
- paasta_tools-1.30.8.data/scripts/check_oom_events.py,sha256=tUr14T2LYEgqwpAq4vkZ_Z0VTPOfQg7yrSSkwGQ86Hg,7801
304
- paasta_tools-1.30.8.data/scripts/check_orphans.py,sha256=zVC5ShFY7LUnPDUytRNsMgvqXkECHvyZlc3qZMpxLko,9985
305
- paasta_tools-1.30.8.data/scripts/check_spark_jobs.py,sha256=pVUdWmZSBuh4CbpW7cZ1Loq8FX0QFS0LQk2b24TGRyE,7317
306
- paasta_tools-1.30.8.data/scripts/cleanup_kubernetes_cr.py,sha256=m-w_wuTuVG9FlwQQkxXYgri5DTGac9Nc2pbK4k1FNDE,4659
307
- paasta_tools-1.30.8.data/scripts/cleanup_kubernetes_crd.py,sha256=p9eLk-0-pU-hcVg-GAM92h1ZdQqlvmYhBzUFCiMPYR8,4478
308
- paasta_tools-1.30.8.data/scripts/cleanup_kubernetes_jobs.py,sha256=7LHB4tsz1kt-zygssIfQbBY6c3LSqXYDUILvHkSfBog,12433
309
- paasta_tools-1.30.8.data/scripts/create_dynamodb_table.py,sha256=9wJftWGgNtvLnpXeUqpoMXBIIep1hNySf0YiQmzpl5c,1167
310
- paasta_tools-1.30.8.data/scripts/create_paasta_playground.py,sha256=jzoE5e1pxWeVXwCEkD9O0jefOhEnIlSa3QMP9PC2f0M,3239
311
- paasta_tools-1.30.8.data/scripts/delete_kubernetes_deployments.py,sha256=de4C-5yqEuCeJXp6zhbc0v-c0LOElr4qabLnOTRcX4o,3124
312
- paasta_tools-1.30.8.data/scripts/emit_allocated_cpu_metrics.py,sha256=Cjd3xoOJoYSP3ciSAlZ7fh6_z678KpYt43Xh-WVCY1M,1859
313
- paasta_tools-1.30.8.data/scripts/generate_all_deployments,sha256=Qr5B0zogTOr8Lcn_7dpORixpGIJcXZ_pWz_ZlWnmsik,248
314
- paasta_tools-1.30.8.data/scripts/generate_authenticating_services.py,sha256=r5AQyquVm8_rbAhBETUU2ZHZvolpqZZTakW3lKFiOqw,2982
315
- paasta_tools-1.30.8.data/scripts/generate_deployments_for_service.py,sha256=FAFzIAtKY7GsA13s-ssCMH7T-_p9B1pBtyyYFzsCZ6k,9822
316
- paasta_tools-1.30.8.data/scripts/generate_services_file.py,sha256=w3Wyyn9ZkjfrvkT0SnTbh5mrTZJnjhTC2JIqLBpb6-g,3583
317
- paasta_tools-1.30.8.data/scripts/generate_services_yaml.py,sha256=XyIUsHa1BPLqeklayaFewX69-6GT_luaSLS_TMDLkQ0,991
318
- paasta_tools-1.30.8.data/scripts/get_running_task_allocation.py,sha256=rV2IFGWU2sEYAVDCwKZgeseOAewFzfDiFeCnsPXdGXY,10890
319
- paasta_tools-1.30.8.data/scripts/habitat_fixer.py,sha256=hCC7fEnxrBOmiCJj4rPwhGlae9JsYg_gltk10l-FwaE,2625
320
- paasta_tools-1.30.8.data/scripts/ide_helper.py,sha256=QUVWxIeh54IhTn3HEhBrmJKvtgw6RDv9smoJ-6pZA4c,12348
321
- paasta_tools-1.30.8.data/scripts/is_pod_healthy_in_proxy.py,sha256=MiY85MJDXcN9oS8d840WG1iYDIzzO9lmk_NC0i_CrQg,4321
322
- paasta_tools-1.30.8.data/scripts/is_pod_healthy_in_smartstack.py,sha256=z3uP9sgwLwg94BubFgBKare2t1L5qhcY48MWsJxjxPY,1697
323
- paasta_tools-1.30.8.data/scripts/kill_bad_containers.py,sha256=oNY5x0Zg0eu34cXhFy60I7WRlqg4PKD_6xWi0eoRTCA,3832
324
- paasta_tools-1.30.8.data/scripts/kubernetes_remove_evicted_pods.py,sha256=D9Ovdc9Xer_Qf3vM5CtPVcKvnMwLiC0H-WQmQGXrBKM,5274
325
- paasta_tools-1.30.8.data/scripts/mass-deploy-tag.sh,sha256=cfPgDDvAOhy3ijTUocklogzoIY8hfoE6T5QI-0aqcfM,1578
326
- paasta_tools-1.30.8.data/scripts/mock_patch_checker.py,sha256=Q6Je8QjmfLzdnv_6JR6ehh2kA5SUxmeZGeLI2WC3BSY,2559
327
- paasta_tools-1.30.8.data/scripts/paasta_cleanup_remote_run_resources.py,sha256=4oN9UwnR7q6aEEyFUhVrT41VSeQJ2YS3upFpbZQXNUI,4558
328
- paasta_tools-1.30.8.data/scripts/paasta_cleanup_stale_nodes.py,sha256=C-DmEVgtienoMgJnIeESvFqWcJOW2SOGoS1l8RXA8NE,6304
329
- paasta_tools-1.30.8.data/scripts/paasta_deploy_tron_jobs,sha256=fFN2aP5FNSm5WfDV3yvLpihXaKkAF65MRXFcN2iD7S4,106
330
- paasta_tools-1.30.8.data/scripts/paasta_execute_docker_command.py,sha256=6kh7h2bleQbNULc37MiRsfnk9MDHqVv30UQdg3rF3kQ,4086
331
- paasta_tools-1.30.8.data/scripts/paasta_secrets_sync.py,sha256=sMdyWMt9BU5CmWHIRwzhpFKve7zxFHkygt_SNTJutWM,28766
332
- paasta_tools-1.30.8.data/scripts/paasta_tabcomplete.sh,sha256=qbQKSriz_L4MogA12L_8i-tg0Lplpshbk_FUMjK6uG0,929
333
- paasta_tools-1.30.8.data/scripts/paasta_update_soa_memcpu.py,sha256=5fShpZYpb7EeoC70cWdICnNHjHAaNU5mTHaAc3mloIs,20813
334
- paasta_tools-1.30.8.data/scripts/render_template.py,sha256=KcKfeSP2a9f6fMDRhnjX7OJaHmFIBtCJcHhUI_B7p9Y,3975
335
- paasta_tools-1.30.8.data/scripts/rightsizer_soaconfigs_update.py,sha256=0UPVtDyX6wXXurv7l5fiKuzXH8VEszKx_V7UqDm6Ck0,10493
336
- paasta_tools-1.30.8.data/scripts/service_shard_remove.py,sha256=WCvCxu3GTYEa3cYnWybTOiuHN14axj0x5_-snVd-mqE,4927
337
- paasta_tools-1.30.8.data/scripts/service_shard_update.py,sha256=AajuRS4s-HXhEcIIYK2dsyBSdCjZbh4x6Po48ipl7M4,13346
338
- paasta_tools-1.30.8.data/scripts/setup_istio_mesh.py,sha256=LbLxeI_DnhNXkyCgG-GxutlNu9_vcIitorYr4I9x4CY,11575
339
- paasta_tools-1.30.8.data/scripts/setup_kubernetes_cr.py,sha256=xsZJ_X1YpQ0NExyY1cXFH8KW2_vAgctCwdrW0bu102s,14931
340
- paasta_tools-1.30.8.data/scripts/setup_kubernetes_crd.py,sha256=QCiFOcSmE0nMEheIb7IUnYMUn0heh1kHyMFBCm7XIRU,4020
341
- paasta_tools-1.30.8.data/scripts/setup_kubernetes_internal_crd.py,sha256=dDyAOKFow7yeHWGa197angYwGTDWNyR7vZ6Cx5JlS6k,4629
342
- paasta_tools-1.30.8.data/scripts/setup_kubernetes_job.py,sha256=ZoJC9IvBynxxdX6BMjgMSG193feDD-7wfRNlSfTl8n4,19096
343
- paasta_tools-1.30.8.data/scripts/setup_prometheus_adapter_config.py,sha256=51iFbtMu7MZzv9PVuQftJ59BUVBKdeC7G_zkt9-IXdc,40728
344
- paasta_tools-1.30.8.data/scripts/shared_ip_check.py,sha256=dbMwCwDLy9hCIbVWV1rk0FKuBkZNuQtM59hGVKxV2B4,2464
345
- paasta_tools-1.30.8.data/scripts/synapse_srv_namespaces_fact.py,sha256=HFX0zIXkXIjtAw8zrA7mUiy6NOKR11eBzE39R3aZv_E,1408
346
- paasta_tools-1.30.8.data/scripts/timeouts_metrics_prom.py,sha256=icK1j72-e-hvbUGs3LtcaMn9KBMopD9cGv5UUVo-OSc,2607
347
- paasta_tools-1.30.8.dist-info/licenses/LICENSE,sha256=Tcxn8PpeSjHDwUTemLW_thUNxcOOm612dK_no2ebEpo,10837
348
- paasta_tools-1.30.8.dist-info/METADATA,sha256=G0da8u6Y7DdAIDyiTXgjAlGi3lPsvP1F_yFBvsNnx0k,2259
349
- paasta_tools-1.30.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
350
- paasta_tools-1.30.8.dist-info/entry_points.txt,sha256=qokGSdKYA6AjtdMM_BjmCAOMghMsjOpcAdL9e4fY6D8,1179
351
- paasta_tools-1.30.8.dist-info/top_level.txt,sha256=6vZZAZ7bbaDxuXZjNYixDwzkrezpNgDQHpS0ikvFOk4,24
352
- paasta_tools-1.30.8.dist-info/RECORD,,
290
+ paasta_tools-1.30.9.data/scripts/apply_external_resources.py,sha256=BOIdCQ5Md9RI3enzqbIWQge3clkXhPybAmLE3hqfDwQ,3347
291
+ paasta_tools-1.30.9.data/scripts/bounce_log_latency_parser.py,sha256=dC06a0a5LdtPJ8xo88QWe5DMH_vwVB1BNbkFH7kJ3j0,2225
292
+ paasta_tools-1.30.9.data/scripts/check_autoscaler_max_instances.py,sha256=2z6ifSU26-ULOK-FXp75b45mCdjSJnuvU8TxvapB8Wk,9423
293
+ paasta_tools-1.30.9.data/scripts/check_cassandracluster_services_replication.py,sha256=mKlCK9pRNzxnOt41wA6CtDQIHhcky438i044kA6pbEc,1127
294
+ paasta_tools-1.30.9.data/scripts/check_flink_services_health.py,sha256=ElYa1hr6KUcXuu0B8Nf-dt2Vfyo5FrwF5gVV4QBX7Lg,7162
295
+ paasta_tools-1.30.9.data/scripts/check_kubernetes_api.py,sha256=BhOqJkkKNJPfonfIPonW5dlIubd1ji-3ppjXHomNwzM,1522
296
+ paasta_tools-1.30.9.data/scripts/check_kubernetes_services_replication.py,sha256=LCLlumReRdy9Cw_sPpqanjPcBlbcrJDiECaYYru5Cwk,5751
297
+ paasta_tools-1.30.9.data/scripts/check_manual_oapi_changes.sh,sha256=1IdphwXP7xnMNS7huZ3FeEHy67-nY4n3ydHmbojQvJg,879
298
+ paasta_tools-1.30.9.data/scripts/check_oom_events.py,sha256=tUr14T2LYEgqwpAq4vkZ_Z0VTPOfQg7yrSSkwGQ86Hg,7801
299
+ paasta_tools-1.30.9.data/scripts/check_orphans.py,sha256=9PmzRUZ1HwCcmTm4J1xTznz7hZl8fKsu1wdXUDufXJs,9984
300
+ paasta_tools-1.30.9.data/scripts/check_spark_jobs.py,sha256=W4HUIbX_ylxl4DlqcdmoRWDbKYgPEr04OM-DLvfnXE8,7316
301
+ paasta_tools-1.30.9.data/scripts/cleanup_kubernetes_cr.py,sha256=m-w_wuTuVG9FlwQQkxXYgri5DTGac9Nc2pbK4k1FNDE,4659
302
+ paasta_tools-1.30.9.data/scripts/cleanup_kubernetes_crd.py,sha256=p9eLk-0-pU-hcVg-GAM92h1ZdQqlvmYhBzUFCiMPYR8,4478
303
+ paasta_tools-1.30.9.data/scripts/cleanup_kubernetes_jobs.py,sha256=7LHB4tsz1kt-zygssIfQbBY6c3LSqXYDUILvHkSfBog,12433
304
+ paasta_tools-1.30.9.data/scripts/create_dynamodb_table.py,sha256=9wJftWGgNtvLnpXeUqpoMXBIIep1hNySf0YiQmzpl5c,1167
305
+ paasta_tools-1.30.9.data/scripts/create_paasta_playground.py,sha256=jzoE5e1pxWeVXwCEkD9O0jefOhEnIlSa3QMP9PC2f0M,3239
306
+ paasta_tools-1.30.9.data/scripts/delete_kubernetes_deployments.py,sha256=de4C-5yqEuCeJXp6zhbc0v-c0LOElr4qabLnOTRcX4o,3124
307
+ paasta_tools-1.30.9.data/scripts/emit_allocated_cpu_metrics.py,sha256=Cjd3xoOJoYSP3ciSAlZ7fh6_z678KpYt43Xh-WVCY1M,1859
308
+ paasta_tools-1.30.9.data/scripts/generate_all_deployments,sha256=Qr5B0zogTOr8Lcn_7dpORixpGIJcXZ_pWz_ZlWnmsik,248
309
+ paasta_tools-1.30.9.data/scripts/generate_authenticating_services.py,sha256=r5AQyquVm8_rbAhBETUU2ZHZvolpqZZTakW3lKFiOqw,2982
310
+ paasta_tools-1.30.9.data/scripts/generate_deployments_for_service.py,sha256=FAFzIAtKY7GsA13s-ssCMH7T-_p9B1pBtyyYFzsCZ6k,9822
311
+ paasta_tools-1.30.9.data/scripts/generate_services_file.py,sha256=w3Wyyn9ZkjfrvkT0SnTbh5mrTZJnjhTC2JIqLBpb6-g,3583
312
+ paasta_tools-1.30.9.data/scripts/generate_services_yaml.py,sha256=XyIUsHa1BPLqeklayaFewX69-6GT_luaSLS_TMDLkQ0,991
313
+ paasta_tools-1.30.9.data/scripts/get_running_task_allocation.py,sha256=NGYO2td42XQOduUmvgz0CZw0ir36bY6fUe3VOR1Ln6E,10876
314
+ paasta_tools-1.30.9.data/scripts/habitat_fixer.py,sha256=hCC7fEnxrBOmiCJj4rPwhGlae9JsYg_gltk10l-FwaE,2625
315
+ paasta_tools-1.30.9.data/scripts/ide_helper.py,sha256=QUVWxIeh54IhTn3HEhBrmJKvtgw6RDv9smoJ-6pZA4c,12348
316
+ paasta_tools-1.30.9.data/scripts/is_pod_healthy_in_proxy.py,sha256=MiY85MJDXcN9oS8d840WG1iYDIzzO9lmk_NC0i_CrQg,4321
317
+ paasta_tools-1.30.9.data/scripts/is_pod_healthy_in_smartstack.py,sha256=z3uP9sgwLwg94BubFgBKare2t1L5qhcY48MWsJxjxPY,1697
318
+ paasta_tools-1.30.9.data/scripts/kill_bad_containers.py,sha256=oNY5x0Zg0eu34cXhFy60I7WRlqg4PKD_6xWi0eoRTCA,3832
319
+ paasta_tools-1.30.9.data/scripts/kubernetes_remove_evicted_pods.py,sha256=D9Ovdc9Xer_Qf3vM5CtPVcKvnMwLiC0H-WQmQGXrBKM,5274
320
+ paasta_tools-1.30.9.data/scripts/mass-deploy-tag.sh,sha256=cfPgDDvAOhy3ijTUocklogzoIY8hfoE6T5QI-0aqcfM,1578
321
+ paasta_tools-1.30.9.data/scripts/mock_patch_checker.py,sha256=Q6Je8QjmfLzdnv_6JR6ehh2kA5SUxmeZGeLI2WC3BSY,2559
322
+ paasta_tools-1.30.9.data/scripts/paasta_cleanup_remote_run_resources.py,sha256=4oN9UwnR7q6aEEyFUhVrT41VSeQJ2YS3upFpbZQXNUI,4558
323
+ paasta_tools-1.30.9.data/scripts/paasta_cleanup_stale_nodes.py,sha256=C-DmEVgtienoMgJnIeESvFqWcJOW2SOGoS1l8RXA8NE,6304
324
+ paasta_tools-1.30.9.data/scripts/paasta_deploy_tron_jobs,sha256=fFN2aP5FNSm5WfDV3yvLpihXaKkAF65MRXFcN2iD7S4,106
325
+ paasta_tools-1.30.9.data/scripts/paasta_execute_docker_command.py,sha256=6kh7h2bleQbNULc37MiRsfnk9MDHqVv30UQdg3rF3kQ,4086
326
+ paasta_tools-1.30.9.data/scripts/paasta_secrets_sync.py,sha256=sMdyWMt9BU5CmWHIRwzhpFKve7zxFHkygt_SNTJutWM,28766
327
+ paasta_tools-1.30.9.data/scripts/paasta_tabcomplete.sh,sha256=qbQKSriz_L4MogA12L_8i-tg0Lplpshbk_FUMjK6uG0,929
328
+ paasta_tools-1.30.9.data/scripts/paasta_update_soa_memcpu.py,sha256=5fShpZYpb7EeoC70cWdICnNHjHAaNU5mTHaAc3mloIs,20813
329
+ paasta_tools-1.30.9.data/scripts/render_template.py,sha256=KcKfeSP2a9f6fMDRhnjX7OJaHmFIBtCJcHhUI_B7p9Y,3975
330
+ paasta_tools-1.30.9.data/scripts/rightsizer_soaconfigs_update.py,sha256=0UPVtDyX6wXXurv7l5fiKuzXH8VEszKx_V7UqDm6Ck0,10493
331
+ paasta_tools-1.30.9.data/scripts/service_shard_remove.py,sha256=WCvCxu3GTYEa3cYnWybTOiuHN14axj0x5_-snVd-mqE,4927
332
+ paasta_tools-1.30.9.data/scripts/service_shard_update.py,sha256=AajuRS4s-HXhEcIIYK2dsyBSdCjZbh4x6Po48ipl7M4,13346
333
+ paasta_tools-1.30.9.data/scripts/setup_istio_mesh.py,sha256=LbLxeI_DnhNXkyCgG-GxutlNu9_vcIitorYr4I9x4CY,11575
334
+ paasta_tools-1.30.9.data/scripts/setup_kubernetes_cr.py,sha256=xsZJ_X1YpQ0NExyY1cXFH8KW2_vAgctCwdrW0bu102s,14931
335
+ paasta_tools-1.30.9.data/scripts/setup_kubernetes_crd.py,sha256=QCiFOcSmE0nMEheIb7IUnYMUn0heh1kHyMFBCm7XIRU,4020
336
+ paasta_tools-1.30.9.data/scripts/setup_kubernetes_internal_crd.py,sha256=dDyAOKFow7yeHWGa197angYwGTDWNyR7vZ6Cx5JlS6k,4629
337
+ paasta_tools-1.30.9.data/scripts/setup_kubernetes_job.py,sha256=H2VuRaCpBj-J2Qc3DmIMutGuDL8nlfabshEiCGNNqmY,19095
338
+ paasta_tools-1.30.9.data/scripts/setup_prometheus_adapter_config.py,sha256=51iFbtMu7MZzv9PVuQftJ59BUVBKdeC7G_zkt9-IXdc,40728
339
+ paasta_tools-1.30.9.data/scripts/shared_ip_check.py,sha256=dbMwCwDLy9hCIbVWV1rk0FKuBkZNuQtM59hGVKxV2B4,2464
340
+ paasta_tools-1.30.9.data/scripts/synapse_srv_namespaces_fact.py,sha256=HFX0zIXkXIjtAw8zrA7mUiy6NOKR11eBzE39R3aZv_E,1408
341
+ paasta_tools-1.30.9.data/scripts/timeouts_metrics_prom.py,sha256=icK1j72-e-hvbUGs3LtcaMn9KBMopD9cGv5UUVo-OSc,2607
342
+ paasta_tools-1.30.9.dist-info/licenses/LICENSE,sha256=Tcxn8PpeSjHDwUTemLW_thUNxcOOm612dK_no2ebEpo,10837
343
+ paasta_tools-1.30.9.dist-info/METADATA,sha256=NF-_7E0oHRcv8ndsHoTOXthuQc8oTftifMtfTmIRnkE,2259
344
+ paasta_tools-1.30.9.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
345
+ paasta_tools-1.30.9.dist-info/entry_points.txt,sha256=qokGSdKYA6AjtdMM_BjmCAOMghMsjOpcAdL9e4fY6D8,1179
346
+ paasta_tools-1.30.9.dist-info/top_level.txt,sha256=6vZZAZ7bbaDxuXZjNYixDwzkrezpNgDQHpS0ikvFOk4,24
347
+ paasta_tools-1.30.9.dist-info/RECORD,,
@@ -1,71 +0,0 @@
1
- #!/usr/bin/env python
2
- # Copyright 2015-2017 Yelp Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
- from typing import Dict
16
- from typing import List
17
- from typing import Tuple
18
-
19
- from pymesos import MesosSchedulerDriver
20
-
21
- from paasta_tools.frameworks.constraints import ConstraintState
22
- from paasta_tools.frameworks.native_scheduler import LIVE_TASK_STATES
23
- from paasta_tools.frameworks.native_scheduler import NativeScheduler
24
- from paasta_tools.frameworks.native_service_config import TaskInfo
25
- from paasta_tools.frameworks.native_service_config import UnknownNativeServiceError
26
-
27
-
28
- class AdhocScheduler(NativeScheduler):
29
- def __init__(self, *args, **kwargs):
30
- self.dry_run = kwargs.pop("dry_run")
31
-
32
- if kwargs.get("service_config_overrides") is None:
33
- kwargs["service_config_overrides"] = {}
34
- kwargs["service_config_overrides"].setdefault("instances", 1)
35
- self.finished_countdown = kwargs["service_config_overrides"]["instances"]
36
-
37
- super().__init__(*args, **kwargs)
38
-
39
- def need_to_stop(self):
40
- # Is used to decide whether to stop the driver or try to start more tasks.
41
- return self.finished_countdown == 0
42
-
43
- def statusUpdate(self, driver: MesosSchedulerDriver, update: Dict):
44
- super().statusUpdate(driver, update)
45
-
46
- if update["state"] not in LIVE_TASK_STATES:
47
- self.finished_countdown -= 1
48
-
49
- # Stop if task ran and finished
50
- if self.need_to_stop():
51
- driver.stop()
52
-
53
- def tasks_and_state_for_offer(
54
- self, driver: MesosSchedulerDriver, offer, state: ConstraintState
55
- ) -> Tuple[List[TaskInfo], ConstraintState]:
56
- # In dry run satisfy exit-conditions after we got the offer
57
- if self.dry_run or self.need_to_stop():
58
- if self.dry_run:
59
- tasks, _ = super().tasks_and_state_for_offer(driver, offer, state)
60
- print("Would have launched: ", tasks)
61
- driver.stop()
62
- return [], state
63
-
64
- return super().tasks_and_state_for_offer(driver, offer, state)
65
-
66
- def kill_tasks_if_necessary(self, *args, **kwargs):
67
- return
68
-
69
- def validate_config(self):
70
- if self.service_config.get_cmd() is None:
71
- raise UnknownNativeServiceError("missing cmd in service config")