Polling-based agent-server architecture #299

Closed
opened 2022-12-06 11:45:23 +01:00 by Jef Roosens · 0 comments
Owner

Instead of starting a full websocket connection and everything, the much more easy and manageable solution is using a polling-based system. Builds are scheduled on the server, and agents regularly poll the server for new builds (e.g. every 30s). This would still provide me with more control over builds, yet prevent the solution from becoming too complex.

Stuff to do

  • Move cron daemon to server
    • Schedule new builds when targets are added
    • Reschedule builds when targets are changed
    • Remove scheduled builds when targets are removed
  • Add API endpoint for providing builds to agents
  • Create an agent service that regularly polls for builds
Instead of starting a full websocket connection and everything, the much more easy and manageable solution is using a polling-based system. Builds are scheduled on the server, and agents regularly poll the server for new builds (e.g. every 30s). This would still provide me with more control over builds, yet prevent the solution from becoming too complex. ## Stuff to do - [x] Move cron daemon to server - [x] Schedule new builds when targets are added - [x] Reschedule builds when targets are changed - [x] Remove scheduled builds when targets are removed - [x] Add API endpoint for providing builds to agents - [x] Create an agent service that regularly polls for builds
Jef Roosens added this to the 0.5.0 milestone 2022-12-14 18:49:49 +01:00
Commenting is not possible because the repository is archived.
No milestone
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
vieter-v/vieter#299
No description provided.