-
Notifications
You must be signed in to change notification settings - Fork 13
Write a Rodan job package
Ling-Xiao Yang edited this page Feb 10, 2015
·
24 revisions
The job packages reside in the folder /rodan/jobs/
. A job vendor provides its directory under this folder, where multiple Rodan jobs are defined. A job vendor can define the resource types that are required for its jobs as well.
A Rodan job is defined by a class that inherits rodan.jobs.base.RodanTask
. The class should define the following attributes as its description:
-
name
: [string] a unique name within all the jobs provided by the vendor. -
author
: [string] the author of the job. -
description
: [string] -
settings
: [JSON Schema]1 the validation schema that describes the requirements of the job settings. -
enabled
: [boolean] -
category
: [string] -
interactive
: [boolean] indicates whether the job will pause at some point and wait for manual input.2 -
input_port_types
: [list of dict] each dictionary should include the following keys:-
name
: [string] -
resource_types
: [list of string | lambda: string -> boolean] describes all possible resource MIME-types. If provided with a lambda function, Rodan will automatically filter the matched resource types in its registry. -
minimum
: [number] minimum requirement of the job. 0 indicates no minimum requirement. -
maximum
: [number] maximum requirement of the job. 0 indicates no maximum requirement.
-
-
output_port_types
: [list of dict] the same asinput_port_types
.
1 - At present, Rodan only supports a JSON object as the topmost structure of settings. 2 - It is only informative for the users. It does not affect whether the job will pause. The behaviour of the job is determined by the return value of its execution code.
- Repository Structure
- Working on Rodan
- Testing Production Locally
- Working on Interactive Classifier
- Job Queues
- Testing New Docker Images
- Set up Environment Variables
- Set up SSL with Certbot
- Set up SSH with GitHub
- Deploying on Staging
- Deploying on Production
- Import Previous Data