From: TP Honey Date: Thu, 21 Jun 2018 12:25:50 +0000 (+0100) Subject: Merge pull request #752 from antaflos/apt_auth_conf_support X-Git-Tag: 5.0.0~5 X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=630580d1ce3c609865e31598198e7c55dda9a6ef;p=puppet-modules%2Fpuppetlabs-apt.git Merge pull request #752 from antaflos/apt_auth_conf_support Support managing login configurations in /etc/apt/auth.conf --- 630580d1ce3c609865e31598198e7c55dda9a6ef diff --cc spec/classes/apt_spec.rb index 7fdfb77,654af4e..011286d --- a/spec/classes/apt_spec.rb +++ b/spec/classes/apt_spec.rb @@@ -186,13 -188,59 +188,59 @@@ describe 'apt' d } end + context 'with entries for /etc/apt/auth.conf' do + let(:params) do + { + auth_conf_entries: [ + { machine: 'deb.example.net', + login: 'foologin', + password: 'secret' }, + { machine: 'apt.example.com', + login: 'aptlogin', + password: 'supersecret' }, + ], + } + end + + auth_conf_content = "// This file is managed by Puppet. DO NOT EDIT. + machine deb.example.net login foologin password secret + machine apt.example.com login aptlogin password supersecret + " + + it { + is_expected.to contain_file('/etc/apt/auth.conf').with(ensure: 'present', + owner: 'root', + group: 'root', + mode: '0600', + notify: 'Class[Apt::Update]', + content: auth_conf_content) + } + end + + context 'with improperly specified entries for /etc/apt/auth.conf' do + let(:params) do + { + auth_conf_entries: [ + { machinn: 'deb.example.net', + username: 'foologin', + password: 'secret' }, + { machine: 'apt.example.com', + login: 'aptlogin', + password: 'supersecret' }, + ], + } + end + + it { is_expected.to raise_error(Puppet::Error) } + end + context 'with sources defined on valid osfamily' do let :facts do - { os: { family: 'Debian', name: 'Ubuntu', release: { major: '12', full: '12.04' } }, + { os: { family: 'Debian', name: 'Ubuntu', release: { major: '16', full: '16.04' } }, osfamily: 'Debian', - lsbdistcodename: 'precise', + lsbdistcodename: 'xenial', lsbdistid: 'Ubuntu', - lsbdistrelease: '12.04', + lsbdistrelease: '16.04', puppetversion: Puppet.version } end let(:params) do