summaryrefslogtreecommitdiff
path: root/ick2-controller
blob: 91b593b28e92d7d2b13905f6572896d2d5df4bff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/env python2


import argparse
import logging
import sys

import yaml

import ick2lib


def load_projects(filename):
    with open(filename) as f:
        projects_config = yaml.safe_load(f)

    projects = {}
    for name, config in projects_config['projects'].items():
        p = ick2lib.Project(name)
        projects[name] = p
        for shell in config['shell_steps']:
            p.add_build_step(shell)

    return projects


parser = argparse.ArgumentParser()
parser.add_argument('--projects', action='store', dest='projects')
parser.add_argument('--log', action='store', dest='log', default='/dev/null')
results = parser.parse_args()

logging.basicConfig(filename=results.log, level=logging.DEBUG)

logging.info('ick2-controller starts')
projects = load_projects(results.projects)
service = ick2lib.ApiService()
service.set_projects(projects)
application = service.get_uwsgi_app()