MAAS scheduled tasks

Registered by Leandro Reox on 2017-10-23

It will be really useful for many use cases that MAAS supports scheduled tasks for certain MAAS workflows

1 - Use cases :

- Providers that need to scheduled a decommission based on contract termination, but want this to be part of their billing workflow, using the MAAS API via an scheduling component, the provider can create an easy connector linked with their contract on their billing platform that will call MAAS in order to schedule a decommission for example and return bare metal servers to the pool
- Commission/deploy: as decommission maybe metals assignment to a client, can be shot as a consequence of a scheduled task directly programmed by their billing flow directly on MAAS
- Redeployment tasks : theres a lot of use cases were desktop farms, or event servers need to be redeployed overnight for example or at a given time of the day, having the scheduled component here will be really usefull also
- Baremetal "scheduled scaling", maybe its not straight attached to a MAAS deployment platform, but having the ability to say "i want more of these metals tagged as this by tomorrow morning" in order to "prepare the field" for the incoming provisioning day and that can happen unattended sounds great to me.

2 - Implementation

An scheduler component or API resource that will contact or call other MAAS API resources in order to complete a scheduled task or workflow. Users can program time and day (or even ranges) when the tasks will occur, and this can be extended using a hierarchy task workflow component in order to do several "IFTTT" like scheduled stuff

- Why ?

Maybe we dont need immediate actions on the metal farm, and to have the ability to schedule certains things and having that logic on the MAAS API opens a lot of options for providers that already have their business logic "doing stuff" with their cloud platforms for example (tipical: hosting platforms deploying their VPSs after finishing the billing workflow)

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
Leandro Reox
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.