def create(mac=None, template=None, run_id=None): ''' Create a config for a specific MAC from a template run_id is optional CLI Examples:: salt '*' tftp.create template='test.template' mac='11:22:33:44:55:66' salt '*' tftp.create template='test.template' mac='11:22:33:44:55:66'\\ run_id=2590 ''' if mac is None or template is None: return "mac and template must be specified" conf = _spoke_config(_salt_config('config')) tftproot = conf.get("TFTP", "tftp_root") tftp = SpokeTFTP(tftproot) if run_id is None: try: result = tftp.create(mac, template) except error.SpokeError as e: result = common.handle_error(e) else: try: result = tftp.create(mac, template, run_id) except error.SpokeError as e: result = common.handle_error(e) return result
def subnet_create(dhcp_server, subnet, mask, start_ip=None, stop_ip=None): try: from spoke.lib.dhcp import SpokeDHCPSubnet subnet= SpokeDHCPSubnet(dhcp_server) result = subnet.create(subnet, mask, start_ip, stop_ip) except error.SpokeError as e: result = common.handle_error(e) return result
def delete(network, mask): try: from spoke.lib.ip import SpokeSubnet subnet = SpokeSubnet(ip=network, mask=mask, dc=None) result = subnet.delete() except error.SpokeError as e: result = common.handle_error(e) return result
def subnet_search(dhcp_server, subnet): try: from spoke.lib.dhcp import SpokeDHCPSubnet subnet = SpokeDHCPSubnet(dhcp_server) result = subnet.get(subnet) except error.SpokeError as e: result = common.handle_error(e) return result
def host_delete(org_name, host_name): try: conf = _spoke_config(_salt_config('config')) host = SpokeHost(org_name) result = host.delete(host_name) except error.SpokeError as e: result = common.handle_error(e) return result
def uuid_create(start_uuid=None, get_mac=False): try: from spoke.lib.host import SpokeHostUUID uuid = SpokeHostUUID() result = uuid.create(start_uuid, get_mac) except error.SpokeError as e: result = common.handle_error(e) return result
def uuid_delete(): try: from spoke.lib.host import SpokeHostUUID uuid = SpokeHostUUID() result = uuid.delete() except error.SpokeError as e: result = common.handle_error(e) return result
def host_delete(org_name, host_name): from spoke.lib.host import SpokeHost try: host = SpokeHost(org_name) result = host.delete(host_name) except error.SpokeError as e: result = common.handle_error(e) return result
def power_modify(vm_name, state): from spoke.lib.vm_power import SpokeVMPowerXen vmp = SpokeVMPowerXen(hv_uri, vm_name) try: result = vmp.modify(state) except error.SpokeError as e: result = common.handle_error(e) return result
def power_search(vm_name): from spoke.lib.vm_power import SpokeVMPowerXen vmp = SpokeVMPowerXen(hv_uri, vm_name) try: result = vmp.get() except error.SpokeError as e: result = common.handle_error(e) return result
def uuid_reserve(qty=1, get_mac=False): try: from spoke.lib.host import SpokeHostUUID uuid = SpokeHostUUID() result = uuid.modify(qty, get_mac) except error.SpokeError as e: result = common.handle_error(e) return result
def uuid_create(start_uuid=None, get_mac=False): try: conf = _spoke_config(_salt_config('config')) uuid = SpokeHostUUID() result = uuid.create(start_uuid, get_mac) except error.SpokeError as e: result = common.handle_error(e) return result
def uuid_delete(): try: conf = _spoke_config(_salt_config('config')) uuid = SpokeHostUUID() result = uuid.delete() except error.SpokeError as e: result = common.handle_error(e) return result
def reservation_delete(dhcp_server, dhcp_group, host_name): try: from spoke.lib.dhcp import SpokeDHCPHost host = SpokeDHCPHost(dhcp_server, dhcp_group) result = host.delete(host_name) except error.SpokeError as e: result = common.handle_error(e) return result
def group_search(dhcp_server, dhcp_group): try: from spoke.lib.dhcp import SpokeDHCPGroup group = SpokeDHCPGroup(dhcp_server) result = group.get(dhcp_group) except error.SpokeError as e: result = common.handle_error(e) return result
def uuid_reserve(qty=1, get_mac=False): try: conf = _spoke_config(_salt_config('config')) uuid = SpokeHostUUID() result = uuid.modify(qty, get_mac) except error.SpokeError as e: result = common.handle_error(e) return result
def delete(network, mask): try: conf = _spoke_config(_salt_config('config')) subnet = SpokeSubnet(ip=network, mask=mask, dc=None) result = subnet.delete() except error.SpokeError as e: result = common.handle_error(e) return result
def server_search(server): try: from spoke.lib.dhcp import SpokeDHCPServer server = SpokeDHCPServer() result = server.get(server) except error.SpokeError as e: result = common.handle_error(e) return result
def attr_search(dhcp_server, dhcp_group, dhcp_host, attr_type): try: from spoke.lib.dhcp import SpokeDHCPAttr attr = SpokeDHCPAttr(dhcp_server, dhcp_group, dhcp_host) result = attr.get(attr_type) except error.SpokeError as e: result = common.handle_error(e) return result
def store_delete(vm_name): from spoke.lib.vm_storage import SpokeVMStorageXen vms = SpokeVMStorageXen(hv_uri) try: result = vms.delete(vm_name) except error.SpokeError as e: result = common.handle_error(e) return result
def host_search(dhcp_server, dhcp_group, dhcp_host): try: from spoke.lib.dhcp import SpokeDHCPHost host = SpokeDHCPHost(dhcp_server, dhcp_group) result = host.get(dhcp_host) except error.SpokeError as e: result = common.handle_error(e) return result
def release(network, mask, ip): try: from spoke.lib.ip import SpokeSubnet subnet = SpokeSubnet(ip=network, mask=mask, dc=None) result = subnet.modify(release=ip, reserve=None) except error.SpokeError as e: result = common.handle_error(e) return result
def create(vg_name, lv_name, lv_size): from spoke.lib.lvm import SpokeLVM lv = SpokeLVM(vg_name) try: result = lv.create(lv_name, lv_size) except error.SpokeError as e: result = common.handle_error(e) return result
def release(network, mask, ip): try: conf = _spoke_config(_salt_config('config')) subnet = SpokeSubnet(ip=network, mask=mask, dc=None) result = subnet.modify(release=ip, reserve=None) except error.SpokeError as e: result = common.handle_error(e) return result
def service_delete(service): try: from spoke.lib.dhcp import SpokeDHCPService service = SpokeDHCPService() result = service.delete(service) except error.SpokeError as e: result = common.handle_error(e) return result
def search(vg_name, lv_name=None): from spoke.lib.lvm import SpokeLVM lv = SpokeLVM(vg_name) try: result = lv.get(lv_name) except error.SpokeError as e: result = common.handle_error(e) return result
def subnet_create(dhcp_server, subnet, mask, start_ip=None, stop_ip=None): try: from spoke.lib.dhcp import SpokeDHCPSubnet subnet = SpokeDHCPSubnet(dhcp_server) result = subnet.create(subnet, mask, start_ip, stop_ip) except error.SpokeError as e: result = common.handle_error(e) return result
def uuid_search(get_mac=False): try: conf = _spoke_config(_salt_config('config')) uuid = SpokeHostUUID() print 'My Get_mac is {0}'.format(get_mac) result = uuid.get(get_mac=get_mac) except error.SpokeError as e: result = common.handle_error(e) return result
def power_modify(vm_name, state): try: conf = _spoke_config(_salt_config('config')) hv_uri = conf.get('VM', 'hv_uri') vmp = SpokeVMPowerXen(hv_uri, vm_name) result = vmp.modify(state) except error.SpokeError as e: result = common.handle_error(e) return result
def store_delete(vm_name): try: conf = _spoke_config(_salt_config('config')) hv_uri = conf.get('VM', 'hv_uri') vms = SpokeVMStorageXen(hv_uri) result = vms.delete(vm_name) except error.SpokeError as e: result = common.handle_error(e) return result
def power_delete(vm_name, force=False): try: conf = _spoke_config(_salt_config('config')) hv_uri = conf.get('VM', 'hv_uri') vmp = SpokeVMPowerXen(hv_uri, vm_name) result = vmp.delete(force=force) except error.SpokeError as e: result = common.handle_error(e) return result