Skip to content

Common

check_installed(is_cli_installed)

Returns an error message if additional CLI packages are not installed.

Parameters:

Name Type Description Default
is_cli_installed

True if additional packages are installed

required
Source code in ckanext/attribution/commands/migration/common.py
45
46
47
48
49
50
51
52
53
54
def check_installed(is_cli_installed):
    """
    Returns an error message if additional CLI packages are not installed.

    :param is_cli_installed: True if additional packages are installed
    """
    if not is_cli_installed:
        raise click.Exception(
            'Install additional requirements with: pip install ckanext-attribution[cli]'
        )

multi_choice(question, options, default=0)

Provide the user with a list of options.

Returns:

Type Description

index of the chosen option

Source code in ckanext/attribution/commands/migration/common.py
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
def multi_choice(question, options, default=0):
    """
    Provide the user with a list of options.

    :returns: index of the chosen option
    """
    click.echo(question)
    for i, o in enumerate(options):
        click.echo('\t({0}) {1}'.format(i + 1, o))
    answer = click.prompt('Choose an option', default=default + 1)
    try:
        answer = int(answer)
        click.echo('')
        return answer - 1
    except:
        click.echo("That wasn't an option.", err=True)
        return multi_choice(question, options, default)