Forge Home

nexusis_mediawiki

Puppet module for multi-tenant Mediawiki installation.

10,601 downloads

10,410 latest version

1.6 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.

Version information

  • 2.0.4 (latest)
  • 2.0.3
released Mar 17th 2014

Start using this module

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

Add this module to your Puppetfile:

mod 'aimonb-nexusis_mediawiki', '2.0.4'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add aimonb-nexusis_mediawiki
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install aimonb-nexusis_mediawiki --version 2.0.4

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

aimonb/nexusis_mediawiki — version 2.0.4 Mar 17th 2014

Mediawiki module for Puppet (forked by NexusIS)

Nexus IS Fork

This fork brings the module up to date with latest dependency modules as well as adds a Type and Provider for MediaWiki Extensions.

Description

This module deploys and manages multiple mediawiki instances using a single mediawiki installation. This module has been designed and tested for CentOS 6, Red Hat Enterprise Linux 6, Debian Squeeze, Debian Wheezy, and Ubuntu Precise.

Usage

First, install the mediawiki package which will be used by all wiki instances:

class { 'mediawiki': server_name => 'www.example.com', admin_email => 'admin@puppetlabs.com', db_root_password => 'really_really_long_password', doc_root => '/var/www/wikis' max_memory => '1024' }

Next, create an individual wiki instance:

mediawiki::instance { 'my_wiki1': db_password => 'super_long_password', db_name => 'wiki1', db_user => 'wiki1_user', port => '80', ensure => 'present' }

Using this module, one can create multiple independent wiki instances. To create another wiki instance, add the following puppet code:

mediawiki::instance { 'my_wiki2': db_password => 'another_super_long_password', db_name => 'another_wiki', db_user => 'another_wiki_user' port => '80', ensure => 'present' }

You can now also manage Extensions:

mediawiki::manage_extension{'ConfirmAccount': ensure => present, instance => 'my_wiki1', source => 'https://codeload.github.com/wikimedia/mediawiki-extensions-ConfirmAccount/legacy.tar.gz/REL1_22', doc_root => '/var/www/wikis', require => Mediawiki::Instance['my_wiki1'] }

Preconditions

Since puppet cannot ensure that all parent directories exist you need to manage these yourself. Therefore, make sure that all parent directories of doc_root directory, an attribute of mediawiki class, exist.

Notes On Testing

Puppet module tests reside in the spec directory. To run tests, execute rake spec anywhere in the module's directory. More information about module testing can be found here:

The Next Generation of Puppet Module Testing

Reference

This module is based on puppet-mediawiki by martasd available at https://github.com/martasd/puppet-mediawiki.