artillery
artillery copied to clipboard
Generic message types for internal management
We need some internal management for message types.
Lifecycle Commands (exposed)
- [x]
Stop
(stops pollingexec
or stops the children group's elements or supervised elements) - [x]
Kill
(stops pollingexec
or cancels the children group's elements or supervised elements) - [x]
Start
(start pollingexec
or start the children group's elements or supervised elements)
Notifications
- [x]
Dead
(whenexec
successfully finished its executiong orStop
/Kill
was received or one the elements of the children group stopped) - [x]
Faulted
(whenexec
panics or returns an error or one elements of the children group faulted)
Direct Communication (exposed)
- [x]
Tell
(a message) - [x]
Ask
(a message with a channel to answer with another message)
Remote Communication (exposed)
- [x]
Deploy
(makes a supervisor supervise a new children group or supervisor) - [ ]
Prune
(TODO) - [x]
SuperviseWith
(changes the supervision strategy of a supervisor)
@vertexclique is Prune
still needed?
(Note that it is present in bastion
but not used ~~or supported~~ though supported by System
.)
We can close this but having another issue for Remote Communication
would be nice.
@vertexclique Maybe Prune
could be used to stop/kill a Children
/Supervisor
and completely remove it (ie. not restarting it even if it was supervised by a "one-for-all" supervisor)?
That is the main idea of it. especially on distributed communication. So I think this can go under bastion-rs/artillery
. Though we still need to iterate on this.