Ejemplo n.º 1
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.org_name = 'SpokeOrgTest'
     self.base_dn = self.config.get('DHCP', 'dhcp_basedn')
     self.search_scope = 2 # ldap.SUB
     self.retrieve_attr = None
     self.dhcp_server_class = 'dhcpServer'
     self.dhcp_service_class = 'dhcpService'
     self.dhcp_subnet_class = 'dhcpSubnet'
     self.dhcp_options_class = 'dhcpOptions'
     self.dhcp_group_class = 'dhcpGroup'
     self.dhcp_host_class = 'dhcpHost'
     self.dhcp_option_attr = 'dhcpOption'
     self.dhcp_statement_attr = 'dhcpStatement'
     self.dhcp_mac_attr = 'dhcpHWAddress'
     self.dhcp_conf_suffix = self.config.get('DHCP', 'dhcp_conf_suffix')
     self.dhcp_server = 'test.dhcp.server.local'
     self.dhcp_group = 'testgroup'
     self.dhcp_host = 'testhost'
Ejemplo n.º 2
0
 def __init__(self, methodName):
     """Setup config data and redis connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.ca_name = 'test-ca'
     self.ca_cn = 'Test Certificate Authority'
     self.ca_def_duration = self.config.get('CA', 'ca_def_duration')
     self.ca_base_dir = self.config.get('CA', 'ca_base_dir')
     self.ca_dir = os.path.join(self.ca_base_dir, self.ca_name)
     self.ca_key_rdir = self.config.get('CA', 'ca_key_dir')
     self.ca_cert_rdir = self.config.get('CA', 'ca_cert_dir')
     self.ca_req_rdir = self.config.get('CA', 'ca_req_dir')
     self.ca_cert_name = self.config.get('CA', 'ca_pub_cert')
     self.ca_key_name = self.config.get('CA', 'ca_priv_key')
     self.ca_index_name = self.config.get('CA', 'ca_index')
     self.ca_serial_name = self.config.get('CA', 'ca_serial')
     self.ca_key_dir = os.path.join(self.ca_dir, self.ca_key_rdir)
     self.ca_cert_dir = os.path.join(self.ca_dir, self.ca_cert_rdir)
     self.ca_req_dir = os.path.join(self.ca_dir, self.ca_req_rdir)
     self.ca_tree = [
         (self.ca_dir,
          [self.ca_cert_rdir, self.ca_key_rdir,
           self.ca_req_rdir], [self.ca_serial_name]),
         (self.ca_cert_dir, [], [self.ca_cert_name]),
         (self.ca_key_dir, [], [self.ca_key_name]),
         (self.ca_req_dir, [], [])
     ]
     self.ca_key_file = os.path.join(self.ca_key_dir, self.ca_key_name)
     self.ca_cert_file = os.path.join(self.ca_cert_dir, self.ca_cert_name)
Ejemplo n.º 3
0
 def __init__(self, methodName):
     """Setup config data and redis connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.ca_name = 'test-ca'
     self.ca_cn = 'Test Certificate Authority'
     self.ca_def_duration = self.config.get('CA', 'ca_def_duration')
     self.ca_base_dir = self.config.get('CA', 'ca_base_dir')
     self.ca_dir = os.path.join(self.ca_base_dir, self.ca_name)
     self.ca_key_rdir = self.config.get('CA', 'ca_key_dir')
     self.ca_cert_rdir = self.config.get('CA', 'ca_cert_dir')
     self.ca_req_rdir = self.config.get('CA', 'ca_req_dir')
     self.ca_cert_name = self.config.get('CA', 'ca_pub_cert')
     self.ca_key_name = self.config.get('CA', 'ca_priv_key')
     self.ca_index_name = self.config.get('CA', 'ca_index')
     self.ca_serial_name = self.config.get('CA', 'ca_serial')
     self.ca_key_dir = os.path.join(self.ca_dir, self.ca_key_rdir)
     self.ca_cert_dir = os.path.join(self.ca_dir, self.ca_cert_rdir)
     self.ca_req_dir = os.path.join(self.ca_dir, self.ca_req_rdir)
     self.ca_tree = [(self.ca_dir, 
                     [self.ca_cert_rdir, self.ca_key_rdir, self.ca_req_rdir], 
                     [self.ca_serial_name]),
                     (self.ca_cert_dir, [], [self.ca_cert_name]),
                     (self.ca_key_dir, [], [self.ca_key_name]),
                     (self.ca_req_dir, [], [])]
     self.ca_key_file = os.path.join(self.ca_key_dir, self.ca_key_name)
     self.ca_cert_file = os.path.join(self.ca_cert_dir, self.ca_cert_name)
Ejemplo n.º 4
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2 # ldap.SCOPE_SUBTREE
     self.retrieve_attr = None
     self.org_name = 'SpokeListTest'
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
     self.list_container = self.config.get('ATTR_MAP', 'user_container')
     self.list_class = self.config.get('ATTR_MAP', 'smtp_class')
     self.list_key = self.config.get('ATTR_MAP', 'user_key')
     self.list_address_attr = self.config.get('ATTR_MAP', 'smtp_address')
     self.list_destination_attr = self.config.get('ATTR_MAP', 'smtp_destination')
     self.list_enable_attr = self.config.get('ATTR_MAP', 'smtp_enable')
     self.list_pri_address_attr = self.config.get('ATTR_MAP', 'smtp_pri_address')
     self.list_address = '*****@*****.**'
     self.list_member = '*****@*****.**'
Ejemplo n.º 5
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.org_name = 'SpokeOrgTest'
     self.base_dn = self.config.get('DHCP', 'dhcp_basedn')
     self.search_scope = 2  # ldap.SUB
     self.retrieve_attr = None
     self.dhcp_server_class = 'dhcpServer'
     self.dhcp_service_class = 'dhcpService'
     self.dhcp_subnet_class = 'dhcpSubnet'
     self.dhcp_options_class = 'dhcpOptions'
     self.dhcp_group_class = 'dhcpGroup'
     self.dhcp_host_class = 'dhcpHost'
     self.dhcp_option_attr = 'dhcpOption'
     self.dhcp_statement_attr = 'dhcpStatement'
     self.dhcp_mac_attr = 'dhcpHWAddress'
     self.dhcp_conf_suffix = self.config.get('DHCP', 'dhcp_conf_suffix')
     self.dhcp_server = 'test.dhcp.server.local'
     self.dhcp_group = 'testgroup'
     self.dhcp_host = 'testhost'
Ejemplo n.º 6
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2  # ldap.SCOPE_SUBTREE
     self.retrieve_attr = None
     self.org_name = 'SpokeListTest'
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
     self.list_container = self.config.get('ATTR_MAP', 'user_container')
     self.list_class = self.config.get('ATTR_MAP', 'smtp_class')
     self.list_key = self.config.get('ATTR_MAP', 'user_key')
     self.list_address_attr = self.config.get('ATTR_MAP', 'smtp_address')
     self.list_destination_attr = self.config.get('ATTR_MAP',
                                                  'smtp_destination')
     self.list_enable_attr = self.config.get('ATTR_MAP', 'smtp_enable')
     self.list_pri_address_attr = self.config.get('ATTR_MAP',
                                                  'smtp_pri_address')
     self.list_address = '*****@*****.**'
     self.list_member = '*****@*****.**'
Ejemplo n.º 7
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2 # ldap.SUB
     self.retrieve_attr = None
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
     self.org_name = 'SpokeOrgPwdTest'
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.user_container = self.config.get('ATTR_MAP', 'user_container')
     self.user_key = self.config.get('ATTR_MAP', 'user_key') 
     self.user_login = self.config.get('ATTR_MAP', 'user_login')
     self.user_class = self.config.get('ATTR_MAP', 'user_class')
     self.user_name = self.config.get('ATTR_MAP', 'user_name')
     self.user_enable = self.config.get('ATTR_MAP', 'user_enable')
     self.user_def_pwd = self.config.get('ATTR_MAP', 'user_def_pwd')
     self.first = 'peter'
     self.last = 'password'
     self.user_id = self.first + self.last
     self.email_dom = 'test.user.loc'
     self.email_addr = self.user_id + '@' + self.email_dom
Ejemplo n.º 8
0
 def __init__(self, ca_name):    
     """Get config, setup logging."""
     self.config = config.setup()
     self.log = logger.log_to_console()
     self.ca_name = common.is_shell_safe(ca_name)
     self.ca_base_dir = self.config.get('CA', 'ca_base_dir')
     self.ca_dir = os.path.join(self.ca_base_dir, self.ca_name) 
     self.ca_key_rdir = self.config.get('CA', 'ca_key_dir', 'private')
     self.ca_cert_rdir = self.config.get('CA', 'ca_cert_dir', 'certs')
     self.ca_req_rdir = self.config.get('CA', 'ca_req_dir', 'reqs')
     self.ca_cert_name = self.config.get('CA', 'ca_pub_cert', 'ca-cert.pem')
     self.ca_bundle_name = self.config.get('CA', 'ca_bundle', 'ca-bundle.pem')
     self.ca_req_name = self.config.get('CA', 'ca_req', 'ca-req.pem')
     self.ca_key_name = self.config.get('CA', 'ca_priv_key', 'ca-key.pem')
     self.ca_index_name = self.config.get('CA', 'ca_index', 'index')
     self.ca_serial_name = self.config.get('CA', 'ca_serial', 'serial')
     self.ca_cert_dir = os.path.join(self.ca_dir, self.ca_cert_rdir)
     self.ca_key_dir = os.path.join(self.ca_dir, self.ca_key_rdir)
     self.ca_req_dir = os.path.join(self.ca_dir, self.ca_req_rdir)
     self.ca_cert_file = os.path.join(self.ca_cert_dir, self.ca_cert_name)
     self.ca_bundle_file = os.path.join(self.ca_base_dir, 
                                        self.ca_bundle_name)
     
     self.ca_key_file = os.path.join(self.ca_key_dir, self.ca_key_name)
     self.ca_req_file = os.path.join(self.ca_req_dir, self.ca_req_name)
     self.ca_index_file = os.path.join(self.ca_cert_dir, self.ca_index_name)
     self.ca_serial_file = os.path.join(self.ca_dir, self.ca_serial_name)
         
     self.ca_key = os.path.join(self.ca_key_dir, self.ca_key_file)
     self.ca_cert = os.path.join(self.ca_cert_dir, self.ca_cert_file)
     self.req_dirs = [ self.ca_base_dir, self.ca_dir, self.ca_key_dir, 
                      self.ca_req_dir, self.ca_cert_dir ]
     self.req_files = [ self.ca_index_file, self.ca_serial_file,
                       self.ca_key_file, self.ca_cert_file ]
     try:
         ca_cert = X509.load_cert(self.ca_cert_file, format=1)
         self.ca_cn = ca_cert.get_subject().CN
         self.ca_cert_as_pem = ca_cert.as_pem()
     except:
         msg = 'CA cert file %s does not exist' % self.ca_cert_file
         self.log.debug(msg)      
     self.ca_country = self.config.get('CA', 'ca_country', 'GB')
     try:
         self.ca_state = self.config.get('CA', 'ca_state')
     except:
         self.ca_state = None
     self.ca_locality = self.config.get('CA', 'ca_locality', 'London')
     self.ca_org = self.config.get('CA', 'ca_org', 'Acme Ltd')
     self.ca_ou = self.config.get('CA', 'ca_ou', 'Certificate Services')
     self.ca_email = self.config.get('CA', 'ca_email', '*****@*****.**')
     self.ca_def_duration = self.config.get('CA', 'ca_def_duration', 1095)
     self.ca_keypass = self.config.get('CA', 'ca_keypass', '')
     # Try to get some more info from req/cert files if they are present
     self.ca_info = self._get_ca_info()
     try:
         self.ca_cn = self.ca_info['ca_cn']
     except:pass
     try:
         self.ca_cert_as_pem = self.ca_info['ca_cert_as_pem']
     except:pass
Ejemplo n.º 9
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2  # ldap.SUB
     self.retrieve_attr = None
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
     self.org_name = 'SpokeOrgPwdTest'
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.user_container = self.config.get('ATTR_MAP', 'user_container')
     self.user_key = self.config.get('ATTR_MAP', 'user_key')
     self.user_login = self.config.get('ATTR_MAP', 'user_login')
     self.user_class = self.config.get('ATTR_MAP', 'user_class')
     self.user_name = self.config.get('ATTR_MAP', 'user_name')
     self.user_enable = self.config.get('ATTR_MAP', 'user_enable')
     self.user_def_pwd = self.config.get('ATTR_MAP', 'user_def_pwd')
     self.first = 'peter'
     self.last = 'password'
     self.user_id = self.first + self.last
     self.email_dom = 'test.user.loc'
     self.email_addr = self.user_id + '@' + self.email_dom
Ejemplo n.º 10
0
 def __init__(self, cn, requester, signer=None):
     """Get config, setup logging."""
     self.config = config.setup()
     self.log = logger.log_to_console()
     self.reqca = self._get_ca(requester)
     if signer:
         self.signca = self._get_ca(signer)
     else:
         self.signca = self.reqca
Ejemplo n.º 11
0
 def __init__(self, cn, requester, signer=None):    
     """Get config, setup logging."""
     self.config = config.setup()
     self.log = logger.log_to_console()
     self.reqca = self._get_ca(requester)
     if signer:
         self.signca = self._get_ca(signer)
     else:
         self.signca = self.reqca
Ejemplo n.º 12
0
 def __init__(self, methodName):
     """Setup config data and redis connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.subnet = '192.168.1.0'
     self.mask = 24
     self.ip_ldap_key = self.config.get('IP', 'ip_ldap_key')
Ejemplo n.º 13
0
 def __init__(self, methodName):
     """Setup config data and redis connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.subnet = '192.168.1.0'
     self.mask = 24
     self.ip_ldap_key = self.config.get('IP', 'ip_ldap_key')
Ejemplo n.º 14
0
 def __init__(self, methodName):
     """Setup config data and Cyrus connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.user = self.config.get('IMAP', 'user')
     self.sep = '/'
     self.mbx_name = '*****@*****.**'
Ejemplo n.º 15
0
    def __init__(self, methodName):
        """Setup config data and LDAP connection."""
        unittest.TestCase.__init__(self, methodName)
        common_config = '../../contrib/spoke.conf'
        custom_config = '/tmp/spoke.conf'
        config_files = (common_config, custom_config)
        self.config = config.setup(config_files)
        self.log = logger.log_to_console()
        self.base_dn = self.config.get('LDAP', 'basedn')
        self.search_scope = 2  # ldap.SCOPE_SUBTREE
        self.retrieve_attr = None
        self.org_name = 'spokehosttest'
        self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
        self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
        self.org_children = self.org_def_children.split(',')
        self.org_dn = '%s=%s,%s' % (self.org_attr, self.org_name, self.base_dn)
        self.container_attr = self.config.get('ATTR_MAP', 'container_attr')

        self.host_container = self.config.get('HOST', 'host_container')
        self.host_container_dn = '%s=%s,%s' % (self.container_attr, \
                                            self.host_container, self.org_dn)
        self.host_class = self.config.get('HOST', 'host_class')
        self.host_key = self.config.get('HOST', 'host_key')

        self.host_uuid_attr = self.config.get('HOST', 'host_uuid_attr')
        self.host_name_attr = self.config.get('HOST', 'host_name_attr')
        self.host_cpu_attr = self.config.get('HOST', 'host_cpu_attr')
        self.host_mem_attr = self.config.get('HOST', 'host_mem_attr')
        self.host_extra_opts_attr = self.config.get('HOST',
                                                    'host_extra_opts_attr')
        self.host_family_attr = self.config.get('HOST', 'host_family_attr')
        self.host_network_layout_attr = self.config.get(
            'HOST', 'host_network_layout_attr')
        self.host_storage_layout_attr = self.config.get(
            'HOST', 'host_storage_layout_attr')
        self.host_type_attr = self.config.get('HOST', 'host_type_attr')
        self.next_uuid_attr = self.config.get('UUID', 'next_uuid_attr')
        self.next_uuid_dn = self.config.get('UUID', 'next_uuid_dn')
        self.next_uuid_start = self.config.get('UUID', 'next_uuid_start')

        self.host_name = 'testhost'
        self.host_uuid = '1'
        self.host_mem = '256'
        self.host_mem_kb = '%s' % (int(self.host_mem) * 1024)
        self.host_cpu = '1'
        self.host_extra_opts = 'test'
        self.host_family = 'xen'
        self.host_storage_layout = 'basic'
        self.host_network_layout = 'with_internet'
        self.host_type = 'full'
Ejemplo n.º 16
0
    def __init__(self, methodName):
        """Setup config data and LDAP connection."""
        unittest.TestCase.__init__(self, methodName)
        common_config = '../../contrib/spoke.conf'
        custom_config = '/tmp/spoke.conf'
        config_files = (common_config, custom_config)
        self.config = config.setup(config_files)
        self.log = logger.log_to_console()
        self.base_dn = self.config.get('LDAP', 'basedn')
        self.search_scope = 2 # ldap.SCOPE_SUBTREE
        self.retrieve_attr = None
        self.org_name = 'spokehosttest'
        self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
        self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
        self.org_children = self.org_def_children.split(',')
        self.org_dn = '%s=%s,%s' % (self.org_attr, self.org_name, self.base_dn)
        self.container_attr = self.config.get('ATTR_MAP', 'container_attr')

        self.host_container = self.config.get('HOST', 'host_container')
        self.host_container_dn = '%s=%s,%s' % (self.container_attr, \
                                            self.host_container, self.org_dn)
        self.host_class = self.config.get('HOST', 'host_class')
        self.host_key = self.config.get('HOST', 'host_key')

        self.host_uuid_attr = self.config.get('HOST', 'host_uuid_attr')
        self.host_name_attr = self.config.get('HOST', 'host_name_attr')
        self.host_cpu_attr = self.config.get('HOST', 'host_cpu_attr')
        self.host_mem_attr = self.config.get('HOST', 'host_mem_attr')
        self.host_extra_opts_attr = self.config.get('HOST', 
                                                    'host_extra_opts_attr')
        self.host_family_attr = self.config.get('HOST', 'host_family_attr')
        self.host_network_layout_attr = self.config.get('HOST', 
                                                    'host_network_layout_attr')
        self.host_storage_layout_attr = self.config.get('HOST', 
                                                    'host_storage_layout_attr')
        self.host_type_attr = self.config.get('HOST', 'host_type_attr')
        self.next_uuid_attr = self.config.get('UUID', 'next_uuid_attr')
        self.next_uuid_dn = self.config.get('UUID', 'next_uuid_dn')
        self.next_uuid_start = self.config.get('UUID', 'next_uuid_start')
        
        self.host_name = 'testhost'
        self.host_uuid = '1'
        self.host_mem = '256'
        self.host_mem_kb = '%s' % (int(self.host_mem)*1024)
        self.host_cpu = '1'
        self.host_extra_opts = 'test'
        self.host_family = 'xen'
        self.host_storage_layout = 'basic'
        self.host_network_layout = 'with_internet'
        self.host_type = 'full'
Ejemplo n.º 17
0
 def __init__(self, methodName):
     """Setup config data."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.tftp_root = self.config.get('TFTP', 'tftp_root')
     self.tftp_conf_dir = self.config.get('TFTP', 'tftp_conf_dir')
     self.tftp_mac_prefix = self.config.get('TFTP', 'tftp_mac_prefix')
     self.mac = '00:0C:29:57:3B:31'
     self.template = 'testfile.template'
     self.run_id = 23123132
     self.tftp_dir = self.tftp_root + "/" + self.tftp_conf_dir + "/"
Ejemplo n.º 18
0
 def __init__(self, methodName):
     """Setup config data."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.tftp_root = self.config.get('TFTP', 'tftp_root')
     self.tftp_conf_dir = self.config.get('TFTP', 'tftp_conf_dir')
     self.tftp_mac_prefix = self.config.get('TFTP', 'tftp_mac_prefix')
     self.mac = '00:0C:29:57:3B:31'
     self.template = 'testfile.template'
     self.run_id = 23123132
     self.tftp_dir = self.tftp_root + "/" + self.tftp_conf_dir + "/"
Ejemplo n.º 19
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.org_name = 'SpokeOrgTest'
     self.org_suffix_name = 'spokeorg.com'
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 1 # ldap.ONELEVEL
     self.retrieve_attr = None
     self.org_class = self.config.get('ATTR_MAP', 'org_class')
     self.user_class = self.config.get('ATTR_MAP', 'user_class')
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')   
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.org_suffix_attr = self.config.get('ATTR_MAP', 'org_suffix')
     self.container_class = self.config.get('ATTR_MAP', 'container_class')
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
Ejemplo n.º 20
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.org_name = 'SpokeOrgTest'
     self.org_suffix_name = 'spokeorg.com'
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 1  # ldap.ONELEVEL
     self.retrieve_attr = None
     self.org_class = self.config.get('ATTR_MAP', 'org_class')
     self.user_class = self.config.get('ATTR_MAP', 'user_class')
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.org_suffix_attr = self.config.get('ATTR_MAP', 'org_suffix')
     self.container_class = self.config.get('ATTR_MAP', 'container_class')
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
Ejemplo n.º 21
0
 def __init__(self, cn, requester=None, ca=None):    
     """Get config, setup logging."""
     self.config = config.setup()
     self.log = logger.log_to_console()
     if not requester:
         requester = self.config.get('CA', 'ca_default_ca')
     requester = common.is_shell_safe(requester)
     self.is_a_ca = ca
     self.reqca = SpokeCA(requester)
     if not self.reqca.get()['data']:
         msg = 'CA %s does not exist; please create' % requester
         raise error.NotFound(msg)
     if self.is_a_ca:
         self.cn = common.is_shell_safe(cn)
         self.req_file = self.reqca.ca_req_file
         self.key_file = self.reqca.ca_key_file
     else: # We're dealing with a host CSR
         self.cn = common.validate_domain(cn)
         key_name = '%s.key.pem' % cn
         req_name = '%s.req' % cn
         self.key_file = os.path.join(self.reqca.ca_dir, key_name)
         self.req_file = os.path.join(self.reqca.ca_dir, req_name)
Ejemplo n.º 22
0
 def __init__(self, methodName):
     """Setup config data and hypervisor connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.hv_uri = 'test:///default'
     #self.xen_uuid_template = '00000000-0000-0000-0000-XXXXXXXXXXXX'
     self.vm_name = 'testhost'
     self.vm_uuid = '1'
     self.vm_mem = '256'
     self.vm_cpu = '1'
     self.vm_family = 'test'
     self.vm_storage_layout = 'basic'
     self.vm_network_layout = 'with_internet'
     #self.vm_extra_opts = 'test'
     #self.vm_type = 'full'
     self.vm_install = True
     self.vm_disks=None
     self.vm_interfaces=None
Ejemplo n.º 23
0
 def __init__(self, cn, requester=None, ca=None):
     """Get config, setup logging."""
     self.config = config.setup()
     self.log = logger.log_to_console()
     if not requester:
         requester = self.config.get('CA', 'ca_default_ca')
     requester = common.is_shell_safe(requester)
     self.is_a_ca = ca
     self.reqca = SpokeCA(requester)
     if not self.reqca.get()['data']:
         msg = 'CA %s does not exist; please create' % requester
         raise error.NotFound(msg)
     if self.is_a_ca:
         self.cn = common.is_shell_safe(cn)
         self.req_file = self.reqca.ca_req_file
         self.key_file = self.reqca.ca_key_file
     else:  # We're dealing with a host CSR
         self.cn = common.validate_domain(cn)
         key_name = '%s.key.pem' % cn
         req_name = '%s.req' % cn
         self.key_file = os.path.join(self.reqca.ca_dir, key_name)
         self.req_file = os.path.join(self.reqca.ca_dir, req_name)
Ejemplo n.º 24
0
 def __init__(self, methodName):
     """Setup config data and hypervisor connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.hv_uri = 'test:///default'
     #self.xen_uuid_template = '00000000-0000-0000-0000-XXXXXXXXXXXX'
     self.vm_name = 'testhost'
     self.vm_uuid = '1'
     self.vm_mem = '256'
     self.vm_cpu = '1'
     self.vm_family = 'test'
     self.vm_storage_layout = 'basic'
     self.vm_network_layout = 'with_internet'
     #self.vm_extra_opts = 'test'
     #self.vm_type = 'full'
     self.vm_install = True
     self.vm_disks = None
     self.vm_interfaces = None
Ejemplo n.º 25
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     try:
         self.ldap = directory.SpokeLDAP()
     except:
         raise
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2
     self.retrieve_attr = None
     self.org_names = ['test', 'test1']
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')           
     self.org_children = self.org_def_children.split(',')
     self.user_key = self.config.get('ATTR_MAP', 'user_key') 
     self.first = 'kris'
     self.last = 'saxton'
     self.user_id = self.first + self.last      
Ejemplo n.º 26
0
 def __init__(self, methodName):
     """Setup config data."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.lv_units = self.config.get('LVM', 'lv_units')
     self.lv_name = 'testlv01'
     self.lv_size = 1
     self.TWOPLACES = decimal.Decimal(10) ** -2  # same as Decimal('0.01')
     self.lv_size_dec = str(decimal.Decimal(self.lv_size).quantize(self.TWOPLACES))
     self.lv_size_fmt = self.lv_size_dec + self.lv_units.upper()
     self.vg_name = test_vg_name
     # If we don't get an empty volume group here, abort
     try:
         self.lvm = SpokeLVM(self.vg_name)
         lv_list = self.lvm.get()['data']
     except Exception, e:
         print 'Exception'
         print e
         sys.exit(1)
Ejemplo n.º 27
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2 # ldap.SCOPE_SUBTREE
     self.retrieve_attr = None
     self.org_name = 'SpokeEmailTest'
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
     self.user_container = self.config.get('ATTR_MAP', 'user_container')
     self.user_key = self.config.get('ATTR_MAP', 'user_key')
     self.first = 'timmy'
     self.last = 'test'
     self.user_id = self.first + self.last
     self.user_class = self.config.get('ATTR_MAP', 'user_class')
     self.email_dom = 'test.email.loc'
     self.email_addr = self.user_id + '@' + self.email_dom
     self.imap_class = self.config.get('ATTR_MAP', 'imap_class')
     self.imap_enable = self.config.get('ATTR_MAP', 'imap_enable')
     self.imap_mailbox = self.config.get('ATTR_MAP', 'imap_mailbox')
     self.imap_domain = self.config.get('ATTR_MAP', 'imap_domain')
     self.imap_partition = self.config.get('ATTR_MAP', 'imap_partition')
     self.imap_partition_def = self.config.get('ATTR_MAP', \
                                             'imap_partition_def')
     self.smtp_class = self.config.get('ATTR_MAP', 'smtp_class')
     self.smtp_domain = self.config.get('ATTR_MAP', 'smtp_domain')
     self.smtp_address = self.config.get('ATTR_MAP', 'smtp_address')
     self.smtp_destination = self.config.get('ATTR_MAP', 'smtp_destination')
     self.smtp_enable = self.config.get('ATTR_MAP', 'smtp_enable')
     self.smtp_pri_address = self.config.get('ATTR_MAP', 'smtp_pri_address')
Ejemplo n.º 28
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2  # ldap.SCOPE_SUBTREE
     self.retrieve_attr = None
     self.org_name = 'SpokeEmailTest'
     self.org_attr = self.config.get('ATTR_MAP', 'org_attr')
     self.org_def_children = self.config.get('ATTR_MAP', 'org_def_children')
     self.org_children = self.org_def_children.split(',')
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
     self.user_container = self.config.get('ATTR_MAP', 'user_container')
     self.user_key = self.config.get('ATTR_MAP', 'user_key')
     self.first = 'timmy'
     self.last = 'test'
     self.user_id = self.first + self.last
     self.user_class = self.config.get('ATTR_MAP', 'user_class')
     self.email_dom = 'test.email.loc'
     self.email_addr = self.user_id + '@' + self.email_dom
     self.imap_class = self.config.get('ATTR_MAP', 'imap_class')
     self.imap_enable = self.config.get('ATTR_MAP', 'imap_enable')
     self.imap_mailbox = self.config.get('ATTR_MAP', 'imap_mailbox')
     self.imap_domain = self.config.get('ATTR_MAP', 'imap_domain')
     self.imap_partition = self.config.get('ATTR_MAP', 'imap_partition')
     self.imap_partition_def = self.config.get('ATTR_MAP', \
                                             'imap_partition_def')
     self.smtp_class = self.config.get('ATTR_MAP', 'smtp_class')
     self.smtp_domain = self.config.get('ATTR_MAP', 'smtp_domain')
     self.smtp_address = self.config.get('ATTR_MAP', 'smtp_address')
     self.smtp_destination = self.config.get('ATTR_MAP', 'smtp_destination')
     self.smtp_enable = self.config.get('ATTR_MAP', 'smtp_enable')
     self.smtp_pri_address = self.config.get('ATTR_MAP', 'smtp_pri_address')
Ejemplo n.º 29
0
 def __init__(self, methodName):
     """Setup config data."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.lv_units = self.config.get('LVM', 'lv_units')
     self.lv_name = 'testlv01'
     self.lv_size = 1
     self.TWOPLACES = decimal.Decimal(10)**-2  # same as Decimal('0.01')
     self.lv_size_dec = str(
         decimal.Decimal(self.lv_size).quantize(self.TWOPLACES))
     self.lv_size_fmt = self.lv_size_dec + self.lv_units.upper()
     self.vg_name = test_vg_name
     # If we don't get an empty volume group here, abort
     try:
         self.lvm = SpokeLVM(self.vg_name)
         lv_list = self.lvm.get()['data']
     except Exception, e:
         print 'Exception'
         print e
         sys.exit(1)
Ejemplo n.º 30
0
 def __init__(self, methodName):
     """Setup config data and LDAP connection."""
     unittest.TestCase.__init__(self, methodName)
     common_config = '../../contrib/spoke.conf'
     custom_config = '/tmp/spoke.conf'
     config_files = (common_config, custom_config)
     self.config = config.setup(config_files)
     self.log = logger.log_to_console()
     self.base_dn = self.config.get('LDAP', 'basedn')
     self.search_scope = 2  # ldap.SUB
     self.retrieve_attr = None
     self.container_attr = self.config.get('ATTR_MAP', 'container_attr')
     self.user_container = self.config.get('ATTR_MAP', 'user_container')
     self.user_key = self.config.get('ATTR_MAP', 'user_key')
     self.svn_class = self.config.get('VCS', 'svn_class')
     self.svn_repo_attr = self.config.get('VCS', 'svn_repo_attr')
     self.svn_enable_attr = self.config.get('VCS', 'svn_enable_attr')
     self.org_name = 'SpokeOrgSvnTest'
     self.first = 'simon'
     self.last = 'sourcecontrol'
     self.user_id = self.first + self.last
     self.email_dom = 'test.user.org'
     self.email_addr = self.user_id + '@' + self.email_dom
     self.svn_repo_name = 'main'
Ejemplo n.º 31
0
    def __init__(self, ca_name):
        """Get config, setup logging."""
        self.config = config.setup()
        self.log = logger.log_to_console()
        self.ca_name = common.is_shell_safe(ca_name)
        self.ca_base_dir = self.config.get('CA', 'ca_base_dir')
        self.ca_dir = os.path.join(self.ca_base_dir, self.ca_name)
        self.ca_key_rdir = self.config.get('CA', 'ca_key_dir', 'private')
        self.ca_cert_rdir = self.config.get('CA', 'ca_cert_dir', 'certs')
        self.ca_req_rdir = self.config.get('CA', 'ca_req_dir', 'reqs')
        self.ca_cert_name = self.config.get('CA', 'ca_pub_cert', 'ca-cert.pem')
        self.ca_bundle_name = self.config.get('CA', 'ca_bundle',
                                              'ca-bundle.pem')
        self.ca_req_name = self.config.get('CA', 'ca_req', 'ca-req.pem')
        self.ca_key_name = self.config.get('CA', 'ca_priv_key', 'ca-key.pem')
        self.ca_index_name = self.config.get('CA', 'ca_index', 'index')
        self.ca_serial_name = self.config.get('CA', 'ca_serial', 'serial')
        self.ca_cert_dir = os.path.join(self.ca_dir, self.ca_cert_rdir)
        self.ca_key_dir = os.path.join(self.ca_dir, self.ca_key_rdir)
        self.ca_req_dir = os.path.join(self.ca_dir, self.ca_req_rdir)
        self.ca_cert_file = os.path.join(self.ca_cert_dir, self.ca_cert_name)
        self.ca_bundle_file = os.path.join(self.ca_base_dir,
                                           self.ca_bundle_name)

        self.ca_key_file = os.path.join(self.ca_key_dir, self.ca_key_name)
        self.ca_req_file = os.path.join(self.ca_req_dir, self.ca_req_name)
        self.ca_index_file = os.path.join(self.ca_cert_dir, self.ca_index_name)
        self.ca_serial_file = os.path.join(self.ca_dir, self.ca_serial_name)

        self.ca_key = os.path.join(self.ca_key_dir, self.ca_key_file)
        self.ca_cert = os.path.join(self.ca_cert_dir, self.ca_cert_file)
        self.req_dirs = [
            self.ca_base_dir, self.ca_dir, self.ca_key_dir, self.ca_req_dir,
            self.ca_cert_dir
        ]
        self.req_files = [
            self.ca_index_file, self.ca_serial_file, self.ca_key_file,
            self.ca_cert_file
        ]
        try:
            ca_cert = X509.load_cert(self.ca_cert_file, format=1)
            self.ca_cn = ca_cert.get_subject().CN
            self.ca_cert_as_pem = ca_cert.as_pem()
        except:
            msg = 'CA cert file %s does not exist' % self.ca_cert_file
            self.log.debug(msg)
        self.ca_country = self.config.get('CA', 'ca_country', 'GB')
        try:
            self.ca_state = self.config.get('CA', 'ca_state')
        except:
            self.ca_state = None
        self.ca_locality = self.config.get('CA', 'ca_locality', 'London')
        self.ca_org = self.config.get('CA', 'ca_org', 'Acme Ltd')
        self.ca_ou = self.config.get('CA', 'ca_ou', 'Certificate Services')
        self.ca_email = self.config.get('CA', 'ca_email', '*****@*****.**')
        self.ca_def_duration = self.config.get('CA', 'ca_def_duration', 1095)
        self.ca_keypass = self.config.get('CA', 'ca_keypass', '')
        # Try to get some more info from req/cert files if they are present
        self.ca_info = self._get_ca_info()
        try:
            self.ca_cn = self.ca_info['ca_cn']
        except:
            pass
        try:
            self.ca_cert_as_pem = self.ca_info['ca_cert_as_pem']
        except:
            pass