func NewConditions(conds ...Condition) Conditions {
	conditions := Conditions{}
	for _, c := range conds {
		conditions.SetCondition(c)
	}
	return conditions
}
NewConditions initializes a set of conditions with the given list of
conditions.
package status
import (
	"encoding/json"
	"sort"
	corev1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	kubeclock "k8s.io/apimachinery/pkg/util/clock"
)
var clock kubeclock.Clock = &kubeclock.RealClock{}
type ConditionType string
type ConditionReason string
type Condition struct {
	Type               ConditionType          `json:"type"`
	Status             corev1.ConditionStatus `json:"status"`
	Reason             ConditionReason        `json:"reason,omitempty"`
	Message            string                 `json:"message,omitempty"`
	LastTransitionTime metav1.Time            `json:"lastTransitionTime,omitempty"`
}
func (c Condition) IsTrue() bool {
	return c.Status == corev1.ConditionTrue
}
func (c Condition) IsFalse() bool {
	return c.Status == corev1.ConditionFalse
}
func (c Condition) IsUnknown() bool {
	return c.Status == corev1.ConditionUnknown
}
func (c *Condition) DeepCopyInto(cpy *Condition) {
	*cpy = *c
}
type Conditions []Condition