aboutsummaryrefslogtreecommitdiff
path: root/muppet/__main__.py
blob: e6420101873a4dca45cc81b6dc4ecd6edd0fc957 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
"""New, better, entry point."""

import argparse
import pathlib

from .cache import Cache
from .gather import get_module, get_modules, ModuleEntry
from .output import setup_index, setup_module


def __main() -> None:
    parser = argparse.ArgumentParser(
            prog='puppet-doc configure',
            description='Sets up puppet doc')

    parser.add_argument('--env', action='store')
    parser.add_argument('modules', nargs='*', type=pathlib.Path)

    args = parser.parse_args()

    env = args.env or '/etc/puppetlabs/code/modules'

    cache = Cache('/home/hugo/.cache/puppet-doc')

    modules: list[ModuleEntry]
    if args.modules != []:
        modules = [get_module(cache, mod)
                   for mod in args.modules]
    else:
        modules = get_modules(cache, env)

    setup_index('output', modules)

    for module in modules:
        # print(module)
        setup_module('output', module)


if __name__ == '__main__':
    __main()