Code Monkey home page Code Monkey logo

puppet-reposado's Introduction

Reposado module for Puppet

This module allows you to install and configure reposado. It requires the vcsrepo type to clone reposado from the github repository.

Usage

Installation

The reposado::install class installs the reposado tools and creates all the required directories, it will also automatically schedule a cron job to synchronize your update repository nightly.

class { 'reposado::install':
	# The directory where the reposado utility will reside
	root_dir => "/usr/local/reposado",

	# The directory where the updates will reside, most likely a different partition (Currently requires ~48GB)
	updates_dir => "${root_dir}/html",

	# The directory where the metadata will reside.
	meta_dir => "${root_dir}/metadata",

	# The local catalog url base, which will be the base url prefix for all updates, this should be the url that
	# your clients will use.
	base_url => "http://${fqdn}",

	# Owner and group of the reposado directories and cron job.
	reposado_user => 'root',
	reposado_group => 'root',

	# Group that the httpd service runs as, to ensure read access to updates and meta directories.
	# The updates and metadata directories will still be owned by the reposado user.
	www_group => 'apache',

	# Advanced Options
	# These are not normally required
	# ----------------

	# Options to curl
	curl_options => [],

	# Apple catalog urls, reposado already comes with the correct urls
	catalog_urls => [],

	# Preferred localizations
	preferred_locales => [],

	# Path to curl binary
	curl_path => '',
}

Examples

Basic installation which will default to all contents being placed in /usr/local/reposado.

class { 'reposado::install': }

Or specify your own directories where the updates will reside, in your apache vhosts directory for instance.

class { 'reposado::install':
    updates_dir => "/var/www/reposado/html",
    meta_dir    => "/var/www/reposado/metadata",
}

Configuration

The site URL will default to the FQDN of the machine, which will probably be wrong if you are serving reposado from a vhost.

You need to define the reposado class to do configuration of reposado defaults (like the URL of your update repository). All of the configuration options are identical to those used with reposado::install, so you should supply the exact same values here.

Examples

The most basic reposado configuration possible

class { 'reposado':
    updates_dir => "/var/www/reposado/html",
    meta_dir    => "/var/www/reposado/metadata",
    base_url    => "http://softwareupdate.localdomain",
}

NOTE that this class is not responsible for setting up and configuring apache vhosts or whichever webserver you are using.

TODO

  • Uses outdated apache module, create Gemfile dependency on puppet-apache
  • Optional module to install margarita
  • Maybe re-evaluate using a params class.

puppet-reposado's People

Contributors

mosen avatar chrigl avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.