cubicweb/server/migractions.py
changeset 12746 5c432a7fc442
parent 12745 cc681b6fcffa
equal deleted inserted replaced
12745:cc681b6fcffa 12746:5c432a7fc442
    30 import sys
    30 import sys
    31 import os
    31 import os
    32 import tarfile
    32 import tarfile
    33 import tempfile
    33 import tempfile
    34 import shutil
    34 import shutil
       
    35 import traceback
    35 import os.path as osp
    36 import os.path as osp
    36 from datetime import datetime
    37 from datetime import datetime
    37 from glob import glob
    38 from glob import glob
    38 from copy import copy
    39 from copy import copy
    39 from contextlib import contextmanager
    40 from contextlib import contextmanager
  1454         if not ask_confirm or self.confirm('Execute sql: %s ?' % sql):
  1455         if not ask_confirm or self.confirm('Execute sql: %s ?' % sql):
  1455             try:
  1456             try:
  1456                 cu = self.cnx.system_sql(sql, args)
  1457                 cu = self.cnx.system_sql(sql, args)
  1457             except Exception:
  1458             except Exception:
  1458                 _, ex, traceback_ = sys.exc_info()
  1459                 _, ex, traceback_ = sys.exc_info()
  1459                 if self.confirm('Error: %s\nabort?' % ex,
  1460                 traceback.print_exc()
  1460                                 pdb=True, traceback=traceback_):
  1461                 if self.confirm('abort?', pdb=True, traceback=traceback_):
  1461                     raise
  1462                     raise
  1462                 return
  1463                 return
  1463             try:
  1464             try:
  1464                 return cu.fetchall()
  1465                 return cu.fetchall()
  1465             except Exception:
  1466             except Exception:
  1481             if not ask_confirm or self.confirm('Execute rql: %s ?' % msg):
  1482             if not ask_confirm or self.confirm('Execute rql: %s ?' % msg):
  1482                 try:
  1483                 try:
  1483                     res = execute(rql, kwargs, build_descr=build_descr)
  1484                     res = execute(rql, kwargs, build_descr=build_descr)
  1484                 except Exception:
  1485                 except Exception:
  1485                     _, ex, traceback_ = sys.exc_info()
  1486                     _, ex, traceback_ = sys.exc_info()
  1486                     if self.confirm('Error: %s\nabort?' % ex,
  1487                     traceback.print_exc()
  1487                                     pdb=True, traceback=traceback_):
  1488                     if self.confirm('abort?', pdb=True, traceback=traceback_):
  1488                         raise
  1489                         raise
  1489         return res
  1490         return res
  1490 
  1491 
  1491     def rqliter(self, rql, kwargs=None, ask_confirm=True):
  1492     def rqliter(self, rql, kwargs=None, ask_confirm=True):
  1492         return ForRqlIterator(self, rql, kwargs, ask_confirm)
  1493         return ForRqlIterator(self, rql, kwargs, ask_confirm)
  1572                 raise StopIteration
  1573                 raise StopIteration
  1573         try:
  1574         try:
  1574             return self._h._cw.execute(rql, kwargs)
  1575             return self._h._cw.execute(rql, kwargs)
  1575         except Exception:
  1576         except Exception:
  1576             _, ex, traceback_ = sys.exc_info()
  1577             _, ex, traceback_ = sys.exc_info()
  1577             if self._h.confirm('Error: %s\nabort?' % ex,
  1578             traceback.print_exc()
  1578                                pdb=True, traceback=traceback_):
  1579             if self._h.confirm('abort?', pdb=True, traceback=traceback_):
  1579                 raise
  1580                 raise
  1580             else:
  1581             else:
  1581                 raise StopIteration
  1582                 raise StopIteration
  1582 
  1583 
  1583     def __next__(self):
  1584     def __next__(self):