Scheduler Module
Scheduler implementation for aranode flow engine.
Table of Contents
Installation
To install this module in your aranode project, you just need to add the package using following command:
$ yarn add @a-mehrabi/aranode-scheduler
After that, when you want to use it, you must include it in custom modules like the following:
path: .env
ARANODE_CUSTOM_MODULES=@a-mehrabi/aranode-scheduler
Usage
For using Scheduler, you need three manifests:
-
Periodic scheduler adapter manifest (periodicScheduler)
-
Nonperiodic scheduler adapter manifest (nonperiodicScheduler)
periodic Scheduler
to schedule periodic jobs you have to create a adapter manifest.
flow example:
version: 1
kind: flow
name: flow-name
flow:
start:
nextNode: scheduled
scheduled:
transform:
path: 'dist/input-transformer.js'
terminal: true
Configs example:
path: adapter.yml
version: 1
kind: adapter
name: adapter-name
adapter:
periodicScheduler:
minute:
- 57
path: bind.yml
version: 1
kind: bind
name: bind-name
bind:
flow-name:
- type: inbound
port: inbound-port-name
adapter: adapter-name
nonperiodic Scheduler
to schedule nonperiodic jobs in a specific date you have to create a adapter manifest.
flow example:
version: 1
kind: flow
name: flow-name
flow:
start:
nextNode: scheduled
scheduled:
transform:
path: 'dist/input-transformer.js'
terminal: true
Configs example:
path: adapter.yml
version: 1
kind: adapter
name: adapter-name
adapter:
nonperiodicScheduler:
year: 2021
month: 12
day: 14
hour: 12
mnute: 28
second: 10
path: bind.yml
version: 1
kind: bind
name: bind-name
bind:
flow-name:
- type: inbound
port: inbound-port-name
adapter: adapter-name
API
periodicScheduler
Type: adapter manifest
Options:
-
date (number[]), optional
(1-31).
-
dayOfWeek (number[]), optional
(0-6) Starting with Sunday.
-
hour (number[]), optional
(0-23).
-
minute (number[]), optional
(0-59).
-
month (number[]), optional
(0-11).
-
scond (number[]), optional
(0-59).
-
year (number[]), optional
nonperiodicScheduler
Type: adapter manifest
Options:
-
year (number), required
-
month (number), required
(0-11).
-
day (number), required
-
hour (number), required
(0-23).
-
minute (number), required
(0-59).
-
scond (number), required
(0-59).