def run(self, args, extra_args):
        all_boxes = get_all_boxes()
        if len(all_boxes) is 0:
            raise ServiError('No saved boxes found. Run "servi buildbox".')

        ver = all_boxes[0][1]
        tmgr = TemplateManager()
        if not args.force and ver < tmgr.m_template.template_version:
            raise ForceError('Existing saved servi_box has a version less '
                             'than existing template version.\n'
                             'Either run "servi buildbox" or run '
                             '"servi usebox --force."\n'
                             'Template version: {0}\n'
                             'servi_box: {1}'
                             .format(tmgr.m_template.template_version,
                             all_boxes[0][0]))

        env = os.environ.copy()
        env['servi_box'] = os.path.join(c.BOX_DIR, all_boxes[0][0])

        os.chdir(c.MASTER_DIR)

        if not args.mock:
            with timeit():
                subprocess.check_call('vagrant up', env=env, shell=True)
        else:
            info('mocking vagrant up with base box: {0}'
                 .format(env['servi_box']))

        return True
dataset/ETHPy150Open rr326/servi/servi/commands/usebox.py/UseboxCommand.run/original