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

Create microservice for sconsole update #260

Open
SchoolGuy opened this issue Aug 3, 2024 · 1 comment
Open

Create microservice for sconsole update #260

SchoolGuy opened this issue Aug 3, 2024 · 1 comment
Labels
enhancement New feature or request

Comments

@SchoolGuy
Copy link
Collaborator

Currently, we are using SSH to update the cscreen config on the cscreen server. SSH connects are quite hard to properly implement and clean up in Python if anything related to the network happens. Furthermore, it is at the moment required to login to the server as a user that can restart the cscreend systemd service.

These challenges led me to the idea of having a micro-service that actively polls a boolean endpoint at the Orthos 2 server which tells the microservice to update the cscreen configuration file and restart the daemon. The information for this operation can be retrieved via the REST API from Orthos2.

What advantages are there with the microservice:

  • The cscreen server doesn't have to be accessible via SSH by Orthos.
  • cscreen may be moved into a container, meaning the microservice can run in a dedicated sidecar.
  • On a bare-metal deployment the microservice can get the rights to restart the systemd service via policykit.
  • The microservice can attempt to avoid using Django (or Python altogether) to reduce the number of dependencies.
  • In the context of [META] State of this project #219: The successor of Orthos 2 can reuse the microservice.
@SchoolGuy SchoolGuy added the enhancement New feature or request label Aug 3, 2024
@olafhering
Copy link
Contributor

Since updating cscreenrc is not reliable anymore, this should be implemented soon.

How should this be done?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants