06a0f33476
* This patch refactors Mistral with the action provider concept that is responsible for delivering actions to the system. So it takes all the burden of managing action definitions w/o having to spread that across multiple subsystems like Engine and API and w/o having to assume that action definitions are always stored in DB. * Added LegacyActionProvider that represents the old way of delivering action definitions to the system. It pretty much just analyses what entries are configured in the entry point "mistral.actions" in setup.cfg and build a collection of corresponding Python action classes in memory accessible by names. * The module mistral/services/actions.py is now renamed to adhoc_actions.py because it's effectively responsible only for ad-hoc actions (those defined in YAML). * Added the new entry point in setup.cfg "mistral.action.providers" to register action provider classes * Added the module mistral/services/actions.py that will be a facade for action providers. Engine and other subsystems will need to work with it. * Other small code changes. Depends-On: I13033253d5098655a001135c8702d1b1d13e76d4 Depends-On: Ic9108c9293731b3576081c75f2786e1156ba0ccd Change-Id: I8e826657acb12bbd705668180f7a3305e1e597e2
123 lines
4.5 KiB
INI
123 lines
4.5 KiB
INI
[metadata]
|
|
name = mistral
|
|
summary = Mistral Project
|
|
description-file =
|
|
README.rst
|
|
license = Apache License, Version 2.0
|
|
home-page = https://docs.openstack.org/mistral/latest/
|
|
classifiers =
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: 3
|
|
Programming Language :: Python :: 3.6
|
|
Programming Language :: Python :: 3.7
|
|
Programming Language :: Python :: 3.8
|
|
Environment :: OpenStack
|
|
Intended Audience :: Information Technology
|
|
Intended Audience :: System Administrators
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: POSIX :: Linux
|
|
author = OpenStack
|
|
author-email = openstack-discuss@lists.openstack.org
|
|
|
|
[files]
|
|
packages =
|
|
mistral
|
|
|
|
[entry_points]
|
|
console_scripts =
|
|
mistral-server = mistral.cmd.launch:main
|
|
mistral-db-manage = mistral.db.sqlalchemy.migration.cli:main
|
|
|
|
wsgi_scripts =
|
|
mistral-wsgi-api = mistral.api.app:init_wsgi
|
|
|
|
mistral.rpc.backends =
|
|
oslo_client = mistral.rpc.oslo.oslo_client:OsloRPCClient
|
|
oslo_server = mistral.rpc.oslo.oslo_server:OsloRPCServer
|
|
kombu_client = mistral.rpc.kombu.kombu_client:KombuRPCClient
|
|
kombu_server = mistral.rpc.kombu.kombu_server:KombuRPCServer
|
|
|
|
oslo.config.opts =
|
|
mistral.config = mistral.config:list_opts
|
|
|
|
oslo.config.opts.defaults =
|
|
mistral.config = mistral.config:set_cors_middleware_defaults
|
|
|
|
oslo.policy.policies =
|
|
mistral = mistral.policies:list_rules
|
|
|
|
oslo.policy.enforcer =
|
|
mistral = mistral.api.access_control:get_enforcer
|
|
|
|
mistral.action.providers =
|
|
legacy = mistral.actions.legacy:LegacyActionProvider
|
|
adhoc = mistral.actions.adhoc:AdHocActionProvider
|
|
|
|
mistral.actions =
|
|
std.async_noop = mistral.actions.std_actions:AsyncNoOpAction
|
|
std.noop = mistral.actions.std_actions:NoOpAction
|
|
std.fail = mistral.actions.std_actions:FailAction
|
|
std.echo = mistral.actions.std_actions:EchoAction
|
|
std.http = mistral.actions.std_actions:HTTPAction
|
|
std.mistral_http = mistral.actions.std_actions:MistralHTTPAction
|
|
std.ssh = mistral.actions.std_actions:SSHAction
|
|
std.ssh_proxied = mistral.actions.std_actions:SSHProxiedAction
|
|
std.email = mistral.actions.std_actions:SendEmailAction
|
|
std.javascript = mistral.actions.std_actions:JavaScriptAction
|
|
std.js = mistral.actions.std_actions:JavaScriptAction
|
|
std.sleep = mistral.actions.std_actions:SleepAction
|
|
std.test_dict = mistral.actions.std_actions:TestDictAction
|
|
|
|
mistral.executors =
|
|
local = mistral.executors.default_executor:DefaultExecutor
|
|
remote = mistral.executors.remote_executor:RemoteExecutor
|
|
|
|
mistral.notifiers =
|
|
local = mistral.notifiers.default_notifier:DefaultNotifier
|
|
remote = mistral.notifiers.remote_notifier:RemoteNotifier
|
|
|
|
mistral.notification.publishers =
|
|
webhook = mistral.notifiers.publishers.webhook:WebhookPublisher
|
|
noop = mistral.notifiers.publishers.noop:NoopPublisher
|
|
|
|
mistral.expression.functions =
|
|
# json_pp was deprecated in Queens and will be removed in the S cycle
|
|
json_pp = mistral.expressions.std_functions:json_pp_
|
|
|
|
env = mistral.expressions.std_functions:env_
|
|
execution = mistral.expressions.std_functions:execution_
|
|
executions = mistral.expressions.std_functions:executions_
|
|
global = mistral.expressions.std_functions:global_
|
|
json_parse = mistral.expressions.std_functions:json_parse_
|
|
json_dump = mistral.expressions.std_functions:json_dump_
|
|
task = mistral.expressions.std_functions:task_
|
|
tasks = mistral.expressions.std_functions:tasks_
|
|
uuid = mistral.expressions.std_functions:uuid_
|
|
yaml_parse = mistral.expressions.std_functions:yaml_parse_
|
|
yaml_dump = mistral.expressions.std_functions:yaml_dump_
|
|
|
|
mistral.expression.evaluators =
|
|
yaql = mistral.expressions.yaql_expression:InlineYAQLEvaluator
|
|
jinja = mistral.expressions.jinja_expression:InlineJinjaEvaluator
|
|
|
|
mistral.auth =
|
|
keystone = mistral.auth.keystone:KeystoneAuthHandler
|
|
keycloak-oidc = mistral.auth.keycloak:KeycloakAuthHandler
|
|
|
|
kombu_driver.executors =
|
|
blocking = futurist:SynchronousExecutor
|
|
threading = futurist:ThreadPoolExecutor
|
|
eventlet = futurist:GreenThreadPoolExecutor
|
|
|
|
pygments.lexers =
|
|
mistral = mistral.ext.pygmentplugin:MistralLexer
|
|
|
|
mistral.js.implementation =
|
|
pyv8 = mistral.utils.javascript:PyV8Evaluator
|
|
v8eval = mistral.utils.javascript:V8EvalEvaluator
|
|
py_mini_racer = mistral.utils.javascript:PyMiniRacerEvaluator
|
|
|
|
mistral.schedulers =
|
|
legacy = mistral.services.legacy_scheduler:LegacyScheduler
|
|
default = mistral.scheduler.default_scheduler:DefaultScheduler
|