Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Issue 29326229: Issue 3016 - Improve Nginx source => PPA migration steps (Closed)

Created:
Sept. 10, 2015, 1:09 a.m. by mathias
Modified:
Sept. 10, 2015, 11:16 a.m.
Reviewers:
Felix Dahlke
CC:
Fred
Visibility:
Public.

Description

Issue 3016 - Improve Nginx source => PPA migration steps

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+9 lines, -6 lines) Patch
M modules/nginx/manifests/init.pp View 2 chunks +9 lines, -6 lines 0 comments Download

Messages

Total messages: 3
mathias
Sept. 10, 2015, 1:09 a.m. (2015-09-10 01:09:02 UTC) #1
Felix Dahlke
Assuming that this is something that will disappear once nginx from the new PPA has ...
Sept. 10, 2015, 5:34 a.m. (2015-09-10 05:34:58 UTC) #2
mathias
Sept. 10, 2015, 7:31 a.m. (2015-09-10 07:31:01 UTC) #3
On 2015/09/10 05:34:58, Felix Dahlke wrote:
> (If this was intended to stay in place longer, I'd vote for investigating why
> Puppet's purge doesn't do the trick, and also for a comment that explains why
> this is necessary.)

Yes it's supposed to vanish in the near future, as I wrote in the ticket
already.

Note that I of course investigated this in the process already. Otherwise it
would be marked as a quick-fix that requires further measures, but in fact I
doubt that there is any other way. Fact's first:

- The Nginx Package is a meta-package depending on nginx-full, which depends on
nginx-common
- All three need to be the same version
- Replacing them  with another version using apt-get requires that all packages
are given to the same command, e.g. apt-get -y install nginx=$version
nginx-common=$version nginx-full=$version
- Puppet does not provide any native facility to install multiple packages at
once, not even in version 3.x+
- Puppet instead converts each package resource into a single command, which
will always result in unmet dependencies being reported by APT

Purging nginx-common like done before is part of the actual problem. That
package is required, but would be purged during subsequent Puppet runs. It
worked before because the apt::source version of nginx-full did not enforce that
one to be the exact same version, but was fine with the native one - in which
case the package is marked as a regular dependency (not manually installed) and
purging has no effect.

Powered by Google App Engine
This is Rietveld