示例#1
0
 def __init__(self):
     super().__init__()
     if app_common_python.isClowderEnabled():
         self.clowder()
     else:
         self.legacy()
     self.other()
def load_db_setting(env_name, attribute, default):
    if isClowderEnabled():
        cfg = LoadedConfig

        return vars(cfg.database)[attribute]

    return os.getenv(env_name, default)
def load_kakfa_setting(env_name, default):
    if isClowderEnabled():
        cfg = LoadedConfig

        broker_cfg = cfg.kafka.brokers[0]
        return f"{broker_cfg.hostname}:{broker_cfg.port}"

    return os.getenv(env_name, default).split(",")
def load_kafka_ssl_creds(env_name, attribute, default):
    if isClowderEnabled():
        cfg = LoadedConfig

        broker_cfg = cfg.kafka.brokers[0]

        try:
            return broker_cfg.sasl.username if attribute == "username" else broker_cfg.sasl.password
        except AttributeError:
            return None

    return os.getenv(env_name, default)
示例#5
0
def test_load_config():
    assert LoadedConfig.kafka.brokers[
        0].port == 27015, "Port failed to be found"
    assert KafkaTopics["originalName"].name == "someTopic"
    assert DependencyEndpoints["app1"]["endpoint1"].port == 8000
    assert DependencyEndpoints["app2"]["endpoint2"].name == "endpoint2"
    assert ObjectBuckets["reqname"].name == "name"
    assert KafkaServers[0] == "broker-host:27015"
    with open(LoadedConfig.rds_ca()) as fp:
        ca_content = fp.read()
        assert ca_content == "ca"
    assert isClowderEnabled() == True
    assert LoadedConfig.featureFlags.hostname == "ff-server.server.example.com"
def load_kafka_ssl_cert(env_name, default):
    if isClowderEnabled():
        cfg = LoadedConfig
        broker_cfg = cfg.kafka.brokers[0]

        cacert_filename = None
        if broker_cfg.cacert:
            with tempfile.NamedTemporaryFile(delete=False) as tf:
                cacert_filename = tf.name
                tf.write(broker_cfg.cacert.encode("utf-8"))
        return cacert_filename

    return os.getenv(env_name, default)
def topic(topic):
    if isClowderEnabled():
        return KafkaTopics[topic].name
    return topic
示例#8
0
REDIS_HOST = os.environ.get('PULP_REDIS_HOST')
REDIS_PORT = os.environ.get('PULP_REDIS_PORT')

REST_FRAMEWORK__DEFAULT_RENDERER_CLASSES = [
    'rest_framework.renderers.JSONRenderer'
]

# Clowder
# -------
try:
    import app_common_python as clowder_config
except ImportError:
    clowder_config = None

if clowder_config and clowder_config.isClowderEnabled():
    # Database configuration
    LocalConfig = clowder_config.LoadedConfig
    DATABASES['default'] = {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': LocalConfig.database.name,
        'HOST': LocalConfig.database.hostname,
        'PORT': LocalConfig.database.port,
        'USER': LocalConfig.database.username,
        'PASSWORD': LocalConfig.database.password
    }
    # AWS S3 configuration
    AWS_S3_ENTRYPOINT_URL = 'http://{}:{}'.format(
        LocalConfig.objectStore.hostname, LocalConfig.objectStore.port)
    AWS_ACCESS_KEY_ID = LocalConfig.objectStore.accessKey
    AWS_SECRET_ACCESS_KEY = LocalConfig.objectStore.secretKey