Overview
Moodle is a learning platform designed to provide educators, administrators and learners with a single robust, secure and integrated system to create personalised learning environments. This charm deploys Moodle 3.3 (using git://git.moodle.org/moodle.git as source) as outlined by the Moodle Installation Guide.
Usage
To install Moodle by Juju charm, you need to deploy PostgreSQL or MySQL and set relation between them. Follow this step by step instructions on using the charm:
juju deploy postgresql (or juju deploy mysql)
juju deploy cs:~csd-garr/moodle
juju add-relation postgresql:db moodle (or juju add-relation mysql moodle)
Expose the Moodle installation
juju expose moodle
You can then browse to http(s)://ip-address to configure the service.
Default username and password of Administrator user are: Username: admin Password: moodle
Configuration
Moodle charm provides several options to customize your installation for your needs.
##DNS Name You can set the FQDN of your Moodle web site; if is blank, it will be set with IP address of machine/container.
juju config moodle dnsname=www.example.com
##Use HTTPS You can enable HTTPS only by check this option. If you don't specify SSL cert, SSL key (end eventually SSL CA cert), it will use self-signed certificates.
juju config moodle use-https=true
##SSL cert, SSL key, SSL CA You can specify valid SSL certificate, key and CA cert by paste them (encoded in base64) in the relative charm options. SSL CA cert is required if you are providing a privately signed SSL cert and SSL key.
juju config moodle ssl_cert="$(cat cert.pem | base64)"
juju config moodle ssl_key="$(cat key.pem | base64)"
juju config moodle ssl_ca="$(cat cacert.pem | base64)"
##PHP ini upload-max-filesize, post-max-size You can change upload-max-filesize and post-max-size PHP ini parameters. If you want that Moodle can upload large files, you must modify this charm options.
juju config moodle upload-max-filesize=500M
juju config moodle post-max-size=500M
##Auto update If you enable this feature a cron job will be installed, and every night checks and eventually updates Moodle software via git. Only minor update will be installed; for version upgrade you must set "branch" charm option. Note that enabling auto-update may overwrite customization of Moodle files.
juju config moodle auto-update=true
##Branch It refers to Moodle git branch. By default this charm checkouts MOODLE_34_STABLE branch, but you can upgrade your Moodle installation by setting this charm option
juju config moodle branch=MOODLE_XY_STABLE
##Moodle data dir Path of the Moodle data directory
juju config moodle datadir="/moodledata"
##Enable SMTP Moodle needs to send e-mail notifications to users. You can set up your outgoing e-mail configuration using an external SMTP server or enabling "enable-smtp" parameter in order to install a local Postfix SMTP server
juju config moodle enable-smtp=true