kickstartFileContent.replaceRootpw(rootpw) kickstartFileContent.elReplaceHostname(exampleVm.basenameStem) kickstartFileContent.elReplaceStaticIP(ipaddress, nameservers=Nameserver.list) # put in DHCP at eth0, to be used with NAT, works well if before hostonly #kickstartFileContent.elReplaceStaticIP(ipaddress, nameservers=[]) #kickstartFileContent.elAddNetworkConfigurationWithDhcp("eth0") # some possible modifications pointed out #kickstartFileContent.replaceAllPackages(ElKickstartTemplates.packagesOfSL64Minimal) #kickstartFileContent.removePackage("@office-suite") #kickstartFileContent.addPackage("httpd") # some other possible modifications pointed out #kickstartFileContent.replaceAllPackages(ElKickstartTemplates.packagesOfSL64MinimalDesktop) #kickstartFileContent.elActivateGraphicalLogin() for additionalUser in additionalUsers: kickstartFileContent.elAddUser(additionalUser[0], pwd=additionalUser[1]) # some possible modifications pointed out #kickstartFileContent.setSwappiness(10) # pick right temporary directory, ideally same as VM modifiedDistroIsoImage = downloadedDistroIsoImage.cloneWithAutoBootingKickstart \ (kickstartFileContent, cloneIsoImagePath=os.path.join(exampleVm.directory, "made-to-order-os-install.iso")) # some necessary choices pointed out # 32-bit versus 64-bit linux, memsizeMegabytes needs to be more for 64-bit, guestOS is "centos" versus "centos-64" exampleVm.create(memsizeMegabytes=1200, guestOS="centos", ideDrives=[20000, 300, modifiedDistroIsoImage]) # some possible modifications pointed out #exampleVm.vmxFile.setMemorySize(1280) #exampleVm.vmxFile.setNumberOfProcessors(2) #exampleVm.vmxFile.setAccelerate3D()
if __name__ == "__main__": from nrvr.distros.el.kickstart import ElKickstartFileContent from nrvr.distros.el.kickstarttemplates import ElKickstartTemplates _kickstartFileContent = ElKickstartFileContent(ElKickstartTemplates.usableElKickstartTemplate001) _kickstartFileContent.replaceLang("de_DE.UTF-8") _kickstartFileContent.replaceRootpw("redwood") _kickstartFileContent.elReplaceHostname("test-hostname-101") _kickstartFileContent.elReplaceStaticIP("10.123.45.67") _kickstartFileContent.addPackage("another-package-for-testing") _kickstartFileContent.addPackage("@another-package-group-for-testing") _kickstartFileContent.addPackage("@base") _kickstartFileContent.removePackage("@client-mgmt-tools") _kickstartFileContent.removeAllPackages() _kickstartFileContent.addPackage("made-something-up-for-testing") _kickstartFileContent.replaceAllPackages(["@package-group-1-for-testing", "@package-group-2-for-testing", "@package-group-3-for-testing", "package-a-for-testing", "package-b-for-testing", "package-c-for-testing"]) _kickstartFileContent.elAddNetworkConfigurationWithDhcp("eth1") _kickstartFileContent.elAddNetworkConfigurationWithDhcp("eth0") _kickstartFileContent.elActivateGraphicalLogin() _kickstartFileContent.elAddUser("jack", pwd="rainbow") _kickstartFileContent.elAddUser("jill", "sunshine") _kickstartFileContent.elAddUser("pat") _kickstartFileContent.sectionByName("%post").string = "\n#\n%post\n# replaced all of %post this time, just for testing\n" _kickstartFileContent.setSwappiness(30) print _kickstartFileContent.string
kickstartFileContent = ElKickstartFileContent(ElKickstartTemplates.usableElKickstartTemplate001) kickstartFileContent.replaceRootpw(rootpw) kickstartFileContent.elReplaceHostname(exampleVm.basenameStem) kickstartFileContent.elReplaceStaticIP(ipaddress, nameservers=Nameserver.list) # put in DHCP at eth0, to be used with NAT, works well if before hostonly #kickstartFileContent.elReplaceStaticIP(ipaddress, nameservers=[]) #kickstartFileContent.elAddNetworkConfigurationWithDhcp("eth0") # some possible modifications pointed out #kickstartFileContent.replaceAllPackages(ElKickstartTemplates.packagesOfSL64Minimal) #kickstartFileContent.removePackage("@office-suite") #kickstartFileContent.addPackage("httpd") # some other possible modifications pointed out #kickstartFileContent.replaceAllPackages(ElKickstartTemplates.packagesOfSL64MinimalDesktop) #kickstartFileContent.elActivateGraphicalLogin() for additionalUser in additionalUsers: kickstartFileContent.elAddUser(additionalUser[0], pwd=additionalUser[1]) # some possible modifications pointed out #kickstartFileContent.setSwappiness(10) # pick right temporary directory, ideally same as VM modifiedDistroIsoImage = downloadedDistroIsoImage.cloneWithAutoBootingKickstart \ (kickstartFileContent, cloneIsoImagePath=os.path.join(exampleVm.directory, "made-to-order-os-install.iso")) # some necessary choices pointed out # 32-bit versus 64-bit linux, memsizeMegabytes needs to be more for 64-bit, guestOS is "centos" versus "centos-64" exampleVm.create(memsizeMegabytes=1200, guestOS="centos", ideDrives=[40000, 300, modifiedDistroIsoImage]) # some possible modifications pointed out #exampleVm.vmxFile.setMemorySize(1280) #exampleVm.vmxFile.setNumberOfProcessorCores(2) #exampleVm.vmxFile.setAccelerate3D() exampleVm.portsFile.setSsh(ipaddress=ipaddress, user="******", pwd=rootpw) exampleVm.portsFile.setShutdown()
from nrvr.distros.el.kickstart import ElKickstartFileContent from nrvr.distros.el.kickstarttemplates import ElKickstartTemplates _kickstartFileContent = ElKickstartFileContent( ElKickstartTemplates.usableElKickstartTemplate001) _kickstartFileContent.replaceLang("de_DE.UTF-8") _kickstartFileContent.replaceRootpw("redwood") _kickstartFileContent.elReplaceHostname("test-hostname-101") _kickstartFileContent.elReplaceStaticIP("10.123.45.67") _kickstartFileContent.addPackage("another-package-for-testing") _kickstartFileContent.addPackage("@another-package-group-for-testing") _kickstartFileContent.addPackage("@base") _kickstartFileContent.removePackage("@client-mgmt-tools") _kickstartFileContent.removeAllPackages() _kickstartFileContent.addPackage("made-something-up-for-testing") _kickstartFileContent.replaceAllPackages([ "@package-group-1-for-testing", "@package-group-2-for-testing", "@package-group-3-for-testing", "package-a-for-testing", "package-b-for-testing", "package-c-for-testing" ]) _kickstartFileContent.elAddNetworkConfigurationWithDhcp("eth1") _kickstartFileContent.elAddNetworkConfigurationWithDhcp("eth0") _kickstartFileContent.elActivateGraphicalLogin() _kickstartFileContent.elAddUser("jack", pwd="rainbow") _kickstartFileContent.elAddUser("jill", "sunshine") _kickstartFileContent.elAddUser("pat") _kickstartFileContent.sectionByName( "%post" ).string = "\n#\n%post\n# replaced all of %post this time, just for testing\n" _kickstartFileContent.setSwappiness(30) print _kickstartFileContent.string