Example #1
0
def mkdir(dirname):
    import stat
    fs = FileSystem()
    if dirname in fs.metadata or dirname in ('.', '..'):
        raise IOError('File exists')
    if '/' in dirname:
        raise ValueError('"/" is not permitted in directory name')
    fs.add_item(dirname, stat.S_IFDIR)
Example #2
0
    def install(self, disk_file_name, force=False):
        if os.path.exists(disk_file_name):
            if not force:
                raise ValueError('Already installed')

        with open(disk_file_name, 'wb+') as disk:
            disk.write('\x00'*1024*1024)
            disk.seek(0, 0)
            disk.write(bson.dumps(dict(metadata=[])))
            disk.seek(0, 0)

            fs = FileSystem(disk)

            fs.add_item('/', fs.DIRECTORY_MODE)

            bin_dir = os.path.join(os.path.split(os.path.realpath(__file__))[0], 'bin')
            bins = glob.glob(os.path.join(bin_dir, '*.py'))
            fs.add_item('/bin', fs.DIRECTORY_MODE)

            for filepath in bins:
                self.put_file(filepath, '/bin', disk_file_name)