Jira (PDB-3558) Update puppetdb-termini 5 package to dep on puppet-agent >= 5

6 views
Skip to first unread message

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 1:21:03 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza created an issue
 
PuppetDB / Task PDB-3558
Update puppetdb-termini 5 package to dep on puppet-agent >= 5
Issue Type: Task Task
Assignee: Unassigned
Created: 2017/06/14 10:20 AM
Priority: Normal Normal
Reporter: Moses Mendoza

Improvements have gone into Puppet 5 that obsolete processing done in the puppetdb terminus, meaning we're doing a bunch of extra work there.

With a hard dep on puppet agent 5 we can rely on the new behavior, remove some of the processing in the terminus, with likely performance and maintainability benefits.

For example, the `stringify_` methods in the puppetdb catalog terminus are likely no longer necessary.

In Scope

  • Update the dependency that puppetdb-termini expresses on puppet-agent to be versioned, ie puppet-agent >= 5
Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v6.4.14#64029-sha1:ae256fe)
Atlassian logo

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 1:21:04 PM6/14/17
to puppe...@googlegroups.com

Russell Mull (JIRA)

unread,
Jun 14, 2017, 1:34:03 PM6/14/17
to puppe...@googlegroups.com
Russell Mull commented on Task PDB-3558

This package also needs to install with puppetserver; does it have the agent package as well?

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 1:38:04 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza commented on Task PDB-3558

Ah good point. puppetserver expresses a dependency on puppet-agent as well, and that dependency is also unversioned. I think there had been some talk about updating puppetserver 5 to depend on agent >= 5, but I don't recall if that was decided or done. Jeremy Barlow do you know?

Jeremy Barlow (JIRA)

unread,
Jun 14, 2017, 2:17:16 PM6/14/17
to puppe...@googlegroups.com
Jeremy Barlow commented on Task PDB-3558

Moses Mendoza, our puppetserver packages do already have a minimum puppet-agent version pin, although it is still set to 1.6.0 or newer today, not 5.0.0. See here for RedHat and here for Debian.

I assumed it was a given that we were going to update puppetserver to require puppet-agent 5.0. I'll create a ticket now to remind us to do that before we do our release - thanks!

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 3:00:27 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza commented on Task PDB-3558

Perfect thanks Jeremy Barlow - I must have been looking at an older puppet server version or something when I checked.

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 6:22:02 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza commented on Task PDB-3558

Note that the current dev build packages for puppet-agent 5 are actually versioned '4.99' (see http://apt.puppetlabs.com/pool/xenial/puppet5-nightly/p/puppet-agent/).

While our rpm packages "provide" puppet >= 4.0.0 which would satisfy an updated dependency on puppet 5.0.0 or later expressed by puppetdb and puppet-server, debian packages can't do this - they can only claim they provide the exact version of the package, currently 4.99.

I think this means until we tag those 5.0.0 packages, we can't actually update the debian dependencies of puppetdb and puppet-server to require 5.0.0 or all of our dpkg-based builds will fail on unmet dependencies. Not sure what to do about that. cc Geoff Nichols

Jeremy Barlow (JIRA)

unread,
Jun 14, 2017, 7:13:02 PM6/14/17
to puppe...@googlegroups.com
Jeremy Barlow commented on Task PDB-3558

I think for interim CI we'd be okay there, though, right? Currently, we pin puppet-agent to >= 1.6.0 but install a SHA version of puppet-agent during CI runs. The package managers all seem to (dumbly?) tolerate that okay. If we bump the pin to 5.0.0, I was thinking we'd see the same behavior. It'd just mean that we couldn't test those with an older released version of puppet-agent but not sure if we care about that for Puppet 5-based builds in CI at present.

Kenn Hussey (JIRA)

unread,
Jun 14, 2017, 9:21:02 PM6/14/17
to puppe...@googlegroups.com
Kenn Hussey commented on Task PDB-3558

Moses Mendoza is it sufficient to address this in PDB 5.1.0 (along with PDB-3496)?

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 11:00:04 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza commented on Task PDB-3558

Jeremy Barlow i'm not sure.. the sha versions installed in CI meet the >= 1.6.0 dep I think. I'm not sure we'll have that pinning to >= 5.0.0.

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 11:36:03 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza commented on Task PDB-3558

Kenn Hussey in terms of semver, in my interpretation, updating the dependency in 5.1 would not violate semver (http://semver.org/#what-should-i-do-if-i-update-my-own-dependencies-without-changing-the-public-api) as the ultimate result in PDB would not be a change to public api.

However, I'm still trying to tease apart the implications of doing or not doing this change for the ecosystem. Currently, FOSS PDB specifies a dependency on puppet < 5.0.0 which I think means that users can't upgrade to Puppet 5 on their FOSS PDB/MOM unless we make this change - PDB 5.0 can be installed only with Puppet Agent 4.10.x or earlier.

PE PDB does not specify a versioned dependency on puppet-agent - it's free-floating. So I think we'd be OK there - ie if we do the update in PE PDB 5.1 (presumably meaning the new dependency would go live in Irving). I believe the first thing to be upgraded in PE is the agent, so when PDB is installed/upgraded later, the dependency on Puppet 5.0.0 would already be satisfied. Alternatively for PE we could leave it as-is, ie not specify any versioned requirement at all, and just rely on users taking supported upgrade paths to ensure the right packages are co-installed - thought that feels risky if we're depending on API changes across the projects. Thoughts Joshua Partlow?

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 11:38:03 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza commented on Task PDB-3558

I tentatively added the fix version of 5.0.0 to make sure this gets added to the right filters for discussion

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 11:38:03 PM6/14/17
to puppe...@googlegroups.com

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 11:39:03 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza updated an issue
Improvements have gone into Puppet 5 that obsolete processing done in the puppetdb terminus, meaning we're doing a bunch of extra work there. 

With a hard dep on puppet agent 5 we can rely on the new behavior, remove some of the processing in the terminus, with likely performance and maintainability benefits.

For example, the `stringify_` methods in the puppetdb catalog terminus are likely no longer necessary.

*In Scope*
* Update the dependency that puppetdb-termini expresses on puppet-agent to be versioned, ie puppet-agent >= 5

*Update*
Currently, FOSS PDB specifies a dependency on puppet < 5.0.0 which may mean that users can't upgrade to Puppet 5 on their FOSS PDB/MOM unless we make this change - PDB 5.0 can be installed only with Puppet Agent 4.10.x or earlier.

Moses Mendoza (JIRA)

unread,
Jun 14, 2017, 11:44:03 PM6/14/17
to puppe...@googlegroups.com
Moses Mendoza updated an issue
Improvements have gone into Puppet 5 that obsolete processing done in the puppetdb terminus, meaning we're doing a bunch of extra work there. 

With a hard dep on puppet agent 5 we can rely on the new behavior, remove some of the processing in the terminus, with likely performance and maintainability benefits.

For example, the `stringify_` methods in the puppetdb catalog terminus are likely no longer necessary.

*In Scope*
* Update the dependency that puppetdb-termini expresses on puppet-agent to be versioned, ie puppet-agent >= 5

*Update*
Currently, FOSS PDB specifies a dependency on  {{  puppet  (  < <  5.0.0 -1puppetlabs1)}}  which may mean that users can't upgrade to Puppet 5 on their FOSS PDB/MOM unless we make this change - PDB 5.0 can be installed only with Puppet Agent 4.10.x or earlier.

Kenn Hussey (JIRA)

unread,
Jun 15, 2017, 9:10:03 AM6/15/17
to puppe...@googlegroups.com

Russell Mull (JIRA)

unread,
Jun 15, 2017, 10:51:03 AM6/15/17
to puppe...@googlegroups.com

Jeremy Barlow (JIRA)

unread,
Jun 16, 2017, 12:33:03 PM6/16/17
to puppe...@googlegroups.com
Jeremy Barlow commented on Task PDB-3558
 
Re: Update puppetdb-termini 5 package to dep on puppet-agent >= 5

Geoff Nichols, I'm doing some testing with that right now with puppetserver packages. I can confirm that our CI would blow up if we tried to pin puppetserver's dependency on puppet-agent to >= 5.0.0, as Moses Mendoza had suspected. >= 4.9.9 might work fine with current packages, though. I'll do a little more testing with that as a sanity check. If it works, I'll get a PR up for that today.

Jeremy Barlow (JIRA)

unread,
Jun 16, 2017, 2:08:04 PM6/16/17
to puppe...@googlegroups.com
Jeremy Barlow commented on Task PDB-3558

>= 4.99.0 or greater appears to work fine for each of the OSes we package for puppetserver. I put up a puppetserver PR here: https://github.com/puppetlabs/puppetserver/pull/1431.

Kenn Hussey (JIRA)

unread,
Jun 19, 2017, 1:51:04 PM6/19/17
to puppe...@googlegroups.com
Kenn Hussey commented on Task PDB-3558

Russell Mull please provide release notes for this issue, if applicable.

Kenn Hussey (JIRA)

unread,
Jun 19, 2017, 8:14:03 PM6/19/17
to puppe...@googlegroups.com

Kenn Hussey (JIRA)

unread,
Jun 27, 2017, 1:09:03 PM6/27/17
to puppe...@googlegroups.com
Kenn Hussey updated an issue
Change By: Kenn Hussey
Fix Version/s: PDB 5.0.0
Fix Version/s: PDB 5.0.1

Rob Browning (JIRA)

unread,
Jun 27, 2017, 2:30:03 PM6/27/17
to puppe...@googlegroups.com
Rob Browning updated an issue
Change By: Rob Browning
Release Notes Summary: PuppetDB is no longer compatible with agent and server versions older than 5.0.0.

Rob Browning (JIRA)

unread,
Jun 27, 2017, 2:31:03 PM6/27/17
to puppe...@googlegroups.com

Zachary Kent (Jira)

unread,
Mar 10, 2021, 3:33:02 PM3/10/21
to puppe...@googlegroups.com
Zachary Kent updated an issue
Change By: Zachary Kent
Sprint:
This message was sent by Atlassian Jira (v8.5.2#805002-sha1:a66f935)
Atlassian logo

Zachary Kent (Jira)

unread,
Mar 10, 2021, 3:34:04 PM3/10/21
to puppe...@googlegroups.com
Zachary Kent updated an issue
Change By: Zachary Kent
Sprint: Release Engineering Hopper

Morgan Rhodes (Jira)

unread,
Mar 11, 2021, 2:26:03 PM3/11/21
to puppe...@googlegroups.com
Morgan Rhodes updated an issue
Change By: Morgan Rhodes
Sprint: Release Engineering Hopper
Reply all
Reply to author
Forward
0 new messages