/moodle-tool_lifecycle

:recycle: Extensible Moodle plugin for managing course life cycles, e.g., deprovisioning

Primary LanguagePHPGNU General Public License v3.0GPL-3.0

Course Life Cycle (moodle-tool_lifecycle)

Build Status codecov

Presentation Video Moodle Moot 2022 | Slides

This plugin provides a modular framework, similar to a workflow engine, which allows the to execute recurring tasks within moodle associated with courses. Possible use cases are (not limited to):

  • Deleting courses at end of life (including asking teachers for permission).
  • Doing a rollover at the end of a semester.
  • Automatically setting an end date for courses.

To be adaptable to the needs of different institutions the plugin provides two subplugin types:

Trigger: These subplugins control the conditions a course must meet so that a specific process is started.

Step: These subplugins represent atomic, reusable tasks that should be executed for a specific course.

Subplugins

Requirements that are specific to your institution can be added through additional subplugins. A list of all subplugins and more information can be found in the Wiki (subpluginslist). It provides instructions for administrators as well as for developers to implement their own requirements into subplugins.

Installation

This is an admin plugin and should go into admin/tool/lifecycle. Obtain this plugin from https://moodle.org/plugins/view/tool_lifecycle.

Moodle version

The plugin is continously tested with all moodle versions, which are security supported by the moodle headquarter. Therefore, Travis uses the most current release to build a test instance and run the behat and unit tests on them. In addition to all stable branches the version is tested against the master branch to support early adopters.

Changelog

The changes for every release are listed here: https://github.com/learnweb/moodle-tool_lifecycle/wiki/Change-log.