Skip to content

Commit 8682c14

Browse files
committed
Migrate params to hiera layers
Using lookup() and alias() function inside hiera for extented provider switch support.
1 parent 4e0cd64 commit 8682c14

16 files changed

Lines changed: 177 additions & 292 deletions

REFERENCE.md

Lines changed: 40 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
* `redis::config`: This class provides configuration for Redis.
1818
* `redis::dnfmodule`: Manage the DNF module
1919
* `redis::install`: This class installs the application.
20-
* `redis::params`: This class provides a number of parameters.
2120
* `redis::preinstall`: Provides anything required by the install class, such as package
2221
repositories.
2322
* `redis::service`: This class manages the Redis daemon.
@@ -242,7 +241,7 @@ Data type: `Enum['redis', 'valkey']`
242241

243242
Name of the redis server implementation.
244243

245-
Default value: `$redis::params::provider`
244+
Default value: `'redis'`
246245

247246
##### <a name="-redis--activerehashing"></a>`activerehashing`
248247

@@ -322,39 +321,39 @@ Data type: `Stdlib::Absolutepath`
322321

323322
Directory containing redis binary executables.
324323

325-
Default value: `$redis::params::bin_path`
324+
Default value: `'/usr/bin'`
326325

327326
##### <a name="-redis--config_dir"></a>`config_dir`
328327

329328
Data type: `Stdlib::Absolutepath`
330329

331330
Directory containing the configuration files.
332331

333-
Default value: `$redis::params::config_dir`
332+
Default value: `'/etc/%{lookup("redis::provider")}'`
334333

335334
##### <a name="-redis--config_dir_mode"></a>`config_dir_mode`
336335

337336
Data type: `Stdlib::Filemode`
338337

339338
Adjust mode for directory containing configuration files.
340339

341-
Default value: `$redis::params::config_dir_mode`
340+
Default value: `'0750'`
342341

343342
##### <a name="-redis--config_file_orig"></a>`config_file_orig`
344343

345344
Data type: `Stdlib::Absolutepath`
346345

347346
The location and name of a config file that provides the source
348347

349-
Default value: `$redis::params::config_file_orig`
348+
Default value: `'%{lookup("redis::config_file")}.puppet'`
350349

351350
##### <a name="-redis--config_file"></a>`config_file`
352351

353352
Data type: `Stdlib::Absolutepath`
354353

355354
Adjust main configuration file.
356355

357-
Default value: `$redis::params::config_file`
356+
Default value: `'%{lookup("redis::config_dir")}/%{lookup("redis::provider")}.conf'`
358357

359358
##### <a name="-redis--config_file_mode"></a>`config_file_mode`
360359

@@ -370,15 +369,15 @@ Data type: `String[1]`
370369

371370
Adjust filesystem group for config files.
372371

373-
Default value: `$redis::params::config_group`
372+
Default value: `'root'`
374373

375374
##### <a name="-redis--config_owner"></a>`config_owner`
376375

377376
Data type: `String[1]`
378377

379378
Adjust filesystem owner for config files.
380379

381-
Default value: `$redis::params::config_owner`
380+
Default value: `'%{lookup("redis::provider")}'`
382381

383382
##### <a name="-redis--conf_template"></a>`conf_template`
384383

@@ -394,7 +393,7 @@ Data type: `Boolean`
394393

395394
Have Redis run as a daemon.
396395

397-
Default value: `$redis::params::daemonize`
396+
Default value: `true`
398397

399398
##### <a name="-redis--default_install"></a>`default_install`
400399

@@ -490,7 +489,7 @@ Data type: `Stdlib::Absolutepath`
490489

491490
Specify directory where to write log entries.
492491

493-
Default value: `$redis::params::log_dir`
492+
Default value: `'/var/log/%{lookup("redis::provider")}'`
494493

495494
##### <a name="-redis--log_dir_group"></a>`log_dir_group`
496495

@@ -506,7 +505,7 @@ Data type: `Stdlib::Filemode`
506505

507506
Adjust mode for directory containing log files.
508507

509-
Default value: `$redis::params::log_dir_mode`
508+
Default value: `'0750'`
510509

511510
##### <a name="-redis--log_file"></a>`log_file`
512511

@@ -515,7 +514,7 @@ Data type: `String`
515514
Specify file where to write log entries. Relative paths will be prepended
516515
with log_dir but absolute paths are also accepted.
517516

518-
Default value: `$redis::params::log_file`
517+
Default value: `'%{lookup("redis::provider")}.log'`
519518

520519
##### <a name="-redis--log_level"></a>`log_level`
521520

@@ -667,15 +666,15 @@ Data type: `String[1]`
667666

668667
Upstream package name.
669668

670-
Default value: `$redis::params::package_name`
669+
Default value: `'%{lookup("redis::provider")}'`
671670

672671
##### <a name="-redis--pid_file"></a>`pid_file`
673672

674673
Data type: `Stdlib::Absolutepath`
675674

676675
Where to store the pid.
677676

678-
Default value: `$redis::params::pid_file`
677+
Default value: `'/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}-server.pid'`
679678

680679
##### <a name="-redis--port"></a>`port`
681680

@@ -883,23 +882,23 @@ Data type: `String[1]`
883882

884883
Specify which group to run as.
885884

886-
Default value: `$redis::params::service_group`
885+
Default value: `'%{lookup("redis::provider")}'`
887886

888887
##### <a name="-redis--service_name"></a>`service_name`
889888

890889
Data type: `String[1]`
891890

892891
Specify the service name for Init or Systemd.
893892

894-
Default value: `$redis::params::service_name`
893+
Default value: `'%{lookup("redis::provider")}'`
895894

896895
##### <a name="-redis--service_user"></a>`service_user`
897896

898897
Data type: `String[1]`
899898

900899
Specify which user to run as.
901900

902-
Default value: `$redis::params::service_user`
901+
Default value: `'%{lookup("redis::provider")}'`
903902

904903
##### <a name="-redis--service_timeout_start"></a>`service_timeout_start`
905904

@@ -1175,7 +1174,7 @@ Data type: `Variant[Stdlib::Absolutepath, Enum['']]`
11751174

11761175
Define unix socket path
11771176

1178-
Default value: `$redis::params::unixsocket`
1177+
Default value: `'/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}.sock'`
11791178

11801179
##### <a name="-redis--unixsocketperm"></a>`unixsocketperm`
11811180

@@ -1192,7 +1191,7 @@ Data type: `Stdlib::Absolutepath`
11921191
The DB will be written inside this directory, with the filename specified
11931192
above using the 'dbfilename' configuration directive.
11941193

1195-
Default value: `$redis::params::workdir`
1194+
Default value: `'/var/lib/%{lookup("redis::provider")}'`
11961195

11971196
##### <a name="-redis--workdir_mode"></a>`workdir_mode`
11981197

@@ -1582,6 +1581,7 @@ The following parameters are available in the `redis::sentinel` class:
15821581
* [`service_group`](#-redis--sentinel--service_group)
15831582
* [`service_name`](#-redis--sentinel--service_name)
15841583
* [`service_user`](#-redis--sentinel--service_user)
1584+
* [`service_ensure`](#-redis--sentinel--service_ensure)
15851585
* [`service_enable`](#-redis--sentinel--service_enable)
15861586
* [`tls_cert_file`](#-redis--sentinel--tls_cert_file)
15871587
* [`tls_key_file`](#-redis--sentinel--tls_key_file)
@@ -1597,7 +1597,6 @@ The following parameters are available in the `redis::sentinel` class:
15971597
* [`sentinel_auth_user`](#-redis--sentinel--sentinel_auth_user)
15981598
* [`acls`](#-redis--sentinel--acls)
15991599
* [`manage_redis`](#-redis--sentinel--manage_redis)
1600-
* [`service_ensure`](#-redis--sentinel--service_ensure)
16011600

16021601
##### <a name="-redis--sentinel--auth_pass"></a>`auth_pass`
16031602

@@ -1613,7 +1612,7 @@ Data type: `Stdlib::Absolutepath`
16131612

16141613
The location and name of the sentinel config file.
16151614

1616-
Default value: `$redis::params::sentinel_config_file`
1615+
Default value: `'%{lookup("redis::config_dir")}/sentinel.conf'`
16171616

16181617
##### <a name="-redis--sentinel--config_file_orig"></a>`config_file_orig`
16191618

@@ -1625,7 +1624,7 @@ because sentinel itself writes to its own config file and we do
16251624
not want override that when puppet is run unless there are
16261625
changes from the manifests.
16271626

1628-
Default value: `$redis::params::sentinel_config_file_orig`
1627+
Default value: `'%{lookup("redis::sentinel::config_file")}.puppet'`
16291628

16301629
##### <a name="-redis--sentinel--config_file_mode"></a>`config_file_mode`
16311630

@@ -1641,15 +1640,15 @@ Data type: `String[1]`
16411640

16421641
Adjust filesystem group for config files.
16431642

1644-
Default value: `$redis::params::config_group`
1643+
Default value: `'%{alias("redis::config_group")}'`
16451644

16461645
##### <a name="-redis--sentinel--config_owner"></a>`config_owner`
16471646

16481647
Data type: `String[1]`
16491648

16501649
Adjust filesystem owner for config files.
16511650

1652-
Default value: `$redis::params::config_owner`
1651+
Default value: `'%{alias("redis::config_owner")}'`
16531652

16541653
##### <a name="-redis--sentinel--conf_template"></a>`conf_template`
16551654

@@ -1665,7 +1664,7 @@ Data type: `Boolean`
16651664

16661665
Have Redis sentinel run as a daemon.
16671666

1668-
Default value: `$redis::params::sentinel_daemonize`
1667+
Default value: `true`
16691668

16701669
##### <a name="-redis--sentinel--down_after"></a>`down_after`
16711670

@@ -1691,7 +1690,7 @@ Data type: `Stdlib::Absolutepath`
16911690

16921691
Specify where to write log entries.
16931692

1694-
Default value: `$redis::params::sentinel_log_file`
1693+
Default value: `'%{lookup("redis::log_dir")}/sentinel.log'`
16951694

16961695
##### <a name="-redis--sentinel--log_level"></a>`log_level`
16971696

@@ -1748,7 +1747,7 @@ Data type: `String[1]`
17481747

17491748
The name of the package that installs sentinel.
17501749

1751-
Default value: `$redis::params::sentinel_package_name`
1750+
Default value: `'%{lookup("redis::provider")}'`
17521751

17531752
##### <a name="-redis--sentinel--package_ensure"></a>`package_ensure`
17541753

@@ -1774,7 +1773,7 @@ Data type: `Stdlib::Absolutepath`
17741773

17751774
If sentinel is daemonized it will write its pid at this location.
17761775

1777-
Default value: `$redis::params::sentinel_pid_file`
1776+
Default value: `'/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}-sentinel.pid'`
17781777

17791778
##### <a name="-redis--sentinel--quorum"></a>`quorum`
17801779

@@ -1849,23 +1848,31 @@ Data type: `String[1]`
18491848

18501849
The group of the config file.
18511850

1852-
Default value: `$redis::params::service_group`
1851+
Default value: `'%{alias("redis::service_group")}'`
18531852

18541853
##### <a name="-redis--sentinel--service_name"></a>`service_name`
18551854

18561855
Data type: `String[1]`
18571856

18581857
The name of the service (for puppet to manage).
18591858

1860-
Default value: `$redis::params::sentinel_service_name`
1859+
Default value: `'%{lookup("redis::provider")}-sentinel'`
18611860

18621861
##### <a name="-redis--sentinel--service_user"></a>`service_user`
18631862

18641863
Data type: `String[1]`
18651864

18661865
The owner of the config file.
18671866

1868-
Default value: `$redis::params::service_user`
1867+
Default value: `'%{alias("redis::service_user")}'`
1868+
1869+
##### <a name="-redis--sentinel--service_ensure"></a>`service_ensure`
1870+
1871+
Data type: `Stdlib::Ensure::Service`
1872+
1873+
Ensure the service state at run time.
1874+
1875+
Default value: `'running'`
18691876

18701877
##### <a name="-redis--sentinel--service_enable"></a>`service_enable`
18711878

@@ -1938,7 +1945,7 @@ Data type: `Stdlib::Absolutepath`
19381945
The directory into which sentinel will change to avoid mount
19391946
conflicts.
19401947

1941-
Default value: `$redis::params::sentinel_working_dir`
1948+
Default value: `'/tmp'`
19421949

19431950
##### <a name="-redis--sentinel--notification_script"></a>`notification_script`
19441951

@@ -1993,14 +2000,6 @@ Manage redis base class. If set to false, sentinel is installed without redis se
19932000

19942001
Default value: `true`
19952002

1996-
##### <a name="-redis--sentinel--service_ensure"></a>`service_ensure`
1997-
1998-
Data type: `Stdlib::Ensure::Service`
1999-
2000-
2001-
2002-
Default value: `'running'`
2003-
20042003
## Defined types
20052004

20062005
### <a name="redis--instance"></a>`redis::instance`

data/common.yaml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
redis::provider: 'redis'
3+
4+
redis::config_dir_mode: '0750'
5+
redis::config_dir: '/etc/%{lookup("redis::provider")}'
6+
redis::config_file_orig: '%{lookup("redis::config_file")}.puppet'
7+
redis::config_file: '%{lookup("redis::config_dir")}/%{lookup("redis::provider")}.conf'
8+
redis::config_group: 'root'
9+
redis::config_owner: '%{lookup("redis::provider")}'
10+
redis::daemonize: true
11+
redis::log_dir_mode: '0750'
12+
redis::log_dir: '/var/log/%{lookup("redis::provider")}'
13+
redis::log_file: '%{lookup("redis::provider")}.log'
14+
redis::package_name: '%{lookup("redis::provider")}'
15+
redis::pid_file: '/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}-server.pid'
16+
redis::service_group: '%{lookup("redis::provider")}'
17+
redis::service_name: '%{lookup("redis::provider")}'
18+
redis::service_user: '%{lookup("redis::provider")}'
19+
redis::unixsocket: '/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}.sock'
20+
redis::workdir: '/var/lib/%{lookup("redis::provider")}'
21+
redis::dnfmodule::module: '%{lookup("redis::provider")}'
22+
23+
redis::sentinel::config_file_orig: '%{lookup("redis::sentinel::config_file")}.puppet'
24+
redis::sentinel::config_file: '%{lookup("redis::config_dir")}/sentinel.conf'
25+
redis::sentinel::config_group: '%{alias("redis::config_group")}'
26+
redis::sentinel::config_owner: '%{alias("redis::config_owner")}'
27+
redis::sentinel::daemonize: true
28+
redis::sentinel::log_file: '%{lookup("redis::log_dir")}/sentinel.log'
29+
redis::sentinel::package_name: '%{lookup("redis::provider")}'
30+
redis::sentinel::pid_file: '/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}-sentinel.pid'
31+
redis::sentinel::service_group: '%{alias("redis::service_group")}'
32+
redis::sentinel::service_name: '%{lookup("redis::provider")}-sentinel'
33+
redis::sentinel::service_user: '%{alias("redis::service_user")}'
34+
redis::sentinel::working_dir: '/tmp'

data/os/Archlinux.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
redis::config_dir_mode: '0755'
3+
redis::config_owner: 'root'
4+
redis::log_dir_mode: '0755'
5+
redis::pid_file: '/var/run/%{lookup("redis::provider")}.pid'
6+
redis::sentinel::config_file: '%{lookup("redis::config_dir")}/%{lookup("redis::provider")}-sentinel.conf'

data/os/Debian.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
redis::config_dir_mode: '0755'
3+
redis::log_dir_mode: '0755'
4+
redis::package_name: '%{lookup("redis::provider")}-server'
5+
redis::pid_file: '/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}-server.pid'
6+
redis::service_name: '%{lookup("redis::provider")}-server'
7+
8+
redis::sentinel::config_file_orig: '%{lookup("redis::config_dir")}/%{lookup("redis::provider")}-sentinel.conf.puppet'
9+
redis::sentinel::log_file: '%{lookup("redis::log_dir")}/%{lookup("redis::provider")}-sentinel.log'
10+
redis::sentinel::package_name: '%{lookup("redis::provider")}-sentinel'
11+
redis::sentinel::pid_file: '/run/sentinel/%{lookup("redis::provider")}-sentinel.pid'
12+
redis::sentinel::working_dir: '/var/lib/redis'

data/os/Debian/Ubuntu.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
redis::config_group: '%{lookup("redis::provider")}'
3+
redis::sentinel::pid_file: '/var/run/sentinel/%{lookup("redis::provider")}-sentinel.pid'

data/os/FreeBSD.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
redis::config_dir: '/usr/local/etc/%{lookup("redis::provider")}'
3+
redis::config_dir_mode: '0755'
4+
redis::config_file: '/usr/local/etc/%{lookup("redis::provider")}.conf'
5+
redis::config_group: 'wheel'
6+
redis::log_dir_mode: '0755'
7+
redis::pid_file: '/var/run/%{lookup("redis::provider")}/%{lookup("redis::provider")}.pid'
8+
redis::workdir: '/var/db/%{lookup("redis::provider")}'
9+
10+
redis::sentinel::config_file: '%{lookup("redis::config_dir")}/%{lookup("redis::provider")}-sentinel.conf'

0 commit comments

Comments
 (0)