mirror of
https://github.com/siderolabs/talos.git
synced 2025-08-28 18:11:14 +02:00
Conditions are now implemented as interface with two methods: `Wait` for condition to be true (cancelable via context) and 'String' which describes what condition is waiting for. Generic 'WaitForAll' was implemented to wait for multiple conditions at once. Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
19 lines
463 B
Go
19 lines
463 B
Go
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
package conditions
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
)
|
|
|
|
// Condition is a object which Wait()s for some condition to become true.
|
|
//
|
|
// Condition can describe itself via String() method.
|
|
type Condition interface {
|
|
fmt.Stringer
|
|
Wait(ctx context.Context) error
|
|
}
|