Tests for the new Dynamic Rollouts, including the new Dynamic group definition functionality (#1777)
* Added tests for the new Dynamic Rollouts, including the new Dynamic group definition functionality Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com> * Refactoring Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com> * Additional check before the dynamic group is triggered Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com> * Refactoring Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com> --------- Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com>
This commit is contained in:
@@ -514,6 +514,14 @@ public abstract class JsonBuilder {
|
||||
final long distributionSetId, final String targetFilterQuery, final RolloutGroupConditions conditions,
|
||||
final List<String> groupJsonList, final String type, final Integer weight, final Long startAt, final Long forceTime,
|
||||
final Boolean confirmationRequired) {
|
||||
return rollout(name, description, groupSize, distributionSetId, targetFilterQuery, conditions, groupJsonList, type,
|
||||
weight, startAt, forceTime, confirmationRequired, false, null, 0);
|
||||
}
|
||||
|
||||
public static String rollout(final String name, final String description, final Integer groupSize,
|
||||
final long distributionSetId, final String targetFilterQuery, final RolloutGroupConditions conditions,
|
||||
final List<String> groupJsonList, final String type, final Integer weight, final Long startAt, final Long forceTime,
|
||||
final Boolean confirmationRequired, final boolean isDynamic, final String dynamicGroupSuffix, final int dynamicGroupTargetsCount) {
|
||||
final JSONObject json = new JSONObject();
|
||||
|
||||
try {
|
||||
@@ -567,6 +575,15 @@ public abstract class JsonBuilder {
|
||||
errorAction.put("expression", conditions.getErrorActionExp());
|
||||
}
|
||||
|
||||
if (isDynamic) {
|
||||
json.put("dynamic", isDynamic);
|
||||
|
||||
final JSONObject dynamicGroupTemplate = new JSONObject();
|
||||
json.put("dynamicGroupTemplate", dynamicGroupTemplate);
|
||||
dynamicGroupTemplate.put("nameSuffix", (dynamicGroupSuffix == null || dynamicGroupSuffix.isEmpty()) ? "-dynamic" : dynamicGroupSuffix);
|
||||
dynamicGroupTemplate.put("targetCount", dynamicGroupTargetsCount < 0 ? 1 : dynamicGroupTargetsCount);
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(groupJsonList)) {
|
||||
final JSONArray jsonGroups = new JSONArray();
|
||||
for (final String groupJson : groupJsonList) {
|
||||
|
||||
Reference in New Issue
Block a user