Tasks
Tasks in Loco
serve as ad-hoc functionalities to handle specific aspects of your application. Whether you need to fix data, send emails, delete a user, or update a customer order, creating a dedicated task for each scenario provides a flexible and efficient solution. While tasks require manual execution, the investment is worthwhile for several reasons:
- Automation of Manual Work: Tasks automate manual processes, streamlining repetitive actions.
- Utilization of Familiar Components: Leverage your app's models, libraries, and existing logic within tasks.
- Elimination of UI Development: Tasks don't require building user interfaces, focusing solely on backend operations.
- Potential for UI Automation: If necessary, tasks can be automated with a UI by integrating with job-running tools like Jenkins.
Each task is designed to parse command-line arguments into flags, utilizing the yargs-parsed output of your CLI.
Creating a Task with the CLI Generator
Loco
provides a convenient code generator to simplify the creation of a starter task connected to your project. Use the following command to generate a task:
Generate the task:
&&
Running a Task
Execute the task you created in the previous step using the following command:
Listing All Tasks
To view a list of all tasks that have been executed, use the following command:
Creating a Task manually
If you prefer a manual approach to creating tasks in Loco
, you can follow these steps:
1. Create a Task File
Start by creating a new file under the path src/tasks
. For example, let's create a file named example.rs
:
use *;
;
2. Load the File in mod.rs
Next, ensure that you load the newly created task file in the mod.rs
file within the src/tasks
folder.
3. Register the Task in App Hooks
In your App hook implementation (e.g., App struct), register the task in the register_tasks function:
// src/app.rs
;
These steps ensure that your manually created task, such as ExampleTask, is integrated into Loco's task management system.