[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 :: 2
    Programming Language :: Python :: 2.7
    Programming Language :: Python :: 3
    Programming Language :: Python :: 3.5
    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-dev@lists.openstack.org

[files]
packages =
    mistral
    mistral_tempest_tests

[build_sphinx]
source-dir = doc/source
build-dir = doc/build
all_files = 1
warning-is-error = 1

[upload_sphinx]
upload-dir = doc/build/html

[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

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.utils.expression_utils:json_pp_

    env = mistral.utils.expression_utils:env_
    execution = mistral.utils.expression_utils:execution_
    executions = mistral.utils.expression_utils:executions_
    global = mistral.utils.expression_utils:global_
    json_parse = mistral.utils.expression_utils:json_parse_
    json_dump = mistral.utils.expression_utils:json_dump_
    task = mistral.utils.expression_utils:task_
    tasks = mistral.utils.expression_utils:tasks_
    uuid = mistral.utils.expression_utils:uuid_
    yaml_parse = mistral.utils.expression_utils:yaml_parse_
    yaml_dump = mistral.utils.expression_utils: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