-
Notifications
You must be signed in to change notification settings - Fork 99
actions: Implement lifecycle actions and linked resources #1199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
commit 8dd8241 Merge: e4bcbbf d4a5416 Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 17 13:01:08 2025 -0400 Merge branch 'main' into av/action-validation-rpc commit e4bcbbf Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 17 11:03:05 2025 -0400 proto5 and proto6 impl commit 6d3cff2 Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 17 10:54:54 2025 -0400 fwserver commit 3789aad Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 17 10:51:57 2025 -0400 add validators to schemas commit 8361ea6 Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 17 10:14:06 2025 -0400 test provider commit 2f341cb Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 17 10:02:09 2025 -0400 external interface commit 43f5717 Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 17 10:00:53 2025 -0400 go mod commit 68a38e4 Merge: 1503be5 3f40cbd Author: Austin Valle <austinvalle@gmail.com> Date: Wed Jul 16 14:51:50 2025 -0400 Merge branch 'main' into av/all-schemas-types commit 1503be5 Author: Austin Valle <austinvalle@gmail.com> Date: Wed Jul 16 10:07:09 2025 -0400 update all commented out custom type tests commit 21ffee7 Author: Austin Valle <austinvalle@gmail.com> Date: Tue Jul 15 14:50:56 2025 -0400 add blocks and docs commit ea2deb8 Author: Austin Valle <austinvalle@gmail.com> Date: Tue Jul 15 14:20:28 2025 -0400 all attributes (primitive, collection, nested) commit 98f7232 Author: Austin Valle <austinvalle@gmail.com> Date: Tue Jul 15 12:21:19 2025 -0400 comments commit 119f4c5 Author: Austin Valle <austinvalle@gmail.com> Date: Tue Jul 15 12:20:16 2025 -0400 mention progress events commit 47f9631 Author: Austin Valle <austinvalle@gmail.com> Date: Tue Jul 15 12:17:41 2025 -0400 implementation of sending progress events commit 8fdf71d Merge: 261ef7d 377d9e3 Author: Austin Valle <austinvalle@gmail.com> Date: Tue Jul 15 10:55:48 2025 -0400 Merge branch 'main' into av/unlinked-action-impl commit 261ef7d Author: Austin Valle <austinvalle@gmail.com> Date: Mon Jul 14 10:46:50 2025 -0400 fix map access in unit tests commit 2f08b28 Author: Austin Valle <austinvalle@gmail.com> Date: Mon Jul 14 10:46:44 2025 -0400 add invoke impl with just completed event commit e43f576 Author: Austin Valle <austinvalle@gmail.com> Date: Mon Jul 14 08:10:58 2025 -0400 from invoke commit 7ec37c2 Author: Austin Valle <austinvalle@gmail.com> Date: Mon Jul 14 08:04:32 2025 -0400 from/to plan tests commit 5d5960a Author: Austin Valle <austinvalle@gmail.com> Date: Mon Jul 14 07:24:30 2025 -0400 proto server tests commit 95e7673 Author: Austin Valle <austinvalle@gmail.com> Date: Mon Jul 14 07:12:12 2025 -0400 plan action impl and fwserver tests commit 7e5fd9f Author: Austin Valle <austinvalle@gmail.com> Date: Fri Jul 11 16:04:11 2025 -0400 external interfaces for plan / configure commit 3a1048c Author: Austin Valle <austinvalle@gmail.com> Date: Fri Jul 11 09:36:44 2025 -0400 fix double import commit dcd6748 Merge: 32b2083 4bb3f89 Author: Austin Valle <austinvalle@gmail.com> Date: Fri Jul 11 08:58:38 2025 -0400 Merge branch 'main' into av/action-schema commit 32b2083 Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 10 16:55:49 2025 -0400 the rest of the tests commit 0e5df9c Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 10 16:37:34 2025 -0400 implement unlinked schemas, some attributes, and the rpcs commit 61eadc9 Author: Austin Valle <austinvalle@gmail.com> Date: Thu Jul 10 10:40:30 2025 -0400 add initial schema attributes and unlinked schema commit 3c21a45 Author: Austin Valle <austinvalle@gmail.com> Date: Wed Jul 9 18:07:03 2025 -0400 protov6 copy commit bf10880 Author: Austin Valle <austinvalle@gmail.com> Date: Wed Jul 9 18:02:09 2025 -0400 protov5 and fwserver impl commit 5eeac4c Author: Austin Valle <austinvalle@gmail.com> Date: Wed Jul 9 13:54:34 2025 -0400 generate RPC methods commit 9ec6758 Author: Austin Valle <austinvalle@gmail.com> Date: Wed Jul 9 13:54:22 2025 -0400 go mod
} | ||
|
||
for i, newLinkedResource := range modifyPlanResp.LinkedResources { | ||
resp.LinkedResources[i].PlannedState = planToState(newLinkedResource.Plan) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This applies to InvokeAction
as well, but I'm thinking we might want to consider also:
- Running write-only nullification? (probably both)
- Checking mutability of identities and if they change?
- Running semantic equality logic (probably just in Invoke actually)
} | ||
|
||
// InvokeRequestLinkedResource represents linked resource data before the action is invoked. | ||
type InvokeRequestLinkedResource struct { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The only thing not represented in this request that is normally in the plan for resources, is private state.... Should that be in the protocol? Can an action also return new private state? 🤔 (same thought for InvokeAction
)
I've moved this PR to draft for now as we wait for some design confirmations and moved some of the mergable changes over to #1200 |
Related Issue
N/A
Description
This PR implements the lifecycle action type and linked resources, which can be used by both lifecycle actions and linked actions (not yet implemented). I also wrote out most of the package docs that had TODOs on them, and left a new TODO to implement validation on the new lifecycle action type (this PR was getting too long 😆).
Any thoughts on the error messaging, documentation, etc. would be appreciated!
Rollback Plan
Changes to Security Controls
No