Exemplo n.º 1
0
def dox_regen(wcpath):
    log.msg("Regenerate dox for ", wcpath)
    targets = []
    if projects.is_project_folder(wcpath):
        targets.append(wcpath)
    lprojects, lpcbs, lcards, lcard_reporoot = \
        projects.get_projects(wcpath)
    targets.extend([lprojects[x] for x in lprojects.keys()])
    for target in targets:
        log.msg(" -- Regenerate dox for ", target)
        gedaproject.generate_docs(target)
Exemplo n.º 2
0
def main():
    """
    The tendril-gendox script entry point.
    """
    parser = _get_parser()
    args = parser.parse_args()
    force = args.force
    if args.all:
        regenerate_all(force=force, dry_run=args.dry_run)
    else:
        if not len(args.projfolders):
            parser.print_help()
        for projfolder in args.projfolders:
            if not os.path.isabs(projfolder):
                projfolder = os.path.join(os.getcwd(), projfolder)
                projfolder = os.path.normpath(projfolder)
            if not in_directory(projfolder, PROJECTS_ROOT):
                logger.error(
                    'Provided directory does not seem to be under the '
                    'tendril PROJECTS_ROOT. Skipping ' + projfolder
                )
                continue
            targets = [projfolder]
            if args.recurse:
                lprojects, lpcbs, lcards, lcard_reporoot = \
                    projects.get_projects(projfolder)
                targets.extend([lprojects[x] for x in lprojects.keys()])
            for target in targets:
                try:
                    if args.dry_run is False:
                        gedaproject.generate_docs(target, force=force)
                        logger.info("Checked " + target)
                    else:
                        conffile.ConfigsFile(target)
                        logger.info("Will check " + target)
                except NoGedaProjectError:
                    # Make a guess.
                    if os.path.split(target)[1] == 'configs.yaml':
                        target == os.path.split(target)[0]
                    if os.path.split(target)[1] == 'schematic':
                        target == os.path.split(target)[0]
                    try:
                        if args.dry_run is False:
                            gedaproject.generate_docs(target, force=force)
                            logger.info("Checked " + target)
                        else:
                            conffile.ConfigsFile(target)
                            logger.info("Will check " + target)
                    except NoGedaProjectError:
                        logger.error("No gEDA Project found at " + target)
Exemplo n.º 3
0
def main():
    """
    The tendril-gendox script entry point.
    """
    parser = _get_parser()
    args = parser.parse_args()
    force = args.force
    if args.all:
        regenerate_all(force=force, dry_run=args.dry_run)
    else:
        if not len(args.projfolders):
            parser.print_help()
        for projfolder in args.projfolders:
            if not os.path.isabs(projfolder):
                projfolder = os.path.join(os.getcwd(), projfolder)
                projfolder = os.path.normpath(projfolder)
            if not in_directory(projfolder, PROJECTS_ROOT):
                logger.error(
                    'Provided directory does not seem to be under the '
                    'tendril PROJECTS_ROOT. Skipping ' + projfolder
                )
                continue
            targets = [projfolder]
            if args.recurse:
                lprojects, lpcbs, lcards, lcard_reporoot = \
                    projects.get_projects(projfolder)
                targets.extend([lprojects[x] for x in lprojects.keys()])
            for target in targets:
                try:
                    if args.dry_run is False:
                        gedaproject.generate_docs(target, force=force)
                        logger.info("Checked " + target)
                    else:
                        conffile.ConfigsFile(target)
                        logger.info("Will check " + target)
                except NoGedaProjectError:
                    # Make a guess.
                    if os.path.split(target)[1] == 'configs.yaml':
                        target == os.path.split(target)[0]
                    if os.path.split(target)[1] == 'schematic':
                        target == os.path.split(target)[0]
                    try:
                        if args.dry_run is False:
                            gedaproject.generate_docs(target, force=force)
                            logger.info("Checked " + target)
                        else:
                            conffile.ConfigsFile(target)
                            logger.info("Will check " + target)
                    except NoGedaProjectError:
                        logger.error("No gEDA Project found at " + target)
Exemplo n.º 4
0
def regenerate_all(force=False, dry_run=False):
    """
    Regenerates documentation for all projects

    :param force: Regenerate even for up-to-date projects.
    :param dry_run: Check only. Don't actually generate any documentation.

    """
    for project in projects.projects:
        if dry_run:
            conffile.ConfigsFile(projects.projects[project])
            logger.info("Will check " + projects.projects[project])
        else:
            logger.info("Checking " + projects.projects[project])
            gedaproject.generate_docs(projects.projects[project], force=force)
Exemplo n.º 5
0
def regenerate_all(force=False, dry_run=False):
    """
    Regenerates documentation for all projects

    :param force: Regenerate even for up-to-date projects.
    :param dry_run: Check only. Don't actually generate any documentation.

    """
    for project in projects.projects:
        if dry_run:
            conffile.ConfigsFile(projects.projects[project])
            logger.info("Will check " + projects.projects[project])
        else:
            logger.info("Checking " + projects.projects[project])
            gedaproject.generate_docs(projects.projects[project], force=force)