Ensure different group schedule and start event on rollout start (#2144)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
This commit is contained in:
@@ -574,7 +574,11 @@ public class JpaRolloutExecutor implements RolloutExecutor {
|
||||
private boolean ensureAllGroupsAreScheduled(final Rollout rollout) {
|
||||
final JpaRollout jpaRollout = (JpaRollout) rollout;
|
||||
final List<JpaRolloutGroup> groupsToBeScheduled = rolloutGroupRepository.findByRolloutAndStatus(rollout, RolloutGroupStatus.READY);
|
||||
if (groupsToBeScheduled.isEmpty()) {
|
||||
return true;
|
||||
}
|
||||
final long scheduledGroups = groupsToBeScheduled.stream().filter(group -> scheduleRolloutGroup(jpaRollout, group)).count();
|
||||
entityManager.flush(); // flush groups so scheduled group to start to have scheduled event
|
||||
return scheduledGroups == groupsToBeScheduled.size();
|
||||
}
|
||||
|
||||
|
||||
@@ -1816,7 +1816,7 @@ class RolloutManagementTest extends AbstractJpaIntegrationTest {
|
||||
@Expect(type = RolloutCreatedEvent.class, count = 1),
|
||||
@Expect(type = RolloutUpdatedEvent.class, count = 6),
|
||||
@Expect(type = RolloutDeletedEvent.class, count = 1),
|
||||
@Expect(type = RolloutGroupUpdatedEvent.class, count = 10),
|
||||
@Expect(type = RolloutGroupUpdatedEvent.class, count = 11),
|
||||
@Expect(type = RolloutGroupCreatedEvent.class, count = 5) })
|
||||
void deleteRolloutWhichHasBeenStartedBeforeIsSoftDeleted() {
|
||||
final int amountTargetsForRollout = 10;
|
||||
|
||||
Reference in New Issue
Block a user