Puppet Class: r10k

Inherits:
r10k::params
Defined in:
manifests/init.pp

Summary

This class configures r10k

Overview

Parameters:

  • remote (String[1]) (defaults to: $r10k::params::remote)
  • configfile (Stdlib::Absolutepath) (defaults to: '/etc/puppetlabs/r10k/r10k.yaml')
  • version (String[1]) (defaults to: $r10k::params::version)
  • puppet_master (Boolean) (defaults to: $r10k::params::puppet_master)
  • modulepath (String[1]) (defaults to: $r10k::params::modulepath)
  • manage_modulepath (Boolean) (defaults to: $r10k::params::manage_modulepath)
  • r10k_basedir (Stdlib::Absolutepath) (defaults to: $r10k::params::r10k_basedir)
  • package_name (String[1]) (defaults to: $r10k::params::package_name)
  • provider (String[1]) (defaults to: $r10k::params::provider)
  • gentoo_keywords (String) (defaults to: '')
  • install_options (Variant[Array,String]) (defaults to: [])
  • mcollective (Boolean) (defaults to: $r10k::params::mcollective)
  • git_settings (Optional[Hash]) (defaults to: undef)
  • deploy_settings (Hash) (defaults to: { 'generate_types' => true, 'exclude_spec' => true, })
  • root_user (String[1]) (defaults to: $r10k::params::root_user)
  • gem_source (Optional[String[1]]) (defaults to: undef)
  • root_group (String[1]) (defaults to: $r10k::params::root_group)
  • include_prerun_command (Boolean) (defaults to: false)
  • include_postrun_command (Boolean) (defaults to: false)
  • puppetconf_path (Stdlib::Absolutepath) (defaults to: $r10k::params::puppetconf_path)
  • cachedir (Stdlib::Absolutepath) (defaults to: "${facts['puppet_vardir']}/r10k")

    Path to a directory to be used by r10k for caching data

  • sources (Optional[Hash]) (defaults to: undef)

    Hash containing data sources to be used by r10k to create dynamic Puppet environments

  • postrun (Optional[Array[String[1]]]) (defaults to: undef)

    Array containing the parts of a system call Example: [‘/usr/bin/curl’, ‘-F’, ‘deploy=done’, ‘my-app.site/endpoint’]

  • manage_configfile_symlink (Boolean) (defaults to: false)

    determine if a symlink to the r10k config file is to be managed

  • configfile_symlink (Stdlib::Absolutepath) (defaults to: '/etc/r10k.yaml')

    Location of symlink that points to configfile

  • forge_settings (Optional[Hash]) (defaults to: undef)

    Hash containing settings for downloading modules from the Puppet Forge

  • proxy (Optional[String[1]]) (defaults to: undef)

    String containing proxy setting for r10k.yaml

  • pool_size (Integer[1]) (defaults to: $facts['processors']['count'])

    Integer defining how many threads should be spawn while updating modules

  • ensure (Enum['absent','present']) (defaults to: 'present')

    if r10k should be installed or purged



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'manifests/init.pp', line 41

class r10k (
  String[1] $remote                                           = $r10k::params::remote,
  Optional[Hash] $sources                                     = undef,
  Stdlib::Absolutepath $cachedir                              = "${facts['puppet_vardir']}/r10k",
  Stdlib::Absolutepath $configfile                            = '/etc/puppetlabs/r10k/r10k.yaml',
  String[1] $version                                          = $r10k::params::version,
  Boolean $puppet_master                                      = $r10k::params::puppet_master,
  String[1] $modulepath                                       = $r10k::params::modulepath,
  Boolean $manage_modulepath                                  = $r10k::params::manage_modulepath,
  Stdlib::Absolutepath $r10k_basedir                          = $r10k::params::r10k_basedir,
  String[1] $package_name                                     = $r10k::params::package_name,
  String[1] $provider                                         = $r10k::params::provider,
  String $gentoo_keywords                                     = '', # lint:ignore:params_empty_string_assignment
  Variant[Array,String] $install_options                      = [],
  Boolean $mcollective                                        = $r10k::params::mcollective,
  Boolean $manage_configfile_symlink                          = false,
  Stdlib::Absolutepath $configfile_symlink                    = '/etc/r10k.yaml',
  Optional[Hash] $git_settings                                = undef,
  Optional[Hash] $forge_settings                              = undef,
  Hash $deploy_settings                                       = { 'generate_types' => true, 'exclude_spec' => true, },
  String[1] $root_user                                        = $r10k::params::root_user,
  Optional[String[1]] $proxy                                  = undef,
  Integer[1] $pool_size                                       = $facts['processors']['count'],
  Optional[String[1]] $gem_source                             = undef,
  String[1] $root_group                                                 = $r10k::params::root_group,
  Optional[Array[String[1]]] $postrun                         = undef,
  Boolean $include_prerun_command                             = false,
  Boolean $include_postrun_command                            = false,
  Stdlib::Absolutepath $puppetconf_path                       = $r10k::params::puppetconf_path,
  Enum['absent','present'] $ensure                            = 'present',
) inherits r10k::params {
  # Check if user is declaring both classes
  # Other classes like r10k::webhook is supported but
  # using both classes makes no sense unless given pe_r10k
  # overrides this modules default config
  if defined(Class['pe_r10k']) {
    fail('This module does not support being declared with pe_r10k')
  }

  if $include_prerun_command {
    include r10k::prerun_command
  }

  if $include_postrun_command {
    include r10k::postrun_command
  }

  contain r10k::install
  contain r10k::config

  if $mcollective {
    class { 'r10k::mcollective': }
  }
}