As we complete the work to migrate the puppetserver metrics implementation from PE into OSS, I'd like to be able to have the master-service in OSS puppetserver be used directly in PE puppetserver, avoiding the duplication of logic that occurs between the master and pe-master services today - CA initialization, Puppet HTTP route registrations, etc.
One major difference between the OSS and PE master services today is that the OSS master service does a check-for-updates call to dujour whereas in PE, the dujour work is done from a separate "analytics" trapperkeeper service. For this ticket, I'd like to mirror that approach in OSS puppetserver - moving the check-for-updates call into an OSS-specific "analytics" trapperkeeper service. We'd only bootstrap the appropriate service for the target puppetserver package - OSS vs. PE.
Patrick Carlisle and Brian Cain have been discussing moving the analytics service in pe-puppet-server-extensions into its own repo at some point. Maybe it would make sense to move an OSS-based analytics service out to a new repo as well at some point. In the short term, though, I think at least separating the OSS check-for-updates work into a new TK service would allow for the OSS master service to be reusable in PE - with the possibility of the OSS analytics service potentially being moved to somewhere else later on.