Skip to content
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

Agent rework: resource scheduler #8007

Open
sanderr opened this issue Aug 27, 2024 · 0 comments
Open

Agent rework: resource scheduler #8007

sanderr opened this issue Aug 27, 2024 · 0 comments
Labels

Comments

@sanderr
Copy link
Contributor

sanderr commented Aug 27, 2024

This epic collects the issues related to the resource scheduler for the 2024 (iso8) agent rework. For each task, the design (currently still in draft @ inmanta/designs#137) is considered the authority. Where the design is unclear about component responsibilities, make sure to discuss with the team before implementing. Where it is unclear on other aspects, use your judgement on whether it can be considered the responsibility of the implementer, or if it's a design-level matter that should be discussed.

@sanderr sanderr added the Epic label Aug 27, 2024
inmantaci pushed a commit that referenced this issue Aug 30, 2024
# Description

First stage of the resource scheduler (#8007, [ZenHub epic](https://app.zenhub.com/workspaces/core-5a7c152b04a1652024289b7b/issues/gh/inmanta/inmanta-core/8007)). Focus is mainly on the data structures for model state and scheduled work, and the algorithms to update that state when a new version comes in or as tasks are executed.

There is still some polishing to do. I propose to delegate that to #8008. That means that the focus of this review is on the stability of the server and agent interfaces, so that work on those will not conflict with further refinements in #8008.

Of course, feel free to already leave feedback for the other parts, I'll make sure to include it in #8008. I've already marked a lot of notes to self in the code as `FIXME[#8008]`.

Please make sure to also consider the module structure. Do you agree that `inmanta.deploy` makes sense as a namespace?

closes #7548

# Self Check:

Strike through any lines that are not applicable (`~~line~~`) then check the box

- [x] Attached issue to pull request
- [x] Changelog entry
- [x] Type annotations are present
- [x] Code is clear and sufficiently documented
- [x] No (preventable) type errors (check using make mypy or make mypy-diff)
- [x] ~~Sufficient test cases (reproduces the bug/tests the requested feature)~~ -> #8008
- [x] Correct, in line with design
- [x] ~~End user documentation is included or an issue is created for end-user documentation (add ref to issue here: )~~
- [x] ~~If this PR fixes a race condition in the test suite, also push the fix to the relevant stable branche(s) (see [test-fixes](https://internal.inmanta.com/development/core/tasks/build-master.html#test-fixes) for more info)~~
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant