Exemplo n.º 1
0
    def test_config_exists_in_custom_path(self):
        with open('config.ini', 'w') as f:
            custom_conf = ConfigParser()
            custom_conf.add_section('Section5')
            custom_conf.set('Section5', 'Option7', 'Value11')
            custom_conf.set('Section5', 'Option8', 'Value12')
            custom_conf.add_section('Section6')
            custom_conf.set('Section6', 'Option9', 'Value13')
            custom_conf.write(f)

        from libmozdata import config
        config.set_config(config.ConfigIni('config.ini'))

        self.assertEqual(config.get('Section5', 'Option7'), 'Value11')
        self.assertEqual(config.get('Section5', 'Option7', 'Default'),
                         'Value11')
        self.assertEqual(config.get('Section5', 'Option8'), 'Value12')
        self.assertEqual(config.get('Section5', 'Option8', 'Default'),
                         'Value12')
        self.assertEqual(config.get('Section6', 'Option9'), 'Value13')
        self.assertEqual(config.get('Section6', 'Option9', 'Default'),
                         'Value13')
        self.assertIsNone(config.get('Section5', 'Option9'))
        self.assertEqual(config.get('Section5', 'Option9', 'Default'),
                         'Default')
Exemplo n.º 2
0
def set_server():
    global patchanalysis

    server_ports_lock.acquire()
    next_server_port = server_ports.pop()
    server_ports.append(next_server_port + 1)
    server_ports_lock.release()

    stdout_server = open('server_' + str(next_server_port) + ".out",
                         "a",
                         buffering=0)

    subprocess.call('./serveHG.sh central ' + str(next_server_port) + ' &',
                    shell=True,
                    stdout=stdout_server,
                    stderr=stdout_server)

    from libmozdata import config

    class MyConfig(config.ConfigIni):
        def __init__(self, path=None):
            super(MyConfig, self).__init__(path)

        def get(self, section, option, default=None, type=str):
            if section == 'Mercurial' and option == 'URL':
                print('http://127.0.0.1:' + str(next_server_port) + '/')
                return 'http://127.0.0.1:' + str(next_server_port) + '/'

            return super(MyConfig, self).get(section, option, default, type)

    config.set_config(MyConfig())

    from libmozdata import patchanalysis

    # HACKY! Wait for the server to start.
    time.sleep(5)
Exemplo n.º 3
0
from libmozdata import config
import os


class MyConfig(config.Config):

    PATH = 'auto_nag/scripts/configs/config.json'

    def __init__(self):
        super(MyConfig, self).__init__()
        if not os.path.exists(MyConfig.PATH):
            self.conf = {'bz_api_key': ''}
        else:
            with open(MyConfig.PATH) as In:
                self.conf = json.load(In)
                if not self.conf.get('bz_api_key', None):
                    raise Exception(
                        'Your config.json file must contain a Bugzilla token'
                    )

    def get(self, section, option, default=None, type=str):
        if section == 'Bugzilla':
            if option == 'token':
                return self.conf['bz_api_key']
        elif section == 'User-Agent':
            return 'relman-auto-nag'
        return default


config.set_config(MyConfig())
Exemplo n.º 4
0
def load():
    config.set_config(MyConfig())
Exemplo n.º 5
0
import json
from libmozdata import config
import os


class MyConfig(config.Config):

    PATH = 'auto_nag/scripts/configs/config.json'

    def __init__(self):
        super(MyConfig, self).__init__()
        if not os.path.exists(MyConfig.PATH):
            self.conf = {'bz_api_key': ''}
        else:
            with open(MyConfig.PATH) as In:
                self.conf = json.load(In)
                if not self.conf.get('bz_api_key', None):
                    raise Exception(
                        'Your config.json file must contain a Bugzilla token')

    def get(self, section, option, default=None, type=str):
        if section == 'Bugzilla':
            if option == 'token':
                return self.conf['bz_api_key']
        elif section == 'User-Agent':
            return 'relman-auto-nag'
        return default


config.set_config(MyConfig())
Exemplo n.º 6
0
from libmozdata import config
import os


class ConfigEnv(config.Config):
    def get(self, section, option, default=None, type=str):
        res = os.environ.get("LIBMOZDATA_CFG_" + section.upper() + "_" + option.upper())
        if not res:
            return default
        if type == list or type == set:
            return type([s.strip(" /t") for s in res.split(",")])
        return type(res)


config.set_config(ConfigEnv())

from bisect import bisect_left as bisect
import copy
import datetime
import dateutil.parser
import libmozdata.utils as lmdutils
from libmozdata.bugzilla import Bugzilla
from libmozdata.connection import Connection
from math import ceil
import pytz


MIMES = {
    "text/x-phabricator-request",
    "text/x-github-pull-request",