OK, it looks like we were reading the error backwards.  The problem
isn't that python3-pip was already installed in 20.04, it is that that
python3-pip is included in the basepackages for 18.04 but not 20.04:

https://github.com/apache/infrastructure-p6/blob/production/data/os/Ubuntu/18.04/basepackages.yaml

At this point, it looks like adding the definition, conditionally, not
the module not the YAML is the path of least resistance.

- Sam Ruby

On Wed, Jul 1, 2020 at 8:54 PM sebb <seb...@gmail.com> wrote:
>
> On Thu, 2 Jul 2020 at 01:03, Sam Ruby <ru...@intertwingly.net> wrote:
> >
> > On Wed, Jul 1, 2020 at 7:51 PM sebb <seb...@gmail.com> wrote:
> > >
> > > Getting the following error:
> > >
> > > Error: Failed to apply catalog: Cannot alias Package[pip] to [nil,
> > > "python3-pip", :apt] at (file:
> > > /etc/puppetlabs/code/environments/production/ext-modules/python/manifests/install.pp,
> > > line: 234); resource ["Package", nil, "python3-pip", :apt] already
> > > declared (file:
> > > /etc/puppetlabs/code/environments/production/modules/whimsy_server/manifests/init.pp,
> > > line: 68)
> > >
> > > Maybe Ubuntu 20.04 already has python3-pip declared somewhere?
> >
> > I don't see that definition in infra-p6, but yea, the error message
> > does make it it sound that way.
> >
> > > I don't want to remove it from init.pp, because that is used by 
> > > whimsy-vm5.
> > > Any ideas?
> >
> > A technique to be used sparingly:
> >
> > https://github.com/apache/infrastructure-p6/blob/production/modules/build_slaves/manifests/snapcraft.pp#L16
>
> Thanks.
>
> That has solved the original issue, and whimsy-vm5 still works,
> however I now get:
>
> Server Error: Could not find resource 'Package[python3-pip]' in
> parameter 'require' (file:
> /etc/puppetlabs/code/environments/production/modules/whimsy_server/manifests/init.pp,
> line: 112) on node whimsy-vm6.apache.org
>
> Instead of a duplicate, I am now getting a missing resource.
> Does not make sense.
>
> As a cross-check, I reinstated the reference to python3-pip and I get:
>
> Error: Failed to apply catalog: Cannot alias Package[pip] to [nil,
> "python3-pip", :apt] at (file:
> /etc/puppetlabs/code/environments/production/ext-modules/python/manifests/install.pp,
> line: 234); resource ["Package", nil, "python3-pip", :apt] already
> declared (file:
> /etc/puppetlabs/code/environments/production/modules/whimsy_server/manifests/init.pp,
> line: 106)
>
> i.e. the original error (just a different line number)
>
> So I think at least the case statement is working.
>
> > - Sam Ruby

Reply via email to