mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 00:45:18 +03:00
fdc83eaa75
Summary: Rather than switch all of Eden at once to the thrift-py3 client, rename get_thrift_client to get_thrift_client_legacy so uses of the new client can be introduced piecemeal. (I did try migrating everything at once but it's been quite painful.) Reviewed By: fanzeyi Differential Revision: D22423399 fbshipit-source-id: 9e6d938b90fff9fc3266ba20bc77e880e7f5b1aa
44 lines
1.3 KiB
Python
44 lines
1.3 KiB
Python
#!/usr/bin/env python3
|
|
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
#
|
|
# This software may be used and distributed according to the terms of the
|
|
# GNU General Public License version 2.
|
|
|
|
import argparse
|
|
|
|
from . import cmd_util, subcmd as subcmd_mod
|
|
from .subcmd import Subcmd
|
|
from .trace_cmd import trace_cmd
|
|
|
|
|
|
@trace_cmd("enable", "Enable tracing")
|
|
class EnableTraceCmd(Subcmd):
|
|
def run(self, args: argparse.Namespace) -> int:
|
|
instance = cmd_util.get_eden_instance(args)
|
|
with instance.get_thrift_client_legacy() as client:
|
|
client.enableTracing()
|
|
return 0
|
|
|
|
|
|
@trace_cmd("disable", "Disable tracing")
|
|
class DisableTraceCmd(Subcmd):
|
|
def run(self, args: argparse.Namespace) -> int:
|
|
instance = cmd_util.get_eden_instance(args)
|
|
with instance.get_thrift_client_legacy() as client:
|
|
client.disableTracing()
|
|
return 0
|
|
|
|
|
|
@subcmd_mod.subcmd("trace", "Commands for managing eden tracing")
|
|
# pyre-fixme[13]: Attribute `parser` is never initialized.
|
|
class TraceCmd(Subcmd):
|
|
parser: argparse.ArgumentParser
|
|
|
|
def setup_parser(self, parser: argparse.ArgumentParser) -> None:
|
|
self.parser = parser
|
|
self.add_subcommands(parser, trace_cmd.commands)
|
|
|
|
def run(self, args: argparse.Namespace) -> int:
|
|
self.parser.print_help()
|
|
return 0
|