Merge pull request #583 from tdb/fix_ppa_pluses

Handle PPA names that contain a plus character.
This commit is contained in:
JT (Jonny) 2016-01-19 16:09:39 +00:00
commit bf92497e62
2 changed files with 6 additions and 5 deletions

View file

@ -16,7 +16,8 @@ define apt::ppa(
$filename_without_slashes = regsubst($name, '/', '-', 'G')
$filename_without_dots = regsubst($filename_without_slashes, '\.', '_', 'G')
$filename_without_ppa = regsubst($filename_without_dots, '^ppa:', '', 'G')
$filename_without_pluses = regsubst($filename_without_dots, '\+', '_', 'G')
$filename_without_ppa = regsubst($filename_without_pluses, '^ppa:', '', 'G')
$sources_list_d_filename = "${filename_without_ppa}-${release}.list"
if $ensure == 'present' {

View file

@ -16,12 +16,12 @@ describe 'apt::ppa' do
}
end
let(:title) { 'ppa:needs/such.substitution/wow' }
let(:title) { 'ppa:needs/such.substitution/wow+type' }
it { is_expected.to_not contain_package('python-software-properties') }
it { is_expected.to contain_exec('add-apt-repository-ppa:needs/such.substitution/wow').that_notifies('Class[Apt::Update]').with({
it { is_expected.to contain_exec('add-apt-repository-ppa:needs/such.substitution/wow+type').that_notifies('Class[Apt::Update]').with({
:environment => [],
:command => '/usr/bin/add-apt-repository -y ppa:needs/such.substitution/wow',
:unless => '/usr/bin/test -s /etc/apt/sources.list.d/needs-such_substitution-wow-natty.list',
:command => '/usr/bin/add-apt-repository -y ppa:needs/such.substitution/wow+type',
:unless => '/usr/bin/test -s /etc/apt/sources.list.d/needs-such_substitution-wow_type-natty.list',
:user => 'root',
:logoutput => 'on_failure',
})