@Override public Response install(Action action) { // REVISIT fencing options VDS vds = getEntity(); UpdateVdsActionParameters params = new UpdateVdsActionParameters(vds.getStaticData(), action.getRootPassword(), true); params.setFenceAgents(null); // Explicitly set null, to be clear we don't want to update fence agents. params.setHostedEngineDeployConfiguration(HostResourceParametersUtil.getHostedEngineDeployConfiguration(this)); params = (UpdateVdsActionParameters) getMapper (Action.class, VdsOperationActionParameters.class).map(action, params); if (vds.isOvirtVintageNode()) { params.setReinstallOrUpgrade(true); if (action.isSetImage()) { params.setoVirtIsoFile(action.getImage()); return doAction(ActionType.UpgradeOvirtNode, params, action); } } // Installation is only done in maintenance mode, and should by default leave the host in maintenance mode. // this is why the default value for 'activate' here is false (vs in adding or approving a host, where it is 'true') boolean activate = ParametersHelper.getBooleanParameter(httpHeaders, uriInfo, BackendHostsResource.ACTIVATE, true, false); params.setActivateHost(activate); return doAction(ActionType.UpdateVds, params, action); }
@Override public Response approve(Action action) { if (action.isSetCluster() && (action.getCluster().isSetId() || action.getCluster().isSetName())) { update(setCluster(get(), action.getCluster())); } ApproveVdsParameters params = new ApproveVdsParameters(guid); params = (ApproveVdsParameters) getMapper (Action.class, VdsOperationActionParameters.class).map(action, params); // Set pk authentication as default params.setAuthMethod(VdsOperationActionParameters.AuthenticationMethod.PublicKey); if (action.isSetRootPassword()) { params.setAuthMethod(VdsOperationActionParameters.AuthenticationMethod.Password); params.setRootPassword(action.getRootPassword()); } else if (action.isSetSsh() && action.getSsh().isSetAuthenticationMethod()) { if (action.getSsh().getAuthenticationMethod() == SshAuthenticationMethod.PASSWORD) { params.setAuthMethod(VdsOperationActionParameters.AuthenticationMethod.Password); if (action.getSsh().isSetUser() && action.getSsh().getUser().isSetPassword()) { params.setPassword(action.getSsh().getUser().getPassword()); } } } // by default activate the host after approval boolean activate = ParametersHelper.getBooleanParameter(httpHeaders, uriInfo, BackendHostsResource.ACTIVATE, true, true); params.setActivateHost(activate); return doAction(ActionType.ApproveVds, params, action); }
@Mapping(from = Action.class, to = VdsOperationActionParameters.class) public static VdsOperationActionParameters map(Action action, VdsOperationActionParameters params) { params.setPassword(action.getRootPassword()); if (action.isSetSsh()) { if (action.getSsh().isSetUser()) {
to.setRootPassword(from.getRootPassword());