Exemple #1
0
def check_queue():
    queue_status = mkutils.check_pid(
        os.path.join(request.folder, "private", "buildqueue.pid"), False)
    if queue_status:
        return True
    else:
        subprocess.call([
            'python', 'web2py.py', '-S', 'meshkit', '-M', '-R',
            os.path.join(request.folder, 'init', 'build_queue.py')
        ])
Exemple #2
0
import sys
import os
import subprocess
sys.path.append(os.path.join(request.folder, "private", "modules"))
import mkutils

if mkutils.check_pid(os.path.join(request.folder, "private", "buildqueue.pid"),
                     False):
    pass
else:
    subprocess.Popen([
        'python', 'web2py.py', '-S', 'meshkit', '-M', '-R',
        os.path.join(request.folder, 'private', 'build_queue.py')
    ])
Exemple #3
0
            cmd = "cd " + config.buildroots_dir + "/" + self.Target + "; make image " + option_profile + option_pkgs + " BIN_DIR='" + self.BinDir + "' " + option_files
            ret = subprocess.call([cmd, ""], stdout=out, stderr=subprocess.STDOUT, shell=True)
            builder.build_links_json()
            if ret != 0:
                if ret < 0:
                    logger.critical('make was killed by signal %s', str(ret))
                else:
                    logger.critical('make failed with return code %s', str(ret))
                return 2
            else:
                return 0
        else:
            return 3

# Do not start if build_queue is already running
if mkutils.check_pid(os.path.join(request.folder, "private", "buildqueue.pid"), os.getpid()):
    logger.warning('Buildqueue is already running, not starting it again.')
else:
    try:
        logger.info('Starting buildqueue')
        while True:
            try:
                rows = db(db.imageconf.status=='1').select()
            except KeyError:
                rows = []

            for row in rows:
                builder = BuildImages(id=row.id, rand=row.rand, target=row.target, mail=row.mail,
                                      profile=row.profile, pkgs=row.packages, upload=row.upload,
                                      noconf=row.noconf, pubkeys=row.pubkeys, hostname=row.hostname, nodenumber=row.nodenumber,
                                      latitude=row.latitude, longitude=row.longitude, location=row.location,
Exemple #4
0
def check_queue():
    queue_status = mkutils.check_pid(os.path.join(request.folder, "private", "buildqueue.pid"), False)
    if queue_status:
        return True
    else:
        subprocess.call(['python', 'web2py.py', '-S', 'meshkit', '-M', '-R', os.path.join(request.folder, 'init', 'build_queue.py')])