use of org.ovirt.engine.core.common.action.VdsActionParameters in project ovirt-engine by oVirt.
the class FenceVdsManualyCommand method executeCommand.
@Override
protected void executeCommand() {
setVdsName(problematicVds.getName());
log.info("Start fence execution for Host '{}' (spm status: '{}')", problematicVds.getName(), problematicVds.getSpmStatus());
if (problematicVds.getSpmStatus() == VdsSpmStatus.SPM) {
activateDataCenter();
}
if (getParameters().getClearVMs()) {
VdsActionParameters tempVar = new VdsActionParameters(problematicVds.getId());
tempVar.setSessionId(getParameters().getSessionId());
runInternalActionWithTasksContext(ActionType.ClearNonResponsiveVdsVms, tempVar);
}
setSucceeded(true);
// Remove all alerts except NOT CONFIG alert
alertDirector.removeAllVdsAlerts(problematicVds.getId(), false);
}
use of org.ovirt.engine.core.common.action.VdsActionParameters in project ovirt-engine by oVirt.
the class AddVdsCommand method executeCommand.
@Override
protected void executeCommand() {
Guid oVirtId = getParameters().getVdsForUniqueId();
if (oVirtId != null) {
// if fails to remove deprecated entry, we might attempt to add new oVirt host with an existing unique-id.
if (!removeDeprecatedOvirtEntry(oVirtId)) {
log.error("Failed to remove duplicated oVirt entry with id '{}'. Abort adding oVirt Host type", oVirtId);
throw new EngineException(EngineError.HOST_ALREADY_EXISTS);
}
}
completeOpenstackNetworkProviderId();
TransactionSupport.executeInNewTransaction(() -> {
addVdsStaticToDb();
addVdsDynamicToDb();
addVdsStatisticsToDb();
addAffinityLabels();
getCompensationContext().stateChanged();
return null;
});
if (getParameters().isProvisioned()) {
HostProviderProxy proxy = providerProxyFactory.create(getHostProvider());
proxy.provisionHost(getParameters().getvds(), getParameters().getHostGroup(), getParameters().getComputeResource(), getParameters().getHostMac(), getParameters().getDiscoverName(), getParameters().getPassword(), getParameters().getDiscoverIp());
addCustomValue("HostGroupName", getParameters().getHostGroup().getName());
auditLogDirector.log(this, AuditLogType.VDS_PROVISION);
}
// set vds spm id
if (getCluster().getStoragePoolId() != null) {
VdsActionParameters tempVar = new VdsActionParameters(getVdsIdRef());
tempVar.setSessionId(getParameters().getSessionId());
tempVar.setCompensationEnabled(true);
ActionReturnValue addVdsSpmIdReturn = runInternalAction(ActionType.AddVdsSpmId, tempVar, cloneContext().withoutLock().withoutExecutionContext());
if (!addVdsSpmIdReturn.getSucceeded()) {
setSucceeded(false);
getReturnValue().setFault(addVdsSpmIdReturn.getFault());
return;
}
}
TransactionSupport.executeInNewTransaction(() -> {
initializeVds(true);
alertIfPowerManagementNotConfigured(getParameters().getVdsStaticData());
testVdsPowerManagementStatus(getParameters().getVdsStaticData());
setSucceeded(true);
setActionReturnValue(getVdsIdRef());
// If the installation failed, we don't want to compensate for the failure since it will remove the
// host, but instead the host should be left in an "install failed" status.
getCompensationContext().cleanupCompensationDataAfterSuccessfulCommand();
return null;
});
// clients). they are installed as part of the approve process or automatically after provision
if (Config.<Boolean>getValue(ConfigValues.InstallVds) && !getParameters().isPending() && !getParameters().isProvisioned()) {
final InstallVdsParameters installVdsParameters = new InstallVdsParameters(getVdsId(), getParameters().getPassword());
installVdsParameters.setAuthMethod(getParameters().getAuthMethod());
installVdsParameters.setOverrideFirewall(getParameters().getOverrideFirewall());
installVdsParameters.setActivateHost(getParameters().getActivateHost());
installVdsParameters.setNetworkProviderId(getParameters().getVdsStaticData().getOpenstackNetworkProviderId());
installVdsParameters.setNetworkMappings(getParameters().getNetworkMappings());
installVdsParameters.setEnableSerialConsole(getParameters().getEnableSerialConsole());
if (getParameters().getHostedEngineDeployConfiguration() != null) {
Map<String, String> vdsDeployParams = hostedEngineHelper.createVdsDeployParams(getVdsId(), getParameters().getHostedEngineDeployConfiguration().getDeployAction());
installVdsParameters.setHostedEngineConfiguration(vdsDeployParams);
}
Map<String, String> values = new HashMap<>();
values.put(VdcObjectType.VDS.name().toLowerCase(), getParameters().getvds().getName());
Step installStep = executionHandler.addSubStep(getExecutionContext(), getExecutionContext().getJob().getStep(StepEnum.EXECUTING), StepEnum.INSTALLING_HOST, ExecutionMessageDirector.resolveStepMessage(StepEnum.INSTALLING_HOST, values));
final ExecutionContext installCtx = new ExecutionContext();
installCtx.setJob(getExecutionContext().getJob());
installCtx.setStep(installStep);
installCtx.setMonitored(true);
installCtx.setShouldEndJob(true);
ThreadPoolUtil.execute(() -> runInternalAction(ActionType.InstallVdsInternal, installVdsParameters, cloneContextAndDetachFromParent().withExecutionContext(installCtx)));
ExecutionHandler.setAsyncJob(getExecutionContext(), true);
}
}
use of org.ovirt.engine.core.common.action.VdsActionParameters in project ovirt-engine by oVirt.
the class HostInterfaceListModel method onSyncAllHostNetworkConfirm.
private void onSyncAllHostNetworkConfirm() {
ConfirmationModel model = (ConfirmationModel) getWindow();
if (model.getProgress() != null) {
return;
}
getWindow().startProgress();
Frontend.getInstance().runAction(ActionType.SyncAllHostNetworks, new VdsActionParameters(getEntity().getId()), result -> {
getWindow().stopProgress();
cancel();
}, null);
}
use of org.ovirt.engine.core.common.action.VdsActionParameters in project ovirt-engine by oVirt.
the class HostListModel method enrollCertificate.
private void enrollCertificate() {
final VDS host = getSelectedItem();
Frontend.getInstance().runAction(ActionType.HostEnrollCertificate, new VdsActionParameters(host.getId()));
}
use of org.ovirt.engine.core.common.action.VdsActionParameters in project ovirt-engine by oVirt.
the class HostListModel method activate.
public void activate() {
ArrayList<ActionParametersBase> list = new ArrayList<>();
Collections.sort(getSelectedItems(), Comparator.comparing(VDS::getVdsSpmPriority).reversed());
for (VDS vds : getSelectedItems()) {
list.add(new VdsActionParameters(vds.getId()));
}
Frontend.getInstance().runMultipleAction(ActionType.ActivateVds, list, result -> {
}, null);
}
Aggregations