paasta-tools 1.33.1__py3-none-any.whl → 1.33.3__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 (62) hide show
  1. paasta_tools/__init__.py +1 -1
  2. paasta_tools/cli/cmds/local_run.py +47 -27
  3. paasta_tools/kubernetes_tools.py +1 -0
  4. paasta_tools/utils.py +5 -0
  5. {paasta_tools-1.33.1.dist-info → paasta_tools-1.33.3.dist-info}/METADATA +1 -1
  6. {paasta_tools-1.33.1.dist-info → paasta_tools-1.33.3.dist-info}/RECORD +62 -62
  7. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/apply_external_resources.py +0 -0
  8. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/bounce_log_latency_parser.py +0 -0
  9. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_autoscaler_max_instances.py +0 -0
  10. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_cassandracluster_services_replication.py +0 -0
  11. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_flink_services_health.py +0 -0
  12. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_kubernetes_api.py +0 -0
  13. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_kubernetes_services_replication.py +0 -0
  14. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_manual_oapi_changes.sh +0 -0
  15. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_oom_events.py +0 -0
  16. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_orphans.py +0 -0
  17. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/check_spark_jobs.py +0 -0
  18. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/cleanup_kubernetes_cr.py +0 -0
  19. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/cleanup_kubernetes_crd.py +0 -0
  20. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/cleanup_kubernetes_jobs.py +0 -0
  21. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/create_dynamodb_table.py +0 -0
  22. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/create_paasta_playground.py +0 -0
  23. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/delete_kubernetes_deployments.py +0 -0
  24. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/emit_allocated_cpu_metrics.py +0 -0
  25. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/generate_all_deployments +0 -0
  26. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/generate_authenticating_services.py +0 -0
  27. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/generate_deployments_for_service.py +0 -0
  28. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/generate_services_file.py +0 -0
  29. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/generate_services_yaml.py +0 -0
  30. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/get_running_task_allocation.py +0 -0
  31. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/habitat_fixer.py +0 -0
  32. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/ide_helper.py +0 -0
  33. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/is_pod_healthy_in_proxy.py +0 -0
  34. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/is_pod_healthy_in_smartstack.py +0 -0
  35. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/kill_bad_containers.py +0 -0
  36. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/kubernetes_remove_evicted_pods.py +0 -0
  37. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/mass-deploy-tag.sh +0 -0
  38. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/mock_patch_checker.py +0 -0
  39. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/paasta_cleanup_remote_run_resources.py +0 -0
  40. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/paasta_cleanup_stale_nodes.py +0 -0
  41. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/paasta_deploy_tron_jobs +0 -0
  42. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/paasta_execute_docker_command.py +0 -0
  43. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/paasta_secrets_sync.py +0 -0
  44. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/paasta_tabcomplete.sh +0 -0
  45. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/paasta_update_soa_memcpu.py +0 -0
  46. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/render_template.py +0 -0
  47. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/rightsizer_soaconfigs_update.py +0 -0
  48. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/service_shard_remove.py +0 -0
  49. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/service_shard_update.py +0 -0
  50. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/setup_istio_mesh.py +0 -0
  51. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/setup_kubernetes_cr.py +0 -0
  52. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/setup_kubernetes_crd.py +0 -0
  53. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/setup_kubernetes_internal_crd.py +0 -0
  54. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/setup_kubernetes_job.py +0 -0
  55. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/setup_prometheus_adapter_config.py +0 -0
  56. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/shared_ip_check.py +0 -0
  57. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/synapse_srv_namespaces_fact.py +0 -0
  58. {paasta_tools-1.33.1.data → paasta_tools-1.33.3.data}/scripts/timeouts_metrics_prom.py +0 -0
  59. {paasta_tools-1.33.1.dist-info → paasta_tools-1.33.3.dist-info}/WHEEL +0 -0
  60. {paasta_tools-1.33.1.dist-info → paasta_tools-1.33.3.dist-info}/entry_points.txt +0 -0
  61. {paasta_tools-1.33.1.dist-info → paasta_tools-1.33.3.dist-info}/licenses/LICENSE +0 -0
  62. {paasta_tools-1.33.1.dist-info → paasta_tools-1.33.3.dist-info}/top_level.txt +0 -0
paasta_tools/__init__.py CHANGED
@@ -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.33.1"
20
+ __version__ = "1.33.3"
@@ -34,6 +34,7 @@ import requests
34
34
  from docker import errors
35
35
  from docker.api.client import APIClient
36
36
  from mypy_extensions import TypedDict
37
+ from service_configuration_lib import read_service_configuration
37
38
 
38
39
  from paasta_tools.adhoc_tools import get_default_interactive_config
39
40
  from paasta_tools.cli.authentication import get_service_auth_token
@@ -75,12 +76,6 @@ from paasta_tools.utils import Timeout
75
76
  from paasta_tools.utils import TimeoutError
76
77
  from paasta_tools.utils import validate_service_instance
77
78
 
78
- STANDARD_PAASTA_CLI_PATHS = {
79
- "/bin/paasta",
80
- "/opt/venvs/paasta-tools/bin/paasta",
81
- "/usr/bin/paasta",
82
- }
83
-
84
79
 
85
80
  class AWSSessionCreds(TypedDict):
86
81
  AWS_ACCESS_KEY_ID: str
@@ -631,8 +626,19 @@ def get_readonly_docker_registry_auth_config(
631
626
  system_paasta_config = load_system_paasta_config()
632
627
  config_path = system_paasta_config.get_readonly_docker_registry_auth_file()
633
628
 
634
- with open(config_path) as f:
635
- docker_config = json.load(f)
629
+ try:
630
+ with open(config_path) as f:
631
+ docker_config = json.load(f)
632
+ except Exception:
633
+ print(
634
+ PaastaColors.yellow(
635
+ "Warning: unable to load read-only docker registry credentials."
636
+ ),
637
+ file=sys.stderr,
638
+ )
639
+ # the best we can do is try to pull with whatever auth the user has configured locally
640
+ # i.e., root-owned docker config in /root/.docker/config.json
641
+ return None
636
642
  registry = docker_url.split("/")[0]
637
643
 
638
644
  # find matching auth config - our usual ro config will have at least two entries
@@ -646,7 +652,7 @@ def get_readonly_docker_registry_auth_config(
646
652
  username, password = auth_string.split(":", 1)
647
653
  return {"username": username, "password": password}
648
654
 
649
- # afaik, we should only hit this if folks are being naughty and passing a docker url from docker-dev
655
+ # we'll hit this for registries like docker-dev or extra-private internal registries
650
656
  return None
651
657
 
652
658
 
@@ -661,7 +667,7 @@ def docker_pull_image(docker_client: APIClient, docker_url: str) -> None:
661
667
  if not auth_config:
662
668
  print(
663
669
  PaastaColors.yellow(
664
- "Warning: No read-only docker registry credentials found, attempting to pull without authentication."
670
+ "Warning: No read-only docker registry credentials found, attempting to pull without them."
665
671
  ),
666
672
  file=sys.stderr,
667
673
  )
@@ -677,7 +683,9 @@ def docker_pull_image(docker_client: APIClient, docker_url: str) -> None:
677
683
  for line in docker_client.pull(
678
684
  docker_url, auth_config=auth_config, stream=True, decode=True
679
685
  ):
680
- print(f"{line['id']}: {line['status']}", file=sys.stderr)
686
+ # not all lines have an 'id' key :(
687
+ id_prefix = f"{line['id']}: " if "id" in line else ""
688
+ print(f"{id_prefix}{line['status']}", file=sys.stderr)
681
689
  except Exception as e:
682
690
  print(
683
691
  f"\nPull failed. Error: {e}",
@@ -1354,26 +1362,38 @@ def docker_config_available():
1354
1362
  )
1355
1363
 
1356
1364
 
1365
+ def should_reexec_as_root(
1366
+ service: str, skip_secrets: bool, action: str, soa_dir: str = DEFAULT_SOA_DIR
1367
+ ) -> bool:
1368
+ # local-run can't pull secrets from Vault in prod without a root-owned token
1369
+ need_vault_token = not skip_secrets and action == "pull"
1370
+
1371
+ # there are some special teams with their own private docker registries and no ro creds
1372
+ # however, we don't know what registry is to be used without loading the service config
1373
+ service_info = read_service_configuration(service, soa_dir)
1374
+ # technically folks can set the standard registry as a value here, but atm no one is doing that :p
1375
+ registry_override = service_info.get("docker_registry")
1376
+ # note: we could also have a list of registries that have ro creds, but this seems fine for now
1377
+ uses_private_registry = (
1378
+ registry_override
1379
+ and registry_override
1380
+ in load_system_paasta_config().get_private_docker_registries()
1381
+ )
1382
+ need_docker_config = uses_private_registry and action == "pull"
1383
+
1384
+ return (need_vault_token or need_docker_config) and os.geteuid() != 0
1385
+
1386
+
1357
1387
  def paasta_local_run(args):
1358
- if args.action == "pull" and os.geteuid() != 0 and not args.skip_secrets:
1359
- # we unfortunately sometimes install paasta inside the virtualenv of repos where
1360
- # folks might be running commands such as `paasta local-run`.
1361
- # this tends to cause some confusion as this results folks being denied access
1362
- # to sudo since the virtualenv paasta is not in our sudoers :)
1363
- # NOTE: in the unlikely event that someone does need to run this from a venv,
1364
- # there's an opt-out env var
1365
- if (
1366
- sys.argv[0] not in STANDARD_PAASTA_CLI_PATHS
1367
- and "PAASTA_ALLOW_VENV" not in os.environ
1368
- ):
1369
- print(
1370
- "You are running the PaaSTA CLI from a virtualenv - this is unexpected. Re-executing `paasta` from the standard location.."
1371
- )
1372
- os.execvp("/usr/bin/paasta", ["/usr/bin/paasta"] + sys.argv[1:])
1388
+ if should_reexec_as_root(
1389
+ args.service, args.skip_secrets, args.action, args.yelpsoa_config_root
1390
+ ):
1373
1391
  # XXX: we should re-architect this to not need sudo, but for now,
1374
1392
  # re-exec ourselves with sudo to get access to the paasta vault token
1375
1393
  # NOTE: once we do that, we can also remove the venv check above :)
1376
- print("Re-executing paasta local-run --pull with sudo for Vault access...")
1394
+ print(
1395
+ "Re-executing paasta local-run --pull with sudo for Vault/Docker registry access..."
1396
+ )
1377
1397
  os.execvp("sudo", ["sudo", "-H", "/usr/bin/paasta"] + sys.argv[1:])
1378
1398
  if args.action == "build" and not makefile_responds_to("cook-image"):
1379
1399
  print(
@@ -2272,6 +2272,7 @@ class KubernetesDeploymentConfig(LongRunningServiceConfig):
2272
2272
  or self.get_prometheus_port() is not None
2273
2273
  or self.should_use_metrics_provider(METRICS_PROVIDER_UWSGI)
2274
2274
  or self.should_use_metrics_provider(METRICS_PROVIDER_GUNICORN)
2275
+ or self.should_use_metrics_provider(METRICS_PROVIDER_WORKER_LOAD)
2275
2276
  ):
2276
2277
  return "true"
2277
2278
  return "false"
paasta_tools/utils.py CHANGED
@@ -2068,6 +2068,7 @@ class SystemPaastaConfigDict(TypedDict, total=False):
2068
2068
  default_spark_iam_user: str
2069
2069
  default_spark_driver_pool_override: str
2070
2070
  readonly_docker_registry_auth_file: str
2071
+ private_docker_registries: List[str]
2071
2072
 
2072
2073
 
2073
2074
  def load_system_paasta_config(
@@ -2849,6 +2850,10 @@ class SystemPaastaConfig:
2849
2850
  DEFAULT_READONLY_DOCKER_REGISTRY_AUTH_FILE,
2850
2851
  )
2851
2852
 
2853
+ def get_private_docker_registries(self) -> Set[str]:
2854
+ """Get all the internal Docker registries without generally-available RO creds."""
2855
+ return set(self.config_dict.get("private_docker_registries", []))
2856
+
2852
2857
 
2853
2858
  def _run(
2854
2859
  command: Union[str, List[str]],
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: paasta-tools
3
- Version: 1.33.1
3
+ Version: 1.33.3
4
4
  Summary: Tools for Yelps SOA infrastructure
5
5
  Author: Compute Infrastructure @ Yelp
6
6
  Author-email: compute-infra@yelp.com
@@ -1,7 +1,7 @@
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=7O34FHKIZT2Le4NplZENYKjFGz3hXlZ1uc-AhElpcEk,865
4
+ paasta_tools/__init__.py,sha256=Uy-kz_5Q5H6B1lb2sLRg71qfUbbQe-CWz6qirBFAsyQ,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
7
  paasta_tools/async_utils.py,sha256=LOpYxaN-8u7js6IlibPRGq9OtgWFig59LGeIFgW9PsA,3591
@@ -44,7 +44,7 @@ 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=x6KrmucTrNM08Zho1qwdCDA_qNiIqK5HJhF_d3_3aU0,181285
47
+ paasta_tools/kubernetes_tools.py,sha256=B4ahvbb90oRyLyI2F4Nk9tlnJypB7EnMTRiVMA13PCw,181363
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=RphI6rDE4BK2zN2bfM900abuj7kDn7YXUcMq4pQVyO4,26400
@@ -78,7 +78,7 @@ paasta_tools/smartstack_tools.py,sha256=J0mPialC9KFW9mW0fOUCj040VyowEjQgBI_s13fz
78
78
  paasta_tools/spark_tools.py,sha256=qZIa1g9JQrX3Nndd3vsblJ3nfXEhSMyizmOTQfFP2k8,9749
79
79
  paasta_tools/synapse_srv_namespaces_fact.py,sha256=XG_Fgr_3D-MaEYkhKyQSmKHbOyZp9zwpevyTX4BOLWE,1421
80
80
  paasta_tools/tron_tools.py,sha256=XJjuLp98zdaJeZt7Wg55t7G8lhTffL5HuA1G_mkiekA,55901
81
- paasta_tools/utils.py,sha256=7U1WsFBQUWa9wiTwlxu85F9zWbzhjo1V7lyxD8dkUZQ,149205
81
+ paasta_tools/utils.py,sha256=2ybUjMUEQHULs91i1FjnDYm_VO7g9aMI9O5CBt9Xng4,149469
82
82
  paasta_tools/yaml_tools.py,sha256=4gXbrFQWWihp9edKt4J14MWcdS8r8sYJAsMYmmL3byk,1263
83
83
  paasta_tools/api/__init__.py,sha256=H0VmJeHyCSXD9GbiEjjQwcB_sKOcoBiyK-IEJMmtCyQ,578
84
84
  paasta_tools/api/api.py,sha256=SwlBbwH9e8ihnBSSkLU65CHrnzyQeDHPfRg_ik5LWZU,9859
@@ -124,7 +124,7 @@ paasta_tools/cli/cmds/list.py,sha256=KTeSZIaRArJ28lXFLJcEYGH9p90nD6rPFHAE45I7x-w
124
124
  paasta_tools/cli/cmds/list_clusters.py,sha256=7L1kK9xS7o9iYpAikTUjsGFR1cpX8ME31BBp9dDnDFY,1550
125
125
  paasta_tools/cli/cmds/list_deploy_queue.py,sha256=IqtsblfL0LpZyp-cwaRHpo6tAfvo5IAgnCyI5MMcVoM,5577
126
126
  paasta_tools/cli/cmds/list_namespaces.py,sha256=KPszBdsOAqRaPECUF1HgCFm1BYQqfBPTG3dwAsvywm4,3138
127
- paasta_tools/cli/cmds/local_run.py,sha256=HUq2kV81GodXhaNmut5Kc5iROKy2eVETuCYcCKab1BY,53766
127
+ paasta_tools/cli/cmds/local_run.py,sha256=ChuGt1Gi4epy_r5BCDJ-IHa6FVeFkZKb1kD12im7rGw,54547
128
128
  paasta_tools/cli/cmds/logs.py,sha256=fx4hdmHssPNRpmqEuyLLxnBAbevrDG-r89VULr89bzE,58922
129
129
  paasta_tools/cli/cmds/mark_for_deployment.py,sha256=4cFqxJXzdz3kDzJpQWPRhYGSfxSvh8l5UaWnsMo7TiI,76711
130
130
  paasta_tools/cli/cmds/mesh_status.py,sha256=KpNfSomS5Uh98szloSpFh3qn0-IYHq4M37BS92t5mdc,6124
@@ -287,61 +287,61 @@ paasta_tools/tron/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
287
287
  paasta_tools/tron/client.py,sha256=ypWjM4bZCzQWLn-qe1driqAxvF0ux8dROuFUv63dryA,5562
288
288
  paasta_tools/tron/tron_command_context.py,sha256=c6mph_DAt7pjcE3Uo271haJ0DfxJzfvcRhR2o-UmOeY,5379
289
289
  paasta_tools/tron/tron_timeutils.py,sha256=vDn04K7A3Xbs3lM04EgLuViC8AavOc5qyo8J5MC5nLk,3054
290
- paasta_tools-1.33.1.data/scripts/apply_external_resources.py,sha256=BOIdCQ5Md9RI3enzqbIWQge3clkXhPybAmLE3hqfDwQ,3347
291
- paasta_tools-1.33.1.data/scripts/bounce_log_latency_parser.py,sha256=dC06a0a5LdtPJ8xo88QWe5DMH_vwVB1BNbkFH7kJ3j0,2225
292
- paasta_tools-1.33.1.data/scripts/check_autoscaler_max_instances.py,sha256=2z6ifSU26-ULOK-FXp75b45mCdjSJnuvU8TxvapB8Wk,9423
293
- paasta_tools-1.33.1.data/scripts/check_cassandracluster_services_replication.py,sha256=mKlCK9pRNzxnOt41wA6CtDQIHhcky438i044kA6pbEc,1127
294
- paasta_tools-1.33.1.data/scripts/check_flink_services_health.py,sha256=ElYa1hr6KUcXuu0B8Nf-dt2Vfyo5FrwF5gVV4QBX7Lg,7162
295
- paasta_tools-1.33.1.data/scripts/check_kubernetes_api.py,sha256=BhOqJkkKNJPfonfIPonW5dlIubd1ji-3ppjXHomNwzM,1522
296
- paasta_tools-1.33.1.data/scripts/check_kubernetes_services_replication.py,sha256=LCLlumReRdy9Cw_sPpqanjPcBlbcrJDiECaYYru5Cwk,5751
297
- paasta_tools-1.33.1.data/scripts/check_manual_oapi_changes.sh,sha256=1IdphwXP7xnMNS7huZ3FeEHy67-nY4n3ydHmbojQvJg,879
298
- paasta_tools-1.33.1.data/scripts/check_oom_events.py,sha256=tUr14T2LYEgqwpAq4vkZ_Z0VTPOfQg7yrSSkwGQ86Hg,7801
299
- paasta_tools-1.33.1.data/scripts/check_orphans.py,sha256=9PmzRUZ1HwCcmTm4J1xTznz7hZl8fKsu1wdXUDufXJs,9984
300
- paasta_tools-1.33.1.data/scripts/check_spark_jobs.py,sha256=W4HUIbX_ylxl4DlqcdmoRWDbKYgPEr04OM-DLvfnXE8,7316
301
- paasta_tools-1.33.1.data/scripts/cleanup_kubernetes_cr.py,sha256=m-w_wuTuVG9FlwQQkxXYgri5DTGac9Nc2pbK4k1FNDE,4659
302
- paasta_tools-1.33.1.data/scripts/cleanup_kubernetes_crd.py,sha256=p9eLk-0-pU-hcVg-GAM92h1ZdQqlvmYhBzUFCiMPYR8,4478
303
- paasta_tools-1.33.1.data/scripts/cleanup_kubernetes_jobs.py,sha256=7LHB4tsz1kt-zygssIfQbBY6c3LSqXYDUILvHkSfBog,12433
304
- paasta_tools-1.33.1.data/scripts/create_dynamodb_table.py,sha256=9wJftWGgNtvLnpXeUqpoMXBIIep1hNySf0YiQmzpl5c,1167
305
- paasta_tools-1.33.1.data/scripts/create_paasta_playground.py,sha256=jzoE5e1pxWeVXwCEkD9O0jefOhEnIlSa3QMP9PC2f0M,3239
306
- paasta_tools-1.33.1.data/scripts/delete_kubernetes_deployments.py,sha256=de4C-5yqEuCeJXp6zhbc0v-c0LOElr4qabLnOTRcX4o,3124
307
- paasta_tools-1.33.1.data/scripts/emit_allocated_cpu_metrics.py,sha256=Cjd3xoOJoYSP3ciSAlZ7fh6_z678KpYt43Xh-WVCY1M,1859
308
- paasta_tools-1.33.1.data/scripts/generate_all_deployments,sha256=Qr5B0zogTOr8Lcn_7dpORixpGIJcXZ_pWz_ZlWnmsik,248
309
- paasta_tools-1.33.1.data/scripts/generate_authenticating_services.py,sha256=r5AQyquVm8_rbAhBETUU2ZHZvolpqZZTakW3lKFiOqw,2982
310
- paasta_tools-1.33.1.data/scripts/generate_deployments_for_service.py,sha256=FAFzIAtKY7GsA13s-ssCMH7T-_p9B1pBtyyYFzsCZ6k,9822
311
- paasta_tools-1.33.1.data/scripts/generate_services_file.py,sha256=w3Wyyn9ZkjfrvkT0SnTbh5mrTZJnjhTC2JIqLBpb6-g,3583
312
- paasta_tools-1.33.1.data/scripts/generate_services_yaml.py,sha256=XyIUsHa1BPLqeklayaFewX69-6GT_luaSLS_TMDLkQ0,991
313
- paasta_tools-1.33.1.data/scripts/get_running_task_allocation.py,sha256=NGYO2td42XQOduUmvgz0CZw0ir36bY6fUe3VOR1Ln6E,10876
314
- paasta_tools-1.33.1.data/scripts/habitat_fixer.py,sha256=hCC7fEnxrBOmiCJj4rPwhGlae9JsYg_gltk10l-FwaE,2625
315
- paasta_tools-1.33.1.data/scripts/ide_helper.py,sha256=QUVWxIeh54IhTn3HEhBrmJKvtgw6RDv9smoJ-6pZA4c,12348
316
- paasta_tools-1.33.1.data/scripts/is_pod_healthy_in_proxy.py,sha256=MiY85MJDXcN9oS8d840WG1iYDIzzO9lmk_NC0i_CrQg,4321
317
- paasta_tools-1.33.1.data/scripts/is_pod_healthy_in_smartstack.py,sha256=z3uP9sgwLwg94BubFgBKare2t1L5qhcY48MWsJxjxPY,1697
318
- paasta_tools-1.33.1.data/scripts/kill_bad_containers.py,sha256=oNY5x0Zg0eu34cXhFy60I7WRlqg4PKD_6xWi0eoRTCA,3832
319
- paasta_tools-1.33.1.data/scripts/kubernetes_remove_evicted_pods.py,sha256=D9Ovdc9Xer_Qf3vM5CtPVcKvnMwLiC0H-WQmQGXrBKM,5274
320
- paasta_tools-1.33.1.data/scripts/mass-deploy-tag.sh,sha256=cfPgDDvAOhy3ijTUocklogzoIY8hfoE6T5QI-0aqcfM,1578
321
- paasta_tools-1.33.1.data/scripts/mock_patch_checker.py,sha256=Q6Je8QjmfLzdnv_6JR6ehh2kA5SUxmeZGeLI2WC3BSY,2559
322
- paasta_tools-1.33.1.data/scripts/paasta_cleanup_remote_run_resources.py,sha256=4oN9UwnR7q6aEEyFUhVrT41VSeQJ2YS3upFpbZQXNUI,4558
323
- paasta_tools-1.33.1.data/scripts/paasta_cleanup_stale_nodes.py,sha256=C-DmEVgtienoMgJnIeESvFqWcJOW2SOGoS1l8RXA8NE,6304
324
- paasta_tools-1.33.1.data/scripts/paasta_deploy_tron_jobs,sha256=fFN2aP5FNSm5WfDV3yvLpihXaKkAF65MRXFcN2iD7S4,106
325
- paasta_tools-1.33.1.data/scripts/paasta_execute_docker_command.py,sha256=6kh7h2bleQbNULc37MiRsfnk9MDHqVv30UQdg3rF3kQ,4086
326
- paasta_tools-1.33.1.data/scripts/paasta_secrets_sync.py,sha256=sMdyWMt9BU5CmWHIRwzhpFKve7zxFHkygt_SNTJutWM,28766
327
- paasta_tools-1.33.1.data/scripts/paasta_tabcomplete.sh,sha256=qbQKSriz_L4MogA12L_8i-tg0Lplpshbk_FUMjK6uG0,929
328
- paasta_tools-1.33.1.data/scripts/paasta_update_soa_memcpu.py,sha256=5fShpZYpb7EeoC70cWdICnNHjHAaNU5mTHaAc3mloIs,20813
329
- paasta_tools-1.33.1.data/scripts/render_template.py,sha256=KcKfeSP2a9f6fMDRhnjX7OJaHmFIBtCJcHhUI_B7p9Y,3975
330
- paasta_tools-1.33.1.data/scripts/rightsizer_soaconfigs_update.py,sha256=0UPVtDyX6wXXurv7l5fiKuzXH8VEszKx_V7UqDm6Ck0,10493
331
- paasta_tools-1.33.1.data/scripts/service_shard_remove.py,sha256=WCvCxu3GTYEa3cYnWybTOiuHN14axj0x5_-snVd-mqE,4927
332
- paasta_tools-1.33.1.data/scripts/service_shard_update.py,sha256=AajuRS4s-HXhEcIIYK2dsyBSdCjZbh4x6Po48ipl7M4,13346
333
- paasta_tools-1.33.1.data/scripts/setup_istio_mesh.py,sha256=LbLxeI_DnhNXkyCgG-GxutlNu9_vcIitorYr4I9x4CY,11575
334
- paasta_tools-1.33.1.data/scripts/setup_kubernetes_cr.py,sha256=xsZJ_X1YpQ0NExyY1cXFH8KW2_vAgctCwdrW0bu102s,14931
335
- paasta_tools-1.33.1.data/scripts/setup_kubernetes_crd.py,sha256=QCiFOcSmE0nMEheIb7IUnYMUn0heh1kHyMFBCm7XIRU,4020
336
- paasta_tools-1.33.1.data/scripts/setup_kubernetes_internal_crd.py,sha256=dDyAOKFow7yeHWGa197angYwGTDWNyR7vZ6Cx5JlS6k,4629
337
- paasta_tools-1.33.1.data/scripts/setup_kubernetes_job.py,sha256=H2VuRaCpBj-J2Qc3DmIMutGuDL8nlfabshEiCGNNqmY,19095
338
- paasta_tools-1.33.1.data/scripts/setup_prometheus_adapter_config.py,sha256=JzvztaJ__5MOAV6pD5Vj3mamARh6TZUCzYdlqhWDOOY,43962
339
- paasta_tools-1.33.1.data/scripts/shared_ip_check.py,sha256=dbMwCwDLy9hCIbVWV1rk0FKuBkZNuQtM59hGVKxV2B4,2464
340
- paasta_tools-1.33.1.data/scripts/synapse_srv_namespaces_fact.py,sha256=HFX0zIXkXIjtAw8zrA7mUiy6NOKR11eBzE39R3aZv_E,1408
341
- paasta_tools-1.33.1.data/scripts/timeouts_metrics_prom.py,sha256=icK1j72-e-hvbUGs3LtcaMn9KBMopD9cGv5UUVo-OSc,2607
342
- paasta_tools-1.33.1.dist-info/licenses/LICENSE,sha256=Tcxn8PpeSjHDwUTemLW_thUNxcOOm612dK_no2ebEpo,10837
343
- paasta_tools-1.33.1.dist-info/METADATA,sha256=SzC0AT_UouMY0bj-Urq-B_q0z8odoiODjWKZUSny7QA,2259
344
- paasta_tools-1.33.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
345
- paasta_tools-1.33.1.dist-info/entry_points.txt,sha256=qokGSdKYA6AjtdMM_BjmCAOMghMsjOpcAdL9e4fY6D8,1179
346
- paasta_tools-1.33.1.dist-info/top_level.txt,sha256=6vZZAZ7bbaDxuXZjNYixDwzkrezpNgDQHpS0ikvFOk4,24
347
- paasta_tools-1.33.1.dist-info/RECORD,,
290
+ paasta_tools-1.33.3.data/scripts/apply_external_resources.py,sha256=BOIdCQ5Md9RI3enzqbIWQge3clkXhPybAmLE3hqfDwQ,3347
291
+ paasta_tools-1.33.3.data/scripts/bounce_log_latency_parser.py,sha256=dC06a0a5LdtPJ8xo88QWe5DMH_vwVB1BNbkFH7kJ3j0,2225
292
+ paasta_tools-1.33.3.data/scripts/check_autoscaler_max_instances.py,sha256=2z6ifSU26-ULOK-FXp75b45mCdjSJnuvU8TxvapB8Wk,9423
293
+ paasta_tools-1.33.3.data/scripts/check_cassandracluster_services_replication.py,sha256=mKlCK9pRNzxnOt41wA6CtDQIHhcky438i044kA6pbEc,1127
294
+ paasta_tools-1.33.3.data/scripts/check_flink_services_health.py,sha256=ElYa1hr6KUcXuu0B8Nf-dt2Vfyo5FrwF5gVV4QBX7Lg,7162
295
+ paasta_tools-1.33.3.data/scripts/check_kubernetes_api.py,sha256=BhOqJkkKNJPfonfIPonW5dlIubd1ji-3ppjXHomNwzM,1522
296
+ paasta_tools-1.33.3.data/scripts/check_kubernetes_services_replication.py,sha256=LCLlumReRdy9Cw_sPpqanjPcBlbcrJDiECaYYru5Cwk,5751
297
+ paasta_tools-1.33.3.data/scripts/check_manual_oapi_changes.sh,sha256=1IdphwXP7xnMNS7huZ3FeEHy67-nY4n3ydHmbojQvJg,879
298
+ paasta_tools-1.33.3.data/scripts/check_oom_events.py,sha256=tUr14T2LYEgqwpAq4vkZ_Z0VTPOfQg7yrSSkwGQ86Hg,7801
299
+ paasta_tools-1.33.3.data/scripts/check_orphans.py,sha256=9PmzRUZ1HwCcmTm4J1xTznz7hZl8fKsu1wdXUDufXJs,9984
300
+ paasta_tools-1.33.3.data/scripts/check_spark_jobs.py,sha256=W4HUIbX_ylxl4DlqcdmoRWDbKYgPEr04OM-DLvfnXE8,7316
301
+ paasta_tools-1.33.3.data/scripts/cleanup_kubernetes_cr.py,sha256=m-w_wuTuVG9FlwQQkxXYgri5DTGac9Nc2pbK4k1FNDE,4659
302
+ paasta_tools-1.33.3.data/scripts/cleanup_kubernetes_crd.py,sha256=p9eLk-0-pU-hcVg-GAM92h1ZdQqlvmYhBzUFCiMPYR8,4478
303
+ paasta_tools-1.33.3.data/scripts/cleanup_kubernetes_jobs.py,sha256=7LHB4tsz1kt-zygssIfQbBY6c3LSqXYDUILvHkSfBog,12433
304
+ paasta_tools-1.33.3.data/scripts/create_dynamodb_table.py,sha256=9wJftWGgNtvLnpXeUqpoMXBIIep1hNySf0YiQmzpl5c,1167
305
+ paasta_tools-1.33.3.data/scripts/create_paasta_playground.py,sha256=jzoE5e1pxWeVXwCEkD9O0jefOhEnIlSa3QMP9PC2f0M,3239
306
+ paasta_tools-1.33.3.data/scripts/delete_kubernetes_deployments.py,sha256=de4C-5yqEuCeJXp6zhbc0v-c0LOElr4qabLnOTRcX4o,3124
307
+ paasta_tools-1.33.3.data/scripts/emit_allocated_cpu_metrics.py,sha256=Cjd3xoOJoYSP3ciSAlZ7fh6_z678KpYt43Xh-WVCY1M,1859
308
+ paasta_tools-1.33.3.data/scripts/generate_all_deployments,sha256=Qr5B0zogTOr8Lcn_7dpORixpGIJcXZ_pWz_ZlWnmsik,248
309
+ paasta_tools-1.33.3.data/scripts/generate_authenticating_services.py,sha256=r5AQyquVm8_rbAhBETUU2ZHZvolpqZZTakW3lKFiOqw,2982
310
+ paasta_tools-1.33.3.data/scripts/generate_deployments_for_service.py,sha256=FAFzIAtKY7GsA13s-ssCMH7T-_p9B1pBtyyYFzsCZ6k,9822
311
+ paasta_tools-1.33.3.data/scripts/generate_services_file.py,sha256=w3Wyyn9ZkjfrvkT0SnTbh5mrTZJnjhTC2JIqLBpb6-g,3583
312
+ paasta_tools-1.33.3.data/scripts/generate_services_yaml.py,sha256=XyIUsHa1BPLqeklayaFewX69-6GT_luaSLS_TMDLkQ0,991
313
+ paasta_tools-1.33.3.data/scripts/get_running_task_allocation.py,sha256=NGYO2td42XQOduUmvgz0CZw0ir36bY6fUe3VOR1Ln6E,10876
314
+ paasta_tools-1.33.3.data/scripts/habitat_fixer.py,sha256=hCC7fEnxrBOmiCJj4rPwhGlae9JsYg_gltk10l-FwaE,2625
315
+ paasta_tools-1.33.3.data/scripts/ide_helper.py,sha256=QUVWxIeh54IhTn3HEhBrmJKvtgw6RDv9smoJ-6pZA4c,12348
316
+ paasta_tools-1.33.3.data/scripts/is_pod_healthy_in_proxy.py,sha256=MiY85MJDXcN9oS8d840WG1iYDIzzO9lmk_NC0i_CrQg,4321
317
+ paasta_tools-1.33.3.data/scripts/is_pod_healthy_in_smartstack.py,sha256=z3uP9sgwLwg94BubFgBKare2t1L5qhcY48MWsJxjxPY,1697
318
+ paasta_tools-1.33.3.data/scripts/kill_bad_containers.py,sha256=oNY5x0Zg0eu34cXhFy60I7WRlqg4PKD_6xWi0eoRTCA,3832
319
+ paasta_tools-1.33.3.data/scripts/kubernetes_remove_evicted_pods.py,sha256=D9Ovdc9Xer_Qf3vM5CtPVcKvnMwLiC0H-WQmQGXrBKM,5274
320
+ paasta_tools-1.33.3.data/scripts/mass-deploy-tag.sh,sha256=cfPgDDvAOhy3ijTUocklogzoIY8hfoE6T5QI-0aqcfM,1578
321
+ paasta_tools-1.33.3.data/scripts/mock_patch_checker.py,sha256=Q6Je8QjmfLzdnv_6JR6ehh2kA5SUxmeZGeLI2WC3BSY,2559
322
+ paasta_tools-1.33.3.data/scripts/paasta_cleanup_remote_run_resources.py,sha256=4oN9UwnR7q6aEEyFUhVrT41VSeQJ2YS3upFpbZQXNUI,4558
323
+ paasta_tools-1.33.3.data/scripts/paasta_cleanup_stale_nodes.py,sha256=C-DmEVgtienoMgJnIeESvFqWcJOW2SOGoS1l8RXA8NE,6304
324
+ paasta_tools-1.33.3.data/scripts/paasta_deploy_tron_jobs,sha256=fFN2aP5FNSm5WfDV3yvLpihXaKkAF65MRXFcN2iD7S4,106
325
+ paasta_tools-1.33.3.data/scripts/paasta_execute_docker_command.py,sha256=6kh7h2bleQbNULc37MiRsfnk9MDHqVv30UQdg3rF3kQ,4086
326
+ paasta_tools-1.33.3.data/scripts/paasta_secrets_sync.py,sha256=sMdyWMt9BU5CmWHIRwzhpFKve7zxFHkygt_SNTJutWM,28766
327
+ paasta_tools-1.33.3.data/scripts/paasta_tabcomplete.sh,sha256=qbQKSriz_L4MogA12L_8i-tg0Lplpshbk_FUMjK6uG0,929
328
+ paasta_tools-1.33.3.data/scripts/paasta_update_soa_memcpu.py,sha256=5fShpZYpb7EeoC70cWdICnNHjHAaNU5mTHaAc3mloIs,20813
329
+ paasta_tools-1.33.3.data/scripts/render_template.py,sha256=KcKfeSP2a9f6fMDRhnjX7OJaHmFIBtCJcHhUI_B7p9Y,3975
330
+ paasta_tools-1.33.3.data/scripts/rightsizer_soaconfigs_update.py,sha256=0UPVtDyX6wXXurv7l5fiKuzXH8VEszKx_V7UqDm6Ck0,10493
331
+ paasta_tools-1.33.3.data/scripts/service_shard_remove.py,sha256=WCvCxu3GTYEa3cYnWybTOiuHN14axj0x5_-snVd-mqE,4927
332
+ paasta_tools-1.33.3.data/scripts/service_shard_update.py,sha256=AajuRS4s-HXhEcIIYK2dsyBSdCjZbh4x6Po48ipl7M4,13346
333
+ paasta_tools-1.33.3.data/scripts/setup_istio_mesh.py,sha256=LbLxeI_DnhNXkyCgG-GxutlNu9_vcIitorYr4I9x4CY,11575
334
+ paasta_tools-1.33.3.data/scripts/setup_kubernetes_cr.py,sha256=xsZJ_X1YpQ0NExyY1cXFH8KW2_vAgctCwdrW0bu102s,14931
335
+ paasta_tools-1.33.3.data/scripts/setup_kubernetes_crd.py,sha256=QCiFOcSmE0nMEheIb7IUnYMUn0heh1kHyMFBCm7XIRU,4020
336
+ paasta_tools-1.33.3.data/scripts/setup_kubernetes_internal_crd.py,sha256=dDyAOKFow7yeHWGa197angYwGTDWNyR7vZ6Cx5JlS6k,4629
337
+ paasta_tools-1.33.3.data/scripts/setup_kubernetes_job.py,sha256=H2VuRaCpBj-J2Qc3DmIMutGuDL8nlfabshEiCGNNqmY,19095
338
+ paasta_tools-1.33.3.data/scripts/setup_prometheus_adapter_config.py,sha256=JzvztaJ__5MOAV6pD5Vj3mamARh6TZUCzYdlqhWDOOY,43962
339
+ paasta_tools-1.33.3.data/scripts/shared_ip_check.py,sha256=dbMwCwDLy9hCIbVWV1rk0FKuBkZNuQtM59hGVKxV2B4,2464
340
+ paasta_tools-1.33.3.data/scripts/synapse_srv_namespaces_fact.py,sha256=HFX0zIXkXIjtAw8zrA7mUiy6NOKR11eBzE39R3aZv_E,1408
341
+ paasta_tools-1.33.3.data/scripts/timeouts_metrics_prom.py,sha256=icK1j72-e-hvbUGs3LtcaMn9KBMopD9cGv5UUVo-OSc,2607
342
+ paasta_tools-1.33.3.dist-info/licenses/LICENSE,sha256=Tcxn8PpeSjHDwUTemLW_thUNxcOOm612dK_no2ebEpo,10837
343
+ paasta_tools-1.33.3.dist-info/METADATA,sha256=ej-1CwtzeOkVJP4vgoR7rcuEpHa0pS0jAlKcK_MaYN0,2259
344
+ paasta_tools-1.33.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
345
+ paasta_tools-1.33.3.dist-info/entry_points.txt,sha256=qokGSdKYA6AjtdMM_BjmCAOMghMsjOpcAdL9e4fY6D8,1179
346
+ paasta_tools-1.33.3.dist-info/top_level.txt,sha256=6vZZAZ7bbaDxuXZjNYixDwzkrezpNgDQHpS0ikvFOk4,24
347
+ paasta_tools-1.33.3.dist-info/RECORD,,