Example #1
0
def _leave(node_directory, name, existing_folders):
    privdir = os.path.join(node_directory, u"private")
    db_fname = os.path.join(privdir, u"magicfolder_{}.sqlite".format(name))

    # delete from YAML file and re-write it
    del existing_folders[name]
    save_magic_folders(node_directory, existing_folders)

    # delete the database file
    try:
        fileutil.remove(db_fname)
    except Exception as e:
        raise Exception(
            "unable to remove %s due to %s: %s" %
            (quote_local_unicode_path(db_fname), e.__class__.__name__, str(e)))

    # if this was the last magic-folder, disable them entirely
    if not existing_folders:
        parser = SafeConfigParser()
        parser.read(os.path.join(node_directory, u"tahoe.cfg"))
        parser.remove_section("magic_folder")
        with open(os.path.join(node_directory, u"tahoe.cfg"), "w") as f:
            parser.write(f)

    return 0
Example #2
0
def leave(options):
    from ConfigParser import SafeConfigParser

    dmd_cap_file = os.path.join(options["node-directory"], u"private",
                                u"magic_folder_dircap")
    collective_readcap_file = os.path.join(options["node-directory"],
                                           u"private", u"collective_dircap")
    magic_folder_db_file = os.path.join(options["node-directory"], u"private",
                                        u"magicfolderdb.sqlite")

    parser = SafeConfigParser()
    parser.read(os.path.join(options["node-directory"], u"tahoe.cfg"))
    parser.remove_section("magic_folder")
    f = open(os.path.join(options["node-directory"], u"tahoe.cfg"), "w")
    parser.write(f)
    f.close()

    for f in [dmd_cap_file, collective_readcap_file, magic_folder_db_file]:
        try:
            fileutil.remove(f)
        except Exception as e:
            print >> options.stderr, (
                "Warning: unable to remove %s due to %s: %s" %
                (quote_local_unicode_path(f), e.__class__.__name__, str(e)))
    # if this doesn't return 0, then the CLI stuff fails
    return 0
Example #3
0
def leave(options):
    from ConfigParser import SafeConfigParser

    existing_folders = load_magic_folders(options["node-directory"])

    if not existing_folders:
        print("No magic-folders at all", file=options.stderr)
        return 1

    if options["name"] not in existing_folders:
        print("No such magic-folder '{}'".format(options["name"]),
              file=options.stderr)
        return 1

    privdir = os.path.join(options["node-directory"], u"private")
    db_fname = os.path.join(privdir,
                            u"magicfolder_{}.sqlite".format(options["name"]))

    # delete from YAML file and re-write it
    del existing_folders[options["name"]]
    save_magic_folders(options["node-directory"], existing_folders)

    # delete the database file
    try:
        fileutil.remove(db_fname)
    except Exception as e:
        print(
            "Warning: unable to remove %s due to %s: %s" %
            (quote_local_unicode_path(db_fname), e.__class__.__name__, str(e)),
            file=options.stderr)

    # if this was the last magic-folder, disable them entirely
    if not existing_folders:
        parser = SafeConfigParser()
        parser.read(os.path.join(options["node-directory"], u"tahoe.cfg"))
        parser.remove_section("magic_folder")
        with open(os.path.join(options["node-directory"], u"tahoe.cfg"),
                  "w") as f:
            parser.write(f)

    return 0
Example #4
0
def leave(options):
    from ConfigParser import SafeConfigParser

    dmd_cap_file = os.path.join(options["node-directory"], u"private", u"magic_folder_dircap")
    collective_readcap_file = os.path.join(options["node-directory"], u"private", u"collective_dircap")
    magic_folder_db_file = os.path.join(options["node-directory"], u"private", u"magicfolderdb.sqlite")

    parser = SafeConfigParser()
    parser.read(os.path.join(options["node-directory"], u"tahoe.cfg"))
    parser.remove_section("magic_folder")
    f = open(os.path.join(options["node-directory"], u"tahoe.cfg"), "w")
    parser.write(f)
    f.close()

    for f in [dmd_cap_file, collective_readcap_file, magic_folder_db_file]:
        try:
            fileutil.remove(f)
        except Exception as e:
            print >>options.stderr, ("Warning: unable to remove %s due to %s: %s"
                % (quote_local_unicode_path(f), e.__class__.__name__, str(e)))
    # if this doesn't return 0, then the CLI stuff fails
    return 0
def leave(options):
    from ConfigParser import SafeConfigParser

    existing_folders = load_magic_folders(options["node-directory"])

    if not existing_folders:
        print("No magic-folders at all", file=options.stderr)
        return 1

    if options["name"] not in existing_folders:
        print("No such magic-folder '{}'".format(options["name"]), file=options.stderr)
        return 1

    privdir = os.path.join(options["node-directory"], u"private")
    db_fname = os.path.join(privdir, u"magicfolder_{}.sqlite".format(options["name"]))

    # delete from YAML file and re-write it
    del existing_folders[options["name"]]
    save_magic_folders(options["node-directory"], existing_folders)

    # delete the database file
    try:
        fileutil.remove(db_fname)
    except Exception as e:
        print("Warning: unable to remove %s due to %s: %s"
            % (quote_local_unicode_path(db_fname), e.__class__.__name__, str(e)), file=options.stderr)

    # if this was the last magic-folder, disable them entirely
    if not existing_folders:
        parser = SafeConfigParser()
        parser.read(os.path.join(options["node-directory"], u"tahoe.cfg"))
        parser.remove_section("magic_folder")
        with open(os.path.join(options["node-directory"], u"tahoe.cfg"), "w") as f:
            parser.write(f)

    return 0
Example #6
0
 def _remove(self, res, file):
     fileutil.remove(file)
     return res
Example #7
0
 def _cleanup():
     fileutil.remove(long_path)
Example #8
0
 def _remove(self, res, file):
     fileutil.remove(file)
     return res