in base_block.go [102:116]
func (bb *BaseBlock) PreConditionCheck(ctx *hcl.EvalContext) ([]PreCondition, error) {
var failedChecks []PreCondition
var err error
for _, cond := range bb.preConditions {
diag := gohcl.DecodeBody(cond.Body, ctx, &cond)
if diag.HasErrors() {
err = multierror.Append(err, diag.Errs()...)
continue
}
if !cond.Condition {
failedChecks = append(failedChecks, cond)
}
}
return failedChecks, err
}