驱动程序¶
入口点¶
可以使用 setuptools 的入口点直接从 python 包加载命令。mach 入口点是一个函数,它返回一个包含 mach 命令提供程序的文件或目录列表。例如:
def list_providers():
providers = []
here = os.path.abspath(os.path.dirname(__file__))
for p in os.listdir(here):
if p.endswith('.py'):
providers.append(os.path.join(here, p))
return providers
有关创建入口点的更多信息,请参阅 http://pythonhosted.org/setuptools/setuptools.html#dynamic-discovery-of-services-and-plugins。要搜索入口点插件,可以调用 mach.command_util.load_commands_from_entry_point()
。例如:
load_commands_from_entry_point("mach.external.providers")