예제 #1
0
def main():
    if os.path.isdir('/var/run'):
        pidfile = open('/var/run/build_consumer.pid', 'w')
        pidfile.write(str(os.getpid()))
        pidfile.close()
    brickconfig = BrickConfig()
    worker = DrequeWorker(['build'], brickconfig.get('redis', 'redis-server'))
    worker.work()
예제 #2
0
    def __init__(self, project):
        self.type = BrickConfig().get('container', 'container_type')
        self.container_base = BrickConfig().get('container', '%s_base' % self.type)
        self.project = project
        self.workspace = '%s-%s%s' % (self.container_base, self.project.name, BrickConfig().get('workspace', 'dir'))

        if not os.path.isdir("%s-%s" % (self.container_base, self.project.name)):
            shutil.copytree(self.container_base, "%s-%s" % (self.container_base, self.project.name))
            self.dir = "%s-%s" % (self.container_base, self.project.name)
예제 #3
0
 def send_job(self, project_name, branch, release, version):
     log.msg('sched build: %s [%s:%s]' % (project_name, release, version))
     brickconfig = BrickConfig()
     #queue = Dreque(brickconfig.get('redis', 'redis-server'))
     #queue.enqueue('build', 'builder.build_project', {
     builder.build_project({
         'project': project_name,
         'branch': branch,
         'release': release,
         'version': version,
     })
예제 #4
0
    def setup(self):
        for mount in ['proc', 'sys']:
            p = subprocess.Popen(
                ['mount', '-o', 'bind', mount, '%s/%s' % (self.project.name, mount)], 
                stdout=subprocess.PIPE, stderr=subprocess.PIPE
                )
            p.wait()

            if not os.path.isdir(self.workspace):
                os.makedirs(self.workspace)

                p = subprocess.Popen(
                    [
                        'mount',
                        '-o',
                        'bind',
                        BrickConfig().get('workspace', 'dir'),
                        self.workspace,
                        ]
                    )
                p.wait()
예제 #5
0
def main():
    brickconfig = BrickConfig()
    worker = DrequeWorker(['build'], brickconfig.get('redis', 'redis-server'))
    worker.work()
예제 #6
0
def main():
    brickconfig = BrickConfig()
    worker = DrequeWorker(['build'], brickconfig.get('redis', 'redis-server'))
    worker.work()