diff --git a/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneCompositeFunctionBase.java b/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneCompositeFunctionBase.java index be282f7..e16b194 100644 --- a/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneCompositeFunctionBase.java +++ b/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneCompositeFunctionBase.java @@ -54,11 +54,14 @@ public abstract class CrossplaneCompositeFunctionBase extends FunctionRunnerServ responseBuilder.setRequirements(requirements); } - if (! crossplaneFunctionResponse.results().isEmpty()) { responseBuilder.addAllResults(crossplaneFunctionResponse.results()); } + if (! crossplaneFunctionResponse.conditions().isEmpty()) { + responseBuilder.addAllConditions(crossplaneFunctionResponse.conditions()); + } + if (desiredBuilder.getResourcesCount() > 0) { responseBuilder.setDesired(desiredBuilder.build()); } diff --git a/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneFunctionResponse.java b/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneFunctionResponse.java index 91b2050..0df628a 100644 --- a/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneFunctionResponse.java +++ b/crossplane-function-base/src/main/java/io/crossplane/compositefunctions/base/CrossplaneFunctionResponse.java @@ -1,5 +1,6 @@ package io.crossplane.compositefunctions.base; +import io.crossplane.compositefunctions.protobuf.v1.Condition; import io.crossplane.compositefunctions.protobuf.v1.ResourceSelector; import io.crossplane.compositefunctions.protobuf.v1.Result; @@ -16,7 +17,7 @@ import java.util.Map; */ public record CrossplaneFunctionResponse(Map desiredResources, Map resourceSelectors, - List results) { + List results, List conditions) { // // @@ -26,6 +27,6 @@ public record CrossplaneFunctionResponse(Map desiredResources, * Create an empty response with all fields initiated */ public CrossplaneFunctionResponse() { - this(new HashMap<>(), new HashMap<>(), new ArrayList<>()); + this(new HashMap<>(), new HashMap<>(), new ArrayList<>(), new ArrayList<>()); } }