diff --git a/roundup/init.py b/roundup/init.py
index f7de005fd8cbd3f714c408fe29839b26a274ed51..9214fb614d9984c62bff26049993b85ea881e7e3 100644 (file)
--- a/roundup/init.py
+++ b/roundup/init.py
# BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
# SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
#
-# $Id: init.py,v 1.16 2001-10-09 07:25:59 richard Exp $
+# $Id: init.py,v 1.20 2002-07-14 02:05:53 richard Exp $
-import os, shutil, sys, errno
+__doc__ = """
+Init (create) a roundup instance.
+"""
+
+import os, sys, errno
import roundup.instance, password
+from roundup import install_util
def copytree(src, dst, symlinks=0):
- """Recursively copy a directory tree using copy2().
+ """Recursively copy a directory tree using copyDigestedFile().
The destination directory os allowed to exist.
elif os.path.isdir(srcname):
copytree(srcname, dstname, symlinks)
else:
- shutil.copy2(srcname, dstname)
+ install_util.copyDigestedFile(srcname, dstname)
-def init(instance_home, template, backend, adminpw):
- '''Initialise an instance using the named template and backend.
+def install(instance_home, template, backend):
+ '''Install an instance using the named template and backend.
instance_home - the directory to place the instance data in
template - the template to use in creating the instance data
backend - the database to use to store the instance data
- adminpw - the password for the "admin" user
The instance_home directory will be created using the files found in
the named template (roundup.templates.<name>). A standard instance_home
# now select database
db = '''# WARNING: DO NOT EDIT THIS FILE!!!
-from roundup.backends.back_%s import Database'''%backend
+from roundup.backends.back_%s import Database, Class, FileClass, IssueClass
+'''%backend
open(os.path.join(instance_home, 'select_db.py'), 'w').write(db)
+
+def initialise(instance_home, adminpw):
+ '''Initialise an instance's database
+
+ adminpw - the password for the "admin" user
+ '''
# now import the instance and call its init
instance = roundup.instance.open(instance_home)
instance.init(password.Password(adminpw))
#
# $Log: not supported by cvs2svn $
+# Revision 1.19 2002/05/23 01:14:20 richard
+# . split instance initialisation into two steps, allowing config changes
+# before the database is initialised.
+#
+# Revision 1.18 2001/11/22 15:46:42 jhermann
+# Added module docstrings to all modules.
+#
+# Revision 1.17 2001/11/12 23:17:38 jhermann
+# Code using copyDigestedFile() that passes unit tests
+#
+# Revision 1.16 2001/10/09 07:25:59 richard
+# Added the Password property type. See "pydoc roundup.password" for
+# implementation details. Have updated some of the documentation too.
+#
# Revision 1.15 2001/08/07 00:24:42 richard
# stupid typo
#