def foreman_discovery(self): """Steps to Configure foreman discovery 1. Build PXE default template 2. Create Organization/Location 3. Update Global parameters to set default org and location for discovered hosts. 4. Enable auto_provision flag to perform discovery via discovery rules. """ # Build PXE default template to get default PXE file Template.build_pxe_default() # let's just modify the timeouts to speed things up ssh.command("sed -ie 's/TIMEOUT [[:digit:]]\\+/TIMEOUT 1/g' " "/var/lib/tftpboot/pxelinux.cfg/default") ssh.command("sed -ie '/APPEND initrd/s/$/ fdi.countdown=1/' " "/var/lib/tftpboot/pxelinux.cfg/default") # Create Org and location org = make_org() loc = make_location() # Get default settings values default_discovery_loc = Settings.list( {'search': 'name=discovery_location'})[0] default_discovery_org = Settings.list( {'search': 'name=discovery_organization'})[0] default_discovery_auto = Settings.list({'search': 'name=discovery_auto'})[0] # Update default org and location params to place discovered host Settings.set({'name': 'discovery_location', 'value': loc['name']}) Settings.set({'name': 'discovery_organization', 'value': org['name']}) # Enable flag to auto provision discovered hosts via discovery rules Settings.set({'name': 'discovery_auto', 'value': 'true'}) # Flag which shows whether environment is fully configured for # discovered host provisioning. configured_env = configure_env_for_provision(org=org, loc=loc) yield { 'default_discovery_auto': default_discovery_auto, 'default_discovery_loc': default_discovery_loc, 'default_discovery_org': default_discovery_org, 'configured_env': configured_env, } # Restore default global setting's values Settings.set({ 'name': 'discovery_location', 'value': default_discovery_loc['value'] }) Settings.set({ 'name': 'discovery_organization', 'value': default_discovery_org['value'] }) Settings.set({ 'name': 'discovery_auto', 'value': default_discovery_auto['value'] })
def setUpClass(cls): """Steps to Configure foreman discovery 1. Build PXE default template 2. Create Organization/Location 3. Update Global parameters to set default org and location for discovered hosts. 4. Enable auto_provision flag to perform discovery via discovery rules. """ super(DiscoveredTestCase, cls).setUpClass() # Build PXE default template to get default PXE file Template.build_pxe_default() # let's just modify the timeouts to speed things up ssh.command("sed -ie 's/TIMEOUT [[:digit:]]\\+/TIMEOUT 1/g' " "/var/lib/tftpboot/pxelinux.cfg/default") ssh.command("sed -ie '/APPEND initrd/s/$/ fdi.countdown=1/' " "/var/lib/tftpboot/pxelinux.cfg/default") # Create Org and location cls.org = make_org() cls.loc = make_location() # Get default settings values cls.default_discovery_loc = Settings.list( {'search': 'name=%s' % 'discovery_location'})[0] cls.default_discovery_org = Settings.list( {'search': 'name=%s' % 'discovery_organization'})[0] cls.default_discovery_auto = Settings.list( {'search': 'name=%s' % 'discovery_auto'})[0] # Update default org and location params to place discovered host Settings.set({'name': 'discovery_location', 'value': cls.loc['name']}) Settings.set({ 'name': 'discovery_organization', 'value': cls.org['name'] }) # Enable flag to auto provision discovered hosts via discovery rules Settings.set({'name': 'discovery_auto', 'value': 'true'}) # Flag which shows whether environment is fully configured for # discovered host provisioning. cls.configured_env = False if bz_bug_is_open(1578290): ssh.command('mkdir /var/lib/tftpboot/boot/fdi-image') ssh.command('ln -s /var/lib/tftpboot/boot/' 'foreman-discovery-image-3.4.4-1.iso-vmlinuz' ' /var/lib/tftpboot/boot/fdi-image/vmlinuz0') ssh.command('ln -s /var/lib/tftpboot/boot/' 'foreman-discovery-image-3.4.4-1.iso-img' ' /var/lib/tftpboot/boot/fdi-image/initrd0.img') ssh.command('chown -R foreman-proxy /var/lib/tftpboot/boot/')
def setUpClass(cls): """Steps to Configure foreman discovery 1. Build PXE default template 2. Create Organization/Location 3. Update Global parameters to set default org and location for discovered hosts. 4. Enable auto_provision flag to perform discovery via discovery rules. """ super(DiscoveredTestCase, cls).setUpClass() # Build PXE default template to get default PXE file Template.build_pxe_default() # let's just modify the timeouts to speed things up ssh.command("sed -ie 's/TIMEOUT [[:digit:]]\\+/TIMEOUT 1/g' " "/var/lib/tftpboot/pxelinux.cfg/default") ssh.command("sed -ie '/APPEND initrd/s/$/ fdi.countdown=1/' " "/var/lib/tftpboot/pxelinux.cfg/default") # Create Org and location cls.org = make_org() cls.loc = make_location() # Get default settings values cls.default_discovery_loc = Settings.list( {'search': 'name=%s' % 'discovery_location'})[0] cls.default_discovery_org = Settings.list( {'search': 'name=%s' % 'discovery_organization'})[0] cls.default_discovery_auto = Settings.list( {'search': 'name=%s' % 'discovery_auto'})[0] # Update default org and location params to place discovered host Settings.set({'name': 'discovery_location', 'value': cls.loc['name']}) Settings.set( {'name': 'discovery_organization', 'value': cls.org['name']}) # Enable flag to auto provision discovered hosts via discovery rules Settings.set({'name': 'discovery_auto', 'value': 'true'}) # Flag which shows whether environment is fully configured for # discovered host provisioning. cls.configured_env = False if bz_bug_is_open(1578290): ssh.command('mkdir /var/lib/tftpboot/boot/fdi-image') ssh.command('ln -s /var/lib/tftpboot/boot/' 'foreman-discovery-image-3.4.4-1.iso-vmlinuz' ' /var/lib/tftpboot/boot/fdi-image/vmlinuz0') ssh.command('ln -s /var/lib/tftpboot/boot/' 'foreman-discovery-image-3.4.4-1.iso-img' ' /var/lib/tftpboot/boot/fdi-image/initrd0.img') ssh.command('chown -R foreman-proxy /var/lib/tftpboot/boot/')
def setUpClass(cls): """Steps to Configure foreman discovery 1. Build PXE default template 2. Create Organization/Location 3. Update Global parameters to set default org and location for discovered hosts. 4. Enable auto_provision flag to perform discovery via discovery rules. """ super(DiscoveredTestCase, cls).setUpClass() # Build PXE default template to get default PXE file Template.build_pxe_default() # Create Org and location cls.org = make_org() cls.loc = make_location() # Get default settings values cls.default_discovery_loc = Settings.list( {'search': 'name=%s' % 'discovery_location'})[0] cls.default_discovery_org = Settings.list( {'search': 'name=%s' % 'discovery_organization'})[0] cls.default_discovery_auto = Settings.list( {'search': 'name=%s' % 'discovery_auto'})[0] # Update default org and location params to place discovered host Settings.set({'name': 'discovery_location', 'value': cls.loc['name']}) Settings.set({ 'name': 'discovery_organization', 'value': cls.org['name'] }) # Enable flag to auto provision discovered hosts via discovery rules Settings.set({'name': 'discovery_auto', 'value': 'true'}) # Flag which shows whether environment is fully configured for # discovered host provisioning. cls.configured_env = False
def setUpClass(cls): """Steps to Configure foreman discovery 1. Build PXE default template 2. Create Organization/Location 3. Update Global parameters to set default org and location for discovered hosts. 4. Enable auto_provision flag to perform discovery via discovery rules. """ super(DiscoveredTestCase, cls).setUpClass() # Build PXE default template to get default PXE file Template.build_pxe_default() # Create Org and location cls.org = make_org() cls.loc = make_location() # Get default settings values cls.default_discovery_loc = Settings.list( {'search': 'name=%s' % 'discovery_location'})[0] cls.default_discovery_org = Settings.list( {'search': 'name=%s' % 'discovery_organization'})[0] cls.default_discovery_auto = Settings.list( {'search': 'name=%s' % 'discovery_auto'})[0] # Update default org and location params to place discovered host Settings.set({'name': 'discovery_location', 'value': cls.loc['name']}) Settings.set( {'name': 'discovery_organization', 'value': cls.org['name']}) # Enable flag to auto provision discovered hosts via discovery rules Settings.set({'name': 'discovery_auto', 'value': 'true'}) # Flag which shows whether environment is fully configured for # discovered host provisioning. cls.configured_env = False