You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/lib/ansible_test/_internal/cli/commands/shell.py

48 lines
1.0 KiB
Python

"""Command line parsing for the `shell` command."""
from __future__ import annotations
import argparse
from ...commands.shell import (
command_shell,
)
from ...config import (
ShellConfig,
)
from ..environments import (
CompositeActionCompletionFinder,
ControllerMode,
TargetMode,
add_environments,
)
def do_shell(
subparsers,
parent, # type: argparse.ArgumentParser
completer, # type: CompositeActionCompletionFinder
):
"""Command line parsing for the `shell` command."""
parser = subparsers.add_parser(
'shell',
parents=[parent],
help='open an interactive shell',
) # type: argparse.ArgumentParser
parser.set_defaults(
func=command_shell,
config=ShellConfig,
)
shell = parser.add_argument_group(title='shell arguments')
shell.add_argument(
'--raw',
action='store_true',
help='direct to shell with no setup',
)
add_environments(parser, completer, ControllerMode.DELEGATED, TargetMode.SHELL) # shell