Esempio n. 1
0
def _run_to_diff(args, ctx):
    from . import diff_impl
    from . import runs_impl

    def f():
        diff_impl._apply_default_runs(args)
        return runs_impl.one_run(diff_impl.OneRunArgs(args, args.runs[0]), ctx)

    return click_util.completion_safe_apply(ctx, f, [])
Esempio n. 2
0
def _guild_versions(ctx):
    import json

    # We want to import pip._vendor.requests but pip has an import
    # cycle so we get to it via pip._internal.index.
    from pip._internal.index import requests

    def f():
        resp = requests.get("https://pypi.org/pypi/guildai/json")
        data = json.loads(resp.text)
        return sorted(data.get("releases") or {})

    return click_util.completion_safe_apply(ctx, f, []) or []
Esempio n. 3
0
def _diff_dir_base(ctx):
    from . import diff_impl

    args = _diff_args_for_ctx(ctx)
    if args.working_dir:
        return args.working_dir
    run = _run_to_diff(args, ctx)
    if not run:
        return []
    if args.working:
        return click_util.completion_safe_apply(
            ctx, diff_impl._find_run_working_dir, [run])
    if args.sourcecode:
        return run.guild_path("sourcecode")
    return run.dir
Esempio n. 4
0
def _ac_operations(incomplete, ctx, **_kw):
    from guild import cmd_impl_support
    from guild import _test
    from . import operations_impl

    ops_args = click_util.Args(installed=False, all=False, filters=[])

    def f():
        with _test.StderrCapture():
            cmd_impl_support.init_model_path()
            return [
                op["fullname"] for op in operations_impl.filtered_ops(ops_args)
            ]

    ops = click_util.completion_safe_apply(ctx, f, [])
    return [op for op in ops if op.startswith(incomplete)]
Esempio n. 5
0
def _diff_dir_base(ctx):
    from . import diff_impl

    args = click_util.Args(**ctx.params)
    if args.dir:
        return args.dir
    run = _run_to_diff(ctx)
    if not run:
        return None
    if args.working:
        return click_util.completion_safe_apply(ctx,
                                                diff_impl._working_dir_for_run,
                                                [run])
    if args.sourcecode:
        return run.guild_path("sourcecode")
    return run.dir
Esempio n. 6
0
def _one_run(ctx):
    from . import runs_impl

    return click_util.completion_safe_apply(
        ctx, runs_impl.one_run, [click_util.Args(**ctx.params), ctx]
    )