[Pkg-puppet-devel] autopkgtest issues in Ubuntu

Nish Aravamudan nish.aravamudan at canonical.com
Thu Feb 23 21:48:30 UTC 2017


On 23.02.2017 [08:49:57 -0800], Nish Aravamudan wrote:
> On 23.02.2017 [12:45:39 +0200], Apollon Oikonomopoulos wrote:
> > Hi Nish,
> > 
> > On 14:15 Wed 22 Feb     , Nish Aravamudan wrote:
> > > Hello,
> > > 
> > > While by no means are you obligated to help me here, I'm hoping to get
> > > some guidance!
> > > 
> > > It seems like some excellent autopkgtests have been recently
> > > added/updated to puppet. Unfortunately, they fail on Ubuntu 17.04 (e.g.,
> > > https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-zesty/zesty/amd64/p/puppet/20170218_013744_0e945@/log.gz).
> > > Initially they failed because Ubuntu does not ship a sysvinit-core
> > > binary package. Skipping those tests on Ubuntu, though, I still see
> > > failures.
> > > 
> > > It seems like the following is true:
> > > 
> > > 1) There is an assumption that the puppet server is accessible at a
> > > hostname of 'pupppet' in
> > 
> > You seem to have a runaway 'p' here, but I checked the source and it's 
> > 'puppet' as intended.
> 
> Err, yes, sorry!
> 
> > > d/t/spec/puppet-master-passenger/zz_puppet3_compat_spec.rb.
> > > Unfortunately, a https_proxy is used in the Ubuntu autopkgtest and since
> > > the test-runner is not named puppet (nor is it an alias for localhost),
> > > the proxy intercepts the request and rejects it.
> > 
> > 'puppet' is added as a localhost alias via the following line in 
> > puppet-master-passenger/use_spec.rb:
> > 
> > describe command('puppet resource host puppet ip=127.0.81.40') do
> >   its(:exit_status) { should eq 0 }
> > end
> > 
> > > 
> > > My initial thought here is that the actual hostname should be used,
> > > e.g.:
> > 
> > No, the tests are run like this on purpose (and `puppet agent --server 
> > puppet` works correctly).
> > 
> > If I understand correctly, you (as in Ubuntu) export https_proxy 
> > globally in the autopkgtest environment and it's curl that picks it up.  
> > The trick here, since we know we'll be talking with localhost anyway, is 
> > to have curl opt out of using the proxy, either by unsetting the 
> > environment variables, or by using the '--noproxy puppet' option. The 
> > latter is something we can also include in future Debian packages if it 
> > helps. Can you give it a try?
> 
> I think this will resolve the curl proxy issues. I wonder if the
> certificates issue is that ca-certificates is not listed as a test-dep
> and is not necessarily installed in the Ubuntu autopkgtest environments?
> I will try and test both changes incrementally and report back. I'll
> file a bug if the changes help.

Ok, so adding ca-certificates did not seem to make any difference (and
in fact, it seems like it is already installed in the Ubuntu autopkgtest
environment so that was a red herring anyways). Any ideas why, e.g.:

https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-zesty-nacc-lp1570472/zesty/amd64/p/puppet/20170223_203421_4dd8e@/log.gz

there is no certificate for the hostname by default on Ubuntu but there
is on Debian? I don't see anything in the tests that ensure it exists
and only puppet-master-passenger generates it in a postinst (hence those
tests now pass, but I think it's technically incidental and dependent on
the .postinst's behavior, which might be fine).

-Nish

-- 
Nishanth Aravamudan
Ubuntu Server
Canonical Ltd



More information about the Pkg-puppet-devel mailing list