From b0e0024730d3463153afe5af03fd66e4244bea81 Mon Sep 17 00:00:00 2001 From: Simon Kohlmeyer Date: Fri, 26 Dec 2014 05:10:52 +0100 Subject: [PATCH] Allow ports that consist of 5 decimals --- lib/puppet/type/apt_key.rb | 2 +- manifests/key.pp | 2 +- spec/unit/puppet/type/apt_key_spec.rb | 14 ++++++++++++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/lib/puppet/type/apt_key.rb b/lib/puppet/type/apt_key.rb index f552473..8aa4081 100644 --- a/lib/puppet/type/apt_key.rb +++ b/lib/puppet/type/apt_key.rb @@ -59,7 +59,7 @@ Puppet::Type.newtype(:apt_key) do desc 'The key server to fetch the key from based on the ID. It can either be a domain name or url.' defaultto :'keyserver.ubuntu.com' - newvalues(/\A((hkp|http|https):\/\/)?([a-z\d])([a-z\d-]{0,61}\.)+[a-z\d]+(:\d{2,4})?$/) + newvalues(/\A((hkp|http|https):\/\/)?([a-z\d])([a-z\d-]{0,61}\.)+[a-z\d]+(:\d{2,5})?$/) end newparam(:keyserver_options) do diff --git a/manifests/key.pp b/manifests/key.pp index 8d3bcf0..c51f4bf 100644 --- a/manifests/key.pp +++ b/manifests/key.pp @@ -69,7 +69,7 @@ define apt::key ( } if $key_server { - validate_re($key_server,['\A((hkp|http|https):\/\/)?([a-z\d])([a-z\d-]{0,61}\.)+[a-z\d]+(:\d{2,4})?$']) + validate_re($key_server,['\A((hkp|http|https):\/\/)?([a-z\d])([a-z\d-]{0,61}\.)+[a-z\d]+(:\d{2,5})?$']) } if $key_options { diff --git a/spec/unit/puppet/type/apt_key_spec.rb b/spec/unit/puppet/type/apt_key_spec.rb index 57aeb86..e8a5462 100644 --- a/spec/unit/puppet/type/apt_key_spec.rb +++ b/spec/unit/puppet/type/apt_key_spec.rb @@ -163,5 +163,19 @@ describe Puppet::Type::type(:apt_key) do :source => '/path/to/a/file' )}.to_not raise_error end + + it 'allows 5-digit ports' do + expect { Puppet::Type.type(:apt_key).new( + :id => '4BD6EC30', + :source => 'http://pgp.mit.edu:12345/key' + )}.to_not raise_error + end + + it 'allows 5-digit ports when using key servers' do + expect { Puppet::Type.type(:apt_key).new( + :id => '4BD6EC30', + :server => 'http://pgp.mit.edu:12345' + )}.to_not raise_error + end end end -- 2.32.3