Contributing a Task
We're tracking reusable Cumulus tasks in this list and, if you've got one you'd like to share with others, read on to learn how.
The tasks.md file is generated in the build process
The tasks list in docs/tasks.md is generated from the list of task package names from the tasks folder.
Do not edit the docs/tasks.md file directly.
Software Best Practices and Expectations
The repository uses lerna to manage the repository. Please reference the Quality and Coverage documentation and the Python Best Practices or TypeScript Best Practices documentation for expectations and tooling for the specific language.
Example Templates and Task Messaging
Example templates have been created for both Python and Typescript tasks for developers that exhibit the best practices and expectations for creating a Cumulus task. Tasks should conform to the Cumulus Message Adapter Schema for inter task messaging. This is the accepted input and output scheme.
Task Layout and Standards
Creating a task
To create a task, start by making a directory under the tasks directory. The new task directory name should be a descriptive name of the task. The name should be in lower case with - used in place of spaces. Copy the contents of the task language example to the new task directory.
The new task directory should look something like the following. Note that the files may differ slightly depending on the language.
.
├── bin
│ └── package.sh