From c239bc7e8943db7b575ae77aea7da8e4f8aba03c Mon Sep 17 00:00:00 2001 From: Reid Vandewiele Date: Tue, 18 Jan 2022 10:56:48 -0800 Subject: [PATCH] Make versions match SemVer pattern All PE version downloads need to match the x.y.z format. This commit changes the type specifier to require this format. This is especially useful to help guide people to the right parameters if they specify a version like "2022.4" instead of "2022.4.0". --- plans/install.pp | 2 +- plans/subplans/install.pp | 2 +- plans/upgrade.pp | 8 ++++---- spec/plans/subplans/install_spec.rb | 3 ++- types/pe_version.pp | 1 + 5 files changed, 9 insertions(+), 7 deletions(-) create mode 100644 types/pe_version.pp diff --git a/plans/install.pp b/plans/install.pp index de321069..589b9946 100644 --- a/plans/install.pp +++ b/plans/install.pp @@ -26,7 +26,7 @@ # Common Configuration String $console_password, - String $version = '2019.8.8', + Peadm::Pe_version $version = '2019.8.8', Optional[Array[String]] $dns_alt_names = undef, Optional[String] $compiler_pool_address = undef, Optional[String] $internal_compiler_a_pool_address = undef, diff --git a/plans/subplans/install.pp b/plans/subplans/install.pp index e1959ad0..c19d0bb2 100644 --- a/plans/subplans/install.pp +++ b/plans/subplans/install.pp @@ -34,7 +34,7 @@ # Common Configuration String $console_password, - String $version = '2019.8.5', + Peadm::Pe_version $version, Array[String] $dns_alt_names = [ ], Hash $pe_conf_data = { }, diff --git a/plans/upgrade.pp b/plans/upgrade.pp index d2eeaab4..d90e593b 100644 --- a/plans/upgrade.pp +++ b/plans/upgrade.pp @@ -25,10 +25,10 @@ Optional[Peadm::SingleTargetSpec] $replica_postgresql_host = undef, # Common Configuration - String $version, - Optional[String] $compiler_pool_address = undef, - Optional[String] $internal_compiler_a_pool_address = undef, - Optional[String] $internal_compiler_b_pool_address = undef, + Peadm::Pe_version $version, + Optional[String] $compiler_pool_address = undef, + Optional[String] $internal_compiler_a_pool_address = undef, + Optional[String] $internal_compiler_b_pool_address = undef, # Other Optional[String] $token_file = undef, diff --git a/spec/plans/subplans/install_spec.rb b/spec/plans/subplans/install_spec.rb index 66212600..457da3f2 100644 --- a/spec/plans/subplans/install_spec.rb +++ b/spec/plans/subplans/install_spec.rb @@ -37,8 +37,9 @@ ########## params = { - 'primary_host' => 'primary', + 'primary_host' => 'primary', 'console_password' => 'puppetlabs', + 'version' => '2019.8.10', } expect(run_plan('peadm::subplans::install', params)).to be_ok diff --git a/types/pe_version.pp b/types/pe_version.pp new file mode 100644 index 00000000..e377eae3 --- /dev/null +++ b/types/pe_version.pp @@ -0,0 +1 @@ +type Peadm::Pe_version = Pattern[/^\d+\.\d+\.\d+(-.+)?$/]