Example #1
0
def show(config, name, tags=False):
    config.load_config()
    lookup = services.PackageLookup(config)
    data = lookup.lookup_loose(name) or "not found."
    print(json.dumps(data))
    if tags:
        # TODO: move
        import subprocess
        subprocess.call(["git", "ls-remote", "--tags", data["url"]])
Example #2
0
def main(config, repository, show_all=False, save=False, store=None):
    config.load_config()
    data = fetch(repository, show_all=show_all)
    if not save:
        print(json.dumps(data))
    else:
        package_store = services.packages_store(config, path=store)
        store_data = package_store.update(data, package_store.load())
        package_store.save(store_data)
        if store is None:
            local_store = services.packages_store(config, path=config.control.resolve_path("local.repository.json"))
            store_data = local_store.update(data, local_store.load())
            local_store.save(store_data)
Example #3
0
def modify_config(config, name=None, value=None):
    config.load_config()
    if not name:
        print(json.dumps(config.settings))
    else:
        target = config.settings["extra_context"]
        key_list = name.split(".")
        for k in key_list[:-1]:
            target = target[k]
        if value is None:
            target.pop(key_list[-1], None)
            config.save_config(config.settings)
            sys.stderr.write("pop: {}\n".format(name))
        else:
            target[key_list[-1]] = value
            config.save_config(config.settings)
            sys.stderr.write("set: {} = {}\n".format(name, value))
Example #4
0
 def dump(self, data):
     print(json.dumps(data))