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.
Description
This PR is experimental and used to facilitate some discussion. At the moment the internal implementation of the app host has a few fundamental issues:
ApplicationExecutor
andAzureProvisioner
to just know to make sure that the child resource has the same state as the parent resource.I'd like to see us tackle these two issues. The goal of this PR is to explore this space. This PR will introduce two fundamental concepts:
What does this do for us? Well it allows us to create a default built-in operator for
IResourceWithParent
resources (generics issue ahead here) - the built-in operator will simply make sure that the status is propagated UNLESS a specific provisioner is defined (probably via an annotation).So far this PR doesn't have all of this. The first step is to build an orchestrator which is capable of observing that resources are added to the app model. I've done this by giving the resource collection an instance of the eventing singleton. In addition I've added a
Queue
method to queue events. The idea is that in the early stages of application startup we queue events that will then execute at the earliest possible moment in the applications lifecycle.The handler for this event would resolve the operator for a resource and hand off ownership to that operator.
Fixes # (issue)
Checklist
<remarks />
and<code />
elements on your triple slash comments?Microsoft Reviewers: Open in CodeFlow