Is there an easy way to trigger a timed task that execuetes once?

For example,
Stackstorm received a request for increase cpu/mem,
However, such events are only allowed at night.
Can stackstorm itself achieve the goal without relying on external applications?

Can’t say more without understanding broader use-case but sounds like what you are looking for is something asynchronous.

If your alerting/ticketing system is capable of triggering a webhook to StackStorm, you can potentially push/store the request with context in local data store (StackStorm’s MongoDB).

Then have a timer engine based rule that is based on cron (nightly) to trigger and pick up such stored events and process them. The second part is self (StackStorm) driven and does not require outside intervention.

Hope that helps!

That’s exactly what I’m looking for.
But there are some questions for me.
I don’t konw which database/collection to store the request data.(I mean I don’t know which database Stackstorm use to save it’s events)
Maybe I can create a new database myself? And let stackstorm rule read the new databse? I see……

Anyway, are there any documents or reference?

StackStorm uses MongoDB datastore where you can keep this as key/value pair. You can store json for your event as value.
The link above should have everything you need to achieve this.

StackStorm has keys API which you can use to save and retrieve your data. This way you don’t have to separately handle that or maintain a different database.

All the best!

1 Like

Thank you very much!
I never thought to use key/value. I was just use them to save password etc…
I will have a try.
Thank you again