aboutsummaryrefslogtreecommitdiffstats
path: root/lib/python2.7/site-packages/buildbot-0.8.8-py2.7.egg/buildbot/scripts/upgrade_master.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python2.7/site-packages/buildbot-0.8.8-py2.7.egg/buildbot/scripts/upgrade_master.py')
-rw-r--r--lib/python2.7/site-packages/buildbot-0.8.8-py2.7.egg/buildbot/scripts/upgrade_master.py180
1 files changed, 0 insertions, 180 deletions
diff --git a/lib/python2.7/site-packages/buildbot-0.8.8-py2.7.egg/buildbot/scripts/upgrade_master.py b/lib/python2.7/site-packages/buildbot-0.8.8-py2.7.egg/buildbot/scripts/upgrade_master.py
deleted file mode 100644
index c471965d..00000000
--- a/lib/python2.7/site-packages/buildbot-0.8.8-py2.7.egg/buildbot/scripts/upgrade_master.py
+++ /dev/null
@@ -1,180 +0,0 @@
-# This file is part of Buildbot. Buildbot is free software: you can
-# redistribute it and/or modify it under the terms of the GNU General Public
-# License as published by the Free Software Foundation, version 2.
-#
-# This program is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
-# details.
-#
-# You should have received a copy of the GNU General Public License along with
-# this program; if not, write to the Free Software Foundation, Inc., 51
-# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-# Copyright Buildbot Team Members
-
-from __future__ import with_statement
-
-import os
-import sys
-import traceback
-from twisted.internet import defer
-from twisted.python import util, runtime
-from buildbot import config as config_module
-from buildbot import monkeypatches
-from buildbot.db import connector
-from buildbot.master import BuildMaster
-from buildbot.util import in_reactor
-from buildbot.scripts import base
-
-def checkBasedir(config):
- if not config['quiet']:
- print "checking basedir"
-
- if not base.isBuildmasterDir(config['basedir']):
- return False
-
- if runtime.platformType != 'win32': # no pids on win32
- if not config['quiet']:
- print "checking for running master"
- pidfile = os.path.join(config['basedir'], 'twistd.pid')
- if os.path.exists(pidfile):
- print "'%s' exists - is this master still running?" % (pidfile,)
- return False
-
- return True
-
-def loadConfig(config, configFileName='master.cfg'):
- if not config['quiet']:
- print "checking %s" % configFileName
-
- try:
- master_cfg = config_module.MasterConfig.loadConfig(
- config['basedir'], configFileName)
- except config_module.ConfigErrors, e:
- print "Errors loading configuration:"
- for msg in e.errors:
- print " " + msg
- return
- except:
- print "Errors loading configuration:"
- traceback.print_exc(file=sys.stdout)
- return
-
- return master_cfg
-
-def installFile(config, target, source, overwrite=False):
- with open(source, "rt") as f:
- new_contents = f.read()
- if os.path.exists(target):
- with open(target, "rt") as f:
- old_contents = f.read()
- if old_contents != new_contents:
- if overwrite:
- if not config['quiet']:
- print "%s has old/modified contents" % target
- print " overwriting it with new contents"
- with open(target, "wt") as f:
- f.write(new_contents)
- else:
- if not config['quiet']:
- print "%s has old/modified contents" % target
- print " writing new contents to %s.new" % target
- with open(target + ".new", "wt") as f:
- f.write(new_contents)
- # otherwise, it's up to date
- else:
- if not config['quiet']:
- print "creating %s" % target
- with open(target, "wt") as f:
- f.write(new_contents)
-
-def upgradeFiles(config):
- if not config['quiet']:
- print "upgrading basedir"
-
- webdir = os.path.join(config['basedir'], "public_html")
- if not os.path.exists(webdir):
- if not config['quiet']:
- print "creating public_html"
- os.mkdir(webdir)
-
- templdir = os.path.join(config['basedir'], "templates")
- if not os.path.exists(templdir):
- if not config['quiet']:
- print "creating templates"
- os.mkdir(templdir)
-
- for file in ('bg_gradient.jpg', 'default.css',
- 'robots.txt', 'favicon.ico'):
- source = util.sibpath(__file__, "../status/web/files/%s" % (file,))
- target = os.path.join(webdir, file)
- try:
- installFile(config, target, source)
- except IOError:
- print "Can't write '%s'." % (target,)
-
- installFile(config, os.path.join(config['basedir'], "master.cfg.sample"),
- util.sibpath(__file__, "sample.cfg"), overwrite=True)
-
- # if index.html exists, use it to override the root page tempalte
- index_html = os.path.join(webdir, "index.html")
- root_html = os.path.join(templdir, "root.html")
- if os.path.exists(index_html):
- if os.path.exists(root_html):
- print "Notice: %s now overrides %s" % (root_html, index_html)
- print " as the latter is not used by buildbot anymore."
- print " Decide which one you want to keep."
- else:
- try:
- print "Notice: Moving %s to %s." % (index_html, root_html)
- print " You can (and probably want to) remove it if " \
- "you haven't modified this file."
- os.renames(index_html, root_html)
- except Exception, e:
- print "Error moving %s to %s: %s" % (index_html, root_html,
- str(e))
-
-@defer.inlineCallbacks
-def upgradeDatabase(config, master_cfg):
- if not config['quiet']:
- print "upgrading database (%s)" % (master_cfg.db['db_url'])
-
- master = BuildMaster(config['basedir'])
- master.config = master_cfg
- db = connector.DBConnector(master, basedir=config['basedir'])
-
- yield db.setup(check_version=False, verbose=not config['quiet'])
- yield db.model.upgrade()
-
-@in_reactor
-@defer.inlineCallbacks
-def upgradeMaster(config, _noMonkey=False):
- if not _noMonkey: # pragma: no cover
- monkeypatches.patch_all()
-
- if not checkBasedir(config):
- defer.returnValue(1)
- return
-
- os.chdir(config['basedir'])
-
- try:
- configFile = base.getConfigFileFromTac(config['basedir'])
- except (SyntaxError, ImportError), e:
- print "Unable to load 'buildbot.tac' from '%s':" % config['basedir']
- print e
- defer.returnValue(1)
- return
- master_cfg = loadConfig(config, configFile)
- if not master_cfg:
- defer.returnValue(1)
- return
-
- upgradeFiles(config)
- yield upgradeDatabase(config, master_cfg)
-
- if not config['quiet']:
- print "upgrade complete"
-
- defer.returnValue(0)