Source code for jina.parsers.flow

"""Argparser module for Flow"""
from .base import set_base_parser
from .helper import add_arg_group, KVAppendAction


[docs]def mixin_flow_features_parser(parser): """Add the arguments for the Flow features to the parser :param parser: the parser configure """ from ..enums import FlowInspectType gp = add_arg_group(parser, title='Flow Feature') gp.add_argument('--uses', type=str, help='The YAML file represents a flow') gp.add_argument( '--env', action=KVAppendAction, metavar='KEY: VALUE', nargs='*', help='The map of environment variables that are available inside runtime', ) gp.add_argument( '--inspect', type=FlowInspectType.from_string, choices=list(FlowInspectType), default=FlowInspectType.COLLECT, help=''' The strategy on those inspect pods in the flow. If `REMOVE` is given then all inspect pods are removed when building the flow. ''', )
[docs]def set_flow_parser(parser=None, with_identity=False): """Set the parser for the flow :param parser: an (optional) initial parser to build upon :param with_identity: if to include identity in the parser :return: the parser """ from .peapods.base import mixin_base_ppr_parser if not parser: parser = set_base_parser() mixin_base_ppr_parser(parser, with_identity=with_identity) parser.set_defaults(workspace='./') mixin_flow_features_parser(parser) return parser