Jelajahi Sumber

fix regex matching system

Olivier Massot 5 tahun lalu
induk
melakukan
b691f86925
1 mengubah file dengan 7 tambahan dan 5 penghapusan
  1. 7 5
      clonedb.py

+ 7 - 5
clonedb.py

@@ -1,3 +1,4 @@
+#!/usr/bin/python3
 """
 """
 Script de clonage des bases de données MySql
 Script de clonage des bases de données MySql
 (requiert python 3.6+)
 (requiert python 3.6+)
@@ -271,10 +272,10 @@ class CloningOperation:
 
 
         self.is_default = is_default
         self.is_default = is_default
         self.compress = compress
         self.compress = compress
-        self.ignore_tables = [re.compile(r) for r in ignore_tables] if ignore_tables else []
-        self.structure_only = [re.compile(r) for r in structure_only] if structure_only else []
-        self.filter_tables = [re.compile(r) for r in filter_tables] if filter_tables else []
-        self.ignore_views = [re.compile(r) for r in ignore_views] if ignore_views else []
+        self.ignore_tables = [re.compile(f"^{r}$") for r in ignore_tables] if ignore_tables else []
+        self.structure_only = [re.compile(f"^{r}$") for r in structure_only] if structure_only else []
+        self.filter_tables = [re.compile(f"^{r}$") for r in filter_tables] if filter_tables else []
+        self.ignore_views = [re.compile(f"^{r}$") for r in ignore_views] if ignore_views else []
 
 
         self.status = UNKNOWN
         self.status = UNKNOWN
 
 
@@ -510,7 +511,8 @@ def main(settings, arguments):
         selected_ops = [op for op in ops.values() if op.is_default]
         selected_ops = [op for op in ops.values() if op.is_default]
 
 
     if not selected_ops:
     if not selected_ops:
-        raise RuntimeError('No operation to launch')
+        logger.error('No operations to launch')
+        return
 
 
     # Ask for confirmation (except if '--yes' is in arguments)
     # Ask for confirmation (except if '--yes' is in arguments)
     if prompt:
     if prompt: