예제 #1
0
파일: env.py 프로젝트: cpenv/cpenv
    def run(self, args):

        extra_data = self.parse_data(args.data)
        repo = api.get_repo(args.repo)
        requires = api.get_active_modules()

        if not requires:
            core.echo("Activate some modules before you save an Environment.")
            return

        if args.no_versions:
            requires = [m.name for m in requires]
        else:
            requires = [m.qual_name for m in requires]

        data = {
            "name": args.name,
            "requires": requires,
        }
        data.update(extra_data)

        repo.save_environment(
            name=data["name"],
            data=data,
            force=args.force,
        )
예제 #2
0
파일: __main__.py 프로젝트: cpenv/autocpenv
    def run(self, args):

        found_modules = False

        cli.echo()
        active_modules = api.get_active_modules()
        if args.requirement:
            active_modules = [
                m for m in active_modules
                if is_partial_match(args.requirement, m)
            ]

        if active_modules:
            found_modules = True
            cli.echo(
                cli.format_columns(
                    '[*] Active',
                    [m.real_name for m in sort_modules(active_modules)],
                ))
            cli.echo()

        repos = api.get_repos()
        if args.repo:
            repos = [api.get_repo(args.repo)]

        for repo in repos:
            if args.requirement:
                repo_modules = repo.find(args.requirement)
            else:
                repo_modules = repo.list()

            module_names = []
            for module in sort_modules(repo_modules):
                if module in active_modules:
                    module_names.append('* ' + module.real_name)
                else:
                    module_names.append('  ' + module.real_name)

            if module_names:
                found_modules = True
                if repo.name != repo.path:
                    header = repo.name + ' - ' + repo.path
                else:
                    header = repo.name
                cli.echo(
                    cli.format_columns(
                        '[ ] ' + header,
                        module_names,
                        indent='  ',
                    ))
                cli.echo()

        if not found_modules:
            cli.echo('No modules are available.')
예제 #3
0
    def run(self, args):

        found_modules = False

        core.echo()
        active_modules = api.get_active_modules()
        if args.requirement:
            active_modules = [
                m for m in active_modules
                if is_partial_match(args.requirement, m)
            ]

        if active_modules:
            found_modules = True
            core.echo(
                core.format_columns(
                    "[*] Active",
                    [m.real_name for m in sort_modules(active_modules)],
                ))
            core.echo()

        repos = api.get_repos()
        if args.repo:
            repos = [api.get_repo(args.repo)]

        for repo in repos:
            if args.requirement:
                repo_modules = repo.find(args.requirement)
            else:
                repo_modules = repo.list()

            module_names = []
            for module in sort_modules(repo_modules):
                if module in active_modules:
                    module_names.append("* " + module.real_name)
                else:
                    module_names.append("  " + module.real_name)

            if module_names:
                found_modules = True
                if repo.name != repo.path:
                    header = repo.name + " - " + repo.path
                else:
                    header = repo.name
                core.echo(
                    core.format_columns(
                        "[ ] " + header,
                        module_names,
                        indent="  ",
                    ))
                core.echo()

        if not found_modules:
            core.echo("No modules are available.")