]> git.ipfire.org Git - thirdparty/sqlalchemy/alembic.git/commitdiff
Check if directory is empty before failing initialization of migrations if directory...
authorAviskar KC <aviskarkc10@gmail.com>
Wed, 5 Jun 2019 06:59:09 +0000 (12:44 +0545)
committerAviskar KC <aviskarkc10@gmail.com>
Wed, 5 Jun 2019 06:59:09 +0000 (12:44 +0545)
alembic/command.py

index f8c81cc15105fb6e1c013182da7b971742ea7cbe..072d4f98545b83babad82b9d49bb6385297d637f 100644 (file)
@@ -37,18 +37,19 @@ def init(config, directory, template="generic"):
 
     """
 
-    if os.access(directory, os.F_OK):
-        raise util.CommandError("Directory %s already exists" % directory)
+    if os.access(directory, os.F_OK) and os.listdir(directory):
+        raise util.CommandError("Directory %s already exists and is not empty" % directory)
 
     template_dir = os.path.join(config.get_template_directory(), template)
     if not os.access(template_dir, os.F_OK):
         raise util.CommandError("No such template %r" % template)
 
-    util.status(
-        "Creating directory %s" % os.path.abspath(directory),
-        os.makedirs,
-        directory,
-    )
+    if not os.access(directory, os.F_OK):
+        util.status(
+            "Creating directory %s" % os.path.abspath(directory),
+            os.makedirs,
+            directory,
+        )
 
     versions = os.path.join(directory, "versions")
     util.status(