Repository navigation
feat: add typed required resources and resource accessors - #39
Merged
Merged
Conversation
get_required_resources returns JSON values, so every caller deserialized each item by hand. get_required_resources_as and get_required_resource_as deserialize into any DeserializeOwned type, like get_input and resource::get, restoring integral numbers first so integer fields deserialize. They return Result<Option<_>>: `?` handles an item that does not deserialize, and None still means the requirement is unresolved. The untyped getters stay. Fixes #33 Signed-off-by: Jonasz Małecki <jonasz@upbound.io>
Functions reached into requests and responses through Option chains, and the example and README repeated the same two. Add the accessors function-sdk-go has as GetObservedCompositeResource, GetObservedComposedResources, SetDesiredCompositeResource and SetDesiredComposedResources: - request::observed_composite and request::observed_composed borrow the observed XR and a composed resource by name. - response::desired_composite and response::desired_composed return the desired XR and a composed resource by name, inserting an empty one when the response has none, so state copied forward by response::to is modified in place. The example function, the README and the resource::get docs use them. Fixes #34 Signed-off-by: Jonasz Małecki <jonasz@upbound.io>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements the typed
get_required_resources_as/get_required_resource_asgetters from #33 and the four observed/desired resource accessors from #34, and switches the example and README to the accessors.Fixes #33
Fixes #34