diff --git a/Gemfile b/Gemfile index 4192f80..5f361bc 100644 --- a/Gemfile +++ b/Gemfile @@ -1,29 +1,29 @@ source ENV['GEM_SOURCE'] || "https://rubygems.org" group :development, :test do # Pinning `rake` because `v11` doesn't support Ruby 1.8.7 gem 'rake', '10.5.0' gem 'puppetlabs_spec_helper', :require => false # Pinning due to bug in newer rspec with Ruby 1.8.7 gem 'rspec-core', '3.1.7' gem 'rspec-puppet', '~> 2.0' gem 'rspec-puppet-facts' - gem 'puppet-lint', '~> 1.1' + gem 'puppet-lint', '~> 2' gem 'metadata-json-lint', '0.0.11' if RUBY_VERSION < '1.9' gem 'metadata-json-lint' if RUBY_VERSION >= '1.9' gem 'json', '~> 1.8' end group :system_tests do gem 'beaker', :require => false gem 'beaker-rspec', :require => false gem 'beaker-puppet_install_helper', :require => false gem 'beaker-module_install_helper', :require => false gem 'serverspec', :require => false end if puppetversion = ENV['PUPPET_GEM_VERSION'] gem 'puppet', puppetversion, :require => false else gem 'puppet', :require => false end diff --git a/manifests/server.pp b/manifests/server.pp index 92f35af..5b02c3f 100644 --- a/manifests/server.pp +++ b/manifests/server.pp @@ -1,329 +1,325 @@ # Class to configure a PuppetDB server. See README.md for more details. class puppetdb::server ( - $listen_address = $puppetdb::params::listen_address, - $listen_port = $puppetdb::params::listen_port, - $disable_cleartext = $puppetdb::params::disable_cleartext, - $open_listen_port = $puppetdb::params::open_listen_port, - $ssl_listen_address = $puppetdb::params::ssl_listen_address, - $ssl_listen_port = $puppetdb::params::ssl_listen_port, - $disable_ssl = $puppetdb::params::disable_ssl, - $open_ssl_listen_port = $puppetdb::params::open_ssl_listen_port, - $ssl_dir = $puppetdb::params::ssl_dir, - $ssl_set_cert_paths = $puppetdb::params::ssl_set_cert_paths, - $ssl_cert_path = $puppetdb::params::ssl_cert_path, - $ssl_key_path = $puppetdb::params::ssl_key_path, - $ssl_ca_cert_path = $puppetdb::params::ssl_ca_cert_path, - $ssl_deploy_certs = $puppetdb::params::ssl_deploy_certs, - $ssl_key = $puppetdb::params::ssl_key, - $ssl_cert = $puppetdb::params::ssl_cert, - $ssl_ca_cert = $puppetdb::params::ssl_ca_cert, - $ssl_protocols = $puppetdb::params::ssl_protocols, - $cipher_suites = $puppetdb::params::cipher_suites, - $database = $puppetdb::params::database, - $database_host = $puppetdb::params::database_host, - $database_port = $puppetdb::params::database_port, - $database_username = $puppetdb::params::database_username, - $database_password = $puppetdb::params::database_password, - $database_name = $puppetdb::params::database_name, - $database_ssl = $puppetdb::params::database_ssl, - $jdbc_ssl_properties = $puppetdb::params::jdbc_ssl_properties, - $database_validate = $puppetdb::params::database_validate, - $database_embedded_path = $puppetdb::params::database_embedded_path, - $node_ttl = $puppetdb::params::node_ttl, - $node_purge_ttl = $puppetdb::params::node_purge_ttl, - $report_ttl = $puppetdb::params::report_ttl, - $gc_interval = $puppetdb::params::gc_interval, - $log_slow_statements = $puppetdb::params::log_slow_statements, - $conn_max_age = $puppetdb::params::conn_max_age, - $conn_keep_alive = $puppetdb::params::conn_keep_alive, - $conn_lifetime = $puppetdb::params::conn_lifetime, - $puppetdb_package = $puppetdb::params::puppetdb_package, - $puppetdb_service = $puppetdb::params::puppetdb_service, - $puppetdb_service_status = $puppetdb::params::puppetdb_service_status, - $puppetdb_user = $puppetdb::params::puppetdb_user, - $puppetdb_group = $puppetdb::params::puppetdb_group, - $read_database = $puppetdb::params::read_database, - $read_database_host = $puppetdb::params::read_database_host, - $read_database_port = $puppetdb::params::read_database_port, - $read_database_username = $puppetdb::params::read_database_username, - $read_database_password = $puppetdb::params::read_database_password, - $read_database_name = $puppetdb::params::read_database_name, - $read_database_ssl = $puppetdb::params::read_database_ssl, - $read_database_jdbc_ssl_properties = $puppetdb::params::read_database_jdbc_ssl_properties, - $read_database_validate = $puppetdb::params::read_database_validate, - $read_log_slow_statements = $puppetdb::params::read_log_slow_statements, - $read_conn_max_age = $puppetdb::params::read_conn_max_age, - $read_conn_keep_alive = $puppetdb::params::read_conn_keep_alive, - $read_conn_lifetime = $puppetdb::params::read_conn_lifetime, - $confdir = $puppetdb::params::confdir, - $vardir = $puppetdb::params::vardir, - $manage_firewall = $puppetdb::params::manage_firewall, - $java_args = $puppetdb::params::java_args, - $merge_default_java_args = $puppetdb::params::merge_default_java_args, - $max_threads = $puppetdb::params::max_threads, - $command_threads = $puppetdb::params::command_threads, - $concurrent_writes = $puppetdb::params::concurrent_writes, - $store_usage = $puppetdb::params::store_usage, - $temp_usage = $puppetdb::params::temp_usage, - $disable_update_checking = $puppetdb::params::disable_update_checking, - $certificate_whitelist_file = $puppetdb::params::certificate_whitelist_file, - $certificate_whitelist = $puppetdb::params::certificate_whitelist, - $database_max_pool_size = $puppetdb::params::database_max_pool_size, - $read_database_max_pool_size = $puppetdb::params::read_database_max_pool_size, + $listen_address = $puppetdb::params::listen_address, + $listen_port = $puppetdb::params::listen_port, + $disable_cleartext = $puppetdb::params::disable_cleartext, + $open_listen_port = $puppetdb::params::open_listen_port, + $ssl_listen_address = $puppetdb::params::ssl_listen_address, + $ssl_listen_port = $puppetdb::params::ssl_listen_port, + $disable_ssl = $puppetdb::params::disable_ssl, + $open_ssl_listen_port = $puppetdb::params::open_ssl_listen_port, + Stdlib::Absolutepath $ssl_dir = $puppetdb::params::ssl_dir, + Boolean $ssl_set_cert_paths = $puppetdb::params::ssl_set_cert_paths, + Stdlib::Absolutepath $ssl_cert_path = $puppetdb::params::ssl_cert_path, + Stdlib::Absolutepath $ssl_key_path = $puppetdb::params::ssl_key_path, + Stdlib::Absolutepath $ssl_ca_cert_path = $puppetdb::params::ssl_ca_cert_path, + Boolean $ssl_deploy_certs = $puppetdb::params::ssl_deploy_certs, + $ssl_key = $puppetdb::params::ssl_key, + $ssl_cert = $puppetdb::params::ssl_cert, + $ssl_ca_cert = $puppetdb::params::ssl_ca_cert, + $ssl_protocols = $puppetdb::params::ssl_protocols, + $cipher_suites = $puppetdb::params::cipher_suites, + $database = $puppetdb::params::database, + $database_host = $puppetdb::params::database_host, + $database_port = $puppetdb::params::database_port, + $database_username = $puppetdb::params::database_username, + $database_password = $puppetdb::params::database_password, + $database_name = $puppetdb::params::database_name, + $database_ssl = $puppetdb::params::database_ssl, + $jdbc_ssl_properties = $puppetdb::params::jdbc_ssl_properties, + $database_validate = $puppetdb::params::database_validate, + $database_embedded_path = $puppetdb::params::database_embedded_path, + $node_ttl = $puppetdb::params::node_ttl, + $node_purge_ttl = $puppetdb::params::node_purge_ttl, + $report_ttl = $puppetdb::params::report_ttl, + $gc_interval = $puppetdb::params::gc_interval, + $log_slow_statements = $puppetdb::params::log_slow_statements, + $conn_max_age = $puppetdb::params::conn_max_age, + $conn_keep_alive = $puppetdb::params::conn_keep_alive, + $conn_lifetime = $puppetdb::params::conn_lifetime, + $puppetdb_package = $puppetdb::params::puppetdb_package, + $puppetdb_service = $puppetdb::params::puppetdb_service, + $puppetdb_service_status = $puppetdb::params::puppetdb_service_status, + $puppetdb_user = $puppetdb::params::puppetdb_user, + $puppetdb_group = $puppetdb::params::puppetdb_group, + $read_database = $puppetdb::params::read_database, + $read_database_host = $puppetdb::params::read_database_host, + $read_database_port = $puppetdb::params::read_database_port, + $read_database_username = $puppetdb::params::read_database_username, + $read_database_password = $puppetdb::params::read_database_password, + $read_database_name = $puppetdb::params::read_database_name, + $read_database_ssl = $puppetdb::params::read_database_ssl, + $read_database_jdbc_ssl_properties = $puppetdb::params::read_database_jdbc_ssl_properties, + $read_database_validate = $puppetdb::params::read_database_validate, + $read_log_slow_statements = $puppetdb::params::read_log_slow_statements, + $read_conn_max_age = $puppetdb::params::read_conn_max_age, + $read_conn_keep_alive = $puppetdb::params::read_conn_keep_alive, + $read_conn_lifetime = $puppetdb::params::read_conn_lifetime, + $confdir = $puppetdb::params::confdir, + $vardir = $puppetdb::params::vardir, + $manage_firewall = $puppetdb::params::manage_firewall, + $java_args = $puppetdb::params::java_args, + $merge_default_java_args = $puppetdb::params::merge_default_java_args, + $max_threads = $puppetdb::params::max_threads, + $command_threads = $puppetdb::params::command_threads, + $concurrent_writes = $puppetdb::params::concurrent_writes, + $store_usage = $puppetdb::params::store_usage, + $temp_usage = $puppetdb::params::temp_usage, + $disable_update_checking = $puppetdb::params::disable_update_checking, + $certificate_whitelist_file = $puppetdb::params::certificate_whitelist_file, + $certificate_whitelist = $puppetdb::params::certificate_whitelist, + $database_max_pool_size = $puppetdb::params::database_max_pool_size, + $read_database_max_pool_size = $puppetdb::params::read_database_max_pool_size, ) inherits puppetdb::params { + # deprecation warnings - if $database_ssl != undef { + if $database_ssl { warning('$database_ssl is deprecated and will be removed in the next major release. Please use $jdbc_ssl_properties = "?ssl=true" instead.') } - if $read_database_ssl != undef { + if $read_database_ssl { warning('$read_database_ssl is deprecated and will be removed in the next major release. Please use $read_database_jdbc_ssl_properties = "?ssl=true" instead.') } # Apply necessary suffix if zero is specified. + # Can we drop this in the next major release? if $node_ttl == '0' { - $node_ttl_real = '0s' + $_node_ttl_real = '0s' } else { - $node_ttl_real = downcase($node_ttl) + $_node_ttl_real = downcase($node_ttl) } # Validate node_ttl - validate_re ($node_ttl_real, ['^\d+(d|h|m|s|ms)$'], "node_ttl is <${node_ttl}> which does not match the regex validation") + $node_ttl_real = assert_type(Puppetdb::Ttl, $_node_ttl_real) # Apply necessary suffix if zero is specified. + # Can we drop this in the next major release? if $node_purge_ttl == '0' { - $node_purge_ttl_real = '0s' + $_node_purge_ttl_real = '0s' } else { - $node_purge_ttl_real = downcase($node_purge_ttl) + $_node_purge_ttl_real = downcase($node_purge_ttl) } # Validate node_purge_ttl - validate_re ($node_purge_ttl_real, ['^\d+(d|h|m|s|ms)$'], "node_purge_ttl is <${node_purge_ttl}> which does not match the regex validation") + $node_purge_ttl_real = assert_type(Puppetdb::Ttl, $_node_purge_ttl_real) # Apply necessary suffix if zero is specified. + # Can we drop this in the next major release? if $report_ttl == '0' { - $report_ttl_real = '0s' + $_report_ttl_real = '0s' } else { - $report_ttl_real = downcase($report_ttl) + $_report_ttl_real = downcase($report_ttl) } # Validate report_ttl - validate_re ($report_ttl_real, ['^\d+(d|h|m|s|ms)$'], "report_ttl is <${report_ttl}> which does not match the regex validation") + $repor_ttl_real = assert_type(Puppetdb::Ttl, $_report_ttl_real) # Validate puppetdb_service_status $service_enabled = $puppetdb_service_status ? { /(running|true)/ => true, /(stopped|false)/ => false, default => fail("puppetdb_service_status valid values are 'true', 'running', 'false', and 'stopped'. You provided '${puppetdb_service_status}'"), } # Validate database type (Currently only postgres and embedded are supported) if !($database in ['postgres', 'embedded']) { fail("database must must be 'postgres' or 'embedded'. You provided '${database}'") } # Validate read-database type (Currently only postgres is supported) if !($read_database in ['postgres']) { fail("read_database must be 'postgres'. You provided '${read_database}'") } package { $puppetdb_package: ensure => $puppetdb::params::puppetdb_version, notify => Service[$puppetdb_service], } if $manage_firewall { class { 'puppetdb::server::firewall': http_port => $listen_port, open_http_port => $open_listen_port, ssl_port => $ssl_listen_port, open_ssl_port => $open_ssl_listen_port, } } class { 'puppetdb::server::global': vardir => $vardir, confdir => $confdir, puppetdb_user => $puppetdb_user, puppetdb_group => $puppetdb_group, notify => Service[$puppetdb_service], } class { 'puppetdb::server::command_processing': command_threads => $command_threads, concurrent_writes => $concurrent_writes, store_usage => $store_usage, temp_usage => $temp_usage, confdir => $confdir, notify => Service[$puppetdb_service], } class { 'puppetdb::server::database': database => $database, database_host => $database_host, database_port => $database_port, database_username => $database_username, database_password => $database_password, database_name => $database_name, database_ssl => $database_ssl, database_max_pool_size => $database_max_pool_size, jdbc_ssl_properties => $jdbc_ssl_properties, database_validate => $database_validate, database_embedded_path => $database_embedded_path, node_ttl => $node_ttl, node_purge_ttl => $node_purge_ttl, report_ttl => $report_ttl, gc_interval => $gc_interval, log_slow_statements => $log_slow_statements, conn_max_age => $conn_max_age, conn_keep_alive => $conn_keep_alive, conn_lifetime => $conn_lifetime, confdir => $confdir, puppetdb_user => $puppetdb_user, puppetdb_group => $puppetdb_group, notify => Service[$puppetdb_service], } class { 'puppetdb::server::read_database': database => $read_database, database_host => $read_database_host, database_port => $read_database_port, database_username => $read_database_username, database_password => $read_database_password, database_name => $read_database_name, database_ssl => $read_database_ssl, jdbc_ssl_properties => $read_database_jdbc_ssl_properties, database_validate => $read_database_validate, log_slow_statements => $read_log_slow_statements, conn_max_age => $read_conn_max_age, conn_keep_alive => $read_conn_keep_alive, conn_lifetime => $read_conn_lifetime, confdir => $confdir, puppetdb_user => $puppetdb_user, puppetdb_group => $puppetdb_group, notify => Service[$puppetdb_service], database_max_pool_size => $read_database_max_pool_size, } - if str2bool($ssl_set_cert_paths) == true - or str2bool($ssl_deploy_certs) == true { - validate_absolute_path($ssl_key_path) - validate_absolute_path($ssl_cert_path) - validate_absolute_path($ssl_ca_cert_path) - } - - if str2bool($ssl_deploy_certs) == true { - validate_absolute_path($ssl_dir) + if $ssl_deploy_certs { file { $ssl_dir: - ensure => directory, - owner => $puppetdb_user, - group => $puppetdb_group, - mode => '0700'; + ensure => directory, + owner => $puppetdb_user, + group => $puppetdb_group, + mode => '0700'; $ssl_key_path: ensure => file, content => $ssl_key, owner => $puppetdb_user, group => $puppetdb_group, mode => '0600', notify => Service[$puppetdb_service]; $ssl_cert_path: ensure => file, content => $ssl_cert, owner => $puppetdb_user, group => $puppetdb_group, mode => '0600', notify => Service[$puppetdb_service]; $ssl_ca_cert_path: ensure => file, content => $ssl_ca_cert, owner => $puppetdb_user, group => $puppetdb_group, mode => '0600', notify => Service[$puppetdb_service]; } } class { 'puppetdb::server::jetty': listen_address => $listen_address, listen_port => $listen_port, disable_cleartext => $disable_cleartext, ssl_listen_address => $ssl_listen_address, ssl_listen_port => $ssl_listen_port, ssl_set_cert_paths => $ssl_set_cert_paths, ssl_key_path => $ssl_key_path, ssl_cert_path => $ssl_cert_path, ssl_ca_cert_path => $ssl_ca_cert_path, ssl_protocols => $ssl_protocols, cipher_suites => $cipher_suites, disable_ssl => $disable_ssl, confdir => $confdir, max_threads => $max_threads, notify => Service[$puppetdb_service], puppetdb_user => $puppetdb_user, puppetdb_group => $puppetdb_group, } class { 'puppetdb::server::puppetdb': certificate_whitelist_file => $certificate_whitelist_file, certificate_whitelist => $certificate_whitelist, disable_update_checking => $disable_update_checking, confdir => $confdir, puppetdb_user => $puppetdb_user, puppetdb_group => $puppetdb_group, notify => Service[$puppetdb_service], } if !empty($java_args) { if $merge_default_java_args { create_resources( 'ini_subsetting', puppetdb_create_subsetting_resource_hash( $java_args, { ensure => present, section => '', key_val_separator => '=', path => $puppetdb::params::puppetdb_initconf, setting => 'JAVA_ARGS', require => Package[$puppetdb_package], notify => Service[$puppetdb_service], })) } else { ini_setting { 'java_args': ensure => present, section => '', path => $puppetdb::params::puppetdb_initconf, setting => 'JAVA_ARGS', require => Package[$puppetdb_package], notify => Service[$puppetdb_service], value => puppetdb_flatten_java_args($java_args), } } } service { $puppetdb_service: ensure => $puppetdb_service_status, enable => $service_enabled, } if $manage_firewall { - Package[$puppetdb_package] -> - Class['puppetdb::server::firewall'] -> - Class['puppetdb::server::global'] -> - Class['puppetdb::server::command_processing'] -> - Class['puppetdb::server::database'] -> - Class['puppetdb::server::read_database'] -> - Class['puppetdb::server::jetty'] -> - Class['puppetdb::server::puppetdb'] -> - Service[$puppetdb_service] + Package[$puppetdb_package] + -> Class['puppetdb::server::firewall'] + -> Class['puppetdb::server::global'] + -> Class['puppetdb::server::command_processing'] + -> Class['puppetdb::server::database'] + -> Class['puppetdb::server::read_database'] + -> Class['puppetdb::server::jetty'] + -> Class['puppetdb::server::puppetdb'] + -> Service[$puppetdb_service] } else { - Package[$puppetdb_package] -> - Class['puppetdb::server::global'] -> - Class['puppetdb::server::command_processing'] -> - Class['puppetdb::server::database'] -> - Class['puppetdb::server::read_database'] -> - Class['puppetdb::server::jetty'] -> - Class['puppetdb::server::puppetdb'] -> - Service[$puppetdb_service] + Package[$puppetdb_package] + -> Class['puppetdb::server::global'] + -> Class['puppetdb::server::command_processing'] + -> Class['puppetdb::server::database'] + -> Class['puppetdb::server::read_database'] + -> Class['puppetdb::server::jetty'] + -> Class['puppetdb::server::puppetdb'] + -> Service[$puppetdb_service] } } diff --git a/manifests/server/jetty.pp b/manifests/server/jetty.pp index c9c6e60..ea050fa 100644 --- a/manifests/server/jetty.pp +++ b/manifests/server/jetty.pp @@ -1,124 +1,120 @@ # PRIVATE CLASS - do not use directly class puppetdb::server::jetty ( - $listen_address = $puppetdb::params::listen_address, - $listen_port = $puppetdb::params::listen_port, - $disable_cleartext = $puppetdb::params::disable_cleartext, - $ssl_listen_address = $puppetdb::params::ssl_listen_address, - $ssl_listen_port = $puppetdb::params::ssl_listen_port, - $disable_ssl = $puppetdb::params::disable_ssl, - $ssl_set_cert_paths = $puppetdb::params::ssl_set_cert_paths, - $ssl_cert_path = $puppetdb::params::ssl_cert_path, - $ssl_key_path = $puppetdb::params::ssl_key_path, - $ssl_ca_cert_path = $puppetdb::params::ssl_ca_cert_path, - $ssl_protocols = $puppetdb::params::ssl_protocols, - $cipher_suites = $puppetdb::params::cipher_suites, - $confdir = $puppetdb::params::confdir, - $max_threads = $puppetdb::params::max_threads, - $puppetdb_user = $puppetdb::params::puppetdb_user, - $puppetdb_group = $puppetdb::params::puppetdb_group, + $listen_address = $puppetdb::params::listen_address, + $listen_port = $puppetdb::params::listen_port, + $disable_cleartext = $puppetdb::params::disable_cleartext, + $ssl_listen_address = $puppetdb::params::ssl_listen_address, + $ssl_listen_port = $puppetdb::params::ssl_listen_port, + $disable_ssl = $puppetdb::params::disable_ssl, + Boolean $ssl_set_cert_paths = $puppetdb::params::ssl_set_cert_paths, + $ssl_cert_path = $puppetdb::params::ssl_cert_path, + $ssl_key_path = $puppetdb::params::ssl_key_path, + $ssl_ca_cert_path = $puppetdb::params::ssl_ca_cert_path, + Optional[String] $ssl_protocols = $puppetdb::params::ssl_protocols, + Optional[String] $cipher_suites = $puppetdb::params::cipher_suites, + $confdir = $puppetdb::params::confdir, + $max_threads = $puppetdb::params::max_threads, + $puppetdb_user = $puppetdb::params::puppetdb_user, + $puppetdb_group = $puppetdb::params::puppetdb_group, ) inherits puppetdb::params { $jetty_ini = "${confdir}/jetty.ini" file { $jetty_ini: ensure => file, owner => $puppetdb_user, group => $puppetdb_group, mode => '0600', } # Set the defaults Ini_setting { path => $jetty_ini, ensure => present, section => 'jetty', require => File[$jetty_ini], } $cleartext_setting_ensure = $disable_cleartext ? { true => 'absent', default => 'present', } ini_setting { 'puppetdb_host': ensure => $cleartext_setting_ensure, setting => 'host', value => $listen_address, } ini_setting { 'puppetdb_port': ensure => $cleartext_setting_ensure, setting => 'port', value => $listen_port, } $ssl_setting_ensure = $disable_ssl ? { true => 'absent', default => 'present', } ini_setting { 'puppetdb_sslhost': ensure => $ssl_setting_ensure, setting => 'ssl-host', value => $ssl_listen_address, } ini_setting { 'puppetdb_sslport': ensure => $ssl_setting_ensure, setting => 'ssl-port', value => $ssl_listen_port, } - if $ssl_protocols != undef { - - validate_string($ssl_protocols) + if $ssl_protocols { ini_setting { 'puppetdb_sslprotocols': ensure => $ssl_setting_ensure, setting => 'ssl-protocols', value => $ssl_protocols, } } - if $cipher_suites != undef { - - validate_string($cipher_suites) + if $cipher_suites { ini_setting { 'puppetdb_cipher-suites': ensure => $ssl_setting_ensure, setting => 'cipher-suites', value => $cipher_suites, } } - if str2bool($ssl_set_cert_paths) == true { + if $ssl_set_cert_paths { # assume paths have been validated in calling class ini_setting { 'puppetdb_ssl_key': ensure => present, setting => 'ssl-key', value => $ssl_key_path, } ini_setting { 'puppetdb_ssl_cert': ensure => present, setting => 'ssl-cert', value => $ssl_cert_path, } ini_setting { 'puppetdb_ssl_ca_cert': ensure => present, setting => 'ssl-ca-cert', value => $ssl_ca_cert_path, } } if ($max_threads) { ini_setting { 'puppetdb_max_threads': setting => 'max-threads', value => $max_threads, } } else { ini_setting { 'puppetdb_max_threads': ensure => absent, setting => 'max-threads', } } } diff --git a/metadata.json b/metadata.json index e641d13..87bb465 100644 --- a/metadata.json +++ b/metadata.json @@ -1,92 +1,92 @@ { "name": "puppetlabs-puppetdb", "version": "6.0.2", "summary": "Installs PostgreSQL and PuppetDB, sets up the connection to Puppet master.", "source": "git://github.com/puppetlabs/puppetlabs-puppetdb.git", "project_page": "http://github.com/puppetlabs/puppetlabs-puppetdb", "author": "puppetlabs", "license": "Apache-2.0", "issues_url": "https://tickets.puppetlabs.com/browse/PDB", "description": "Module for installing/configuring PuppetDB", "operatingsystem_support": [ { "operatingsystem": "RedHat", "operatingsystemrelease": [ "5", "6", "7" ] }, { "operatingsystem": "CentOS", "operatingsystemrelease": [ "5", "6", "7" ] }, { "operatingsystem": "OracleLinux", "operatingsystemrelease": [ "5", "6", "7" ] }, { "operatingsystem": "Scientific", "operatingsystemrelease": [ "5", "6", "7" ] }, { "operatingsystem": "SLES", "operatingsystemrelease": [ "11 SP1" ] }, { "operatingsystem": "Debian", "operatingsystemrelease": [ "6", "7" ] }, { "operatingsystem": "Ubuntu", "operatingsystemrelease": [ "10.04", "12.04", "14.04" ] } ], "requirements": [ { "name": "puppet", - "version_requirement": ">= 4.7.0" + "version_requirement": ">= 4.7.1 < 5.0.0" } ], "dependencies": [ { "name": "puppetlabs/inifile", - "version_requirement": ">= 1.1.3 <3.0.0" + "version_requirement": ">= 1.1.3 < 3.0.0" }, { "name": "puppetlabs/postgresql", "version_requirement": ">= 4.0.0 < 6.0.0" }, { "name": "puppetlabs/firewall", - "version_requirement": ">= 1.1.3 <2.0.0" + "version_requirement": ">= 1.1.3 < 2.0.0" }, { "name": "puppetlabs/stdlib", - "version_requirement": ">= 4.2.2 <5.0.0" + "version_requirement": ">= 4.13.1 < 5.0.0" } ] } diff --git a/types/ttl.pp b/types/ttl.pp new file mode 100644 index 0000000..f16995d --- /dev/null +++ b/types/ttl.pp @@ -0,0 +1 @@ +type Puppetdb::Ttl = Pattern[/^\d+(d|h|m|s|ms)$/]