Forge Home

dokuwiki

Manages a DokuWiki instance.

8,117 downloads

7,895 latest version

4.3 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Support the Puppet Community by contributing to this module

You are welcome to contribute to this module by suggesting new features, currency updates, or fixes. Every contribution is valuable to help ensure that the module remains compatible with the latest Puppet versions and continues to meet community needs. Complete the following steps:

  1. Review the module’s contribution guidelines and any licenses. Ensure that your planned contribution aligns with the author’s standards and any legal requirements.
  2. Fork the repository on GitHub, make changes on a branch of your fork, and submit a pull request. The pull request must clearly document your proposed change.

For questions about updating the module, contact the module’s author.

Version information

  • 0.1.1 (latest)
  • 0.1.0
released Jan 10th 2016
This version is compatible with:
  • Puppet Enterprise >= 3.8.0 < 2015.4.0
  • Puppet >= 3.8.0 < 5.0.0
  • , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'alanpetersen-dokuwiki', '0.1.1'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add alanpetersen-dokuwiki
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install alanpetersen-dokuwiki --version 0.1.1

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

alanpetersen/dokuwiki — version 0.1.1 Jan 10th 2016

dokuwiki

Table of Contents

  1. Overview
  2. Usage - Basic usage information for the module
  3. Reference - Custom types used by the module
  4. Limitations - What the module supports

Overview

This module manages a dokuwiki instance. DokuWiki is a simple to use and highly versatile Open Source wiki software that doesn't require a database. More information can be found at the Dokuwiki website: https://www.dokuwiki.org.

Usage

This module does not manage the webserver that servers up the wiki... you need to manage that yourself. The module also does not manage PHP, that must be managed separately.

At a minimum, when using the dokuwiki class you should specify the wiki_title and install_dir parameters. These can be done in a typical class declaration:

class { 'dokuwiki':
    wiki_title  => 'My First Wiki',
    install_dir => '/opt/www/dokuwiki',
}

Class Parameters

  • install_dir - directory that the Dokuwiki instance can be reached. Since the Dokuwiki tarball expands into a directory with the version number, the install_dir will be a symbolic link that points to the actual extraction. This defaults to /opt/www/dokuwiki.
  • download_url - the URL from which the Dokuwiki distribution is retrieved. By default, this is the latest stable version: http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz.
  • version - the version of Dokuwiki that will be installed. This parameter is required if you do not specify 'autolink'.
  • autolink - a boolean true|false indicating whether or not the version should be automatically determined (via the $DOKUWIKI/VERSION file). This defaults to true. If set to false, then the version parameter must also be set.
  • www_owner - the OS user that will own the extracted directory and symlink.
  • www_group - the OS group that will own the extracted directory and symlink.
  • htaccess - the location of the htaccess file to install. By default, this is set to puppet:///modules/dokuwiki/htaccess`.
  • wiki_title - the title for the wiki.
  • license - Defaults to cc-by-sa. Supported licenses are:
  • language - the language setting for the wiki. Defaults to en.
  • useacl - a flag indicating whether or not to use access control lists. Defaults to '1'
  • superuser - the username for the superuser (admin) local Dokuwiki account. Defaults to admin.
  • superpassword - the password for the superuser (admin) local Dokuwiki account. Defaults to password.
  • superemail - the email address for the superuser (admin) local Dokuwiki account. Defaults to admin@host.com.
  • disableactions - an array of which actions to disable. Defaults to ['register'] which prevents users from registering themselves.
  • authad - a flag [0,1] indicating whether AD authentication is enabled. Currently unsupported and set to 0.
  • authldap - a flag [0,1] indicating whether LDAP authentication is enabled. Currently unsupported and set to 0.
  • authmysql - a flag [0,1] indicating whether Mysql authentication is enabled. Currently unsupported and set to 0.
  • authpgsql - a flag [0,1] indicating whether PostgreSQL authentication is enabled. Currently unsupported and set to 0.

Example usage:

$install_dir = '/opt/www/dokuwiki'
class { 'apache':
    mpm_module => 'prefork',
}
class { 'apache::mod::php': }
apache::vhost { $::fqdn:
    docroot        => $install_dir,
    manage_docroot => false,
    port           => '80',
    override       => 'All',
}
class { 'dokuwiki':
    install_dir => $install_dir,
    wiki_title => 'My First Wiki',
}

Reference

The dokuwiki_user custom type provides a mechanism for managing users in the users.auth.php file.

For example, to manage a user account jschmoe on the node, you can do the following:

dokuwiki_user { 'jschmoe':
    fullname     => 'Joe Schmoe',
    password     => 'secretpassword',
    email        => 'jschmoe@host.com',
    groups       => 'user',
}

On the node, the puppet resource command can be used to manage dokuwiki_user resources. For example, puppet resource dokuwiki_user will list all the Dokuwiki users.

Limitations

Although various authentication mechanisms (LDAP, AD, MySQL, PostgreSQL) can be used with Dokuwiki, this module currenly only supports using built-in authentication. User entries are stored in the $DOKUWIKI/conf/users.auth.php file.