summaryrefslogtreecommitdiff
path: root/setup_skytools.py
diff options
context:
space:
mode:
authorMarko Kreen2011-11-29 14:23:46 +0000
committerMarko Kreen2011-11-29 14:23:46 +0000
commit0980198ab3c1d416fdd23b86d26a6a605323758c (patch)
treea81cbf354df06b87924eca595ab29f8906da4b9f /setup_skytools.py
parentca418c8e3a04b409c264d77045746e67707ff992 (diff)
sql upgrade cleanup
- use 'structure/upgrade.sql' to generate X.upgrade.sql - add pgq_ext to upgraded schemas - move non-standard upgrade scripts to extra/ - setup_skytools: build sql files in 'build' target, not always - pgq_ext.version: bump ver to 3.0.0.1
Diffstat (limited to 'setup_skytools.py')
-rwxr-xr-xsetup_skytools.py39
1 files changed, 27 insertions, 12 deletions
diff --git a/setup_skytools.py b/setup_skytools.py
index 14ce9a6e..e5dd97e5 100755
--- a/setup_skytools.py
+++ b/setup_skytools.py
@@ -60,13 +60,17 @@ sql_files = [
'sql/pgq_node/pgq_node.upgrade.sql',
'sql/londiste/londiste.upgrade.sql',
'sql/pgq_coop/pgq_coop.upgrade.sql',
+ 'sql/pgq_ext/pgq_ext.upgrade.sql',
+]
+# sql files for special occasions
+extra_sql_files = [
'upgrade/final/v3.0_pgq_core.sql',
- #'sql/txid/txid.sql',
]
if not INSTALL_SQL:
sql_files = []
+ extra_sql_files = []
def getvar(name, default):
try:
@@ -92,15 +96,21 @@ DEF_SKYLOG = getvar('SKYLOG', '0') != '0'
DEF_SK3_SUBDIR = getvar('SK3_SUBDIR', '0') != '0'
# create sql files if they dont exist
-for fn in sql_files:
- if not os.path.isfile(fn):
- f = open(fn, 'w')
- wd = os.path.dirname(fn)
- cmd = [sys.executable, '../../scripts/catsql.py', 'structure/install.sql']
- p = Popen(cmd, stdout=f, cwd = wd)
- p.communicate()
- if p.returncode != 0:
- raise Exception('catsql failed')
+def make_sql():
+ for fn in sql_files:
+ if not os.path.isfile(fn):
+ f = open(fn, 'w')
+ wd = os.path.dirname(fn)
+ if fn.endswith('upgrade.sql'):
+ base = 'structure/upgrade.sql'
+ else:
+ base = 'structure/install.sql'
+ print("Creating %s" % (fn,))
+ cmd = [sys.executable, '../../scripts/catsql.py', base]
+ p = Popen(cmd, stdout=f, cwd = wd)
+ p.communicate()
+ if p.returncode != 0:
+ raise Exception('catsql failed')
# remove .py, add suffix
def fixscript(fn, dstdir, sfx):
@@ -121,9 +131,14 @@ class sk3_build(build):
build.initialize_options(self)
self.build_base = 'build.sk3'
+ def run(self):
+ build.run(self)
+ make_sql()
+
# fix script names in build dir
class sk3_build_scripts(build_scripts):
def run(self):
+
build_scripts.run(self)
for sfn in sfx_scripts:
@@ -142,7 +157,6 @@ class sk3_install(install):
skylog = DEF_SKYLOG
def run(self):
-
# create installer_config.py with final paths
fn = 'python/skytools/installer_config.py'
cf = open(fn + '.in', 'r').read()
@@ -182,7 +196,8 @@ setup(
'python/conf/wal-master.ini',
'python/conf/wal-slave.ini',
]),
- ('share/skytools3', sql_files)],
+ ('share/skytools3', sql_files),
+ ('share/skytools3/extra', extra_sql_files)],
ext_modules = c_modules,
scripts = sfx_scripts + nosfx_scripts,
cmdclass = {