本文整理汇总了Python中twitter.common.app.main函数的典型用法代码示例。如果您正苦于以下问题:Python main函数的具体用法?Python main怎么用?Python main使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了main函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: proxy_main
def proxy_main():
def main(args, opts):
if args:
print("ERROR: unrecognized arguments: %s\n" % (" ".join(args)), file=sys.stderr)
app.help()
sys.exit(1)
root_server = HttpServer()
root_server.mount_routes(DiagnosticsEndpoints())
task_observer = TaskObserver(opts.root)
task_observer.start()
bottle_wrapper = BottleObserver(task_observer)
root_server.mount_routes(bottle_wrapper)
def run():
root_server.run('0.0.0.0', opts.port, 'cherrypy')
et = ExceptionalThread(target=run)
et.daemon = True
et.start()
et.join()
app.main()
示例2: proxy_main
def proxy_main():
def main(args, options):
if MesosExecutorDriver is None:
app.error('Could not load MesosExecutorDriver!')
thermos_executor = initialize(options)
# Create driver stub
driver = MesosExecutorDriver(thermos_executor)
# This is an ephemeral executor -- shutdown if we receive no tasks within a certain
# time period
ExecutorTimeout(thermos_executor.launched, driver).start()
# Start executor and wait until it is stopped.
driver_thread = ExecutorDriverThread(driver)
driver_thread.start()
try:
while driver_thread.isAlive():
driver_thread.join(5)
except (KeyboardInterrupt, SystemExit):
driver.stop()
raise
log.info('MesosExecutorDriver.run() has finished.')
app.register_module(ExceptionTerminationHandler())
app.main()
示例3: proxy_main
def proxy_main():
def main(args, options):
thermos_runner_provider = DefaultThermosTaskRunnerProvider(
dump_runner_pex(),
artifact_dir=os.path.realpath('.'),
)
# status providers:
status_providers = [HealthCheckerProvider()]
if options.announcer_enable:
if options.announcer_ensemble is None:
app.error('Must specify --announcer-ensemble if the announcer is enabled.')
status_providers.append(DefaultAnnouncerCheckerProvider(
options.announcer_ensemble, options.announcer_serverset_path))
# Create executor stub
thermos_executor = AuroraExecutor(
runner_provider=thermos_runner_provider,
status_providers=status_providers,
)
# Create driver stub
driver = MesosExecutorDriver(thermos_executor)
# This is an ephemeral executor -- shutdown if we receive no tasks within a certain
# time period
ExecutorTimeout(thermos_executor.launched, driver).start()
# Start executor
driver.run()
log.info('MesosExecutorDriver.run() has finished.')
app.main()
示例4: proxy_main
def proxy_main():
"""Proxy main function.
setuptools entrypoints with twitter.common.app is so awkward.
"""
def main(_, opts):
"""Main"""
if not opts.bucket:
log.error('--bucket is required.')
app.help()
server = S3Web(bucket=opts.bucket,
prefix=opts.prefix,
access_key_id=opts.access_key_id,
secret_key=opts.secret_key)
thread = ExceptionalThread(
target=lambda: server.run(opts.listen,
opts.port,
server='cherrypy'))
thread.daemon = True
thread.start()
log.info('Ready.')
app.wait_forever()
register_opts()
app.set_usage(__doc__)
app.set_option('twitter_common_log_stderr_log_level', 'google:INFO')
app.set_name('s3webfront')
app.main()
示例5: proxy_main
def proxy_main():
def main():
runner_provider = DefaultThermosTaskRunnerProvider(
dump_runner_pex(),
artifact_dir=os.path.realpath('.'),
)
# Create executor stub
thermos_executor = ThermosExecutor(
runner_provider=runner_provider,
status_providers=(HealthCheckerProvider(),),
)
# Create driver stub
driver = mesos.MesosExecutorDriver(thermos_executor)
# This is an ephemeral executor -- shutdown if we receive no tasks within a certain
# time period
ExecutorTimeout(thermos_executor.launched, driver).start()
# Start executor
driver.run()
log.info('MesosExecutorDriver.run() has finished.')
app.main()
示例6: run
def run():
def main(args, opts):
"""Main"""
server = RedirServer(opts.zk_basepath,
opts.subdomain,
opts.base_domain)
thread = ExceptionalThread(
target=lambda: server.run(opts.listen,
opts.port,
server='cherrypy'))
thread.daemon = True
thread.start()
wait_forever()
log.LogOptions.set_stderr_log_level('google:INFO')
app.add_option('--port', help='http port', default=8080)
app.add_option('--listen',
help='IP address to listen for http connections.',
default='0.0.0.0')
app.add_option('--zk_basepath',
help='Zookeeper service path root.',
default='/aurora')
app.add_option('--base_domain',
help='Domain name of your site.',
default='example.com')
app.add_option('--subdomain',
help='Subdomain that roots Aurora job namespace.',
default='aurora')
app.main()
示例7: proxy_main
def proxy_main():
def main(args, options):
if MesosExecutorDriver is None:
app.error('Could not load MesosExecutorDriver!')
# status providers:
status_providers = [
HealthCheckerProvider(),
ResourceManagerProvider(checkpoint_root=options.checkpoint_root)
]
if options.announcer_enable:
if options.announcer_ensemble is None:
app.error('Must specify --announcer-ensemble if the announcer is enabled.')
status_providers.append(DefaultAnnouncerCheckerProvider(
options.announcer_ensemble, options.announcer_serverset_path))
# Create executor stub
if options.execute_as_user or options.nosetuid:
# If nosetuid is set, execute_as_user is also None
thermos_runner_provider = UserOverrideThermosTaskRunnerProvider(
dump_runner_pex(),
artifact_dir=os.path.abspath(CWD)
)
thermos_runner_provider.set_role(None)
thermos_executor = AuroraExecutor(
runner_provider=thermos_runner_provider,
status_providers=status_providers,
sandbox_provider=UserOverrideDirectorySandboxProvider(options.execute_as_user)
)
else:
thermos_runner_provider = DefaultThermosTaskRunnerProvider(
dump_runner_pex(),
artifact_dir=os.path.abspath(CWD)
)
thermos_executor = AuroraExecutor(
runner_provider=thermos_runner_provider,
status_providers=status_providers
)
# Create driver stub
driver = MesosExecutorDriver(thermos_executor)
# This is an ephemeral executor -- shutdown if we receive no tasks within a certain
# time period
ExecutorTimeout(thermos_executor.launched, driver).start()
# Start executor
driver.run()
log.info('MesosExecutorDriver.run() has finished.')
app.main()
示例8: proxy_main
def proxy_main():
def main(args, options):
plugins = list_plugins()
if options.list_plugins:
for plugin in plugins:
print('\n%s' % plugin.__name__)
if plugin.__doc__:
for line in plugin.__doc__.splitlines():
print(' %s' % line)
else:
print(' No information')
return
if options.plugins:
plugins_map = dict((plugin.__name__, plugin) for plugin in plugins)
plugins = list(filter(None, map(plugins_map.get, options.plugins)))
if options.skip_plugins:
plugins_map = dict((plugin.__name__, plugin) for plugin in plugins)
for plugin in options.skip_plugins:
plugins_map.pop(plugin, None)
plugins = list(plugins_map.values())
if not args and options.diff is None:
options.diff = DEFAULT_BRANCH
if options.diff:
iterator = git_iterator(args, options)
else:
iterator = path_iterator(args, options)
severity = Nit.COMMENT
for number, name in Nit.SEVERITY.items():
if name == options.severity:
severity = number
should_fail = False
for filename, line_filter in iterator:
try:
python_file = PythonFile.parse(filename)
except SyntaxError as e:
print('%s:SyntaxError: %s' % (filename, e))
continue
for checker in plugins:
for nit in apply_filter(python_file, checker, line_filter):
if nit.severity >= severity:
print(nit)
print()
should_fail |= nit.severity >= Nit.ERROR or (
nit.severity >= Nit.WARNING and options.strict)
return int(should_fail)
app.main()
示例9: proxy_main
def proxy_main():
def main(args, options):
log.info('Starting testing mysos executor')
executor = MysosExecutor(
FakeTaskRunnerProvider(FakeTaskControlProvider()), Sandbox(SANDBOX_ROOT))
driver = mesos.native.MesosExecutorDriver(executor)
driver.run()
log.info('Exiting executor main')
app.main()
示例10: run
def run():
def main(_, opts):
path_detector = FixedPathDetector(opts.root)
task_observer = TaskObserver(path_detector)
task_observer.start()
server = configure_server(task_observer)
thread = ExceptionalThread(target=lambda: server.run('0.0.0.0', opts.port, 'cherrypy'))
thread.daemon = True
thread.start()
sleep_forever()
app.main()
示例11: proxy_main
def proxy_main():
def main():
if MesosExecutorDriver is None:
app.error('Could not load MesosExecutorDriver!')
thermos_gc_executor, metric_writer, driver = initialize()
thermos_gc_executor.start()
metric_writer.start()
driver.run()
log.info('MesosExecutorDriver.run() has finished.')
app.main()
示例12: proxy_main
def proxy_main():
def main():
# Create executor stub
thermos_gc_executor = ThermosGCExecutor(checkpoint_root=TaskPath.DEFAULT_CHECKPOINT_ROOT)
thermos_gc_executor.start()
# Start metrics collection
metric_writer = DiskMetricWriter(thermos_gc_executor.metrics, ExecutorDetector.VARS_PATH)
metric_writer.start()
# Create driver stub
driver = mesos.MesosExecutorDriver(thermos_gc_executor)
# Start GC executor
driver.run()
log.info('MesosExecutorDriver.run() has finished.')
app.main()
示例13: proxy_main
def proxy_main():
def main(args, options):
if MesosExecutorDriver is None:
app.error('Could not load MesosExecutorDriver!')
thermos_executor = initialize(options)
# Create driver stub
driver = MesosExecutorDriver(thermos_executor)
# This is an ephemeral executor -- shutdown if we receive no tasks within a certain
# time period
ExecutorTimeout(thermos_executor.launched, driver).start()
# Start executor
driver.run()
log.info('MesosExecutorDriver.run() has finished.')
app.main()
示例14: proxy_main
def proxy_main():
def main():
if MesosExecutorDriver is None:
app.error('Could not load MesosExecutorDriver!')
# Create executor stub
thermos_gc_executor = ThermosGCExecutor(FixedPathDetector(DEFAULT_CHECKPOINT_ROOT))
thermos_gc_executor.start()
# Start metrics collection
metric_writer = DiskMetricWriter(thermos_gc_executor.metrics, ExecutorDetector.VARS_PATH)
metric_writer.start()
# Create driver stub
driver = MesosExecutorDriver(thermos_gc_executor)
# Start GC executor
driver.run()
log.info('MesosExecutorDriver.run() has finished.')
app.main()
示例15: proxy_main
def proxy_main():
def main(args, options):
# 'sandbox' directory resides under the working directory assigned by the Mesos slave.
sandbox_root = os.path.join(os.path.realpath('.'), "sandbox")
unpack_assets(sandbox_root, MYSOS_MODULE, ASSET_RELPATH, execute=chmod_scripts)
log.info("Starting Vagrant Mysos executor within sandbox %s" % sandbox_root)
sandbox = Sandbox(sandbox_root)
executor = MysosExecutor(
MysosTaskRunnerProvider(
MySQLTaskControlProvider(),
NoopPackageInstallerProvider(), # Do not install any package.
NoopBackupStoreProvider()), # Do not recover any state.
sandbox)
driver = mesos.native.MesosExecutorDriver(executor)
driver.run()
log.info('Exiting executor main')
app.main()