We currently have a few modules shared between cloud services VPS environment and the production environment which don't necessarily need to be shared. the biggest example of this is profile::base. We should split this profile up so that we have a separate profile::base::production ensuring all production specific code is only added there. Further we should make better use of heira. many classes and profiles have a large if/else block based on the realm variable however in most cases we should be able to refactor the code to control difference between the cloud and production environments by passing different hiera values.
Description
Details
- Other Assignee
- jbond
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Open | None | T294906 Puppet Improvements | |||
| Open | None | T285539 Easing pain points caused by divergence between cloudservices and production puppet usecases | |||
| Resolved | dcaro | T289661 Refactor puppet:base module to reduce unneeded shared code paths |
Event Timeline
Change 714980 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] debdeploy: move debdeploy to its own class
Change 714980 merged by Jbond:
[operations/puppet@production] debdeploy: move debdeploy to its own class
Change 714991 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:debdeploy::client: Add debdeploy profile
Change 714991 merged by Jbond:
[operations/puppet@production] P:debdeploy::client: Add debdeploy profile
Change 715003 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:standard: move admin to its own profile
Change 714975 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:base: move production specific code to there own profile
Change 715010 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:base: Create profile::apt
Change 715010 merged by Jbond:
[operations/puppet@production] P:base: Create profile::apt
Change 715003 merged by David Caro:
[operations/puppet@production] P:standard: move admin to its own profile
Change 717241 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] base::resolving: convert base::resolving to a profile
Change 717241 merged by Jbond:
[operations/puppet@production] base::resolving: convert base::resolving to a profile
Change 723509 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:base: make notifications_enabled a boolean
Change 723509 merged by David Caro:
[operations/puppet@production] P:base: make notifications_enabled a boolean
Change 725311 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:rsyslog::kafka_shipper: set hiera config directly in this profile
Change 725311 merged by Jbond:
[operations/puppet@production] P:rsyslog::kafka_shipper: set hiera config directly in this profile
Change 725317 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] debdeploy: move base::autorestart into debdeploy module
Change 727235 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] base::auto_restarts: move to profile and make debdeploy support optional
Change 725317 abandoned by Jbond:
[operations/puppet@production] debdeploy: move base::autorestart into debdeploy module
Reason:
superseded by https://gerrit.wikimedia.org/r/c/operations/puppet/+/727235
Change 727242 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P::base: create standard directories in base::standard_packages
Change 727242 merged by Jbond:
[operations/puppet@production] P::base: create standard directories in base::standard_packages
Change 727235 merged by Jbond:
[operations/puppet@production] base::auto_restarts: move to profile and make debdeploy support optional
Change 731012 had a related patch set uploaded (by David Caro; author: David Caro):
[operations/puppet@production] p:environment: Move wmcs specific etc files to p:wmcs::instance
Change 731012 merged by David Caro:
[operations/puppet@production] p:environment: Move wmcs specific etc files to p:wmcs::instance
Change 714975 merged by Jbond:
[operations/puppet@production] P:base: move production specific code to their own profile
Change 732638 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:base::production: update production roles to use P::base::production
Change 732639 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:base::labs: update labs base profile to include profile::base
Change 732670 had a related patch set uploaded (by Jbond; author: John Bond):
[operations/puppet@production] P:base::production: add parameters to disable this profile
Change 732670 merged by Jbond:
[operations/puppet@production] P:base::production: add parameters to disable this profile
Change 732638 merged by Jbond:
[operations/puppet@production] P:base::production: update production roles to use P::base::production
Change 732639 merged by Jbond:
[operations/puppet@production] P:base::labs: update labs base profile to include profile::base
Change 737005 had a related patch set uploaded (by Vgutierrez; author: Vgutierrez):
[operations/puppet@production] upload_haproxy: Adopt ::profile::base::production
Change 737005 merged by Vgutierrez:
[operations/puppet@production] upload_haproxy: Adopt ::profile::base::production