You can easily define background jobs in your Directive that Atmo will run on a schedule. Schedules run a set of steps, exactly like a handler. Schedules can be set up with an initial state to provide input.
schedules:- name: atmo-reportevery:hours: 1state:repo: suborbital/atmosteps:- fn: ghstars- fn: send-reportwith:stargazers: ghstars
As you can see, you can choose how often the job runs using the
every clause. You can set seconds, minutes, hours, or days (and you can combine them for values such as 'every 1 hour and 15 minutes').
state clause will allow you to 'seed' the job with values, and that state will update after each step, just as with request handlers. See state for more details.
Any issues running schedules (such as Runnables returning errors or any failures to execute the Runnables) will be logged, but nothing else.