Ejemplo n.º 1
0
def package_create(args: List[str]) -> None:
    if len(args) != 1:
        raise PackageException("Usage: check_mk -P create NAME")

    pacname = args[0]
    if read_package_info(pacname):
        raise PackageException("Package %s already existing." % pacname)

    logger.log(VERBOSE, "Creating new package %s...", pacname)
    package = get_initial_package_info(pacname)
    filelists = package["files"]
    for part in get_package_parts():
        files = unpackaged_files_in_dir(part.ident, part.path)
        filelists[part.ident] = files
        if len(files) > 0:
            logger.log(VERBOSE, "  %s%s%s:", tty.bold, part.title, tty.normal)
            for f in files:
                logger.log(VERBOSE, "    %s", f)

    write_package_info(package)
    logger.log(
        VERBOSE,
        "New package %s created with %d files.",
        pacname,
        packaging.package_num_files(package),
    )
    logger.log(
        VERBOSE,
        "Please edit package details in %s%s%s",
        tty.bold,
        package_dir() / pacname,
        tty.normal,
    )
Ejemplo n.º 2
0
def package_list(args: List[str]) -> None:
    if len(args) > 0:
        for name in args:
            show_package_contents(name)
    else:
        if logger.isEnabledFor(VERBOSE):
            table = []
            for pacname in packaging.installed_names():
                package = read_package_info(pacname)
                if package is None:
                    table.append(
                        [pacname, "package info is missing or broken", "0"])
                else:
                    table.append([
                        pacname, package["title"],
                        str(packaging.package_num_files(package))
                    ])
            tty.print_table(["Name", "Title", "Files"], [tty.bold, "", ""],
                            table)
        else:
            for pacname in packaging.installed_names():
                sys.stdout.write("%s\n" % pacname)
Ejemplo n.º 3
0
def test_read_package_info():
    _create_simple_test_package("aaa")
    package_info = _read_package_info("aaa")
    assert package_info["version"] == "1.0"
    assert packaging.package_num_files(package_info) == 1