Automated Tasks Framework (ATF)

The Automated Tasks Engine provides a framework and programming interface for performing custom tasks against one or more design-time sites at a scheduled time. This framework runs as a Windows service, separate from the Ingeniux CMS application, and manages the execution of each custom task. Specifically, the framework loads a list of custom tasks, each task in its own thread.

The Automated Task Standard Operations project contains the sample controller for an automated task script that performs basic operations like emptying the recycle bin and publishing pages. It's both a sample project and an actual deployment option. Each task executes at a configured time and the results are logged to a central logging file. These tasks make use of the web API. It's OK for developers to customize this project and the controller, since the site upgrader doesn't overwrite project files during an upgrade.

Automated Task Standard Operations

Except for the Ingeniux CMS references, all references in the project are NuGet packages. The package definitions are in place, but to save space, actual packages are not included in the installer. Before building the project the first time, restoring the packages is recommended.

Unlike the development harness project, the CMS site instance uses this project's compiled output via an MEF-based late-binding system.

The following procedures detail the process of how to get a sample configuration for Automated Tasks up and running:

  1. Installing the Automated Tasks Framework
  2. Setting up Automated Tasks in Visual Studio
  3. Editing Automated Task Framework's Web.config file
  4. Creating Automated Tasks Web API Controllers (Optional)
  5. Configuring Automated Tasks
  6. Testing New Tasks