示例#1
0
    def create_snap(self, res_id, snap_name, allow_rw=True, auto_delete=False):
        cmd = ['snap', '-create']
        try:
            cmd += int_var('-res', res_id)
        except ValueError:
            # string type meaning cg name
            cmd += text_var('-res', res_id)
            cmd += ['-resType', 'CG']

        cmd += text_var('-name', snap_name)
        cmd += yes_no_var('-allowReadWrite', allow_rw)
        cmd += yes_no_var('-allowAutoDelete', auto_delete)
        return cmd
示例#2
0
文件: cli.py 项目: optionalg/storops
 def modify_snap(self, name, new_name=None, desc=None,
                 auto_delete=None, rw=None):
     opt = []
     if new_name is not None and name != new_name:
         opt += text_var('-name', new_name)
     opt += text_var('-descr', desc)
     opt += yes_no_var('-allowAutoDelete', auto_delete)
     opt += yes_no_var('-allowReadWrite', rw)
     if len(opt) > 0:
         cmd = ['snap', '-modify', '-id', name] + opt
     else:
         cmd = []
     return cmd
示例#3
0
文件: cli.py 项目: optionalg/storops
    def create_snap(self, res_id, snap_name,
                    allow_rw=True, auto_delete=False):
        cmd = ['snap', '-create']
        try:
            cmd += int_var('-res', res_id)
        except ValueError:
            # string type meaning cg name
            cmd += text_var('-res', res_id)
            cmd += ['-resType', 'CG']

        cmd += text_var('-name', snap_name)
        cmd += yes_no_var('-allowReadWrite', allow_rw)
        cmd += yes_no_var('-allowAutoDelete', auto_delete)
        return cmd
示例#4
0
 def modify_snap(self,
                 name,
                 new_name=None,
                 desc=None,
                 auto_delete=None,
                 rw=None):
     opt = []
     if new_name is not None and name != new_name:
         opt += text_var('-name', new_name)
     opt += text_var('-descr', desc)
     opt += yes_no_var('-allowAutoDelete', auto_delete)
     opt += yes_no_var('-allowReadWrite', rw)
     if len(opt) > 0:
         cmd = ['snap', '-modify', '-id', name] + opt
     else:
         cmd = []
     return cmd
示例#5
0
文件: cli.py 项目: optionalg/storops
    def create_cg(self, name, members=None, auto_delete=None):
        cmd = 'snap -group -create'.split()
        cmd += text_var('-name', name)
        cmd += yes_no_var('-allowSnapAutoDelete', auto_delete)

        if members is not None and len(members) > 0:
            cmd += ['-res', self._get_cg_member_repr(members)]

        return cmd
示例#6
0
    def create_cg(self, name, members=None, auto_delete=None):
        cmd = 'snap -group -create'.split()
        cmd += text_var('-name', name)
        cmd += yes_no_var('-allowSnapAutoDelete', auto_delete)

        if members is not None and len(members) > 0:
            cmd += ['-res', self._get_cg_member_repr(members)]

        return cmd
示例#7
0
 def create_fs(fs_name, source_fs_name, pool_name, is_thin=False):
     cmd = ['/nas/bin/nas_fs']
     cmd += text_var('-name', fs_name)
     cmd += ['-type', 'uxfs', '-create']
     cmd.append('samesize={}'.format(source_fs_name))
     cmd.append('pool={}'.format(pool_name))
     cmd += ['storage=SINGLE', 'worm=off']
     cmd += yes_no_var('-thin', is_thin)
     cmd += ['-option', 'slice=y']
     return cmd
示例#8
0
 def modify_snap(self,
                 name,
                 new_name=None,
                 desc=None,
                 auto_delete=None,
                 allow_rw=None,
                 keep_for=None):
     opt = []
     if new_name is not None and name != new_name:
         opt += text_var('-name', new_name)
     opt += text_var('-descr', desc)
     # -keepFor and -allowAutoDelete cannot co-exist
     if keep_for:
         opt += text_var('-keepFor', keep_for)
     else:
         opt += yes_no_var('-allowAutoDelete', auto_delete)
     opt += yes_no_var('-allowReadWrite', allow_rw)
     if len(opt) > 0:
         cmd = ['snap', '-modify', '-id', name] + opt
     else:
         cmd = []
     return cmd
示例#9
0
    def create_snap(self,
                    res_id,
                    snap_name,
                    allow_rw=True,
                    auto_delete=False,
                    keep_for=None):
        cmd = ['snap', '-create']
        try:
            cmd += int_var('-res', res_id)
        except ValueError:
            # string type meaning cg name
            cmd += text_var('-res', res_id)
            cmd += ['-resType', 'CG']

        cmd += text_var('-name', snap_name)
        # -keepFor and -allowAutoDelete cannot co-exist
        if keep_for:
            cmd += text_var('-keepFor', keep_for)
        else:
            cmd += yes_no_var('-allowAutoDelete', auto_delete)
        cmd += yes_no_var('-allowReadWrite', allow_rw)

        return cmd
示例#10
0
 def test_yes_no_var(self):
     assert_that(yes_no_var('-a', True), only_contains('-a', 'yes'))
     assert_that(yes_no_var('-a', False), only_contains('-a', 'no'))
     assert_that(yes_no_var('-a', None), equal_to([]))
示例#11
0
 def test_yes_no_var(self):
     assert_that(yes_no_var('-a', True), only_contains('-a', 'yes'))
     assert_that(yes_no_var('-a', False), only_contains('-a', 'no'))
     assert_that(yes_no_var('-a', None), equal_to([]))