[Pkg-puppet-devel] Bug#709636: puppet has deprecated activerecord, and does not work with new version in unstable

Stig Sandbeck Mathisen ssm at debian.org
Sun May 26 18:11:09 UTC 2013


The "puppetmaster-common" package currently has a Suggests: for "rails".
The dependency is _really_ for activerecord, which is part of rails, so
it has been a bit too wide. 

(The puppet-testsuite package also has a dependency, but this is less
important)

When testing with ruby-activerecord-3.2, puppet master fails compilation
of manifests for a connecting node with the following error:

,----
| Error: stack level too deep
| /usr/lib/ruby/vendor_ruby/active_record/dynamic_finder_match.rb:14
`----

When testing with ruby-activerecord-2.3, it works well.

Puppet's Gemfile specifies a dependency on activerecord ~> 3.0.7, which
means any version greater than 3.0.7, and lesser than 3.1. Debian does
not provide that.

Activerecord is used for storeconfigs in puppet. 

Storeconfigs using activerecord in puppet was deprecated in puppet 3.x,
and I speculate that it will be removed in puppet 4.x, since they use
semantic versioning.

Puppet Labs provide a "puppetdb" package. This is by far superior to the
stored configuration functionality which used activerecord.
Unfortunately, "puppetdb" is not packaged yet (ITP at #673515), but
upstream has working .deb packages for several Debian releases.

I think it may be best to to simply drop the "rails" dependency from
puppet. Puppet has deprecated activerecord storeconfigs, the new
activerecord 3.2 does not work, and the old activerecord 2.x will be
removed from debian.

-- 
Stig Sandbeck Mathisen



More information about the Pkg-puppet-devel mailing list