<reponame>planetlab/sfa
#!/usr/bin/python
import os
import sys
import socket
sys.path.append('/usr/share/plc_api')
from sfa.util.config import Config as SfaConfig
from PLC.Config import Config as PlcConfig

sfa_config = SfaConfig()
plc_config = PlcConfig()
default_host = socket.gethostbyname(socket.gethostname())
all_vars = ['SFA_CONFIG_DIR', 'SFA_DATA_DIR', 'SFA_INTERFACE_HRN',
            'SFA_CM_SLICE_PREFIX', 'SFA_REGISTRY_HOST', 'SFA_REGISTRY_PORT', 
            'SFA_AGGREGATE_HOST', 'SFA_AGGREGATE_PORT', 
            'SFA_SM_HOST', 'SFA_SM_PORT',
            'SFA_CM_ENABLED', 'SFA_CM_HOST', 'SFA_CM_PORT', 'SFA_CM_TYPE', 'SFA_CM_SLICE_PREFIX',
            'SFA_API_DEBUG']

defaults = {
    'SFA_CM_ENABLED': '1',
    'SFA_CM_HOST': 'localhost',
    'SFA_CM_PORT': '12346',
    'SFA_CM_SLICE_PREFIX': plc_config.PLC_SLICE_PREFIX,
    'SFA_CM_TYPE': 'pl',
    'SFA_API_DEBUG': '0'
    }

host_defaults = {
    'SFA_REGISTRY_HOST': default_host,
    'SFA_AGGREGATE_HOST': default_host,
    'SFA_SM_HOST': default_host,    
    }
     
const_dict = {}
for key in all_vars:
    value = ""
    
           
    if key in defaults:
        value = defaults[key]
    elif hasattr(sfa_config, key):
        value = getattr(sfa_config, key)
        # sfa_config may specify localhost instead of a resolvalbe host or ip
        # if so replace this with the host's address
        if key in host_defaults and value in ['localhost', '127.0.0.1']:
            value = host_defaults[key] 
    const_dict[key] = value

filename = sfa_config.config_path + os.sep + 'sfa_component_config'
conffile = open(filename, 'w')
format='%s="%s"\n'

for var in all_vars:
    conffile.write(format % (var, const_dict[var]))

conffile.close() 
    


#!/usr/bin/python
import os
import sys
import socket
sys.path.append('/usr/share/plc_api')
from sfa.util.config import Config as SfaConfig
from PLC.Config import Config as PlcConfig

sfa_config = SfaConfig()
plc_config = PlcConfig()
default_host = socket.gethostbyname(socket.gethostname())
all_vars = ['SFA_CONFIG_DIR', 'SFA_DATA_DIR', 'SFA_INTERFACE_HRN',
            'SFA_CM_SLICE_PREFIX', 'SFA_REGISTRY_HOST', 'SFA_REGISTRY_PORT', 
            'SFA_AGGREGATE_HOST', 'SFA_AGGREGATE_PORT', 
            'SFA_SM_HOST', 'SFA_SM_PORT',
            'SFA_CM_ENABLED', 'SFA_CM_HOST', 'SFA_CM_PORT', 'SFA_CM_TYPE', 'SFA_CM_SLICE_PREFIX',
            'SFA_API_DEBUG']

defaults = {
    'SFA_CM_ENABLED': '1',
    'SFA_CM_HOST': 'localhost',
    'SFA_CM_PORT': '12346',
    'SFA_CM_SLICE_PREFIX': plc_config.PLC_SLICE_PREFIX,
    'SFA_CM_TYPE': 'pl',
    'SFA_API_DEBUG': '0'
    }

host_defaults = {
    'SFA_REGISTRY_HOST': default_host,
    'SFA_AGGREGATE_HOST': default_host,
    'SFA_SM_HOST': default_host,    
    }
     
const_dict = {}
for key in all_vars:
    value = ""
    
           
    if key in defaults:
        value = defaults[key]
    elif hasattr(sfa_config, key):
        value = getattr(sfa_config, key)
        # sfa_config may specify localhost instead of a resolvalbe host or ip
        # if so replace this with the host's address
        if key in host_defaults and value in ['localhost', '127.0.0.1']:
            value = host_defaults[key] 
    const_dict[key] = value

filename = sfa_config.config_path + os.sep + 'sfa_component_config'
conffile = open(filename, 'w')
format='%s="%s"\n'

for var in all_vars:
    conffile.write(format % (var, const_dict[var]))

conffile.close()
#!/usr/bin/python # sfa_config may specify localhost instead of a resolvalbe host or ip # if so replace this with the host's address