Incubating: Global CSV feeding for Moodle

tool_sync
Maintained by Picture of Valery Fremaux Valery Fremaux
This plugin concentrates all CSV based approaches for feeding massively Moodle with initialisations as courses, users, and enrollements, completing all existing mechanisms with missing parts (cron automation, failure reports, tryback files, archiving, CSV files repository and selection, instant upload and run).
41 sites
39 downloads
10 fans

The Admin Tool Sync plugin provides an industry level unified set of tools in order to massively operate Moodle loads and unloads of major data entities.

This tool was priorily intended to complete all standard tools around CSV files loading with systematic handling by cron, manual operation, and resulted more confortable to join all those tools in an "all in one" version. Most of the code for making end operations is largely inspired frol core CSV features, with some enhancements.

The versions < 2.7, use a special <moodledata>/sync file manager (outside moodle file system to allow easy feeding of CSV files from an outside administrative process). From Moodle 2.7 ahead, the sync file manager has been reintegrated into standard moodle file handling, although the original sync container is still used for csv external inputs just before cron runs. All the files in <moodledata></sync will be automatically integrated into the Admin Tool Sync filearea for processing.

What is added :

  • All tools (except course reinitialisation or deletion) can be fully croned.
  • All tools can generate a tryback file keeping only discarded inputs (failed)
  • All tools will archive the processed files into the archive directory
  • All tools can be used from an immediate file upload (manual run)
  • All tools can use any input file stored into the CSV file container, and keep track in configuration of which file to use.
  • Course mass reinitialisation tool is added
  • Course mass creation handles template designation to initiate a course with content, either pointing an available backup (all versions) or pointing an external file in the server (>= 2.7)
  • Exhaustive reports give detailed status on each operation.
  • Reports are generated ans stored in "reports" folder.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5
Screenshot #6

Contributors

Picture of Valery Fremaux
Valery Fremaux (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • Picture of David Mudrák
    Wed, 10 Sep 2014, 10:15 PM
    Hi again Valery. Thanks for sharing yet another plugin with the community. I quite like the idea of the tool. I can see its potential in all development, testing and production setups.

    There are some issues that raised during the review of the plugin.

    * The SQL function IF() is MySQL specific and makes your plugin fail on other databases. If there is no other way around, you will probably have to try and implement it via SQL standard CASE statement.
    * Please pay attention to PHP Notices thrown in development debug mode (e.g. Notice: Undefined property: stdClass::$users_filelocation in admin/tool/sync/users/execcron.php on line 50).
    * It would really help if there was an in-built help on CSV files format.

    Fow now, I am marking this plugin as needing more work to get these issues addressed. Thanks for your patience with the approval process.
  • Picture of Plugins bot
    Wed, 15 Jul 2015, 8:05 PM
  • Picture of David Mudrák
    Thu, 16 Jul 2015, 2:32 AM

    Thanks Valery for sharing the tool with the community. The absence of relevant documentation/help in English makes the functionality testing a bit harder. Also, some coding related issues were detected during the review. For now, I moved the plugin into the Incubating category. Once the issues reported to your bug tracker are fixed, please feel free to contact us so that the plugin can be re-evaluated and put into the Admin tools category.

  • Picture of Jesse H
    Wed, 22 Jul 2015, 11:53 AM
    I think this tool does exactly what i need, but I have no idea how to use it. The documentation is very limited. Is there any chance of an English guide?
  • Picture of Zabelle Motte
    Wed, 25 Nov 2015, 6:46 PM
    Any information about 2.9 support ?
Please login to post comments