private boolean checkFinishCondition(final Rollout rollout, final RolloutGroup rolloutGroup, final RolloutGroupSuccessCondition finishCondition) { LOGGER.trace("Checking finish condition {} on rolloutgroup {}", finishCondition, rolloutGroup); try { final boolean isFinished = context .getBean(finishCondition.getBeanName(), RolloutGroupConditionEvaluator.class) .eval(rollout, rolloutGroup, rolloutGroup.getSuccessConditionExp()); if (isFinished) { LOGGER.info("Rolloutgroup {} is finished, starting next group", rolloutGroup); executeRolloutGroupSuccessAction(rollout, rolloutGroup); } else { LOGGER.debug("Rolloutgroup {} is still running", rolloutGroup); } return isFinished; } catch (final BeansException e) { LOGGER.error("Something bad happend when accessing the finish condition bean {}", finishCondition.getBeanName(), e); return false; } }
private boolean checkFinishCondition(final Rollout rollout, final RolloutGroup rolloutGroup, final RolloutGroupSuccessCondition finishCondition) { LOGGER.trace("Checking finish condition {} on rolloutgroup {}", finishCondition, rolloutGroup); try { final boolean isFinished = context .getBean(finishCondition.getBeanName(), RolloutGroupConditionEvaluator.class) .eval(rollout, rolloutGroup, rolloutGroup.getSuccessConditionExp()); if (isFinished) { LOGGER.info("Rolloutgroup {} is finished, starting next group", rolloutGroup); executeRolloutGroupSuccessAction(rollout, rolloutGroup); } else { LOGGER.debug("Rolloutgroup {} is still running", rolloutGroup); } return isFinished; } catch (final BeansException e) { LOGGER.error("Something bad happend when accessing the finish condition bean {}", finishCondition.getBeanName(), e); return false; } }
/** * Populates the row with the data from the provided groups. * * @param group * the data source */ public void populateByGroup(final RolloutGroup group) { initialized = false; groupName.setValue(group.getName()); targetFilterQuery.setValue(group.getTargetFilterQuery()); populateTargetFilterQuery(group); targetPercentage.setValue(String.format("%.2f", group.getTargetPercentage())); triggerThreshold.setValue(group.getSuccessConditionExp()); errorThreshold.setValue(group.getErrorConditionExp()); populated = true; initialized = true; }
/** * Populates the row with the data from the provided groups. * * @param group * the data source */ public void populateByGroup(final RolloutGroup group) { initialized = false; groupName.setValue(group.getName()); targetFilterQuery.setValue(group.getTargetFilterQuery()); populateTargetFilterQuery(group); targetPercentage.setValue(String.format("%.2f", group.getTargetPercentage())); triggerThreshold.setValue(group.getSuccessConditionExp()); errorThreshold.setValue(group.getErrorConditionExp()); populated = true; initialized = true; }
jsonGroup.put("successCondition", successCondition); successCondition.put("condition", group.getSuccessCondition().toString()); successCondition.put("expression", group.getSuccessConditionExp());
group.setSuccessConditionExp(srcGroup.getSuccessConditionExp());
group.setSuccessConditionExp(srcGroup.getSuccessConditionExp());
private static ProxyRolloutGroup createProxy(final RolloutGroup rolloutGroup) { final ProxyRolloutGroup proxyRolloutGroup = new ProxyRolloutGroup(); proxyRolloutGroup.setName(rolloutGroup.getName()); proxyRolloutGroup.setDescription(rolloutGroup.getDescription()); proxyRolloutGroup.setCreatedDate(SPDateTimeUtil.getFormattedDate(rolloutGroup.getCreatedAt())); proxyRolloutGroup.setModifiedDate(SPDateTimeUtil.getFormattedDate(rolloutGroup.getLastModifiedAt())); proxyRolloutGroup.setCreatedBy(UserDetailsFormatter.loadAndFormatCreatedBy(rolloutGroup)); proxyRolloutGroup.setLastModifiedBy(UserDetailsFormatter.loadAndFormatLastModifiedBy(rolloutGroup)); proxyRolloutGroup.setId(rolloutGroup.getId()); proxyRolloutGroup.setStatus(rolloutGroup.getStatus()); proxyRolloutGroup.setErrorAction(rolloutGroup.getErrorAction()); proxyRolloutGroup.setErrorActionExp(rolloutGroup.getErrorActionExp()); proxyRolloutGroup.setErrorCondition(rolloutGroup.getErrorCondition()); proxyRolloutGroup.setErrorConditionExp(rolloutGroup.getErrorConditionExp()); proxyRolloutGroup.setSuccessCondition(rolloutGroup.getSuccessCondition()); proxyRolloutGroup.setSuccessConditionExp(rolloutGroup.getSuccessConditionExp()); proxyRolloutGroup.setFinishedPercentage(HawkbitCommonUtil.formattingFinishedPercentage(rolloutGroup, rolloutGroup.getTotalTargetCountStatus().getFinishedPercent())); proxyRolloutGroup.setRolloutRendererData(new RolloutRendererData(rolloutGroup.getName(), null)); proxyRolloutGroup.setTotalTargetsCount(String.valueOf(rolloutGroup.getTotalTargets())); proxyRolloutGroup.setTotalTargetCountStatus(rolloutGroup.getTotalTargetCountStatus()); return proxyRolloutGroup; }
private static ProxyRolloutGroup createProxy(final RolloutGroup rolloutGroup) { final ProxyRolloutGroup proxyRolloutGroup = new ProxyRolloutGroup(); proxyRolloutGroup.setName(rolloutGroup.getName()); proxyRolloutGroup.setDescription(rolloutGroup.getDescription()); proxyRolloutGroup.setCreatedDate(SPDateTimeUtil.getFormattedDate(rolloutGroup.getCreatedAt())); proxyRolloutGroup.setModifiedDate(SPDateTimeUtil.getFormattedDate(rolloutGroup.getLastModifiedAt())); proxyRolloutGroup.setCreatedBy(UserDetailsFormatter.loadAndFormatCreatedBy(rolloutGroup)); proxyRolloutGroup.setLastModifiedBy(UserDetailsFormatter.loadAndFormatLastModifiedBy(rolloutGroup)); proxyRolloutGroup.setId(rolloutGroup.getId()); proxyRolloutGroup.setStatus(rolloutGroup.getStatus()); proxyRolloutGroup.setErrorAction(rolloutGroup.getErrorAction()); proxyRolloutGroup.setErrorActionExp(rolloutGroup.getErrorActionExp()); proxyRolloutGroup.setErrorCondition(rolloutGroup.getErrorCondition()); proxyRolloutGroup.setErrorConditionExp(rolloutGroup.getErrorConditionExp()); proxyRolloutGroup.setSuccessCondition(rolloutGroup.getSuccessCondition()); proxyRolloutGroup.setSuccessConditionExp(rolloutGroup.getSuccessConditionExp()); proxyRolloutGroup.setFinishedPercentage(HawkbitCommonUtil.formattingFinishedPercentage(rolloutGroup, rolloutGroup.getTotalTargetCountStatus().getFinishedPercent())); proxyRolloutGroup.setRolloutRendererData(new RolloutRendererData(rolloutGroup.getName(), null)); proxyRolloutGroup.setTotalTargetsCount(String.valueOf(rolloutGroup.getTotalTargets())); proxyRolloutGroup.setTotalTargetCountStatus(rolloutGroup.getTotalTargetCountStatus()); return proxyRolloutGroup; }
rolloutGroup.getSuccessConditionExp())); body.setSuccessAction( new MgmtRolloutSuccessAction(map(rolloutGroup.getSuccessAction()), rolloutGroup.getSuccessActionExp()));