Hi all, this may seem a bit far-out since we haven't pushed Puppet 4 completely 
out of the nest, but I wanted to talk about some plans for the next cycle of 
breaking changes/deprecations that are headed for Puppet 5.

There are two main areas of change, both related to continuing to move 
server-side functionality into Puppet Server: the certificate authority and the 
network stack.  There may be other semver-major breaks that get rolled in, but 
at this point we're planning to deliberately NOT have language changes that 
would necessitate revising modules.

Currently there are two separate certificate authority implementations, one in 
Ruby and one in Clojure. Puppet 5 will consolidate onto the new Clojure CA, 
removing the Ruby CA code and building new command-line tools to interact with 
it. (See SERVER-270 for the design/requirements work here.) This is cool 
because right now there are a few overlapping / conflicting subcommands like 
`puppet ca`, `puppet cert`, `puppet certificate_request`, etc that are pretty 
inconsistent, and it'll be great to have the chance to clean them up.

Similarly, on the network stack, we want to consolidate on the 
jetty/puppet-server/jruby stack as the single way to run Puppet masters, so the 
built-in webrick support and Rack support layer will ride off into the sunset.  
The webrick one shouldn't be too controversial: it causes a lot of people to 
start off on a bad path because it tips over so easily. My hypothesis is if 
you're just dipping a toe in the water to try out Puppet, running standalone 
with `puppet apply` is probably going to work better than a webrick 
agent/server setup. 

But I'm interested in hearing opinions on the Rack deprecation, especially if 
there are significant functionality gaps between what people are currently 
doing in your Passenger setup and what's possible with Puppet Server. Overall 
it's obviously easier to support fewer, more opinionated ways of running a 
Puppet infrastructure but not if it comes at the price of breaking stuff 
without adequate replacement. There have already been some pretty substantial 
improvements to Puppet Server based on feedback like SERVER-18, so 
conversations like "Hey I'm doing this cool thing with nginx right now, will 
that still work?" are really helpful.

(As an aside, if you haven't yet tried Puppet Server, give it a shot. The docs 
are now integrated into the main puppet docs site and installation is super 
easy: https://docs.puppetlabs.com/puppetserver/latest/ )

The next question is what the timeframe looks like. I'm a little gun-shy around 
dates right now since the Puppet 4 effort has taken a lot longer than anyone 
anticipated. The greatest specificity I'm comfortable with is that it'll likely 
still be 2015 when it's released... probably. 

Hopefully this helps plot a bit more concrete course for where this stuff is 
headed over the next couple of years. As always, please hit me back with any 
questions or concerns.

--eric0

Eric Sorenson - eric.soren...@puppetlabs.com - freenode #puppet: eric0
puppet platform // coffee // techno // bicycles

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/9A6C4BAD-10FE-4B5E-8B5D-456023F7CA1C%40puppetlabs.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to