[Pkg-puppet-devel] Wheezy update of puppet?

Guido Günther agx at sigxcpu.org
Tue Jun 27 18:08:07 UTC 2017


On Tue, Jun 27, 2017 at 12:52:52PM -0400, Antoine Beaupré wrote:
> On 2017-06-27 11:53:24, Antoine Beaupré wrote:
> > Are you sure of this? From what I can tell agents haven't been sending
> > YAML in a long time. If I understand things correctly, facts are sent in
> > a format defined by the `preferred_serialization_format`, which
> > currently (in wheezy) defaults to `pson`. It has been that way since
> > upstream 1a89455499 (2009-06-03) which seems to have been shipped in
> > puppet-0.24.5-rc4.
> >
> > My assertion, at this point, is that clients send facts in PSON, not
> > YAML, and it's safe to disable other formats. This means, of course,
> > that *older* clients (!) will break, but I think that's a fair move to
> > do at this point.
> >
> > I will work on a package update based on that assumption.
> 
> And after testing this live, it turns out I was wrong: 2.7 does send
> YAML. :( This is hardcoded in lib/puppet/configurer/fact_handler.rb as
> b64_zlib_yaml.
> 
> So one thing I am considering at this stage is to simply add a patch for
> *clients* to start sending PSON facts while disabling non-PSON facts on
> the server. This breaks backwards compatibility, but I think this may be
> a better approach than the status quo (abandoning 2.7) or the
> alternative (hot-patching ruby YAML library).
> 
> I am concerned that the previously proposed approach of patching the
> YAML libraries to be "safe" will be a lot of work and may be
> incomplete.
> 
> I'm testing another patchset now that also updates clients, would that
> solution be acceptable?

That sounds good to me especially if it's possible to toggle this so one
can e.g. first update all clients then disable accepting YAML on the
server.
Cheers,
 -- Guido



More information about the Pkg-puppet-devel mailing list