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

Configurable dependencies to join an Aggregator #106

Open
paul121 opened this issue Nov 17, 2020 · 2 comments
Open

Configurable dependencies to join an Aggregator #106

paul121 opened this issue Nov 17, 2020 · 2 comments
Labels
2x farmOS 2x support enhancement New feature or request

Comments

@paul121
Copy link
Member

paul121 commented Nov 17, 2020

A forward-thinking feature: allow the Aggregator to enforce dependencies on farmOS servers before they can join an Aggregator.

Example dependencies:

  • Server version (Require 2x, or later on requiring ^2.3 might be valid use cases)
  • Certain modules (a 3rd party module might be required to join an aggregator)
  • Resources (log--lab_test might be required on an aggregator)
  • Roles (certain roles/scopes must be enabled on the server, likely provided by another module)
  • ...

The JSONAPI structure would make it easy to implement some of these features such as checking resources & server version.

@paul121 paul121 added enhancement New feature or request 2x farmOS 2x support labels Nov 17, 2020
@paul121 paul121 changed the title Configurable server version, resource, other dependencies to join an Aggregator Configurable dependencies to join an Aggregator Nov 17, 2020
@paul121
Copy link
Member Author

paul121 commented Nov 17, 2020

Would also need to think what happens when a server becomes out of compliance. The CRON job routinely updates the server info, and could perhaps add ability to notify users/admins when a server is missing a dependency. This might happen when a module is uninstalled.

@mstenta
Copy link
Member

mstenta commented Nov 17, 2020

Maybe "joining" and "complying" should be separate. I could see an Aggregator being used for multiple purposes, and maybe needing multiple different types of compliances, but maybe not overlap (if that makes sense). This feels very related to the discussions over in https://farmos.discourse.group/t/creating-a-standard-interpretation-layer-on-top-of-core-farmos-schema/533

So perhaps that is more of an application-level decision (higher level than Aggregator), but perhaps Aggregator can provide some helpers? Like "get all farmOS instances that comply with these conventions", or "is this instance compliant?"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2x farmOS 2x support enhancement New feature or request
Development

No branches or pull requests

2 participants