Search in sources :

Example 51 with ConfigurationException

use of javax.naming.ConfigurationException in project cloudstack by apache.

the class ClusterManagerImpl method checkConflicts.

private void checkConflicts() throws ConfigurationException {
    final Date cutTime = DateUtil.currentGMTTime();
    final List<ManagementServerHostVO> peers = _mshostDao.getActiveList(new Date(cutTime.getTime() - HeartbeatThreshold.value()));
    for (final ManagementServerHostVO peer : peers) {
        final String peerIP = peer.getServiceIP().trim();
        if (_clusterNodeIP.equals(peerIP)) {
            if ("127.0.0.1".equals(_clusterNodeIP)) {
                if (pingManagementNode(peer.getMsid())) {
                    final String msg = "Detected another management node with localhost IP is already running, please check your cluster configuration";
                    s_logger.error(msg);
                    throw new ConfigurationException(msg);
                } else {
                    final String msg = "Detected another management node with localhost IP is considered as running in DB, however it is not pingable, we will continue cluster initialization with this management server node";
                    s_logger.info(msg);
                }
            } else {
                if (pingManagementNode(peer.getMsid())) {
                    final String msg = "Detected that another management node with the same IP " + peer.getServiceIP() + " is already running, please check your cluster configuration";
                    s_logger.error(msg);
                    throw new ConfigurationException(msg);
                } else {
                    final String msg = "Detected that another management node with the same IP " + peer.getServiceIP() + " is considered as running in DB, however it is not pingable, we will continue cluster initialization with this management server node";
                    s_logger.info(msg);
                }
            }
        }
    }
}
Also used : ConfigurationException(javax.naming.ConfigurationException) Date(java.util.Date)

Example 52 with ConfigurationException

use of javax.naming.ConfigurationException in project cloudstack by apache.

the class LibvirtCreatePrivateTemplateFromVolumeCommandWrapper method execute.

@Override
public Answer execute(final CreatePrivateTemplateFromVolumeCommand command, final LibvirtComputingResource libvirtComputingResource) {
    final String secondaryStorageURL = command.getSecondaryStorageUrl();
    KVMStoragePool secondaryStorage = null;
    KVMStoragePool primary = null;
    final KVMStoragePoolManager storagePoolMgr = libvirtComputingResource.getStoragePoolMgr();
    try {
        final String templateFolder = command.getAccountId() + File.separator + command.getTemplateId() + File.separator;
        final String templateInstallFolder = "/template/tmpl/" + templateFolder;
        secondaryStorage = storagePoolMgr.getStoragePoolByURI(secondaryStorageURL);
        try {
            primary = storagePoolMgr.getStoragePool(command.getPool().getType(), command.getPrimaryStoragePoolNameLabel());
        } catch (final CloudRuntimeException e) {
            if (e.getMessage().contains("not found")) {
                primary = storagePoolMgr.createStoragePool(command.getPool().getUuid(), command.getPool().getHost(), command.getPool().getPort(), command.getPool().getPath(), command.getPool().getUserInfo(), command.getPool().getType());
            } else {
                return new CreatePrivateTemplateAnswer(command, false, e.getMessage());
            }
        }
        final KVMPhysicalDisk disk = primary.getPhysicalDisk(command.getVolumePath());
        final String tmpltPath = secondaryStorage.getLocalPath() + File.separator + templateInstallFolder;
        final StorageLayer storage = libvirtComputingResource.getStorage();
        storage.mkdirs(tmpltPath);
        if (primary.getType() != StoragePoolType.RBD) {
            final String createTmplPath = libvirtComputingResource.createTmplPath();
            final int cmdsTimeout = libvirtComputingResource.getCmdsTimeout();
            final Script scriptCommand = new Script(createTmplPath, cmdsTimeout, s_logger);
            scriptCommand.add("-f", disk.getPath());
            scriptCommand.add("-t", tmpltPath);
            scriptCommand.add("-n", command.getUniqueName() + ".qcow2");
            final String result = scriptCommand.execute();
            if (result != null) {
                s_logger.debug("failed to create template: " + result);
                return new CreatePrivateTemplateAnswer(command, false, result);
            }
        } else {
            s_logger.debug("Converting RBD disk " + disk.getPath() + " into template " + command.getUniqueName());
            final QemuImgFile srcFile = new QemuImgFile(KVMPhysicalDisk.RBDStringBuilder(primary.getSourceHost(), primary.getSourcePort(), primary.getAuthUserName(), primary.getAuthSecret(), disk.getPath()));
            srcFile.setFormat(PhysicalDiskFormat.RAW);
            final QemuImgFile destFile = new QemuImgFile(tmpltPath + "/" + command.getUniqueName() + ".qcow2");
            destFile.setFormat(PhysicalDiskFormat.QCOW2);
            final QemuImg q = new QemuImg(0);
            try {
                q.convert(srcFile, destFile);
            } catch (final QemuImgException | LibvirtException e) {
                s_logger.error("Failed to create new template while converting " + srcFile.getFileName() + " to " + destFile.getFileName() + " the error was: " + e.getMessage());
            }
            final File templateProp = new File(tmpltPath + "/template.properties");
            if (!templateProp.exists()) {
                templateProp.createNewFile();
            }
            String templateContent = "filename=" + command.getUniqueName() + ".qcow2" + System.getProperty("line.separator");
            final DateFormat dateFormat = new SimpleDateFormat("MM_dd_yyyy");
            final Date date = new Date();
            templateContent += "snapshot.name=" + dateFormat.format(date) + System.getProperty("line.separator");
            try (FileOutputStream templFo = new FileOutputStream(templateProp)) {
                templFo.write(templateContent.getBytes("UTF-8"));
                templFo.flush();
            } catch (final IOException ex) {
                s_logger.error("CreatePrivateTemplateAnswer:Exception:" + ex.getMessage());
            }
        }
        final Map<String, Object> params = new HashMap<String, Object>();
        params.put(StorageLayer.InstanceConfigKey, storage);
        final Processor qcow2Processor = new QCOW2Processor();
        qcow2Processor.configure("QCOW2 Processor", params);
        final FormatInfo info = qcow2Processor.process(tmpltPath, null, command.getUniqueName());
        final TemplateLocation loc = new TemplateLocation(storage, tmpltPath);
        loc.create(1, true, command.getUniqueName());
        loc.addFormat(info);
        loc.save();
        return new CreatePrivateTemplateAnswer(command, true, null, templateInstallFolder + command.getUniqueName() + ".qcow2", info.virtualSize, info.size, command.getUniqueName(), ImageFormat.QCOW2);
    } catch (final InternalErrorException e) {
        return new CreatePrivateTemplateAnswer(command, false, e.toString());
    } catch (final IOException e) {
        return new CreatePrivateTemplateAnswer(command, false, e.toString());
    } catch (final ConfigurationException e) {
        return new CreatePrivateTemplateAnswer(command, false, e.toString());
    } catch (final CloudRuntimeException e) {
        return new CreatePrivateTemplateAnswer(command, false, e.toString());
    } finally {
        if (secondaryStorage != null) {
            storagePoolMgr.deleteStoragePool(secondaryStorage.getType(), secondaryStorage.getUuid());
        }
    }
}
Also used : StorageLayer(com.cloud.storage.StorageLayer) LibvirtException(org.libvirt.LibvirtException) Processor(com.cloud.storage.template.Processor) QCOW2Processor(com.cloud.storage.template.QCOW2Processor) HashMap(java.util.HashMap) KVMStoragePool(com.cloud.hypervisor.kvm.storage.KVMStoragePool) ConfigurationException(javax.naming.ConfigurationException) CloudRuntimeException(com.cloud.utils.exception.CloudRuntimeException) TemplateLocation(com.cloud.storage.template.TemplateLocation) QemuImgException(org.apache.cloudstack.utils.qemu.QemuImgException) Script(com.cloud.utils.script.Script) KVMStoragePoolManager(com.cloud.hypervisor.kvm.storage.KVMStoragePoolManager) KVMPhysicalDisk(com.cloud.hypervisor.kvm.storage.KVMPhysicalDisk) IOException(java.io.IOException) InternalErrorException(com.cloud.exception.InternalErrorException) Date(java.util.Date) QemuImg(org.apache.cloudstack.utils.qemu.QemuImg) QCOW2Processor(com.cloud.storage.template.QCOW2Processor) QemuImgFile(org.apache.cloudstack.utils.qemu.QemuImgFile) SimpleDateFormat(java.text.SimpleDateFormat) DateFormat(java.text.DateFormat) FileOutputStream(java.io.FileOutputStream) CreatePrivateTemplateAnswer(com.cloud.agent.api.storage.CreatePrivateTemplateAnswer) FormatInfo(com.cloud.storage.template.Processor.FormatInfo) QemuImgFile(org.apache.cloudstack.utils.qemu.QemuImgFile) File(java.io.File) SimpleDateFormat(java.text.SimpleDateFormat)

Example 53 with ConfigurationException

use of javax.naming.ConfigurationException in project cloudstack by apache.

the class NfsSecondaryStorageResource method configure.

@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
    _eth1ip = (String) params.get("eth1ip");
    _eth1mask = (String) params.get("eth1mask");
    if (_eth1ip != null) {
        // can only happen inside service vm
        params.put("private.network.device", "eth1");
    } else {
        s_logger.warn("eth1ip parameter has not been configured, assuming that we are not inside a system vm");
    }
    String eth2ip = (String) params.get("eth2ip");
    if (eth2ip != null) {
        params.put("public.network.device", "eth2");
    }
    _publicIp = (String) params.get("eth2ip");
    _hostname = (String) params.get("name");
    String inSystemVM = (String) params.get("secondary.storage.vm");
    if (inSystemVM == null || "true".equalsIgnoreCase(inSystemVM)) {
        s_logger.debug("conf secondary.storage.vm is true, act as if executing in SSVM");
        _inSystemVM = true;
    }
    _storageIp = (String) params.get("storageip");
    if (_storageIp == null && _inSystemVM) {
        s_logger.warn("There is no storageip in /proc/cmdline, something wrong!");
    }
    _storageNetmask = (String) params.get("storagenetmask");
    _storageGateway = (String) params.get("storagegateway");
    super.configure(name, params);
    _params = params;
    String value = (String) params.get("scripts.timeout");
    _timeout = NumbersUtil.parseInt(value, 1440) * 1000;
    _storage = (StorageLayer) params.get(StorageLayer.InstanceConfigKey);
    configureStorageLayerClass(params);
    if (_inSystemVM) {
        _storage.mkdirs(_parent);
    }
    _configSslScr = Script.findScript(getDefaultScriptsDir(), "config_ssl.sh");
    if (_configSslScr != null) {
        s_logger.info("config_ssl.sh found in " + _configSslScr);
    }
    _configAuthScr = Script.findScript(getDefaultScriptsDir(), "config_auth.sh");
    if (_configAuthScr != null) {
        s_logger.info("config_auth.sh found in " + _configAuthScr);
    }
    _configIpFirewallScr = Script.findScript(getDefaultScriptsDir(), "ipfirewall.sh");
    if (_configIpFirewallScr != null) {
        s_logger.info("_configIpFirewallScr found in " + _configIpFirewallScr);
    }
    createTemplateFromSnapshotXenScript = Script.findScript(getDefaultScriptsDir(), "create_privatetemplate_from_snapshot_xen.sh");
    if (createTemplateFromSnapshotXenScript == null) {
        throw new ConfigurationException("create_privatetemplate_from_snapshot_xen.sh not found in " + getDefaultScriptsDir());
    }
    _role = (String) params.get("role");
    if (_role == null) {
        _role = SecondaryStorageVm.Role.templateProcessor.toString();
    }
    s_logger.info("Secondary storage runs in role " + _role);
    _guid = (String) params.get("guid");
    if (_guid == null) {
        throw new ConfigurationException("Unable to find the guid");
    }
    _dc = (String) params.get("zone");
    if (_dc == null) {
        throw new ConfigurationException("Unable to find the zone");
    }
    _pod = (String) params.get("pod");
    _instance = (String) params.get("instance");
    if (!_inSystemVM) {
        _parent = (String) params.get("mount.path");
    }
    if (_inSystemVM) {
        _localgw = (String) params.get("localgw");
        if (_localgw != null) {
            // can only happen inside service vm
            String mgmtHosts = (String) params.get("host");
            for (final String mgmtHost : mgmtHosts.split(",")) {
                addRouteToInternalIpOrCidr(_localgw, _eth1ip, _eth1mask, mgmtHost);
            }
            String internalDns1 = (String) params.get("internaldns1");
            if (internalDns1 == null) {
                s_logger.warn("No DNS entry found during configuration of NfsSecondaryStorage");
            } else {
                addRouteToInternalIpOrCidr(_localgw, _eth1ip, _eth1mask, internalDns1);
            }
            String internalDns2 = (String) params.get("internaldns2");
            if (internalDns2 != null) {
                addRouteToInternalIpOrCidr(_localgw, _eth1ip, _eth1mask, internalDns2);
            }
        }
        startAdditionalServices();
        _params.put("install.numthreads", "50");
        _params.put("secondary.storage.vm", "true");
        _nfsVersion = retrieveNfsVersionFromParams(params);
    }
    try {
        _params.put(StorageLayer.InstanceConfigKey, _storage);
        _dlMgr = new DownloadManagerImpl();
        _dlMgr.configure("DownloadManager", _params);
        _upldMgr = new UploadManagerImpl();
        _upldMgr.configure("UploadManager", params);
    } catch (ConfigurationException e) {
        s_logger.warn("Caught problem while configuring DownloadManager", e);
        return false;
    }
    return true;
}
Also used : DownloadManagerImpl(org.apache.cloudstack.storage.template.DownloadManagerImpl) ConfigurationException(javax.naming.ConfigurationException) UploadManagerImpl(org.apache.cloudstack.storage.template.UploadManagerImpl)

Example 54 with ConfigurationException

use of javax.naming.ConfigurationException in project cloudstack by apache.

the class SecondaryStorageManagerImpl method configure.

@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
    if (s_logger.isInfoEnabled()) {
        s_logger.info("Start configuring secondary storage vm manager : " + name);
    }
    Map<String, String> configs = _configDao.getConfiguration("management-server", params);
    _secStorageVmMtuSize = NumbersUtil.parseInt(configs.get("secstorage.vm.mtu.size"), DEFAULT_SS_VM_MTUSIZE);
    boolean _useServiceVM = BooleanUtils.toBoolean(_configDao.getValue("secondary.storage.vm"));
    _useSSlCopy = BooleanUtils.toBoolean(_configDao.getValue("secstorage.encrypt.copy"));
    String ssvmUrlDomain = _configDao.getValue("secstorage.ssl.cert.domain");
    if (_useSSlCopy && StringUtils.isEmpty(ssvmUrlDomain)) {
        s_logger.warn("Empty secondary storage url domain, explicitly disabling SSL");
        _useSSlCopy = false;
    }
    _allowedInternalSites = _configDao.getValue("secstorage.allowed.internal.sites");
    String value = configs.get("secstorage.capacityscan.interval");
    _capacityScanInterval = NumbersUtil.parseLong(value, DEFAULT_CAPACITY_SCAN_INTERVAL_IN_MILLISECONDS);
    _instance = configs.get("instance.name");
    if (_instance == null) {
        _instance = "DEFAULT";
    }
    Map<String, String> agentMgrConfigs = _configDao.getConfiguration("AgentManager", params);
    value = agentMgrConfigs.get("port");
    _mgmtPort = NumbersUtil.parseInt(value, 8250);
    _listener = new SecondaryStorageListener(this);
    _agentMgr.registerForHostEvents(_listener, true, false, true);
    _itMgr.registerGuru(VirtualMachine.Type.SecondaryStorageVm, this);
    String configKey = Config.SecondaryStorageServiceOffering.key();
    String ssvmSrvcOffIdStr = configs.get(configKey);
    if (ssvmSrvcOffIdStr != null) {
        _serviceOffering = _offeringDao.findByUuid(ssvmSrvcOffIdStr);
        if (_serviceOffering == null) {
            try {
                s_logger.debug(String.format("Unable to find a service offering by the UUID for secondary storage VM with the value [%s] set in the configuration [%s]. Trying to find by the ID.", ssvmSrvcOffIdStr, configKey));
                _serviceOffering = _offeringDao.findById(Long.parseLong(ssvmSrvcOffIdStr));
                if (_serviceOffering == null) {
                    s_logger.info(String.format("Unable to find a service offering by the UUID or ID for secondary storage VM with the value [%s] set in the configuration [%s]", ssvmSrvcOffIdStr, configKey));
                }
            } catch (NumberFormatException ex) {
                s_logger.warn(String.format("Unable to find a service offering by the ID for secondary storage VM with the value [%s] set in the configuration [%s]. The value is not a valid integer number. Error: [%s].", ssvmSrvcOffIdStr, configKey, ex.getMessage()), ex);
            }
        }
    }
    if (_serviceOffering == null || !_serviceOffering.isSystemUse()) {
        int ramSize = NumbersUtil.parseInt(_configDao.getValue("ssvm.ram.size"), DEFAULT_SS_VM_RAMSIZE);
        int cpuFreq = NumbersUtil.parseInt(_configDao.getValue("ssvm.cpu.mhz"), DEFAULT_SS_VM_CPUMHZ);
        List<ServiceOfferingVO> offerings = _offeringDao.createSystemServiceOfferings("System Offering For Secondary Storage VM", ServiceOffering.ssvmDefaultOffUniqueName, 1, ramSize, cpuFreq, null, null, false, null, Storage.ProvisioningType.THIN, true, null, true, VirtualMachine.Type.SecondaryStorageVm, true);
        if (offerings == null || offerings.size() < 2) {
            String msg = "Unable to set a service offering for secondary storage VM. Verify if it was removed.";
            s_logger.error(msg);
            throw new ConfigurationException(msg);
        }
    }
    if (_useServiceVM) {
        _loadScanner = new SystemVmLoadScanner<>(this);
        _loadScanner.initScan(STARTUP_DELAY_IN_MILLISECONDS, _capacityScanInterval);
    }
    _httpProxy = configs.get(Config.SecStorageProxy.key());
    if (_httpProxy != null) {
        boolean valid = true;
        String errMsg = null;
        try {
            URI uri = new URI(_httpProxy);
            String uriScheme = uri.getScheme();
            if (!"http".equalsIgnoreCase(uriScheme)) {
                errMsg = String.format("[%s] is not supported, it only supports HTTP proxy", uriScheme);
                valid = false;
            } else if (uri.getHost() == null) {
                errMsg = "host can not be null";
                valid = false;
            } else if (uri.getPort() == -1) {
                _httpProxy = _httpProxy + ":3128";
            }
        } catch (URISyntaxException e) {
            errMsg = e.toString();
            valid = false;
            s_logger.error(String.format("Unable to configure HTTP proxy [%s] on secondary storage VM manager [%s] due to [%s].", _httpProxy, name, errMsg), e);
        } finally {
            if (!valid) {
                String message = String.format("Unable to configure HTTP proxy [%s] on secondary storage VM manager [%s] due to [%s].", _httpProxy, name, errMsg);
                s_logger.warn(message);
                throw new ConfigurationException(message);
            }
        }
    }
    s_logger.info(String.format("Secondary storage VM manager [%s] was configured.", name));
    _resourceMgr.registerResourceStateAdapter(this.getClass().getSimpleName(), this);
    return true;
}
Also used : SecondaryStorageListener(com.cloud.storage.secondary.SecondaryStorageListener) ConfigurationException(javax.naming.ConfigurationException) URISyntaxException(java.net.URISyntaxException) ServiceOfferingVO(com.cloud.service.ServiceOfferingVO) URI(java.net.URI)

Example 55 with ConfigurationException

use of javax.naming.ConfigurationException in project cloudstack by apache.

the class UsageManagerImpl method configure.

@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
    final String run = "usage.vmops.pid";
    if (s_logger.isDebugEnabled()) {
        s_logger.debug("Checking to see if " + run + " exists.");
    }
    final Class<?> c = UsageServer.class;
    _version = c.getPackage().getImplementationVersion();
    if (_version == null)
        _version = "unknown";
    if (s_logger.isInfoEnabled()) {
        s_logger.info("Implementation Version is " + _version);
    }
    Map<String, String> configs = _configDao.getConfiguration(params);
    if (params != null) {
        mergeConfigs(configs, params);
    }
    String execTime = configs.get("usage.stats.job.exec.time");
    String aggregationRange = configs.get("usage.stats.job.aggregation.range");
    String execTimeZone = configs.get("usage.execution.timezone");
    String aggreagationTimeZone = configs.get("usage.aggregation.timezone");
    String sanityCheckInterval = configs.get("usage.sanity.check.interval");
    String quotaEnable = configs.get("quota.enable.service");
    _runQuota = Boolean.valueOf(quotaEnable == null ? "false" : quotaEnable);
    usageSnapshotSelection = Boolean.valueOf(configs.get("usage.snapshot.virtualsize.select"));
    if (sanityCheckInterval != null) {
        _sanityCheckInterval = Integer.parseInt(sanityCheckInterval);
    }
    if (aggreagationTimeZone != null && !aggreagationTimeZone.isEmpty()) {
        _usageTimezone = TimeZone.getTimeZone(aggreagationTimeZone);
    }
    s_logger.debug("Usage stats aggregation time zone: " + aggreagationTimeZone);
    try {
        if ((execTime == null) || (aggregationRange == null)) {
            s_logger.error("missing configuration values for usage job, usage.stats.job.exec.time = " + execTime + ", usage.stats.job.aggregation.range = " + aggregationRange);
            throw new ConfigurationException("Missing configuration values for usage job, usage.stats.job.exec.time = " + execTime + ", usage.stats.job.aggregation.range = " + aggregationRange);
        }
        String[] execTimeSegments = execTime.split(":");
        if (execTimeSegments.length != 2) {
            s_logger.error("Unable to parse usage.stats.job.exec.time");
            throw new ConfigurationException("Unable to parse usage.stats.job.exec.time '" + execTime + "'");
        }
        int hourOfDay = Integer.parseInt(execTimeSegments[0]);
        int minutes = Integer.parseInt(execTimeSegments[1]);
        _jobExecTime.setTime(new Date());
        _jobExecTime.set(Calendar.HOUR_OF_DAY, hourOfDay);
        _jobExecTime.set(Calendar.MINUTE, minutes);
        _jobExecTime.set(Calendar.SECOND, 0);
        _jobExecTime.set(Calendar.MILLISECOND, 0);
        if (execTimeZone != null && !execTimeZone.isEmpty()) {
            _jobExecTime.setTimeZone(TimeZone.getTimeZone(execTimeZone));
        }
        // if the hour to execute the job has already passed, roll the day forward to the next day
        Date execDate = _jobExecTime.getTime();
        if (execDate.before(new Date())) {
            _jobExecTime.roll(Calendar.DAY_OF_YEAR, true);
        }
        s_logger.debug("Execution Time: " + execDate.toString());
        Date currentDate = new Date(System.currentTimeMillis());
        s_logger.debug("Current Time: " + currentDate.toString());
        _aggregationDuration = Integer.parseInt(aggregationRange);
        if (_aggregationDuration < UsageUtils.USAGE_AGGREGATION_RANGE_MIN) {
            s_logger.warn("Usage stats job aggregation range is to small, using the minimum value of " + UsageUtils.USAGE_AGGREGATION_RANGE_MIN);
            _aggregationDuration = UsageUtils.USAGE_AGGREGATION_RANGE_MIN;
        }
        _hostname = InetAddress.getLocalHost().getHostName() + "/" + InetAddress.getLocalHost().getHostAddress();
    } catch (NumberFormatException ex) {
        throw new ConfigurationException("Unable to parse usage.stats.job.exec.time '" + execTime + "' or usage.stats.job.aggregation.range '" + aggregationRange + "', please check configuration values");
    } catch (Exception e) {
        s_logger.error("Unhandled exception configuring UsageManger", e);
        throw new ConfigurationException("Unhandled exception configuring UsageManager " + e.toString());
    }
    try {
        _pid = (int) ProcessHandle.current().pid();
    } catch (Exception e) {
        String msg = String.format("Unable to get process Id for %s!", e.toString());
        s_logger.debug(msg);
        throw new ConfigurationException(msg);
    }
    return true;
}
Also used : ConfigurationException(javax.naming.ConfigurationException) Date(java.util.Date) ConfigurationException(javax.naming.ConfigurationException) SQLException(java.sql.SQLException)

Aggregations

ConfigurationException (javax.naming.ConfigurationException)168 CloudRuntimeException (com.cloud.utils.exception.CloudRuntimeException)57 IOException (java.io.IOException)44 HashMap (java.util.HashMap)39 File (java.io.File)23 Map (java.util.Map)21 InternalErrorException (com.cloud.exception.InternalErrorException)19 Properties (java.util.Properties)19 StorageLayer (com.cloud.storage.StorageLayer)18 Processor (com.cloud.storage.template.Processor)17 ParserConfigurationException (javax.xml.parsers.ParserConfigurationException)17 Answer (com.cloud.agent.api.Answer)16 ServerResource (com.cloud.resource.ServerResource)16 TemplateLocation (com.cloud.storage.template.TemplateLocation)16 Script (com.cloud.utils.script.Script)16 FormatInfo (com.cloud.storage.template.Processor.FormatInfo)14 FileNotFoundException (java.io.FileNotFoundException)14 InvalidParameterValueException (com.cloud.exception.InvalidParameterValueException)13 Host (com.cloud.host.Host)11 TransactionStatus (com.cloud.utils.db.TransactionStatus)11