waitUntilReady method

  1. @override
Future<void> waitUntilReady(
  1. WaitStrategyTarget target
)
override

Polls the container status until it equals 'running'.

Stops polling immediately (without waiting for the full timeout) when the status is not in continueStatuses. Throws StateError if readiness is never reached.

Implementation

@override
Future<void> waitUntilReady(WaitStrategyTarget target) async {
  final ready = await poll(() async {
    await target.reload();
    final st = target.status;
    if (st == 'running') {
      return true;
    }
    if (!continueStatuses.contains(st)) {
      throwStopIteration();
    }
    return false;
  });

  if (!ready) {
    throw StateError('Container not running. Status: ${target.status}');
  }
}