Skip to content

Commit a00ba4a

Browse files
authored
Merge pull request #411 from chambersmp/feature_data_validation
Set data types for puppetdb parameters
2 parents 566889c + afecff8 commit a00ba4a

26 files changed

+330
-327
lines changed

manifests/database/default_read_grant.pp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
#
33
# @api private
44
define puppetdb::database::default_read_grant (
5-
String $database_name,
6-
String $schema,
7-
String $database_username,
8-
String $database_read_only_username,
5+
String[1] $database_name,
6+
String[1] $schema,
7+
String[1] $database_username,
8+
String[1] $database_read_only_username,
99
Optional[Stdlib::Port] $database_port = undef,
1010
) {
1111
postgresql_psql { "grant default select permission for ${database_read_only_username}":

manifests/database/postgresql.pp

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -71,27 +71,30 @@
7171
# PostgreSQL password authentication method, either `md5` or `scram-sha-256`
7272
#
7373
class puppetdb::database::postgresql (
74-
$listen_addresses = $puppetdb::params::database_host,
75-
$puppetdb_server = $puppetdb::params::puppetdb_server,
76-
$database_name = $puppetdb::params::database_name,
77-
$database_username = $puppetdb::params::database_username,
78-
Variant[String[1], Sensitive[String[1]]] $database_password = $puppetdb::params::database_password,
79-
$database_port = $puppetdb::params::database_port,
80-
$manage_database = $puppetdb::params::manage_database,
81-
$manage_server = $puppetdb::params::manage_dbserver,
82-
$manage_package_repo = $puppetdb::params::manage_pg_repo,
83-
$postgres_version = $puppetdb::params::postgres_version,
84-
$postgresql_ssl_on = $puppetdb::params::postgresql_ssl_on,
85-
$postgresql_ssl_key_path = $puppetdb::params::postgresql_ssl_key_path,
86-
$postgresql_ssl_cert_path = $puppetdb::params::postgresql_ssl_cert_path,
87-
$postgresql_ssl_ca_cert_path = $puppetdb::params::postgresql_ssl_ca_cert_path,
88-
$read_database_username = $puppetdb::params::read_database_username,
89-
Variant[String[1], Sensitive[String[1]]] $read_database_password = $puppetdb::params::read_database_password,
90-
$read_database_host = $puppetdb::params::read_database_host,
91-
Boolean $password_sensitive = false,
92-
Postgresql::Pg_password_encryption $password_encryption = $puppetdb::params::password_encryption,
74+
Stdlib::Host $listen_addresses = $puppetdb::params::database_host,
75+
Stdlib::Host $puppetdb_server = $puppetdb::params::puppetdb_server,
76+
String[1] $database_name = $puppetdb::params::database_name,
77+
String[1] $database_username = $puppetdb::params::database_username,
78+
Variant[String[1], Sensitive[String[1]]] $database_password = $puppetdb::params::database_password,
79+
Variant[Stdlib::Port::User, Pattern[/\A[0-9]+\Z/]] $database_port = $puppetdb::params::database_port,
80+
Boolean $manage_database = $puppetdb::params::manage_database,
81+
Boolean $manage_server = $puppetdb::params::manage_dbserver,
82+
Boolean $manage_package_repo = $puppetdb::params::manage_pg_repo,
83+
String[2,3] $postgres_version = $puppetdb::params::postgres_version,
84+
Boolean $postgresql_ssl_on = $puppetdb::params::postgresql_ssl_on,
85+
Stdlib::Absolutepath $postgresql_ssl_key_path = $puppetdb::params::postgresql_ssl_key_path,
86+
Stdlib::Absolutepath $postgresql_ssl_cert_path = $puppetdb::params::postgresql_ssl_cert_path,
87+
Stdlib::Absolutepath $postgresql_ssl_ca_cert_path = $puppetdb::params::postgresql_ssl_ca_cert_path,
88+
String[1] $read_database_username = $puppetdb::params::read_database_username,
89+
Variant[String[1], Sensitive[String[1]]] $read_database_password = $puppetdb::params::read_database_password,
90+
Optional[Stdlib::Host] $read_database_host = $puppetdb::params::read_database_host,
91+
Boolean $password_sensitive = false,
92+
Postgresql::Pg_password_encryption $password_encryption = $puppetdb::params::password_encryption,
9393
) inherits puppetdb::params {
94-
$port = scanf($database_port, '%i')[0]
94+
$port = case $database_port.is_a(String) {
95+
true: { scanf($database_port, '%i')[0] }
96+
default: { $database_port }
97+
}
9598

9699
if $manage_server {
97100
class { 'postgresql::globals':

manifests/database/postgresql_ssl_rules.pp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
#
33
# @api private
44
define puppetdb::database::postgresql_ssl_rules (
5-
String $database_name,
6-
String $database_username,
5+
String[1] $database_name,
6+
String[1] $database_username,
77
String[2,3] $postgres_version,
8-
String $puppetdb_server,
8+
String[1] $puppetdb_server,
99
) {
1010
$identity_map_key = "${database_name}-${database_username}-map"
1111

manifests/database/read_grant.pp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
#
33
# @api private
44
define puppetdb::database::read_grant (
5-
String $database_name,
6-
String $schema,
7-
String $database_read_only_username,
5+
String[1] $database_name,
6+
String[1] $schema,
7+
String[1] $database_read_only_username,
88
Optional[Stdlib::Port] $database_port = undef,
99
) {
1010
postgresql_psql { "grant select permission for ${database_read_only_username}":

manifests/database/read_only_user.pp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@
1818
#
1919
# @api private
2020
define puppetdb::database::read_only_user (
21-
String $read_database_username,
22-
String $database_name,
23-
String $database_owner,
24-
Variant[String[1], Boolean, Sensitive[String[1]]] $password_hash = false,
25-
Optional[Stdlib::Port] $database_port = undef,
26-
Optional[Postgresql::Pg_password_encryption] $password_encryption = undef,
21+
String[1] $read_database_username,
22+
String[1] $database_name,
23+
String[1] $database_owner,
24+
Variant[String[1], Boolean, Sensitive[String[1]]] $password_hash = false,
25+
Optional[Stdlib::Port] $database_port = undef,
26+
Optional[Postgresql::Pg_password_encryption] $password_encryption = undef,
2727
) {
2828
postgresql::server::role { $read_database_username:
2929
password_hash => $password_hash,

manifests/database/ssl_configuration.pp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22
#
33
# @api private
44
class puppetdb::database::ssl_configuration (
5-
$database_name = $puppetdb::params::database_name,
6-
$database_username = $puppetdb::params::database_username,
7-
$read_database_username = $puppetdb::params::read_database_username,
8-
$read_database_host = $puppetdb::params::read_database_host,
9-
$puppetdb_server = $puppetdb::params::puppetdb_server,
10-
$postgresql_ssl_key_path = $puppetdb::params::postgresql_ssl_key_path,
11-
$postgresql_ssl_cert_path = $puppetdb::params::postgresql_ssl_cert_path,
12-
$postgresql_ssl_ca_cert_path = $puppetdb::params::postgresql_ssl_ca_cert_path,
13-
$postgres_version = $puppetdb::params::postgres_version,
14-
$create_read_user_rule = false,
5+
String[1] $database_name = $puppetdb::params::database_name,
6+
String[1] $database_username = $puppetdb::params::database_username,
7+
String[1] $read_database_username = $puppetdb::params::read_database_username,
8+
Optional[Stdlib::Host] $read_database_host = $puppetdb::params::read_database_host,
9+
String[1] $puppetdb_server = $puppetdb::params::puppetdb_server,
10+
Stdlib::Absolutepath $postgresql_ssl_key_path = $puppetdb::params::postgresql_ssl_key_path,
11+
Stdlib::Absolutepath $postgresql_ssl_cert_path = $puppetdb::params::postgresql_ssl_cert_path,
12+
Stdlib::Absolutepath $postgresql_ssl_ca_cert_path = $puppetdb::params::postgresql_ssl_ca_cert_path,
13+
String[2,3] $postgres_version = $puppetdb::params::postgres_version,
14+
Boolean $create_read_user_rule = false,
1515
) inherits puppetdb::params {
1616
File {
1717
ensure => present,

manifests/globals.pp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
# Puppet's config directory. Defaults to `/etc/puppetlabs/puppet`.
99
#
1010
class puppetdb::globals (
11-
$version = 'present',
11+
String[1] $version = 'present',
1212
Stdlib::Absolutepath $puppet_confdir = $settings::confdir,
1313
) {
1414
if !(fact('os.family') in ['RedHat', 'Suse', 'Archlinux', 'Debian', 'OpenBSD', 'FreeBSD']) {

0 commit comments

Comments
 (0)