Skip to content

locp/puppet-odoo

Repository files navigation

odoo

CircleCI Build Status Coverage Status Join the chat at https://gitter.im/locp/puppet-odoo

Table of Contents

  1. Description
  2. Setup - The basics of getting started with odoo
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module

Description

Install Odoo Communinty edition in a manner similar to that described in Installing Odoo.

Setup

What odoo affects

  • Installs the odoo package from the Odoo repository.
  • Configures /etc/odoo/odoo.conf.
  • Manipulates the running state of the odoo service.
  • Optionally configures repositories to enable package installations from the Odoo nightly builds.
  • Optionally installs the wkhtmltopdf package from the Odoo repository.

Beginning with odoo

include ::odoo::repo10
include ::odoo

or for Odoo 9:

include ::odoo::repo9
include ::odoo

Do not have both ::odoo::repo9 and ::odoo::repo10 in your catalogue for the same node as they will both be attempting to update the repository file.

Usage

The following example will install a basic PostgreSQL database on the node (using [puppetlabs-postgresql](https://forge.puppet.com/puppetlabs/postgresql)) it then configures the the Odoo 9 repositories. It then installs the odoo and wkhtmltopdf packages with some settings for the Odoo server:

class { 'postgresql::server':
  before => Class['odoo']
}

class { '::odoo::repo9':
  before => Class['odoo']
}

class { '::odoo':
  config_file         => '/etc/odoo/openerp-server.conf',
  install_wkhtmltopdf => true,
  settings            => {
    'options' => {
      'admin_passwd' => 'XXX_TOP_SECRET_XXX',
      'db_host'      => 'False',
      'db_port'      => 'False',
      'db_user'      => 'odoo',
      'db_password'  => 'False',
      'addons_path'  => '/usr/lib/python2.7/dist-packages/openerp/addons',
    }
  },
  version             => present,
}

To do the same for Odoo 10:

class { 'postgresql::server':
  before => Class['odoo']
}

class { '::odoo::repo10':
  before => Class['odoo']
}

class { '::odoo':
  install_wkhtmltopdf => true,
  settings            => {
    'options' => {
      'admin_passwd' => 'XXX_TOP_SECRET_XXX',
      'db_host'      => 'False',
      'db_port'      => 'False',
      'db_user'      => 'odoo',
      'db_password'  => 'False',
      'addons_path'  => '/usr/lib/python2.7/dist-packages/odoo/addons',
    }
  },
}

Reference

Public Classes

Limitations

This module does not in anyway configure PostgreSQL.

Development

Contributions will be gratefully accepted. Please go to the project page, fork the project, make your changes locally and then raise a pull request. Details on how to do this are available at https://guides.github.com/activities/contributing-to-open-source.