Skip to content

support scheduled actions #393

@michel-laterman

Description

@michel-laterman

Describe the enhancement:

The agent should be able to handle actions with a start_time and expiration attribute.
These attributes can be used to schedule an action to occur at a later date.
start_time determines when the action should start, and expiration is when it is valid until (if the action has not occured it should ack as failed/aborted).

The scheduled actions should be persisted to disk to provide some form of persistency.

pending actions may be cancelled with a new CANCEL action type that will specify a target_id value.
If the target_id action is scheduled it will be removed and the target_id action will be acked as failed/aborted.

Describe a specific use case for the enhancement or feature:
In order to support scheduled upgrades the agent needs the ability to execute actions it receives at a later data.
The expiration attribute is used so we can put an upper bound for when we want to start executing actions in order to provide a maintenance window.
Cancelling pending actions will be provided so operators can abort actions if needed.

Note that setting a hard bound on action execution (aborting actions in progress) may be possible, but is outside of the scope for this issue

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions